public inbox for linuxppc-dev@ozlabs.org 
 help / color / mirror / Atom feed
From: Gabriel Paubert <paubert@iram•es>
To: mcgrof@kernel•org
Cc: ming.lei@canonical•com, akpm@linux-foundation•org,
	gregkh@linuxfoundation•org, dmitry.torokhov@gmail•com,
	linux-doc@vger•kernel.org, Gilles.Muller@lip6•fr, tiwai@suse•de,
	Daniel Vetter <daniel.vetter@ffwll•ch>,
	Alessandro Rubini <rubini@gnudd•com>,
	stephen.boyd@linaro•org, bjorn.andersson@linaro•org, teg@jklm•no,
	chunkeey@googlemail•com, cocci@systeme•lip6.fr,
	jwboyer@fedoraproject•org, Jonathan Corbet <corbet@lwn•net>,
	Kevin Cernekee <cernekee@gmail•com>,
	Thierry Martinez <martinez@nsup•org>,
	linux-serial@vger•kernel.org, jslaby@suse•com,
	zohar@linux•vnet.ibm.com, arend.vanspriel@broadcom•com,
	linuxppc-dev@lists•ozlabs.org, Kees Cook <keescook@chromium•org>,
	hauke@hauke-m•de, nicolas.palix@imag•fr, Abhay_Salunke@dell•com,
	Julia.Lawall@lip6•fr, broonie@kernel•org,
	j.anaszewski@samsung•com, kvalo@codeaurora•org,
	dhowells@redhat•com, dwmw2@infradead•org, markivx@codeaurora•org,
	daniel.wagner@bmw-carit•de, linux-kernel@vger•kernel.org,
	luto@amacapital•net, mmarek@suse•com, rpurdie@rpsys•net,
	johannes@sipsolutions•net, fengguang.wu@intel•com,
	torvalds@linux-foundation•org
Subject: Re: [PATCH v3 2/5] firmware: annotate thou shalt not request fw on init or probe
Date: Wed, 24 Aug 2016 10:17:38 +0200	[thread overview]
Message-ID: <20160824081738.GA8991@visitor2.iram.es> (raw)
In-Reply-To: <1471999507-913-3-git-send-email-mcgrof@kernel.org>

On Tue, Aug 23, 2016 at 05:45:04PM -0700, mcgrof@kernel•org wrote:

[snip]
> ---
>  Documentation/firmware_class/README                |  20 ++++
>  drivers/base/Kconfig                               |   2 +-
>  .../request_firmware-avoid-init-probe-init.cocci   | 130 +++++++++++++++++++++
>  3 files changed, 151 insertions(+), 1 deletion(-)
>  create mode 100644 scripts/coccinelle/api/request_firmware-avoid-init-probe-init.cocci
> 
> diff --git a/Documentation/firmware_class/README b/Documentation/firmware_class/README
> index cafdca8b3b15..056d1cb9d365 100644
> --- a/Documentation/firmware_class/README
> +++ b/Documentation/firmware_class/README
> @@ -93,6 +93,26 @@
>     user contexts to request firmware asynchronously, but can't be called
>     in atomic contexts.
>  
> +Requirements:
> +=============
> +
> +You should avoid at all costs requesting firmware on both init and probe paths
> +of your device driver. Reason for this is the complexity needed to ensure a
> +firmware will be available for a driver early in boot through different
> +build configurations. Consider built-in drivers needing firmware early, or
> +consider a driver assuming it will only get firmware after pivot_root().
> +
> +Drivers that really need firmware early should use stuff the firmware in

Minor grammatical nit: s/use//

> +initramfs or consider using CONFIG_EXTRA_FIRMWARE. Using initramfs is much
> +more portable to more distributions as not all distributions wish to enable
> +CONFIG_EXTRA_FIRMWARE. Should a driver require the firmware being built-in
> +it should depend on CONFIG_EXTRA_FIRMWARE. There is no current annotation for
> +requiring a firmware on initramfs.
> +
> +If you're a maintainer you can help police this with:
> +
> +$ export COCCI=scripts/coccinelle/api/request_firmware-avoid-init-probe-init.cocci
> +$ make coccicheck MODE=report
>  
>   about in-kernel persistence:
>   ---------------------------

  reply	other threads:[~2016-08-24  8:19 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
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 [this message]
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=20160824081738.GA8991@visitor2.iram.es \
    --to=paubert@iram$(echo .)es \
    --cc=Abhay_Salunke@dell$(echo .)com \
    --cc=Gilles.Muller@lip6$(echo .)fr \
    --cc=Julia.Lawall@lip6$(echo .)fr \
    --cc=akpm@linux-foundation$(echo .)org \
    --cc=arend.vanspriel@broadcom$(echo .)com \
    --cc=bjorn.andersson@linaro$(echo .)org \
    --cc=broonie@kernel$(echo .)org \
    --cc=cernekee@gmail$(echo .)com \
    --cc=chunkeey@googlemail$(echo .)com \
    --cc=cocci@systeme$(echo .)lip6.fr \
    --cc=corbet@lwn$(echo .)net \
    --cc=daniel.vetter@ffwll$(echo .)ch \
    --cc=daniel.wagner@bmw-carit$(echo .)de \
    --cc=dhowells@redhat$(echo .)com \
    --cc=dmitry.torokhov@gmail$(echo .)com \
    --cc=dwmw2@infradead$(echo .)org \
    --cc=fengguang.wu@intel$(echo .)com \
    --cc=gregkh@linuxfoundation$(echo .)org \
    --cc=hauke@hauke-m$(echo .)de \
    --cc=j.anaszewski@samsung$(echo .)com \
    --cc=johannes@sipsolutions$(echo .)net \
    --cc=jslaby@suse$(echo .)com \
    --cc=jwboyer@fedoraproject$(echo .)org \
    --cc=keescook@chromium$(echo .)org \
    --cc=kvalo@codeaurora$(echo .)org \
    --cc=linux-doc@vger$(echo .)kernel.org \
    --cc=linux-kernel@vger$(echo .)kernel.org \
    --cc=linux-serial@vger$(echo .)kernel.org \
    --cc=linuxppc-dev@lists$(echo .)ozlabs.org \
    --cc=luto@amacapital$(echo .)net \
    --cc=markivx@codeaurora$(echo .)org \
    --cc=martinez@nsup$(echo .)org \
    --cc=mcgrof@kernel$(echo .)org \
    --cc=ming.lei@canonical$(echo .)com \
    --cc=mmarek@suse$(echo .)com \
    --cc=nicolas.palix@imag$(echo .)fr \
    --cc=rpurdie@rpsys$(echo .)net \
    --cc=rubini@gnudd$(echo .)com \
    --cc=stephen.boyd@linaro$(echo .)org \
    --cc=teg@jklm$(echo .)no \
    --cc=tiwai@suse$(echo .)de \
    --cc=torvalds@linux-foundation$(echo .)org \
    --cc=zohar@linux$(echo .)vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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