aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2017-12-13 14:01:09 -0500
committerDavid S. Miller <davem@davemloft.net>2017-12-13 14:01:09 -0500
commit1e7570117575360504e632d0c31d6b52d3d7ea9c (patch)
tree4e45641f215f7259b0b8b29b1e78c74b09da2169 /drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c
parenttcp: allow TLP in ECN CWR (diff)
parentnet: qualcomm: rmnet: Allow to configure flags for existing devices (diff)
downloadlinux-dev-1e7570117575360504e632d0c31d6b52d3d7ea9c.tar.xz
linux-dev-1e7570117575360504e632d0c31d6b52d3d7ea9c.zip
Merge branch 'rmnet-Configuration-options'
Subash Abhinov Kasiviswanathan says: ==================== net: qualcomm: rmnet: Configuration options This series adds support for configuring features on rmnet devices. The rmnet specific features to be configured here are aggregation and control commands. Patch 1 is a cleanup of return codes in the transmit path. Patch 2 removes some redundant ingress and egress macros. Patch 3 restricts the creation of rmnet dev to one dev per mux id for a given real dev. Patch 4 adds ethernet data path support. Patches 5-6 add support for configuring features on new and existing rmnet devices. v1->v2: The memory leak fixed as part of patch 1 is merged seperately as a896d94abd2c ("net: qualcomm: rmnet: Fix leak on transmit failure"). Fix a use after free in patch 4 if a packet with headroom lesser than ethernet header length is received. v2->v3: Fix formatting problem in patch 5 in the return statement. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c')
-rw-r--r--drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c b/drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c
index 9caa5e387450..5bb29f44d114 100644
--- a/drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c
+++ b/drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c
@@ -185,6 +185,9 @@ int rmnet_vnd_newlink(u8 id, struct net_device *rmnet_dev,
if (ep->egress_dev)
return -EINVAL;
+ if (rmnet_get_endpoint(port, id))
+ return -EBUSY;
+
rc = register_netdevice(rmnet_dev);
if (!rc) {
ep->egress_dev = rmnet_dev;