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:32:19 +0100
commit2aeaba9025b5a31afd206ccc03e201897b68a70c (patch)
tree73dba5e599b76afaf9599359523e0d973b26ed5c
parent9fb47e7dea94f880cff79c8602fe96aef2286ac6 (diff)
downloadlinux-stable-2aeaba9025b5a31afd206ccc03e201897b68a70c.tar.gz
linux-stable-2aeaba9025b5a31afd206ccc03e201897b68a70c.tar.bz2
linux-stable-2aeaba9025b5a31afd206ccc03e201897b68a70c.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 5e58bb29b1a3..11cdc7c60480 100644
--- a/include/linux/ceph/buffer.h
+++ b/include/linux/ceph/buffer.h
@@ -30,7 +30,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);