2012-11-29 00:20:33

by Peter Huewe

[permalink] [raw]
Subject: [PATCH] char/tpm: Use true and false for bools

Bool initializations should use true and false. Bool tests don't need
comparisons. Based on contributions from Joe Perches, Rusty Russell
and Bruce W Allan.

The semantic patch that makes this output is available
in scripts/coccinelle/misc/boolinit.cocci.

More information about semantic patching is available at
http://coccinelle.lip6.fr/

Signed-off-by: Peter Huewe <[email protected]>
---
drivers/char/tpm/tpm_tis.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
index 6bdf267..70d4ea5 100644
--- a/drivers/char/tpm/tpm_tis.c
+++ b/drivers/char/tpm/tpm_tis.c
@@ -374,7 +374,7 @@ static int probe_itpm(struct tpm_chip *chip)
if (vendor != TPM_VID_INTEL)
return 0;

- itpm = 0;
+ itpm = false;

rc = tpm_tis_send_data(chip, cmd_getticks, len);
if (rc == 0)
@@ -383,7 +383,7 @@ static int probe_itpm(struct tpm_chip *chip)
tpm_tis_ready(chip);
release_locality(chip, chip->vendor.locality, 0);

- itpm = 1;
+ itpm = true;

rc = tpm_tis_send_data(chip, cmd_getticks, len);
if (rc == 0) {
@@ -502,7 +502,7 @@ static irqreturn_t tis_int_handler(int dummy, void *dev_id)
return IRQ_HANDLED;
}

-static bool interrupts = 1;
+static bool interrupts = true;
module_param(interrupts, bool, 0444);
MODULE_PARM_DESC(interrupts, "Enable interrupts");

@@ -545,7 +545,7 @@ static int tpm_tis_init(struct device *dev, resource_size_t start,
rc = -ENODEV;
goto out_err;
}
- itpm = (probe == 0) ? 0 : 1;
+ itpm = (probe == 0) ? false : true;
}

if (itpm)
@@ -741,10 +741,10 @@ static int __devinit tpm_tis_pnp_init(struct pnp_dev *pnp_dev,
if (pnp_irq_valid(pnp_dev, 0))
irq = pnp_irq(pnp_dev, 0);
else
- interrupts = 0;
+ interrupts = false;

if (is_itpm(pnp_dev))
- itpm = 1;
+ itpm = true;

return tpm_tis_init(&pnp_dev->dev, start, len, irq);
}
--
1.7.8.6


2012-11-29 00:25:33

by Al Viro

[permalink] [raw]
Subject: Re: [PATCH] char/tpm: Use true and false for bools

On Thu, Nov 29, 2012 at 01:20:37AM +0100, Peter Huewe wrote:

> - itpm = (probe == 0) ? 0 : 1;
> + itpm = (probe == 0) ? false : true;

Charming. Not that original had been better, but...

2012-11-29 00:39:34

by Peter Huewe

[permalink] [raw]
Subject: [PATCH v2] char/tpm: Use true and false for bools

Bool initializations should use true and false. Bool tests don't need
comparisons. Based on contributions from Joe Perches, Rusty Russell
and Bruce W Allan.

The semantic patch that makes this output is available
in scripts/coccinelle/misc/boolinit.cocci.

More information about semantic patching is available at
http://coccinelle.lip6.fr/

Signed-off-by: Peter Huewe <[email protected]>
---
v2:
Removed/changed that silly itpm = (probe == 0) ? 0 : 1;
since probe is here either 0 or 1 -- thanks Al for noticing.
This section and the probing of the itpm can probably be improved anyway,
but I'll wrap that in a different patch soon.

drivers/char/tpm/tpm_tis.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
index 6bdf267..8b084e0 100644
--- a/drivers/char/tpm/tpm_tis.c
+++ b/drivers/char/tpm/tpm_tis.c
@@ -374,7 +374,7 @@ static int probe_itpm(struct tpm_chip *chip)
if (vendor != TPM_VID_INTEL)
return 0;

- itpm = 0;
+ itpm = false;

rc = tpm_tis_send_data(chip, cmd_getticks, len);
if (rc == 0)
@@ -383,7 +383,7 @@ static int probe_itpm(struct tpm_chip *chip)
tpm_tis_ready(chip);
release_locality(chip, chip->vendor.locality, 0);

- itpm = 1;
+ itpm = true;

rc = tpm_tis_send_data(chip, cmd_getticks, len);
if (rc == 0) {
@@ -502,7 +502,7 @@ static irqreturn_t tis_int_handler(int dummy, void *dev_id)
return IRQ_HANDLED;
}

-static bool interrupts = 1;
+static bool interrupts = true;
module_param(interrupts, bool, 0444);
MODULE_PARM_DESC(interrupts, "Enable interrupts");

@@ -545,7 +545,7 @@ static int tpm_tis_init(struct device *dev, resource_size_t start,
rc = -ENODEV;
goto out_err;
}
- itpm = (probe == 0) ? 0 : 1;
+ itpm = probe;
}

if (itpm)
@@ -741,10 +741,10 @@ static int __devinit tpm_tis_pnp_init(struct pnp_dev *pnp_dev,
if (pnp_irq_valid(pnp_dev, 0))
irq = pnp_irq(pnp_dev, 0);
else
- interrupts = 0;
+ interrupts = false;

if (is_itpm(pnp_dev))
- itpm = 1;
+ itpm = true;

return tpm_tis_init(&pnp_dev->dev, start, len, irq);
}
--
1.7.8.6

2012-11-29 00:42:42

by Peter Huewe

[permalink] [raw]
Subject: Re: [PATCH] char/tpm: Use true and false for bools

Am Donnerstag, 29. November 2012, 01:25:19 schrieb Al Viro:
> On Thu, Nov 29, 2012 at 01:20:37AM +0100, Peter Huewe wrote:
> > - itpm = (probe == 0) ? 0 : 1;
> > + itpm = (probe == 0) ? false : true;
>
> Charming. Not that original had been better, but...
Yeah. Sorry it's late.
The tpm subsection has a lot of nice suprises.

I changed it to itpm = probe; which is equivalent here and sent out a v2.
I'll probably rewrite that code section anytime soon.

Thanks for noticing.
Peter

2012-11-29 16:08:15

by Kent Yoder

[permalink] [raw]
Subject: Re: [PATCH] char/tpm: Use true and false for bools

On Thu, Nov 29, 2012 at 01:42:47AM +0100, Peter Huewe wrote:
> Am Donnerstag, 29. November 2012, 01:25:19 schrieb Al Viro:
> > On Thu, Nov 29, 2012 at 01:20:37AM +0100, Peter Huewe wrote:
> > > - itpm = (probe == 0) ? 0 : 1;
> > > + itpm = (probe == 0) ? false : true;
> >
> > Charming. Not that original had been better, but...
> Yeah. Sorry it's late.
> The tpm subsection has a lot of nice suprises.

:-) I'd prefer

itpm = !!probe;

Now I don't have to go look up what the possible return values of
probe_itpm() are...

Kent

> I changed it to itpm = probe; which is equivalent here and sent out a v2.
> I'll probably rewrite that code section anytime soon.
>
> Thanks for noticing.
> Peter
>

2012-11-29 21:08:35

by Peter Huewe

[permalink] [raw]
Subject: [PATCH v3] char/tpm: Use true and false for bools

Bool initializations should use true and false. Bool tests don't need
comparisons. Based on contributions from Joe Perches, Rusty Russell
and Bruce W Allan.

The semantic patch that makes this output is available
in scripts/coccinelle/misc/boolinit.cocci.

More information about semantic patching is available at
http://coccinelle.lip6.fr/

Signed-off-by: Peter Huewe <[email protected]>
---
v3 for this tiny patch... shame on me.

drivers/char/tpm/tpm_tis.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
index 6bdf267..10f0b47 100644
--- a/drivers/char/tpm/tpm_tis.c
+++ b/drivers/char/tpm/tpm_tis.c
@@ -374,7 +374,7 @@ static int probe_itpm(struct tpm_chip *chip)
if (vendor != TPM_VID_INTEL)
return 0;

- itpm = 0;
+ itpm = false;

rc = tpm_tis_send_data(chip, cmd_getticks, len);
if (rc == 0)
@@ -383,7 +383,7 @@ static int probe_itpm(struct tpm_chip *chip)
tpm_tis_ready(chip);
release_locality(chip, chip->vendor.locality, 0);

- itpm = 1;
+ itpm = true;

rc = tpm_tis_send_data(chip, cmd_getticks, len);
if (rc == 0) {
@@ -502,7 +502,7 @@ static irqreturn_t tis_int_handler(int dummy, void *dev_id)
return IRQ_HANDLED;
}

-static bool interrupts = 1;
+static bool interrupts = true;
module_param(interrupts, bool, 0444);
MODULE_PARM_DESC(interrupts, "Enable interrupts");

@@ -545,7 +545,7 @@ static int tpm_tis_init(struct device *dev, resource_size_t start,
rc = -ENODEV;
goto out_err;
}
- itpm = (probe == 0) ? 0 : 1;
+ itpm = !!probe;
}

if (itpm)
@@ -741,10 +741,10 @@ static int __devinit tpm_tis_pnp_init(struct pnp_dev *pnp_dev,
if (pnp_irq_valid(pnp_dev, 0))
irq = pnp_irq(pnp_dev, 0);
else
- interrupts = 0;
+ interrupts = false;

if (is_itpm(pnp_dev))
- itpm = 1;
+ itpm = true;

return tpm_tis_init(&pnp_dev->dev, start, len, irq);
}
--
1.7.8.6

2012-11-29 21:54:52

by Joe Perches

[permalink] [raw]
Subject: Re: [PATCH v3] char/tpm: Use true and false for bools

On Thu, 2012-11-29 at 22:08 +0100, Peter Huewe wrote:
> Bool initializations should use true and false. Bool tests don't need
> comparisons
[]
> .v3 for this tiny patch... shame on me.

Don't be silly...

> diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
[]
> @@ -545,7 +545,7 @@ static int tpm_tis_init(struct device *dev, resource_size_t start,
> rc = -ENODEV;
> goto out_err;
> }
> - itpm = (probe == 0) ? 0 : 1;
> + itpm = !!probe;

Even more trivia:

This !! isn't necessary as ints assigned to bool are converted
by the compiler to 0 or 1.

2012-11-29 22:09:08

by Kent Yoder

[permalink] [raw]
Subject: Re: [PATCH v3] char/tpm: Use true and false for bools

On Thu, Nov 29, 2012 at 01:54:52PM -0800, Joe Perches wrote:
> On Thu, 2012-11-29 at 22:08 +0100, Peter Huewe wrote:
> > Bool initializations should use true and false. Bool tests don't need
> > comparisons
> []
> > .v3 for this tiny patch... shame on me.
>
> Don't be silly...
>
> > diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
> []
> > @@ -545,7 +545,7 @@ static int tpm_tis_init(struct device *dev, resource_size_t start,
> > rc = -ENODEV;
> > goto out_err;
> > }
> > - itpm = (probe == 0) ? 0 : 1;
> > + itpm = !!probe;
>
> Even more trivia:
>
> This !! isn't necessary as ints assigned to bool are converted
> by the compiler to 0 or 1.

Good to know, thanks Joe!

Kent

>
>

2012-11-29 22:16:46

by Peter Huewe

[permalink] [raw]
Subject: Re: [PATCH v3] char/tpm: Use true and false for bools

Am Donnerstag, 29. November 2012, 23:08:11 schrieb Kent Yoder:
> On Thu, Nov 29, 2012 at 01:54:52PM -0800, Joe Perches wrote:
> > >
> > > - itpm = (probe == 0) ? 0 : 1;
> > > + itpm = !!probe;
> >
> > Even more trivia:
> >
> > This !! isn't necessary as ints assigned to bool are converted
> > by the compiler to 0 or 1.
>
> Good to know, thanks Joe!

So v2 is fine.

Peter