From: Alexis Bruemmer <alexisb@us.ibm.com>
To: linux-scsi <linux-scsi@vger.kernel.org>
Subject: [PATCH 8/8] aic94xx: use bitops for testing, setting and clearing bits
Date: Tue, 09 May 2006 14:42:43 -0700 [thread overview]
Message-ID: <1147210963.11847.69.camel@localhost.localdomain> (raw)
In-Reply-To: <1147209211.11847.33.camel@localhost.localdomain>
Use bitops for testing, setting and clearing bits
Signed-off-by: Alexis Bruemmer <alexisb@us.ibm.com>
Signed-off-by: Mike Anderson <andmike@us.ibm.com>
---
drivers/scsi/sas/sas_internal.h | 16 +++++++++-------
include/scsi/sas/sas_class.h | 8 ++++----
2 files changed, 13 insertions(+), 11 deletions(-)
Index: aic94xx-sas-2.6-patched/drivers/scsi/sas/sas_internal.h
===================================================================
--- aic94xx-sas-2.6-patched.orig/drivers/scsi/sas/sas_internal.h
+++ aic94xx-sas-2.6-patched/drivers/scsi/sas/sas_internal.h
@@ -27,6 +27,7 @@
#define _SAS_INTERNAL_H_
#include <scsi/sas/sas_class.h>
+#include <linux/bitops.h>
#include <scsi/scsi_host.h>
#define sas_printk(fmt, ...) printk(KERN_NOTICE "sas: " fmt, ## __VA_ARGS__)
@@ -70,28 +71,29 @@ void sas_notify_lldd_dev_gone(struct dom
void sas_hae_reset(void *);
-static inline void sas_queue_event(int event, spinlock_t *lock, u32 *pending,
- struct work_struct *work,
- struct Scsi_Host *shost)
+static inline void sas_queue_event(int event, spinlock_t *lock, unsigned
+ long *pending, struct work_struct
+ *work, struct Scsi_Host *shost)
{
unsigned long flags;
spin_lock_irqsave(lock, flags);
- if (*pending & (1 << event)) {
+ if (test_bit(event, pending)) {
spin_unlock_irqrestore(lock, flags);
return;
}
- *pending |= (1 << event);
+ __set_bit(event, pending);
spin_unlock_irqrestore(lock, flags);
scsi_queue_work(shost, work);
}
-static inline void sas_begin_event(int event, spinlock_t *lock, u32 *pending)
+static inline void sas_begin_event(int event, spinlock_t *lock, unsigned
+ long *pending)
{
unsigned long flags;
spin_lock_irqsave(lock, flags);
- *pending &= ~(1 << event);
+ __clear_bit(event, pending);
spin_unlock_irqrestore(lock, flags);
}
Index: aic94xx-sas-2.6-patched/include/scsi/sas/sas_class.h
===================================================================
--- aic94xx-sas-2.6-patched.orig/include/scsi/sas/sas_class.h
+++ aic94xx-sas-2.6-patched/include/scsi/sas/sas_class.h
@@ -94,8 +94,8 @@ struct asd_sas_phy {
struct work_struct port_events[PORT_NUM_EVENTS];
struct work_struct phy_events[PHY_NUM_EVENTS];
- u32 port_events_pending;
- u32 phy_events_pending;
+ unsigned long port_events_pending;
+ unsigned long phy_events_pending;
int error;
@@ -138,7 +138,7 @@ struct sas_port;
struct sas_discovery {
spinlock_t disc_event_lock;
struct work_struct disc_work[DISC_NUM_EVENTS];
- u32 pending;
+ unsigned long pending;
u8 fanout_sas_addr[8];
u8 eeds_a[8];
u8 eeds_b[8];
@@ -199,7 +199,7 @@ struct sas_ha_struct {
/* private: */
spinlock_t event_lock;
struct work_struct ha_events[HA_NUM_EVENTS];
- u32 pending;
+ unsigned long pending;
struct scsi_core core;
next prev parent reply other threads:[~2006-05-09 21:42 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-09 21:13 [PATCH 0/8] aic94xx: sas code clean-up Alexis Bruemmer
2006-05-09 21:20 ` [PATCH 1/8] aic94xx: move sas README Alexis Bruemmer
2006-05-09 21:25 ` [PATCH 2/8] aic94xx: remove the sas_common.c file Alexis Bruemmer
2006-05-09 21:27 ` [PATCH 3/8] aic94xx: remove the //depot SCM comments Alexis Bruemmer
2006-05-09 21:31 ` [PATCH 4/8] aic94xx: remove expander_conf.c Alexis Bruemmer
2006-05-10 6:56 ` Luben Tuikov
2006-05-09 21:33 ` [PATCH 5/8] aic94xx: remove inline functions Alexis Bruemmer
2006-05-09 21:37 ` [PATCH 6/8] aic94xx: move list_each_entry_reverse_safe from sas_discover.h to list.h Alexis Bruemmer
2006-05-10 7:01 ` Luben Tuikov
2006-05-10 7:07 ` Luben Tuikov
2006-05-09 21:39 ` [PATCH 7/8] aic94xx: remove queue implementation comment Alexis Bruemmer
2006-05-10 7:09 ` Luben Tuikov
2006-05-09 21:42 ` Alexis Bruemmer [this message]
2006-05-09 21:53 ` [PATCH 8/8] aic94xx: use bitops for testing, setting and clearing bits Rolf Eike Beer
2006-05-10 6:53 ` [PATCH 0/8] aic94xx: sas code clean-up Luben Tuikov
2006-05-10 7:21 ` Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1147210963.11847.69.camel@localhost.localdomain \
--to=alexisb@us.ibm.com \
--cc=linux-scsi@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox