[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180322181653.GJ30522@ZenIV.linux.org.uk>
Date: Thu, 22 Mar 2018 18:16:53 +0000
From: Al Viro <viro@...IV.linux.org.uk>
To: Christoph Hellwig <hch@....de>
Cc: Avi Kivity <avi@...lladb.com>, linux-aio@...ck.org,
linux-fsdevel@...r.kernel.org, netdev@...r.kernel.org,
linux-api@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 06/28] aio: implement IOCB_CMD_POLL
On Thu, Mar 22, 2018 at 06:24:10PM +0100, Christoph Hellwig wrote:
> -static void aio_complete(struct aio_kiocb *iocb, long res, long res2)
> +static bool aio_complete(struct aio_kiocb *iocb, long res, long res2,
> + unsigned complete_flags)
Looks like all callers are following that with "if returned true,
fput(something)". Does it really make any sense to keep that struct
file * in different fields?
Wait a sec... What ordering do we want for
* call(s) of ->ki_complete
* call (if any) of ->ki_cancel
* dropping reference to struct file
and what are the expected call chains for all of those?
Powered by blists - more mailing lists