diff options
author | David S. Miller <davem@davemloft.net> | 2017-12-13 14:01:09 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-12-13 14:01:09 -0500 |
commit | 1e7570117575360504e632d0c31d6b52d3d7ea9c (patch) | |
tree | 4e45641f215f7259b0b8b29b1e78c74b09da2169 /drivers/net/ethernet/qualcomm/rmnet/rmnet_vnd.c | |
parent | tcp: allow TLP in ECN CWR (diff) | |
parent | net: qualcomm: rmnet: Allow to configure flags for existing devices (diff) | |
download | linux-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.c | 3 |
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; |