diff options
| author | Michael Brown | 2021-04-10 17:53:52 +0200 |
|---|---|---|
| committer | Michael Brown | 2021-04-10 17:53:52 +0200 |
| commit | 78749542fc6d31ad41ecc350dea364e21362f985 (patch) | |
| tree | 8ba0a9148d7a3fa3addc9a63e9c69584116b8c4f /src/interface/linux/linux_sysfs.c | |
| parent | [pci] Avoid scanning nonexistent buses when using PCIAPI_DIRECT (diff) | |
| download | ipxe-78749542fc6d31ad41ecc350dea364e21362f985.tar.gz ipxe-78749542fc6d31ad41ecc350dea364e21362f985.tar.xz ipxe-78749542fc6d31ad41ecc350dea364e21362f985.zip | |
[netdevice] Ensure driver transmit() and poll() will not be re-entered
When CONSOLE_SYSLOG is used, a DBG() from within a network device
driver may cause its transmit() or poll() methods to be unexpectedly
re-entered. Since these methods are not intended to be re-entrant,
this can lead to undefined behaviour.
Add an explicit re-entrancy guard to both methods. Note that this
must operate at a per-netdevice level, since there are legitimate
circumstances under which the netdev_tx() or netdev_poll() functions
may be re-entered (e.g. when using VLAN devices).
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/interface/linux/linux_sysfs.c')
0 files changed, 0 insertions, 0 deletions
