With patches 0-4 of f0.4 patched into a 2.6.11 kernel, I'm seeing a ref-counting Oops when I run the following two commands in parallel:
A: while true; do mkdir /config/ckrm/foo; rmdir /config/ckrm/foo; done B: while true; do echo $$ > /config/ckrm/foo/members; done (This is basically the same test case that was a problem for e18). I get a warning trigged in kref_get(), followed by an Oops in ckrm_remove_child() - presumably the ckrm_add_member is adding a task to a class whose refcount has already reached 0 and is in the process of being destroyed - see the console dump below. A solution would probably involve making rcfs or configfs hold refcounts for every object that's accessible through the filesystem, and not drop them until the object is no longer accessible. Paul Badness in kref_get at lib/kref.c:32 [<c01b1832>] kref_get+0x26/0x30 [<c01370fd>] ckrm_add_member+0x9d/0xc8 [<c01a7e9d>] rcfs_attr_store+0x109/0x148 [<c01a5975>] flush_write_buffer+0x2d/0x34 [<c01a59c7>] configfs_write_file+0x4b/0x70 [<c0153600>] vfs_write+0x94/0xf0 [<c0153708>] sys_write+0x40/0x6c [<c0102d70>] syscall_call+0x7/0xb Unable to handle kernel paging request at virtual address 00100104 printing eip: c0135fea *pde = 00000000 Oops: 0002 [#1] SMP Modules linked in: pcnet32 mii crc32 uhci_hcd rtc CPU: 0 EIP: 0060:[<c0135fea>] Not tainted VLI EFLAGS: 00010246 (2.6.11-smp-DEV) EIP is at ckrm_remove_child+0x16/0x34 eax: 00100100 ebx: cf2b7880 ecx: cf2b78c4 edx: 00200200 esi: cf2b7880 edi: c0392d40 ebp: cef3e540 esp: cfea9f10 ds: 007b es: 007b ss: 0068 Process events/0 (pid: 4, threadinfo=cfea8000 task=cfedaa60) Stack: c0392d68 c013627c cf2b7880 c013623c cf2b78b4 cef3ea50 cef3e540 c01b189d cf2b78b4 c0392d40 cf2b7880 c0136989 cf2b78b4 c013623c c0392d74 c04ba6a0 c0392dc4 c12ad000 00000000 00000001 c0392d40 c0136a7a cef3e540 cf2b7880 Call Trace: [<c013627c>] ckrm_release_class+0x40/0xc0 [<c01b189d>] kref_put+0x61/0x67 [<c0136989>] ckrm_setclass_internal+0x109/0x1bc [<c0136a7a>] ckrm_setclass_wq+0x3e/0xa0 [<c012ae83>] worker_thread+0x1b3/0x240 [<c012e4f9>] kthread+0x7d/0xac [<c0101309>] kernel_thread_helper+0x5/0xc Code: 8b 53 4c 89 42 04 89 51 44 8d 53 4c 89 50 04 89 43 4c 5b c3 90 53 8b 5c 24 08 8d 43 4c 39 43 4c 75 23 8d 4b 44 8b 51 04 8b 43 44 <89> 50 04 89 02 c7 43 44 00 01 10 00 c7 41 04 00 02 20 00 b8 01 ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid0944&bid$1720&dat1642 _______________________________________________ ckrm-tech mailing list https://lists.sourceforge.net/lists/listinfo/ckrm-tech