summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@home.transmeta.com>2002-05-17 09:52:53 -0700
committerLinus Torvalds <torvalds@home.transmeta.com>2002-05-17 09:52:53 -0700
commit760a916ddfc34ba2c692e2114b1865b6ae261458 (patch)
tree5cb95d455c202023176733c1a7719239bf0cb415 /include
parente752b6ddb44b00c5faf9fae5411c7c0dab7f9aaa (diff)
parent5a1c8ba5a25c3a3d621cc045349a1b7052532d7a (diff)
Merge http://gkernel.bkbits.net/irda-2.5
into home.transmeta.com:/home/torvalds/v2.5/linux
Diffstat (limited to 'include')
-rw-r--r--include/net/irda/irlmp.h38
-rw-r--r--include/net/irda/irttp.h2
2 files changed, 24 insertions, 16 deletions
diff --git a/include/net/irda/irlmp.h b/include/net/irda/irlmp.h
index f305df3ba193..fdbf5f75ae85 100644
--- a/include/net/irda/irlmp.h
+++ b/include/net/irda/irlmp.h
@@ -100,7 +100,7 @@ struct lsap_cb {
irda_queue_t queue; /* Must be first */
magic_t magic;
- int connected;
+ unsigned long connected; /* set_bit used on this */
int persistent;
__u8 slsap_sel; /* Source (this) LSAP address */
@@ -120,6 +120,21 @@ struct lsap_cb {
};
/*
+ * Used for caching the last slsap->dlsap->handle mapping
+ *
+ * We don't need to keep/match the remote address in the cache because
+ * we are associated with a specific LAP (which implies it).
+ * Jean II
+ */
+typedef struct {
+ int valid;
+
+ __u8 slsap_sel;
+ __u8 dlsap_sel;
+ struct lsap_cb *lsap;
+} CACHE_ENTRY;
+
+/*
* Information about each registred IrLAP layer
*/
struct lap_cb {
@@ -140,20 +155,16 @@ struct lap_cb {
struct qos_info *qos; /* LAP QoS for this session */
struct timer_list idle_timer;
+
+#ifdef CONFIG_IRDA_CACHE_LAST_LSAP
+ /* The lsap cache was moved from struct irlmp_cb to here because
+ * it must be associated with the specific LAP. Also, this
+ * improves performance. - Jean II */
+ CACHE_ENTRY cache; /* Caching last slsap->dlsap->handle mapping */
+#endif
};
/*
- * Used for caching the last slsap->dlsap->handle mapping
- */
-typedef struct {
- int valid;
-
- __u8 slsap_sel;
- __u8 dlsap_sel;
- struct lsap_cb *lsap;
-} CACHE_ENTRY;
-
-/*
* Main structure for IrLMP
*/
struct irlmp_cb {
@@ -166,9 +177,6 @@ struct irlmp_cb {
int free_lsap_sel;
-#ifdef CONFIG_IRDA_CACHE_LAST_LSAP
- CACHE_ENTRY cache; /* Caching last slsap->dlsap->handle mapping */
-#endif
struct timer_list discovery_timer;
hashbin_t *links; /* IrLAP connection table */
diff --git a/include/net/irda/irttp.h b/include/net/irda/irttp.h
index c603927ddb9b..c23257ef5559 100644
--- a/include/net/irda/irttp.h
+++ b/include/net/irda/irttp.h
@@ -139,7 +139,7 @@ struct tsap_cb {
__u32 tx_max_sdu_size; /* Max transmit user data size */
int close_pend; /* Close, but disconnect_pend */
- int disconnect_pend; /* Disconnect, but still data to send */
+ unsigned long disconnect_pend; /* Disconnect, but still data to send */
struct sk_buff *disconnect_skb;
};