Message ID | 515EDA2D.10306@inktank.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Reviewed-by: Josh Durgin <josh.durgin@inktank.com> On 04/05/2013 07:05 AM, Alex Elder wrote: > All calls of ceph_osdc_start_request() are preceded (in the case of > rbd, almost) immediately by a call to ceph_osdc_build_request(). > > Move the build calls at the top of ceph_osdc_start_request() out of > there and into the ceph_osdc_build_request(). Nothing prevents > moving these calls to the top of ceph_osdc_build_request(), either > (and we're going to want them there in the next patch) so put them > at the top. > > This and the next patch are related to: > http://tracker.ceph.com/issues/4657 > > Signed-off-by: Alex Elder <elder@inktank.com> > --- > net/ceph/osd_client.c | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/net/ceph/osd_client.c b/net/ceph/osd_client.c > index f80984e..40466ab 100644 > --- a/net/ceph/osd_client.c > +++ b/net/ceph/osd_client.c > @@ -1884,6 +1884,11 @@ void ceph_osdc_build_request(struct > ceph_osd_request *req, u64 off, > u64 data_len; > unsigned int i; > > + /* Set up response incoming data and request outgoing data fields */ > + > + ceph_osdc_msg_data_set(req->r_reply, &req->r_data_in); > + ceph_osdc_msg_data_set(req->r_request, &req->r_data_out); > + > req->r_snapid = snap_id; > req->r_snapc = ceph_get_snap_context(snapc); > > @@ -1976,11 +1981,6 @@ int ceph_osdc_start_request(struct > ceph_osd_client *osdc, > { > int rc = 0; > > - /* Set up response incoming data and request outgoing data fields */ > - > - ceph_osdc_msg_data_set(req->r_reply, &req->r_data_in); > - ceph_osdc_msg_data_set(req->r_request, &req->r_data_out); > - > down_read(&osdc->map_sem); > mutex_lock(&osdc->request_mutex); > __register_request(osdc, req); > -- 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 f80984e..40466ab 100644 --- a/net/ceph/osd_client.c +++ b/net/ceph/osd_client.c @@ -1884,6 +1884,11 @@ void ceph_osdc_build_request(struct ceph_osd_request *req, u64 off, u64 data_len; unsigned int i; + /* Set up response incoming data and request outgoing data fields */ + + ceph_osdc_msg_data_set(req->r_reply, &req->r_data_in); + ceph_osdc_msg_data_set(req->r_request, &req->r_data_out); + req->r_snapid = snap_id; req->r_snapc = ceph_get_snap_context(snapc);
All calls of ceph_osdc_start_request() are preceded (in the case of rbd, almost) immediately by a call to ceph_osdc_build_request(). Move the build calls at the top of ceph_osdc_start_request() out of there and into the ceph_osdc_build_request(). Nothing prevents moving these calls to the top of ceph_osdc_build_request(), either (and we're going to want them there in the next patch) so put them at the top. This and the next patch are related to: http://tracker.ceph.com/issues/4657 Signed-off-by: Alex Elder <elder@inktank.com> --- net/ceph/osd_client.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) @@ -1976,11 +1981,6 @@ int ceph_osdc_start_request(struct ceph_osd_client *osdc, { int rc = 0; - /* Set up response incoming data and request outgoing data fields */ - - ceph_osdc_msg_data_set(req->r_reply, &req->r_data_in); - ceph_osdc_msg_data_set(req->r_request, &req->r_data_out); - down_read(&osdc->map_sem); mutex_lock(&osdc->request_mutex); __register_request(osdc, req);