http://oss.sgi.com/bugzilla/show_bug.cgi?id=845
--- Comment #6 from Roel van Meer <rolek@xxxxxxxxxx> 2009-08-12 06:52:55 CST
---
(In reply to comment #5)
> However, I'd like to know which name didn't hash right, if you could patch it
> and run something like (pseudopatch) (assuming my C string manipulation-fu
> isn't too weak) and run it w/o "-o" we can see which name didn't hash right:
It says (I added quotes around the %s in your patch):
obfuscated name failed hash for '/47272060'
Meanwhile, xfs_repair produces (in phase 3):
entry "/472720600" at block 0 offset 48 in directory inode 2153341945
references invalid inode 18374686479671623679
clearing inode number in entry at offset 48...
entry at block 0 offset 48 in directory inode 2153341945 has illegal name
"/472720600": clearing entry
(Btw, the last "clearing entry" is produced by the patch attached to this bug).
There seems to be a discrepancy in how xfs_db and xfs_repair see this entry?
/47272060 vs
/472720600
If you need more testing done, please let me know. I usually have a few hours
during the daytime (CET) when I can take the system offline..
Regards,
roel
> + if (libxfs_da_hashname(newname, namelen) != hash) {
> + char namebuf[NAME_MAX];
> +
> + snprintf(namebuf, namelen, name);
> + namebuf[namelen] = "\0";
> + printf("obfuscated name failed hash for '%s'\n",
> namebuf);
> + }
> ASSERT(libxfs_da_hashname(newname, namelen) == hash);
--
Configure bugmail: http://oss.sgi.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
|