From: viro@www.linux.org.uk

cdevname() killed, there was only one remaining user (tty_paranoia_check())
and in that case cdevname() was worse than plain major:minor (basically,
it's "you've got corrupted inode that was supposed to belong to tty device;
here's what I'd found in ->i_rdev")



 drivers/char/tty_io.c |   13 ++++++-------
 fs/char_dev.c         |   21 ---------------------
 include/linux/fs.h    |    1 -
 kernel/ksyms.c        |    1 -
 4 files changed, 6 insertions(+), 30 deletions(-)

diff -puN drivers/char/tty_io.c~large-dev_t-2nd-05 drivers/char/tty_io.c
--- 25/drivers/char/tty_io.c~large-dev_t-2nd-05	2003-09-05 00:49:36.000000000 -0700
+++ 25-akpm/drivers/char/tty_io.c	2003-09-05 00:49:36.000000000 -0700
@@ -181,17 +181,16 @@ inline int tty_paranoia_check(struct tty
 			      const char *routine)
 {
 #ifdef TTY_PARANOIA_CHECK
-	static const char badmagic[] = KERN_WARNING
-		"Warning: bad magic number for tty struct (%s) in %s\n";
-	static const char badtty[] = KERN_WARNING
-		"Warning: null TTY for (%s) in %s\n";
-
 	if (!tty) {
-		printk(badtty, cdevname(inode->i_rdev), routine);
+		printk(KERN_WARNING
+			"null TTY for (%d:%d) in %s\n",
+			imajor(inode), iminor(inode), routine);
 		return 1;
 	}
 	if (tty->magic != TTY_MAGIC) {
-		printk(badmagic, cdevname(inode->i_rdev), routine);
+		printk(KERN_WARNING
+			"bad magic number for tty struct (%d:%d) in %s\n",
+			imajor(inode), iminor(inode), routine);
 		return 1;
 	}
 #endif
diff -puN fs/char_dev.c~large-dev_t-2nd-05 fs/char_dev.c
--- 25/fs/char_dev.c~large-dev_t-2nd-05	2003-09-05 00:49:36.000000000 -0700
+++ 25-akpm/fs/char_dev.c	2003-09-05 00:49:36.000000000 -0700
@@ -328,27 +328,6 @@ struct file_operations def_chr_fops = {
 	.open = chrdev_open,
 };
 
-const char *cdevname(kdev_t dev)
-{
-	static char buffer[40];
-	const char *name = "unknown-char";
-	unsigned int major = major(dev);
-	unsigned int minor = minor(dev);
-	int i = major_to_index(major);
-	struct char_device_struct *cd;
-
-	read_lock(&chrdevs_lock);
-	for (cd = chrdevs[i]; cd; cd = cd->next)
-		if (cd->major == major)
-			break;
-	if (cd)
-		name = cd->name;
-	sprintf(buffer, "%s(%d,%d)", name, major, minor);
-	read_unlock(&chrdevs_lock);
-
-	return buffer;
-}
-
 static struct kobject *exact_match(dev_t dev, int *part, void *data)
 {
 	struct cdev *p = data;
diff -puN include/linux/fs.h~large-dev_t-2nd-05 include/linux/fs.h
--- 25/include/linux/fs.h~large-dev_t-2nd-05	2003-09-05 00:49:36.000000000 -0700
+++ 25-akpm/include/linux/fs.h	2003-09-05 00:49:36.000000000 -0700
@@ -1156,7 +1156,6 @@ extern struct block_device *lookup_bdev(
 extern struct block_device *open_bdev_excl(const char *, int, int, void *);
 extern void close_bdev_excl(struct block_device *, int);
 
-extern const char * cdevname(kdev_t);
 extern void init_special_inode(struct inode *, umode_t, dev_t);
 
 /* Invalid inode operations -- fs/bad_inode.c */
diff -puN kernel/ksyms.c~large-dev_t-2nd-05 kernel/ksyms.c
--- 25/kernel/ksyms.c~large-dev_t-2nd-05	2003-09-05 00:49:36.000000000 -0700
+++ 25-akpm/kernel/ksyms.c	2003-09-05 00:49:36.000000000 -0700
@@ -511,7 +511,6 @@ EXPORT_SYMBOL(vsnprintf);
 EXPORT_SYMBOL(vsscanf);
 EXPORT_SYMBOL(__bdevname);
 EXPORT_SYMBOL(bdevname);
-EXPORT_SYMBOL(cdevname);
 EXPORT_SYMBOL(simple_strtoull);
 EXPORT_SYMBOL(simple_strtoul);
 EXPORT_SYMBOL(simple_strtol);

_