Thread (4 messages) 4 messages, 3 authors, 18d ago

Re: [PATCH net] net: watchdog: fix refcount tracking races

From: Eric Dumazet <edumazet@google.com>
Date: 2026-06-08 16:15:21

On Mon, Jun 8, 2026 at 9:01 AM Jakub Kicinski [off-list ref] wrote:
On Mon,  8 Jun 2026 12:39:35 +0000 Eric Dumazet wrote:
quoted
Blamed commit converted the untracked dev_hold()/dev_put() calls
in the watchdog code to use the tracked dev_hold_track()/dev_put_track()
(which were later renamed/interfaced to netdev_hold() and netdev_put()).
selftest kernel build says:

net/sched/sch_generic.c: In function ‘netdev_watchdog_up’:
net/sched/sch_generic.c:594:39: error: incompatible type for argument 1 of ‘IS_ERR_OR_NULL’
  594 |                 if (IS_ERR_OR_NULL(dev->watchdog_dev_tracker))
      |                                    ~~~^~~~~~~~~~~~~~~~~~~~~~
      |                                       |
      |                                       netdevice_tracker

config:
https://netdev-ctrl.bots.linux.dev/logs/vmksft/forwarding/results/682182/config
Oh right, I should have guarded this

#ifdef CONFIG_NET_DEV_REFCNT_TRACKER
           if (IS_ERR_OR_NULL(dev->watchdog_dev_tracker))
#endif
                   netdev_hold(dev, &dev->watchdog_dev_tracker,
                                       GFP_ATOMIC);
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help