The SONET_* ioctls are SONET/SDH PHY controls that atm_dev_ioctl() and the compat path only ever forwarded to the driver's ->ioctl() handler. The PHY drivers that implemented them (the S/UNI library and the framers on the removed PCI/SBUS adapters) are gone, and neither surviving driver services them: solos-pci has no ->ioctl, and usbatm handles only ATM_QUERYLOOP. They now uniformly return an error regardless. Drop the SONET compat passthrough and the SONET cases in atm_dev_ioctl(), along with the now-unused linux/sonet.h includes. The SONET_* uAPI definitions are untouched. Signed-off-by: Jakub Kicinski --- net/atm/ioctl.c | 13 ------------- net/atm/resources.c | 5 ----- 2 files changed, 18 deletions(-) diff --git a/net/atm/ioctl.c b/net/atm/ioctl.c index 0f3f9ad8301f..4f2d185bf2f0 100644 --- a/net/atm/ioctl.c +++ b/net/atm/ioctl.c @@ -13,7 +13,6 @@ #include #include /* manifest constants */ #include -#include /* for ioctls */ #include #include #include @@ -290,18 +289,6 @@ static int do_atm_ioctl(struct socket *sock, unsigned int cmd32, int i; unsigned int cmd = 0; - switch (cmd32) { - case SONET_GETSTAT: - case SONET_GETSTATZ: - case SONET_GETDIAG: - case SONET_SETDIAG: - case SONET_CLRDIAG: - case SONET_SETFRAMING: - case SONET_GETFRAMING: - case SONET_GETFRSENSE: - return do_atmif_sioc(sock, cmd32, arg); - } - for (i = 0; i < NR_ATM_IOCTL; i++) { if (cmd32 == atm_ioctl_map[i].cmd32) { cmd = atm_ioctl_map[i].cmd; diff --git a/net/atm/resources.c b/net/atm/resources.c index 939452a610c0..7aac25e917b4 100644 --- a/net/atm/resources.c +++ b/net/atm/resources.c @@ -13,7 +13,6 @@ #include #include #include -#include #include /* for barrier */ #include #include @@ -361,10 +360,6 @@ int atm_dev_ioctl(unsigned int cmd, void __user *buf, int __user *sioc_len, } fallthrough; case ATM_SETCIRANGE: - case SONET_GETSTATZ: - case SONET_SETDIAG: - case SONET_CLRDIAG: - case SONET_SETFRAMING: if (!capable(CAP_NET_ADMIN)) { error = -EPERM; goto done; -- 2.54.0