]> xenbits.xensource.com Git - qemu-xen-4.0-testing.git/commitdiff
fix raw_aio_remove list walk bug
authorIan Jackson <ian.jackson@eu.citrix.com>
Thu, 19 Feb 2009 17:55:54 +0000 (17:55 +0000)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Thu, 19 Feb 2009 17:55:54 +0000 (17:55 +0000)
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cherry picked and cross-ported by Ian Jackson
from Stefano's submission to qemu-devel, 18 Feb 2009 16:56:16 GMT.

block-raw-posix.c

index 369f6d77dbd0a26bda809036e447bdc73b03afb3..d31ba4141e4ed0240e79f4f594d81d9bc83b5a16 100644 (file)
@@ -673,6 +673,7 @@ static void raw_aio_remove(RawAIOCB *acb)
     pacb = &posix_aio_state->first_aio;
     for(;;) {
         if (*pacb == NULL) {
+            fprintf(stderr, "raw_aio_remove: aio request not found!\n");
             break;
         } else if (*pacb == acb) {
             *pacb = acb->next;
@@ -680,7 +681,7 @@ static void raw_aio_remove(RawAIOCB *acb)
             qemu_aio_release(acb);
             break;
         }
-        pacb = &acb->next;
+        pacb = &(*acb)->next;
     }
 }