ls/nautilus hangs due to bug in ext3 module

Bug #129592 reported by Rocko
4
Affects Status Importance Assigned to Milestone
Ubuntu
Invalid
Undecided
Unassigned

Bug Description

Nautilus froze (all windows) when trying to get a listing of a directory on my ext3 drive.

In a command terminal, 'ls' on this folder also froze.

Afterwards, I could not unmount the drive, and had to reboot to fix the problem (restarting X didn't help).

The syslog is:

[ 366.992000] Assertion failure in dx_probe() at fs/ext3/namei.c:384: "dx_get_limit(entries) == dx_root_limit(dir, root->info.info_length)"
[ 366.992000] ------------[ cut here ]------------
[ 366.992000] kernel BUG at fs/ext3/namei.c:384!
[ 366.992000] invalid opcode: 0000 [#1]
[ 366.992000] SMP
[ 366.992000] Modules linked in: nls_iso8859_1 nls_cp437 vfat fat binfmt_misc rfcomm l2cap bluetooth ppdev fglrx(P) speedstep_centrino cpufreq_stats cpufreq_powersave cpufreq_conservative cpufreq_userspace cpufreq_ondemand freq_table tc1100_wmi sony_acpi dev_acpi pcc_acpi video battery sbs i2c_ec i2c_core container button ac asus_acpi backlight dock sbp2 lp fuse joydev snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss ipw2200 snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid serio_raw ieee80211 parport_pc pcmcia hid pcspkr psmouse snd soundcore snd_page_alloc parport iTCO_wdt iTCO_vendor_support ieee80211_crypt yenta_socket rsrc_nonstatic pcmcia_core intel_agp agpgart af_packet shpchp pci_hotplug evdev tsdev usb_storage ext3 jbd mbcache libusual sg sr_mod cdrom sd_mod generic ata_piix ohci1394 ieee1394 b44 mii ata_generic libata scsi_mod ehci_hcd uhci_hcd usbcore thermal processor fan fbcon tileblit font bitblit softcursor vesafb capability commoncap
[ 366.992000] CPU: 0
[ 366.992000] EIP: 0060:[<f89f3b51>] Tainted: P VLI
[ 366.992000] EFLAGS: 00010286 (2.6.20-16-generic #2)
[ 366.992000] EIP is at dx_probe+0x1e1/0x320 [ext3]
[ 366.992000] eax: 00000090 ebx: d420c000 ecx: 00000082 edx: 00000000
[ 366.992000] esi: d420c018 edi: d41f08d0 ebp: d714ba48 esp: d7eade40
[ 366.992000] ds: 007b es: 007b ss: 0068
[ 366.992000] Process updatedb (pid: 6216, ti=d7eac000 task=ed83ea90 task.ti=d7eac000)
[ 366.992000] Stack: f89fff28 f89ff26b f8a01d6d 00000180 f8a00078 d7eadea8 00000000 00000008
[ 366.992000] 00000000 ed89aa20 00000000 00000000 d714ba48 f89f4edd d7eade90 d7eadebc
[ 366.992000] f32313c0 00000000 00000000 d7589540 00000000 00000004 d7eadf30 c017de3a
[ 366.992000] Call Trace:
[ 366.992000] [<f89f4edd>] ext3_htree_fill_tree+0xad/0x200 [ext3]
[ 366.992000] [<c017de3a>] generic_permission+0x5a/0x110
[ 366.992000] [<f89fe610>] ext3_permission+0x0/0x10 [ext3]
[ 366.992000] [<f89ed062>] ext3_readdir+0x112/0x640 [ext3]
[ 366.992000] [<c01f20a9>] copy_to_user+0x29/0x50
[ 366.992000] [<c0179819>] cp_new_stat64+0xf9/0x110
[ 366.992000] [<c0182a40>] filldir64+0x0/0xe0
[ 366.992000] [<c0179f0e>] sys_fstat64+0x1e/0x30
[ 366.992000] [<c0182a40>] filldir64+0x0/0xe0
[ 366.992000] [<c0182c94>] vfs_readdir+0x94/0xb0
[ 366.992000] [<c0182d1f>] sys_getdents64+0x6f/0xc0
[ 366.992000] [<c01031f0>] sysenter_past_esp+0x69/0xa9
[ 366.992000] =======================
[ 366.992000] Code: 44 24 10 78 00 a0 f8 c7 44 24 0c 80 01 00 00 c7 44 24 08 6d 1d a0 f8 c7 44 24 04 6b f2 9f f8 c7 04 24 28 ff 9f f8 e8 bf 30 73 c7 <0f> 0b eb fe 89 44 24 0c c7 44 24 08 50 00 a0 f8 c7 44 24 04 6b
[ 366.992000] EIP: [<f89f3b51>] dx_probe+0x1e1/0x320 [ext3] SS:ESP 0068:d7eade40
[ 366.992000] <6>tun: Universal TUN/TAP device driver, 1.6

Fixing some problems with the ext3 FS stopped it happening again:

fsck 1.40-WIP (14-Nov-2006)
W: HTREE directory inode 11682482 has an invalid root node.
HTREE INDEX CLEARED.
W: HTREE directory inode 11682517 has an invalid root node.
HTREE INDEX CLEARED.
W: HTREE directory inode 11714563 has an invalid root node.
HTREE INDEX CLEARED.
W: 66231/14729216 files (1.9% non-contiguous), 14795102/29441120 blocks

Revision history for this message
Brian Murray (brian-murray) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. You reported this bug a while ago and there hasn't been any activity in recently. We were wondering if this is still an issue for you? Thanks in advance.

Revision history for this message
Rocko (rockorequin) wrote :

No, I haven't seen it since I did ran that fsck command on that partition, so it has not been an issue for me since.

I only reported it because (a) it was fairly unfriendly (particularly if it occurred for a new user), and (b) it showed that the ext3 driver (I presume) could crash if the ext3 disk structure was invalid, upon which basic commands like ls or gnomevfs-ls would 'freeze'. I'll bet it's hard to reproduce, though!

Revision history for this message
Manuel Parra (manuparra) wrote :

Well i have the same problem. I solve it deleteing some files, (/home/myfolder/), for example some .pngs, divx, etc, then I start nautilus on home location and it works fine!

I don' t know what is the problem, but i solve it doing this.

Revision history for this message
Andrew Ash (ash211) wrote :

It sounds like these are more issues of a corrupt filesystem than an issue in ext3 itself, so I'm going to close the bug. Please reopen if it's still an issue.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.