Commit 908c7b9f788b6faed2fbfdf19920770614f8e853

Authored by Gerd Hoffmann
Committed by Blue Swirl
1 parent 70503264

xen_disk: move sanity check to the correct place

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Showing 1 changed file with 5 additions and 4 deletions
hw/xen_disk.c
... ... @@ -179,10 +179,6 @@ static int ioreq_parse(struct ioreq *ioreq)
179 179 switch (ioreq->req.operation) {
180 180 case BLKIF_OP_READ:
181 181 ioreq->prot = PROT_WRITE; /* to memory */
182   - if (ioreq->req.operation != BLKIF_OP_READ && blkdev->mode[0] != 'w') {
183   - xen_be_printf(&blkdev->xendev, 0, "error: write req for ro device\n");
184   - goto err;
185   - }
186 182 break;
187 183 case BLKIF_OP_WRITE_BARRIER:
188 184 if (!syncwrite)
... ... @@ -199,6 +195,11 @@ static int ioreq_parse(struct ioreq *ioreq)
199 195 goto err;
200 196 };
201 197  
  198 + if (ioreq->req.operation != BLKIF_OP_READ && blkdev->mode[0] != 'w') {
  199 + xen_be_printf(&blkdev->xendev, 0, "error: write req for ro device\n");
  200 + goto err;
  201 + }
  202 +
202 203 ioreq->start = ioreq->req.sector_number * blkdev->file_blk;
203 204 for (i = 0; i < ioreq->req.nr_segments; i++) {
204 205 if (i == BLKIF_MAX_SEGMENTS_PER_REQUEST) {
... ...