On Mon, 3 Mar 2008 09:36:20 -0800 "Adam J. Richter" <adam@xxxxxxxxxxxxx> wrote: > Hi David, > > romfs_lookup worked in 2.6.24.2, but always fails in > linux-2.6.25-rc3-git3. fs/romfs/inode.c is the same in at least > 2.6.25-rc3 through 2.6.25-rc3-git4 and the latest sources from git, so > these versions almost certainly have the same problem. > > The bug appears to be from a well meaning but botched attempt > to eliminate a goto from romfs_lookup. Previously, a goto statement > was used to skip over "inode = NULL;" when the lookup succeeded. In > the 2.6.25-rc3 version, inode is set to NULL even when an inode was > found, so the result is the the lookup always appears to fail. > > The attached patch fixes the problem while still eliminating > the goto. The patch adds one line and replaces one line. It only > looks big because I've set the number of context lines to 10 for > better readability. I have tested it in on a romfs initial ramdisk > which on which I had experienced the problem. > > If this patch looks OK to you, can you please submit it > upstream? Thanks. > P.S. romfs_lookup casts a valid pointer to an int and then back again > with res = PTR_ERR(inode);...return ERR_PTR(res). This may break on > arhictectures where sizeof(int) < sizeof(pointer). If I want to submit > a subsequent fix for this, are you the person I should the patch to? I can take care of it. Please remember the signed-off-by: red tape. -- 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