Skip to contentSkip to conversation

hso: add missing last_rx setting

PATCH In review Paulius Zaleckas 3 participants 4 messages Jun 4, 2009 – Jun 9, 2009

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 hso: add missing last_rx setting

---

 drivers/net/usb/hso.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/net/usb/hso.c +1 -1
index f84b78d..1064dda 100644
@@ -958,8 +958,8 @@ static void packetizeRx(struct hso_net *odev, unsigned char *ip_pkt,
 
 				/* update out statistics */
 				odev->net->stats.rx_packets++;
-
 				odev->net->stats.rx_bytes += odev->rx_buf_size;
+				odev->net->last_rx = jiffies;
 
 				odev->rx_buf_size = 0;
 				odev->rx_buf_missing = sizeof(struct iphdr);
#2 lore raw
Quoted 7 lines · David Miller

From: Paulius Zaleckas <[email protected]>
Date: Thu, 04 Jun 2009 18:50:23 +0300

Quoted 1 line

The core networking does this now for the drivers, they don't need to do it themselves any longer.

Where? I couldn't find it even in net-next...

Quoted 2 lines

Your patch is not correct.

#3 lore raw
Quoted 9 lines · Paulius Zaleckas
Quoted 6 lines · David Miller

From: Paulius Zaleckas <[email protected]>
Date: Thu, 04 Jun 2009 18:50:23 +0300

Quoted 1 line

The core networking does this now for the drivers, they don't need to do it themselves any longer.

Where? I couldn't find it even in net-next...

vi +1937 include/linux/netdevice.h

/* On bonding slaves other than the currently active slave, suppress
* duplicates except for 802.3ad ETH_P_SLOW, alb non-mcast/bcast, and
* ARP on active-backup slaves with arp_validate enabled. */
static inline int skb_bond_should_drop(struct sk_buff *skb)

{
        struct net_device *dev = skb->dev;
        struct net_device *master = dev->master;

        if (master) {
                if (master->priv_flags & IFF_MASTER_ARPMON)
                        dev->last_rx = jiffies;

...

commit 6cf3f41e6c08bca6641a695449791c38a25f35ff

Author: Jay Vosburgh <[email protected]>
Date:   Mon Nov 3 18:16:50 2008 -0800

bonding, net: Move last_rx update into bonding recv logic

The only user of the net_device->last_rx field is bonding.
This patch adds a conditional update of last_rx to the bonding special logic in skb_bond_should_drop, causing last_rx to only be updated when the ARP monitor is running.

This frees network device drivers from the necessity of
updating last_rx, which can have cache line thrash issues.