Re: [PATCH] netdevsim: fix deadlock in nsim_bus_dev_max_vfs_write()
Slawomir Stepien <[email protected]>
| Newsgroups | dev.linux.lists.syzbot,org.kernel.vger.linux-kernel,org.kernel.vger.netdev |
|---|---|
| Message-ID | <anmGdjgYCnH1G9gd@nr200> |
On sie 07, 2026 14:47, Jakub Kicinski wrote: > On Fri, 7 Aug 2026 09:31:20 +0200 Slawomir Stepien wrote: > > That's true, but is netdevsim used *just* by the selftests (or was > > designed with only selftests in mind)? What if someone is using it > > without selftests? > > Quoting documentation: > > netdevsim > ~~~~~~~~~ > > ``netdevsim`` is a test driver which can be used to exercise driver > configuration APIs without requiring capable hardware. > Mock-ups and tests based on ``netdevsim`` are encouraged when > adding new APIs with complex logic in the stack. The tests should > be written so that they can run both against ``netdevsim`` and a real > device (see ``tools/testing/selftests/drivers/net/README.rst``). > ``netdevsim``-only tests should focus on testing corner cases > and failure paths in the core which are hard to exercise with a real driver. > > ``netdevsim`` in itself is **not** considered > a use case/user. You must also implement the new APIs in a real driver. > > We give no guarantees that ``netdevsim`` won't change in the future > in a way which would break what would normally be considered uAPI. > > ``netdevsim`` is reserved for use by upstream tests only, so any > new ``netdevsim`` features must be accompanied by selftests under > ``tools/testing/selftests/``. > > See: https://www.kernel.org/doc/html/next/process/maintainer-netdev.html#netdevsim > > > On the other hand: what sashiko found: > > https://netdev-ai.bots.linux.dev/sashiko/#/patchset/b7bf56ea-7522-4163-acd5-aaa69ad03b3a%40mail.kernel.org > > is true: the same issue will be with e.g. break_health. So it seems > > to me that a better approach would be to change when the debugfs > > files are removed. > > I seem to recall being annoyed at the fact that the health API takes > devlink lock. It should be callable from IRQ even. Forcing drivers > to worry about calling context is annoying for real drivers too. > > > It seems to me that change in nsim_drv_remove() might be easy, but > > what about nsim_dev_reload_down()...it seems it will have the same > > deadlock. Or am I missing something for this case? > > netdevsim is just a test mock. Fixing it for the sake of fixing > netdevsim is a waste of everyone's time. The first question you should > be asking yourself is "do I understand what this code was *designed > for*".. Thanks Jakub, this is now clear for me. I will create a patch that removes this not used part then. -- Slawomir Stepien