aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
authorRémi Denis-Courmont <remi.denis-courmont@nokia.com>2009-08-06 17:56:43 -0400
committerDavid S. Miller <davem@davemloft.net>2009-08-12 23:44:48 -0400
commit5da63cc4b2258e1c06ee41637492717481025143 (patch)
treec6e48ddaca3dfc3806b26283c1fe8760ea03c0b9 /drivers/usb
parentaa11d958d1a6572eda08214d7c6a735804fe48a5 (diff)
f_phonet: lock-less MTU change
With the current driver, the MTU is purely indicative, so there is no need to synchronize with the receive path. Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/gadget/f_phonet.c14
1 files changed, 2 insertions, 12 deletions
diff --git a/drivers/usb/gadget/f_phonet.c b/drivers/usb/gadget/f_phonet.c
index d17f1082df96..f4eff7ca0d36 100644
--- a/drivers/usb/gadget/f_phonet.c
+++ b/drivers/usb/gadget/f_phonet.c
@@ -261,20 +261,10 @@ out:
261 261
262static int pn_net_mtu(struct net_device *dev, int new_mtu) 262static int pn_net_mtu(struct net_device *dev, int new_mtu)
263{ 263{
264 struct phonet_port *port = netdev_priv(dev);
265 unsigned long flags;
266 int err = -EBUSY;
267
268 if ((new_mtu < PHONET_MIN_MTU) || (new_mtu > PHONET_MAX_MTU)) 264 if ((new_mtu < PHONET_MIN_MTU) || (new_mtu > PHONET_MAX_MTU))
269 return -EINVAL; 265 return -EINVAL;
270 266 dev->mtu = new_mtu;
271 spin_lock_irqsave(&port->lock, flags); 267 return 0;
272 if (!netif_carrier_ok(dev)) {
273 dev->mtu = new_mtu;
274 err = 0;
275 }
276 spin_unlock_irqrestore(&port->lock, flags);
277 return err;
278} 268}
279 269
280static const struct net_device_ops pn_netdev_ops = { 270static const struct net_device_ops pn_netdev_ops = {