Re: [PATCH] misc: genwqe: fix compile warnings

From: Greg KH
Date: Thu Dec 05 2019 - 06:45:17 EST


On Thu, Dec 05, 2019 at 07:16:55PM +0800, Hongbo Yao wrote:
> Using the following command will get compile warnings:
> make W=1 drivers/misc/genwqe/card_ddcb.o ARCH=x86_64
>
> drivers/misc/genwqe/card_ddcb.c: In function setup_ddcb_queue:
> drivers/misc/genwqe/card_ddcb.c:1024:6: warning: variable rc set but not
> used [-Wunused-but-set-variable]
> drivers/misc/genwqe/card_ddcb.c: In function genwqe_card_thread:
> drivers/misc/genwqe/card_ddcb.c:1190:23: warning: variable rc set but
> not used [-Wunused-but-set-variable]
>
> Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
> Signed-off-by: Hongbo Yao <yaohongbo@xxxxxxxxxx>
> ---
> drivers/misc/genwqe/card_ddcb.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/misc/genwqe/card_ddcb.c b/drivers/misc/genwqe/card_ddcb.c
> index 026c6ca24540..905106579935 100644
> --- a/drivers/misc/genwqe/card_ddcb.c
> +++ b/drivers/misc/genwqe/card_ddcb.c
> @@ -1084,7 +1084,7 @@ static int setup_ddcb_queue(struct genwqe_dev *cd, struct ddcb_queue *queue)
> queue->ddcb_daddr);
> queue->ddcb_vaddr = NULL;
> queue->ddcb_daddr = 0ull;
> - return -ENODEV;
> + return rc;
>
> }
>
> @@ -1179,7 +1179,7 @@ static irqreturn_t genwqe_vf_isr(int irq, void *dev_id)
> */
> static int genwqe_card_thread(void *data)
> {
> - int should_stop = 0, rc = 0;
> + int should_stop = 0;
> struct genwqe_dev *cd = (struct genwqe_dev *)data;
>
> while (!kthread_should_stop()) {
> @@ -1187,12 +1187,12 @@ static int genwqe_card_thread(void *data)
> genwqe_check_ddcb_queue(cd, &cd->queue);
>
> if (GENWQE_POLLING_ENABLED) {
> - rc = wait_event_interruptible_timeout(
> + wait_event_interruptible_timeout(
> cd->queue_waitq,
> genwqe_ddcbs_in_flight(cd) ||
> (should_stop = kthread_should_stop()), 1);
> } else {
> - rc = wait_event_interruptible_timeout(
> + wait_event_interruptible_timeout(
> cd->queue_waitq,
> genwqe_next_ddcb_ready(cd) ||
> (should_stop = kthread_should_stop()), HZ);

Why ignore the return value of these functions?

SHouldn't you fix the code to handle it properly?

thanks,

greg k-h