diff options
Diffstat (limited to 'src/drivers/ata/aoedev.c')
| -rw-r--r-- | src/drivers/ata/aoedev.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/drivers/ata/aoedev.c b/src/drivers/ata/aoedev.c index 6658827cf..ff047f103 100644 --- a/src/drivers/ata/aoedev.c +++ b/src/drivers/ata/aoedev.c @@ -17,6 +17,7 @@ */ #include <stddef.h> +#include <gpxe/async.h> #include <gpxe/aoe.h> /** @file @@ -37,13 +38,9 @@ static int aoe_command ( struct ata_device *ata, struct aoe_device *aoedev = container_of ( ata, struct aoe_device, ata ); struct async async; - int rc; - async_init_orphan ( &async ); - if ( ( rc = aoe_issue ( &aoedev->aoe, command, &async ) ) != 0 ) - return rc; - async_wait ( &async, &rc, 1 ); - return rc; + return async_block ( &async, aoe_issue ( &aoedev->aoe, command, + &async ) ); } /** |
