Re: [gamin] kernel oops when removing a wathced directory



The inotify 0.12 patch has some problems. I will be releasing a version
with the fix this week, but rml's patches probably have this fix
incorporated already.

John

On Wed, 2004-10-06 at 10:07, Egmont Koblinger wrote:
> Hi,
> 
> The subject says it all :-))  The rest are just boring details...
> 
> I'm using an overpatched 2.6.9-rc3 with inotify patch 0.12.0. Previously I
> had an overpatched 2.6.9-rc2 with inotify 0.9.2, and that one worked fine.
> I'm just compiling a vanilla+inotify kernel to try that one...
> 
> Here's what I do to reproduce the bug:
> Copy-paste monitor.c (Example 8-1) from
> http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=bks&fname=/SGI_Developer/books/IIDsktp_IG/sgi_html/ch08.html
> replace GETfd with GETFD and compile it
> 
> $ mkdir /tmp/foobar
> $ ./monitor /tmp/foobar
> ;     keep trying patiently until it starts successfully, often it exits with
> ;     a "Success" error :)
> ;     Then in another terminal:
> $ rmdir /tmp/foobar
> Segmentation fault
> $ dmesg
> Unable to handle kernel paging request at virtual address 0001041b
>  printing eip:
> c0425623
> *pde = 00000000
> Oops: 0002 [#1]
> SMP
> Modules linked in: [long list...]
> CPU:    1
> EIP:    0060:[<c0425623>]    Tainted: P   VLI
> EFLAGS: 00210216   (2.6.9-rc3-1)
> EIP is at _spin_lock+0x3/0x20
> eax: 0001041b   ebx: dd7ca988   ecx: c04b2550   edx: dd7ca988
> esi: ce1210c4   edi: ce1210c4   ebp: d7bbdf00   esp: d7bbdf00
> ds: 007b   es: 007b   ss: 0068
> Process rmdir (pid: 10491, threadinfo=d7bbc000 task=c3613000)
> Stack: d7bbdf18 c036f65d 00000000 dd7ca988 ce1210c4 ce1210c4 d7bbdf30 c036f849
>        dd7ca988 00000000 00000000 c792f320 d7bbdf60 c016a9c4 ce1210c4 ce1210c4
>        00000800 00000000 de70ea24 00000080 c792f38c c792f320 d06b0000 c792f320
> Call Trace:
>  [<c0108405>] show_stack+0x75/0x90
>  [<c0108565>] show_registers+0x125/0x190
>  [<c010873a>] die+0xda/0x160
>  [<c011d2f0>] do_page_fault+0x2b0/0x5de
>  [<c0107fdd>] error_code+0x2d/0x40
>  [<c036f65d>] ignore_helper+0x1d/0xb0
>  [<c036f849>] inotify_inode_is_dead+0x29/0x50
>  [<c016a9c4>] vfs_rmdir+0x134/0x220
>  [<c016ab39>] sys_rmdir+0x89/0xe0
>  [<c0106ea7>] syscall_call+0x7/0xb
> Code: 00 00 00 01 0f 94 c0 84 c0 b9 01 00 00 00 75 09 f0 81 02 00 00 00 01
> 31 c9 89 c8 5d c3 8d 74 26 00 8d bc 27 00 00 00 00 55 89 e5 <f0> fe 08 79 09
> f3 90 80 38 00 7e f9 eb f2 5d c3 8d b6 00 00 00
> 
> Further attempts to access the contents of /tmp/foobar cause no more oops or
> segfault, rather the process (rmdir or whatever) stucks in 'D' state
> forever...
> 
> 
> bye,
> Egmont
> _______________________________________________
> Gamin-list mailing list
> Gamin-list gnome org
> http://mail.gnome.org/mailman/listinfo/gamin-list
> 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]