2016-03-16 08:20:43

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] tpm: fix tpm_bios_log_setup stub prototype

A cleanup patch changed the prototype of the regular tpm_bios_log_setup
function, but not that of the stub that is used when the TPM is disabled,
causing a harmless build warning:

drivers/char/tpm/tpm-chip.c: In function 'tpm1_chip_register':
drivers/char/tpm/tpm-chip.c:287:38: error: passing argument 1 of 'tpm_bios_log_setup' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
chip->bios_dir = tpm_bios_log_setup(dev_name(&chip->dev));
In file included from ../drivers/char/tpm/tpm-chip.c:30:0:
../drivers/char/tpm/tpm_eventlog.h:83:31: note: expected 'char *' but argument is of type 'const char *'
static inline struct dentry **tpm_bios_log_setup(char *name)

This changes the stub function to match the normal prototype,
avoiding that warning.

Signed-off-by: Arnd Bergmann <[email protected]>
Fixes: aca8db8088c3 ("tpm: Get rid of devname")
---
drivers/char/tpm/tpm_eventlog.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/char/tpm/tpm_eventlog.h b/drivers/char/tpm/tpm_eventlog.h
index cc9672f64e8f..8de62b09be51 100644
--- a/drivers/char/tpm/tpm_eventlog.h
+++ b/drivers/char/tpm/tpm_eventlog.h
@@ -80,7 +80,7 @@ int read_log(struct tpm_bios_log *log);
extern struct dentry **tpm_bios_log_setup(const char *);
extern void tpm_bios_log_teardown(struct dentry **);
#else
-static inline struct dentry **tpm_bios_log_setup(char *name)
+static inline struct dentry **tpm_bios_log_setup(const char *name)
{
return NULL;
}
--
2.7.0


2016-03-16 10:13:48

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH] tpm: fix tpm_bios_log_setup stub prototype

On Wed, Mar 16, 2016 at 09:19:48AM +0100, Arnd Bergmann wrote:
> A cleanup patch changed the prototype of the regular tpm_bios_log_setup
> function, but not that of the stub that is used when the TPM is disabled,
> causing a harmless build warning:
>
> drivers/char/tpm/tpm-chip.c: In function 'tpm1_chip_register':
> drivers/char/tpm/tpm-chip.c:287:38: error: passing argument 1 of 'tpm_bios_log_setup' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
> chip->bios_dir = tpm_bios_log_setup(dev_name(&chip->dev));
> In file included from ../drivers/char/tpm/tpm-chip.c:30:0:
> ../drivers/char/tpm/tpm_eventlog.h:83:31: note: expected 'char *' but argument is of type 'const char *'
> static inline struct dentry **tpm_bios_log_setup(char *name)
>
> This changes the stub function to match the normal prototype,
> avoiding that warning.

Good catch. Thank you.

> Signed-off-by: Arnd Bergmann <[email protected]>
> Fixes: aca8db8088c3 ("tpm: Get rid of devname")
> ---
> drivers/char/tpm/tpm_eventlog.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/char/tpm/tpm_eventlog.h b/drivers/char/tpm/tpm_eventlog.h
> index cc9672f64e8f..8de62b09be51 100644
> --- a/drivers/char/tpm/tpm_eventlog.h
> +++ b/drivers/char/tpm/tpm_eventlog.h
> @@ -80,7 +80,7 @@ int read_log(struct tpm_bios_log *log);
> extern struct dentry **tpm_bios_log_setup(const char *);
> extern void tpm_bios_log_teardown(struct dentry **);
> #else
> -static inline struct dentry **tpm_bios_log_setup(char *name)
> +static inline struct dentry **tpm_bios_log_setup(const char *name)
> {
> return NULL;
> }
> --
> 2.7.0

/Jarkko

2016-03-16 17:57:43

by Jason Gunthorpe

[permalink] [raw]
Subject: Re: [PATCH] tpm: fix tpm_bios_log_setup stub prototype

On Wed, Mar 16, 2016 at 12:13:41PM +0200, Jarkko Sakkinen wrote:
> On Wed, Mar 16, 2016 at 09:19:48AM +0100, Arnd Bergmann wrote:
> > A cleanup patch changed the prototype of the regular tpm_bios_log_setup
> > function, but not that of the stub that is used when the TPM is disabled,
> > causing a harmless build warning:
> >
> > drivers/char/tpm/tpm-chip.c: In function 'tpm1_chip_register':
> > drivers/char/tpm/tpm-chip.c:287:38: error: passing argument 1 of 'tpm_bios_log_setup' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
> > chip->bios_dir = tpm_bios_log_setup(dev_name(&chip->dev));
> > In file included from ../drivers/char/tpm/tpm-chip.c:30:0:
> > ../drivers/char/tpm/tpm_eventlog.h:83:31: note: expected 'char *' but argument is of type 'const char *'
> > static inline struct dentry **tpm_bios_log_setup(char *name)
> >
> > This changes the stub function to match the normal prototype,
> > avoiding that warning.
>
> Good catch. Thank you.

The weird thing is I already applied this hunk to the patch, an
autobuilder found it, it is right in my personal tree..

Unclear where it got dropped? Are we missing anything else in that
series? Stephen?

Jason

2016-03-16 19:18:29

by Stefan Berger

[permalink] [raw]
Subject: Re: [PATCH] tpm: fix tpm_bios_log_setup stub prototype

On 03/16/2016 01:57 PM, Jason Gunthorpe wrote:
> On Wed, Mar 16, 2016 at 12:13:41PM +0200, Jarkko Sakkinen wrote:
>> On Wed, Mar 16, 2016 at 09:19:48AM +0100, Arnd Bergmann wrote:
>>> A cleanup patch changed the prototype of the regular tpm_bios_log_setup
>>> function, but not that of the stub that is used when the TPM is disabled,
>>> causing a harmless build warning:
>>>
>>> drivers/char/tpm/tpm-chip.c: In function 'tpm1_chip_register':
>>> drivers/char/tpm/tpm-chip.c:287:38: error: passing argument 1 of 'tpm_bios_log_setup' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
>>> chip->bios_dir = tpm_bios_log_setup(dev_name(&chip->dev));
>>> In file included from ../drivers/char/tpm/tpm-chip.c:30:0:
>>> ../drivers/char/tpm/tpm_eventlog.h:83:31: note: expected 'char *' but argument is of type 'const char *'
>>> static inline struct dentry **tpm_bios_log_setup(char *name)
>>>
>>> This changes the stub function to match the normal prototype,
>>> avoiding that warning.
>> Good catch. Thank you.
> The weird thing is I already applied this hunk to the patch, an
> autobuilder found it, it is right in my personal tree..
>
> Unclear where it got dropped? Are we missing anything else in that
> series? Stephen?

If I lost it, I certainly did not drop it intentionately.

Stefan