staging: rtl8192u: fix wrong judgement in rtl8192_rx_isr
authorZhang Qilong <zhangqilong3@huawei.com>
Wed, 28 Oct 2020 12:26:48 +0000 (20:26 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 6 Nov 2020 10:02:53 +0000 (11:02 +0100)
The 'EPERM' cannot appear in the previous path, we
should use '-EPERM' to check it. For example:

Call trace:
->rtl8192_rx_isr
    ->usb_submit_urb
       ->usb_hcd_submit_urb
           ->rh_urb_enqueue
       ->rh_queue_status
           ->usb_hcd_link_urb_to_ep

Signed-off-by: Zhang Qilong <zhangqilong3@huawei.com>
Link: https://lore.kernel.org/r/20201028122648.47959-1-zhangqilong3@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8192u/r8192U_core.c

index 27dc181..93676af 100644 (file)
@@ -867,7 +867,7 @@ static void rtl8192_rx_isr(struct urb *urb)
        urb->context = skb;
        skb_queue_tail(&priv->rx_queue, skb);
        err = usb_submit_urb(urb, GFP_ATOMIC);
-       if (err && err != EPERM)
+       if (err && err != -EPERM)
                netdev_err(dev,
                           "can not submit rxurb, err is %x, URB status is %x\n",
                           err, urb->status);