Arch kernel with PAE

I asked some times ago about including PAE (HIGHMEM) in the offical Arch Kernel in x86 and i was said no beceause it is slower and when i want more than 4gb memory i should use x86_64
now i seen. 32bit is not slower with PAE. Only the stuff over 3GB is slower than with 64bit.
So the argoument PAE is slower is nonsense beceause the memory which is accessed slower is not existing without PAE so we have the choose between
No Memory over 3GB
Slow Memory over 3GB or lemme say not fast as it can be
the first 3GB are the same speed with and without PAE so maybe we should re-think about this
Last edited by Vamp898 (2009-10-20 00:32:29)

Allan wrote:
That is very strange (and dare I say wrong) given how PAE works...   it is not as if it uses it memory mapping only when needing greater than 3Gb of memory, it needs to use it all the time:  http://en.wikipedia.org/wiki/Physical_Address_Extension
And here is the only real attempt at benchmarks I have seen.  Although it is a bit old...
http://people.redhat.com/nmurray/RHEL-2.1-VM-whitepaper.pdf wrote:The performance impact is highly workload dependent, but on a fairly typical kernel
compile, the PAE penalty works out to be around a 1% performance hit on Red
Hat's test boxes. Testing with various other workload mixes has given performance
hits ranging from 0% to 10%.
wow its really a bit old and i dont know how it was tested
is there a really good way to benchmark it?
i just written a bash skript which pumped up the memory and taked the time until it needed to reach 3,8GB
Last edited by Vamp898 (2009-10-20 02:30:17)

Similar Messages

  • Request kernel with pae

    Hi
    More and more people have more then 3 GB RAM.
    Yes they can use the 64bit kernel, but could we have a core kernel26 with Physical Address Extension?
    maybe kernel26-pae.
    At this moment I have to rebuild kernel26 nvidia and Virtualbox.
    Because of the update frequency for kernel(which is very good), I must block the kernelupdate.
    I hope such a kernel is still "simple" ...

    broch wrote:
    For example, when you install the nvidia package, it installs the .ko into /lib/modules/2.6.33-ARCH. Which is not where your sytem is looking for modules. You have to re-install the modules from ABS, where it would then take `uname -r`.
    you really should not come up with unfounded theories. Ever heard about offline installation? I doubt it:
    $locate nvidia.ko
    /lib/modules/2.6.33-SARABANDE/kernel/drivers/video/nvidia.ko
    /lib/modules/2.6.33-grsec-GIGUE/kernel/drivers/video/nvidia.ko
    /lib/modules/2.6.33-zen2-PASSACAILLE/kernel/drivers/video/nvidia.ko
    currently three kernels, all with working nvidia module installed (method from nvidia site by the way), so I can boot to any kernel and get instantly to GUI. Evidently I can do more with sources (and nvidia binary) than you with ABS.
    Sigh, if you want to get into a pissing contest...
    pacman -Ql nvidia-beta-all | grep nvidia.ko
    nvidia-beta-all /lib/modules/2.6.33-ARCH/kernel/drivers/video/nvidia.ko
    nvidia-beta-all /lib/modules/2.6.33-ice/kernel/drivers/video/nvidia.ko
    nvidia-beta-all /lib/modules/2.6.33-rt-ice/kernel/drivers/video/nvidia.ko
    So, we've established that both of us know how to compile modules for varied kernels. Good.
    broch wrote:
    same goes with cisco vpn and anything else that requires /lib/modules or kernel sources. In most cases this is one step with few seconds of wait (make install to running kernel, or offline installation).
    In contrast to these opinions listed: my system never broke, never had issues with networking, kernel, boot, nvidia, wine and so on.
    You know what you are doing. Congratulations. Of course you can have your kernel LFS-style. Which would mean all your packages which require kernel modules will also have to be compiled manually, or at least with modification of the PKGBUILD to take note of the different location of sources.
    broch wrote:
    Pacman must always know what packages and files are installed within the system.
    another unfounded theory.
    Pacman does not have to know about anything. This is nice tool that helps keep track of installed software, but it is not required for anything. It makes life easier... but not always.
    Arch has great potential to teach how to use really free software (not in terms of money) because it is so close to original sources. Now what you do is to make people believe that something bad happen if they stop using pacman.
    what worries me is that you are trying to scare instead of teach. Bad idea.
    Most users want to use a system, and will only learn exactly as much as they need at the current point in time to do what they want to do. For this reason, telling users that "you can compile packages from source no problem" is bad, because the user who doesn't know as much as you do WILL eventually screw his system up. I know. I did that to my Ubuntu install way back when, from blindly following the instructions of people who knew more about their system than I did mine.
    The point of package management is it should handle all, or almost all, files in the system. For example, your install would probably break the next time there's a libgl update, since the nvidia installer silently replaces libgl's so files. Pacman still thinks they belong to libgl, so you have a library update and oops, no X. Of course, you already know this, so you'd just re-run the installer for all your kernels. The user you've confidently advised to avoid package management will get to learn the hard way.
    Is it better for teaching? Of course. Is it better for actually using the system? I don't think so.

  • Suspend removed form arch kernel ? [solved]

    I don't know why Software suspend was removed from default arch kernel.
    Can it be re-enable ?
    I have recompiled arch kernel with addind this options :
    CONFIG_PM=y
    # CONFIG_PM_DEBUG is not set
    CONFIG_SOFTWARE_SUSPEND=y
    CONFIG_PM_STD_PARTITION="/dev/hdx"
    but there is no /sys/power/disk or /sys/power/mem on my system
    (it was working with 2.6.13 arch kernel)
    did I missed something ?

    ok, I think that initrd is the problem.
    http://wiki.archlinux.org/index.php/Initrd
    I have found some scripts but it's only for swsusp2
    http://wiki.suspend2.net/DistroAndHardw … bianInitrd
    Anybody knows how to activate vanilla swsuspend1 on arch ?

  • Vanilla kernel with suspend2 support

    Hey people,
    I have started using the beyond kernel a while ago, because I wanted a precompiled arch kernel with suspend2 support. I used self-compiled vanilla+suspend2 kernels for a while before that, and they were very stable. With beyond, I first got strange bugs, hard to reproduce, suspending or resuming sometimes failed, and the newest version doesn't work at all.
    Just for some testing, I compiled a kernel with the same config and patches as kernel26 AND suspend2 patches included. It seems to work great, much stabler than beyond when suspending.
    What I am asking is, how many people would be interested if such a kernel would be maintained in community and what kernel modules they would need (I am planning to do rt2500, rt2x00, nvidia and maybe ATI, more if requested).
    Please only submit your vote to the poll if you are either a suspend2 user or interested in using suspend2

    brain0 wrote:
    dtw wrote:I think this is a waste of time and energy propogated by a lack of patience.  Do you really want to go to all this trouble, maintain what is in essence a very small but new kernel patchset and all the relevant modules _just_ because suspend2 is a broken in -beyond at the moment?  My Dog, I wish I had such time to spend.
    Can you give me your definition of "at the moment" please? Or better, name a beyond release where suspend2 was stable. I switched to beyond with 2.6.16 and since then it was always unusable for me. With a vanilla kernel, suspend2 hasn't failed for me in a year or so. With beyond, it failed every time I really needed it.
    Admittedly suspend2 may be _generally_ unstable with other patchsets but even still, it'll only take one bulletproof release to invalidate all you are suggesting.
    I won't spend the rest of my life waiting for the beyond release that will work. I'd rather do something about it and provide a kernel that is stable and has that very important feature. (And as tpowa wasn't willing to include suspend2 in kernel26 when I asked him, this is the best shot).
    Awesome -  I dont think I could have said it in better words - however I did try above >
    I have tried many patchsets that had suspend2=swap patches but the never worked or not as well as a vanilla kernel with just suspend2-swap patch.
    Lets do it.

  • Cannot compile ARCH kernel

    Hi there!
    I'm new to AL, so this might also be a newbie question, but noone could help me so far.
    to get to the point, everytime i try to compile an ARCH kernel with:
                "make && make modules modules_install"
    i get an error concerning the Makefile:
    [root@portdemonia linux]# make && make modules modules_install
      CHK     include/linux/version.h
      CHK     include/asm-i386/asm_offsets.h
    scripts/Makefile.build:13: init/Makefile: No such file or directory
    make[1]: *** No rule to make target `init/Makefile'.  Stop.
    make: *** [init] Error 2
    I'd be very glad if anyone could help me out there 

    @craw
    Believe me, you don't want to build the kernel the old fashioned way.
    It's messy, really messy (IMO).
    "pacman -S kernel26" grabs the latest kernel (as the description says: kernel and modules) binaries.
    I suggest you try using ABS.
    As root run "abs".
    It will grab the latest PKGBUILDs & additional files for all the packages from the repositories.
    1, go to "/var/abs/kernels".
    2. copy "kernel26" directory to /var/abs/local/kernel26-myversion (or whatever you want to call it).
    3. Modify the PKGBUILD inside: replace "yes "" | make config" line to be more precise with something within your likes, such as "make xconfig"/"make menuconfig" or even "make oldconfig", to use as base the ArchLinux "config" file there.
    4. save the PKGBUILD
    5. modify the "config" file in that directory, this line to be more precise: CONFIG_LOCALVERSION="-ARCH" / replace ARCH with something else (I don't know how effective this is when you start a new config)
    6. run "makepkg" in that directory
    7. during the build process, you'll be shown the interface to choose what/how to install
    8. in the end you'll have a brand new ArchLinux package with your kernel. You'll be able to install it using "pacman -A whatever_your_pkg_is_named.pkg.tar.gz"
    This way, if you choose to remove it/update it, your system will stay clean because the files in the pkg are kept in pacman's DB.
    But.. the best thing is to read about ABS first. Good luck.
    Enjoy afterwards.

  • How to create a custom kernel with initrd and ARCH patches

    Hi,
    I like the default kernel because everything seems to work well and I think the Arch kernel includes patches I need (such as the mactel patch). But some options that i would like to be enabled are not. in fact i would like to use powertop but i can't because it needs the CONFIG_TIMER_STATS option.
    What I would like is a kernel based on the arch kernel but with a different config file. Nothing more.
    if i look at the solution on the Wiki, I see that I have to add all patches the standard kernel have ... Moreover there is no initrd creation. i think i will need it if I use the Arch kernel configuration.
    And if i use the kernel26 PKGBUILD, I must change the package name in order to keep my current kernel. It's easy to do in the PKGBUILD but much more complicated to do it in the kernel26.install file beacuse I have to change the filenames in /boot and I do not want to replace the kernel26 files.
    So do you have any ideas how to compile my custom kernel ? Is there a better solution ?
    Thanks.
    Mildred.
    Last edited by mildred (2007-07-03 01:46:33)

    tomk wrote:It's possible I'm missing something here, but I don't understand what you're worried about. If I understand correctly, you now have a PKGBUILD and associated files for kernel26mildred (or whatever you've decided to call it). Why do you think you would have to change the files again when kernel26 is updated?
    don't the patches change from version to version?
    anyways, i was bored so i wrote a little script... edit the configuration variables at the top and it'll do the work for you. just put it in /var/abs/kernels or wherever you have the kernel26/ at, chmod +x scriptname, and run.
    if you're in /var/abs/kernels you'll probably have to run as root.
    from my testing, it seems to be all working (looking at resulting files and no errors so far from makepkg); but i'm still building my test kernel with it.
    #!/bin/bash
    # Author: kano <[email protected]>
    # Configuration #
    appendname="-custom1" # Name to append to kernel package
    BUILD=0 # Build package when done? No = 0; Yes = 1
    #MAKEPKGOPT="" # Uncomment if you're building after you make; Add any options you want passed to makepkg (can be nothing)
    # Work starts here; shouldn't have to edit anything below #
    mkdir kernel26${appendname}/
    cp kernel26/* kernel26${appendname}/
    regen_md5sum() {
    if [ ${file} != 'PKGBUILD' ]; then
    echo "Regenerating md5sum for ${file}"
    cat kernel26${appendname}/PKGBUILD \
    | sed "s/'`md5sum kernel26/${file} | awk '{ print $1 }'`'/'`md5sum kernel26${appendname}/${file} | awk '{ print $1 }'`'/;" \
    > PKGBUILD.tmp
    mv PKGBUILD.tmp kernel26${appendname}/PKGBUILD
    fi
    for file in "PKGBUILD" "kernel26.preset" "kernel26.install"; do
    echo "Editing ${file}"
    cat kernel26/${file} | \
    sed "s/kernel26/kernel26${appendname}/g" \
    | sed "s/vmlinuz26/vmlinuz26${appendname}/g" \
    | sed "s/kconfig26/kconfig26${appendname}/g" \
    | sed "s/System.map26/System.map26${appendname}/g" \
    > kernel26${appendname}/${file}
    # Regenerate md5sum
    regen_md5sum
    done
    for file in "config" "config.x86_64"; do
    echo "Editing ${file}"
    cat kernel26/${file} | \
    sed "s/CONFIG_LOCALVERSION=\"-ARCH\"/CONFIG_LOCALVERSION=\"-ARCH${appendname}\"/" \
    > kernel26${appendname}/${file}
    # Regenerate md5sum
    regen_md5sum
    done
    mv kernel26${appendname}/mkinitcpio-kernel26.conf kernel26${appendname}/mkinitcpio-kernel26${appendname}.conf
    mv kernel26${appendname}/kernel26.install kernel26${appendname}/kernel26${appendname}.install
    mv kernel26${appendname}/kernel26.preset kernel26${appendname}/kernel26${appendname}.preset
    # Add make menuconfig to PKGBUILD
    cat kernel26${appendname}/PKGBUILD | \
    sed 's/# load configuration/\n # configure kernel before build\n make menuconfig\n\n # load configuration/;' \
    > PKGBUILD.tmp
    mv PKGBUILD.tmp kernel26${appendname}/PKGBUILD
    echo "Custom kernel pkgbuild created."
    # To build or to not to build?
    if [ ${BUILD} -eq 1 ]; then
    cd kernel26${appendname}
    makepkg ${MAKEPKGOPT}
    fi

  • [solved]patch 2.6.29-3-ARCH confilict with aufs2

    After checked the aufs2 standalone code and 2.6.29-3-ARCH patch, I found 2.6.29-3-ARCH confilict with aufs2...
    2.6.29-3-ARCH changed the do_splice_from of fs/splice.c to vfs_splice_from...   while aufs2 standalone need do_splice_from ...
    And there is no such change on kernel official patch 2.6.29.1...
    So,
    If you need aufs2 support, abandon 2.6.29-3-ARCH patch is the best way...
    -------------090406----------------
    2.6.29.1-2-ARCH patch already contained aufs patch, use vfs_splice_from...
    With  kernel26-2.6.29.1-2.pkg.tar.gz, just need " modprobe aufs" to use aufs...
    Last edited by carbonjiao (2009-04-07 01:49:36)

    HI, godane, thanks for your reply!
    Could you share your kernel PKGBUILD?
    I must add tuxonice patch and kernel UTF-8 Chinese characters patch...
    Here is my PKGBUILD I am compliling now (haven't finished now...)
    pkgname=kernel26-archlive
    _realpkgname=kernel26
    _basekernel=2.6.29
    pkgver=2.6.29.1
    pkgrel=1
    _patchname="patch-${_basekernel}-3-ARCH"
    pkgdesc="Archlive内核及模块,加入了gentoo官方补丁、UTF-8补丁、reiser4补丁、aufs补丁及tuxonice支持."
    #pkgdesc="Kernel configs for Archlive, with Gentoo patch set, fbcondecor patch, Chinese fonts patch, \
    # and reiser4 patch, aufs patch, also with tuxonice patch set."
    arch=(i686 x86_64)
    license=('GPL2')
    groups=('base')
    url="http://archlive.googlecode.com"
    backup=(etc/mkinitcpio.d/${_realpkgname}.preset)
    depends=('coreutils' 'module-init-tools' 'mkinitcpio>=0.5.18')
    provides=('kernel26=2.6.29')
    optdepends=('sreadahead: daemon for data sequential boot from disk')
    replaces=('kernel24' 'kernel24-scsi' 'kernel26-scsi' 'kernel26'
    'alsa-driver' 'ieee80211' 'hostap-driver26'
    'pwc' 'nforce' 'squashfs' 'unionfs' 'ivtv'
    'zd1211' 'kvm-modules' 'iwlwifi' 'rt2x00-cvs'
    'gspcav1')
    install=${_realpkgname}.install
    source=(
    http://www.cn.kernel.org/pub/linux/kernel/v2.6/linux-$_basekernel.tar.bz2
    #http://www.kernel.org/pub/linux/kernel/v2.6/linux-$_basekernel.tar.bz2
    #http://www.cn.kernel.org/pub/linux/kernel/v2.6/patch-${pkgver}.bz2
    #http://www.kernel.org/pub/linux/kernel/v2.6/patch-${pkgver}.bz2
    ftp://ftp.archlinux.org/other/kernel26/${_patchname}.bz2
    http://www.tuxonice.net/downloads/all/tuxonice-3.0-for-2.6.29.patch.bz2
    #http://dev.gentoo.org/~dsd/genpatches/trunk/${_basekernel}/4100_dm-bbr.patch
    #http://dev.gentoo.org/~dsd/genpatches/trunk/${_basekernel}/4200_fbcondecor-0.9.4.patch
    #http://dev.gentoo.org/~dsd/genpatches/trunk/${_basekernel}/4400_alpha-sysctl-uac.patch
    http://svn.berlios.de/svnroot/repos/fullstory/linux-sidux-2.6/tags/2.6.29-7/debian/patches/bugfix/ext4-flush-on-close.patch
    #http://svn.berlios.de/svnroot/repos/fullstory/linux-sidux-2.6/tags/2.6.29-7/debian/patches/features/aufs2-20090322.diff
    http://www.kernel.org/pub/linux/kernel/people/edward/reiser4/reiser4-for-2.6/reiser4-for-2.6.29.patch.gz
    http://nchc.dl.sourceforge.net/sourceforge/ibm-acpi/thinkpad-acpi-0.22-20090318-BETA_v2.6.29.patch.gz
    config
    config.x86_64
    mkinitcpio.conf
    kernel26.preset ecryptfs.patch
    0001-kernel-trace-open.patch aufs2.patch aufs2-standalone.patch #aufs2-linux-2.6.29.patch
    4100_dm-bbr.patch 4200_fbcondecor-0.9.4.patch 4400_alpha-sysctl-uac.patch
    utf8-kernel-2.6-fonts-1.patch.tar.gz
    utf8-kernel-2.6.29-core-1.patch
    utf8-kernel-2.6.29-fbcondecor-1.patch
    md5sums=('64921b5ff5cdadbccfcd3820f03be7d8'
    #'1ee50bb06a8b981efb6cfacaee7ea2f2'
    #'d94bf612ff1a7899f7da9baed4533cf0'
    #'1cdc40cd1b8a3a9cfbb22626ad1e3d66'
    #'325299ab1c4b5634ec7d2769031d29e0'
    #'7ed983ea4f0f47844352ed6e81c8cb55'
    build() {
    [ "${CARCH}" = "i686" ] && KARCH=x86
    [ "${CARCH}" = "x86_64" ] && KARCH=x86
    ### mkinitcpio
    cd $startdir
    mkdir $pkgdir/etc
    cp mkinitcpio.conf $pkgdir/etc
    chmod 644 $pkgdir/etc/mkinitcpio.conf
    cd ${srcdir}/linux-$_basekernel
    # applying aufs patch
    patch -Np1 -i ${srcdir}/aufs2.patch || return 1
    patch -Np1 -i ${srcdir}/aufs2-standalone.patch || return 1
    patch -Np1 -i ${srcdir}/ecryptfs.patch || return 1
    #patch -Np1 -i ${srcdir}/aufs2-linux-2.6.29.patch || return 1
    # Applying gentoo patches
    for i in $(ls ../[1-9][0-9][0-9][0-9]*);do
    patch -Np1 -i ../$i
    done
    patch -Np1 -i ${srcdir}/0001-kernel-trace-open.patch #|| return 1
    # Add kernel utf-8 characters patch
    patch -Np1 -i ${srcdir}/utf8-kernel-2.6.29-core-1.patch || return 1
    patch -Np1 -i ${srcdir}/utf8-kernel-2.6.29-fbcondecor-1.patch || return 1
    patch -Np1 -i ${srcdir}/utf8-kernel-2.6-fonts-1.patch || return 1
    patch -Np1 -i ${srcdir}/tuxonice-3.0-for-2.6.29.patch #|| return 1
    # Add -ARCH patches
    # See http://projects.archlinux.org/git/?p=linux-2.6-ARCH.git;a=summary
    #patch -Np1 -i ${srcdir}/${_patchname} #|| return 1
    # Applying official patch
    patch -Np1 -i ${srcdir}/patch-$pkgver #|| return 1
    # applying ext4 patch
    patch -Np1 -i ${srcdir}/ext4-flush-on-close.patch #|| return 1
    # applying reiserfs4 patch
    patch -Np1 -i ${srcdir}/reiser4-for-2.6.29.patch #|| return 1
    # applying thinkpad-acpi patch
    patch -Np1 -i ${srcdir}/thinkpad-acpi-0.22-20090318-BETA_v2.6.29.patch #|| return 1
    if [ "$CARCH" = "x86_64" ]; then
    cp ../config.x86_64 ./.config
    else
    cp ../config ./.config
    fi
    source ./.config
    _kernver="$_basekernel${CONFIG_LOCALVERSION}"
    # configure kernel
    # use menuconfig, if you want to change the configuration
    # make menuconfig
    yes "" | make config
    # build kernel
    make bzImage modules || return 1
    mkdir -p $startdir/pkg/{lib/modules,boot}
    make INSTALL_MOD_PATH=$startdir/pkg modules_install || return 1
    install -D -m644 System.map $startdir/pkg/boot/System.map26
    install -D -m644 arch/$KARCH/boot/bzImage $startdir/pkg/boot/vmlinuz26
    install -D -m644 Makefile $startdir/pkg/usr/src/linux-$_kernver/Makefile
    install -D -m644 kernel/Makefile $startdir/pkg/usr/src/linux-$_kernver/kernel/Makefile
    install -D -m644 .config $startdir/pkg/usr/src/linux-$_kernver/.config
    install -D -m644 .config $startdir/pkg/boot/kconfig26
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/include
    for i in acpi asm-{generic,$KARCH} config linux math-emu media net pcmcia scsi sound video; do
    cp -a include/$i $startdir/pkg/usr/src/linux-$_kernver/include/
    done
    # copy arch includes for external modules
    mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH
    cp -a arch/$KARCH/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/
    # copy files necessary for later builds, like nvidia and vmware
    cp Module.symvers $startdir/pkg/usr/src/linux-$_kernver
    cp -a scripts $startdir/pkg/usr/src/linux-$_kernver
    # fix permissions on scripts dir
    chmod og-w -R $startdir/pkg/usr/src/linux-$_kernver/scripts
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/arch/$KARCH/kernel
    cp arch/$KARCH/Makefile $startdir/pkg/usr/src/linux-$_kernver/arch/$KARCH/
    if [ "${CARCH}" = "i686" ]; then
    cp arch/$KARCH/Makefile_32.cpu $startdir/pkg/usr/src/linux-$_kernver/arch/$KARCH/
    fi
    cp arch/$KARCH/kernel/asm-offsets.s $startdir/pkg/usr/src/linux-$_kernver/arch/$KARCH/kernel/
    # add headers for lirc package
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/drivers/media/video
    cp drivers/media/video/*.h $startdir/pkg/usr/src/linux-$_kernver/drivers/media/video/
    for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102 usbvideo zc0301
    do
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/drivers/media/video/$i
    cp -a drivers/media/video/$i/*.h $startdir/pkg/usr/src/linux-$_kernver/drivers/media/video/$i
    done
    # add dm headers
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/drivers/md
    cp drivers/md/*.h $startdir/pkg/usr/src/linux-$_kernver/drivers/md
    # add inotify.h
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/include/linux
    cp include/linux/inotify.h $startdir/pkg/usr/src/linux-$_kernver/include/linux/
    # add CLUSTERIP file for iptables
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/net/ipv4/netfilter/
    cp net/ipv4/netfilter/ipt_CLUSTERIP.c $startdir/pkg/usr/src/linux-$_kernver/net/ipv4/netfilter/
    # add wireless headers
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/net/mac80211/
    cp net/mac80211/*.h $startdir/pkg/usr/src/linux-$_kernver/net/mac80211/
    # add xfs and shmem for aufs building
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/fs/xfs
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/mm
    cp fs/xfs/xfs_sb.h $startdir/pkg/usr/src/linux-$_kernver/fs/xfs/xfs_sb.h
    cp mm/shmem.c $startdir/pkg/usr/src/linux-$_kernver/mm/shmem.c
    # add vmlinux
    cp vmlinux $startdir/pkg/usr/src/linux-$_kernver
    # copy in Kconfig files
    for i in $(find . -name "Kconfig*")
    do
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/$(echo $i | sed 's|/Kconfig.*||')
    cp $i $startdir/pkg/usr/src/linux-$_kernver/$i
    done
    cd $startdir/pkg/usr/src/linux-$_kernver/include && ln -s asm-$KARCH asm
    chown -R root.root $startdir/pkg/usr/src/linux-$_kernver
    find $startdir/pkg/usr/src/linux-$_kernver -type d -exec chmod 755 {} \;
    cd $startdir/pkg/lib/modules/$_kernver && (rm -f source build; ln -sf ../../../usr/src/linux-$_kernver build)
    # install fallback mkinitcpio.conf file and preset file for kernel
    install -m644 -D ${srcdir}/${_realpkgname}.preset ${pkgdir}/etc/mkinitcpio.d/${_realpkgname}.preset || return 1
    # set correct depmod command for install
    sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" $startdir/kernel26.install
    echo -e "# DO NOT EDIT THIS FILE\nALL_kver='${_kernver}'" > ${pkgdir}/etc/mkinitcpio.d/${_realpkgname}.kver
    # remove unneeded architectures
    rm -rf $startdir/pkg/usr/src/linux-$_kernver/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa}

  • [Solved] Compiling a new kernel with ABS

    I've made it through the whole process outlined in the wiki, up to installing with pacman.  Pacman is telling me that the stock arch kernel is a conflicting package and wants to remove it.  I want to hang on to it in case I've messed something up.  What am I doing wrong?  I know you can have two kernels installed.  Using the traditional way I can get this, but I'd rather keep to doing things The Arch Way.
    Last edited by Morrvick (2011-11-17 00:40:30)

    I double checked what I was doing, and I have done that.  Here is my modified PKGBUILD:
    # $Id: PKGBUILD 130991 2011-07-09 12:23:51Z thomas $
    # Maintainer: Tobias Powalowski <[email protected]>
    # Maintainer: Thomas Baechler <[email protected]>
    pkgbase=linux
    #pkgname=('linux' 'linux-headers' 'linux-docs') # Build stock -ARCH kernel
    pkgname=('linux-morrvick' 'linux-headers-morrvick') # Build kernel with a different name
    _kernelname=${pkgname#linux}
    _basekernel=3.1
    pkgver=${_basekernel}.1
    pkgrel=1
    arch=('i686' 'x86_64')
    url="http://www.kernel.org/"
    license=('GPL2')
    makedepends=('xmlto' 'docbook-xsl')
    options=('!strip')
    source=("http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.1.tar.xz"
    "http://www.kernel.org/pub/linux/kernel/v3.x/patch-${pkgver}.xz"
    # the main kernel config files
    'config' 'config.x86_64'
    # standard config files for mkinitcpio ramdisk
    "${pkgname}.preset"
    'change-default-console-loglevel.patch'
    'i915-fix-ghost-tv-output.patch'
    'i915-fix-incorrect-error-message.patch'
    'usb-add-reset-resume-quirk-for-several-webcams.patch')
    md5sums=('edbdc798f23ae0f8045c82f6fa22c536'
    '2bf7eb28a58238e1a062fa7393bf7824'
    'cbaaa923f00c1935055273ccc1630144'
    '93687a4b7e1e6bcd4e7417d6e5079bc4'
    'eb14dcfd80c00852ef81ded6e826826a'
    '9d3c56a4b999c8bfbd4018089a62f662'
    '263725f20c0b9eb9c353040792d644e5'
    'a50c9076012cb2dda49952dc6ec3e9c1'
    '52d41fa61e80277ace2b994412a0c856')
    build() {
    cd "${srcdir}/linux-${_basekernel}"
    # add upstream patch
    patch -p1 -i "${srcdir}/patch-${pkgver}"
    # add latest fixes from stable queue, if needed
    # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git
    # Some chips detect a ghost TV output
    # mailing list discussion: http://lists.freedesktop.org/archives/intel-gfx/2011-April/010371.html
    # Arch Linux bug report: FS#19234
    # It is unclear why this patch wasn't merged upstream, it was accepted,
    # then dropped because the reasoning was unclear. However, it is clearly
    # needed.
    patch -Np1 -i "${srcdir}/i915-fix-ghost-tv-output.patch"
    # In 3.1.1, a DRM_DEBUG message is falsely declared as DRM_ERROR. This
    # worries users, as this message is displayed even at loglevel 4. Fix
    # this.
    patch -Np1 -i "${srcdir}/i915-fix-incorrect-error-message.patch"
    # Add the USB_QUIRK_RESET_RESUME for several webcams
    # FS#26528
    patch -Np1 -i "${srcdir}/usb-add-reset-resume-quirk-for-several-webcams.patch"
    # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param)
    # remove this when a Kconfig knob is made available by upstream
    # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
    patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
    if [ "${CARCH}" = "x86_64" ]; then
    cat "${srcdir}/config.x86_64" > ./.config
    else
    cat "${srcdir}/config" > ./.config
    fi
    if [ "${_kernelname}" != "" ]; then
    sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config
    fi
    # set extraversion to pkgrel
    sed -ri "s|^(EXTRAVERSION =).*|\1 -${pkgrel}|" Makefile
    # get kernel version
    make prepare
    # load configuration
    # Configure the kernel. Replace the line below with one of your choice.
    #make menuconfig # CLI menu for configuration
    #make nconfig # new CLI menu for configuration
    make xconfig # X-based configuration
    #make oldconfig # using old config from previous kernel version
    # ... or manually edit .config
    # stop here
    # this is useful to configure the kernel
    #msg "Stopping build"
    #return 1
    yes "" | make config
    # build!
    make ${MAKEFLAGS} bzImage modules
    package_linux-morrvick() {
    pkgdesc="The Linux Kernel and modules"
    groups=('base')
    depends=('coreutils' 'linux-firmware' 'module-init-tools>=3.16' 'mkinitcpio>=0.7')
    optdepends=('crda: to set the correct wireless channels of your country')
    provides=('kernel26')
    conflicts=('kernel26')
    replaces=('kernel26')
    backup=("etc/mkinitcpio.d/${pkgname}.preset")
    install=${pkgname}.install
    cd "${srcdir}/linux-${_basekernel}"
    KARCH=x86
    # get kernel version
    _kernver="$(make kernelrelease)"
    mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot}
    make INSTALL_MOD_PATH="${pkgdir}" modules_install
    cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgname}"
    # add vmlinux
    install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux"
    # install fallback mkinitcpio.conf file and preset file for kernel
    install -D -m644 "${srcdir}/${pkgname}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset"
    # set correct depmod command for install
    sed \
    -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/g" \
    -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" \
    -i "${startdir}/${pkgname}.install"
    sed \
    -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \
    -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \
    -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \
    -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset"
    # remove build and source links
    rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build}
    # remove the firmware
    rm -rf "${pkgdir}/lib/firmware"
    # gzip -9 all modules to save 100MB of space
    find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \;
    # make room for external modules
    ln -s "../extramodules-${_basekernel}${_kernelname:--ARCH}" "${pkgdir}/lib/modules/${_kernver}/extramodules"
    # add real version for building modules and running depmod from post_install/upgrade
    mkdir -p "${pkgdir}/lib/modules/extramodules-${_basekernel}${_kernelname:--ARCH}"
    echo "${_kernver}" > "${pkgdir}/lib/modules/extramodules-${_basekernel}${_kernelname:--ARCH}/version"
    package_linux-headers-morrvick() {
    pkgdesc="Header files and scripts for building modules for linux kernel"
    provides=('kernel26-headers')
    conflicts=('kernel26-headers')
    replaces=('kernel26-headers')
    mkdir -p "${pkgdir}/lib/modules/${_kernver}"
    cd "${pkgdir}/lib/modules/${_kernver}"
    ln -sf ../../../usr/src/linux-${_kernver} build
    cd "${srcdir}/linux-${_basekernel}"
    install -D -m644 Makefile \
    "${pkgdir}/usr/src/linux-${_kernver}/Makefile"
    install -D -m644 kernel/Makefile \
    "${pkgdir}/usr/src/linux-${_kernver}/kernel/Makefile"
    install -D -m644 .config \
    "${pkgdir}/usr/src/linux-${_kernver}/.config"
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include"
    for i in acpi asm-generic config crypto drm generated linux math-emu \
    media net pcmcia scsi sound trace video xen; do
    cp -a include/${i} "${pkgdir}/usr/src/linux-${_kernver}/include/"
    done
    # copy arch includes for external modules
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/x86"
    cp -a arch/x86/include "${pkgdir}/usr/src/linux-${_kernver}/arch/x86/"
    # copy files necessary for later builds, like nvidia and vmware
    cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}"
    cp -a scripts "${pkgdir}/usr/src/linux-${_kernver}"
    # fix permissions on scripts dir
    chmod og-w -R "${pkgdir}/usr/src/linux-${_kernver}/scripts"
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/.tmp_versions"
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel"
    cp arch/${KARCH}/Makefile "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
    if [ "${CARCH}" = "i686" ]; then
    cp arch/${KARCH}/Makefile_32.cpu "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
    fi
    cp arch/${KARCH}/kernel/asm-offsets.s "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel/"
    # add headers for lirc package
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video"
    cp drivers/media/video/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/"
    for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102; do
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
    cp -a drivers/media/video/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
    done
    # add docbook makefile
    install -D -m644 Documentation/DocBook/Makefile \
    "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile"
    # add dm headers
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/md"
    cp drivers/md/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/md"
    # add inotify.h
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/linux"
    cp include/linux/inotify.h "${pkgdir}/usr/src/linux-${_kernver}/include/linux/"
    # add wireless headers
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/"
    cp net/mac80211/*.h "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/"
    # add dvb headers for external modules
    # in reference to:
    # http://bugs.archlinux.org/task/9912
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core"
    cp drivers/media/dvb/dvb-core/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core/"
    # and...
    # http://bugs.archlinux.org/task/11194
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
    cp include/config/dvb/*.h "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
    # add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
    # in reference to:
    # http://bugs.archlinux.org/task/13146
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
    cp drivers/media/dvb/frontends/lgdt330x.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
    cp drivers/media/video/msp3400-driver.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
    # add dvb headers
    # in reference to:
    # http://bugs.archlinux.org/task/20402
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb"
    cp drivers/media/dvb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb/"
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends"
    cp drivers/media/dvb/frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners"
    cp drivers/media/common/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners/"
    # add xfs and shmem for aufs building
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs"
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/mm"
    cp fs/xfs/xfs_sb.h "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs/xfs_sb.h"
    # copy in Kconfig files
    for i in `find . -name "Kconfig*"`; do
    mkdir -p "${pkgdir}"/usr/src/linux-${_kernver}/`echo ${i} | sed 's|/Kconfig.*||'`
    cp ${i} "${pkgdir}/usr/src/linux-${_kernver}/${i}"
    done
    chown -R root.root "${pkgdir}/usr/src/linux-${_kernver}"
    find "${pkgdir}/usr/src/linux-${_kernver}" -type d -exec chmod 755 {} \;
    # strip scripts directory
    find "${pkgdir}/usr/src/linux-${_kernver}/scripts" -type f -perm -u+w 2>/dev/null | while read binary ; do
    case "$(file -bi "${binary}")" in
    *application/x-sharedlib*) # Libraries (.so)
    /usr/bin/strip ${STRIP_SHARED} "${binary}";;
    *application/x-archive*) # Libraries (.a)
    /usr/bin/strip ${STRIP_STATIC} "${binary}";;
    *application/x-executable*) # Binaries
    /usr/bin/strip ${STRIP_BINARIES} "${binary}";;
    esac
    done
    # remove unneeded architectures
    rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa}
    package_linux-docs() {
    pkgdesc="Kernel hackers manual - HTML documentation that comes with the Linux kernel."
    provides=('kernel26-docs')
    conflicts=('kernel26-docs')
    replaces=('kernel26-docs')
    cd "${srcdir}/linux-${_basekernel}"
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}"
    cp -al Documentation "${pkgdir}/usr/src/linux-${_kernver}"
    find "${pkgdir}" -type f -exec chmod 444 {} \;
    find "${pkgdir}" -type d -exec chmod 755 {} \;
    # remove a file already in linux package
    rm -f "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile"
    After the compiling is finished:
    sudo pacman -U linux-morrvick-3.1.1-1-x86_64.pkg.tar.xz
    Password:
    resolving dependencies...
    looking for inter-conflicts...
    :: linux-morrvick and linux are in conflict (kernel26). Remove linux? [y/N] n
    error: unresolvable package conflicts detected
    error: failed to prepare transaction (conflicting dependencies)
    :: linux-morrvick and linux are in conflict (kernel26)
    Any thoughts?

  • Why no bootsplash or fbsplash in arch kernel?

    I'm not begging for a feature, if I wanted it I'd compile it myself, but I was genuinely wondering, why no bootsplash or fbsplash patches applied to the default arch kernel?
    If a splash patch is included in the kernel, it doesn't have to be used if the user doesn't want, right?  And bootsplash has been around for quite some time, and every time I used it it felt like stable software (as in, I had no problems with it).  Now I never tried fbsplash, but why not include one of them?
    I'm sure there's a good reason not to have arch patch the default kernel with either patch, I was just wondering what it is.

    Amazingly, people use Arch on their laptops too.
    IE Me, So I am constantly rebooting, software suspend isnt worth the effort when I boot up in under a minute.
    bootsplash is also nice when you want to do some console based work, or operate entirely from the console.
    As has been said, bootsplash isnt included because of Arch's keep it simple philosophy, developers only patch the kernel with what they need, no more.
    Another reason, could well be that the patches are not well maintained, take a look at bootsplash.org, no recent kernels have patches. Sure bootsplash.de have them, but they always arent out until even a few weeks after the kernel.
    And finally, compiling the kernel with either bootsplash or fbsplash would stop a user from having a choice between the two.
    iphitus

  • Pactching kernel with fbsplash.patch (SOLVED)

    Never patched a kernel before and i'm having problems!!
    This what i've done so far (as root):
    1. Installed kernel26-ck (2.6.22-ck) with pacman and rebooted into arch using that kernel
    2. downloaded the fbsplash via (genpatches-2.6.22-1.extras.tar.bz2)
    3. put the splash.patch file into /usr/src
    4. made a symlink for current kernel in /usr/src; giving /usr/src/linux --> /usr/src/linux/linux-2.6.22-ck
    5. cd /usr/src/linux
    6. patch -p1 < ../splash.patch
    # NOTE: looking into using the abs method of PKGBUILD'ing a custom kernel with patches - hopefully i'll do better!!
    The best way to do this is by emulating the abs versions of the standard kernel as described in these forums
    1. copy the abs version of the stock kernel26
    2. adjust the PKGBUILD to include spock's patch (not gentoo's)
    3. makepkg
    4. pacman -U the new kernel
    Then get on with fbsplash!
    Last edited by Hongkongblue (2007-08-17 02:58:45)

    mazu wrote:
    I used to use kernel26-beyond kernel with fbsplash. Recently I found out that with this kernel any attempt to mount ntfs disk end with system hung. I switched back to standard kernel, but I want to still use fbsplash. I read the wiki several times but I can't figure out how to patch and compile kernel with fbsplash. Can anyone write step by step what shuld I do?
    Thanks for any help in advice.
    mazu
    Not that it answers your question but I have been using the latest beyond kernel since it came out and have had no problem with mounting and using ntfs disks resulting in system hangs. Also I have recently been using ntfs-3g which allows safely writing to NTFS partitions. I am using it for backups on an external USB drive with an NTFS file system. Give ntf-3g a shot before patching the kernel.
    Last edited by raymano (2007-04-14 14:01:35)

  • How to patch kernel with this...

    How can I patch the kernel with this files?
    https://patchwork.kernel.org/patch/94542/
    Archwiki about kernel compilation is really poor...

    Given your apparent level of expertise, it is not reasonable to expect procedures like this to "just work" without putting some time and effort into them. In this case, I would strongly recommend learning about the patch command first, and then learning about ABS (Arch Build System) and PKGBUILDs. You are throwing yourself in at the deep end by attempting to modify the kernel PKGBUILD - people usually work their way up to that.
    In other news - the 2.6.36 kernel has been released, and it includes this patch. The package is currently in the testing repo, and will soon be available in core. If the recommended learning above is not to your liking, I suggest you be patient until that happens. You could enable the testing repo either - but that's a whole other story.

  • [SOLVED] Managing Kernels with rEFInd

    Hey fellows hope you're all doing great.
    I just have some questions regarding refind boot manager which I use to dual boot arch and windows on my laptop.
    Before I installed arch,I installed refind boot manager from windows 8 using the guide  on the rodsmith website.
    Then I went on and installed arch,and everything worked right away.
    On the arch system I mounted the efi partition to the
    boot folder using fstab.
    UUID="502D-3405" /boot/efi vfat defaults 0 1¬
    /dev/sda2: UUID="502D-3405" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="85674c9f-2484-4b3b-bb97-2205e8d9da1c"
    so what resides now in my boot folder next to the efi folder,are the files (initramfs-linux.img, initramfs-linux-fallback.img
    and vmlinuz-linux)
    to make a long story short,I'm trying to create a custom entry in refind to boot into the kernel with modified parameters.
    I just added this stanza to the defualt refind.conf file in (/boot/efi/EFI/refind/)
    #Custom.Kernel Test
    menuentry "Arch Linux" {
    icon /EFI/refind/icons/os_arch.icns
    loader /boot/vmlinuz-linux
    initrd /boot/initramfs-linux.img
    options "root=PARTUUID=5b772462-68e1-463c-b22f-8ff22625ec21 rw rootfstype=ext4 pcie_aspm=force i915.i915_enable_rc6=1"
    blkid
    /dev/sdb1: LABEL="root" UUID="310f4bbc-0a2c-4667-a397-d020a7c94177" TYPE="ext4" PARTUUID="5b772462-68e1-463c-b22f-8ff22625ec21"
    The entry is there,but the the system won't boot.I also tried compiling a custom kernel the traditional way using the guide on the wiki,the kernel and the img are created another entry for the custom kernel which showed up on the refind menu,when I select it,error that the loader is not found while loading vmlinuz comes up although all the files are in the boot directory.
    Is there any thing I'm missing to make the new kernel bootable ?
    Last edited by Herbalist (2014-08-01 12:24:30)

    It seems as if you have two drives: one containing the efi-partition (sda2) and one containing your system (sdb)
    On which partition is your boot folder you put the kernel images in?
    If your kernel files are NOT on the efi partition you need to specify that using the 'volume' token as described here because the paths for 'loader' and such are relative to the efi partition or the specified volume.
    Last edited by dice (2014-07-31 15:59:24)

  • [SOLVED] Can't build fglrx module for 3.4.5-1-ARCH kernel

    Hello everyone!
    I updated my system using
        pacman -Syu --ignore glibc
    everything was good, I rebooted and my fglrx module isn't working!
    I tried:
        sudo catalyst_build_module
        Building fglrx module for 3.4.5-1-ARCH kernel ...
        Failed!!! Check out log: /var/log/catalyst-install.log
    Here is log
    Here is quote from it: Kernel header files are absent: directory /lib/modules/3.3.4-1-ARCH/build doesn't exist! Game over
    But I have the latest versions linux and linux-headers packages.
    Help please. Thanks.
    Last edited by metalex (2012-07-20 14:53:37)

    Yes, this is my problem, I  did all from here, but I still can't update glibc.
    grep '^lib/' /var/lib/pacman/local/*/files 
    output:
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/ld-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/ld-linux-x86-64.so.2
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libBrokenLocale-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libBrokenLocale.so.1
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libSegFault.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libanl-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libanl.so.1
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libc-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libc.so.6
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libcidn-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libcidn.so.1
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libcrypt-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libcrypt.so.1
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libdl-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libdl.so.2
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libm-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libm.so.6
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libmemusage.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnsl-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnsl.so.1
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_compat-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_compat.so.2
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_db-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_db.so.2
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_dns-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_dns.so.2
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_files-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_files.so.2
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_hesiod-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_hesiod.so.2
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_nis-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_nis.so.2
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_nisplus-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libnss_nisplus.so.2
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libpcprofile.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libpthread-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libpthread.so.0
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libresolv-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libresolv.so.2
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/librt-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/librt.so.1
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libthread_db-1.0.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libthread_db.so.1
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libutil-2.16.so
    /var/lib/pacman/local/glibc-2.16.0-1/files:lib/libutil.so.1
    /var/lib/pacman/local/lib32-glibc-2.15-10/files:lib/
    /var/lib/pacman/local/lib32-glibc-2.15-10/files:lib/ld-linux.so.2
    I don't know what to do with lib32-glibc...

  • About compiling a kernel with ABS

    So I was following the guide on the wiki about compiling a new kernel with ABS. I wanted to try and make a kernel that didn't need to use initramfs. I thought I could do it by not enabling the kernel to have the ability to use initramfs, and I think I also added the right modules to be built into it not have them be modules ( any idea if I can make sure I chose the correct drivers). After I was done I needed to install in using pacman -U. It told me it conflicted with kernel26 or something, and it asked if I wanted to replace it. Do I want to replace the current with the new? Or can I have them side by side? I know I can have multiple kernels, so it confused me a little.

    Still new with all this, but I'm pretty sure you don't want to replace your current kernel, or you could mess your system up should your newly compiled kernel not work.
    When you created your PKGBUILD did you by any chance forget to change its name? You should have something like "pkgname=linux-custom" (there's more to change, check the wiki for the full list) instead, so that your new kernel will be called "linux-custom" (or whatever you call it), and it can be installed alongside the (Arch) official "linux"
    After that, you can put both in your bootloader, and boot the one you want. But yeah I think you definitely want to keep the official kernel alongside yours, just in case.

  • TRIM command (as it applies to SSD) and the vanilla arch kernel

    According to this wikipedia article, the TRIM command has been implemented in Linux since kernel version 2.6.28.  I'm wondering if the vanilla Arch kernel (x86_64) has support for this compiled in and if so which module would one need to modprobe to use it?
    Thanks!

    graysky wrote:hmmmm... is NOMMU_INITIAL_TRIM_EXCESS the so-called "TRIM" support in the kernel?
    I don't think so, that seems to be memory (ram) related (NOMMU.... MMU is related to memory access as far as I know).
    All I could find with a quick google search were a few posts saying there are submitted patches and some scripts .... nothing too certain.
    As always things seem to be going at the windows development speed instead of the pace technology could go, also it seems that the spec for the trim command is/was still being finalized.
    http://www.linuxquestions.org/questions … ux-713006/
    http://marc.info/?l=linux-kernel&m=124169431911648&w=2
    http://forum.soft32.com/linux/Linux-ATA … 83626.html
    http://www.ocztechnologyforum.com/forum … fb&t=60882

Maybe you are looking for

  • Program won't load, icon 'bounces' up and down and then...stops!

    Any help please? I click on my Sims 2 icon to load up the game and all of a sudden it's stopped working. The icon bounces up and down in the sidebar and then stops. I have plenty of space to run the game and it's only just started happening.

  • Wifi issue new ipad

    ok people, I understand many have issues with the wi-fi connection. In my case, measured with speedtest.net, compared side by side laptop and ipad. laptop ~ 1.5mbs download (I know, crappy hours + comcast) ipad ~ 0.5 mbs download so, when an explanat

  • Transport of ABAP Variants

    Dear all, we are using an ABAP-Programm in a Processchain with a variant. The variant includes a "Sourcesystem". If we transport the Processchain to the Test-System or Productive-System the entry in the Variant for the Sourcesystem should be changed

  • Dynamic User Assignment for Interactive Form CO

    Hello! I want to determine the processor of an offline Interactive Form (send by mail) by setting the User-ID through the information of the context parameter. Thereofore I go to the Role-section of the corresponding block and choose "Filled from Con

  • 64 bit Windows, 64 Bit Office, 32 bit database, 160 headaches

    Hi all! I'm hoping someone can give me some pointers here. The setup I'm using is as follows: Windows 7 Pro x64 SP1 Office 2010 x64 Oracle 10g 10.2.0 32 bit client Oracle 10g 32 bit database Java 7 Update 25 (64 bit), version 7.0.250 Java SE Developm