Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1442948 > unrolled thread

Re: [PATCH v2 0/5] firmware: add SmPL grammar to avoid issues

Started byFengguang Wu <fengguang.wu@intel.com>
First post2016-07-14 02:00 +0200
Last post2016-07-14 05:40 +0200
Articles 5 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH v2 0/5] firmware: add SmPL grammar to avoid issues Fengguang Wu <fengguang.wu@intel.com> - 2016-07-14 02:00 +0200
    Re: [PATCH v2 0/5] firmware: add SmPL grammar to avoid issues "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-07-14 04:20 +0200
      Re: [PATCH v2 0/5] firmware: add SmPL grammar to avoid issues Fengguang Wu <fengguang.wu@intel.com> - 2016-07-14 04:30 +0200
        Re: [PATCH v2 0/5] firmware: add SmPL grammar to avoid issues "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-07-14 05:10 +0200
          Re: [PATCH v2 0/5] firmware: add SmPL grammar to avoid issues Fengguang Wu <fengguang.wu@intel.com> - 2016-07-14 05:40 +0200

#1442948 — Re: [PATCH v2 0/5] firmware: add SmPL grammar to avoid issues

FromFengguang Wu <fengguang.wu@intel.com>
Date2016-07-14 02:00 +0200
SubjectRe: [PATCH v2 0/5] firmware: add SmPL grammar to avoid issues
Message-ID<rUCel-1CC-9@gated-at.bofh.it>
Hi Luis,

On Thu, Jul 07, 2016 at 02:56:44AM +0200, Luis R. Rodriguez wrote:
>On Thu, Jun 16, 2016 at 03:54:16PM -0700, Luis R. Rodriguez wrote:
>> The firmware API has had some issues a while ago, some of this is
>> not well documented, and its still hard to grasp. This documents
>> some of these issues, adds SmPL grammar rules to enable us to hunt
>> for issues, and annotations to help us with our effort to finally
>> compartamentalize that pesky usermode helper.
>>
>> Previously this was just one patch, the grammar rule to help
>> find request firmware API users on init or probe, this series
>> extends that effort with usermode helper grammar rules, and some
>> annotations and documentation on the firmware_class driver to
>> avoid further issues. Documenting the usermode helper and making
>> it clear why we cannot remove it is important for analysis for
>> the next series which adds the new flexible sysdata firmware API.
>>
>> This series depends on the coccicheck series which enables
>> annotations on coccinelle patches to require a specific
>> version of coccinelle [0], as such coordination with Michal is
>> in order.
>
>Michal is out until July 11, and upon further thought such coordination
>is not need, the annotation is in place as comments and as such
>merging this now won't have any negative effects other than the version
>check. Also the patches in question for the coccicheck change are all
>acked now and I expect them to be merged anyway.
>
>Which tree should firmware changes go through ?

>> This series is also further extended next with the new sydata
>> API, the full set of changes is available on my linux-next tree [1].
>>
>> Perhaps now a good time to discuss -- if 0-day should enable the rule
>> scripts/coccinelle/api/request_firmware-usermode.cocci to be called on
>> every 0-day iteration, it runs rather fast and it should help police
>> against avoiding futher explicit users of the usermode helper.
>
>And if we are going to merge this anyone oppose enabling hunting
>for further explicit users of the usermode helper using grammar through
>0-day ?

When *.cocci scripts lands upstream they'll be auto picked up by the
0-day bot to guard new patches/commits. Are there further steps 0-day
should do for request_firmware-upstream.cocci?

Thanks,
Fengguang

>>
>> [0] https://lkml.kernel.org/r/1466116292-21843-1-git-send-email-mcgrof@kernel.org
>> [1] https://git.kernel.org/cgit/linux/kernel/git/mcgrof/linux-next.git/log/?h=20160616-sysdata-v2
>>
>> Luis R. Rodriguez (5):
>>   MAINTAINERS: extend firmware_class maintainer list
>>   firmware: annotate thou shalt not request fw on init or probe
>>   firmware: update usermode helper docs and add SmPL report
>>   firmware: add usermode helper DECLARE_FW_LOADER_USER() annotation
>>   firmware: fix fw cache to avoid usermode helper on suspend
>>
>>  Documentation/firmware_class/README                |  59 +++++++++-
>>  MAINTAINERS                                        |   1 +
>>  drivers/base/Kconfig                               |   2 +-
>>  drivers/base/firmware_class.c                      |   2 +-
>>  drivers/firmware/dell_rbu.c                        |   1 +
>>  drivers/leds/leds-lp55xx-common.c                  |   1 +
>>  include/linux/firmware.h                           |   7 ++
>>  .../request_firmware-avoid-init-probe-init.cocci   | 130 +++++++++++++++++++++
>>  .../coccinelle/api/request_firmware-usermode.cocci |  44 +++++++
>>  9 files changed, 240 insertions(+), 7 deletions(-)
>>  create mode 100644 scripts/coccinelle/api/request_firmware-avoid-init-probe-init.cocci
>>  create mode 100644 scripts/coccinelle/api/request_firmware-usermode.cocci
>>
>> --
>> 2.8.2
>>
>>
>
>-- 
>Luis Rodriguez, SUSE LINUX GmbH
>Maxfeldstrasse 5; D-90409 Nuernberg

[toc] | [next] | [standalone]


#1443006

From"Luis R. Rodriguez" <mcgrof@kernel.org>
Date2016-07-14 04:20 +0200
Message-ID<rUEpQ-3ke-11@gated-at.bofh.it>
In reply to#1442948
On Thu, Jul 14, 2016 at 07:52:07AM +0800, Fengguang Wu wrote:
> Hi Luis,
> 
> On Thu, Jul 07, 2016 at 02:56:44AM +0200, Luis R. Rodriguez wrote:
> >On Thu, Jun 16, 2016 at 03:54:16PM -0700, Luis R. Rodriguez wrote:
> >>The firmware API has had some issues a while ago, some of this is
> >>not well documented, and its still hard to grasp. This documents
> >>some of these issues, adds SmPL grammar rules to enable us to hunt
> >>for issues, and annotations to help us with our effort to finally
> >>compartamentalize that pesky usermode helper.
> >>
> >>Previously this was just one patch, the grammar rule to help
> >>find request firmware API users on init or probe, this series
> >>extends that effort with usermode helper grammar rules, and some
> >>annotations and documentation on the firmware_class driver to
> >>avoid further issues. Documenting the usermode helper and making
> >>it clear why we cannot remove it is important for analysis for
> >>the next series which adds the new flexible sysdata firmware API.
> >>
> >>This series depends on the coccicheck series which enables
> >>annotations on coccinelle patches to require a specific
> >>version of coccinelle [0], as such coordination with Michal is
> >>in order.
> >
> >Michal is out until July 11, and upon further thought such coordination
> >is not need, the annotation is in place as comments and as such
> >merging this now won't have any negative effects other than the version
> >check. Also the patches in question for the coccicheck change are all
> >acked now and I expect them to be merged anyway.
> >
> >Which tree should firmware changes go through ?
> 
> >>This series is also further extended next with the new sydata
> >>API, the full set of changes is available on my linux-next tree [1].
> >>
> >>Perhaps now a good time to discuss -- if 0-day should enable the rule
> >>scripts/coccinelle/api/request_firmware-usermode.cocci to be called on
> >>every 0-day iteration, it runs rather fast and it should help police
> >>against avoiding futher explicit users of the usermode helper.
> >
> >And if we are going to merge this anyone oppose enabling hunting
> >for further explicit users of the usermode helper using grammar through
> >0-day ?
> 
> When *.cocci scripts lands upstream they'll be auto picked up by the
> 0-day bot to guard new patches/commits.

Great thanks!

> Are there further steps 0-day should do for request_firmware-upstream.cocci?

It just requires coccinelle >= 1.0.5.

  Luis

[toc] | [prev] | [next] | [standalone]


#1443014

FromFengguang Wu <fengguang.wu@intel.com>
Date2016-07-14 04:30 +0200
Message-ID<rUEzw-3o6-17@gated-at.bofh.it>
In reply to#1443006
On Thu, Jul 14, 2016 at 04:15:01AM +0200, Luis R. Rodriguez wrote:
>On Thu, Jul 14, 2016 at 07:52:07AM +0800, Fengguang Wu wrote:
>> Hi Luis,
>>
>> On Thu, Jul 07, 2016 at 02:56:44AM +0200, Luis R. Rodriguez wrote:
>> >On Thu, Jun 16, 2016 at 03:54:16PM -0700, Luis R. Rodriguez wrote:
>> >>The firmware API has had some issues a while ago, some of this is
>> >>not well documented, and its still hard to grasp. This documents
>> >>some of these issues, adds SmPL grammar rules to enable us to hunt
>> >>for issues, and annotations to help us with our effort to finally
>> >>compartamentalize that pesky usermode helper.
>> >>
>> >>Previously this was just one patch, the grammar rule to help
>> >>find request firmware API users on init or probe, this series
>> >>extends that effort with usermode helper grammar rules, and some
>> >>annotations and documentation on the firmware_class driver to
>> >>avoid further issues. Documenting the usermode helper and making
>> >>it clear why we cannot remove it is important for analysis for
>> >>the next series which adds the new flexible sysdata firmware API.
>> >>
>> >>This series depends on the coccicheck series which enables
>> >>annotations on coccinelle patches to require a specific
>> >>version of coccinelle [0], as such coordination with Michal is
>> >>in order.
>> >
>> >Michal is out until July 11, and upon further thought such coordination
>> >is not need, the annotation is in place as comments and as such
>> >merging this now won't have any negative effects other than the version
>> >check. Also the patches in question for the coccicheck change are all
>> >acked now and I expect them to be merged anyway.
>> >
>> >Which tree should firmware changes go through ?
>>
>> >>This series is also further extended next with the new sydata
>> >>API, the full set of changes is available on my linux-next tree [1].
>> >>
>> >>Perhaps now a good time to discuss -- if 0-day should enable the rule
>> >>scripts/coccinelle/api/request_firmware-usermode.cocci to be called on
>> >>every 0-day iteration, it runs rather fast and it should help police
>> >>against avoiding futher explicit users of the usermode helper.
>> >
>> >And if we are going to merge this anyone oppose enabling hunting
>> >for further explicit users of the usermode helper using grammar through
>> >0-day ?
>>
>> When *.cocci scripts lands upstream they'll be auto picked up by the
>> 0-day bot to guard new patches/commits.
>
>Great thanks!
>
>> Are there further steps 0-day should do for request_firmware-upstream.cocci?
>
>It just requires coccinelle >= 1.0.5.

That looks easy. When do you estimate the script will land upstream?
So we can make sure upgrade coccinelle before that time.

Thanks,
Fengguang

[toc] | [prev] | [next] | [standalone]


#1443038

From"Luis R. Rodriguez" <mcgrof@kernel.org>
Date2016-07-14 05:10 +0200
Message-ID<rUFcd-3T9-5@gated-at.bofh.it>
In reply to#1443014
On Thu, Jul 14, 2016 at 10:23:36AM +0800, Fengguang Wu wrote:
> On Thu, Jul 14, 2016 at 04:15:01AM +0200, Luis R. Rodriguez wrote:
> >On Thu, Jul 14, 2016 at 07:52:07AM +0800, Fengguang Wu wrote:
> >>Hi Luis,
> >>
> >>On Thu, Jul 07, 2016 at 02:56:44AM +0200, Luis R. Rodriguez wrote:
> >>>On Thu, Jun 16, 2016 at 03:54:16PM -0700, Luis R. Rodriguez wrote:
> >>>>The firmware API has had some issues a while ago, some of this is
> >>>>not well documented, and its still hard to grasp. This documents
> >>>>some of these issues, adds SmPL grammar rules to enable us to hunt
> >>>>for issues, and annotations to help us with our effort to finally
> >>>>compartamentalize that pesky usermode helper.
> >>>>
> >>>>Previously this was just one patch, the grammar rule to help
> >>>>find request firmware API users on init or probe, this series
> >>>>extends that effort with usermode helper grammar rules, and some
> >>>>annotations and documentation on the firmware_class driver to
> >>>>avoid further issues. Documenting the usermode helper and making
> >>>>it clear why we cannot remove it is important for analysis for
> >>>>the next series which adds the new flexible sysdata firmware API.
> >>>>
> >>>>This series depends on the coccicheck series which enables
> >>>>annotations on coccinelle patches to require a specific
> >>>>version of coccinelle [0], as such coordination with Michal is
> >>>>in order.
> >>>
> >>>Michal is out until July 11, and upon further thought such coordination
> >>>is not need, the annotation is in place as comments and as such
> >>>merging this now won't have any negative effects other than the version
> >>>check. Also the patches in question for the coccicheck change are all
> >>>acked now and I expect them to be merged anyway.
> >>>
> >>>Which tree should firmware changes go through ?
> >>
> >>>>This series is also further extended next with the new sydata
> >>>>API, the full set of changes is available on my linux-next tree [1].
> >>>>
> >>>>Perhaps now a good time to discuss -- if 0-day should enable the rule
> >>>>scripts/coccinelle/api/request_firmware-usermode.cocci to be called on
> >>>>every 0-day iteration, it runs rather fast and it should help police
> >>>>against avoiding futher explicit users of the usermode helper.
> >>>
> >>>And if we are going to merge this anyone oppose enabling hunting
> >>>for further explicit users of the usermode helper using grammar through
> >>>0-day ?
> >>
> >>When *.cocci scripts lands upstream they'll be auto picked up by the
> >>0-day bot to guard new patches/commits.
> >
> >Great thanks!
> >
> >>Are there further steps 0-day should do for request_firmware-upstream.cocci?
> >
> >It just requires coccinelle >= 1.0.5.
> 
> That looks easy. 

Nice!

> When do you estimate the script will land upstream?

Well, this series has gone by a while now without any complaints, so
I was poking to see if they can be merged now.

> So we can make sure upgrade coccinelle before that time.

There is another series which modernizes coccicheck [0] for which I just poked
at as a well [1], one change which may be of importance to you is groks the
Requires: tag on top of an SmPL patch, with that we simply just skip an SmPL
patch if the version of coccinelle is older than the one specified, with that
in place you can just upgrade when you want -- you'd just gain support for more
SmPL patches when you do. Without that coccinelle would not work (fail) on the
SmPL patch when tried. For this reason I originally had suggested perhaps
this series should be carried by Michal.

[0] https://lkml.kernel.org/r/1467238499-10889-1-git-send-email-mcgrof@kernel.org
[1] https://lkml.kernel.org/r/20160713214539.GE6239@wotan.suse.de

  Luis

[toc] | [prev] | [next] | [standalone]


#1443052

FromFengguang Wu <fengguang.wu@intel.com>
Date2016-07-14 05:40 +0200
Message-ID<rUFFg-43M-15@gated-at.bofh.it>
In reply to#1443038
On Thu, Jul 14, 2016 at 05:08:12AM +0200, Luis R. Rodriguez wrote:
>On Thu, Jul 14, 2016 at 10:23:36AM +0800, Fengguang Wu wrote:
>> On Thu, Jul 14, 2016 at 04:15:01AM +0200, Luis R. Rodriguez wrote:
>> >On Thu, Jul 14, 2016 at 07:52:07AM +0800, Fengguang Wu wrote:
>> >>Hi Luis,
>> >>
>> >>On Thu, Jul 07, 2016 at 02:56:44AM +0200, Luis R. Rodriguez wrote:
>> >>>On Thu, Jun 16, 2016 at 03:54:16PM -0700, Luis R. Rodriguez wrote:
>> >>>>The firmware API has had some issues a while ago, some of this is
>> >>>>not well documented, and its still hard to grasp. This documents
>> >>>>some of these issues, adds SmPL grammar rules to enable us to hunt
>> >>>>for issues, and annotations to help us with our effort to finally
>> >>>>compartamentalize that pesky usermode helper.
>> >>>>
>> >>>>Previously this was just one patch, the grammar rule to help
>> >>>>find request firmware API users on init or probe, this series
>> >>>>extends that effort with usermode helper grammar rules, and some
>> >>>>annotations and documentation on the firmware_class driver to
>> >>>>avoid further issues. Documenting the usermode helper and making
>> >>>>it clear why we cannot remove it is important for analysis for
>> >>>>the next series which adds the new flexible sysdata firmware API.
>> >>>>
>> >>>>This series depends on the coccicheck series which enables
>> >>>>annotations on coccinelle patches to require a specific
>> >>>>version of coccinelle [0], as such coordination with Michal is
>> >>>>in order.
>> >>>
>> >>>Michal is out until July 11, and upon further thought such coordination
>> >>>is not need, the annotation is in place as comments and as such
>> >>>merging this now won't have any negative effects other than the version
>> >>>check. Also the patches in question for the coccicheck change are all
>> >>>acked now and I expect them to be merged anyway.
>> >>>
>> >>>Which tree should firmware changes go through ?
>> >>
>> >>>>This series is also further extended next with the new sydata
>> >>>>API, the full set of changes is available on my linux-next tree [1].
>> >>>>
>> >>>>Perhaps now a good time to discuss -- if 0-day should enable the rule
>> >>>>scripts/coccinelle/api/request_firmware-usermode.cocci to be called on
>> >>>>every 0-day iteration, it runs rather fast and it should help police
>> >>>>against avoiding futher explicit users of the usermode helper.
>> >>>
>> >>>And if we are going to merge this anyone oppose enabling hunting
>> >>>for further explicit users of the usermode helper using grammar through
>> >>>0-day ?
>> >>
>> >>When *.cocci scripts lands upstream they'll be auto picked up by the
>> >>0-day bot to guard new patches/commits.
>> >
>> >Great thanks!
>> >
>> >>Are there further steps 0-day should do for request_firmware-upstream.cocci?
>> >
>> >It just requires coccinelle >= 1.0.5.
>>
>> That looks easy.
>
>Nice!
>
>> When do you estimate the script will land upstream?
>
>Well, this series has gone by a while now without any complaints, so
>I was poking to see if they can be merged now.

OK.

>> So we can make sure upgrade coccinelle before that time.
>
>There is another series which modernizes coccicheck [0] for which I just poked
>at as a well [1], one change which may be of importance to you is groks the
>Requires: tag on top of an SmPL patch, with that we simply just skip an SmPL
>patch if the version of coccinelle is older than the one specified, with that
>in place you can just upgrade when you want -- you'd just gain support for more
>SmPL patches when you do. Without that coccinelle would not work (fail) on the
>SmPL patch when tried. For this reason I originally had suggested perhaps
>this series should be carried by Michal.
>
>[0] https://lkml.kernel.org/r/1467238499-10889-1-git-send-email-mcgrof@kernel.org
>[1] https://lkml.kernel.org/r/20160713214539.GE6239@wotan.suse.de

It's glad to know these improvements. We'll watch their progress and
keep up in time. :)

Thanks,
Fengguang

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web