On Wed, Aug 05, 2020 at 01:02:24PM -0600, Jens Axboe wrote: > The tear down path will always unaccount the memory, so ensure that we > have accounted it before hitting any of them. > > Signed-off-by: Jens Axboe <axboe@xxxxxxxxx> > --- > fs/io_uring.c | 16 ++++++++-------- > 1 file changed, 8 insertions(+), 8 deletions(-) > > diff --git a/fs/io_uring.c b/fs/io_uring.c > index 0d857f7ca507..7c42f63fbb0a 100644 > --- a/fs/io_uring.c > +++ b/fs/io_uring.c > @@ -8341,6 +8341,14 @@ static int io_uring_create(unsigned entries, struct io_uring_params *p, > ctx->user = user; > ctx->creds = get_current_cred(); > > + /* > + * Account memory _before_ installing the file descriptor. Once > + * the descriptor is installed, it can get closed at any time. > + */ What about update a bit the comment? Maybe adding the commit description in this comment. > + io_account_mem(ctx, ring_pages(p->sq_entries, p->cq_entries), > + ACCT_LOCKED); > + ctx->limit_mem = limit_mem; > + > ret = io_allocate_scq_urings(ctx, p); > if (ret) > goto err; > @@ -8377,14 +8385,6 @@ static int io_uring_create(unsigned entries, struct io_uring_params *p, > goto err; > } > > - /* > - * Account memory _before_ installing the file descriptor. Once > - * the descriptor is installed, it can get closed at any time. > - */ > - io_account_mem(ctx, ring_pages(p->sq_entries, p->cq_entries), > - ACCT_LOCKED); > - ctx->limit_mem = limit_mem; > - > /* > * Install ring fd as the very last thing, so we don't risk someone > * having closed it before we finish setup > -- > 2.28.0 > Thanks, Stefano