[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170522194814.4681ef0b@alans-desktop>
Date: Mon, 22 May 2017 19:48:14 +0100
From: Alan Cox <gnomes@...rguk.ukuu.org.uk>
To: Michal Hocko <mhocko@...nel.org>
Cc: Wei Yongjun <weiyj.lk@...il.com>, jinqian@...roid.com,
gregkh@...uxfoundation.org, lstoakes@...il.com, jack@...e.cz,
christian.koenig@....com, Wei Yongjun <weiyongjun1@...wei.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] goldfish_pipe: use GFP_ATOMIC under spin lock
On Mon, 22 May 2017 13:51:52 +0200
Michal Hocko <mhocko@...nel.org> wrote:
> On Sun 21-05-17 09:48:36, Michal Hocko wrote:
> > On Sun 21-05-17 00:45:46, Wei Yongjun wrote:
> > > From: Wei Yongjun <weiyongjun1@...wei.com>
> > >
> > > The function get_free_pipe_id_locked() is called from
> > > goldfish_pipe_open() with a lock is held, so we should
> > > use GFP_ATOMIC instead of GFP_KERNEL.
> >
> > Why is GFP_NOWAIT insufficient? Does this path needs an access to memory
> > reserves?
>
> And now when looking at the code more deeply, wouldn't it be much better
> to simply do the allocation outside of the spin lock and do assignments
> with the lock held?
That's far from trivial and certainly for backporting and an immediate
fix this seems better. The allocations are not that large and any fail
would be in open() not anywhere weird.
Alan
Powered by blists - more mailing lists