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 Changed 9 years ago by korli

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

comment:2 Changed 9 years ago by diver

Nope :(

comment:3 Changed 9 years ago by korli

Please try this debug version and provide a syslog.

Changed 9 years ago by diver

Attachment: ext4_log added

comment:4 Changed 9 years ago by 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.

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

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 Changed 9 years ago by diver

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.

Changed 9 years ago by korli

Attachment: ext2 added

debug gcc4 filesystem

comment:7 Changed 9 years ago by korli

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.

Changed 9 years ago by diver

Attachment: home.dump added

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

comment:8 Changed 9 years ago by diver

@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

Changed 9 years ago by diver

Attachment: syslog added

comment:9 Changed 9 years ago by korli

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 Changed 9 years ago by diver

Great, it works! Thanks!

comment:11 Changed 9 years ago by korli

Resolution: fixed
Status: newclosed

Cool!

Note: See TracTickets for help on using tickets.