On 02/18/2015 07:27 AM, Ilya Dryomov 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. You are generous in suggesting it's a mechanical mistake. But it is a mistake nevertheless. The fix looks good. Reviewed-by: Alex Elder <elder@xxxxxxxxxx> > Cc: Alex Elder <elder@xxxxxxxxxx> > Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx> > --- > 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); > } > } > -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html