fjes: fix bitwise check bug in fjes_raise_intr_rxdata_task
authorTaku Izumi <izumi.taku@jp.fujitsu.com>
Fri, 15 Apr 2016 02:25:34 +0000 (11:25 +0900)
committerDavid S. Miller <davem@davemloft.net>
Sun, 17 Apr 2016 01:51:01 +0000 (21:51 -0400)
In fjes_raise_intr_rxdata_task(), there's a bug of bitwise
check because of missing "& FJES_RX_POLL_WORK".
This patch fixes this bug.

Signed-off-by: Taku Izumi <izumi.taku@jp.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/fjes/fjes_main.c

index 05bdd8bfee00b23865ce7d1490c684d3dee57a9a..e22a86976dcf5a3a2cc2a8878c3ac82218e22800 100644 (file)
@@ -549,7 +549,8 @@ static void fjes_raise_intr_rxdata_task(struct work_struct *work)
                if ((hw->ep_shm_info[epid].tx_status_work ==
                     FJES_TX_DELAY_SEND_PENDING) &&
                    (pstatus == EP_PARTNER_SHARED) &&
-                   !(hw->ep_shm_info[epid].rx.info->v1i.rx_status)) {
+                   !(hw->ep_shm_info[epid].rx.info->v1i.rx_status &
+                     FJES_RX_POLL_WORK)) {
                        fjes_hw_raise_interrupt(hw, epid,
                                                REG_ICTL_MASK_RX_DATA);
                }