cmpxchg() on some architectures (ia64) doesn't like functions as parameters.
This results in the following compile error on the affected architectures.

fs/aio.c: In function 'aio_thread_fn':
fs/aio.c:1499:1: error: cast specifies function type

Fixes: 6a81013efc40 ("aio: add support for IOCB_CMD_POLL via aio thread helper")
Cc: Benjamin LaHaise <b...@kvack.org>
Signed-off-by: Guenter Roeck <li...@roeck-us.net>
---
No idea if this is the correct or an acceptable fix.
If not, please consider this to be a bug report.

 fs/aio.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/aio.c b/fs/aio.c
index 56bcdf4105f4..229a91e391df 100644
--- a/fs/aio.c
+++ b/fs/aio.c
@@ -1495,8 +1495,8 @@ static void aio_thread_fn(struct work_struct *work)
         * cancellation if it has not already occurred.
         */
        old_cancel = cmpxchg(&iocb->ki_cancel,
-                            aio_thread_queue_iocb_cancel_early,
-                            aio_thread_queue_iocb_cancel);
+                            (kiocb_cancel_fn 
*)aio_thread_queue_iocb_cancel_early,
+                            (kiocb_cancel_fn *)aio_thread_queue_iocb_cancel);
        if (old_cancel != KIOCB_CANCELLED)
                ret = iocb->ki_work_fn(iocb);
        else
-- 
2.1.4

Reply via email to