Hello all, we are testing our fs project on a 2.6.17.4 kernel that is patched with http://marc.theaimsgroup.com/?l=linux-fsdeve,l&m=115080965116016&w=2 patch. We experienced BUGs in mm/rmap.c when creating many files in a single directory. In the first place, it occured on ext3 with idexed directories (see the report bellow). At one moment it happed every time I ran the test. Today something similar happend when playing with our fs. In both cases there was no swap mounted. It never happend with swap enabled. Highmem is used on the test machine. The test is as follows : 1 - mkfs in case of ext3 mkfs.ext3 -N 1000000 device tune2fs -O dir_index device 2 - mount root device 3 - mkdir root/dir 4 - cd root/dir 5 - for i in `seq 1 500000` ; do touch some_empty_file_$i ; echo $i ; done Does anybody know whether the patch might be the cause of the problem? Or what else might be the problem? We appreciate any ideas and suggestion. Tomas EXT3 report ----------- VM: killing process bash swap_free: Bad swap file entry 30000000 swap_free: Unused swap file entry 00000010 Eeek! page_mapcount(page) went negative! (-1) page->flags = 400 page->count = 1 page->mapping = 00000000 ------------[ cut here ]------------ kernel BUG at mm/rmap.c:560! invalid opcode: 0000 [#1] PREEMPT Modules linked in: netconsole snd_mixer_oss 8139cp snd_via82xx snd_ac97_codec snd_ac97_bus snd_pcm snd_timer snd_page_alloc snd_mpu401_uart snd_rawmidi snd_seq_device snd soundcore ehci_hcd usbcore 8139too mii fan thermal processor rt2500 rtc unix CPU: 0 EIP: 0060:[<c013dadf>] Not tainted VLI EFLAGS: 00010286 (2.6.17.4 #9) EIP is at page_remove_rmap+0x64/0x79 eax: ffffffff ebx: c1000000 ecx: c02ed394 edx: 00000001 esi: 080f5000 edi: e7bc13d4 ebp: 00000000 esp: ed7f8eac ds: 007b es: 007b ss: 0068 Process bash (pid: 3125, threadinfo=ed7f8000 task=f7da5ab0) Stack: c1000000 c01387b7 c1000000 00000000 00000001 08400000 ede5c080 f717a9dc c03664cc 00000000 ffffffff f717aa2c ede5c080 00002ffe 0b2e9000 00000000 ed7f8f1c f51bd698 f717a9dc f7da5ab0 c013aeb4 ed7f8f1c f51bdf94 00000000 Call Trace: <c01387b7> unmap_vmas+0x253/0x44f <c013aeb4> exit_mmap+0x5a/0xe1 <c0112e10> mmput+0x20/0x78 <c011618d> exit_mm+0x101/0x107 <c0117582> do_exit+0x187/0x76b <c0115762> printk+0x14/0x18 <c0110407> do_page_fault+0x4ca/0x54a <c010ff3d> do_page_fault+0x0/0x54a <c0103723> error_code+0x4f/0x54 Code: c4 40 74 03 8b 53 0c 8b 42 04 50 68 69 3d 2b c0 e8 85 7c fd ff ff 73 10 68 80 3d 2b c0 e8 78 7c fd ff 83 c4 10 8b 43 08 40 79 08 <0f> 0b 30 02 15 3d 2b c0 6a ff 6a 10 e8 e0 43 ff ff 59 5b 5b c3 EIP: [<c013dadf>] page_remove_rmap+0x64/0x79 SS:ESP 0068:ed7f8eac <3>BUG: sleeping function called from invalid context at include/linux/rwsem.h:43 in_atomic():1, irqs_disabled():0 <c011f7b0> blocking_notifier_call_chain+0x11/0x41 <c0115ede> profile_task_exit+0x10/0x14 <c0117416> do_exit+0x1b/0x76b <c0103f6d> die+0x1a4/0x25f <c0104002> die+0x239/0x25f <c01047a6> do_invalid_op+0x0/0x9e <c0104838> do_invalid_op+0x92/0x9e <c013dadf> page_remove_rmap+0x64/0x79 <c0115733> vprintk+0x2cc/0x2e7 <c0115733> vprintk+0x2cc/0x2e7 <c010365a> common_interrupt+0x1a/0x20 <c011151f> try_to_wake_up+0xfd/0x108 <c012480f> autoremove_wake_function+0x18/0x3a <c0103723> error_code+0x4f/0x54 <c013dadf> page_remove_rmap+0x64/0x79 <c01387b7> unmap_vmas+0x253/0x44f <c013aeb4> exit_mmap+0x5a/0xe1 <c0112e10> mmput+0x20/0x78 <c011618d> exit_mm+0x101/0x107 <c0117582> do_exit+0x187/0x76b <c0115762> printk+0x14/0x18 <c0110407> do_page_fault+0x4ca/0x54a <c010ff3d> do_page_fault+0x0/0x54a <c0103723> error_code+0x4f/0x54 Fixing recursive fault but reboot is needed! BUG: scheduling while atomic: bash/0x00000002/3125 <c029ba89> schedule+0x43/0x5aa <c0104160> dump_stack+0x14/0x18 <c0115762> printk+0x14/0x18 <c01174c9> do_exit+0xce/0x76b <c0103f6d> die+0x1a4/0x25f <c0104002> die+0x239/0x25f <c01047a6> do_invalid_op+0x0/0x9e <c0104838> do_invalid_op+0x92/0x9e <c013dadf> page_remove_rmap+0x64/0x79 <c0115733> vprintk+0x2cc/0x2e7 <c0115733> vprintk+0x2cc/0x2e7 <c010365a> common_interrupt+0x1a/0x20 <c011151f> try_to_wake_up+0xfd/0x108 <c012480f> autoremove_wake_function+0x18/0x3a <c0103723> error_code+0x4f/0x54 <c013dadf> page_remove_rmap+0x64/0x79 <c01387b7> unmap_vmas+0x253/0x44f <c013aeb4> exit_mmap+0x5a/0xe1 <c0112e10> mmput+0x20/0x78 <c011618d> exit_mm+0x101/0x107 <c0117582> do_exit+0x187/0x76b <c0115762> printk+0x14/0x18 <c0110407> do_page_fault+0x4ca/0x54a <c010ff3d> do_page_fault+0x0/0x54a <c0103723> error_code+0x4f/0x54 our fs (LFS) report ------------------- ------------[ cut here ]------------ kernel BUG at mm/rmap.c:71! invalid opcode: 0000 [#1] PREEMPT DEBUG_PAGEALLOC Modules linked in: lfs netconsole snd_mixer_oss 8139cp snd_via82xx snd_ac97_codec snd_ac97_bus snd_pcm snd_timer snd_page_alloc snd_mpu401_uart snd_rawmidi snd_seq_device snd soundcore ehci_hcd usbcore 8139too mii fan thermal processor rt2500 rtc unix CPU: 0 EIP: 0060:[<c013f4d1>] Not tainted VLI EFLAGS: 00010202 (2.6.17.4 #11) EIP is at anon_vma_link+0x59/0xa3 eax: f77ca29c ebx: f6675478 ecx: f6365954 edx: f636598c esi: f77ca28c edi: 000186a1 ebp: f7143ea0 esp: f7143e8c ds: 007b es: 007b ss: 0068 Process bash (pid: 2994, threadinfo=f7143000 task=f7a12ac0) Stack: 00000001 f77ca28c f6302b48 00000002 f76c20bc f7143f38 c0113ea2 f6302b48 f6302b48 f76c20bc 00000058 f7143fbc bfd3e6fc 01200011 00000000 fffffff4 f494fac0 f7143000 f494fac0 ecf5ae18 f6302c80 f6302c94 f6302c8c f70f1e18 Call Trace: [<c0103c7f>] show_stack_log_lvl+0x85/0x8f [<c0103e09>] show_registers+0x14b/0x1bf [<c0103fe2>] die+0x165/0x266 [<c010415d>] do_trap+0x7a/0x98 [<c01048a4>] do_invalid_op+0x8a/0x94 [<c010379f>] error_code+0x4f/0x54 [<c0113ea2>] copy_process+0xa8e/0x1188 [<c01147cd>] do_fork+0x94/0x196 [<c01012d0>] sys_clone+0x21/0x23 [<c0102d0b>] syscall_call+0x7/0xb Code: 04 8b 5d 08 89 48 04 89 53 38 89 46 10 8b 43 40 89 45 f0 8b 48 10 c7 45 ec 00 00 00 00 83 e9 38 eb 23 47 81 ff a0 86 01 00 76 08 <0f> 0b 47 00 ca 7d 2b c0 3b 4d 08 b8 01 00 00 00 8d 4b c8 0f 45 EIP: [<c013f4d1>] anon_vma_link+0x59/0xa3 SS:ESP 0068:f7143e8c <3>BUG: sleeping function called from invalid context at include/linux/rwsem.h:43 in_atomic():1, irqs_disabled():0 [<c0103cbc>] show_trace+0x13/0x15 [<c01041bc>] dump_stack+0x18/0x1c [<c0111950>] __might_sleep+0x87/0x8f [<c0120016>] blocking_notifier_call_chain+0x13/0x42 [<c011654e>] profile_task_exit+0x12/0x17 [<c0117adc>] do_exit+0x1b/0x76b [<c01040bc>] die+0x23f/0x266 [<c010415d>] do_trap+0x7a/0x98 [<c01048a4>] do_invalid_op+0x8a/0x94 [<c010379f>] error_code+0x4f/0x54 [<c0113ea2>] copy_process+0xa8e/0x1188 [<c01147cd>] do_fork+0x94/0x196 [<c01012d0>] sys_clone+0x21/0x23 [<c0102d0b>] syscall_call+0x7/0xb note: bash[2994] exited with preempt_count 1 BUG: scheduling while atomic: bash/0x00000001/2994 [<c0103cbc>] show_trace+0x13/0x15 [<c01041bc>] dump_stack+0x18/0x1c [<c029ff0d>] schedule+0x43/0x5aa [<c02a1bd2>] rwsem_down_read_failed+0x138/0x156 [<c011863c>] .text.lock.exit+0x7/0x67 [<c0117c48>] do_exit+0x187/0x76b [<c01040bc>] die+0x23f/0x266 [<c010415d>] do_trap+0x7a/0x98 [<c01048a4>] do_invalid_op+0x8a/0x94 [<c010379f>] error_code+0x4f/0x54 [<c0113ea2>] copy_process+0xa8e/0x1188 [<c01147cd>] do_fork+0x94/0x196 [<c01012d0>] sys_clone+0x21/0x23 [<c0102d0b>] syscall_call+0x7/0xb - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html