Re: [PATCH 2/2] init, mount: export the name_to_dev_t symbol

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Alasdair G Kergon
Date: Tuesday, May 25, 2010 - 9:05 am

On Tue, May 25, 2010 at 11:55:35AM -0400, Christoph Hellwig wrote:
 
Device-mapper contains a subset of that code, so he's proposing we
use it here:

@@ -434,17 +435,13 @@ static int __table_get_device(struct dm_
 	int r;
 	dev_t uninitialized_var(dev);
 	struct dm_dev_internal *dd;
-	unsigned int major, minor;
 
 	BUG_ON(!t);
 
-	if (sscanf(path, "%u:%u", &major, &minor) == 2) {
-		/* Extract the major/minor numbers */
-		dev = MKDEV(major, minor);
-		if (MAJOR(dev) != major || MINOR(dev) != minor)
-			return -EOVERFLOW;
-	} else {
-		/* convert the path to a device */
+	/* lookup by major:minor or registered device name */
+	dev = name_to_dev_t(path);
+	if (!dev) {
+		/* convert the path to a device by finding its inode */
 		struct block_device *bdev = lookup_bdev(path);
 
 		if (IS_ERR(bdev))

Alasdair

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: [PATCH 2/2] init, mount: export the name_to_dev_t symbol, Christoph Hellwig, (Tue May 25, 8:55 am)
Re: [PATCH 2/2] init, mount: export the name_to_dev_t symbol, Alasdair G Kergon, (Tue May 25, 9:05 am)
Re: [PATCH 2/2] init, mount: export the name_to_dev_t symbol, Christoph Hellwig, (Tue May 25, 10:21 am)