Message ID | 1424266050-40892-1-git-send-email-idryomov@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Feb 18, 2015 at 4:27 PM, Ilya Dryomov <idryomov@gmail.com> wrote: > a255651d4cad ("ceph: ensure auth ops are defined before use") made > kfree() in put_osd() conditional on the authorizer. A mechanical > mistake most likely - fix it. > > Cc: Alex Elder <elder@linaro.org> > Signed-off-by: Ilya Dryomov <idryomov@gmail.com> > --- > net/ceph/osd_client.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/net/ceph/osd_client.c b/net/ceph/osd_client.c > index f693a2f8ac86..41a4abc7e98e 100644 > --- a/net/ceph/osd_client.c > +++ b/net/ceph/osd_client.c > @@ -1035,10 +1035,11 @@ static void put_osd(struct ceph_osd *osd) > { > dout("put_osd %p %d -> %d\n", osd, atomic_read(&osd->o_ref), > atomic_read(&osd->o_ref) - 1); > - if (atomic_dec_and_test(&osd->o_ref) && osd->o_auth.authorizer) { > + if (atomic_dec_and_test(&osd->o_ref)) { > struct ceph_auth_client *ac = osd->o_osdc->client->monc.auth; > > - ceph_auth_destroy_authorizer(ac, osd->o_auth.authorizer); > + if (osd->o_auth.authorizer) > + ceph_auth_destroy_authorizer(ac, osd->o_auth.authorizer); > kfree(osd); > } > } Sorry, this is a dup - ignore it. Thanks, Ilya -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/net/ceph/osd_client.c b/net/ceph/osd_client.c index f693a2f8ac86..41a4abc7e98e 100644 --- a/net/ceph/osd_client.c +++ b/net/ceph/osd_client.c @@ -1035,10 +1035,11 @@ static void put_osd(struct ceph_osd *osd) { dout("put_osd %p %d -> %d\n", osd, atomic_read(&osd->o_ref), atomic_read(&osd->o_ref) - 1); - if (atomic_dec_and_test(&osd->o_ref) && osd->o_auth.authorizer) { + if (atomic_dec_and_test(&osd->o_ref)) { struct ceph_auth_client *ac = osd->o_osdc->client->monc.auth; - ceph_auth_destroy_authorizer(ac, osd->o_auth.authorizer); + if (osd->o_auth.authorizer) + ceph_auth_destroy_authorizer(ac, osd->o_auth.authorizer); kfree(osd); } }
a255651d4cad ("ceph: ensure auth ops are defined before use") made kfree() in put_osd() conditional on the authorizer. A mechanical mistake most likely - fix it. Cc: Alex Elder <elder@linaro.org> Signed-off-by: Ilya Dryomov <idryomov@gmail.com> --- net/ceph/osd_client.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)