* [PATCH 0/4] rbd: drop some unnecessary function parameters
@ 2012-11-10 3:41 Alex Elder
2012-11-10 3:43 ` [PATCH 1/4] rbd: drop oid parameters from ceph_osdc_build_request() Alex Elder
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Alex Elder @ 2012-11-10 3:41 UTC (permalink / raw)
To: ceph-devel@vger.kernel.org
These four patches drop some parameters that are not needed from
a number of functions.
-Alex
[PATCH 1/4] rbd: drop oid parameters from ceph_osdc_build_request()
[PATCH 2/4] rbd: drop snapid parameter from rbd_req_sync_read()
[PATCH 3/4] rbd: drop flags parameter from rbd_req_sync_exec()
[PATCH 4/4] rbd: kill rbd_req_sync_op() snapc and snapid parameters
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/4] rbd: drop oid parameters from ceph_osdc_build_request()
2012-11-10 3:41 [PATCH 0/4] rbd: drop some unnecessary function parameters Alex Elder
@ 2012-11-10 3:43 ` Alex Elder
2012-11-10 3:44 ` [PATCH 2/4] rbd: drop snapid parameter from rbd_req_sync_read() Alex Elder
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Alex Elder @ 2012-11-10 3:43 UTC (permalink / raw)
To: ceph-devel@vger.kernel.org
The last two parameters to ceph_osd_build_request() describe the
object id, but the values passed always come from the osd request
structure whose address is also provided. Get rid of those last
two parameters.
Signed-off-by: Alex Elder <elder@inktank.com>
---
drivers/block/rbd.c | 6 +-----
include/linux/ceph/osd_client.h | 4 +---
net/ceph/osd_client.c | 13 +++++--------
3 files changed, 7 insertions(+), 16 deletions(-)
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 2d8f2ed..499e53a 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -1178,11 +1178,7 @@ static int rbd_do_request(struct request *rq,
snapid, ofs, &len, &bno, osd_req, ops);
rbd_assert(ret == 0);
- ceph_osdc_build_request(osd_req, ofs, &len,
- ops,
- snapc,
- &mtime,
- osd_req->r_oid, osd_req->r_oid_len);
+ ceph_osdc_build_request(osd_req, ofs, &len, ops, snapc, &mtime);
if (linger_req) {
ceph_osdc_set_request_linger(osdc, osd_req);
diff --git a/include/linux/ceph/osd_client.h
b/include/linux/ceph/osd_client.h
index d9b880e..f2e5d2c 100644
--- a/include/linux/ceph/osd_client.h
+++ b/include/linux/ceph/osd_client.h
@@ -227,9 +227,7 @@ extern void ceph_osdc_build_request(struct
ceph_osd_request *req,
u64 off, u64 *plen,
struct ceph_osd_req_op *src_ops,
struct ceph_snap_context *snapc,
- struct timespec *mtime,
- const char *oid,
- int oid_len);
+ struct timespec *mtime);
extern struct ceph_osd_request *ceph_osdc_new_request(struct
ceph_osd_client *,
struct ceph_file_layout *layout,
diff --git a/net/ceph/osd_client.c b/net/ceph/osd_client.c
index ccbdfbb..540276e 100644
--- a/net/ceph/osd_client.c
+++ b/net/ceph/osd_client.c
@@ -368,9 +368,7 @@ void ceph_osdc_build_request(struct ceph_osd_request
*req,
u64 off, u64 *plen,
struct ceph_osd_req_op *src_ops,
struct ceph_snap_context *snapc,
- struct timespec *mtime,
- const char *oid,
- int oid_len)
+ struct timespec *mtime)
{
struct ceph_msg *msg = req->r_request;
struct ceph_osd_request_head *head;
@@ -397,9 +395,9 @@ void ceph_osdc_build_request(struct ceph_osd_request
*req,
/* fill in oid */
- head->object_len = cpu_to_le32(oid_len);
- memcpy(p, oid, oid_len);
- p += oid_len;
+ head->object_len = cpu_to_le32(req->r_oid_len);
+ memcpy(p, req->r_oid, req->r_oid_len);
+ p += req->r_oid_len;
src_op = src_ops;
while (src_op->op) {
@@ -498,8 +496,7 @@ struct ceph_osd_request
*ceph_osdc_new_request(struct ceph_osd_client *osdc,
ceph_osdc_build_request(req, off, plen, ops,
snapc,
- mtime,
- req->r_oid, req->r_oid_len);
+ mtime);
return req;
}
--
1.7.9.5
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/4] rbd: drop snapid parameter from rbd_req_sync_read()
2012-11-10 3:41 [PATCH 0/4] rbd: drop some unnecessary function parameters Alex Elder
2012-11-10 3:43 ` [PATCH 1/4] rbd: drop oid parameters from ceph_osdc_build_request() Alex Elder
@ 2012-11-10 3:44 ` Alex Elder
2012-11-10 3:44 ` [PATCH 3/4] rbd: drop flags parameter from rbd_req_sync_exec() Alex Elder
2012-11-10 3:44 ` [PATCH 4/4] rbd: kill rbd_req_sync_op() snapc and snapid parameters Alex Elder
3 siblings, 0 replies; 5+ messages in thread
From: Alex Elder @ 2012-11-10 3:44 UTC (permalink / raw)
To: ceph-devel@vger.kernel.org
There is only one caller of rbd_req_sync_read(), and it passes
CEPH_NOSNAP as the snapshot id argument. Delete that parameter
and just use CEPH_NOSNAP within the function.
Signed-off-by: Alex Elder <elder@inktank.com>
---
drivers/block/rbd.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 499e53a..6a31f38 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -1370,7 +1370,6 @@ done:
* Request sync osd read
*/
static int rbd_req_sync_read(struct rbd_device *rbd_dev,
- u64 snapid,
const char *object_name,
u64 ofs, u64 len,
char *buf,
@@ -1384,7 +1383,7 @@ static int rbd_req_sync_read(struct rbd_device
*rbd_dev,
return -ENOMEM;
ret = rbd_req_sync_op(rbd_dev, NULL,
- snapid,
+ CEPH_NOSNAP,
CEPH_OSD_FLAG_READ,
ops, object_name, ofs, len, buf, NULL, ver);
rbd_destroy_ops(ops);
@@ -1794,8 +1793,7 @@ rbd_dev_v1_header_read(struct rbd_device *rbd_dev,
u64 *version)
if (!ondisk)
return ERR_PTR(-ENOMEM);
- ret = rbd_req_sync_read(rbd_dev, CEPH_NOSNAP,
- rbd_dev->header_name,
+ ret = rbd_req_sync_read(rbd_dev, rbd_dev->header_name,
0, size,
(char *) ondisk, version);
--
1.7.9.5
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 3/4] rbd: drop flags parameter from rbd_req_sync_exec()
2012-11-10 3:41 [PATCH 0/4] rbd: drop some unnecessary function parameters Alex Elder
2012-11-10 3:43 ` [PATCH 1/4] rbd: drop oid parameters from ceph_osdc_build_request() Alex Elder
2012-11-10 3:44 ` [PATCH 2/4] rbd: drop snapid parameter from rbd_req_sync_read() Alex Elder
@ 2012-11-10 3:44 ` Alex Elder
2012-11-10 3:44 ` [PATCH 4/4] rbd: kill rbd_req_sync_op() snapc and snapid parameters Alex Elder
3 siblings, 0 replies; 5+ messages in thread
From: Alex Elder @ 2012-11-10 3:44 UTC (permalink / raw)
To: ceph-devel@vger.kernel.org
All callers of rbd_req_sync_exec() pass CEPH_OSD_FLAG_READ as their
flags argument. Delete that parameter and use CEPH_OSD_FLAG_READ
within the function. If we find a need to support write operations
we can add it back again.
Signed-off-by: Alex Elder <elder@inktank.com>
---
drivers/block/rbd.c | 27 +++++++++------------------
1 file changed, 9 insertions(+), 18 deletions(-)
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 6a31f38..958f4a8 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -1526,7 +1526,6 @@ static int rbd_req_sync_exec(struct rbd_device
*rbd_dev,
size_t outbound_size,
char *inbound,
size_t inbound_size,
- int flags,
u64 *ver)
{
struct ceph_osd_req_op *ops;
@@ -1557,8 +1556,7 @@ static int rbd_req_sync_exec(struct rbd_device
*rbd_dev,
ops[0].cls.indata_len = outbound_size;
ret = rbd_req_sync_op(rbd_dev, NULL,
- CEPH_NOSNAP,
- flags, ops,
+ CEPH_NOSNAP, CEPH_OSD_FLAG_READ, ops,
object_name, 0, inbound_size, inbound,
NULL, ver);
@@ -2413,8 +2411,7 @@ static int _rbd_dev_v2_snap_size(struct rbd_device
*rbd_dev, u64 snap_id,
ret = rbd_req_sync_exec(rbd_dev, rbd_dev->header_name,
"rbd", "get_size",
(char *) &snapid, sizeof (snapid),
- (char *) &size_buf, sizeof (size_buf),
- CEPH_OSD_FLAG_READ, NULL);
+ (char *) &size_buf, sizeof (size_buf), NULL);
dout("%s: rbd_req_sync_exec returned %d\n", __func__, ret);
if (ret < 0)
return ret;
@@ -2449,8 +2446,7 @@ static int rbd_dev_v2_object_prefix(struct
rbd_device *rbd_dev)
ret = rbd_req_sync_exec(rbd_dev, rbd_dev->header_name,
"rbd", "get_object_prefix",
NULL, 0,
- reply_buf, RBD_OBJ_PREFIX_LEN_MAX,
- CEPH_OSD_FLAG_READ, NULL);
+ reply_buf, RBD_OBJ_PREFIX_LEN_MAX, NULL);
dout("%s: rbd_req_sync_exec returned %d\n", __func__, ret);
if (ret < 0)
goto out;
@@ -2489,7 +2485,7 @@ static int _rbd_dev_v2_snap_features(struct
rbd_device *rbd_dev, u64 snap_id,
"rbd", "get_features",
(char *) &snapid, sizeof (snapid),
(char *) &features_buf, sizeof (features_buf),
- CEPH_OSD_FLAG_READ, NULL);
+ NULL);
dout("%s: rbd_req_sync_exec returned %d\n", __func__, ret);
if (ret < 0)
return ret;
@@ -2544,8 +2540,7 @@ static int rbd_dev_v2_parent_info(struct
rbd_device *rbd_dev)
ret = rbd_req_sync_exec(rbd_dev, rbd_dev->header_name,
"rbd", "get_parent",
(char *) &snapid, sizeof (snapid),
- (char *) reply_buf, size,
- CEPH_OSD_FLAG_READ, NULL);
+ (char *) reply_buf, size, NULL);
dout("%s: rbd_req_sync_exec returned %d\n", __func__, ret);
if (ret < 0)
goto out_err;
@@ -2610,8 +2605,7 @@ static char *rbd_dev_image_name(struct rbd_device
*rbd_dev)
ret = rbd_req_sync_exec(rbd_dev, RBD_DIRECTORY,
"rbd", "dir_get_name",
image_id, image_id_size,
- (char *) reply_buf, size,
- CEPH_OSD_FLAG_READ, NULL);
+ (char *) reply_buf, size, NULL);
if (ret < 0)
goto out;
p = reply_buf;
@@ -2717,8 +2711,7 @@ static int rbd_dev_v2_snap_context(struct
rbd_device *rbd_dev, u64 *ver)
ret = rbd_req_sync_exec(rbd_dev, rbd_dev->header_name,
"rbd", "get_snapcontext",
NULL, 0,
- reply_buf, size,
- CEPH_OSD_FLAG_READ, ver);
+ reply_buf, size, ver);
dout("%s: rbd_req_sync_exec returned %d\n", __func__, ret);
if (ret < 0)
goto out;
@@ -2787,8 +2780,7 @@ static char *rbd_dev_v2_snap_name(struct
rbd_device *rbd_dev, u32 which)
ret = rbd_req_sync_exec(rbd_dev, rbd_dev->header_name,
"rbd", "get_snapshot_name",
(char *) &snap_id, sizeof (snap_id),
- reply_buf, size,
- CEPH_OSD_FLAG_READ, NULL);
+ reply_buf, size, NULL);
dout("%s: rbd_req_sync_exec returned %d\n", __func__, ret);
if (ret < 0)
goto out;
@@ -3396,8 +3388,7 @@ static int rbd_dev_image_id(struct rbd_device
*rbd_dev)
ret = rbd_req_sync_exec(rbd_dev, object_name,
"rbd", "get_id",
NULL, 0,
- response, RBD_IMAGE_ID_LEN_MAX,
- CEPH_OSD_FLAG_READ, NULL);
+ response, RBD_IMAGE_ID_LEN_MAX, NULL);
dout("%s: rbd_req_sync_exec returned %d\n", __func__, ret);
if (ret < 0)
goto out;
--
1.7.9.5
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 4/4] rbd: kill rbd_req_sync_op() snapc and snapid parameters
2012-11-10 3:41 [PATCH 0/4] rbd: drop some unnecessary function parameters Alex Elder
` (2 preceding siblings ...)
2012-11-10 3:44 ` [PATCH 3/4] rbd: drop flags parameter from rbd_req_sync_exec() Alex Elder
@ 2012-11-10 3:44 ` Alex Elder
3 siblings, 0 replies; 5+ messages in thread
From: Alex Elder @ 2012-11-10 3:44 UTC (permalink / raw)
To: ceph-devel@vger.kernel.org
The snapc and snapid parameters to rbd_req_sync_op() always take
the values NULL and CEPH_NOSNAP, respectively. So just get rid
of them and use those values where needed.
Signed-off-by: Alex Elder <elder@inktank.com>
---
drivers/block/rbd.c | 17 +++++------------
1 file changed, 5 insertions(+), 12 deletions(-)
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 958f4a8..b3d25c3 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -1259,8 +1259,6 @@ static void rbd_simple_req_cb(struct
ceph_osd_request *osd_req,
* Do a synchronous ceph osd operation
*/
static int rbd_req_sync_op(struct rbd_device *rbd_dev,
- struct ceph_snap_context *snapc,
- u64 snapid,
int flags,
struct ceph_osd_req_op *ops,
const char *object_name,
@@ -1280,7 +1278,7 @@ static int rbd_req_sync_op(struct rbd_device *rbd_dev,
if (IS_ERR(pages))
return PTR_ERR(pages);
- ret = rbd_do_request(NULL, rbd_dev, snapc, snapid,
+ ret = rbd_do_request(NULL, rbd_dev, NULL, CEPH_NOSNAP,
object_name, ofs, inbound_size, NULL,
pages, num_pages,
flags,
@@ -1382,9 +1380,7 @@ static int rbd_req_sync_read(struct rbd_device
*rbd_dev,
if (!ops)
return -ENOMEM;
- ret = rbd_req_sync_op(rbd_dev, NULL,
- CEPH_NOSNAP,
- CEPH_OSD_FLAG_READ,
+ ret = rbd_req_sync_op(rbd_dev, CEPH_OSD_FLAG_READ,
ops, object_name, ofs, len, buf, NULL, ver);
rbd_destroy_ops(ops);
@@ -1463,8 +1459,7 @@ static int rbd_req_sync_watch(struct rbd_device
*rbd_dev)
ops[0].watch.cookie = cpu_to_le64(rbd_dev->watch_event->cookie);
ops[0].watch.flag = 1;
- ret = rbd_req_sync_op(rbd_dev, NULL,
- CEPH_NOSNAP,
+ ret = rbd_req_sync_op(rbd_dev,
CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK,
ops,
rbd_dev->header_name,
@@ -1501,8 +1496,7 @@ static int rbd_req_sync_unwatch(struct rbd_device
*rbd_dev)
ops[0].watch.cookie = cpu_to_le64(rbd_dev->watch_event->cookie);
ops[0].watch.flag = 0;
- ret = rbd_req_sync_op(rbd_dev, NULL,
- CEPH_NOSNAP,
+ ret = rbd_req_sync_op(rbd_dev,
CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK,
ops,
rbd_dev->header_name,
@@ -1555,8 +1549,7 @@ static int rbd_req_sync_exec(struct rbd_device
*rbd_dev,
ops[0].cls.indata = outbound;
ops[0].cls.indata_len = outbound_size;
- ret = rbd_req_sync_op(rbd_dev, NULL,
- CEPH_NOSNAP, CEPH_OSD_FLAG_READ, ops,
+ ret = rbd_req_sync_op(rbd_dev, CEPH_OSD_FLAG_READ, ops,
object_name, 0, inbound_size, inbound,
NULL, ver);
--
1.7.9.5
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-11-10 3:44 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-11-10 3:41 [PATCH 0/4] rbd: drop some unnecessary function parameters Alex Elder
2012-11-10 3:43 ` [PATCH 1/4] rbd: drop oid parameters from ceph_osdc_build_request() Alex Elder
2012-11-10 3:44 ` [PATCH 2/4] rbd: drop snapid parameter from rbd_req_sync_read() Alex Elder
2012-11-10 3:44 ` [PATCH 3/4] rbd: drop flags parameter from rbd_req_sync_exec() Alex Elder
2012-11-10 3:44 ` [PATCH 4/4] rbd: kill rbd_req_sync_op() snapc and snapid parameters Alex Elder
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.