All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Bolle <pebolle@tiscali.nl>
To: Herbert Xu <herbert@gondor.apana.org.au>
Cc: "Luis R. Rodriguez" <mcgrof@do-not-panic.com>,
	rusty@rustcorp.com.au, dhowells@redhat.com,
	ming.lei@canonical.com, seth.forshee@canonical.com,
	kyle@kernel.org, akpm@linux-foundation.org,
	gregkh@linuxfoundation.org, keescook@chromium.org,
	casey@schaufler-ca.com, tiwai@suse.de, mjg59@srcf.ucam.org,
	wireless-regdb@lists.infradead.org,
	linux-wireless@vger.kernel.org, jlee@suse.com,
	linux-kernel@vger.kernel.org,
	"Luis R. Rodriguez" <mcgrof@suse.com>,
	Bruce Allan <bruce.w.allan@intel.com>,
	Tadeusz Struk <tadeusz.struk@intel.com>,
	John Griffin <john.griffin@intel.com>
Subject: Re: [PATCH v1 03/12] crypto: qat - address recursive dependency when fw signing is enabled
Date: Thu, 07 May 2015 10:42:17 +0200	[thread overview]
Message-ID: <1430988137.8171.58.camel@x220> (raw)
In-Reply-To: <20150506033330.GA16470@gondor.apana.org.au>

On Wed, 2015-05-06 at 11:33 +0800, Herbert Xu wrote:
> On Tue, May 05, 2015 at 05:44:21PM -0700, Luis R. Rodriguez wrote:
> > From: "Luis R. Rodriguez" <mcgrof@suse.com>
> > 
> > We're going to add firmware module signing support, but when we do
> > this we end up with the following recursive dependency. Fix this by
> > just depending on FW_LOADER, which is typically always enabled
> > anyway.
> > 
> > mcgrof@ergon ~/linux-next (git::master)$ make allnoconfig
> > scripts/kconfig/conf  --allnoconfig Kconfig
> > crypto/Kconfig:15:error: recursive dependency detected!
> > crypto/Kconfig:15:      symbol CRYPTO is selected by SYSDATA_SIG
> > init/Kconfig:1880:      symbol SYSDATA_SIG is selected by FIRMWARE_SIG
> > drivers/base/Kconfig:88:        symbol FIRMWARE_SIG depends on FW_LOADER
> > drivers/base/Kconfig:80:        symbol FW_LOADER is selected by CRYPTO_DEV_QAT
> > drivers/crypto/qat/Kconfig:1:   symbol CRYPTO_DEV_QAT is selected by CRYPTO_DEV_QAT_DH895xCC
> > drivers/crypto/qat/Kconfig:13:  symbol CRYPTO_DEV_QAT_DH895xCC depends on CRYPTO
> 
> This doesn't look like a real cycle to me so perhaps we can fix
> kbuild to understand this?

(Dependency circles involving selects still hurt my brain.)

Perhaps Luis should have another look at 02/12. See that patch adds this
Kconfig entry to init/Kconfig:
    config SYSDATA_SIG
	def_bool y
	select SYSTEM_TRUSTED_KEYRING
	select KEYS
	select CRYPTO
	select ASYMMETRIC_KEY_TYPE
	select ASYMMETRIC_PUBLIC_KEY_SUBTYPE
	select PUBLIC_KEY_ALGO_RSA
	select ASN1
	select OID_REGISTRY
	select X509_CERTIFICATE_PARSER

As far as I can see this is not enclosed in anything that adds any
dependencies. So that basically means that SYSDATA_SIG will always be
set, for all architectures (because I think all arches source
init/Kconfig). That should make it a pretty pointless symbol (except for
the fact that it does trigger all those selects).

The same patch also adds
	select SYSDATA_SIG

to the entry for MODULE_SIG. But to me that looks like a nop, because
SYSDATA_SIG will be set anyhow. So, but this is just I guess, the
problem might go away if
	def_bool y

is changed to just
	bool

(Note that I haven't actually tested anything here, and it wouldn't be
the first time my reasoning about Kconfig patches is completely off.)

And, whatever the value of my analysis, adding a Kconfig problem in
02/12 just to fix it in 03/12 is a bit silly. I think the patches should
be squashed if the problem can't be solved any other way.


Paul Bolle


WARNING: multiple messages have this Message-ID (diff)
From: Paul Bolle <pebolle@tiscali.nl>
To: Herbert Xu <herbert@gondor.apana.org.au>
Cc: mjg59@srcf.ucam.org, kyle@kernel.org,
	wireless-regdb@lists.infradead.org, keescook@chromium.org,
	"Luis R. Rodriguez" <mcgrof@do-not-panic.com>,
	tiwai@suse.de, gregkh@linuxfoundation.org,
	ming.lei@canonical.com, rusty@rustcorp.com.au,
	linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org,
	Tadeusz Struk <tadeusz.struk@intel.com>,
	John Griffin <john.griffin@intel.com>,
	dhowells@redhat.com, seth.forshee@canonical.com,
	Bruce Allan <bruce.w.allan@intel.com>,
	casey@schaufler-ca.com, akpm@linux-foundation.org,
	"Luis R. Rodriguez" <mcgrof@suse.com>,
	jlee@suse.com
Subject: Re: [wireless-regdb] [PATCH v1 03/12] crypto: qat - address recursive dependency when fw signing is enabled
Date: Thu, 07 May 2015 10:42:17 +0200	[thread overview]
Message-ID: <1430988137.8171.58.camel@x220> (raw)
In-Reply-To: <20150506033330.GA16470@gondor.apana.org.au>

On Wed, 2015-05-06 at 11:33 +0800, Herbert Xu wrote:
> On Tue, May 05, 2015 at 05:44:21PM -0700, Luis R. Rodriguez wrote:
> > From: "Luis R. Rodriguez" <mcgrof@suse.com>
> > 
> > We're going to add firmware module signing support, but when we do
> > this we end up with the following recursive dependency. Fix this by
> > just depending on FW_LOADER, which is typically always enabled
> > anyway.
> > 
> > mcgrof@ergon ~/linux-next (git::master)$ make allnoconfig
> > scripts/kconfig/conf  --allnoconfig Kconfig
> > crypto/Kconfig:15:error: recursive dependency detected!
> > crypto/Kconfig:15:      symbol CRYPTO is selected by SYSDATA_SIG
> > init/Kconfig:1880:      symbol SYSDATA_SIG is selected by FIRMWARE_SIG
> > drivers/base/Kconfig:88:        symbol FIRMWARE_SIG depends on FW_LOADER
> > drivers/base/Kconfig:80:        symbol FW_LOADER is selected by CRYPTO_DEV_QAT
> > drivers/crypto/qat/Kconfig:1:   symbol CRYPTO_DEV_QAT is selected by CRYPTO_DEV_QAT_DH895xCC
> > drivers/crypto/qat/Kconfig:13:  symbol CRYPTO_DEV_QAT_DH895xCC depends on CRYPTO
> 
> This doesn't look like a real cycle to me so perhaps we can fix
> kbuild to understand this?

(Dependency circles involving selects still hurt my brain.)

Perhaps Luis should have another look at 02/12. See that patch adds this
Kconfig entry to init/Kconfig:
    config SYSDATA_SIG
	def_bool y
	select SYSTEM_TRUSTED_KEYRING
	select KEYS
	select CRYPTO
	select ASYMMETRIC_KEY_TYPE
	select ASYMMETRIC_PUBLIC_KEY_SUBTYPE
	select PUBLIC_KEY_ALGO_RSA
	select ASN1
	select OID_REGISTRY
	select X509_CERTIFICATE_PARSER

As far as I can see this is not enclosed in anything that adds any
dependencies. So that basically means that SYSDATA_SIG will always be
set, for all architectures (because I think all arches source
init/Kconfig). That should make it a pretty pointless symbol (except for
the fact that it does trigger all those selects).

The same patch also adds
	select SYSDATA_SIG

to the entry for MODULE_SIG. But to me that looks like a nop, because
SYSDATA_SIG will be set anyhow. So, but this is just I guess, the
problem might go away if
	def_bool y

is changed to just
	bool

(Note that I haven't actually tested anything here, and it wouldn't be
the first time my reasoning about Kconfig patches is completely off.)

And, whatever the value of my analysis, adding a Kconfig problem in
02/12 just to fix it in 03/12 is a bit silly. I think the patches should
be squashed if the problem can't be solved any other way.


Paul Bolle


_______________________________________________
wireless-regdb mailing list
wireless-regdb@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/wireless-regdb


  reply	other threads:[~2015-05-07  8:42 UTC|newest]

Thread overview: 80+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-06  0:44 [RFC v1 00/12] kernel/firmware/wireless: firmware digital signature checks Luis R. Rodriguez
2015-05-06  0:44 ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  0:44 ` [PATCH v1 01/12] kernel/params.c: export param_ops_bool_enable_only Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-08 17:56   ` Rusty Russell
2015-05-08 17:56     ` [wireless-regdb] " Rusty Russell
2015-05-06  0:44 ` [PATCH v1 02/12] kernel: generalize module signing as system data signing Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06 12:08   ` David Howells
2015-05-06 12:08     ` [wireless-regdb] " David Howells
2015-05-07  1:07   ` Rusty Russell
2015-05-07  1:07     ` [wireless-regdb] " Rusty Russell
2015-05-06  0:44 ` [PATCH v1 03/12] crypto: qat - address recursive dependency when fw signing is enabled Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  3:33   ` Herbert Xu
2015-05-06  3:33     ` [wireless-regdb] " Herbert Xu
2015-05-07  8:42     ` Paul Bolle [this message]
2015-05-07  8:42       ` Paul Bolle
2015-05-07 18:06       ` Paul Bolle
2015-05-07 18:06         ` [wireless-regdb] " Paul Bolle
2015-05-07 18:28         ` Luis R. Rodriguez
2015-05-07 18:28           ` [wireless-regdb] " Luis R. Rodriguez
2015-05-07 20:14           ` Paul Bolle
2015-05-07 20:14             ` [wireless-regdb] " Paul Bolle
2015-05-08 21:53             ` Paul Bolle
2015-05-08 21:53               ` [wireless-regdb] " Paul Bolle
2015-05-12 16:08               ` Luis R. Rodriguez
2015-05-12 16:08                 ` [wireless-regdb] " Luis R. Rodriguez
2015-05-18 20:01         ` Luis R. Rodriguez
2015-05-18 20:01           ` [wireless-regdb] " Luis R. Rodriguez
2015-05-18 20:45           ` Paul Bolle
2015-05-18 20:45             ` [wireless-regdb] " Paul Bolle
2015-05-19  0:09             ` Luis R. Rodriguez
2015-05-19  0:09               ` [wireless-regdb] " Luis R. Rodriguez
2015-05-19  8:02               ` Paul Bolle
2015-05-19  8:02                 ` [wireless-regdb] " Paul Bolle
2015-05-19 15:46                 ` Luis R. Rodriguez
2015-05-19 15:46                   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-19 22:59                   ` Herbert Xu
2015-05-19 22:59                     ` [wireless-regdb] " Herbert Xu
2015-05-19 23:03                     ` Herbert Xu
2015-05-19 23:03                       ` [wireless-regdb] " Herbert Xu
2015-05-19 23:05                       ` Luis R. Rodriguez
2015-05-19 23:05                         ` [wireless-regdb] " Luis R. Rodriguez
2015-05-20  2:49                         ` Herbert Xu
2015-05-20  2:49                           ` [wireless-regdb] " Herbert Xu
2015-05-20  9:00                           ` Paul Bolle
2015-05-20  9:00                             ` [wireless-regdb] " Paul Bolle
2015-05-20 21:19                             ` Luis R. Rodriguez
2015-05-20 21:19                               ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  0:44 ` [PATCH v1 04/12] firmware: fix possible use after free on name on asynchronous request Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-08 19:23   ` Luis R. Rodriguez
2015-05-08 19:23     ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  0:44 ` [RFC v1 05/12] firmware: add firmware signature checking support Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06 16:57   ` David Howells
2015-05-06 16:57     ` [wireless-regdb] " David Howells
2015-05-06 17:31     ` Luis R. Rodriguez
2015-05-06 17:31       ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  0:44 ` [RFC v1 06/12] firmware: generalize "firmware" as "system data" helpers Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  0:44 ` [RFC v1 07/12] firmware: add generic system data helpers with signature support Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  0:44 ` [RFC v1 08/12] p54spi: use sysdata_file_request() for EEPROM optional system data Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  0:44 ` [RFC v1 09/12] p54: use sysdata_file_request() and sysdata_file_request_async() Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  0:44 ` [RFC v1 10/12] ath9k_htc: " Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  0:44 ` [RFC v1 11/12] iwlwifi: " Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  7:03   ` Johannes Berg
2015-05-06  7:03     ` [wireless-regdb] " Johannes Berg
2015-05-06 16:44     ` Luis R. Rodriguez
2015-05-06 16:44       ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06  0:44 ` [RFC v1 12/12] cfg80211: request for regulatory system data file Luis R. Rodriguez
2015-05-06  0:44   ` [wireless-regdb] " Luis R. Rodriguez
2015-05-06 17:55 ` [RFC v1 00/12] kernel/firmware/wireless: firmware digital signature checks Luis R. Rodriguez
2015-05-06 17:55   ` [wireless-regdb] " 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=1430988137.8171.58.camel@x220 \
    --to=pebolle@tiscali.nl \
    --cc=akpm@linux-foundation.org \
    --cc=bruce.w.allan@intel.com \
    --cc=casey@schaufler-ca.com \
    --cc=dhowells@redhat.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=herbert@gondor.apana.org.au \
    --cc=jlee@suse.com \
    --cc=john.griffin@intel.com \
    --cc=keescook@chromium.org \
    --cc=kyle@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=mcgrof@do-not-panic.com \
    --cc=mcgrof@suse.com \
    --cc=ming.lei@canonical.com \
    --cc=mjg59@srcf.ucam.org \
    --cc=rusty@rustcorp.com.au \
    --cc=seth.forshee@canonical.com \
    --cc=tadeusz.struk@intel.com \
    --cc=tiwai@suse.de \
    --cc=wireless-regdb@lists.infradead.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.