Prev: fsfreeze: freeze_super and thaw_bdev don't play well together
Next: [PATCH] ds2782: Fix ds2782_get_capacity return value
From: Valdis.Kletnieks on 14 Jun 2010 20:20 On Mon, 14 Jun 2010 13:26:44 PDT, "Justin P. Mattock" said: > Im getting this warning when compiling: > CC drivers/char/tpm/tpm.o > drivers/char/tpm/tpm.c: In function 'tpm_gen_interrupt': > drivers/char/tpm/tpm.c:508:10: warning: variable 'rc' set but not used > > The below patch gets rid of the warning, > but I'm not sure if it's the best solution. > rc = transmit_cmd(chip, &tpm_cmd, TPM_INTERNAL_RESULT_SIZE, > "attempting to determine the timeouts"); > + if (!rc) > + rc = 0; > } Good thing that's a void function. ;) Unless transmit_cmd() is marked 'must_check', maybe losing the 'rc =' would be a better solution?
From: Valdis.Kletnieks on 15 Jun 2010 00:00 On Mon, 14 Jun 2010 19:12:31 PDT, "Justin P. Mattock" said: > what I tried was this: > > if (!rc) > printk("test........"\n") > > and everything looked good, > but as a soon as I changed > > rc = transmit_cmd(chip,&tpm_cmd, TPM_INTERNAL_RESULT_SIZE, > "attempting to determine the timeouts"); > > to this: > > rc = transmit_cmd(chip,&tpm_cmd, TPM_INTERNAL_RESULT_SIZE); > > if (!rc) > printk("attempting to determine the timeouts\n"); *baffled* Why did you think that would work? transmit_cmd()s signature has 4 parameters.
From: Sergey V. on 15 Jun 2010 15:00
On Tuesday 15 of June 2010 00:26:44 Justin P. Mattock wrote: > Im getting this warning when compiling: > CC drivers/char/tpm/tpm.o > drivers/char/tpm/tpm.c: In function 'tpm_gen_interrupt': > drivers/char/tpm/tpm.c:508:10: warning: variable 'rc' set but not used > > The below patch gets rid of the warning, > but I'm not sure if it's the best solution. > > Signed-off-by: Justin P. Mattock <justinmattock(a)gmail.com> > > --- > drivers/char/tpm/tpm.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/drivers/char/tpm/tpm.c b/drivers/char/tpm/tpm.c > index 05ad4a1..3d685dc 100644 > --- a/drivers/char/tpm/tpm.c > +++ b/drivers/char/tpm/tpm.c > @@ -514,6 +514,8 @@ void tpm_gen_interrupt(struct tpm_chip *chip) > > rc = transmit_cmd(chip, &tpm_cmd, TPM_INTERNAL_RESULT_SIZE, > "attempting to determine the timeouts"); > + if (!rc) > + rc = 0; > } > EXPORT_SYMBOL_GPL(tpm_gen_interrupt); > > -- > 1.7.1.rc1.21.gf3bd6 > Hi Justin IMHO See code of functions tpm_transmit(), transmit_cmd and tpm_gen_interrupt(). In tpm_gen_interrupt() not need check rc for wrong value bacause if in function transmit_cmd() len == TPM_ERROR_SIZE then put a debug message (dev_dbg()). Again, if something wrong in tpm_transmit() then runs dev_err() and rc in tpm_gen_interrupt() get -E* value. So, we can remove unused rc variable in tpm_gen_interrupt(). See patch below. Note: I not tested it. Subject: [PATCH] drivers: tpm.c: Remove unused variable 'rc' --- drivers/char/tpm/tpm.c | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/char/tpm/tpm.c b/drivers/char/tpm/tpm.c index 05ad4a1..f9f5b47 100644 --- a/drivers/char/tpm/tpm.c +++ b/drivers/char/tpm/tpm.c @@ -505,15 +505,14 @@ ssize_t tpm_getcap(struct device *dev, __be32 subcap_id, cap_t *cap, void tpm_gen_interrupt(struct tpm_chip *chip) { struct tpm_cmd_t tpm_cmd; - ssize_t rc; tpm_cmd.header.in = tpm_getcap_header; tpm_cmd.params.getcap_in.cap = TPM_CAP_PROP; tpm_cmd.params.getcap_in.subcap_size = cpu_to_be32(4); tpm_cmd.params.getcap_in.subcap = TPM_CAP_PROP_TIS_TIMEOUT; - rc = transmit_cmd(chip, &tpm_cmd, TPM_INTERNAL_RESULT_SIZE, - "attempting to determine the timeouts"); + transmit_cmd(chip, &tpm_cmd, TPM_INTERNAL_RESULT_SIZE, + "attempting to determine the timeouts"); } EXPORT_SYMBOL_GPL(tpm_gen_interrupt); -- 1.7.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |