hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
kernel/drivers/net/ethernet/ibm/ehea/ehea_main.c
....@@ -1,3 +1,4 @@
1
+// SPDX-License-Identifier: GPL-2.0-or-later
12 /*
23 * linux/drivers/net/ethernet/ibm/ehea/ehea_main.c
34 *
....@@ -9,21 +10,6 @@
910 * Christoph Raisch <raisch@de.ibm.com>
1011 * Jan-Bernd Themann <themann@de.ibm.com>
1112 * Thomas Klein <tklein@de.ibm.com>
12
- *
13
- *
14
- * This program is free software; you can redistribute it and/or modify
15
- * it under the terms of the GNU General Public License as published by
16
- * the Free Software Foundation; either version 2, or (at your option)
17
- * any later version.
18
- *
19
- * This program is distributed in the hope that it will be useful,
20
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
21
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22
- * GNU General Public License for more details.
23
- *
24
- * You should have received a copy of the GNU General Public License
25
- * along with this program; if not, write to the Free Software
26
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
2713 */
2814
2915 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
....@@ -778,12 +764,11 @@
778764 {
779765 struct ehea_swqe *swqe;
780766 int swqe_index;
781
- int i, k;
767
+ int i;
782768
783769 for (i = 0; i < port->num_def_qps; i++) {
784770 struct ehea_port_res *pr = &port->port_res[i];
785771 int ret;
786
- k = 0;
787772 swqe = ehea_get_swqe(pr->qp, &swqe_index);
788773 memset(swqe, 0, SWQE_HEADER_SIZE);
789774 atomic_dec(&pr->swqe_avail);
....@@ -1227,9 +1212,9 @@
12271212 }
12281213 }
12291214
1230
-static void ehea_neq_tasklet(unsigned long data)
1215
+static void ehea_neq_tasklet(struct tasklet_struct *t)
12311216 {
1232
- struct ehea_adapter *adapter = (struct ehea_adapter *)data;
1217
+ struct ehea_adapter *adapter = from_tasklet(adapter, t, neq_tasklet);
12331218 struct ehea_eqe *eqe;
12341219 u64 event_mask;
12351220
....@@ -1592,20 +1577,16 @@
15921577 ehea_destroy_eq(pr->eq);
15931578
15941579 for (i = 0; i < pr->rq1_skba.len; i++)
1595
- if (pr->rq1_skba.arr[i])
1596
- dev_kfree_skb(pr->rq1_skba.arr[i]);
1580
+ dev_kfree_skb(pr->rq1_skba.arr[i]);
15971581
15981582 for (i = 0; i < pr->rq2_skba.len; i++)
1599
- if (pr->rq2_skba.arr[i])
1600
- dev_kfree_skb(pr->rq2_skba.arr[i]);
1583
+ dev_kfree_skb(pr->rq2_skba.arr[i]);
16011584
16021585 for (i = 0; i < pr->rq3_skba.len; i++)
1603
- if (pr->rq3_skba.arr[i])
1604
- dev_kfree_skb(pr->rq3_skba.arr[i]);
1586
+ dev_kfree_skb(pr->rq3_skba.arr[i]);
16051587
16061588 for (i = 0; i < pr->sq_skba.len; i++)
1607
- if (pr->sq_skba.arr[i])
1608
- dev_kfree_skb(pr->sq_skba.arr[i]);
1589
+ dev_kfree_skb(pr->sq_skba.arr[i]);
16091590
16101591 vfree(pr->rq1_skba.arr);
16111592 vfree(pr->rq2_skba.arr);
....@@ -2806,7 +2787,7 @@
28062787 return;
28072788 }
28082789
2809
-static void ehea_tx_watchdog(struct net_device *dev)
2790
+static void ehea_tx_watchdog(struct net_device *dev, unsigned int txqueue)
28102791 {
28112792 struct ehea_port *port = netdev_priv(dev);
28122793
....@@ -2916,6 +2897,7 @@
29162897 ret = of_device_register(&port->ofdev);
29172898 if (ret) {
29182899 pr_err("failed to register device. ret=%d\n", ret);
2900
+ put_device(&port->ofdev.dev);
29192901 goto out;
29202902 }
29212903
....@@ -3267,7 +3249,7 @@
32673249 switch (action) {
32683250 case MEM_CANCEL_OFFLINE:
32693251 pr_info("memory offlining canceled");
3270
- /* Fall through: re-add canceled memory block */
3252
+ fallthrough; /* re-add canceled memory block */
32713253
32723254 case MEM_ONLINE:
32733255 pr_info("memory is going online");
....@@ -3437,8 +3419,7 @@
34373419 goto out_free_ad;
34383420 }
34393421
3440
- tasklet_init(&adapter->neq_tasklet, ehea_neq_tasklet,
3441
- (unsigned long)adapter);
3422
+ tasklet_setup(&adapter->neq_tasklet, ehea_neq_tasklet);
34423423
34433424 ret = ehea_create_device_sysfs(dev);
34443425 if (ret)