The patch titled spin/rwlock init cleanups has been removed from the -mm tree. Its filename is spin-rwlock-init-cleanups.patch This patch was dropped because it was merged into mainline or a subsystem tree ------------------------------------------------------ Subject: spin/rwlock init cleanups From: Ingo Molnar <mingo@xxxxxxx> locking init cleanups: - convert " = SPIN_LOCK_UNLOCKED" to spin_lock_init() or DEFINE_SPINLOCK() - convert rwlocks in a similar manner this patch was generated automatically. Motivation: - cleanliness - lockdep needs control of lock initialization, which the open-coded variants do not give - it's also useful for -rt and for lock debugging in general Signed-off-by: Ingo Molnar <mingo@xxxxxxx> Signed-off-by: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- arch/ia64/sn/kernel/irq.c | 2 +- arch/mips/kernel/smtc.c | 4 ++-- arch/powerpc/platforms/cell/spufs/switch.c | 2 +- arch/powerpc/platforms/powermac/pfunc_core.c | 2 +- arch/powerpc/platforms/pseries/eeh_event.c | 2 +- arch/powerpc/sysdev/mmio_nvram.c | 2 +- arch/xtensa/kernel/time.c | 2 +- arch/xtensa/kernel/traps.c | 2 +- drivers/char/drm/drm_memory_debug.h | 2 +- drivers/char/drm/via_dmablit.c | 2 +- drivers/char/epca.c | 2 +- drivers/char/moxa.c | 2 +- drivers/char/specialix.c | 2 +- drivers/char/sx.c | 2 +- drivers/isdn/gigaset/common.c | 2 +- drivers/leds/led-core.c | 2 +- drivers/leds/led-triggers.c | 2 +- drivers/misc/ibmasm/module.c | 2 +- drivers/pcmcia/m8xx_pcmcia.c | 4 ++-- drivers/rapidio/rio-access.c | 4 ++-- drivers/rtc/rtc-sa1100.c | 2 +- drivers/rtc/rtc-vr41xx.c | 2 +- drivers/s390/block/dasd_eer.c | 2 +- drivers/scsi/libata-core.c | 2 +- drivers/sn/ioc3.c | 2 +- drivers/video/backlight/hp680_bl.c | 2 +- fs/nfsd/nfs4state.c | 2 +- fs/ocfs2/cluster/heartbeat.c | 2 +- fs/ocfs2/cluster/tcp.c | 2 +- fs/ocfs2/dlm/dlmdomain.c | 2 +- fs/ocfs2/dlm/dlmlock.c | 2 +- fs/ocfs2/dlm/dlmrecovery.c | 4 ++-- fs/ocfs2/dlmglue.c | 2 +- fs/ocfs2/journal.c | 2 +- include/asm-alpha/core_t2.h | 2 +- kernel/audit.c | 2 +- mm/sparse.c | 2 +- net/ipv6/route.c | 2 +- net/sunrpc/auth_gss/gss_krb5_seal.c | 2 +- net/tipc/bcast.c | 4 ++-- net/tipc/bearer.c | 2 +- net/tipc/config.c | 2 +- net/tipc/dbg.c | 2 +- net/tipc/handler.c | 2 +- net/tipc/name_table.c | 4 ++-- net/tipc/net.c | 2 +- net/tipc/node.c | 2 +- net/tipc/port.c | 4 ++-- net/tipc/ref.c | 4 ++-- net/tipc/subscr.c | 2 +- net/tipc/user_reg.c | 2 +- 51 files changed, 59 insertions(+), 59 deletions(-) diff -puN arch/ia64/sn/kernel/irq.c~spin-rwlock-init-cleanups arch/ia64/sn/kernel/irq.c --- a/arch/ia64/sn/kernel/irq.c~spin-rwlock-init-cleanups +++ a/arch/ia64/sn/kernel/irq.c @@ -27,7 +27,7 @@ static void unregister_intr_pda(struct s int sn_force_interrupt_flag = 1; extern int sn_ioif_inited; struct list_head **sn_irq_lh; -static spinlock_t sn_irq_info_lock = SPIN_LOCK_UNLOCKED; /* non-IRQ lock */ +static DEFINE_SPINLOCK(sn_irq_info_lock); /* non-IRQ lock */ u64 sn_intr_alloc(nasid_t local_nasid, int local_widget, struct sn_irq_info *sn_irq_info, diff -puN arch/mips/kernel/smtc.c~spin-rwlock-init-cleanups arch/mips/kernel/smtc.c --- a/arch/mips/kernel/smtc.c~spin-rwlock-init-cleanups +++ a/arch/mips/kernel/smtc.c @@ -367,7 +367,7 @@ void mipsmt_prepare_cpus(void) dvpe(); dmt(); - freeIPIq.lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&freeIPIq.lock); /* * We probably don't have as many VPEs as we do SMP "CPUs", @@ -375,7 +375,7 @@ void mipsmt_prepare_cpus(void) */ for (i=0; i<NR_CPUS; i++) { IPIQ[i].head = IPIQ[i].tail = NULL; - IPIQ[i].lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&IPIQ[i].lock); IPIQ[i].depth = 0; ipi_timer_latch[i] = 0; } diff -puN arch/powerpc/platforms/cell/spufs/switch.c~spin-rwlock-init-cleanups arch/powerpc/platforms/cell/spufs/switch.c --- a/arch/powerpc/platforms/cell/spufs/switch.c~spin-rwlock-init-cleanups +++ a/arch/powerpc/platforms/cell/spufs/switch.c @@ -2203,7 +2203,7 @@ void spu_init_csa(struct spu_state *csa) memset(lscsa, 0, sizeof(struct spu_lscsa)); csa->lscsa = lscsa; - csa->register_lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&csa->register_lock); /* Set LS pages reserved to allow for user-space mapping. */ for (p = lscsa->ls; p < lscsa->ls + LS_SIZE; p += PAGE_SIZE) diff -puN arch/powerpc/platforms/powermac/pfunc_core.c~spin-rwlock-init-cleanups arch/powerpc/platforms/powermac/pfunc_core.c --- a/arch/powerpc/platforms/powermac/pfunc_core.c~spin-rwlock-init-cleanups +++ a/arch/powerpc/platforms/powermac/pfunc_core.c @@ -546,7 +546,7 @@ struct pmf_device { }; static LIST_HEAD(pmf_devices); -static spinlock_t pmf_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(pmf_lock); static DEFINE_MUTEX(pmf_irq_mutex); static void pmf_release_device(struct kref *kref) diff -puN arch/powerpc/platforms/pseries/eeh_event.c~spin-rwlock-init-cleanups arch/powerpc/platforms/pseries/eeh_event.c --- a/arch/powerpc/platforms/pseries/eeh_event.c~spin-rwlock-init-cleanups +++ a/arch/powerpc/platforms/pseries/eeh_event.c @@ -35,7 +35,7 @@ */ /* EEH event workqueue setup. */ -static spinlock_t eeh_eventlist_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(eeh_eventlist_lock); LIST_HEAD(eeh_eventlist); static void eeh_thread_launcher(void *); DECLARE_WORK(eeh_event_wq, eeh_thread_launcher, NULL); diff -puN arch/powerpc/sysdev/mmio_nvram.c~spin-rwlock-init-cleanups arch/powerpc/sysdev/mmio_nvram.c --- a/arch/powerpc/sysdev/mmio_nvram.c~spin-rwlock-init-cleanups +++ a/arch/powerpc/sysdev/mmio_nvram.c @@ -32,7 +32,7 @@ static void __iomem *mmio_nvram_start; static long mmio_nvram_len; -static spinlock_t mmio_nvram_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(mmio_nvram_lock); static ssize_t mmio_nvram_read(char *buf, size_t count, loff_t *index) { diff -puN arch/xtensa/kernel/time.c~spin-rwlock-init-cleanups arch/xtensa/kernel/time.c --- a/arch/xtensa/kernel/time.c~spin-rwlock-init-cleanups +++ a/arch/xtensa/kernel/time.c @@ -29,7 +29,7 @@ extern volatile unsigned long wall_jiffies; -spinlock_t rtc_lock = SPIN_LOCK_UNLOCKED; +DEFINE_SPINLOCK(rtc_lock); EXPORT_SYMBOL(rtc_lock); diff -puN arch/xtensa/kernel/traps.c~spin-rwlock-init-cleanups arch/xtensa/kernel/traps.c --- a/arch/xtensa/kernel/traps.c~spin-rwlock-init-cleanups +++ a/arch/xtensa/kernel/traps.c @@ -461,7 +461,7 @@ void show_code(unsigned int *pc) } } -spinlock_t die_lock = SPIN_LOCK_UNLOCKED; +DEFINE_SPINLOCK(die_lock); void die(const char * str, struct pt_regs * regs, long err) { diff -puN drivers/char/drm/drm_memory_debug.h~spin-rwlock-init-cleanups drivers/char/drm/drm_memory_debug.h --- a/drivers/char/drm/drm_memory_debug.h~spin-rwlock-init-cleanups +++ a/drivers/char/drm/drm_memory_debug.h @@ -43,7 +43,7 @@ typedef struct drm_mem_stats { unsigned long bytes_freed; } drm_mem_stats_t; -static spinlock_t drm_mem_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(drm_mem_lock); static unsigned long drm_ram_available = 0; /* In pages */ static unsigned long drm_ram_used = 0; static drm_mem_stats_t drm_mem_stats[] = diff -puN drivers/char/drm/via_dmablit.c~spin-rwlock-init-cleanups drivers/char/drm/via_dmablit.c --- a/drivers/char/drm/via_dmablit.c~spin-rwlock-init-cleanups +++ a/drivers/char/drm/via_dmablit.c @@ -557,7 +557,7 @@ via_init_dmablit(drm_device_t *dev) blitq->num_outstanding = 0; blitq->is_active = 0; blitq->aborting = 0; - blitq->blit_lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&blitq->blit_lock); for (j=0; j<VIA_NUM_BLIT_SLOTS; ++j) { DRM_INIT_WAITQUEUE(blitq->blit_queue + j); } diff -puN drivers/char/epca.c~spin-rwlock-init-cleanups drivers/char/epca.c --- a/drivers/char/epca.c~spin-rwlock-init-cleanups +++ a/drivers/char/epca.c @@ -80,7 +80,7 @@ static int invalid_lilo_config; /* The ISA boards do window flipping into the same spaces so its only sane with a single lock. It's still pretty efficient */ -static spinlock_t epca_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(epca_lock); /* ----------------------------------------------------------------------- MAXBOARDS is typically 12, but ISA and EISA cards are restricted to diff -puN drivers/char/moxa.c~spin-rwlock-init-cleanups drivers/char/moxa.c --- a/drivers/char/moxa.c~spin-rwlock-init-cleanups +++ a/drivers/char/moxa.c @@ -301,7 +301,7 @@ static struct tty_operations moxa_ops = .tiocmset = moxa_tiocmset, }; -static spinlock_t moxa_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(moxa_lock); #ifdef CONFIG_PCI static int moxa_get_PCI_conf(struct pci_dev *p, int board_type, moxa_board_conf * board) diff -puN drivers/char/specialix.c~spin-rwlock-init-cleanups drivers/char/specialix.c --- a/drivers/char/specialix.c~spin-rwlock-init-cleanups +++ a/drivers/char/specialix.c @@ -2477,7 +2477,7 @@ static int __init specialix_init(void) #endif for (i = 0; i < SX_NBOARD; i++) - sx_board[i].lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&sx_board[i].lock); if (sx_init_drivers()) { func_exit(); diff -puN drivers/char/sx.c~spin-rwlock-init-cleanups drivers/char/sx.c --- a/drivers/char/sx.c~spin-rwlock-init-cleanups +++ a/drivers/char/sx.c @@ -2320,7 +2320,7 @@ static int sx_init_portstructs (int nboa #ifdef NEW_WRITE_LOCKING port->gs.port_write_mutex = MUTEX; #endif - port->gs.driver_lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&port->gs.driver_lock); /* * Initializing wait queue */ diff -puN drivers/isdn/gigaset/common.c~spin-rwlock-init-cleanups drivers/isdn/gigaset/common.c --- a/drivers/isdn/gigaset/common.c~spin-rwlock-init-cleanups +++ a/drivers/isdn/gigaset/common.c @@ -981,7 +981,7 @@ exit: EXPORT_SYMBOL_GPL(gigaset_stop); static LIST_HEAD(drivers); -static spinlock_t driver_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(driver_lock); struct cardstate *gigaset_get_cs_by_id(int id) { diff -puN drivers/leds/led-core.c~spin-rwlock-init-cleanups drivers/leds/led-core.c --- a/drivers/leds/led-core.c~spin-rwlock-init-cleanups +++ a/drivers/leds/led-core.c @@ -18,7 +18,7 @@ #include <linux/leds.h> #include "leds.h" -rwlock_t leds_list_lock = RW_LOCK_UNLOCKED; +DEFINE_RWLOCK(leds_list_lock); LIST_HEAD(leds_list); EXPORT_SYMBOL_GPL(leds_list); diff -puN drivers/leds/led-triggers.c~spin-rwlock-init-cleanups drivers/leds/led-triggers.c --- a/drivers/leds/led-triggers.c~spin-rwlock-init-cleanups +++ a/drivers/leds/led-triggers.c @@ -26,7 +26,7 @@ /* * Nests outside led_cdev->trigger_lock */ -static rwlock_t triggers_list_lock = RW_LOCK_UNLOCKED; +static DEFINE_RWLOCK(triggers_list_lock); static LIST_HEAD(trigger_list); ssize_t led_trigger_store(struct class_device *dev, const char *buf, diff -puN drivers/misc/ibmasm/module.c~spin-rwlock-init-cleanups drivers/misc/ibmasm/module.c --- a/drivers/misc/ibmasm/module.c~spin-rwlock-init-cleanups +++ a/drivers/misc/ibmasm/module.c @@ -85,7 +85,7 @@ static int __devinit ibmasm_init_one(str } memset(sp, 0, sizeof(struct service_processor)); - sp->lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&sp->lock); INIT_LIST_HEAD(&sp->command_queue); pci_set_drvdata(pdev, (void *)sp); diff -puN drivers/pcmcia/m8xx_pcmcia.c~spin-rwlock-init-cleanups drivers/pcmcia/m8xx_pcmcia.c --- a/drivers/pcmcia/m8xx_pcmcia.c~spin-rwlock-init-cleanups +++ a/drivers/pcmcia/m8xx_pcmcia.c @@ -157,7 +157,7 @@ MODULE_LICENSE("Dual MPL/GPL"); static int pcmcia_schlvl = PCMCIA_SCHLVL; -static spinlock_t events_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(events_lock); #define PCMCIA_SOCKET_KEY_5V 1 @@ -644,7 +644,7 @@ static struct platform_device m8xx_devic }; static u32 pending_events[PCMCIA_SOCKETS_NO]; -static spinlock_t pending_event_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(pending_event_lock); static irqreturn_t m8xx_interrupt(int irq, void *dev, struct pt_regs *regs) { diff -puN drivers/rapidio/rio-access.c~spin-rwlock-init-cleanups drivers/rapidio/rio-access.c --- a/drivers/rapidio/rio-access.c~spin-rwlock-init-cleanups +++ a/drivers/rapidio/rio-access.c @@ -17,8 +17,8 @@ * These interrupt-safe spinlocks protect all accesses to RIO * configuration space and doorbell access. */ -static spinlock_t rio_config_lock = SPIN_LOCK_UNLOCKED; -static spinlock_t rio_doorbell_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(rio_config_lock); +static DEFINE_SPINLOCK(rio_doorbell_lock); /* * Wrappers for all RIO configuration access functions. They just check diff -puN drivers/rtc/rtc-sa1100.c~spin-rwlock-init-cleanups drivers/rtc/rtc-sa1100.c --- a/drivers/rtc/rtc-sa1100.c~spin-rwlock-init-cleanups +++ a/drivers/rtc/rtc-sa1100.c @@ -45,7 +45,7 @@ static unsigned long rtc_freq = 1024; static struct rtc_time rtc_alarm; -static spinlock_t sa1100_rtc_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(sa1100_rtc_lock); static int rtc_update_alarm(struct rtc_time *alrm) { diff -puN drivers/rtc/rtc-vr41xx.c~spin-rwlock-init-cleanups drivers/rtc/rtc-vr41xx.c --- a/drivers/rtc/rtc-vr41xx.c~spin-rwlock-init-cleanups +++ a/drivers/rtc/rtc-vr41xx.c @@ -93,7 +93,7 @@ static void __iomem *rtc2_base; static unsigned long epoch = 1970; /* Jan 1 1970 00:00:00 */ -static spinlock_t rtc_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(rtc_lock); static char rtc_name[] = "RTC"; static unsigned long periodic_frequency; static unsigned long periodic_count; diff -puN drivers/s390/block/dasd_eer.c~spin-rwlock-init-cleanups drivers/s390/block/dasd_eer.c --- a/drivers/s390/block/dasd_eer.c~spin-rwlock-init-cleanups +++ a/drivers/s390/block/dasd_eer.c @@ -89,7 +89,7 @@ struct eerbuffer { }; static LIST_HEAD(bufferlist); -static spinlock_t bufferlock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(bufferlock); static DECLARE_WAIT_QUEUE_HEAD(dasd_eer_read_wait_queue); /* diff -puN drivers/scsi/libata-core.c~spin-rwlock-init-cleanups drivers/scsi/libata-core.c --- a/drivers/scsi/libata-core.c~spin-rwlock-init-cleanups +++ a/drivers/scsi/libata-core.c @@ -5733,7 +5733,7 @@ module_init(ata_init); module_exit(ata_exit); static unsigned long ratelimit_time; -static spinlock_t ata_ratelimit_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(ata_ratelimit_lock); int ata_ratelimit(void) { diff -puN drivers/sn/ioc3.c~spin-rwlock-init-cleanups drivers/sn/ioc3.c --- a/drivers/sn/ioc3.c~spin-rwlock-init-cleanups +++ a/drivers/sn/ioc3.c @@ -26,7 +26,7 @@ static DECLARE_RWSEM(ioc3_devices_rwsem) static struct ioc3_submodule *ioc3_submodules[IOC3_MAX_SUBMODULES]; static struct ioc3_submodule *ioc3_ethernet; -static rwlock_t ioc3_submodules_lock = RW_LOCK_UNLOCKED; +static DEFINE_RWLOCK(ioc3_submodules_lock); /* NIC probing code */ diff -puN drivers/video/backlight/hp680_bl.c~spin-rwlock-init-cleanups drivers/video/backlight/hp680_bl.c --- a/drivers/video/backlight/hp680_bl.c~spin-rwlock-init-cleanups +++ a/drivers/video/backlight/hp680_bl.c @@ -27,7 +27,7 @@ static int hp680bl_suspended; static int current_intensity = 0; -static spinlock_t bl_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(bl_lock); static struct backlight_device *hp680_backlight_device; static void hp680bl_send_intensity(struct backlight_device *bd) diff -puN fs/nfsd/nfs4state.c~spin-rwlock-init-cleanups fs/nfsd/nfs4state.c --- a/fs/nfsd/nfs4state.c~spin-rwlock-init-cleanups +++ a/fs/nfsd/nfs4state.c @@ -123,7 +123,7 @@ static void release_stateid(struct nfs4_ */ /* recall_lock protects the del_recall_lru */ -static spinlock_t recall_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(recall_lock); static struct list_head del_recall_lru; static void diff -puN fs/ocfs2/cluster/heartbeat.c~spin-rwlock-init-cleanups fs/ocfs2/cluster/heartbeat.c --- a/fs/ocfs2/cluster/heartbeat.c~spin-rwlock-init-cleanups +++ a/fs/ocfs2/cluster/heartbeat.c @@ -54,7 +54,7 @@ static DECLARE_RWSEM(o2hb_callback_sem); * multiple hb threads are watching multiple regions. A node is live * whenever any of the threads sees activity from the node in its region. */ -static spinlock_t o2hb_live_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(o2hb_live_lock); static struct list_head o2hb_live_slots[O2NM_MAX_NODES]; static unsigned long o2hb_live_node_bitmap[BITS_TO_LONGS(O2NM_MAX_NODES)]; static LIST_HEAD(o2hb_node_events); diff -puN fs/ocfs2/cluster/tcp.c~spin-rwlock-init-cleanups fs/ocfs2/cluster/tcp.c --- a/fs/ocfs2/cluster/tcp.c~spin-rwlock-init-cleanups +++ a/fs/ocfs2/cluster/tcp.c @@ -108,7 +108,7 @@ ##args); \ } while (0) -static rwlock_t o2net_handler_lock = RW_LOCK_UNLOCKED; +static DEFINE_RWLOCK(o2net_handler_lock); static struct rb_root o2net_handler_tree = RB_ROOT; static struct o2net_node o2net_nodes[O2NM_MAX_NODES]; diff -puN fs/ocfs2/dlm/dlmdomain.c~spin-rwlock-init-cleanups fs/ocfs2/dlm/dlmdomain.c --- a/fs/ocfs2/dlm/dlmdomain.c~spin-rwlock-init-cleanups +++ a/fs/ocfs2/dlm/dlmdomain.c @@ -88,7 +88,7 @@ out_free: * */ -spinlock_t dlm_domain_lock = SPIN_LOCK_UNLOCKED; +DEFINE_SPINLOCK(dlm_domain_lock); LIST_HEAD(dlm_domains); static DECLARE_WAIT_QUEUE_HEAD(dlm_domain_events); diff -puN fs/ocfs2/dlm/dlmlock.c~spin-rwlock-init-cleanups fs/ocfs2/dlm/dlmlock.c --- a/fs/ocfs2/dlm/dlmlock.c~spin-rwlock-init-cleanups +++ a/fs/ocfs2/dlm/dlmlock.c @@ -53,7 +53,7 @@ #define MLOG_MASK_PREFIX ML_DLM #include "cluster/masklog.h" -static spinlock_t dlm_cookie_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(dlm_cookie_lock); static u64 dlm_next_cookie = 1; static enum dlm_status dlm_send_remote_lock_request(struct dlm_ctxt *dlm, diff -puN fs/ocfs2/dlm/dlmrecovery.c~spin-rwlock-init-cleanups fs/ocfs2/dlm/dlmrecovery.c --- a/fs/ocfs2/dlm/dlmrecovery.c~spin-rwlock-init-cleanups +++ a/fs/ocfs2/dlm/dlmrecovery.c @@ -98,8 +98,8 @@ static void dlm_mig_lockres_worker(struc static u64 dlm_get_next_mig_cookie(void); -static spinlock_t dlm_reco_state_lock = SPIN_LOCK_UNLOCKED; -static spinlock_t dlm_mig_cookie_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(dlm_reco_state_lock); +static DEFINE_SPINLOCK(dlm_mig_cookie_lock); static u64 dlm_mig_cookie = 1; static u64 dlm_get_next_mig_cookie(void) diff -puN fs/ocfs2/dlmglue.c~spin-rwlock-init-cleanups fs/ocfs2/dlmglue.c --- a/fs/ocfs2/dlmglue.c~spin-rwlock-init-cleanups +++ a/fs/ocfs2/dlmglue.c @@ -242,7 +242,7 @@ static void ocfs2_build_lock_name(enum o mlog_exit_void(); } -static spinlock_t ocfs2_dlm_tracking_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(ocfs2_dlm_tracking_lock); static void ocfs2_add_lockres_tracking(struct ocfs2_lock_res *res, struct ocfs2_dlm_debug *dlm_debug) diff -puN fs/ocfs2/journal.c~spin-rwlock-init-cleanups fs/ocfs2/journal.c --- a/fs/ocfs2/journal.c~spin-rwlock-init-cleanups +++ a/fs/ocfs2/journal.c @@ -49,7 +49,7 @@ #include "buffer_head_io.h" -spinlock_t trans_inc_lock = SPIN_LOCK_UNLOCKED; +DEFINE_SPINLOCK(trans_inc_lock); static int ocfs2_force_read_journal(struct inode *inode); static int ocfs2_recover_node(struct ocfs2_super *osb, diff -puN include/asm-alpha/core_t2.h~spin-rwlock-init-cleanups include/asm-alpha/core_t2.h --- a/include/asm-alpha/core_t2.h~spin-rwlock-init-cleanups +++ a/include/asm-alpha/core_t2.h @@ -435,7 +435,7 @@ static inline void t2_outl(u32 b, unsign set_hae(msb); \ } -static spinlock_t t2_hae_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(t2_hae_lock); __EXTERN_INLINE u8 t2_readb(const volatile void __iomem *xaddr) { diff -puN kernel/audit.c~spin-rwlock-init-cleanups kernel/audit.c --- a/kernel/audit.c~spin-rwlock-init-cleanups +++ a/kernel/audit.c @@ -818,7 +818,7 @@ err: */ unsigned int audit_serial(void) { - static spinlock_t serial_lock = SPIN_LOCK_UNLOCKED; + static DEFINE_SPINLOCK(serial_lock); static unsigned int serial = 0; unsigned long flags; diff -puN mm/sparse.c~spin-rwlock-init-cleanups mm/sparse.c --- a/mm/sparse.c~spin-rwlock-init-cleanups +++ a/mm/sparse.c @@ -45,7 +45,7 @@ static struct mem_section *sparse_index_ static int sparse_index_init(unsigned long section_nr, int nid) { - static spinlock_t index_init_lock = SPIN_LOCK_UNLOCKED; + static DEFINE_SPINLOCK(index_init_lock); unsigned long root = SECTION_NR_TO_ROOT(section_nr); struct mem_section *section; int ret = 0; diff -puN net/ipv6/route.c~spin-rwlock-init-cleanups net/ipv6/route.c --- a/net/ipv6/route.c~spin-rwlock-init-cleanups +++ a/net/ipv6/route.c @@ -349,7 +349,7 @@ static struct rt6_info *rt6_select(struc (strict & RT6_SELECT_F_REACHABLE) && last && last != rt0) { /* no entries matched; do round-robin */ - static spinlock_t lock = SPIN_LOCK_UNLOCKED; + static DEFINE_SPINLOCK(lock); spin_lock(&lock); *head = rt0->u.next; rt0->u.next = last->u.next; diff -puN net/sunrpc/auth_gss/gss_krb5_seal.c~spin-rwlock-init-cleanups net/sunrpc/auth_gss/gss_krb5_seal.c --- a/net/sunrpc/auth_gss/gss_krb5_seal.c~spin-rwlock-init-cleanups +++ a/net/sunrpc/auth_gss/gss_krb5_seal.c @@ -70,7 +70,7 @@ # define RPCDBG_FACILITY RPCDBG_AUTH #endif -spinlock_t krb5_seq_lock = SPIN_LOCK_UNLOCKED; +DEFINE_SPINLOCK(krb5_seq_lock); u32 gss_get_mic_kerberos(struct gss_ctx *gss_ctx, struct xdr_buf *text, diff -puN net/tipc/bcast.c~spin-rwlock-init-cleanups net/tipc/bcast.c --- a/net/tipc/bcast.c~spin-rwlock-init-cleanups +++ a/net/tipc/bcast.c @@ -117,7 +117,7 @@ struct bclink { static struct bcbearer *bcbearer = NULL; static struct bclink *bclink = NULL; static struct link *bcl = NULL; -static spinlock_t bc_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(bc_lock); char tipc_bclink_name[] = "multicast-link"; @@ -796,7 +796,7 @@ int tipc_bclink_init(void) memset(bclink, 0, sizeof(struct bclink)); INIT_LIST_HEAD(&bcl->waiting_ports); bcl->next_out_no = 1; - bclink->node.lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&bclink->node.lock); bcl->owner = &bclink->node; bcl->max_pkt = MAX_PKT_DEFAULT_MCAST; tipc_link_set_queue_limits(bcl, BCLINK_WIN_DEFAULT); diff -puN net/tipc/bearer.c~spin-rwlock-init-cleanups net/tipc/bearer.c --- a/net/tipc/bearer.c~spin-rwlock-init-cleanups +++ a/net/tipc/bearer.c @@ -566,7 +566,7 @@ restart: b_ptr->link_req = tipc_disc_init_link_req(b_ptr, &m_ptr->bcast_addr, bcast_scope, 2); } - b_ptr->publ.lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&b_ptr->publ.lock); write_unlock_bh(&tipc_net_lock); info("Enabled bearer <%s>, discovery domain %s, priority %u\n", name, addr_string_fill(addr_string, bcast_scope), priority); diff -puN net/tipc/config.c~spin-rwlock-init-cleanups net/tipc/config.c --- a/net/tipc/config.c~spin-rwlock-init-cleanups +++ a/net/tipc/config.c @@ -63,7 +63,7 @@ struct manager { static struct manager mng = { 0}; -static spinlock_t config_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(config_lock); static const void *req_tlv_area; /* request message TLV area */ static int req_tlv_space; /* request message TLV area size */ diff -puN net/tipc/dbg.c~spin-rwlock-init-cleanups net/tipc/dbg.c --- a/net/tipc/dbg.c~spin-rwlock-init-cleanups +++ a/net/tipc/dbg.c @@ -41,7 +41,7 @@ #define MAX_STRING 512 static char print_string[MAX_STRING]; -static spinlock_t print_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(print_lock); static struct print_buf cons_buf = { NULL, 0, NULL, NULL }; struct print_buf *TIPC_CONS = &cons_buf; diff -puN net/tipc/handler.c~spin-rwlock-init-cleanups net/tipc/handler.c --- a/net/tipc/handler.c~spin-rwlock-init-cleanups +++ a/net/tipc/handler.c @@ -44,7 +44,7 @@ struct queue_item { static kmem_cache_t *tipc_queue_item_cache; static struct list_head signal_queue_head; -static spinlock_t qitem_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(qitem_lock); static int handler_enabled = 0; static void process_signal_queue(unsigned long dummy); diff -puN net/tipc/name_table.c~spin-rwlock-init-cleanups net/tipc/name_table.c --- a/net/tipc/name_table.c~spin-rwlock-init-cleanups +++ a/net/tipc/name_table.c @@ -101,7 +101,7 @@ struct name_table { static struct name_table table = { NULL } ; static atomic_t rsv_publ_ok = ATOMIC_INIT(0); -rwlock_t tipc_nametbl_lock = RW_LOCK_UNLOCKED; +DEFINE_RWLOCK(tipc_nametbl_lock); static int hash(int x) @@ -172,7 +172,7 @@ static struct name_seq *tipc_nameseq_cre } memset(nseq, 0, sizeof(*nseq)); - nseq->lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&nseq->lock); nseq->type = type; nseq->sseqs = sseq; dbg("tipc_nameseq_create(): nseq = %p, type %u, ssseqs %p, ff: %u\n", diff -puN net/tipc/net.c~spin-rwlock-init-cleanups net/tipc/net.c --- a/net/tipc/net.c~spin-rwlock-init-cleanups +++ a/net/tipc/net.c @@ -115,7 +115,7 @@ * - A local spin_lock protecting the queue of subscriber events. */ -rwlock_t tipc_net_lock = RW_LOCK_UNLOCKED; +DEFINE_RWLOCK(tipc_net_lock); struct network tipc_net = { NULL }; struct node *tipc_net_select_remote_node(u32 addr, u32 ref) diff -puN net/tipc/node.c~spin-rwlock-init-cleanups net/tipc/node.c --- a/net/tipc/node.c~spin-rwlock-init-cleanups +++ a/net/tipc/node.c @@ -77,7 +77,7 @@ struct node *tipc_node_create(u32 addr) memset(n_ptr, 0, sizeof(*n_ptr)); n_ptr->addr = addr; - n_ptr->lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&n_ptr->lock); INIT_LIST_HEAD(&n_ptr->nsub); n_ptr->owner = c_ptr; tipc_cltr_attach_node(c_ptr, n_ptr); diff -puN net/tipc/port.c~spin-rwlock-init-cleanups net/tipc/port.c --- a/net/tipc/port.c~spin-rwlock-init-cleanups +++ a/net/tipc/port.c @@ -57,8 +57,8 @@ static struct sk_buff *msg_queue_head = NULL; static struct sk_buff *msg_queue_tail = NULL; -spinlock_t tipc_port_list_lock = SPIN_LOCK_UNLOCKED; -static spinlock_t queue_lock = SPIN_LOCK_UNLOCKED; +DEFINE_SPINLOCK(tipc_port_list_lock); +static DEFINE_SPINLOCK(queue_lock); static LIST_HEAD(ports); static void port_handle_node_down(unsigned long ref); diff -puN net/tipc/ref.c~spin-rwlock-init-cleanups net/tipc/ref.c --- a/net/tipc/ref.c~spin-rwlock-init-cleanups +++ a/net/tipc/ref.c @@ -63,7 +63,7 @@ struct ref_table tipc_ref_table = { NULL }; -static rwlock_t ref_table_lock = RW_LOCK_UNLOCKED; +static DEFINE_RWLOCK(ref_table_lock); /** * tipc_ref_table_init - create reference table for objects @@ -87,7 +87,7 @@ int tipc_ref_table_init(u32 requested_si index_mask = sz - 1; for (i = sz - 1; i >= 0; i--) { table[i].object = NULL; - table[i].lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&table[i].lock); table[i].data.next_plus_upper = (start & ~index_mask) + i - 1; } tipc_ref_table.entries = table; diff -puN net/tipc/subscr.c~spin-rwlock-init-cleanups net/tipc/subscr.c --- a/net/tipc/subscr.c~spin-rwlock-init-cleanups +++ a/net/tipc/subscr.c @@ -457,7 +457,7 @@ int tipc_subscr_start(void) int res = -1; memset(&topsrv, 0, sizeof (topsrv)); - topsrv.lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&topsrv.lock); INIT_LIST_HEAD(&topsrv.subscriber_list); spin_lock_bh(&topsrv.lock); diff -puN net/tipc/user_reg.c~spin-rwlock-init-cleanups net/tipc/user_reg.c --- a/net/tipc/user_reg.c~spin-rwlock-init-cleanups +++ a/net/tipc/user_reg.c @@ -67,7 +67,7 @@ struct tipc_user { static struct tipc_user *users = NULL; static u32 next_free_user = MAX_USERID + 1; -static spinlock_t reg_lock = SPIN_LOCK_UNLOCKED; +static DEFINE_SPINLOCK(reg_lock); /** * reg_init - create TIPC user registry (but don't activate it) _ Patches currently in -mm which might be from mingo@xxxxxxx are origin.patch disable-debugging-version-of-write_lock.patch cpu_relax-use-in-acpi-lock-fix.patch acpi_srat-needs-acpi.patch lock-validator-fix-ns83820c-irq-flags-bug.patch revert-gregkh-pci-pci-test-that-drivers-properly-call-pci_set_master.patch x86-do_irq-check-irq-number.patch sched-clean-up-fallout-of-recent-changes.patch sched-cleanup-remove-task_t-convert-to-struct-task_struct.patch sched-cleanup-convert-schedc-internal-typedefs-to-struct.patch sched-fix-bug-in-__migrate_task.patch sched-add-above-background-load-function.patch mm-implement-swap-prefetching.patch sched-cleanup-remove-task_t-convert-to-struct-task_struct-prefetch.patch genirq-rename-desc-handler-to-desc-chip.patch genirq-rename-desc-handler-to-desc-chip-power-fix.patch genirq-rename-desc-handler-to-desc-chip-ia64-fix.patch genirq-rename-desc-handler-to-desc-chip-ia64-fix-2.patch genirq-rename-desc-handler-to-desc-chip-terminate_irqs-fix.patch genirq-sem2mutex-probe_sem-probing_active.patch genirq-cleanup-merge-irq_affinity-into-irq_desc.patch genirq-cleanup-remove-irq_descp.patch genirq-cleanup-remove-irq_descp-fix.patch genirq-cleanup-remove-fastcall.patch genirq-cleanup-misc-code-cleanups.patch genirq-cleanup-reduce-irq_desc_t-use-mark-it-obsolete.patch genirq-cleanup-include-linux-irqh.patch genirq-cleanup-merge-irq_dir-smp_affinity_entry-into-irq_desc.patch genirq-cleanup-merge-pending_irq_cpumask-into-irq_desc.patch genirq-cleanup-turn-arch_has_irq_per_cpu-into-config_irq_per_cpu.patch genirq-debug-better-debug-printout-in-enable_irq.patch genirq-add-retrigger-irq-op-to-consolidate-hw_irq_resend.patch genirq-doc-comment-include-linux-irqh-structures.patch genirq-doc-handle_irq_event-and-__do_irq-comments.patch genirq-cleanup-no_irq_type-cleanups.patch genirq-doc-add-design-documentation.patch genirq-add-genirq-sw-irq-retrigger.patch genirq-add-irq_noprobe-support.patch genirq-add-irq_norequest-support.patch genirq-add-irq_noautoen-support.patch genirq-update-copyrights.patch genirq-core.patch genirq-core-revert-noisiness-on-spurious-interrupts.patch genirq-msi-fixes-2.patch genirq-add-irq-chip-support.patch genirq-add-irq-chip-support-fix.patch genirq-add-irq-chip-support-misroute-irq-dont-call-desc-chip-end.patch genirq-add-handle_bad_irq.patch genirq-add-irq-wake-power-management-support.patch genirq-add-sa_trigger-support.patch genirq-cleanup-no_irq_type-no_irq_chip-rename.patch genirq-more-verbose-debugging-on-unexpected-irq-vectors.patch genirq-ia64-build-fix.patch genirq-add-irq_type_sense_mask.patch genirq-add-irq-chip-support-fasteoi-handler-handle-interrupt-disabling.patch genirq-irq-document-what-an-irq-is.patch genirq-add-chip-eoi-fastack-fasteoi-core.patch genirq-add-chip-eoi-fastack-fasteoi-fix.patch lockdep-floppyc-irq-release-fix.patch lockdep-acpi-locking-fix.patch lockdep-console_init-after-local_irq_enable.patch lockdep-add-is_module_address.patch lockdep-add-print_ip_sym.patch lockdep-add-per_cpu_offset.patch lockdep-add-disable-enable_irq_lockdep-api.patch lockdep-add-local_irq_enable_in_hardirq-api.patch lockdep-add-declare_completion_onstack-api.patch lockdep-clean-up-rwsems.patch lockdep-remove-rwsem_debug-remnants.patch lockdep-rename-debug_warn_on.patch lockdep-remove-debug_bug_on.patch lockdep-remove-mutex-deadlock-checking-code.patch lockdep-better-lock-debugging.patch lockdep-mutex-section-binutils-workaround.patch lockdep-locking-init-debugging-improvement.patch lockdep-beautify-x86_64-stacktraces.patch lockdep-x86_64-document-stack-frame-internals.patch lockdep-i386-remove-multi-entry-backtraces.patch lockdep-stacktrace-subsystem-core.patch lockdep-s390-config_frame_pointer-support.patch lockdep-stacktrace-subsystem-i386-support.patch lockdep-stacktrace-subsystem-x86_64-support.patch lockdep-stacktrace-subsystem-s390-support.patch lockdep-irqtrace-subsystem-core.patch lockdep-irqtrace-subsystem-docs.patch lockdep-irqtrace-subsystem-i386-support.patch lockdep-irqtrace-cleanup-of-include-asm-i386-irqflagsh.patch lockdep-irqtrace-subsystem-x86_64-support.patch lockdep-irqtrace-subsystem-x86_64-support-fix.patch lockdep-irqtrace-subsystem-x86_64-support-fix-2.patch lockdep-irqtrace-cleanup-of-include-asm-x86_64-irqflagsh.patch lockdep-irqtrace-subsystem-s390-support.patch lockdep-locking-api-self-tests.patch lockdep-core.patch lockdep-design-docs.patch lockdep-procfs.patch lockdep-prove-rwsem-locking-correctness.patch lockdep-prove-spinlock-rwlock-locking-correctness.patch lockdep-prove-mutex-locking-correctness.patch lockdep-kconfig.patch lockdep-print-all-lock-classes-on-sysrq-d.patch lockdep-x86_64-early-init.patch lockdep-x86-smp-alternatives-workaround.patch lockdep-do-not-recurse-in-printk.patch lockdep-fix-rt_hash_lock_sz.patch lockdep-s390-turn-validator-off-in-machine-check-handler.patch lockdep-enable-on-i386.patch lockdep-enable-on-x86_64.patch lockdep-enable-on-s390.patch lockdep-annotate-direct-io.patch lockdep-annotate-serial.patch lockdep-annotate-dcache.patch lockdep-annotate-i_mutex.patch lockdep-annotate-futex.patch lockdep-annotate-genirq.patch lockdep-annotate-waitqueues.patch lockdep-annotate-mm.patch lockdep-annotate-serio.patch lockdep-annotate-skb_queue_head_init.patch lockdep-annotate-timer-base-locks.patch lockdep-annotate-scheduler-runqueue-locks.patch lockdep-annotate-hrtimer-base-locks.patch lockdep-annotate-sock_lock_init.patch lockdep-annotate-af_unix-locking.patch lockdep-annotate-bh_lock_sock.patch lockdep-annotate-ieee1394-skb-queue-head-locking.patch lockdep-annotate-mmap_sem.patch lockdep-annotate-sunrpc-code.patch lockdep-annotate-ntfs-locking-rules.patch lockdep-annotate-the-quota-code.patch lockdep-annotate-usbfs.patch lockdep-annotate-sound-core-seq-seq_portsc.patch lockdep-annotate-sound-core-seq-seq_devicec.patch lockdep-annotate-8390c-disable_irq.patch lockdep-annotate-3c59xc-disable_irq.patch lockdep-annotate-forcedethc-disable_irq.patch lockdep-annotate-enable_in_hardirq.patch lockdep-annotate-on-stack-completions.patch lockdep-annotate-qeth-driver.patch lockdep-annotate-s_lock.patch lockdep-annotate-sb-s_umount.patch lockdep-annotate-slab-code.patch lockdep-annotate-blkdev-nesting.patch lockdep-annotate-vlan-net-device-as-being-a-special-class.patch lockdep-annotate-vlan-net-device-as-being-a-special-class-fix.patch detect-atomic-counter-underflows.patch debug-shared-irqs.patch make-frame_pointer-default=y.patch mutex-subsystem-synchro-test-module.patch vdso-print-fatal-signals.patch vdso-improve-print_fatal_signals-support-by-adding-memory-maps.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html