[PATCH 2/2] [net-next v3] net: remove ndo_do_ioctl handler

From: Arnd Bergmann

Date: Tue Sep 15 2026 - 17:17:41 EST


From: Arnd Bergmann <arnd@xxxxxxxx>

All of the references to the callback pointer are gone, so remove the
pointer itself before we grow new references to it.

Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
---
Documentation/networking/netdevices.rst | 7 -------
include/linux/netdevice.h | 7 -------
2 files changed, 14 deletions(-)

diff --git a/Documentation/networking/netdevices.rst b/Documentation/networking/netdevices.rst
index aac33497813f..6a87f09e7015 100644
--- a/Documentation/networking/netdevices.rst
+++ b/Documentation/networking/netdevices.rst
@@ -222,13 +222,6 @@ ndo_stop:
Context: process
Note: netif_running() is guaranteed false

-ndo_do_ioctl:
- Synchronization: rtnl_lock() semaphore.
-
- This is only called by network subsystems internally,
- not by user space calling ioctl as it was in before
- linux-5.14.
-
ndo_siocbond:
Synchronization: rtnl_lock() semaphore. In addition, netdev instance
lock if the driver implements queue management or shaper API.
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 707b2e51c2b9..da388cfdc1f2 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -1154,11 +1154,6 @@ struct netdev_net_notifier {
* int (*ndo_validate_addr)(struct net_device *dev);
* Test if Media Access Control address is valid for the device.
*
- * int (*ndo_do_ioctl)(struct net_device *dev, struct ifreq *ifr, int cmd);
- * Old-style ioctl entry point. This is used internally by the
- * ieee802154 subsystem but is no longer called by the device
- * ioctl handler.
- *
* int (*ndo_siocbond)(struct net_device *dev, struct ifreq *ifr, int cmd);
* Used by the bonding driver for its device specific ioctls:
* SIOCBONDENSLAVE, SIOCBONDRELEASE, SIOCBONDSETHWADDR, SIOCBONDCHANGEACTIVE,
@@ -1480,8 +1475,6 @@ struct net_device_ops {
int (*ndo_set_mac_address)(struct net_device *dev,
void *addr);
int (*ndo_validate_addr)(struct net_device *dev);
- int (*ndo_do_ioctl)(struct net_device *dev,
- struct ifreq *ifr, int cmd);
int (*ndo_eth_ioctl)(struct net_device *dev,
struct ifreq *ifr, int cmd);
int (*ndo_siocbond)(struct net_device *dev,
--
2.53.0