The fcoe sw recive packet function (fcoe_rcv) only ever executes in softirq
context.  Given that, and the fact that no use of the fcoe_rx_list is made in
irq context, its not necessecary to disable bottom halves while actually
receiving the frame.  Convert spin_*_bh calls in that function to their
lock-only equivalents

Signed-off-by: Neil Horman <[email protected]>
CC: Robert Love <[email protected]>
CC: Vasu Dev <[email protected]>
CC: "James E.J. Bottomley" <[email protected]>
---
 drivers/scsi/fcoe/fcoe.c |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/scsi/fcoe/fcoe.c b/drivers/scsi/fcoe/fcoe.c
index 2a377f9..787d5a0 100644
--- a/drivers/scsi/fcoe/fcoe.c
+++ b/drivers/scsi/fcoe/fcoe.c
@@ -1428,7 +1428,7 @@ static int fcoe_rcv(struct sk_buff *skb, struct 
net_device *netdev,
                goto err;
 
        fps = &per_cpu(fcoe_percpu, cpu);
-       spin_lock_bh(&fps->fcoe_rx_list.lock);
+       spin_lock(&fps->fcoe_rx_list.lock);
        if (unlikely(!fps->thread)) {
                /*
                 * The targeted CPU is not ready, let's target
@@ -1439,12 +1439,12 @@ static int fcoe_rcv(struct sk_buff *skb, struct 
net_device *netdev,
                                "ready for incoming skb- using first online "
                                "CPU.\n");
 
-               spin_unlock_bh(&fps->fcoe_rx_list.lock);
+               spin_unlock(&fps->fcoe_rx_list.lock);
                cpu = cpumask_first(cpu_online_mask);
                fps = &per_cpu(fcoe_percpu, cpu);
-               spin_lock_bh(&fps->fcoe_rx_list.lock);
+               spin_lock(&fps->fcoe_rx_list.lock);
                if (!fps->thread) {
-                       spin_unlock_bh(&fps->fcoe_rx_list.lock);
+                       spin_unlock(&fps->fcoe_rx_list.lock);
                        goto err;
                }
        }
@@ -1465,7 +1465,7 @@ static int fcoe_rcv(struct sk_buff *skb, struct 
net_device *netdev,
        __skb_queue_tail(&fps->fcoe_rx_list, skb);
        if (fps->fcoe_rx_list.qlen == 1)
                wake_up_process(fps->thread);
-       spin_unlock_bh(&fps->fcoe_rx_list.lock);
+       spin_unlock(&fps->fcoe_rx_list.lock);
 
        return 0;
 err:
-- 
1.7.7.6

_______________________________________________
devel mailing list
[email protected]
https://lists.open-fcoe.org/mailman/listinfo/devel

Reply via email to