]> xenbits.xensource.com Git - people/dstodden/blktap.git/commitdiff
PR-1053: Make td_queue_read/write optional.
authorDaniel Stodden <daniel.stodden@citrix.com>
Tue, 15 Feb 2011 09:37:45 +0000 (01:37 -0800)
committerDaniel Stodden <daniel.stodden@citrix.com>
Tue, 15 Feb 2011 09:37:45 +0000 (01:37 -0800)
Saves some extra code in drivers and ensures common error indication.

Signed-off-by: Daniel Stodden <daniel.stodden@citrix.com>
drivers/tapdisk-interface.c

index 4a70d9891f8d4f9def99d10af9624de53c535eca..1d15c8ac3c6fbfcc3ec4e37c95fd09fb6a6e5705 100644 (file)
@@ -178,11 +178,17 @@ td_queue_write(td_image_t *image, td_request_t treq)
                goto fail;
        }
 
+       if (!driver->ops->td_queue_write) {
+               err = -EOPNOTSUPP;
+               goto fail;
+       }
+
        err = tapdisk_image_check_td_request(image, treq);
        if (err)
                goto fail;
 
        driver->ops->td_queue_write(driver, treq);
+
        return;
 
 fail:
@@ -206,11 +212,17 @@ td_queue_read(td_image_t *image, td_request_t treq)
                goto fail;
        }
 
+       if (!driver->ops->td_queue_read) {
+               err = -EOPNOTSUPP;
+               goto fail;
+       }
+
        err = tapdisk_image_check_td_request(image, treq);
        if (err)
                goto fail;
 
        driver->ops->td_queue_read(driver, treq);
+
        return;
 
 fail: