ceph: fix st_nlink stat for directories
authorLuis Henriques <lhenriques@suse.com>
Mon, 21 May 2018 09:27:29 +0000 (10:27 +0100)
committerIlya Dryomov <idryomov@gmail.com>
Mon, 4 Jun 2018 18:45:56 +0000 (20:45 +0200)
commit8c6286f1c69743ebdb2ee15f9165f9c4d44eef49
tree12d125d8946dbdbb57ad41847d397ebe00d0a0c6
parent597817ddbbf27af5986d1f3df20390b2738411c6
ceph: fix st_nlink stat for directories

Currently, calling stat on a cephfs directory returns 1 for st_nlink.
This behaviour has recently changed in the fuse client, as some
applications seem to expect this value to be either 0 (if it's
unlinked) or 2 + number of subdirectories.  This behaviour was changed
in the fuse client with commit 67c7e4619188 ("client: use common
interp of st_nlink for dirs").

This patch modifies the kernel client to have a similar behaviour.

Link: https://tracker.ceph.com/issues/23873
Signed-off-by: Luis Henriques <lhenriques@suse.com>
Reviewed-by: "Yan, Zheng" <zyan@redhat.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
fs/ceph/inode.c