From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51701) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XOpUE-0001Ll-TQ for qemu-devel@nongnu.org; Tue, 02 Sep 2014 10:55:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XOpU8-0005TL-La for qemu-devel@nongnu.org; Tue, 02 Sep 2014 10:55:10 -0400 Received: from mx1.redhat.com ([209.132.183.28]:46376) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XOpU8-0005Pu-Dt for qemu-devel@nongnu.org; Tue, 02 Sep 2014 10:55:04 -0400 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s82Et3M1021923 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Tue, 2 Sep 2014 10:55:03 -0400 Date: Tue, 2 Sep 2014 15:55:00 +0100 From: Stefan Hajnoczi Message-ID: <20140902145500.GK29067@stefanha-thinkpad.redhat.com> References: <1409107756-5967-1-git-send-email-famz@redhat.com> <1409107756-5967-5-git-send-email-famz@redhat.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="j/HO4hzKTNbM1mOX" Content-Disposition: inline In-Reply-To: <1409107756-5967-5-git-send-email-famz@redhat.com> Subject: Re: [Qemu-devel] [PATCH v3 4/8] linux-aio: Implement .cancel_async List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Fam Zheng Cc: Kevin Wolf , Paolo Bonzini , qemu-devel@nongnu.org --j/HO4hzKTNbM1mOX Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Aug 27, 2014 at 10:49:12AM +0800, Fam Zheng wrote: > @@ -110,6 +109,22 @@ static void qemu_laio_completion_cb(EventNotifier *e) > } > } > =20 > +static void laio_cancel_async(BlockDriverAIOCB *blockacb) > +{ > + struct qemu_laiocb *laiocb =3D (struct qemu_laiocb *)blockacb; > + struct io_event event; > + int ret; > + > + ret =3D io_cancel(laiocb->ctx->ctx, &laiocb->iocb, &event); > + laiocb->ret =3D -ECANCELED; > + if (!ret) { > + /* iocb is not cancelled, cb will be called by the event loop la= ter */ > + return; > + } This comment doesn't make sense, io_cancel() returns 0 on success so it has been cancelled. We need to call the completion callback! Stefan --j/HO4hzKTNbM1mOX Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAEBAgAGBQJUBdpEAAoJEJykq7OBq3PIzpAH+wTsXnhOKYJA7mKBHCyUKu1G jzEgmDCpbpVbTXH4Y0+csW37A0JlCd9qAg5GR14Kir6KjKYzSsWQtMe6C5HxdB1U mQMfQbkwg5cfmpAk7/x2oZvHbxmLuDSvrqlKm+0hd81b4T7hOJqdd1YZnkLOyZdm ZLRuhelM0E3HZmGhC7YieN3j/nS3SEvZLR2xbMy2isL6WGB2KSHwRfGgXEFKcvbq qd2qrVWQlArIepCrJ2/tvDLZepE3ll8kBAo+krEzGjsy3ybZoyNhA6mR50kJFkTg kWiKd/sQH3sfCVCtSQxUk10yem3TReIgq6n5qJNGi9RxblbnInOOS7vTfvbnoT0= =4TM3 -----END PGP SIGNATURE----- --j/HO4hzKTNbM1mOX--