Page 1 of 1

Fedora Core 6 + grsec

PostPosted: Fri Nov 10, 2006 3:05 pm
by urbiusz
I patched and compiled everything like allways. this time i have something like this in boot time:

swsusp: Need to copy 107752 pages
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
swsusp: Restoring Highmem
BUG: sleeping function called from invalid context at kernel/rwsem.c:20
in_atomic():0, irqs_disabled():1
[< c04051db >] dump_trace+0x69/0x1af
[< c0405339 >] show_trace_log_lvl+0x18/0x2c
[< c04058ed >] show_trace+0xf/0x11
[< c04059ea >] dump_stack+0x15/0x17
[< c0439446 >] down_read+0x12/0x20
[< c0431601 >] blocking_notifier_call_chain+0xe/0x29
[< c05a9798 >] cpufreq_resume+0x118/0x135
[< c0551440 >] __sysdev_resume+0x20/0x53
[< c0551583 >] sysdev_resume+0x16/0x47
[< c0555767 >] device_power_up+0x5/0xa
[< c0442360 >] swsusp_suspend+0x74/0x90
[< c04427f6 >] pm_suspend_disk+0x43/0xc9
[< c0441959 >] enter_state+0x53/0x176
[< c0441b01 >] state_store+0x85/0x99
[< c04a5fe6 >] subsys_attr_store+0x1e/0x22
[< c04a60d9 >] sysfs_write_file+0xa7/0xce
[< c046f805 >] vfs_write+0xa8/0x159
[< c046fe32 >] sys_write+0x41/0x67
[< c0404013 >] syscall_call+0x7/0xb
DWARF2 unwinder stuck at syscall_call+0x7/0xb
Leftover inexact backtrace:
=======================

Any ideas??

Grub , fc6, 2.9 celeron, 1gb mem, 80 hdd sata , 2.6.18.2grsec

Re: Fedora Core 6 + grsec

PostPosted: Fri Nov 10, 2006 4:50 pm
by PaX Team
urbiusz wrote:Any ideas??

Grub , fc6, 2.9 celeron, 1gb mem, 80 hdd sata , 2.6.18.2grsec
first of all, i have yet to check that suspend doesn't interfere with PaX, so in general i don't suggest using it. second, i wonder how this whole thing is supposed to work given that swsusp_suspend() runs with interrupts disabled at the time it calls device_power_up() (which is even documented), so it's no wonder it triggers the might_sleep() check in down_read(). i.e., this looks like an upstream bug. having taken a look at the upcoming 2.6.19 it seems that the problem has been fixed by switching to the sRCU facility, so you'll have to wait for the new kernel for a proper fix.

1.6.19.rc6 works fine

PostPosted: Sat Nov 25, 2006 8:34 pm
by urbiusz
I tried this kernel and it works fine with fc6 no more problems.
So now i have to wait on new grsec patch to 1.6.19 :)))

Thanks.

PostPosted: Tue Dec 26, 2006 7:48 pm
by Dr_Napalm
did you set "CONFIG_DEBUG_RODATA=y" by accident? :-)

---
config DEBUG_RODATA
bool "Write protect kernel read-only data structures"
depends on DEBUG_KERNEL && !PAX_KERNEXEC
help
Mark the kernel read-only data as write-protected in the pagetables,
in order to catch accidental (and incorrect) writes to such const

---

But i had this in an old config anyways and it crashed in "rwsem.c line 20"