Applied, thanks! sage On Thu, 26 Aug 2010, Dan Carpenter wrote: > get_ticket_handler() returns a valid pointer or it returns > ERR_PTR(-ENOMEM) if kzalloc() fails. > > Signed-off-by: Dan Carpenter <error27@xxxxxxxxx> > > diff --git a/fs/ceph/auth_x.c b/fs/ceph/auth_x.c > index 582e0b2..a2d002c 100644 > --- a/fs/ceph/auth_x.c > +++ b/fs/ceph/auth_x.c > @@ -376,7 +376,7 @@ static void ceph_x_validate_tickets(struct ceph_auth_client *ac, int *pneed) > > th = get_ticket_handler(ac, service); > > - if (!th) { > + if (IS_ERR(th)) { > *pneed |= service; > continue; > } > @@ -399,6 +399,9 @@ static int ceph_x_build_request(struct ceph_auth_client *ac, > struct ceph_x_ticket_handler *th = > get_ticket_handler(ac, CEPH_ENTITY_TYPE_AUTH); > > + if (IS_ERR(th)) > + return PTR_ERR(th); > + > ceph_x_validate_tickets(ac, &need); > > dout("build_request want %x have %x need %x\n", > @@ -450,7 +453,6 @@ static int ceph_x_build_request(struct ceph_auth_client *ac, > return -ERANGE; > head->op = cpu_to_le16(CEPHX_GET_PRINCIPAL_SESSION_KEY); > > - BUG_ON(!th); > ret = ceph_x_build_authorizer(ac, th, &xi->auth_authorizer); > if (ret) > return ret; > @@ -505,7 +507,8 @@ static int ceph_x_handle_reply(struct ceph_auth_client *ac, int result, > > case CEPHX_GET_PRINCIPAL_SESSION_KEY: > th = get_ticket_handler(ac, CEPH_ENTITY_TYPE_AUTH); > - BUG_ON(!th); > + if (IS_ERR(th)) > + return PTR_ERR(th); > ret = ceph_x_proc_ticket_reply(ac, &th->session_key, > buf + sizeof(*head), end); > break; > @@ -563,8 +566,8 @@ static int ceph_x_verify_authorizer_reply(struct ceph_auth_client *ac, > void *end = p + sizeof(au->reply_buf); > > th = get_ticket_handler(ac, au->service); > - if (!th) > - return -EIO; /* hrm! */ > + if (IS_ERR(th)) > + return PTR_ERR(th); > ret = ceph_x_decrypt(&th->session_key, &p, end, &reply, sizeof(reply)); > if (ret < 0) > return ret; > @@ -626,7 +629,7 @@ static void ceph_x_invalidate_authorizer(struct ceph_auth_client *ac, > struct ceph_x_ticket_handler *th; > > th = get_ticket_handler(ac, peer_type); > - if (th && !IS_ERR(th)) > + if (!IS_ERR(th)) > remove_ticket_handler(ac, th); > } > > -- > 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 > > -- To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html