Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 61fb5c04 authored by Christoph Hellwig's avatar Christoph Hellwig
Browse files

ide: remove ide_driver_proc_write



The driver proc file hasn't been writeable for a long time, so this is
just dead code.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Acked-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
parent 2cd1f0dd
Loading
Loading
Loading
Loading
+0 −46
Original line number Diff line number Diff line
@@ -528,58 +528,12 @@ static int ide_driver_proc_open(struct inode *inode, struct file *file)
	return single_open(file, ide_driver_proc_show, PDE_DATA(inode));
}

static int ide_replace_subdriver(ide_drive_t *drive, const char *driver)
{
	struct device *dev = &drive->gendev;
	int ret = 1;
	int err;

	device_release_driver(dev);
	/* FIXME: device can still be in use by previous driver */
	strlcpy(drive->driver_req, driver, sizeof(drive->driver_req));
	err = device_attach(dev);
	if (err < 0)
		printk(KERN_WARNING "IDE: %s: device_attach error: %d\n",
			__func__, err);
	drive->driver_req[0] = 0;
	if (dev->driver == NULL) {
		err = device_attach(dev);
		if (err < 0)
			printk(KERN_WARNING
				"IDE: %s: device_attach(2) error: %d\n",
				__func__, err);
	}
	if (dev->driver && !strcmp(dev->driver->name, driver))
		ret = 0;

	return ret;
}

static ssize_t ide_driver_proc_write(struct file *file, const char __user *buffer,
				     size_t count, loff_t *pos)
{
	ide_drive_t	*drive = PDE_DATA(file_inode(file));
	char name[32];

	if (!capable(CAP_SYS_ADMIN))
		return -EACCES;
	if (count > 31)
		count = 31;
	if (copy_from_user(name, buffer, count))
		return -EFAULT;
	name[count] = '\0';
	if (ide_replace_subdriver(drive, name))
		return -EINVAL;
	return count;
}

static const struct file_operations ide_driver_proc_fops = {
	.owner		= THIS_MODULE,
	.open		= ide_driver_proc_open,
	.read		= seq_read,
	.llseek		= seq_lseek,
	.release	= single_release,
	.write		= ide_driver_proc_write,
};

static int ide_media_proc_show(struct seq_file *m, void *v)