patch-5.15.79-rt54.patch
[platform/kernel/linux-rpi.git] / drivers / scsi / fcoe / fcoe.c
index 5ae6c20..6609080 100644 (file)
@@ -1450,11 +1450,11 @@ err2:
 static int fcoe_alloc_paged_crc_eof(struct sk_buff *skb, int tlen)
 {
        struct fcoe_percpu_s *fps;
-       int rc;
+       int rc, cpu = get_cpu_light();
 
-       fps = &get_cpu_var(fcoe_percpu);
+       fps = &per_cpu(fcoe_percpu, cpu);
        rc = fcoe_get_paged_crc_eof(skb, tlen, fps);
-       put_cpu_var(fcoe_percpu);
+       put_cpu_light();
 
        return rc;
 }
@@ -1639,11 +1639,11 @@ static inline int fcoe_filter_frames(struct fc_lport *lport,
                return 0;
        }
 
-       stats = per_cpu_ptr(lport->stats, get_cpu());
+       stats = per_cpu_ptr(lport->stats, get_cpu_light());
        stats->InvalidCRCCount++;
        if (stats->InvalidCRCCount < 5)
                printk(KERN_WARNING "fcoe: dropping frame with CRC error\n");
-       put_cpu();
+       put_cpu_light();
        return -EINVAL;
 }
 
@@ -1684,7 +1684,7 @@ static void fcoe_recv_frame(struct sk_buff *skb)
         */
        hp = (struct fcoe_hdr *) skb_network_header(skb);
 
-       stats = per_cpu_ptr(lport->stats, get_cpu());
+       stats = per_cpu_ptr(lport->stats, get_cpu_light());
        if (unlikely(FC_FCOE_DECAPS_VER(hp) != FC_FCOE_VER)) {
                if (stats->ErrorFrames < 5)
                        printk(KERN_WARNING "fcoe: FCoE version "
@@ -1716,13 +1716,13 @@ static void fcoe_recv_frame(struct sk_buff *skb)
                goto drop;
 
        if (!fcoe_filter_frames(lport, fp)) {
-               put_cpu();
+               put_cpu_light();
                fc_exch_recv(lport, fp);
                return;
        }
 drop:
        stats->ErrorFrames++;
-       put_cpu();
+       put_cpu_light();
        kfree_skb(skb);
 }