Opened 9 years ago

Closed 9 years ago

#7084 closed bug (fixed)

[ext4] doesn't show cyrillic filenames

Reported by: diver Owned by: korli
Priority: normal Milestone: R1
Component: File Systems/ext2 Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

This is hrev40183, gcc4hybrid.

Tracker doesn't show folders (probably files too) with cyrillic filenames.

~> cd /Ubuntu/home/diver
/Ubuntu/home/diver> ls
ls: cannot access Рабочий стол: No such file or directory
ls: cannot access Снимки: No such file or directory
ls: cannot access Видео: No such file or directory
[skipped]

It's localized folder names for Desktop, Pictures and Video.

Attachments (4)

ext4_log (367.6 KB ) - added by diver 9 years ago.
ext2 (166.6 KB ) - added by korli 9 years ago.
debug gcc4 filesystem
home.dump (8.0 KB ) - added by diver 9 years ago.
dd if=/dev/disk/ata/0/master/0 of=home.dump skip=62926728 bs=4k count=2
syslog (365.2 KB ) - added by diver 9 years ago.

Download all attachments as: .zip

Change History (15)

comment:1 by korli, 9 years ago

Unfortunately, I tried such filenames and it works nice. I supposed there is no syslog output related?

comment:2 by diver, 9 years ago

Nope :(

comment:3 by korli, 9 years ago

Please try this debug version and provide a syslog.

by diver, 9 years ago

Attachment: ext4_log added

comment:4 by diver, 9 years ago

Strange but after replacing ext2 with debug version and mounting of ext4 partition I didn't get anything in syslog. I had to reboot for this to happen. Tracker opened this folder automatically right after boot and ext2 populated syslog, but nor ls in that directory not reopening it in Tracker didn't add anything to syslog. There's something something fishy about that.

in reply to:  4 comment:5 by anevilyak, 9 years ago

Replying to diver:

Strange but after replacing ext2 with debug version and mounting of ext4 partition I didn't get anything in syslog. I had to reboot for this to happen. Tracker opened this folder automatically right after boot and ext2 populated syslog, but nor ls in that directory not reopening it in Tracker didn't add anything to syslog. There's something something fishy about that.

Did you have any other ext partitions mounted? Kernel add-ons are reference counted and as such won't be unloaded until they're no longer in use. Ergo, the new one won't start to be used until all previous ext partitions have been fully unmounted and the old fs addon unloaded.

comment:6 by diver, 9 years ago

No, I moved existing ext2 file to ~/ and then dropped debug version from Desktop to the correct folder. Only after that I mounted ext4 partition for the first time in that session.

by korli, 9 years ago

Attachment: ext2 added

debug gcc4 filesystem

comment:7 by korli, 9 years ago

I replaced the ext2 attachment.

Please also dump the directory blocks this way (if your blocksize is still 4k)

dd if=/path/to/your/disk of=home.dump skip=62926728 bs=4k count=2 

Thanks.

by diver, 9 years ago

Attachment: home.dump added

dd if=/dev/disk/ata/0/master/0 of=home.dump skip=62926728 bs=4k count=2

comment:8 by diver, 9 years ago

@anevilyak I got it. I've been using tail -f /var/log/syslog and then emptied syslog with echo -n > /var/log/syslog.
I should have been using tail -F /var/log/syslog

by diver, 9 years ago

Attachment: syslog added

comment:9 by korli, 9 years ago

Hash values could be the root problem: the code tries to find an entry in a wrong block due to hash bad computation.

Please try again with hrev40202. Thanks

comment:10 by diver, 9 years ago

Great, it works! Thanks!

comment:11 by korli, 9 years ago

Resolution: fixed
Status: newclosed

Cool!

Note: See TracTickets for help on using tickets.