From: Johannes Berg <johannes@sipsolutions.net>
To: "Luis R. Rodriguez" <mcgrof@kernel.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Jiri Kosina <jkosina@suse.cz>, Jouni Malinen <j@w1.fi>,
Seth Forshee <seth.forshee@canonical.com>,
Tom Gundersen <teg@jklm.no>, Kay Sievers <kay@vrfy.org>,
Bjorn Andersson <bjorn.andersson@linaro.org>,
Daniel Wagner <wagi@monom.org>,
Daniel Wagner <daniel.wagner@bmw-carit.de>,
"Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: "Herbert, Marc" <marc.herbert@intel.com>,
Daniel Vetter <daniel.vetter@ffwll.ch>,
Rob Landley <rob@landley.net>,
Mimi Zohar <zohar@linux.vnet.ibm.com>,
Felix Fietkau <nbd@nbd.name>,
David Woodhouse <dwmw2@infradead.org>,
Roman Pen <r.peniaev@gmail.com>,
Ming Lei <ming.lei@canonical.com>,
Andrew Morton <akpm@linux-foundation.org>,
Michal Marek <mmarek@suse.com>,
Greg KH <gregkh@linuxfoundation.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Vikram Mulukutla <markivx@codeaurora.org>,
Stephen Boyd <stephen.boyd@linaro.org>,
Mark Brown <broonie@kernel.org>, Takashi Iwai <tiwai@suse.de>,
Christian Lamparter <chunkeey@googlemail.com>,
Hauke Mehrtens <hauke@hauke-m.de>,
Josh Boyer <jwboyer@fedoraproject.org>,
Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Jiri Slaby <jslaby@suse.com>,
Andy Lutomirski <luto@amacapital.net>,
Wu Fengguang <fengguang.wu@intel.com>,
Richard Purdie <rpurdie@rpsys.net>, Jeff Mahoney <jeffm@suse.com>,
Jacek Anaszewski <j.anaszewski@samsung.com>,
Abhay_Salunke@dell.com, Julia Lawall <Julia.Lawall@lip6.fr>,
Gilles.Muller@lip6.fr, nicolas.palix@imag.fr,
David Howells <dhowells@redhat.com>,
Alessandro Rubini <rubini@gnudd.com>,
Kevin Cernekee <cernekee@gmail.com>,
Kees Cook <keescook@chromium.org>,
Jonathan Corbet <corbet@lwn.net>,
Thierry Martinez <martinez@nsup.org>,
linux-serial <linux-serial@vger.kernel.org>,
"open list:DOCUMENTATION" <linux-doc@vger.kernel.org>,
linuxppc-dev <linuxppc-dev@lists.ozlabs.org>,
Josh Triplett <josh@joshtriplett.org>
Subject: Re: [RFC] fs: add userspace critical mounts event support
Date: Tue, 15 Nov 2016 10:28:45 +0100 [thread overview]
Message-ID: <1479202125.12007.24.camel@sipsolutions.net> (raw)
In-Reply-To: <20161108224726.GD13978@wotan.suse.de>
On Tue, 2016-11-08 at 23:47 +0100, Luis R. Rodriguez wrote:
> This issue still stands. At Plumbers Johannes Berg did indicate to me
> he had a simple elegant solution in mind. He suggested that since the
> usermode helper was available, he had added support to be able to
> differentiate async firmware request calls form sync requests,
For reference:
commit e9045f9178f3e3445a3a5b85206f8681b3869562
Author: Johannes Berg <johannes.berg@intel.com>
Date: Mon Mar 29 17:57:20 2010 +0200
firmware class: export nowait to userspace
> it can determine we're initramfs. The semantics issue is the same
> though, is there a generic way to determine we're initramfs ? What if
> we move multiple levels? Anyway -- provided we could figure this out,
> userspace would simply yield and wait until the real rootfs is met.
One way or another we have to have this kind of information somewhere.
I don't actually know how/where though.
> Upon pivot_root() the assumption is all previous udev events pending
> would be re-triggered and finally udev could finally confirm/deny if
> the firmware was present.
The retriggering is already the case, as far as I know, if only to load
modules that weren't part of initramfs.
> note Johannes was asking for *all* async firmware requests to always
> rely on the kernel syfs UMH fallback -- this suggestion is against
> the direction we've been taking to eventually compartamentalize the
> kernel UMH code, so whatever we decide to do, lets please take a
> breather and seriously address this properly *with* systemd folks.
I was saying that because that's the only way you can actually rely on
this functionality as a system integrator. If drivers have to opt in or
can opt out then you'll always end up chasing the drivers around.
My argument basically goes like this:
First, given good drivers (i.e. using request_firmware_nowait())
putting firmware even for a built-in driver into initramfs or not
should be a system integrator decision. If they don't need the device
that early, it should be possible for them to delay it. Or, perhaps, if
the firmware is too big, etc. I'm sure we can all come up with more
examples of why you'd want to do it one way or another.
Second, all of this can be solved in other ways by adding logic to the
kernel, like the rejected proposal to add a "rootfs available" bit
somewhere, that would cause async requests to behave similarly within
the kernel (don't return "not found" until they time out or this bit is
set, and retry loading when the bit gets set)
Third, having this in place can be more friendly to users who play with
kernel compilation, modules, etc. This is a fringe group in some ways,
but it is (was?) actually a relatively common complaint that drivers
built into the kernel wouldn't work - we'd always have to direct users
to do magic steps like rebuilding initramfs with the right options etc.
johannes
next prev parent reply other threads:[~2016-11-15 9:30 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1466117661-22075-1-git-send-email-mcgrof@kernel.org>
2016-06-16 22:54 ` [PATCH v2 2/5] firmware: annotate thou shalt not request fw on init or probe Luis R. Rodriguez
2016-08-24 6:55 ` Daniel Vetter
2016-08-24 20:39 ` Luis R. Rodriguez
2016-08-25 11:05 ` Daniel Vetter
2016-08-25 19:41 ` Luis R. Rodriguez
2016-08-25 20:10 ` Daniel Vetter
2016-08-25 20:25 ` Luis R. Rodriguez
2016-08-25 20:30 ` Dmitry Torokhov
2016-09-02 23:59 ` Luis R. Rodriguez
2016-09-03 0:20 ` [RFC] fs: add userspace critical mounts event support Luis R. Rodriguez
2016-09-03 4:11 ` Linus Torvalds
2016-09-03 4:20 ` Dmitry Torokhov
2016-09-03 4:41 ` Linus Torvalds
2016-09-03 17:49 ` Dmitry Torokhov
2016-09-03 18:01 ` Linus Torvalds
2016-09-03 18:10 ` Dmitry Torokhov
2016-09-06 21:52 ` Luis R. Rodriguez
2016-09-06 22:28 ` Bjorn Andersson
2016-09-06 23:14 ` Luis R. Rodriguez
2016-09-24 1:37 ` Herbert, Marc
2016-09-24 17:41 ` Dmitry Torokhov
2016-10-05 0:00 ` Luis R. Rodriguez
2016-10-05 0:12 ` Linus Torvalds
2016-10-05 0:24 ` Luis R. Rodriguez
2016-10-05 0:32 ` Linus Torvalds
2016-10-05 17:38 ` Luis R. Rodriguez
2016-10-05 1:48 ` Josh Triplett
2016-10-05 1:58 ` Linus Torvalds
2016-09-06 17:46 ` Bjorn Andersson
2016-09-06 18:32 ` Linus Torvalds
2016-09-06 21:11 ` Bjorn Andersson
2016-09-06 21:50 ` Linus Torvalds
2016-09-06 23:04 ` Luis R. Rodriguez
2016-09-06 22:32 ` Luis R. Rodriguez
2016-09-14 2:38 ` Rob Landley
2016-10-05 18:00 ` Luis R. Rodriguez
2016-10-05 18:08 ` Linus Torvalds
2016-10-05 19:46 ` Luis R. Rodriguez
2016-11-08 22:47 ` Luis R. Rodriguez
2016-11-09 9:13 ` Daniel Wagner
2016-11-09 11:21 ` Andy Lutomirski
2016-11-09 23:53 ` Luis R. Rodriguez
2016-11-29 21:54 ` Luis R. Rodriguez
2016-11-09 23:40 ` Luis R. Rodriguez
2016-11-15 9:28 ` Johannes Berg [this message]
2016-11-29 21:10 ` Tom Gundersen
2016-11-29 21:37 ` Luis R. Rodriguez
2016-11-30 8:18 ` Johannes Berg
[not found] ` <1471999507-913-1-git-send-email-mcgrof@kernel.org>
2016-08-24 0:45 ` [PATCH v3 2/5] firmware: annotate thou shalt not request fw on init or probe mcgrof
2016-08-24 8:17 ` Gabriel Paubert
2016-09-02 18:26 ` Luis R. Rodriguez
[not found] ` <1473208930-6835-1-git-send-email-mcgrof@kernel.org>
2016-09-07 0:42 ` [PATCH v4 " Luis R. Rodriguez
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1479202125.12007.24.camel@sipsolutions.net \
--to=johannes@sipsolutions.net \
--cc=Abhay_Salunke@dell.com \
--cc=Gilles.Muller@lip6.fr \
--cc=Julia.Lawall@lip6.fr \
--cc=akpm@linux-foundation.org \
--cc=bjorn.andersson@linaro.org \
--cc=broonie@kernel.org \
--cc=cernekee@gmail.com \
--cc=chunkeey@googlemail.com \
--cc=corbet@lwn.net \
--cc=daniel.vetter@ffwll.ch \
--cc=daniel.wagner@bmw-carit.de \
--cc=dhowells@redhat.com \
--cc=dmitry.torokhov@gmail.com \
--cc=dwmw2@infradead.org \
--cc=fengguang.wu@intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=hauke@hauke-m.de \
--cc=j.anaszewski@samsung.com \
--cc=j@w1.fi \
--cc=jeffm@suse.com \
--cc=jkosina@suse.cz \
--cc=josh@joshtriplett.org \
--cc=jslaby@suse.com \
--cc=jwboyer@fedoraproject.org \
--cc=kay@vrfy.org \
--cc=keescook@chromium.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=luto@amacapital.net \
--cc=marc.herbert@intel.com \
--cc=markivx@codeaurora.org \
--cc=martinez@nsup.org \
--cc=mcgrof@kernel.org \
--cc=ming.lei@canonical.com \
--cc=mmarek@suse.com \
--cc=nbd@nbd.name \
--cc=nicolas.palix@imag.fr \
--cc=r.peniaev@gmail.com \
--cc=rjw@rjwysocki.net \
--cc=rob@landley.net \
--cc=rpurdie@rpsys.net \
--cc=rubini@gnudd.com \
--cc=seth.forshee@canonical.com \
--cc=stephen.boyd@linaro.org \
--cc=teg@jklm.no \
--cc=tiwai@suse.de \
--cc=torvalds@linux-foundation.org \
--cc=wagi@monom.org \
--cc=zohar@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).