patch-2.4.0-test3 linux/drivers/atm/nicstar.h

Next file: linux/drivers/block/acsi_slm.c
Previous file: linux/drivers/atm/nicstar.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test2/linux/drivers/atm/nicstar.h linux/drivers/atm/nicstar.h
@@ -28,6 +28,8 @@
 
 /* Options ********************************************************************/
 
+#undef NS_DEBUG_SPINLOCKS
+
 #define NS_MAX_CARDS 4		/* Maximum number of NICStAR based cards
 				   controlled by the device driver. Must
                                    be <= 5 */
@@ -705,6 +707,11 @@
    int tbd_count;			/* Only meaningful on variable rate */
    wait_queue_head_t scqfull_waitq;
    volatile char full;			/* SCQ full indicator */
+   spinlock_t lock;			/* SCQ spinlock */
+#ifdef NS_DEBUG_SPINLOCKS
+   volatile long has_lock;
+   volatile int cpu_lock;
+#endif /* NS_DEBUG_SPINLOCKS */
 } scq_info;
 
 
@@ -779,8 +786,14 @@
    struct sk_buff *rcbuf;		/* Current raw cell buffer */
    u32 rawch;				/* Raw cell queue head */
    unsigned intcnt;			/* Interrupt counter */
-   volatile int in_handler: 1;
-   volatile int in_poll: 1;
+   spinlock_t int_lock;		/* Interrupt lock */
+   spinlock_t res_lock;		/* Card resource lock */
+#ifdef NS_DEBUG_SPINLOCKS
+   volatile long has_int_lock;
+   volatile int cpu_int;
+   volatile long has_res_lock;
+   volatile int cpu_res;
+#endif /* NS_DEBUG_SPINLOCKS */
 } ns_dev;
 
 

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)