diff --git a/[refs] b/[refs] index d6d9e9b3ce41..4916ff437d21 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ec6a0a41b57feb54b3830918a8fb07147c2ee778 +refs/heads/master: c4df46c49d8677158c7fb070a08e0d386c80205f diff --git a/trunk/drivers/scsi/osd/osd_initiator.c b/trunk/drivers/scsi/osd/osd_initiator.c index 771ab121acc7..acbdcb670ac5 100644 --- a/trunk/drivers/scsi/osd/osd_initiator.c +++ b/trunk/drivers/scsi/osd/osd_initiator.c @@ -452,10 +452,6 @@ void osd_end_request(struct osd_request *or) { struct request *rq = or->request; - _osd_free_seg(or, &or->set_attr); - _osd_free_seg(or, &or->enc_get_attr); - _osd_free_seg(or, &or->get_attr); - if (rq) { if (rq->next_rq) { _put_request(rq->next_rq); @@ -464,6 +460,11 @@ void osd_end_request(struct osd_request *or) _put_request(rq); } + + _osd_free_seg(or, &or->get_attr); + _osd_free_seg(or, &or->enc_get_attr); + _osd_free_seg(or, &or->set_attr); + _osd_request_free(or); } EXPORT_SYMBOL(osd_end_request);