nbd: change a parameter's type to remove a memcpy call

This memcpy looks so strange, in fact it's merely a pointer dereference, so I
change the parameter's type to refer it more directly, this could make the
memcpy not needed anymore.

In the function nbd_read_stat where nbd_find_request is only once called, the
parameter served should be transformed accordingly.

Signed-off-by: Denis Cheng <crquan@gmail.com>
Cc: Paul Clements <paul.clements@steeleye.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Denis Cheng 2007-10-16 23:26:14 -07:00 коммит произвёл Linus Torvalds
Родитель d2c9740b49
Коммит 0cbc591bf8
1 изменённых файлов: 3 добавлений и 5 удалений

Просмотреть файл

@ -231,14 +231,12 @@ error_out:
return 1; return 1;
} }
static struct request *nbd_find_request(struct nbd_device *lo, char *handle) static struct request *nbd_find_request(struct nbd_device *lo,
struct request *xreq)
{ {
struct request *req, *tmp; struct request *req, *tmp;
struct request *xreq;
int err; int err;
memcpy(&xreq, handle, sizeof(xreq));
err = wait_event_interruptible(lo->active_wq, lo->active_req != xreq); err = wait_event_interruptible(lo->active_wq, lo->active_req != xreq);
if (unlikely(err)) if (unlikely(err))
goto out; goto out;
@ -293,7 +291,7 @@ static struct request *nbd_read_stat(struct nbd_device *lo)
goto harderror; goto harderror;
} }
req = nbd_find_request(lo, reply.handle); req = nbd_find_request(lo, *(struct request **)reply.handle);
if (unlikely(IS_ERR(req))) { if (unlikely(IS_ERR(req))) {
result = PTR_ERR(req); result = PTR_ERR(req);
if (result != -ENOENT) if (result != -ENOENT)