2.5.44: Strange oopses triggered by pipe_write?
Quoted 3 lines · Petr Vandrovec
Hi,
I just left my 2.5.44 box unattended for hour and half, and when
I came back, I saw very strange things on screen:
Machine did it again yesterday 7:55 morning, after having ~10 hours uptime. All three dumps are same, with minor difference in last one:
*pde is 024c4067, and Process line is 'cat (pid: 11497, threadinfo=c3960000, task=d1c3a780)'... All other values are same.
And during boot I received:
...
Adding 1024120k swap on /dev/hda2. Priority:-1 extents:1 EXT2-fs error (device ide0(3,1)): ext2_free_blocks: Freeing blocks not in
datazone - block 3245558600, count = 38276
Checking root file system...
fsck 1.30-WIP (30-Sep-2002)
...
It looks to me very strange that ext2 was freeing blocks while being mounted read-only...
And I forgot in last mail: kernel is compiled WITHOUT preempt.
Thanks,
Petr Vandrovec [email protected]
Quoted 43 lines
Debug: sleeping function called from illegal context at
include/asm/semaphore.h:119Call Trace: [<c011a0f3>] __might_sleep+0x43/0x47 [..........] pipe_write+0x7f/0x230 ........... vfs_write+0xc1/0x160 ........... sys_write+0x2a/0x3c [<c0107437>] syscall_call+0x7/0xbbad: scheduling while atomic!
[<c0117ea2>] schedule+0x2e/0x480 ............ sys_write+0x33/0x3c [<c010745e>] work_resched+0x5/0x16 Unable to handle kernel paging request at virtual address 401202b8 printing eip: 4004cb65 *pde = 10f6a067 *pte = 00000000 Oops: 0004 parport_pc parport tvaudio bttv tuner video-buf videodev i810_audio ac97_codec soundcore af_packet nls_cp852 nls_iso8859-2 ipx p8022 psnap llc e100 CPU: 0EIP: 0023:[<4004cb65>] Not tainted
EFLAGS: 00010246
eax: 00000004 ebx: 40131704 ecx:4012d54cedx:401320a8
esi: 00001000 edi: 00000000 ebp:bffffc88esp:bffffc70
ds: 002b es: 002b ss: 002b
Process cat (pid: 26569, threadinfo=c586c000, task=da9ac100)
<0>Kernel panic: Aiee, killing interrupt handler!
In interrupt handler - not syncingIt looks to me like that system first complained a bit about some spinlock being held, panicked in schedule, and then it printed very strange oopses: they look like userspace CPU context.
Kernel is 2.5.44, compiled for SMP, running on machine with 1 CPU. Before this incident machine was up for about 60 hours. After reboot fsck found 31 deleted inodes with zero dtime.
Thanks,
Petr Vandrovec [email protected]