linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH] sem2mutex bdev->bd_sem
       [not found] <5edf7fc90601120610h70b824ccs9b1ac0fe955dd1b3@mail.gmail.com>
@ 2006-01-12 14:16 ` Jens Axboe
  2006-01-12 14:18   ` Arjan van de Ven
                     ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Jens Axboe @ 2006-01-12 14:16 UTC (permalink / raw)
  To: Kedar Sovani; +Cc: Kernel Mailing List, Ingo Molnar

On Thu, Jan 12 2006, Kedar Sovani wrote:
> Here is an obvious sem2mutex patch for the bd_sem relative to 2.6.15.
> 
> 
> Kedar.
> 
> 
> Use mutex instead of semaphore.
> 
> Signed-Off-by: Kedar Sovani <ksovani@kernelcorp.com>

Please compile the patches you submit, there are far too many "sem to
mutex" conversion patches being sent that aren't properly tested. And my
eye spots that this is one of them.

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] sem2mutex bdev->bd_sem
  2006-01-12 14:16 ` [PATCH] sem2mutex bdev->bd_sem Jens Axboe
@ 2006-01-12 14:18   ` Arjan van de Ven
  2006-01-12 14:19   ` Ingo Molnar
       [not found]   ` <5edf7fc90601120624q46bf0ac6h2b57a09c8ac682ff@mail.gmail.com>
  2 siblings, 0 replies; 4+ messages in thread
From: Arjan van de Ven @ 2006-01-12 14:18 UTC (permalink / raw)
  To: Jens Axboe; +Cc: Kedar Sovani, Kernel Mailing List, Ingo Molnar

On Thu, 2006-01-12 at 15:16 +0100, Jens Axboe wrote:
> On Thu, Jan 12 2006, Kedar Sovani wrote:
> > Here is an obvious sem2mutex patch for the bd_sem relative to 2.6.15.
> > 
> > 
> > Kedar.
> > 
> > 
> > Use mutex instead of semaphore.
> > 
> > Signed-Off-by: Kedar Sovani <ksovani@kernelcorp.com>
> 
> Please compile the patches you submit, there are far too many "sem to
> mutex" conversion patches being sent that aren't properly tested. And my
> eye spots that this is one of them.

yup

a more complete one in our queue is this one

 block/ioctl.c                   |   22 +++++++++++-----------
 drivers/block/rd.c              |    4 ++--
 drivers/s390/block/dasd_ioctl.c |    8 ++++----
 fs/block_dev.c                  |   28 ++++++++++++++--------------
 fs/buffer.c                     |    6 +++---
 fs/super.c                      |    4 ++--
 include/linux/fs.h              |    4 ++--
 7 files changed, 38 insertions(+), 38 deletions(-)

Index: linux-2.6.15/block/ioctl.c
===================================================================
--- linux-2.6.15.orig/block/ioctl.c
+++ linux-2.6.15/block/ioctl.c
@@ -42,9 +42,9 @@ static int blkpg_ioctl(struct block_devi
 					return -EINVAL;
 			}
 			/* partition number in use? */
-			down(&bdev->bd_sem);
+			mutex_lock(&bdev->bd_mutex);
 			if (disk->part[part - 1]) {
-				up(&bdev->bd_sem);
+				mutex_unlock(&bdev->bd_mutex);
 				return -EBUSY;
 			}
 			/* overlap? */
@@ -55,13 +55,13 @@ static int blkpg_ioctl(struct block_devi
 					continue;
 				if (!(start+length <= s->start_sect ||
 				      start >= s->start_sect + s->nr_sects)) {
-					up(&bdev->bd_sem);
+					mutex_unlock(&bdev->bd_mutex);
 					return -EBUSY;
 				}
 			}
 			/* all seems OK */
 			add_partition(disk, part, start, length);
-			up(&bdev->bd_sem);
+			mutex_unlock(&bdev->bd_mutex);
 			return 0;
 		case BLKPG_DEL_PARTITION:
 			if (!disk->part[part-1])
@@ -71,9 +71,9 @@ static int blkpg_ioctl(struct block_devi
 			bdevp = bdget_disk(disk, part);
 			if (!bdevp)
 				return -ENOMEM;
-			down(&bdevp->bd_sem);
+			mutex_lock(&bdevp->bd_mutex);
 			if (bdevp->bd_openers) {
-				up(&bdevp->bd_sem);
+				mutex_unlock(&bdevp->bd_mutex);
 				bdput(bdevp);
 				return -EBUSY;
 			}
@@ -81,10 +81,10 @@ static int blkpg_ioctl(struct block_devi
 			fsync_bdev(bdevp);
 			invalidate_bdev(bdevp, 0);
 
-			down(&bdev->bd_sem);
+			mutex_lock(&bdev->bd_mutex);
 			delete_partition(disk, part);
-			up(&bdev->bd_sem);
-			up(&bdevp->bd_sem);
+			mutex_unlock(&bdev->bd_mutex);
+			mutex_unlock(&bdevp->bd_mutex);
 			bdput(bdevp);
 
 			return 0;
@@ -102,10 +102,10 @@ static int blkdev_reread_part(struct blo
 		return -EINVAL;
 	if (!capable(CAP_SYS_ADMIN))
 		return -EACCES;
-	if (down_trylock(&bdev->bd_sem))
+	if (!mutex_trylock(&bdev->bd_mutex))
 		return -EBUSY;
 	res = rescan_partitions(disk, bdev);
-	up(&bdev->bd_sem);
+	mutex_unlock(&bdev->bd_mutex);
 	return res;
 }
 
Index: linux-2.6.15/drivers/block/rd.c
===================================================================
--- linux-2.6.15.orig/drivers/block/rd.c
+++ linux-2.6.15/drivers/block/rd.c
@@ -310,12 +310,12 @@ static int rd_ioctl(struct inode *inode,
 	 * cache
 	 */
 	error = -EBUSY;
-	down(&bdev->bd_sem);
+	mutex_lock(&bdev->bd_mutex);
 	if (bdev->bd_openers <= 2) {
 		truncate_inode_pages(bdev->bd_inode->i_mapping, 0);
 		error = 0;
 	}
-	up(&bdev->bd_sem);
+	mutex_unlock(&bdev->bd_mutex);
 	return error;
 }
 
Index: linux-2.6.15/drivers/s390/block/dasd_ioctl.c
===================================================================
--- linux-2.6.15.orig/drivers/s390/block/dasd_ioctl.c
+++ linux-2.6.15/drivers/s390/block/dasd_ioctl.c
@@ -153,9 +153,9 @@ dasd_ioctl_enable(struct block_device *b
 		return -ENODEV;
 	dasd_enable_device(device);
 	/* Formatting the dasd device can change the capacity. */
-	down(&bdev->bd_sem);
+	mutex_lock(&bdev->bd_mutex);
 	i_size_write(bdev->bd_inode, (loff_t)get_capacity(device->gdp) << 9);
-	up(&bdev->bd_sem);
+	mutex_unlock(&bdev->bd_mutex);
 	return 0;
 }
 
@@ -186,9 +186,9 @@ dasd_ioctl_disable(struct block_device *
 	 * Set i_size to zero, since read, write, etc. check against this
 	 * value.
 	 */
-	down(&bdev->bd_sem);
+	mutex_lock(&bdev->bd_mutex);
 	i_size_write(bdev->bd_inode, 0);
-	up(&bdev->bd_sem);
+	mutex_unlock(&bdev->bd_mutex);
 	return 0;
 }
 
Index: linux-2.6.15/fs/block_dev.c
===================================================================
--- linux-2.6.15.orig/fs/block_dev.c
+++ linux-2.6.15/fs/block_dev.c
@@ -265,8 +265,8 @@ static void init_once(void * foo, kmem_c
 	    SLAB_CTOR_CONSTRUCTOR)
 	{
 		memset(bdev, 0, sizeof(*bdev));
-		sema_init(&bdev->bd_sem, 1);
-		sema_init(&bdev->bd_mount_sem, 1);
+		mutex_init(&bdev->bd_mutex);
+		mutex_init(&bdev->bd_mount_mutex);
 		INIT_LIST_HEAD(&bdev->bd_inodes);
 		INIT_LIST_HEAD(&bdev->bd_list);
 		inode_init_once(&ei->vfs_inode);
@@ -574,7 +574,7 @@ static int do_open(struct block_device *
 	}
 	owner = disk->fops->owner;
 
-	down(&bdev->bd_sem);
+	mutex_lock(&bdev->bd_mutex);
 	if (!bdev->bd_openers) {
 		bdev->bd_disk = disk;
 		bdev->bd_contains = bdev;
@@ -605,21 +605,21 @@ static int do_open(struct block_device *
 			if (ret)
 				goto out_first;
 			bdev->bd_contains = whole;
-			down(&whole->bd_sem);
+			mutex_lock(&whole->bd_mutex);
 			whole->bd_part_count++;
 			p = disk->part[part - 1];
 			bdev->bd_inode->i_data.backing_dev_info =
 			   whole->bd_inode->i_data.backing_dev_info;
 			if (!(disk->flags & GENHD_FL_UP) || !p || !p->nr_sects) {
 				whole->bd_part_count--;
-				up(&whole->bd_sem);
+				mutex_unlock(&whole->bd_mutex);
 				ret = -ENXIO;
 				goto out_first;
 			}
 			kobject_get(&p->kobj);
 			bdev->bd_part = p;
 			bd_set_size(bdev, (loff_t) p->nr_sects << 9);
-			up(&whole->bd_sem);
+			mutex_unlock(&whole->bd_mutex);
 		}
 	} else {
 		put_disk(disk);
@@ -633,13 +633,13 @@ static int do_open(struct block_device *
 			if (bdev->bd_invalidated)
 				rescan_partitions(bdev->bd_disk, bdev);
 		} else {
-			down(&bdev->bd_contains->bd_sem);
+			mutex_lock(&bdev->bd_contains->bd_mutex);
 			bdev->bd_contains->bd_part_count++;
-			up(&bdev->bd_contains->bd_sem);
+			mutex_unlock(&bdev->bd_contains->bd_mutex);
 		}
 	}
 	bdev->bd_openers++;
-	up(&bdev->bd_sem);
+	mutex_unlock(&bdev->bd_mutex);
 	unlock_kernel();
 	return 0;
 
@@ -652,7 +652,7 @@ out_first:
 	put_disk(disk);
 	module_put(owner);
 out:
-	up(&bdev->bd_sem);
+	mutex_unlock(&bdev->bd_mutex);
 	unlock_kernel();
 	if (ret)
 		bdput(bdev);
@@ -714,7 +714,7 @@ int blkdev_put(struct block_device *bdev
 	struct inode *bd_inode = bdev->bd_inode;
 	struct gendisk *disk = bdev->bd_disk;
 
-	down(&bdev->bd_sem);
+	mutex_lock(&bdev->bd_mutex);
 	lock_kernel();
 	if (!--bdev->bd_openers) {
 		sync_blockdev(bdev);
@@ -724,9 +724,9 @@ int blkdev_put(struct block_device *bdev
 		if (disk->fops->release)
 			ret = disk->fops->release(bd_inode, NULL);
 	} else {
-		down(&bdev->bd_contains->bd_sem);
+		mutex_lock(&bdev->bd_contains->bd_mutex);
 		bdev->bd_contains->bd_part_count--;
-		up(&bdev->bd_contains->bd_sem);
+		mutex_unlock(&bdev->bd_contains->bd_mutex);
 	}
 	if (!bdev->bd_openers) {
 		struct module *owner = disk->fops->owner;
@@ -746,7 +746,7 @@ int blkdev_put(struct block_device *bdev
 		bdev->bd_contains = NULL;
 	}
 	unlock_kernel();
-	up(&bdev->bd_sem);
+	mutex_unlock(&bdev->bd_mutex);
 	bdput(bdev);
 	return ret;
 }
Index: linux-2.6.15/fs/buffer.c
===================================================================
--- linux-2.6.15.orig/fs/buffer.c
+++ linux-2.6.15/fs/buffer.c
@@ -201,7 +201,7 @@ int fsync_bdev(struct block_device *bdev
  * freeze_bdev  --  lock a filesystem and force it into a consistent state
  * @bdev:	blockdevice to lock
  *
- * This takes the block device bd_mount_sem to make sure no new mounts
+ * This takes the block device bd_mount_mutex to make sure no new mounts
  * happen on bdev until thaw_bdev() is called.
  * If a superblock is found on this device, we take the s_umount semaphore
  * on it to make sure nobody unmounts until the snapshot creation is done.
@@ -210,7 +210,7 @@ struct super_block *freeze_bdev(struct b
 {
 	struct super_block *sb;
 
-	down(&bdev->bd_mount_sem);
+	mutex_lock(&bdev->bd_mount_mutex);
 	sb = get_super(bdev);
 	if (sb && !(sb->s_flags & MS_RDONLY)) {
 		sb->s_frozen = SB_FREEZE_WRITE;
@@ -264,7 +264,7 @@ void thaw_bdev(struct block_device *bdev
 		drop_super(sb);
 	}
 
-	up(&bdev->bd_mount_sem);
+	mutex_unlock(&bdev->bd_mount_mutex);
 }
 EXPORT_SYMBOL(thaw_bdev);
 
Index: linux-2.6.15/fs/super.c
===================================================================
--- linux-2.6.15.orig/fs/super.c
+++ linux-2.6.15/fs/super.c
@@ -683,9 +683,9 @@ struct super_block *get_sb_bdev(struct f
 	 * will protect the lockfs code from trying to start a snapshot
 	 * while we are mounting
 	 */
-	down(&bdev->bd_mount_sem);
+	mutex_lock(&bdev->bd_mount_mutex);
 	s = sget(fs_type, test_bdev_super, set_bdev_super, bdev);
-	up(&bdev->bd_mount_sem);
+	mutex_unlock(&bdev->bd_mount_mutex);
 	if (IS_ERR(s))
 		goto out;
 
Index: linux-2.6.15/include/linux/fs.h
===================================================================
--- linux-2.6.15.orig/include/linux/fs.h
+++ linux-2.6.15/include/linux/fs.h
@@ -394,8 +394,8 @@ struct block_device {
 	dev_t			bd_dev;  /* not a kdev_t - it's a search key */
 	struct inode *		bd_inode;	/* will die */
 	int			bd_openers;
-	struct semaphore	bd_sem;	/* open/close mutex */
-	struct semaphore	bd_mount_sem;	/* mount mutex */
+	struct mutex		bd_mutex;	/* open/close mutex */
+	struct mutex		bd_mount_mutex;	/* mount mutex */
 	struct list_head	bd_inodes;
 	void *			bd_holder;
 	int			bd_holders;



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] sem2mutex bdev->bd_sem
  2006-01-12 14:16 ` [PATCH] sem2mutex bdev->bd_sem Jens Axboe
  2006-01-12 14:18   ` Arjan van de Ven
@ 2006-01-12 14:19   ` Ingo Molnar
       [not found]   ` <5edf7fc90601120624q46bf0ac6h2b57a09c8ac682ff@mail.gmail.com>
  2 siblings, 0 replies; 4+ messages in thread
From: Ingo Molnar @ 2006-01-12 14:19 UTC (permalink / raw)
  To: Jens Axboe; +Cc: Kedar Sovani, Kernel Mailing List, Arjan van de Ven


* Jens Axboe <axboe@suse.de> wrote:

> On Thu, Jan 12 2006, Kedar Sovani wrote:
> > Here is an obvious sem2mutex patch for the bd_sem relative to 2.6.15.
> > 
> > 
> > Kedar.
> > 
> > 
> > Use mutex instead of semaphore.
> > 
> > Signed-Off-by: Kedar Sovani <ksovani@kernelcorp.com>
> 
> Please compile the patches you submit, there are far too many "sem to 
> mutex" conversion patches being sent that aren't properly tested. And 
> my eye spots that this is one of them.

FYI, Arjan, Jes and me are doing automated conversions to mutexes, with 
build testing and automatic validation of the result as well. Arjan has 
done the bd_sem one today, and sent it to aviro. Below is a (fast 
growing) list of code we've already converted and validated.

	Ingo

 Documentation/synchro-test.txt                 |   59 ++
 Makefile                                       |    2 
 arch/arm/common/rtctime.c                      |   15 
 arch/arm/kernel/ecard.c                        |    7 
 arch/arm/mach-aaec2000/clock.c                 |   15 
 arch/arm/mach-integrator/clock.c               |   15 
 arch/arm/mach-pxa/ssp.c                        |   17 
 arch/arm/mach-realview/clock.c                 |   15 
 arch/arm/mach-s3c2410/clock.c                  |   11 
 arch/arm/mach-versatile/clock.c                |   15 
 arch/arm/plat-omap/clock.c                     |   15 
 arch/arm26/kernel/traps.c                      |   13 
 arch/i386/Kconfig                              |    4 
 arch/i386/kernel/apic.c                        |    2 
 arch/i386/kernel/cpu/cpufreq/powernow-k8.c     |    9 
 arch/i386/kernel/cpu/mtrr/main.c               |   11 
 arch/i386/kernel/microcode.c                   |    7 
 arch/i386/kernel/nmi.c                         |   69 ++-
 arch/ia64/Kconfig                              |    4 
 arch/ia64/hp/sim/simserial.c                   |    1 
 arch/ia64/ia32/sys_ia32.c                      |   28 -
 arch/ia64/kernel/perfmon.c                     |   11 
 arch/ia64/kernel/salinfo.c                     |    2 
 arch/ia64/kernel/semaphore.c                   |    8 
 arch/mips/lasat/sysctl.c                       |   63 +-
 arch/powerpc/mm/imalloc.c                      |   19 
 arch/powerpc/platforms/cell/spu_base.c         |   23 -
 arch/powerpc/platforms/powermac/cpufreq_64.c   |    7 
 arch/ppc/4xx_io/serial_sicc.c                  |    3 
 arch/x86_64/Kconfig                            |    4 
 block/genhd.c                                  |   25 -
 drivers/acpi/osl.c                             |   12 
 drivers/acpi/processor_perflib.c               |   23 -
 drivers/acpi/scan.c                            |    3 
 drivers/base/attribute_container.c             |   27 -
 drivers/base/bus.c                             |   16 
 drivers/base/class.c                           |   22 -
 drivers/base/core.c                            |    2 
 drivers/base/dd.c                              |   36 -
 drivers/base/dmapool.c                         |   15 
 drivers/base/firmware_class.c                  |   21 
 drivers/base/map.c                             |   20 
 drivers/base/memory.c                          |    6 
 drivers/base/power/resume.c                    |    4 
 drivers/base/power/suspend.c                   |    4 
 drivers/base/sys.c                             |   23 -
 drivers/block/floppy.c                         |   17 
 drivers/block/pktcdvd.c                        |   27 -
 drivers/cdrom/cdu31a.c                         |   51 +-
 drivers/char/agp/frontend.c                    |   28 -
 drivers/char/amiserial.c                       |    3 
 drivers/char/esp.c                             |    3 
 drivers/char/generic_serial.c                  |    5 
 drivers/char/istallion.c                       |    3 
 drivers/char/nwflash.c                         |   11 
 drivers/char/raw.c                             |   23 -
 drivers/char/riscom8.c                         |    3 
 drivers/char/specialix.c                       |    5 
 drivers/char/stallion.c                        |    3 
 drivers/char/synclink.c                        |    3 
 drivers/char/sysrq.c                           |   17 
 drivers/char/watchdog/pcwd_usb.c               |    7 
 drivers/connector/connector.c                  |   15 
 drivers/cpufreq/cpufreq.c                      |   19 
 drivers/cpufreq/cpufreq_conservative.c         |   52 +-
 drivers/cpufreq/cpufreq_ondemand.c             |   41 -
 drivers/cpufreq/cpufreq_userspace.c            |   25 -
 drivers/firmware/dcdbas.c                      |   23 -
 drivers/hwmon/adm1021.c                        |   13 
 drivers/hwmon/adm1025.c                        |   25 -
 drivers/hwmon/adm1026.c                        |   87 ++--
 drivers/hwmon/adm1031.c                        |   49 +-
 drivers/hwmon/adm9240.c                        |   29 -
 drivers/hwmon/asb100.c                         |   45 +-
 drivers/hwmon/atxp1.c                          |    9 
 drivers/hwmon/ds1621.c                         |   13 
 drivers/hwmon/fscher.c                         |   41 -
 drivers/hwmon/fscpos.c                         |   29 -
 drivers/hwmon/gl518sm.c                        |   25 -
 drivers/hwmon/gl520sm.c                        |   45 +-
 drivers/hwmon/hdaps.c                          |   37 -
 drivers/hwmon/it87.c                           |   61 +-
 drivers/hwmon/lm63.c                           |   29 -
 drivers/hwmon/lm75.c                           |   13 
 drivers/hwmon/lm77.c                           |   21 
 drivers/hwmon/lm78.c                           |   47 +-
 drivers/hwmon/lm80.c                           |   27 -
 drivers/hwmon/lm83.c                           |   13 
 drivers/hwmon/lm85.c                           |   67 +--
 drivers/hwmon/lm87.c                           |   39 -
 drivers/hwmon/lm90.c                           |   21 
 drivers/hwmon/lm92.c                           |   17 
 drivers/hwmon/max1619.c                        |   13 
 drivers/hwmon/pc87360.c                        |   61 +-
 drivers/hwmon/sis5595.c                        |   47 +-
 drivers/hwmon/smsc47b397.c                     |   17 
 drivers/hwmon/smsc47m1.c                       |   41 -
 drivers/hwmon/via686a.c                        |   33 -
 drivers/hwmon/vt8231.c                         |   51 +-
 drivers/hwmon/w83627ehf.c                      |   33 -
 drivers/hwmon/w83627hf.c                       |   57 +-
 drivers/hwmon/w83781d.c                        |   55 +-
 drivers/hwmon/w83792d.c                        |    9 
 drivers/hwmon/w83l785ts.c                      |    9 
 drivers/i2c/busses/i2c-ali1535.c               |    7 
 drivers/i2c/chips/ds1374.c                     |   11 
 drivers/i2c/chips/m41t00.c                     |   11 
 drivers/i2c/i2c-core.c                         |   23 -
 drivers/ide/ide-cd.c                           |   11 
 drivers/ide/ide-disk.c                         |   11 
 drivers/ide/ide-floppy.c                       |   11 
 drivers/ide/ide-tape.c                         |   19 
 drivers/ieee1394/hosts.c                       |    7 
 drivers/ieee1394/ieee1394_types.h              |    2 
 drivers/ieee1394/nodemgr.c                     |    2 
 drivers/ieee1394/raw1394-private.h             |    2 
 drivers/infiniband/core/device.c               |   22 -
 drivers/infiniband/core/ucm.c                  |   23 -
 drivers/infiniband/ulp/ipoib/ipoib.h           |    7 
 drivers/infiniband/ulp/ipoib/ipoib_ib.c        |   19 
 drivers/infiniband/ulp/ipoib/ipoib_main.c      |   12 
 drivers/infiniband/ulp/ipoib/ipoib_multicast.c |   27 -
 drivers/infiniband/ulp/ipoib/ipoib_verbs.c     |    8 
 drivers/infiniband/ulp/ipoib/ipoib_vlan.c      |   10 
 drivers/input/gameport/gameport.c              |   21 
 drivers/input/input.c                          |   15 
 drivers/input/joystick/amijoy.c                |   11 
 drivers/input/serio/serio.c                    |   31 -
 drivers/input/serio/serio_raw.c                |   23 -
 drivers/isdn/capi/kcapi.c                      |   17 
 drivers/macintosh/smu.c                        |    9 
 drivers/md/dm-table.c                          |   11 
 drivers/md/dm.c                                |   19 
 drivers/md/kcopyd.c                            |   28 -
 drivers/md/md.c                                |   11 
 drivers/media/dvb/dvb-core/dvb_frontend.c      |    2 
 drivers/media/dvb/dvb-core/dvb_frontend.h      |    2 
 drivers/media/dvb/dvb-core/dvbdev.c            |   21 
 drivers/media/video/bttv-driver.c              |   60 +-
 drivers/media/video/bttvp.h                    |    5 
 drivers/media/video/cx88/cx88-core.c           |   15 
 drivers/media/video/em28xx/em28xx-video.c      |    7 
 drivers/media/video/saa7134/saa7134-core.c     |   19 
 drivers/media/video/videodev.c                 |   27 -
 drivers/media/video/zoran.h                    |    2 
 drivers/media/video/zoran_card.c               |   11 
 drivers/media/video/zoran_driver.c             |  227 +++++-----
 drivers/mfd/ucb1x00-core.c                     |   27 -
 drivers/mmc/mmc_block.c                        |   11 
 drivers/mtd/devices/doc2000.c                  |    7 
 drivers/net/3c527.c                            |    2 
 drivers/net/8139too.c                          |    2 
 drivers/net/cassini.c                          |   40 -
 drivers/net/cassini.h                          |    2 
 drivers/net/hamradio/6pack.c                   |    2 
 drivers/net/hamradio/mkiss.c                   |    2 
 drivers/net/irda/irtty-sir.c                   |   19 
 drivers/net/irda/sir_dongle.c                  |   19 
 drivers/net/plip.c                             |    5 
 drivers/net/ppp_async.c                        |    2 
 drivers/net/ppp_generic.c                      |   25 -
 drivers/net/ppp_synctty.c                      |    2 
 drivers/net/sungem.c                           |   37 -
 drivers/net/sungem.h                           |    6 
 drivers/net/wan/dscc4.c                        |    7 
 drivers/net/wireless/ipw2100.c                 |  119 ++---
 drivers/net/wireless/ipw2100.h                 |    4 
 drivers/net/wireless/ipw2200.c                 |  294 ++++++-------
 drivers/net/wireless/ipw2200.h                 |    3 
 drivers/parport/share.c                        |   19 
 drivers/pci/hotplug/cpci_hotplug_core.c        |    4 
 drivers/pci/hotplug/cpqphp_ctrl.c              |    4 
 drivers/pci/hotplug/ibmphp_hpc.c               |    2 
 drivers/pci/hotplug/pciehp_ctrl.c              |    4 
 drivers/pci/hotplug/rpadlpar_core.c            |   13 
 drivers/pci/hotplug/sgi_hotplug.c              |   19 
 drivers/pci/hotplug/shpchp_ctrl.c              |    4 
 drivers/pcmcia/cs.c                            |   40 -
 drivers/pcmcia/ds.c                            |   15 
 drivers/pcmcia/pcmcia_ioctl.c                  |   12 
 drivers/pcmcia/rsrc_nonstatic.c                |   41 -
 drivers/pcmcia/socket_sysfs.c                  |    8 
 drivers/pnp/isapnp/core.c                      |    7 
 drivers/s390/char/raw3270.c                    |   39 -
 drivers/sbus/char/aurora.c                     |    3 
 drivers/scsi/3w-9xxx.c                         |    7 
 drivers/scsi/3w-9xxx.h                         |    2 
 drivers/scsi/3w-xxxx.c                         |    7 
 drivers/scsi/3w-xxxx.h                         |    2 
 drivers/scsi/aacraid/aacraid.h                 |    4 
 drivers/scsi/aic7xxx/aic79xx_osm.h             |    2 
 drivers/scsi/aic7xxx/aic7xxx_osm.h             |    2 
 drivers/scsi/ch.c                              |   33 -
 drivers/scsi/dpt_i2o.c                         |   35 -
 drivers/scsi/hosts.c                           |    8 
 drivers/scsi/ide-scsi.c                        |   11 
 drivers/scsi/iscsi_tcp.c                       |   37 -
 drivers/scsi/iscsi_tcp.h                       |    2 
 drivers/scsi/megaraid.c                        |    6 
 drivers/scsi/megaraid.h                        |    4 
 drivers/scsi/megaraid/megaraid_sas.c           |    7 
 drivers/scsi/qla2xxx/qla_def.h                 |    2 
 drivers/scsi/scsi.c                            |   13 
 drivers/scsi/scsi_proc.c                       |   11 
 drivers/scsi/scsi_scan.c                       |   16 
 drivers/scsi/scsi_sysfs.c                      |    4 
 drivers/scsi/scsi_transport_iscsi.c            |   17 
 drivers/scsi/scsi_transport_spi.c              |   10 
 drivers/scsi/sd.c                              |   21 
 drivers/scsi/sr.c                              |   17 
 drivers/scsi/st.c                              |   17 
 drivers/serial/8250.c                          |   11 
 drivers/serial/crisv10.c                       |   11 
 drivers/serial/pmac_zilog.c                    |   23 -
 drivers/serial/serial_core.c                   |   15 
 drivers/serial/serial_txx9.c                   |   11 
 drivers/telephony/phonedev.c                   |   21 
 drivers/usb/atm/cxacru.c                       |    4 
 drivers/usb/atm/ueagle-atm.c                   |   27 -
 drivers/usb/atm/usbatm.c                       |   24 -
 drivers/usb/atm/usbatm.h                       |    3 
 drivers/usb/class/cdc-acm.c                    |   19 
 drivers/usb/class/usblp.c                      |   15 
 drivers/usb/core/devices.c                     |    7 
 drivers/usb/core/devio.c                       |    4 
 drivers/usb/core/hcd.c                         |   25 -
 drivers/usb/core/hcd.h                         |    2 
 drivers/usb/core/hub.c                         |   11 
 drivers/usb/core/notify.c                      |   15 
 drivers/usb/core/usb.c                         |    5 
 drivers/usb/image/mdc800.c                     |   63 +-
 drivers/usb/input/ati_remote.c                 |    2 
 drivers/usb/media/dabusb.c                     |   31 -
 drivers/usb/media/dabusb.h                     |    2 
 drivers/usb/media/ov511.c                      |   91 ++--
 drivers/usb/media/ov511.h                      |   11 
 drivers/usb/media/se401.c                      |   12 
 drivers/usb/media/se401.h                      |    3 
 drivers/usb/media/sn9c102.h                    |    5 
 drivers/usb/media/sn9c102_core.c               |  158 +++----
 drivers/usb/media/stv680.c                     |   13 
 drivers/usb/media/stv680.h                     |    2 
 drivers/usb/media/usbvideo.c                   |   28 -
 drivers/usb/media/usbvideo.h                   |    5 
 drivers/usb/media/vicam.c                      |   21 
 drivers/usb/media/w9968cf.c                    |   94 ++--
 drivers/usb/media/w9968cf.h                    |   10 
 drivers/usb/misc/idmouse.c                     |   25 -
 drivers/usb/misc/ldusb.c                       |   11 
 drivers/usb/misc/legousbtower.c                |   11 
 drivers/usb/mon/mon_main.c                     |   19 
 drivers/usb/mon/mon_text.c                     |   21 
 drivers/usb/mon/usb_mon.h                      |    2 
 drivers/usb/serial/pl2303.c                    |    2 
 drivers/usb/storage/scsiglue.c                 |    9 
 drivers/usb/storage/usb.c                      |   25 -
 drivers/usb/storage/usb.h                      |    7 
 fs/9p/mux.c                                    |   11 
 fs/char_dev.c                                  |   17 
 fs/cramfs/inode.c                              |   31 -
 fs/dcookies.c                                  |   19 
 fs/dquot.c                                     |  120 ++---
 fs/ext3/super.c                                |    4 
 fs/inode.c                                     |    2 
 fs/inotify.c                                   |  110 ++---
 fs/jffs2/compr_zlib.c                          |   19 
 fs/jfs/jfs_logmgr.c                            |   27 -
 fs/lockd/host.c                                |   19 
 fs/lockd/svc.c                                 |   17 
 fs/lockd/svcsubs.c                             |   17 
 fs/nfs/callback.c                              |   11 
 fs/nfsd/nfs4state.c                            |    9 
 fs/partitions/devfs.c                          |   13 
 fs/quota.c                                     |    6 
 fs/quota_v2.c                                  |    2 
 fs/super.c                                     |   11 
 fs/xfs/linux-2.6/sema.h                        |    2 
 fs/xfs/linux-2.6/xfs_buf.h                     |    4 
 include/asm-i386/semaphore.h                   |   52 +-
 include/asm-ia64/semaphore.h                   |   58 +-
 include/asm-x86_64/semaphore.h                 |   61 +-
 include/linux/agpgart.h                        |    3 
 include/linux/cpufreq.h                        |    2 
 include/linux/device.h                         |    5 
 include/linux/fs.h                             |    2 
 include/linux/input.h                          |    2 
 include/linux/jffs2_fs_i.h                     |   10 
 include/linux/jffs2_fs_sb.h                    |    6 
 include/linux/kobj_map.h                       |    4 
 include/linux/memory.h                         |    5 
 include/linux/mutex.h                          |  147 ++++++
 include/linux/parport.h                        |    2 
 include/linux/quota.h                          |    7 
 include/linux/rtnetlink.h                      |   13 
 include/linux/semaphore.h                      |   30 +
 include/linux/usb.h                            |    6 
 include/net/xfrm.h                             |    3 
 include/pcmcia/ss.h                            |    3 
 include/scsi/scsi_host.h                       |    3 
 include/scsi/scsi_transport_spi.h              |    2 
 kernel/Makefile                                |    4 
 kernel/cpu.c                                   |   10 
 kernel/cpuset.c                                |  192 ++++-----
 kernel/kthread.c                               |    7 
 kernel/module.c                                |   56 +-
 kernel/mutex.c                                 |   68 +++
 kernel/posix-timers.c                          |    1 
 kernel/power/pm.c                              |   21 
 kernel/printk.c                                |    7 
 kernel/profile.c                               |   11 
 kernel/rcupdate.c                              |   10 
 kernel/synchro-test.c                          |  527 +++++++++++++++++++++++++
 kernel/sysctl.c                                |    2 
 kernel/time.c                                  |   79 +++
 lib/Kconfig.debug                              |   60 ++
 lib/kernel_lock.c                              |    2 
 lib/reed_solomon/reed_solomon.c                |   11 
 lib/semaphore-sleepers.c                       |   16 
 mm/slab.c                                      |   46 +-
 mm/swapfile.c                                  |   17 
 net/atm/ioctl.c                                |   15 
 net/bluetooth/rfcomm/core.c                    |    8 
 net/core/dev.c                                 |    7 
 net/core/flow.c                                |    7 
 net/core/pktgen.c                              |    7 
 net/core/rtnetlink.c                           |    8 
 net/ipv4/ipcomp.c                              |   17 
 net/ipv4/ipvs/ip_vs_ctl.c                      |   11 
 net/ipv4/netfilter/ip_queue.c                  |   11 
 net/ipv4/netfilter/ipt_hashlimit.c             |    9 
 net/ipv4/xfrm4_tunnel.c                        |   11 
 net/ipv6/ipcomp6.c                             |   15 
 net/ipv6/netfilter/ip6_queue.c                 |   11 
 net/ipv6/xfrm6_tunnel.c                        |   11 
 net/key/af_key.c                               |    4 
 net/netfilter/nf_sockopt.c                     |   25 -
 net/netlink/genetlink.c                        |    9 
 net/socket.c                                   |   32 -
 net/sunrpc/cache.c                             |   17 
 net/sunrpc/sched.c                             |   11 
 net/unix/garbage.c                             |    7 
 net/xfrm/xfrm_policy.c                         |    4 
 net/xfrm/xfrm_user.c                           |    4 
 security/keys/process_keys.c                   |    7 
 security/selinux/selinuxfs.c                   |   19 
 security/selinux/ss/services.c                 |    7 
 sound/arm/pxa2xx-ac97.c                        |   13 
 sound/core/hwdep.c                             |   29 -
 sound/core/info.c                              |   21 
 sound/core/info_oss.c                          |   13 
 sound/core/memalloc.c                          |   23 -
 sound/core/pcm.c                               |   35 -
 sound/core/rawmidi.c                           |   34 -
 sound/core/seq/oss/seq_oss.c                   |   27 -
 sound/core/seq/seq_device.c                    |   33 -
 sound/core/seq/seq_midi.c                      |   21 
 sound/core/sound.c                             |   23 -
 sound/core/sound_oss.c                         |   23 -
 sound/core/timer.c                             |   61 +-
 sound/oss/ac97_codec.c                         |   25 -
 sound/oss/dmasound/dmasound_awacs.c            |   11 
 sound/usb/usbaudio.c                           |   15 
 362 files changed, 4691 insertions(+), 3342 deletions(-)

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] sem2mutex bdev->bd_sem
       [not found]   ` <5edf7fc90601120624q46bf0ac6h2b57a09c8ac682ff@mail.gmail.com>
@ 2006-01-12 14:36     ` Jens Axboe
  0 siblings, 0 replies; 4+ messages in thread
From: Jens Axboe @ 2006-01-12 14:36 UTC (permalink / raw)
  To: Kedar Sovani; +Cc: Kernel Mailing List, Ingo Molnar

On Thu, Jan 12 2006, Kedar Sovani wrote:
> Strange. It did compile in here w/o a problem.

How could it, when you don't even add bd_mutex to the block_device
structure?

I'd rather just let the patches flow from Ingo's automated setup.
Lessens the chance of problems.

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-01-12 14:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <5edf7fc90601120610h70b824ccs9b1ac0fe955dd1b3@mail.gmail.com>
2006-01-12 14:16 ` [PATCH] sem2mutex bdev->bd_sem Jens Axboe
2006-01-12 14:18   ` Arjan van de Ven
2006-01-12 14:19   ` Ingo Molnar
     [not found]   ` <5edf7fc90601120624q46bf0ac6h2b57a09c8ac682ff@mail.gmail.com>
2006-01-12 14:36     ` Jens Axboe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).