Messages in this thread | | | Subject | Re: [PATCH] soundwire: qcom: use signed variable for error return | From | Pierre-Louis Bossart <> | Date | Wed, 31 Mar 2021 09:41:24 -0500 |
| |
On 3/31/21 2:21 AM, Vinod Koul wrote: > We get warning for using a unsigned variable being compared to less than > zero. The comparison is correct as it checks for errors from previous > call to qcom_swrm_get_alert_slave_dev_num(), so we should use a signed > variable instead. > > drivers/soundwire/qcom.c: qcom_swrm_irq_handler() warn: impossible > condition '(devnum < 0) => (0-255 < 0)' > > Reported-by: kernel test robot <lkp@intel.com> > Signed-off-by: Vinod Koul <vkoul@kernel.org> > --- > drivers/soundwire/qcom.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/soundwire/qcom.c b/drivers/soundwire/qcom.c > index b08ecb9b418c..55ed133c6704 100644 > --- a/drivers/soundwire/qcom.c > +++ b/drivers/soundwire/qcom.c > @@ -428,7 +428,7 @@ static irqreturn_t qcom_swrm_irq_handler(int irq, void *dev_id) > struct qcom_swrm_ctrl *swrm = dev_id; > u32 value, intr_sts, intr_sts_masked, slave_status; > u32 i; > - u8 devnum = 0; > + s8 devnum = 0;
it's not great to store negative error codes with s8. That works in this specific case because the function only returns -EINVAL.
We actually have zero occurrences of s8 in the drivers/soundwire/ code.
> int ret = IRQ_HANDLED; > > swrm->reg_read(swrm, SWRM_INTERRUPT_STATUS, &intr_sts); >
| |