aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2011-03-31 00:37:29 -0400
committerDavid S. Miller <davem@davemloft.net>2011-03-31 00:37:29 -0400
commit4e700bcdd89a5592a5a991bf3e78904de1140611 (patch)
tree1a21ea2eb4c0ebe1a9d5303c6cc8328474f7f5e1 /include/linux
parent6aba74f2791287ec407e0f92487a725a25908067 (diff)
parenta84b50ceb7d640437d0dc28a2bef0d0de054de89 (diff)
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/atmdev.h1
-rw-r--r--include/linux/connector.h16
-rw-r--r--include/linux/skbuff.h2
-rw-r--r--include/linux/usb/usbnet.h3
4 files changed, 8 insertions, 14 deletions
diff --git a/include/linux/atmdev.h b/include/linux/atmdev.h
index 475f8c42c0e9..381f4cec8260 100644
--- a/include/linux/atmdev.h
+++ b/include/linux/atmdev.h
@@ -443,6 +443,7 @@ void atm_dev_signal_change(struct atm_dev *dev, char signal);
443 443
444void vcc_insert_socket(struct sock *sk); 444void vcc_insert_socket(struct sock *sk);
445 445
446void atm_dev_release_vccs(struct atm_dev *dev);
446 447
447/* 448/*
448 * This is approximately the algorithm used by alloc_skb. 449 * This is approximately the algorithm used by alloc_skb.
diff --git a/include/linux/connector.h b/include/linux/connector.h
index bcafc942e5e4..7c60d0942adb 100644
--- a/include/linux/connector.h
+++ b/include/linux/connector.h
@@ -88,8 +88,6 @@ struct cn_queue_dev {
88 atomic_t refcnt; 88 atomic_t refcnt;
89 unsigned char name[CN_CBQ_NAMELEN]; 89 unsigned char name[CN_CBQ_NAMELEN];
90 90
91 struct workqueue_struct *cn_queue;
92
93 struct list_head queue_list; 91 struct list_head queue_list;
94 spinlock_t queue_lock; 92 spinlock_t queue_lock;
95 93
@@ -101,20 +99,13 @@ struct cn_callback_id {
101 struct cb_id id; 99 struct cb_id id;
102}; 100};
103 101
104struct cn_callback_data {
105 struct sk_buff *skb;
106 void (*callback) (struct cn_msg *, struct netlink_skb_parms *);
107
108 void *free;
109};
110
111struct cn_callback_entry { 102struct cn_callback_entry {
112 struct list_head callback_entry; 103 struct list_head callback_entry;
113 struct work_struct work; 104 atomic_t refcnt;
114 struct cn_queue_dev *pdev; 105 struct cn_queue_dev *pdev;
115 106
116 struct cn_callback_id id; 107 struct cn_callback_id id;
117 struct cn_callback_data data; 108 void (*callback) (struct cn_msg *, struct netlink_skb_parms *);
118 109
119 u32 seq, group; 110 u32 seq, group;
120}; 111};
@@ -138,13 +129,12 @@ int cn_queue_add_callback(struct cn_queue_dev *dev, const char *name,
138 struct cb_id *id, 129 struct cb_id *id,
139 void (*callback)(struct cn_msg *, struct netlink_skb_parms *)); 130 void (*callback)(struct cn_msg *, struct netlink_skb_parms *));
140void cn_queue_del_callback(struct cn_queue_dev *dev, struct cb_id *id); 131void cn_queue_del_callback(struct cn_queue_dev *dev, struct cb_id *id);
132void cn_queue_release_callback(struct cn_callback_entry *);
141 133
142struct cn_queue_dev *cn_queue_alloc_dev(const char *name, struct sock *); 134struct cn_queue_dev *cn_queue_alloc_dev(const char *name, struct sock *);
143void cn_queue_free_dev(struct cn_queue_dev *dev); 135void cn_queue_free_dev(struct cn_queue_dev *dev);
144 136
145int cn_cb_equal(struct cb_id *, struct cb_id *); 137int cn_cb_equal(struct cb_id *, struct cb_id *);
146 138
147void cn_queue_wrapper(struct work_struct *work);
148
149#endif /* __KERNEL__ */ 139#endif /* __KERNEL__ */
150#endif /* __CONNECTOR_H */ 140#endif /* __CONNECTOR_H */
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 239083bfea13..d9e52fa2416d 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -126,7 +126,7 @@ struct sk_buff;
126 * GRO uses frags we allocate at least 16 regardless of page size. 126 * GRO uses frags we allocate at least 16 regardless of page size.
127 */ 127 */
128#if (65536/PAGE_SIZE + 2) < 16 128#if (65536/PAGE_SIZE + 2) < 16
129#define MAX_SKB_FRAGS 16 129#define MAX_SKB_FRAGS 16UL
130#else 130#else
131#define MAX_SKB_FRAGS (65536/PAGE_SIZE + 2) 131#define MAX_SKB_FRAGS (65536/PAGE_SIZE + 2)
132#endif 132#endif
diff --git a/include/linux/usb/usbnet.h b/include/linux/usb/usbnet.h
index 44842c8d38c0..201f2228f731 100644
--- a/include/linux/usb/usbnet.h
+++ b/include/linux/usb/usbnet.h
@@ -102,6 +102,7 @@ struct driver_info {
102 * Affects statistic (counters) and short packet handling. 102 * Affects statistic (counters) and short packet handling.
103 */ 103 */
104#define FLAG_MULTI_PACKET 0x1000 104#define FLAG_MULTI_PACKET 0x1000
105#define FLAG_RX_ASSEMBLE 0x2000 /* rx packets may span >1 frames */
105 106
106 /* init device ... can sleep, or cause probe() failure */ 107 /* init device ... can sleep, or cause probe() failure */
107 int (*bind)(struct usbnet *, struct usb_interface *); 108 int (*bind)(struct usbnet *, struct usb_interface *);
@@ -172,7 +173,9 @@ struct cdc_state {
172}; 173};
173 174
174extern int usbnet_generic_cdc_bind(struct usbnet *, struct usb_interface *); 175extern int usbnet_generic_cdc_bind(struct usbnet *, struct usb_interface *);
176extern int usbnet_cdc_bind(struct usbnet *, struct usb_interface *);
175extern void usbnet_cdc_unbind(struct usbnet *, struct usb_interface *); 177extern void usbnet_cdc_unbind(struct usbnet *, struct usb_interface *);
178extern void usbnet_cdc_status(struct usbnet *, struct urb *);
176 179
177/* CDC and RNDIS support the same host-chosen packet filters for IN transfers */ 180/* CDC and RNDIS support the same host-chosen packet filters for IN transfers */
178#define DEFAULT_FILTER (USB_CDC_PACKET_TYPE_BROADCAST \ 181#define DEFAULT_FILTER (USB_CDC_PACKET_TYPE_BROADCAST \