2017-08-25 16:45:14

by Colin King

[permalink] [raw]
Subject: [PATCH] tpm_tis: make array cmd_getticks static const to shink object code size

From: Colin Ian King <[email protected]>

Don't populate array cmd_getticks on the stack, instead make it static
const. Makes the object code smaller by over 160 bytes:

Before:
text data bss dec hex filename
18813 3152 128 22093 564d drivers/char/tpm/tpm_tis_core.o

After:
text data bss dec hex filename
18554 3248 128 21930 55aa drivers/char/tpm/tpm_tis_core.o

Signed-off-by: Colin Ian King <[email protected]>
---
drivers/char/tpm/tpm_tis_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/char/tpm/tpm_tis_core.c b/drivers/char/tpm/tpm_tis_core.c
index 63bc6c3b949e..1e957e923d21 100644
--- a/drivers/char/tpm/tpm_tis_core.c
+++ b/drivers/char/tpm/tpm_tis_core.c
@@ -445,7 +445,7 @@ static int probe_itpm(struct tpm_chip *chip)
{
struct tpm_tis_data *priv = dev_get_drvdata(&chip->dev);
int rc = 0;
- u8 cmd_getticks[] = {
+ static const u8 cmd_getticks[] = {
0x00, 0xc1, 0x00, 0x00, 0x00, 0x0a,
0x00, 0x00, 0x00, 0xf1
};
--
2.14.1


2017-08-25 16:52:56

by Jason Gunthorpe

[permalink] [raw]
Subject: Re: [PATCH] tpm_tis: make array cmd_getticks static const to shink object code size

On Fri, Aug 25, 2017 at 05:45:05PM +0100, Colin King wrote:
> From: Colin Ian King <[email protected]>
>
> Don't populate array cmd_getticks on the stack, instead make it static
> const. Makes the object code smaller by over 160 bytes:
>
> Before:
> text data bss dec hex filename
> 18813 3152 128 22093 564d drivers/char/tpm/tpm_tis_core.o
>
> After:
> text data bss dec hex filename
> 18554 3248 128 21930 55aa drivers/char/tpm/tpm_tis_core.o
>
> Signed-off-by: Colin Ian King <[email protected]>

Reviewed-by: Jason Gunthorpe <[email protected]>

Jason

2017-08-25 17:31:28

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH] tpm_tis: make array cmd_getticks static const to shink object code size

On Fri, Aug 25, 2017 at 10:52:42AM -0600, Jason Gunthorpe wrote:
> On Fri, Aug 25, 2017 at 05:45:05PM +0100, Colin King wrote:
> > From: Colin Ian King <[email protected]>
> >
> > Don't populate array cmd_getticks on the stack, instead make it static
> > const. Makes the object code smaller by over 160 bytes:
> >
> > Before:
> > text data bss dec hex filename
> > 18813 3152 128 22093 564d drivers/char/tpm/tpm_tis_core.o
> >
> > After:
> > text data bss dec hex filename
> > 18554 3248 128 21930 55aa drivers/char/tpm/tpm_tis_core.o
> >
> > Signed-off-by: Colin Ian King <[email protected]>
>
> Reviewed-by: Jason Gunthorpe <[email protected]>
>
> Jason

Reviewed-by: Jarkko Sakkinen <[email protected]>

/Jarkko

2017-09-06 11:31:56

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH] tpm_tis: make array cmd_getticks static const to shink object code size

On Fri, Aug 25, 2017 at 05:45:05PM +0100, Colin King wrote:
> From: Colin Ian King <[email protected]>
>
> Don't populate array cmd_getticks on the stack, instead make it static
> const. Makes the object code smaller by over 160 bytes:
>
> Before:
> text data bss dec hex filename
> 18813 3152 128 22093 564d drivers/char/tpm/tpm_tis_core.o
>
> After:
> text data bss dec hex filename
> 18554 3248 128 21930 55aa drivers/char/tpm/tpm_tis_core.o
>
> Signed-off-by: Colin Ian King <[email protected]>
> ---
> drivers/char/tpm/tpm_tis_core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/char/tpm/tpm_tis_core.c b/drivers/char/tpm/tpm_tis_core.c
> index 63bc6c3b949e..1e957e923d21 100644
> --- a/drivers/char/tpm/tpm_tis_core.c
> +++ b/drivers/char/tpm/tpm_tis_core.c
> @@ -445,7 +445,7 @@ static int probe_itpm(struct tpm_chip *chip)
> {
> struct tpm_tis_data *priv = dev_get_drvdata(&chip->dev);
> int rc = 0;
> - u8 cmd_getticks[] = {
> + static const u8 cmd_getticks[] = {
> 0x00, 0xc1, 0x00, 0x00, 0x00, 0x0a,
> 0x00, 0x00, 0x00, 0xf1
> };
> --
> 2.14.1
>

Applied.

/Jarkko