From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andy Lutomirski Subject: Re: [PATCH v2] firmware: fix sending -ERESTARTSYS due to signal on fallback Date: Thu, 8 Jun 2017 18:14:25 -0700 Message-ID: References: <20170526194640.GS8951@wotan.suse.de> <20170526215518.GB40877@dtor-ws> <20170605202410.GQ8951@wotan.suse.de> <1496760796.5682.48.camel@linux.intel.com> <20170606164734.GB27288@wotan.suse.de> <20170606221151.ygoxqkwhhjsqw632@thunk.org> <20170607002237.GJ27288@wotan.suse.de> <20170607062515.GA23434@dtor-ws> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Return-path: In-Reply-To: <20170607062515.GA23434@dtor-ws> Sender: linux-fsdevel-owner@vger.kernel.org To: Dmitry Torokhov Cc: Andy Lutomirski , "Luis R. Rodriguez" , Theodore Ts'o , Alan Cox , Linux FS Devel , Stephen Boyd , "Li, Yi" , Peter Zijlstra , Jonathan Corbet , "Eric W. Biederman" , "Michael Kerrisk (man-pages)" , Greg KH , "Fuzzey, Martin" , Linux API , Daniel Wagner , David Woodhouse , jewalt@lgsinnovations.com, rafal@milecki.pl, Arend Van Spriel , "Rafael J. Wysocki" List-Id: linux-api@vger.kernel.org On Tue, Jun 6, 2017 at 11:25 PM, Dmitry Torokhov wrote: > On Tue, Jun 06, 2017 at 09:56:47PM -0700, Andy Lutomirski wrote: >> On Tue, Jun 6, 2017 at 5:22 PM, Luis R. Rodriguez wrote: >> > On Tue, Jun 06, 2017 at 06:11:51PM -0400, Theodore Ts'o wrote: >> >> On Tue, Jun 06, 2017 at 06:47:34PM +0200, Luis R. Rodriguez wrote: >> >> > On Tue, Jun 06, 2017 at 03:53:16PM +0100, Alan Cox wrote: >> > >> > We rely on swait, and swait right now only uses -ERESTARTSYS. Are >> > you saying we could mask out -ERESTARTSYS and map it to -ERESTARTNOINTR >> > or -ERESTARTNOHAND if we see fit for some future functionality / need ? >> >> I think that has essentially nothing to do with swait. User code does >> some syscall. That syscall triggers a firmware load. The caller gets >> a signal. If you're going to let firmware load get interrupted, you >> need to consider what the syscall is. > > I think it is way too complicated and I do not think driver writers will > stand a chance of implementing this correctly, given that often firmware > load might be triggered indirectly and by multitude of syscalls. > That's what I meant, but I said it unclearly. I meant that, if we're going to start allowing interruption, we would need to audit all the callers. Ugh. I suppose we could have request_firmware_interruptable(), but that seems like it's barely worth it. --Andy