From: Tilman Schmidt <[EMAIL PROTECTED]>
Remove pointless taking of spinlock around reading a single pointer-sized
or smaller variable.
Signed-off-by: Tilman Schmidt <[EMAIL PROTECTED]>
---
drivers/isdn/gigaset/bas-gigaset.c | 9 +--------
drivers/isdn/gigaset/i4l.c | 12 ++----------
drivers/isdn/gigaset/proc.c | 8 +-------
drivers/isdn/gigaset/usb-gigaset.c | 7 -------
4 files changed, 4 insertions(+), 32 deletions(-)
diff -rupNX dont-diff linux-2.6.22-orig/drivers/isdn/gigaset/bas-gigaset.c
linux-2.6.22-work/drivers/isdn/gigaset/bas-gigaset.c
--- linux-2.6.22-orig/drivers/isdn/gigaset/bas-gigaset.c 2007-02-01
01:24:38.000000000 +0100
+++ linux-2.6.22-work/drivers/isdn/gigaset/bas-gigaset.c 2007-02-05
15:46:14.000000000 +0100
@@ -1936,14 +1936,7 @@ static int gigaset_write_room(struct car
*/
static int gigaset_chars_in_buffer(struct cardstate *cs)
{
- unsigned long flags;
- unsigned bytes;
-
- spin_lock_irqsave(&cs->cmdlock, flags);
- bytes = cs->cmdbytes;
- spin_unlock_irqrestore(&cs->cmdlock, flags);
-
- return bytes;
+ return cs->cmdbytes;
}
/* gigaset_brkchars
diff -rupNX dont-diff linux-2.6.22-orig/drivers/isdn/gigaset/i4l.c
linux-2.6.22-work/drivers/isdn/gigaset/i4l.c
--- linux-2.6.22-orig/drivers/isdn/gigaset/i4l.c 2006-11-29
22:57:37.000000000 +0100
+++ linux-2.6.22-work/drivers/isdn/gigaset/i4l.c 2007-02-05
15:46:12.000000000 +0100
@@ -109,13 +109,9 @@ EXPORT_SYMBOL_GPL(gigaset_skb_sent);
static int command_from_LL(isdn_ctrl *cntrl)
{
struct cardstate *cs = gigaset_get_cs_by_id(cntrl->driver);
- //isdn_ctrl response;
- //unsigned long flags;
struct bc_state *bcs;
int retval = 0;
struct setup_parm *sp;
- unsigned param;
- unsigned long flags;
gigaset_debugdrivers();
@@ -162,12 +158,8 @@ static int command_from_LL(isdn_ctrl *cn
}
*sp = cntrl->parm.setup;
- spin_lock_irqsave(&cs->lock, flags);
- param = bcs->at_state.seq_index;
- spin_unlock_irqrestore(&cs->lock, flags);
-
- if (!gigaset_add_event(cs, &bcs->at_state, EV_DIAL, sp, param,
- NULL)) {
+ if (!gigaset_add_event(cs, &bcs->at_state, EV_DIAL, sp,
+ bcs->at_state.seq_index, NULL)) {
//FIXME what should we do?
kfree(sp);
gigaset_free_channel(bcs);
diff -rupNX dont-diff linux-2.6.22-orig/drivers/isdn/gigaset/proc.c
linux-2.6.22-work/drivers/isdn/gigaset/proc.c
--- linux-2.6.22-orig/drivers/isdn/gigaset/proc.c 2007-02-01
01:23:54.000000000 +0100
+++ linux-2.6.22-work/drivers/isdn/gigaset/proc.c 2007-02-05
16:16:16.000000000 +0100
@@ -19,15 +19,9 @@
static ssize_t show_cidmode(struct device *dev,
struct device_attribute *attr, char *buf)
{
- int ret;
- unsigned long flags;
struct cardstate *cs = dev_get_drvdata(dev);
- spin_lock_irqsave(&cs->lock, flags);
- ret = sprintf(buf, "%u\n", cs->cidmode);
- spin_unlock_irqrestore(&cs->lock, flags);
-
- return ret;
+ return sprintf(buf, "%u\n", cs->cidmode);
}
static ssize_t set_cidmode(struct device *dev, struct device_attribute *attr,
diff -rupNX dont-diff linux-2.6.22-orig/drivers/isdn/gigaset/usb-gigaset.c
linux-2.6.22-work/drivers/isdn/gigaset/usb-gigaset.c
--- linux-2.6.22-orig/drivers/isdn/gigaset/usb-gigaset.c 2007-02-01
01:23:54.000000000 +0100
+++ linux-2.6.22-work/drivers/isdn/gigaset/usb-gigaset.c 2007-02-05
17:28:47.000000000 +0100
@@ -310,7 +310,6 @@ static void gigaset_modem_fill(unsigned
struct cardstate *cs = (struct cardstate *) data;
struct bc_state *bcs = &cs->bcs[0]; /* only one channel */
struct cmdbuf_t *cb;
- unsigned long flags;
int again;
gig_dbg(DEBUG_OUTPUT, "modem_fill");
@@ -323,9 +322,7 @@ static void gigaset_modem_fill(unsigned
do {
again = 0;
if (!bcs->tx_skb) { /* no skb is being sent */
- spin_lock_irqsave(&cs->cmdlock, flags);
cb = cs->cmdbuf;
- spin_unlock_irqrestore(&cs->cmdlock, flags);
if (cb) { /* commands to send? */
gig_dbg(DEBUG_OUTPUT, "modem_fill: cb");
if (send_cb(cs, cb) < 0) {
@@ -546,13 +543,9 @@ static int gigaset_write_cmd(struct card
static int gigaset_write_room(struct cardstate *cs)
{
- unsigned long flags;
unsigned bytes;
- spin_lock_irqsave(&cs->cmdlock, flags);
bytes = cs->cmdbytes;
- spin_unlock_irqrestore(&cs->cmdlock, flags);
-
return bytes < IF_WRITEBUF ? IF_WRITEBUF - bytes : 0;
}
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel