]> git.baikalelectronics.ru Git - kernel.git/commit
ceph: fix error handling in ceph_atomic_open and ceph_lookup
authorJeff Layton <jlayton@kernel.org>
Wed, 2 Jun 2021 16:46:07 +0000 (12:46 -0400)
committerIlya Dryomov <idryomov@gmail.com>
Tue, 22 Jun 2021 11:53:28 +0000 (13:53 +0200)
commit119fac65705150af9c141d64e10231c5418526f1
treedf30eb87a1fcd07e2ddae903ce7617cee17766d1
parent187aca2a5864d5b444231205db0e141fcbeb38bb
ceph: fix error handling in ceph_atomic_open and ceph_lookup

Commit e8961c80c68b broke the error handling in these functions such
that they don't handle non-ENOENT errors from ceph_mdsc_do_request
properly.

Move the checking of -ENOENT out of ceph_handle_snapdir and into the
callers, and if we get a different error, return it immediately.

Fixes: e8961c80c68b ("ceph: don't use d_add in ceph_handle_snapdir")
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
fs/ceph/dir.c
fs/ceph/file.c
fs/ceph/super.h