diff options
Diffstat (limited to 'drivers/block/nbd.c')
| -rw-r--r-- | drivers/block/nbd.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index 56a027d6115e..fb31b8ee4372 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c | |||
| @@ -243,14 +243,11 @@ static int nbd_send_req(struct nbd_device *nbd, struct request *req) | |||
| 243 | struct nbd_request request; | 243 | struct nbd_request request; |
| 244 | unsigned long size = blk_rq_bytes(req); | 244 | unsigned long size = blk_rq_bytes(req); |
| 245 | 245 | ||
| 246 | memset(&request, 0, sizeof(request)); | ||
| 246 | request.magic = htonl(NBD_REQUEST_MAGIC); | 247 | request.magic = htonl(NBD_REQUEST_MAGIC); |
| 247 | request.type = htonl(nbd_cmd(req)); | 248 | request.type = htonl(nbd_cmd(req)); |
| 248 | 249 | ||
| 249 | if (nbd_cmd(req) == NBD_CMD_FLUSH) { | 250 | if (nbd_cmd(req) != NBD_CMD_FLUSH && nbd_cmd(req) != NBD_CMD_DISC) { |
| 250 | /* Other values are reserved for FLUSH requests. */ | ||
| 251 | request.from = 0; | ||
| 252 | request.len = 0; | ||
| 253 | } else { | ||
| 254 | request.from = cpu_to_be64((u64)blk_rq_pos(req) << 9); | 251 | request.from = cpu_to_be64((u64)blk_rq_pos(req) << 9); |
| 255 | request.len = htonl(size); | 252 | request.len = htonl(size); |
| 256 | } | 253 | } |
