Messages in this thread | | | Date | Wed, 19 Dec 2012 19:59:03 +0800 | Subject | Re: [PATCH 25/26] aio: use xchg() instead of completion_lock | From | Hillf Danton <> |
| |
>@@ -686,9 +685,10 @@ void aio_complete(struct kiocb *iocb, long res, long res2) > * ctx->ctx_lock to prevent other code from messing with the tail > * pointer since we might be called from irq context. > */
Well the comment is stale.
Hillf >- spin_lock_irqsave(&ctx->completion_lock, flags); >+ local_irq_save(flags); >+ while ((tail = xchg(&ctx->tail, UINT_MAX)) == UINT_MAX) >+ cpu_relax();
| |