From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: "Vincent Mailhol" <mailhol.vincent@wanadoo.fr>,
"Marc Kleine-Budde" <mkl@pengutronix.de>,
"Nicolas Ferre" <nicolas.ferre@microchip.com>,
"Alexandre Belloni" <alexandre.belloni@bootlin.com>,
"Ludovic Desroches" <ludovic.desroches@microchip.com>,
"Chandrasekar Ramakrishnan" <rcsekar@samsung.com>,
"Maxime Ripard" <mripard@kernel.org>,
"Chen-Yu Tsai" <wens@csie.org>,
"Jernej Skrabec" <jernej.skrabec@gmail.com>,
"Appana Durga Kedareswara rao" <appana.durga.rao@xilinx.com>,
"Naga Sureshkumar Relli" <naga.sureshkumar.relli@xilinx.com>,
"Michal Simek" <michal.simek@xilinx.com>,
"Stephane Grosjean" <s.grosjean@peak-system.com>,
"Jimmy Assarsson" <extja@kvaser.com>,
"Stefan Mätje" <stefan.maetje@esd.eu>,
"Sasha Levin" <sashal@kernel.org>,
wg@grandegger.com, davem@davemloft.net, kuba@kernel.org,
dariobin@libero.it, linux@rempel-privat.de,
dev.kurt@vandijck-laurijssen.be,
yoshihiro.shimoda.uh@renesas.com, uli+renesas@fpond.eu,
prabhakar.mahadev-lad.rj@bp.renesas.com,
biju.das.jz@bp.renesas.com, paskripkin@gmail.com,
thunder.leizhen@huawei.com, f.fainelli@gmail.com,
leon@kernel.org, arnd@arndb.de, linux-can@vger.kernel.org,
netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-sunxi@lists.linux.dev
Subject: [PATCH AUTOSEL 5.16 198/217] can: do not increase rx statistics when generating a CAN rx error message frame
Date: Mon, 17 Jan 2022 21:19:21 -0500 [thread overview]
Message-ID: <20220118021940.1942199-198-sashal@kernel.org> (raw)
In-Reply-To: <20220118021940.1942199-1-sashal@kernel.org>
From: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
[ Upstream commit 676068db69b847f06fe054fca15bf6b107bd24da ]
The CAN error message frames (i.e. error skb) are an interface
specific to socket CAN. The payload of the CAN error message frames
does not correspond to any actual data sent on the wire. Only an error
flag and a delimiter are transmitted when an error occurs (c.f. ISO
11898-1 section 10.4.4.2 "Error flag").
For this reason, it makes no sense to increment the rx_packets and
rx_bytes fields of struct net_device_stats because no actual payload
were transmitted on the wire.
This patch fixes all the CAN drivers.
Link: https://lore.kernel.org/all/20211207121531.42941-2-mailhol.vincent@wanadoo.fr
CC: Marc Kleine-Budde <mkl@pengutronix.de>
CC: Nicolas Ferre <nicolas.ferre@microchip.com>
CC: Alexandre Belloni <alexandre.belloni@bootlin.com>
CC: Ludovic Desroches <ludovic.desroches@microchip.com>
CC: Chandrasekar Ramakrishnan <rcsekar@samsung.com>
CC: Maxime Ripard <mripard@kernel.org>
CC: Chen-Yu Tsai <wens@csie.org>
CC: Jernej Skrabec <jernej.skrabec@gmail.com>
CC: Appana Durga Kedareswara rao <appana.durga.rao@xilinx.com>
CC: Naga Sureshkumar Relli <naga.sureshkumar.relli@xilinx.com>
CC: Michal Simek <michal.simek@xilinx.com>
CC: Stephane Grosjean <s.grosjean@peak-system.com>
Tested-by: Jimmy Assarsson <extja@kvaser.com> # kvaser
Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Acked-by: Stefan Mätje <stefan.maetje@esd.eu> # esd_usb2
Tested-by: Stefan Mätje <stefan.maetje@esd.eu> # esd_usb2
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/net/can/at91_can.c | 6 ------
drivers/net/can/c_can/c_can_main.c | 5 -----
drivers/net/can/cc770/cc770.c | 3 ---
drivers/net/can/dev/dev.c | 4 ----
drivers/net/can/dev/rx-offload.c | 6 ++++--
drivers/net/can/ifi_canfd/ifi_canfd.c | 5 -----
drivers/net/can/kvaser_pciefd.c | 5 -----
drivers/net/can/m_can/m_can.c | 7 -------
drivers/net/can/mscan/mscan.c | 9 +++++----
drivers/net/can/pch_can.c | 3 ---
drivers/net/can/peak_canfd/peak_canfd.c | 4 ----
drivers/net/can/rcar/rcar_can.c | 6 +-----
drivers/net/can/rcar/rcar_canfd.c | 4 ----
drivers/net/can/sja1000/sja1000.c | 2 --
drivers/net/can/sun4i_can.c | 7 ++-----
drivers/net/can/usb/ems_usb.c | 2 --
drivers/net/can/usb/esd_usb2.c | 2 --
drivers/net/can/usb/etas_es58x/es58x_core.c | 7 -------
drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c | 2 --
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 8 --------
drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c | 4 ----
drivers/net/can/usb/peak_usb/pcan_usb.c | 2 --
drivers/net/can/usb/peak_usb/pcan_usb_fd.c | 3 ---
drivers/net/can/usb/peak_usb/pcan_usb_pro.c | 2 --
drivers/net/can/usb/ucan.c | 6 ++++--
drivers/net/can/usb/usb_8dev.c | 2 --
drivers/net/can/xilinx_can.c | 9 +--------
27 files changed, 17 insertions(+), 108 deletions(-)
diff --git a/drivers/net/can/at91_can.c b/drivers/net/can/at91_can.c
index 3aea32c9b108f..3cd872cf9be66 100644
--- a/drivers/net/can/at91_can.c
+++ b/drivers/net/can/at91_can.c
@@ -553,8 +553,6 @@ static void at91_rx_overflow_err(struct net_device *dev)
cf->can_id |= CAN_ERR_CRTL;
cf->data[1] = CAN_ERR_CRTL_RX_OVERFLOW;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_receive_skb(skb);
}
@@ -779,8 +777,6 @@ static int at91_poll_err(struct net_device *dev, int quota, u32 reg_sr)
at91_poll_err_frame(dev, cf, reg_sr);
- dev->stats.rx_packets++;
- dev->stats.rx_bytes += cf->len;
netif_receive_skb(skb);
return 1;
@@ -1037,8 +1033,6 @@ static void at91_irq_err(struct net_device *dev)
at91_irq_err_state(dev, cf, new_state);
- dev->stats.rx_packets++;
- dev->stats.rx_bytes += cf->len;
netif_rx(skb);
priv->can.state = new_state;
diff --git a/drivers/net/can/c_can/c_can_main.c b/drivers/net/can/c_can/c_can_main.c
index 52671d1ea17d5..670754a129846 100644
--- a/drivers/net/can/c_can/c_can_main.c
+++ b/drivers/net/can/c_can/c_can_main.c
@@ -920,7 +920,6 @@ static int c_can_handle_state_change(struct net_device *dev,
unsigned int reg_err_counter;
unsigned int rx_err_passive;
struct c_can_priv *priv = netdev_priv(dev);
- struct net_device_stats *stats = &dev->stats;
struct can_frame *cf;
struct sk_buff *skb;
struct can_berr_counter bec;
@@ -996,8 +995,6 @@ static int c_can_handle_state_change(struct net_device *dev,
break;
}
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_receive_skb(skb);
return 1;
@@ -1064,8 +1061,6 @@ static int c_can_handle_bus_err(struct net_device *dev,
break;
}
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_receive_skb(skb);
return 1;
}
diff --git a/drivers/net/can/cc770/cc770.c b/drivers/net/can/cc770/cc770.c
index f8a130f594e2e..a5fd8ccedec21 100644
--- a/drivers/net/can/cc770/cc770.c
+++ b/drivers/net/can/cc770/cc770.c
@@ -499,7 +499,6 @@ static void cc770_rx(struct net_device *dev, unsigned int mo, u8 ctrl1)
static int cc770_err(struct net_device *dev, u8 status)
{
struct cc770_priv *priv = netdev_priv(dev);
- struct net_device_stats *stats = &dev->stats;
struct can_frame *cf;
struct sk_buff *skb;
u8 lec;
@@ -571,8 +570,6 @@ static int cc770_err(struct net_device *dev, u8 status)
}
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
return 0;
diff --git a/drivers/net/can/dev/dev.c b/drivers/net/can/dev/dev.c
index e3d840b81357d..4845ae6456e19 100644
--- a/drivers/net/can/dev/dev.c
+++ b/drivers/net/can/dev/dev.c
@@ -136,7 +136,6 @@ EXPORT_SYMBOL_GPL(can_change_state);
static void can_restart(struct net_device *dev)
{
struct can_priv *priv = netdev_priv(dev);
- struct net_device_stats *stats = &dev->stats;
struct sk_buff *skb;
struct can_frame *cf;
int err;
@@ -155,9 +154,6 @@ static void can_restart(struct net_device *dev)
cf->can_id |= CAN_ERR_RESTARTED;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
-
netif_rx_ni(skb);
restart:
diff --git a/drivers/net/can/dev/rx-offload.c b/drivers/net/can/dev/rx-offload.c
index 37b0cc65237b7..7dbf46b9ca5dd 100644
--- a/drivers/net/can/dev/rx-offload.c
+++ b/drivers/net/can/dev/rx-offload.c
@@ -54,8 +54,10 @@ static int can_rx_offload_napi_poll(struct napi_struct *napi, int quota)
struct can_frame *cf = (struct can_frame *)skb->data;
work_done++;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
+ if (!(cf->can_id & CAN_ERR_FLAG)) {
+ stats->rx_packets++;
+ stats->rx_bytes += cf->len;
+ }
netif_receive_skb(skb);
}
diff --git a/drivers/net/can/ifi_canfd/ifi_canfd.c b/drivers/net/can/ifi_canfd/ifi_canfd.c
index 5bb957a26bc69..e8318e984bf2f 100644
--- a/drivers/net/can/ifi_canfd/ifi_canfd.c
+++ b/drivers/net/can/ifi_canfd/ifi_canfd.c
@@ -430,8 +430,6 @@ static int ifi_canfd_handle_lec_err(struct net_device *ndev)
priv->base + IFI_CANFD_INTERRUPT);
writel(IFI_CANFD_ERROR_CTR_ER_ENABLE, priv->base + IFI_CANFD_ERROR_CTR);
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_receive_skb(skb);
return 1;
@@ -456,7 +454,6 @@ static int ifi_canfd_handle_state_change(struct net_device *ndev,
enum can_state new_state)
{
struct ifi_canfd_priv *priv = netdev_priv(ndev);
- struct net_device_stats *stats = &ndev->stats;
struct can_frame *cf;
struct sk_buff *skb;
struct can_berr_counter bec;
@@ -522,8 +519,6 @@ static int ifi_canfd_handle_state_change(struct net_device *ndev,
break;
}
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_receive_skb(skb);
return 1;
diff --git a/drivers/net/can/kvaser_pciefd.c b/drivers/net/can/kvaser_pciefd.c
index eb74cdf26b88c..ab672c92ab078 100644
--- a/drivers/net/can/kvaser_pciefd.c
+++ b/drivers/net/can/kvaser_pciefd.c
@@ -1310,9 +1310,6 @@ static int kvaser_pciefd_rx_error_frame(struct kvaser_pciefd_can *can,
cf->data[6] = bec.txerr;
cf->data[7] = bec.rxerr;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
-
netif_rx(skb);
return 0;
}
@@ -1510,8 +1507,6 @@ static void kvaser_pciefd_handle_nack_packet(struct kvaser_pciefd_can *can,
if (skb) {
cf->can_id |= CAN_ERR_BUSERROR;
- stats->rx_bytes += cf->len;
- stats->rx_packets++;
netif_rx(skb);
} else {
stats->rx_dropped++;
diff --git a/drivers/net/can/m_can/m_can.c b/drivers/net/can/m_can/m_can.c
index c2a8421e7845c..30d94cb43113d 100644
--- a/drivers/net/can/m_can/m_can.c
+++ b/drivers/net/can/m_can/m_can.c
@@ -647,9 +647,6 @@ static int m_can_handle_lec_err(struct net_device *dev,
break;
}
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
-
if (cdev->is_peripheral)
timestamp = m_can_get_timestamp(cdev);
@@ -706,7 +703,6 @@ static int m_can_handle_state_change(struct net_device *dev,
enum can_state new_state)
{
struct m_can_classdev *cdev = netdev_priv(dev);
- struct net_device_stats *stats = &dev->stats;
struct can_frame *cf;
struct sk_buff *skb;
struct can_berr_counter bec;
@@ -771,9 +767,6 @@ static int m_can_handle_state_change(struct net_device *dev,
break;
}
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
-
if (cdev->is_peripheral)
timestamp = m_can_get_timestamp(cdev);
diff --git a/drivers/net/can/mscan/mscan.c b/drivers/net/can/mscan/mscan.c
index fa32e418eb296..9e1cce0260da6 100644
--- a/drivers/net/can/mscan/mscan.c
+++ b/drivers/net/can/mscan/mscan.c
@@ -401,13 +401,14 @@ static int mscan_rx_poll(struct napi_struct *napi, int quota)
continue;
}
- if (canrflg & MSCAN_RXF)
+ if (canrflg & MSCAN_RXF) {
mscan_get_rx_frame(dev, frame);
- else if (canrflg & MSCAN_ERR_IF)
+ stats->rx_packets++;
+ stats->rx_bytes += frame->len;
+ } else if (canrflg & MSCAN_ERR_IF) {
mscan_get_err_frame(dev, frame, canrflg);
+ }
- stats->rx_packets++;
- stats->rx_bytes += frame->len;
work_done++;
netif_receive_skb(skb);
}
diff --git a/drivers/net/can/pch_can.c b/drivers/net/can/pch_can.c
index 964c8a09226a9..6b45840db1f9b 100644
--- a/drivers/net/can/pch_can.c
+++ b/drivers/net/can/pch_can.c
@@ -561,9 +561,6 @@ static void pch_can_error(struct net_device *ndev, u32 status)
priv->can.state = state;
netif_receive_skb(skb);
-
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
}
static irqreturn_t pch_can_interrupt(int irq, void *dev_id)
diff --git a/drivers/net/can/peak_canfd/peak_canfd.c b/drivers/net/can/peak_canfd/peak_canfd.c
index d08718e98e110..d5b8bc6d29804 100644
--- a/drivers/net/can/peak_canfd/peak_canfd.c
+++ b/drivers/net/can/peak_canfd/peak_canfd.c
@@ -409,8 +409,6 @@ static int pucan_handle_status(struct peak_canfd_priv *priv,
return -ENOMEM;
}
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
pucan_netif_rx(skb, msg->ts_low, msg->ts_high);
return 0;
@@ -438,8 +436,6 @@ static int pucan_handle_cache_critical(struct peak_canfd_priv *priv)
cf->data[6] = priv->bec.txerr;
cf->data[7] = priv->bec.rxerr;
- stats->rx_bytes += cf->len;
- stats->rx_packets++;
netif_rx(skb);
return 0;
diff --git a/drivers/net/can/rcar/rcar_can.c b/drivers/net/can/rcar/rcar_can.c
index 8999ec9455ec2..f408ed9a6ccd1 100644
--- a/drivers/net/can/rcar/rcar_can.c
+++ b/drivers/net/can/rcar/rcar_can.c
@@ -223,7 +223,6 @@ static void tx_failure_cleanup(struct net_device *ndev)
static void rcar_can_error(struct net_device *ndev)
{
struct rcar_can_priv *priv = netdev_priv(ndev);
- struct net_device_stats *stats = &ndev->stats;
struct can_frame *cf;
struct sk_buff *skb;
u8 eifr, txerr = 0, rxerr = 0;
@@ -362,11 +361,8 @@ static void rcar_can_error(struct net_device *ndev)
}
}
- if (skb) {
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
+ if (skb)
netif_rx(skb);
- }
}
static void rcar_can_tx_done(struct net_device *ndev)
diff --git a/drivers/net/can/rcar/rcar_canfd.c b/drivers/net/can/rcar/rcar_canfd.c
index ff9d0f5ae0dd2..db9d62874e151 100644
--- a/drivers/net/can/rcar/rcar_canfd.c
+++ b/drivers/net/can/rcar/rcar_canfd.c
@@ -1033,8 +1033,6 @@ static void rcar_canfd_error(struct net_device *ndev, u32 cerfl,
/* Clear channel error interrupts that are handled */
rcar_canfd_write(priv->base, RCANFD_CERFL(ch),
RCANFD_CERFL_ERR(~cerfl));
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
}
@@ -1174,8 +1172,6 @@ static void rcar_canfd_state_change(struct net_device *ndev,
rx_state = txerr <= rxerr ? state : 0;
can_change_state(ndev, cf, tx_state, rx_state);
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
}
}
diff --git a/drivers/net/can/sja1000/sja1000.c b/drivers/net/can/sja1000/sja1000.c
index 3fad546467461..a65546ca94610 100644
--- a/drivers/net/can/sja1000/sja1000.c
+++ b/drivers/net/can/sja1000/sja1000.c
@@ -487,8 +487,6 @@ static int sja1000_err(struct net_device *dev, uint8_t isrc, uint8_t status)
can_bus_off(dev);
}
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
return 0;
diff --git a/drivers/net/can/sun4i_can.c b/drivers/net/can/sun4i_can.c
index 54aa7c25c4de1..599174098883d 100644
--- a/drivers/net/can/sun4i_can.c
+++ b/drivers/net/can/sun4i_can.c
@@ -622,13 +622,10 @@ static int sun4i_can_err(struct net_device *dev, u8 isrc, u8 status)
can_bus_off(dev);
}
- if (likely(skb)) {
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
+ if (likely(skb))
netif_rx(skb);
- } else {
+ else
return -ENOMEM;
- }
return 0;
}
diff --git a/drivers/net/can/usb/ems_usb.c b/drivers/net/can/usb/ems_usb.c
index 2b5302e724353..7cf65936d02e5 100644
--- a/drivers/net/can/usb/ems_usb.c
+++ b/drivers/net/can/usb/ems_usb.c
@@ -397,8 +397,6 @@ static void ems_usb_rx_err(struct ems_usb *dev, struct ems_cpc_msg *msg)
stats->rx_errors++;
}
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
}
diff --git a/drivers/net/can/usb/esd_usb2.c b/drivers/net/can/usb/esd_usb2.c
index c6068a251fbed..5f6915a27b3d9 100644
--- a/drivers/net/can/usb/esd_usb2.c
+++ b/drivers/net/can/usb/esd_usb2.c
@@ -293,8 +293,6 @@ static void esd_usb2_rx_event(struct esd_usb2_net_priv *priv,
priv->bec.txerr = txerr;
priv->bec.rxerr = rxerr;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
}
}
diff --git a/drivers/net/can/usb/etas_es58x/es58x_core.c b/drivers/net/can/usb/etas_es58x/es58x_core.c
index 24627ab146261..fb07c33ba0c3c 100644
--- a/drivers/net/can/usb/etas_es58x/es58x_core.c
+++ b/drivers/net/can/usb/etas_es58x/es58x_core.c
@@ -849,13 +849,6 @@ int es58x_rx_err_msg(struct net_device *netdev, enum es58x_err error,
break;
}
- /* driver/net/can/dev.c:can_restart() takes in account error
- * messages in the RX stats. Doing the same here for
- * consistency.
- */
- netdev->stats.rx_packets++;
- netdev->stats.rx_bytes += CAN_ERR_DLC;
-
if (cf) {
if (cf->data[1])
cf->can_id |= CAN_ERR_CRTL;
diff --git a/drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c b/drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c
index 0cc0fc866a2a9..3e682ef43f8ef 100644
--- a/drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c
+++ b/drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c
@@ -279,8 +279,6 @@ int kvaser_usb_can_rx_over_error(struct net_device *netdev)
cf->can_id |= CAN_ERR_CRTL;
cf->data[1] = CAN_ERR_CRTL_RX_OVERFLOW;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
return 0;
diff --git a/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c b/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c
index dcee8dc828ecc..3398da323126c 100644
--- a/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c
+++ b/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c
@@ -869,7 +869,6 @@ static void kvaser_usb_hydra_update_state(struct kvaser_usb_net_priv *priv,
struct net_device *netdev = priv->netdev;
struct can_frame *cf;
struct sk_buff *skb;
- struct net_device_stats *stats;
enum can_state new_state, old_state;
old_state = priv->can.state;
@@ -919,9 +918,6 @@ static void kvaser_usb_hydra_update_state(struct kvaser_usb_net_priv *priv,
cf->data[6] = bec->txerr;
cf->data[7] = bec->rxerr;
- stats = &netdev->stats;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
}
@@ -1074,8 +1070,6 @@ kvaser_usb_hydra_error_frame(struct kvaser_usb_net_priv *priv,
cf->data[6] = bec.txerr;
cf->data[7] = bec.rxerr;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
priv->bec.txerr = bec.txerr;
@@ -1109,8 +1103,6 @@ static void kvaser_usb_hydra_one_shot_fail(struct kvaser_usb_net_priv *priv,
}
stats->tx_errors++;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
}
diff --git a/drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c b/drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c
index f7af1bf5ab46d..5434b7386a51e 100644
--- a/drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c
+++ b/drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c
@@ -641,8 +641,6 @@ static void kvaser_usb_leaf_tx_acknowledge(const struct kvaser_usb *dev,
if (skb) {
cf->can_id |= CAN_ERR_RESTARTED;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
} else {
netdev_err(priv->netdev,
@@ -843,8 +841,6 @@ static void kvaser_usb_leaf_rx_error(const struct kvaser_usb *dev,
cf->data[6] = es->txerr;
cf->data[7] = es->rxerr;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
}
diff --git a/drivers/net/can/usb/peak_usb/pcan_usb.c b/drivers/net/can/usb/peak_usb/pcan_usb.c
index 8762187527669..21b06a7385959 100644
--- a/drivers/net/can/usb/peak_usb/pcan_usb.c
+++ b/drivers/net/can/usb/peak_usb/pcan_usb.c
@@ -520,8 +520,6 @@ static int pcan_usb_decode_error(struct pcan_usb_msg_context *mc, u8 n,
&hwts->hwtstamp);
}
- mc->netdev->stats.rx_packets++;
- mc->netdev->stats.rx_bytes += cf->len;
netif_rx(skb);
return 0;
diff --git a/drivers/net/can/usb/peak_usb/pcan_usb_fd.c b/drivers/net/can/usb/peak_usb/pcan_usb_fd.c
index 6bd12549f1014..185f5a98d2177 100644
--- a/drivers/net/can/usb/peak_usb/pcan_usb_fd.c
+++ b/drivers/net/can/usb/peak_usb/pcan_usb_fd.c
@@ -577,9 +577,6 @@ static int pcan_usb_fd_decode_status(struct pcan_usb_fd_if *usb_if,
if (!skb)
return -ENOMEM;
- netdev->stats.rx_packets++;
- netdev->stats.rx_bytes += cf->len;
-
peak_usb_netif_rx_64(skb, le32_to_cpu(sm->ts_low),
le32_to_cpu(sm->ts_high));
diff --git a/drivers/net/can/usb/peak_usb/pcan_usb_pro.c b/drivers/net/can/usb/peak_usb/pcan_usb_pro.c
index 858ab22708fcd..f6d19879bf404 100644
--- a/drivers/net/can/usb/peak_usb/pcan_usb_pro.c
+++ b/drivers/net/can/usb/peak_usb/pcan_usb_pro.c
@@ -660,8 +660,6 @@ static int pcan_usb_pro_handle_error(struct pcan_usb_pro_interface *usb_if,
hwts = skb_hwtstamps(skb);
peak_usb_get_ts_time(&usb_if->time_ref, le32_to_cpu(er->ts32), &hwts->hwtstamp);
- netdev->stats.rx_packets++;
- netdev->stats.rx_bytes += can_frame->len;
netif_rx(skb);
return 0;
diff --git a/drivers/net/can/usb/ucan.c b/drivers/net/can/usb/ucan.c
index 1679cbe45ded2..d582c39fc8d0e 100644
--- a/drivers/net/can/usb/ucan.c
+++ b/drivers/net/can/usb/ucan.c
@@ -621,8 +621,10 @@ static void ucan_rx_can_msg(struct ucan_priv *up, struct ucan_message_in *m)
memcpy(cf->data, m->msg.can_msg.data, cf->len);
/* don't count error frames as real packets */
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
+ if (!(cf->can_id & CAN_ERR_FLAG)) {
+ stats->rx_packets++;
+ stats->rx_bytes += cf->len;
+ }
/* pass it to Linux */
netif_rx(skb);
diff --git a/drivers/net/can/usb/usb_8dev.c b/drivers/net/can/usb/usb_8dev.c
index d1b83bd1b3cb9..040324362b260 100644
--- a/drivers/net/can/usb/usb_8dev.c
+++ b/drivers/net/can/usb/usb_8dev.c
@@ -449,8 +449,6 @@ static void usb_8dev_rx_err_msg(struct usb_8dev_priv *priv,
priv->bec.txerr = txerr;
priv->bec.rxerr = rxerr;
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
netif_rx(skb);
}
diff --git a/drivers/net/can/xilinx_can.c b/drivers/net/can/xilinx_can.c
index e2b15d29d15eb..275e240ab293f 100644
--- a/drivers/net/can/xilinx_can.c
+++ b/drivers/net/can/xilinx_can.c
@@ -965,13 +965,8 @@ static void xcan_update_error_state_after_rxtx(struct net_device *ndev)
xcan_set_error_state(ndev, new_state, skb ? cf : NULL);
- if (skb) {
- struct net_device_stats *stats = &ndev->stats;
-
- stats->rx_packets++;
- stats->rx_bytes += cf->len;
+ if (skb)
netif_rx(skb);
- }
}
}
@@ -1095,8 +1090,6 @@ static void xcan_err_interrupt(struct net_device *ndev, u32 isr)
if (skb) {
skb_cf->can_id |= cf.can_id;
memcpy(skb_cf->data, cf.data, CAN_ERR_DLC);
- stats->rx_packets++;
- stats->rx_bytes += CAN_ERR_DLC;
netif_rx(skb);
}
}
--
2.34.1
next prev parent reply other threads:[~2022-01-18 2:32 UTC|newest]
Thread overview: 226+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-18 2:16 [PATCH AUTOSEL 5.16 001/217] Bluetooth: hci_sock: purge socket queues in the destruct() callback Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 002/217] Bluetooth: Fix debugfs entry leak in hci_register_dev() Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 003/217] Bluetooth: Fix memory leak of hci device Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 004/217] drm/panel: Delete panel on mipi_dsi_attach() failure Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 005/217] Bluetooth: Fix removing adv when processing cmd complete Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 006/217] drm/sched: Avoid lockdep spalt on killing a processes Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 007/217] fs: dlm: filter user dlm messages for kernel locks Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 008/217] libbpf: Detect corrupted ELF symbols section Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 009/217] libbpf: Improve sanity checking during BTF fix up Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 010/217] libbpf: Validate that .BTF and .BTF.ext sections contain data Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 011/217] drm/lima: fix warning when CONFIG_DEBUG_SG=y & CONFIG_DMA_API_DEBUG=y Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 012/217] selftests/bpf: Fix memory leaks in btf_type_c_dump() helper Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 013/217] selftests/bpf: Destroy XDP link correctly Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 014/217] selftests/bpf: Fix bpf_object leak in skb_ctx selftest Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 015/217] ar5523: Fix null-ptr-deref with unexpected WDCMSG_TARGET_START reply Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 016/217] drm/bridge: dw-hdmi: handle ELD when DRM_BRIDGE_ATTACH_NO_CONNECTOR Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 017/217] drm/nouveau/pmu/gm200-: avoid touching PMU outside of DEVINIT/PREOS/ACR Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 018/217] media: atomisp: add NULL check for asd obtained from atomisp_video_pipe Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 019/217] media: atomisp: fix try_fmt logic Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 020/217] media: atomisp: set per-device's default mode Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 021/217] media: atomisp-ov2680: Fix ov2680_set_fmt() clobbering the exposure Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 022/217] media: atomisp: check before deference asd variable Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 023/217] ARM: shmobile: rcar-gen2: Add missing of_node_put() Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 024/217] ath11k: enable IEEE80211_VHT_EXT_NSS_BW_CAPABLE if NSS ratio enabled Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 025/217] batman-adv: allow netlink usage in unprivileged containers Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 026/217] bpf: Change value of MAX_TAIL_CALL_CNT from 32 to 33 Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 027/217] media: atomisp: handle errors at sh_css_create_isp_params() Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 028/217] ath11k: Fix crash caused by uninitialized TX ring Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 029/217] usb: dwc3: meson-g12a: fix shared reset control use Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 030/217] USB: ehci_brcm_hub_control: Improve port index sanitizing Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 031/217] usb: gadget: f_fs: Use stream_open() for endpoint files Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 032/217] psi: Fix PSI_MEM_FULL state when tasks are in memstall and doing reclaim Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 033/217] drm: panel-orientation-quirks: Add quirk for the Lenovo Yoga Book X91F/L Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 034/217] amd: lance: use eth_hw_addr_set() Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 035/217] amd: ni65: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 036/217] amd: a2065/ariadne: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 037/217] amd: hplance: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 038/217] amd: atarilance: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 039/217] amd: mvme147: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 040/217] 8390: smc-ultra: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 041/217] 8390: hydra: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 042/217] 8390: mac8390: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 043/217] 8390: wd: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 044/217] smc9194: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 045/217] lasi_82594: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 046/217] apple: macmace: " Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 047/217] cirrus: mac89x0: " Sasha Levin
2022-01-18 16:56 ` Jakub Kicinski
2022-01-22 18:51 ` Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 048/217] HID: magicmouse: Report battery level over USB Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 049/217] HID: apple: Do not reset quirks when the Fn key is not found Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 050/217] media: b2c2: Add missing check in flexcop_pci_isr: Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 051/217] libbpf: Accommodate DWARF/compiler bug with duplicated structs Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 052/217] ethernet: renesas: Use div64_ul instead of do_div Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 053/217] 82596: use eth_hw_addr_set() Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 054/217] EDAC/synopsys: Use the quirk for version instead of ddr version Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 055/217] arm64: dts: qcom: sm[68]350: Use interrupts-extended with pdc interrupts Sasha Levin
2022-01-18 2:16 ` [PATCH AUTOSEL 5.16 056/217] arm64: dts: qcom: sm8350: Shorten camera-thermal-bottom name Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 057/217] soc: imx: gpcv2: Synchronously suspend MIX domains Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 058/217] ARM: imx: rename DEBUG_IMX21_IMX27_UART to DEBUG_IMX27_UART Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 059/217] ath11k: Fix mon status ring rx tlv processing Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 060/217] drm/amd/display: check top_pipe_to_program pointer Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 061/217] drm/amdgpu/display: set vblank_disable_immediate for DC Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 062/217] soc: ti: pruss: fix referenced node in error message Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 063/217] mlxsw: pci: Add shutdown method in PCI driver Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 064/217] drm/amd/display: add else to avoid double destroy clk_mgr Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 065/217] drm/bridge: megachips: Ensure both bridges are probed before registration Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 066/217] mxser: keep only !tty test in ISR Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 067/217] mxser: don't throttle manually Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 068/217] mxser: increase buf_overrun if tty_insert_flip_char() fails Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 069/217] serial: 8250_dw: Add StarFive JH7100 quirk Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 070/217] tty: serial: imx: disable UCR4_OREN in .stop_rx() instead of .shutdown() Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 071/217] gpiolib: acpi: Do not set the IRQ type if the IRQ is already in use Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 072/217] HSI: core: Fix return freed object in hsi_new_client Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 073/217] crypto: jitter - consider 32 LSB for APT Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 074/217] rtw89: fix potentially access out of range of RF register array Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 075/217] rtw88: add quirk to disable pci caps on HP 250 G7 Notebook PC Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 076/217] mwifiex: Fix skb_over_panic in mwifiex_usb_recv() Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 077/217] rsi: Fix use-after-free in rsi_rx_done_handler() Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 078/217] rsi: Fix out-of-bounds read in rsi_read_pkt() Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 079/217] ath11k: Avoid NULL ptr access during mgmt tx cleanup Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 080/217] media: venus: avoid calling core_clk_setrate() concurrently during concurrent video sessions Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 081/217] regulator: da9121: Prevent current limit change when enabled Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 082/217] drm/vmwgfx: Release ttm memory if probe fails Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 083/217] drm/vmwgfx: Introduce a new placement for MOB page tables Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 084/217] ACPI / x86: Drop PWM2 device on Lenovo Yoga Book from always present table Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 085/217] ACPI: Change acpi_device_always_present() into acpi_device_override_status() Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 086/217] ACPI / x86: Allow specifying acpi_device_override_status() quirks by path Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 087/217] ACPI / x86: Add not-present quirk for the PCI0.SDHB.BRC1 device on the GPD win Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 088/217] drm: Return error codes from struct drm_driver.gem_create_object Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 089/217] drm/amd/display: Use oriented source size when checking cursor scaling Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 090/217] arm64: dts: ti: j7200-main: Fix 'dtbs_check' serdes_ln_ctrl node Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 091/217] arm64: dts: ti: j721e-main: Fix 'dtbs_check' in " Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 092/217] usb: uhci: add aspeed ast2600 uhci support Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 093/217] floppy: Add max size check for user space request Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 094/217] x86/mm: Flush global TLB when switching to trampoline page-table Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 095/217] s390/nmi: add missing __pa/__va address conversion of extended save area Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 096/217] drm: rcar-du: Fix CRTC timings when CMM is used Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 097/217] media: uvcvideo: Increase UVC_CTRL_CONTROL_TIMEOUT to 5 seconds Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 098/217] media: rcar-vin: Update format alignment constraints Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 099/217] media: saa7146: hexium_orion: Fix a NULL pointer dereference in hexium_attach() Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 100/217] media: atomisp: fix "variable dereferenced before check 'asd'" Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 101/217] media: m920x: don't use stack on USB reads Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 102/217] thunderbolt: Runtime PM activate both ends of the device link Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 103/217] arm64: dts: renesas: Fix thermal bindings Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 104/217] iwlwifi: mvm: synchronize with FW after multicast commands Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 105/217] iwlwifi: mvm: avoid clearing a just saved session protection id Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 106/217] iwlwifi: acpi: fix wgds rev 3 size Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 107/217] rcutorture: Avoid soft lockup during cpu stall Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 108/217] net: dsa: ocelot: felix: Remove requirement for PCS in felix devices Sasha Levin
2022-01-18 12:23 ` Vladimir Oltean
2022-01-22 19:02 ` Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 109/217] ath11k: avoid deadlock by change ieee80211_queue_work for regd_update_work Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 110/217] ath10k: Fix tx hanging Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 111/217] rtw89: don't kick off TX DMA if failed to write skb Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 112/217] net-sysfs: update the queue counts in the unregistration path Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 113/217] ath10k: drop beacon and probe response which leak from other channel Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 114/217] net: phy: prefer 1000baseT over 1000baseKX Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 115/217] gpio: aspeed: Convert aspeed_gpio.lock to raw_spinlock Sasha Levin
2022-01-18 2:17 ` [PATCH AUTOSEL 5.16 116/217] gpio: aspeed-sgpio: Convert aspeed_sgpio.lock " Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 117/217] selftests/ftrace: make kprobe profile testcase description unique Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 118/217] net: Enable neighbor sysctls that is save for userns root Sasha Levin
2022-01-18 16:59 ` Jakub Kicinski
2022-01-19 3:46 ` David Ahern
2022-01-22 19:13 ` Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 119/217] arm64: dts: rockchip: Fix Bluetooth on ROCK Pi 4 boards Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 120/217] ath11k: Avoid false DEADLOCK warning reported by lockdep Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 121/217] ARM: dts: qcom: sdx55: fix IPA interconnect definitions Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 122/217] x86/mce: Allow instrumentation during task work queueing Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 123/217] x86/mce: Prevent severity computation from being instrumented Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 124/217] x86/mce: Mark mce_panic() noinstr Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 125/217] x86/mce: Mark mce_end() noinstr Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 126/217] x86/mce: Mark mce_read_aux() noinstr Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 127/217] net: bonding: debug: avoid printing debug logs when bond is not notifying peers Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 128/217] kunit: Don't crash if no parameters are generated Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 129/217] bpf: Do not WARN in bpf_warn_invalid_xdp_action() Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 130/217] drm/amdkfd: Fix error handling in svm_range_add Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 131/217] drm/amdgpu: fix amdgpu_ras_mca_query_error_status scope Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 132/217] HID: quirks: Allow inverting the absolute X/Y values Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 133/217] HID: i2c-hid-of: Expose the touchscreen-inverted properties Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 134/217] media: igorplugusb: receiver overflow should be reported Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 135/217] media: rockchip: rkisp1: use device name for debugfs subdir name Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 136/217] media: saa7146: hexium_gemini: Fix a NULL pointer dereference in hexium_attach() Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 137/217] mmc: tmio: reinit card irqs in reset routine Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 138/217] mmc: core: Fixup storing of OCR for MMC_QUIRK_NONSTD_SDIO Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 139/217] mmc: omap_hsmmc: Revert special init for wl1251 Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 140/217] drm/amd/amdgpu: fix psp tmr bo pin count leak in SRIOV Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 141/217] drm/amd/amdgpu: fix gmc " Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 142/217] audit: ensure userspace is penalized the same as the kernel when under pressure Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 143/217] arm64: dts: ls1028a-qds: move rtc node to the correct i2c bus Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 144/217] drm/tegra: dc: rgb: Allow changing PLLD rate on Tegra30+ Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 145/217] arm64: tegra: Adjust length of CCPLEX cluster MMIO region Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 146/217] crypto: ccp - Move SEV_INIT retry for corrupted data Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 147/217] crypto: hisilicon/hpre - fix memory leak in hpre_curve25519_src_init() Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 148/217] crypto: hisilicon/qm - fix deadlock for remove driver Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 149/217] PM: runtime: Add safety net to supplier device release Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 150/217] cpufreq: Fix initialization of min and max frequency QoS requests Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 151/217] usb: hub: Add delay for SuperSpeed hub resume to let links transit to U0 Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 152/217] mt76: mt7615: fix possible deadlock while mt7615_register_ext_phy() Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 153/217] mt76: mt7915: fix SMPS operation fail Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 154/217] mt76: connac: fix a theoretical NULL pointer dereference in mt76_connac_get_phy_mode Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 155/217] mt76: do not pass the received frame with decryption error Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 156/217] mt76: mt7615: improve wmm index allocation Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 157/217] mt76: mt7921: fix network buffer leak by txs missing Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 158/217] ath9k_htc: fix NULL pointer dereference at ath9k_htc_rxep() Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 159/217] ath9k_htc: fix NULL pointer dereference at ath9k_htc_tx_get_packet() Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 160/217] ath9k: Fix out-of-bound memcpy in ath9k_hif_usb_rx_stream Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 161/217] rtw88: 8822c: update rx settings to prevent potential hw deadlock Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 162/217] PM: AVS: qcom-cpr: Use div64_ul instead of do_div Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 163/217] iwlwifi: recognize missing PNVM data and then log filename Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 164/217] iwlwifi: fix leaks/bad data after failed firmware load Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 165/217] iwlwifi: remove module loading failure message Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 166/217] iwlwifi: mvm: Fix calculation of frame length Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 167/217] iwlwifi: mvm: fix AUX ROC removal Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 168/217] iwlwifi: pcie: make sure prph_info is set when treating wakeup IRQ Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 169/217] mmc: sdhci-pci-gli: GL9755: Support for CD/WP inversion on OF platforms Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 170/217] block: check minor range in device_add_disk() Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 171/217] um: registers: Rename function names to avoid conflicts and build problems Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 172/217] ath11k: Fix napi related hang Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 173/217] Bluetooth: btintel: Add missing quirks and msft ext for legacy bootloader Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 174/217] cpufreq: intel_pstate: Update cpuinfo.max_freq on HWP_CAP changes Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 175/217] Bluetooth: vhci: Set HCI_QUIRK_VALID_LE_STATES Sasha Levin
2022-01-18 2:18 ` [PATCH AUTOSEL 5.16 176/217] xfrm: rate limit SA mapping change message to user space Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 177/217] drm/etnaviv: consider completed fence seqno in hang check Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 178/217] jffs2: GC deadlock reading a page that is used in jffs2_write_begin() Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 179/217] ACPICA: actypes.h: Expand the ACPI_ACCESS_ definitions Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 180/217] ACPICA: Utilities: Avoid deleting the same object twice in a row Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 181/217] ACPICA: Executer: Fix the REFCLASS_REFOF case in acpi_ex_opcode_1A_0T_1R() Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 182/217] ACPICA: Fix wrong interpretation of PCC address Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 183/217] ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 184/217] mmc: mtk-sd: Use readl_poll_timeout instead of open-coded polling Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 185/217] drm/amdgpu: Don't inherit GEM object VMAs in child process Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 186/217] drm/amdgpu: fixup bad vram size on gmc v8 Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 187/217] mfd: intel_soc_pmic: Use CPU-id check instead of _HRV check to differentiate variants Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 188/217] amdgpu/pm: Make sysfs pm attributes as read-only for VFs Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 189/217] ACPI: battery: Add the ThinkPad "Not Charging" quirk Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 190/217] ACPI: CPPC: Check present CPUs for determining _CPC is valid Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 191/217] net/mlx5: DR, Fix error flow in creating matcher Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 192/217] btrfs: remove BUG_ON() in find_parent_nodes() Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 193/217] btrfs: remove BUG_ON(!eie) in find_parent_nodes Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 194/217] net: mdio: Demote probed message to debug print Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 195/217] mac80211: allow non-standard VHT MCS-10/11 Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 196/217] dm btree: add a defensive bounds check to insert_at() Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 197/217] dm space map common: add bounds check to sm_ll_lookup_bitmap() Sasha Levin
2022-01-18 2:19 ` Sasha Levin [this message]
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 199/217] bpf/selftests: Fix namespace mount setup in tc_redirect Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 200/217] mlxsw: pci: Avoid flow control for EMAD packets Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 201/217] net: phy: marvell: configure RGMII delays for 88E1118 Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 202/217] net: gemini: allow any RGMII interface mode Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 203/217] net: dsa: hold rtnl_mutex when calling dsa_master_{setup,teardown} Sasha Levin
2022-01-18 12:13 ` Vladimir Oltean
2022-01-22 19:17 ` Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 204/217] regulator: qcom_smd: Align probe function with rpmh-regulator Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 205/217] serial: pl010: Drop CR register reset on set_termios Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 206/217] serial: pl011: " Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 207/217] serial: core: Keep mctrl register state and cached copy in sync Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 208/217] random: do not throw away excess input to crng_fast_load Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 209/217] net/mlx5: Update log_max_qp value to FW max capability Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 210/217] net/mlx5e: Unblock setting vid 0 for VF in case PF isn't eswitch manager Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 211/217] parisc: Avoid calling faulthandler_disabled() twice Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 212/217] scripts: sphinx-pre-install: Fix ctex support on Debian Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 213/217] can: flexcan: allow to change quirks at runtime Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 214/217] can: flexcan: rename RX modes Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 215/217] can: flexcan: add more quirks to describe RX path capabilities Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 216/217] x86/kbuild: Enable CONFIG_KALLSYMS_ALL=y in the defconfigs Sasha Levin
2022-01-18 2:19 ` [PATCH AUTOSEL 5.16 217/217] ext4: allow to change s_last_trim_minblks via sysfs Sasha Levin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220118021940.1942199-198-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=alexandre.belloni@bootlin.com \
--cc=appana.durga.rao@xilinx.com \
--cc=arnd@arndb.de \
--cc=biju.das.jz@bp.renesas.com \
--cc=dariobin@libero.it \
--cc=davem@davemloft.net \
--cc=dev.kurt@vandijck-laurijssen.be \
--cc=extja@kvaser.com \
--cc=f.fainelli@gmail.com \
--cc=jernej.skrabec@gmail.com \
--cc=kuba@kernel.org \
--cc=leon@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-can@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sunxi@lists.linux.dev \
--cc=linux@rempel-privat.de \
--cc=ludovic.desroches@microchip.com \
--cc=mailhol.vincent@wanadoo.fr \
--cc=michal.simek@xilinx.com \
--cc=mkl@pengutronix.de \
--cc=mripard@kernel.org \
--cc=naga.sureshkumar.relli@xilinx.com \
--cc=netdev@vger.kernel.org \
--cc=nicolas.ferre@microchip.com \
--cc=paskripkin@gmail.com \
--cc=prabhakar.mahadev-lad.rj@bp.renesas.com \
--cc=rcsekar@samsung.com \
--cc=s.grosjean@peak-system.com \
--cc=stable@vger.kernel.org \
--cc=stefan.maetje@esd.eu \
--cc=thunder.leizhen@huawei.com \
--cc=uli+renesas@fpond.eu \
--cc=wens@csie.org \
--cc=wg@grandegger.com \
--cc=yoshihiro.shimoda.uh@renesas.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).