On 04/08/2015 08:14 PM, Zefan Li wrote: > On 2015/3/24 5:06, Dave Kleikamp wrote: >> Upstream commit 44512449, "jfs: fix readdir cookie incompatibility >> with NFSv4", was backported incorrectly into the stable trees which >> used the filldir callback (rather than dir_emit). The position is >> being incorrectly passed to filldir for the . and .. entries. >> >> The still-maintained stable trees that need to be fixed are 3.2.y, >> 3.4.y and 3.10.y. >> >> https://bugzilla.kernel.org/show_bug.cgi?id=94741 >> >> Signed-off-by: Dave Kleikamp <dave.kleikamp@xxxxxxxxxx> >> Cc: jfs-discussion@xxxxxxxxxxxxxxxxxxxxx >> Cc: stable@xxxxxxxxxxxxxxx > > So upstream kernel is free from this bug, right? Then I'll queue it up > for 3.4. Yes. The error was introduced in porting the correct mainline patch to the stable trees. Thanks, Dave > >> --- >> fs/jfs/jfs_dtree.c | 4 ++-- >> 1 files changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/fs/jfs/jfs_dtree.c b/fs/jfs/jfs_dtree.c >> index 9f7c758..f6f32fa 100644 >> --- a/fs/jfs/jfs_dtree.c >> +++ b/fs/jfs/jfs_dtree.c >> @@ -3103,7 +3103,7 @@ int jfs_readdir(struct file *filp, void *dirent, filldir_t filldir) >> * self "." >> */ >> filp->f_pos = 1; >> - if (filldir(dirent, ".", 1, 0, ip->i_ino, >> + if (filldir(dirent, ".", 1, 1, ip->i_ino, >> DT_DIR)) >> return 0; >> } >> @@ -3111,7 +3111,7 @@ int jfs_readdir(struct file *filp, void *dirent, filldir_t filldir) >> * parent ".." >> */ >> filp->f_pos = 2; >> - if (filldir(dirent, "..", 2, 1, PARENT(ip), DT_DIR)) >> + if (filldir(dirent, "..", 2, 2, PARENT(ip), DT_DIR)) >> return 0; >> >> /* >> > -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html