History

atm: remove the unused send_oam / push_oam callbacks

The atmdev_ops::send_oam device operation and the atm_vcc::push_oam callback were the kernel's interface for raw F4/F5 OAM cell exchange. Nothing assigns them a non-NULL value and nothing ever invokes them: the core only ever initialises push_oam to NULL (in vcc_create() and the AAL init helpers) and the Solos driver only lists send_oam = NULL for documentation. The drivers that actually drove OAM through these hooks were removed along with the legacy ATM adapters. Drop both callbacks and the NULL initialisers.

Jakub Kicinski committed 5 months ago

Commit b20aa9e1 parent c1468144 files · +0 −12Browse files

Unified · Split

4 files
  1. drivers/atm/solos-pci.c +0 −1
  2. include/linux/atmdev.h +0 −8
  3. net/atm/common.c +0 −1
  4. net/atm/raw.c +0 −2
drivers/atm/solos-pci.c+0−1
@@ -1180,7 +1180,6 @@ static const struct atmdev_ops fpga_ops = { · 1179 unmodified lines
11801180 .close = pclose,
11811181 .ioctl = NULL,
11821182 .send = psend,
1183− .send_oam = NULL,
11841183 .phy_put = NULL,
11851184 .phy_get = NULL,
11861185 .change_qos = NULL,
include/linux/atmdev.h+0−8
@@ -104,7 +104,6 @@ struct atm_vcc { · 103 unmodified lines
104104 void (*release_cb)(struct atm_vcc *vcc); /* release_sock callback */
105105 void (*push)(struct atm_vcc *vcc,struct sk_buff *skb);
106106 void (*pop)(struct atm_vcc *vcc,struct sk_buff *skb); /* optional */
107− int (*push_oam)(struct atm_vcc *vcc,void *cell);
108107 int (*send)(struct atm_vcc *vcc,struct sk_buff *skb);
109108 void *dev_data; /* per-device data */
110109 void *proto_data; /* per-protocol data */
@@ -170,12 +169,6 @@ struct atm_dev { · 59 unmodified lines
170169 struct list_head dev_list; /* linkage */
171170 };
172171
173−
174−/* OF: send_Oam Flags */
175−
176−#define ATM_OF_IMMED 1 /* Attempt immediate delivery */
177−#define ATM_OF_INRATE 2 /* Attempt in-rate delivery */
178−
179172 struct atmdev_ops { /* only send is required */
180173 void (*dev_close)(struct atm_dev *dev);
181174 int (*open)(struct atm_vcc *vcc);
@@ -188,7 +181,6 @@ struct atmdev_ops { /* only send is required */ · 6 unmodified lines
188181 int (*pre_send)(struct atm_vcc *vcc, struct sk_buff *skb);
189182 int (*send)(struct atm_vcc *vcc,struct sk_buff *skb);
190183 int (*send_bh)(struct atm_vcc *vcc, struct sk_buff *skb);
191− int (*send_oam)(struct atm_vcc *vcc,void *cell,int flags);
192184 void (*phy_put)(struct atm_dev *dev,unsigned char value,
193185 unsigned long addr);
194186 unsigned char (*phy_get)(struct atm_dev *dev,unsigned long addr);
net/atm/common.c+0−1
@@ -163,7 +163,6 @@ int vcc_create(struct net *net, struct socket *sock, int protocol, int family, i · 162 unmodified lines
163163 vcc->push = NULL;
164164 vcc->pop = NULL;
165165 vcc->owner = NULL;
166− vcc->push_oam = NULL;
167166 vcc->release_cb = NULL;
168167 vcc->vpi = vcc->vci = 0; /* no VCI/VPI yet */
169168 vcc->atm_options = vcc->aal_options = 0;
net/atm/raw.c+0−2
@@ -63,7 +63,6 @@ int atm_init_aal0(struct atm_vcc *vcc) · 62 unmodified lines
6363 {
6464 vcc->push = atm_push_raw;
6565 vcc->pop = atm_pop_raw;
66− vcc->push_oam = NULL;
6766 vcc->send = atm_send_aal0;
6867 return 0;
6968 }
@@ -72,7 +71,6 @@ int atm_init_aal5(struct atm_vcc *vcc) · 2 unmodified lines
7271 {
7372 vcc->push = atm_push_raw;
7473 vcc->pop = atm_pop_raw;
75− vcc->push_oam = NULL;
7674 if (vcc->dev->ops->send_bh)
7775 vcc->send = vcc->dev->ops->send_bh;
7876 else

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t