* Mounting /proc [ok] awk: cmd. line 2 fatal cannot open file `/proc/mounts' for reading (No such file or directory) rm: cannot remove `/dev/.devfsd*: operation not permitted awk: cmd. ... It's more or less the same kernel config like I use for the .26 one , just the added SATA stuff is disabled, since I don't have use for it. I tried .28 vanilla and it works fine.
Created attachment 44345 [details] 'linux-2.4.26-gentoo-r11.config
... And if you disable GRSec?
Created attachment 44346 [details] gentoo.26.28.diff
Oh, that's a fast comment. I try it later, need the box now. :)
Yes, disabling Grsecurity let the kernel boot. btw. patches.txt: "Please check the ebuild ChangeLog for more details." Is it too much asked, to list the patches? The ebuild Changelog isn't really a good source.
Mind testing http://dev.gentoo.org/~plasmaroo/patches/kernel/gentoo-sources/gentoo-sources-2.4.28-r4.ebuild ... ?
this did not work :) gcc -E -C -P -I/usr/src/linux-2.4.28-gentoo-r4/include -D__KERNEL__ -imacros /usr/src/linux-2.4.28-gentoo-r4/include/linux/config.h -imacros /usr/src/linux-2.4.28-gentoo-r4/include/asm-i386/segment.h -imacros /usr/src/linux-2.4.28-gentoo-r4/include/asm-i386/page.h -Ui386 arch/i386/vmlinux.lds.S >arch/i386/vmlinux.lds ld -m elf_i386 -T /usr/src/linux-2.4.28-gentoo-r4/arch/i386/vmlinux.lds -e stext arch/i386/kernel/head.o arch/i386/kernel/init_task.oinit/main.o init/version.o init/do_mounts.o \ --start-group \ arch/i386/kernel/kernel.o arch/i386/mm/mm.o kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o \ drivers/acpi/acpi.o drivers/parport/driver.o drivers/char/char.o drivers/block/block.o drivers/misc/misc.o drivers/net/net.odrivers/ide/idedriver.o drivers/scsi/scsidrv.o drivers/cdrom/driver.o drivers/pci/driver.o drivers/pnp/pnp.o drivers/video/video.o drivers/usb/usbdrv.o drivers/media/media.o drivers/md/mddev.o crypto/crypto.o \ net/network.o \ grsecurity/grsec.o \ /usr/src/linux-2.4.28-gentoo-r4/arch/i386/lib/lib.a /usr/src/linux-2.4.28-gentoo-r4/lib/lib.a /usr/src/linux-2.4.28-gentoo-r4/arch/i386/lib/lib.a \ --end-group \ -o vmlinux grsecurity/grsec.o(.text+0x889d): In function `gr_acl_handle_psacct': : undefined reference to `get_jiffies_64' grsecurity/grsec.o(.text+0x88d9): In function `gr_acl_handle_psacct': : undefined reference to `do_div' make: *** [vmlinux] Error 1
I've uploaded a newer tarball to the same place that should hopefully work now; can you please give it a go? Thanks...
Yes, the kernel boots fine now. Just lm-sensors fails to compile. In file included from /usr/src/linux/include/linux/spinlock.h:7, from /usr/src/linux/include/linux/module.h:12, from kernel/busses/i2c-ali1535.c:56: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules kernel/busses/i2c-ali1535.c: In function `ali1535_transaction': kernel/busses/i2c-ali1535.c:310: warning: implicit declaration of function `i2c_delay' kernel/busses/i2c-ali1535.c: At top level: kernel/busses/i2c-ali1535.c:530: error: unknown field `owner' specified in initializer kernel/busses/i2c-ali1535.c:530: warning: missing braces around initializer kernel/busses/i2c-ali1535.c:530: warning: (near initialization for `ali1535_adapter.name') kernel/busses/i2c-ali1535.c:530: warning: initialization makes integer from pointer without a cast kernel/busses/i2c-ali1535.c:530: error: initializer element is not computable at load time kernel/busses/i2c-ali1535.c:530: error: (near initialization for `ali1535_adapter.name[0]') kernel/busses/i2c-ali1535.c:531: error: initializer element is not constant kernel/busses/i2c-ali1535.c:531: error: (near initialization for `ali1535_adapter.name') make: *** [kernel/busses/i2c-ali1535.o] Error 1 make: *** Waiting for unfinished jobs.... In file included from /usr/src/linux/include/linux/spinlock.h:7, from /usr/src/linux/include/linux/module.h:12, from kernel/busses/i2c-ali15x3.c:65: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules kernel/busses/i2c-ali15x3.c: In function `ali15x3_transaction': kernel/busses/i2c-ali15x3.c:298: warning: implicit declaration of function `i2c_delay' kernel/busses/i2c-ali15x3.c: At top level: kernel/busses/i2c-ali15x3.c:472: error: unknown field `owner' specified in initializer kernel/busses/i2c-ali15x3.c:472: warning: missing braces around initializer kernel/busses/i2c-ali15x3.c:472: warning: (near initialization for `ali15x3_adapter.name') kernel/busses/i2c-ali15x3.c:472: warning: initialization makes integer from pointer without a cast kernel/busses/i2c-ali15x3.c:472: error: initializer element is not computable at load time kernel/busses/i2c-ali15x3.c:472: error: (near initialization for `ali15x3_adapter.name[0]') kernel/busses/i2c-ali15x3.c:473: error: initializer element is not constant kernel/busses/i2c-ali15x3.c:473: error: (near initialization for `ali15x3_adapter.name') make: *** [kernel/busses/i2c-ali15x3.o] Error 1 !!! ERROR: sys-apps/lm-sensors-2.8.7 failed.
Yeah, you need to apply the patch given in the URL in the i2c // lm-sensors ebuild.
2.4.28-r4 in CVS; please reopen if you have any problems...
>Yeah, you need to apply the patch given in the URL in the i2c // lm-sensors ebuild. Hm, if I would care enough for the die temperature. ;) I just don't think you want to tell this joe user N+1, if you should mark this kernel stable at some time. The kernel seem to run fine, though. Thanks Tim.
Sidenote: i2c-2.9.0 no longer needs any patching.
>Sidenote: i2c-2.9.0 no longer needs any patching. Broken promise. It fails likewise. At least you managed to have a tester. ;p
Hrm, looks like the I2C devs lied to me when they said I can remove the big fat warning einfos when 2.9.0 is out :-|. Reopening bug...
Turns out to be an upstream Makefile bug in i2c -- backport added to Portage. Sync, re-merge I2C and lm-sensors should play nice now...
Tim, I'm really sorry to say it, but the i2c patch does not suffice. lm-sensors still bails out: In file included from /usr/src/linux/include/linux/spinlock.h:7, from /usr/src/linux/include/linux/module.h:12, from kernel/busses/i2c-ali15x3.c:65: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules kernel/busses/i2c-ali15x3.c: In function `ali15x3_transaction': kernel/busses/i2c-ali15x3.c:298: warning: implicit declaration of function `i2c_delay' i686-pc-linux-gnu-gcc -DMODVERSIONS -include /usr/src/linux/include/linux/modversions.h -D__KERNEL__ -DMODULE -DEXPORT_SYMTAB -fomit-frame-pointer -I. -Ikernel/include -I/var/tmp/portage/lm-sensors-2.9.0/work/i2c-headers -I/usr/src/linux/include -nostdinc -I /usr/lib/gcc/i686-pc-linux-gnu/3.4.3/include -Wall -O2 -O2 -march=athlon-xp -pipe -fforce-addr -fprefetch-loop-arrays -fmove-all-movables -mfpmath=sse,387 -fno-stack-protector -c kernel/busses/i2c-amd756.c -o kernel/busses/i2c-amd756.o In file included from /usr/src/linux/include/linux/spinlock.h:7, from /usr/src/linux/include/linux/module.h:12, from kernel/busses/i2c-ali1535.c:56: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules kernel/busses/i2c-ali1535.c: In function `ali1535_transaction': kernel/busses/i2c-ali1535.c:311: warning: implicit declaration of function `i2c_delay' i686-pc-linux-gnu-gcc -DMODVERSIONS -include /usr/src/linux/include/linux/modversions.h -D__KERNEL__ -DMODULE -DEXPORT_SYMTAB -fomit-frame-pointer -I. -Ikernel/include -I/var/tmp/portage/lm-sensors-2.9.0/work/i2c-headers -I/usr/src/linux/include -nostdinc -I /usr/lib/gcc/i686-pc-linux-gnu/3.4.3/include -Wall -O2 -O2 -march=athlon-xp -pipe -fforce-addr -fprefetch-loop-arrays -fmove-all-movables -mfpmath=sse,387 -fno-stack-protector -c kernel/busses/i2c-amd756-s4882.c -o kernel/busses/i2c-amd756-s4882.o In file included from /usr/src/linux/include/linux/spinlock.h:7, from /usr/src/linux/include/linux/module.h:12, from kernel/busses/i2c-amd756.c:42: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules kernel/busses/i2c-amd756.c: In function `amd756_transaction': kernel/busses/i2c-amd756.c:132: warning: implicit declaration of function `i2c_delay' i686-pc-linux-gnu-gcc -DMODVERSIONS -include /usr/src/linux/include/linux/modversions.h -D__KERNEL__ -DMODULE -DEXPORT_SYMTAB -fomit-frame-pointer -I. -Ikernel/include -I/var/tmp/portage/lm-sensors-2.9.0/work/i2c-headers -I/usr/src/linux/include -nostdinc -I /usr/lib/gcc/i686-pc-linux-gnu/3.4.3/include -Wall -O2 -O2 -march=athlon-xp -pipe -fforce-addr -fprefetch-loop-arrays -fmove-all-movables -mfpmath=sse,387 -fno-stack-protector -c kernel/busses/i2c-amd8111.c -o kernel/busses/i2c-amd8111.o In file included from /usr/src/linux/include/linux/spinlock.h:7, from /usr/src/linux/include/linux/module.h:12, from kernel/busses/i2c-amd756-s4882.c:36: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules i686-pc-linux-gnu-gcc -DMODVERSIONS -include /usr/src/linux/include/linux/modversions.h -D__KERNEL__ -DMODULE -DEXPORT_SYMTAB -fomit-frame-pointer -I. -Ikernel/include -I/var/tmp/portage/lm-sensors-2.9.0/work/i2c-headers -I/usr/src/linux/include -nostdinc -I /usr/lib/gcc/i686-pc-linux-gnu/3.4.3/include -Wall -O2 -O2 -march=athlon-xp -pipe -fforce-addr -fprefetch-loop-arrays -fmove-all-movables -mfpmath=sse,387 -fno-stack-protector -c kernel/busses/i2c-hydra.c -o kernel/busses/i2c-hydra.o In file included from /usr/src/linux/include/linux/spinlock.h:7, from /usr/src/linux/include/linux/module.h:12, from kernel/busses/i2c-amd8111.c:11: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules In file included from /usr/src/linux/include/linux/spinlock.h:7, from /usr/src/linux/include/linux/module.h:12, from kernel/busses/i2c-hydra.c:28: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules i686-pc-linux-gnu-gcc -DMODVERSIONS -include /usr/src/linux/include/linux/modversions.h -D__KERNEL__ -DMODULE -DEXPORT_SYMTAB -fomit-frame-pointer -I. -Ikernel/include -I/var/tmp/portage/lm-sensors-2.9.0/work/i2c-headers -I/usr/src/linux/include -nostdinc -I /usr/lib/gcc/i686-pc-linux-gnu/3.4.3/include -Wall -O2 -O2 -march=athlon-xp -pipe -fforce-addr -fprefetch-loop-arrays -fmove-all-movables -mfpmath=sse,387 -fno-stack-protector -c kernel/busses/i2c-i801.c -o kernel/busses/i2c-i801.o kernel/busses/i2c-amd8111.c:26:2: #error Your i2c is too old - i2c-2.7.0 or greater required! kernel/busses/i2c-amd8111.c: In function `amd8111_access': kernel/busses/i2c-amd8111.c:196: error: `I2C_CLIENT_PEC' undeclared (first use in this function) kernel/busses/i2c-amd8111.c:196: error: (Each undeclared identifier is reported only once kernel/busses/i2c-amd8111.c:196: error: for each function it appears in.) kernel/busses/i2c-amd8111.c:256: error: `I2C_SMBUS_BLOCK_PROC_CALL' undeclared (first use in this function) kernel/busses/i2c-amd8111.c:267: error: `I2C_SMBUS_WORD_DATA_PEC' undeclared (first use in this function) kernel/busses/i2c-amd8111.c:268: error: `I2C_SMBUS_BLOCK_DATA_PEC' undeclared (first use in this function) kernel/busses/i2c-amd8111.c:269: error: `I2C_SMBUS_PROC_CALL_PEC' undeclared (first use in this function) kernel/busses/i2c-amd8111.c:270: error: `I2C_SMBUS_BLOCK_PROC_CALL_PEC' undeclared (first use in this function) kernel/busses/i2c-amd8111.c:290: warning: implicit declaration of function `i2c_delay' kernel/busses/i2c-amd8111.c: In function `amd8111_func': kernel/busses/i2c-amd8111.c:346: error: `I2C_FUNC_SMBUS_BLOCK_PROC_CALL' undeclared (first use in this function) kernel/busses/i2c-amd8111.c:347: error: `I2C_FUNC_SMBUS_HWPEC_CALC' undeclared (first use in this function) kernel/busses/i2c-amd8111.c: In function `amd8111_probe': kernel/busses/i2c-amd8111.c:386: error: `I2C_HW_SMBUS_AMD8111' undeclared (first use in this function) make: *** [kernel/busses/i2c-amd8111.o] Error 1 make: *** Waiting for unfinished jobs.... In file included from /usr/src/linux/include/linux/spinlock.h:7, from /usr/src/linux/include/linux/module.h:12, from kernel/busses/i2c-i801.c:46: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules kernel/busses/i2c-i801.c: In function `i801_transaction': kernel/busses/i2c-i801.c:230: warning: implicit declaration of function `i2c_delay' kernel/busses/i2c-i801.c: In function `i801_access': kernel/busses/i2c-i801.c:451: warning: unused variable `hwpec' !!! ERROR: sys-apps/lm-sensors-2.9.0 failed.
Strange, worked for me... Is /usr/src/linux pointing to the right place for a start, as the compile has "#error Your i2c is too old - i2c-2.7.0 or greater required!".
>realpath /usr/src/linux /usr/src/linux-2.4.28-gentoo-r4 >md5sum /usr/src/linux/include/asm/system.h 3f39543c790fb7b8d28980211ffcd580 /usr/src/linux/include/asm/system.h Patches did apply correctly for the kernel and i2c.
> Patches did apply correctly for the kernel Are you referring to the gentoo-sources patches or some I2C patches?
I just had a look at the log files to reassure myself that all the patches for both the kernel and i2c did apply as they should.
Want to try merging another copy of gentoo-sources somewhere, setting the symlink to point to it and remerging I2C and lm-sensors? As it works fine here (after fixing the I2C Makefiles in the ebuild)...
Most of you probably know this but what causes this error is the "Proc restrictions" option within Grsecurity, this is unfortunate since this option is very useful.
>Want to try merging another copy of gentoo-sources somewhere Of course I could - wanting is another question ;) - it's just that if you did not change the patch set in between, there should be no difference. >Most of you probably know What should the restrictions have to do with the compilation? Also I did not apply /proc restrictions.
Tim, same problem with -r5.
Works for me, heh. <testing> * Merge gentoo-sources * make menuconfig * make dep * Change symlink to /usr/src/linux to point to gentoo-sources-2.4.28-r5 * Merge i2c (2.9.0) * Merge lm-sensors (2.9.0) * All merges fine... </testing>
Ok, this should be FIXED as I can't reproduce it here. Want to try a clean merge and compile of 2.4.28-r6 and reopen this bug if you still have problems?
for the records: I just made completely new .28-r7 config and it's still the same. But don't bother, Tim. If I'd really care I would (try to) have a look at it myself.