summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuis Henriques <lhenriques@suse.com>2019-07-19 15:32:19 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-09-10 10:31:03 +0100
commit05700fe421866f60f63fbb3a02852425a9bd9447 (patch)
tree6a4e9f09146d3df204008b11e3085b2a9f39aa0d
parentb62d9297953f679747172465012daca87bee3f51 (diff)
downloadlinux-stable-05700fe421866f60f63fbb3a02852425a9bd9447.tar.gz
linux-stable-05700fe421866f60f63fbb3a02852425a9bd9447.tar.bz2
linux-stable-05700fe421866f60f63fbb3a02852425a9bd9447.zip
libceph: allow ceph_buffer_put() to receive a NULL ceph_buffer
[ Upstream commit 5c498950f730aa17c5f8a2cdcb903524e4002ed2 ] Signed-off-by: Luis Henriques <lhenriques@suse.com> Reviewed-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Ilya Dryomov <idryomov@gmail.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--include/linux/ceph/buffer.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/ceph/buffer.h b/include/linux/ceph/buffer.h
index 07ca15e76100..dada47a4360f 100644
--- a/include/linux/ceph/buffer.h
+++ b/include/linux/ceph/buffer.h
@@ -29,7 +29,8 @@ static inline struct ceph_buffer *ceph_buffer_get(struct ceph_buffer *b)
static inline void ceph_buffer_put(struct ceph_buffer *b)
{
- kref_put(&b->kref, ceph_buffer_release);
+ if (b)
+ kref_put(&b->kref, ceph_buffer_release);
}
extern int ceph_decode_buffer(struct ceph_buffer **b, void **p, void *end);