Merge commit 'origin/master' into next

This commit is contained in:
Benjamin Herrenschmidt 2009-06-17 10:24:53 +10:00
commit 492b057c42
1489 changed files with 117832 additions and 51976 deletions

View file

@ -188,8 +188,7 @@ static struct usb_descriptor_header *hs_pn_function[] = {
static int pn_net_open(struct net_device *dev)
{
if (netif_carrier_ok(dev))
netif_wake_queue(dev);
netif_wake_queue(dev);
return 0;
}
@ -219,8 +218,7 @@ static void pn_tx_complete(struct usb_ep *ep, struct usb_request *req)
}
dev_kfree_skb_any(skb);
if (netif_carrier_ok(dev))
netif_wake_queue(dev);
netif_wake_queue(dev);
}
static int pn_net_xmit(struct sk_buff *skb, struct net_device *dev)
@ -255,7 +253,7 @@ out_unlock:
spin_unlock_irqrestore(&port->lock, flags);
out:
if (unlikely(skb)) {
dev_kfree_skb_any(skb);
dev_kfree_skb(skb);
dev->stats.tx_dropped++;
}
return 0;
@ -383,7 +381,6 @@ static void __pn_reset(struct usb_function *f)
struct phonet_port *port = netdev_priv(dev);
netif_carrier_off(dev);
netif_stop_queue(dev);
port->usb = NULL;
usb_ep_disable(fp->out_ep);
@ -427,8 +424,6 @@ static int pn_set_alt(struct usb_function *f, unsigned intf, unsigned alt)
fp->in_ep->driver_data = fp;
netif_carrier_on(dev);
if (netif_running(dev))
netif_wake_queue(dev);
for (i = 0; i < phonet_rxq_size; i++)
pn_rx_submit(fp, fp->out_reqv[i], GFP_ATOMIC);
}
@ -574,9 +569,10 @@ static struct net_device *dev;
int __init phonet_bind_config(struct usb_configuration *c)
{
struct f_phonet *fp;
int err;
int err, size;
fp = kzalloc(sizeof(*fp), GFP_KERNEL);
size = sizeof(*fp) + (phonet_rxq_size * sizeof(struct usb_request *));
fp = kzalloc(size, GFP_KERNEL);
if (!fp)
return -ENOMEM;
@ -601,16 +597,13 @@ int __init gphonet_setup(struct usb_gadget *gadget)
/* Create net device */
BUG_ON(dev);
dev = alloc_netdev(sizeof(*port)
+ (phonet_rxq_size * sizeof(struct usb_request *)),
"upnlink%d", pn_net_setup);
dev = alloc_netdev(sizeof(*port), "upnlink%d", pn_net_setup);
if (!dev)
return -ENOMEM;
port = netdev_priv(dev);
spin_lock_init(&port->lock);
netif_carrier_off(dev);
netif_stop_queue(dev);
SET_NETDEV_DEV(dev, &gadget->dev);
err = register_netdev(dev);

View file

@ -520,7 +520,7 @@ static int eth_start_xmit(struct sk_buff *skb, struct net_device *net)
*/
if (list_empty(&dev->tx_reqs)) {
spin_unlock_irqrestore(&dev->req_lock, flags);
return 1;
return NETDEV_TX_BUSY;
}
req = container_of(dev->tx_reqs.next, struct usb_request, list);