autofs: refactor ioctl fn vector in iookup_dev_ioctl()

cmd part of this struct is the same as an index of itself within
_ioctls[]. In fact this cmd is unused, so we can drop this part.

Link: http://lkml.kernel.org/r/20160831033414.9910.66697.stgit@pluto.themaw.net
Signed-off-by: Tomohiro Kusumi <kusumi.tomohiro@gmail.com>
Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Tomohiro Kusumi 2016-10-11 13:53:19 -07:00 committed by Linus Torvalds
parent 962ca7cfbd
commit fcc24534b0

View File

@ -597,42 +597,25 @@ static int autofs_dev_ioctl_ismountpoint(struct file *fp,
static ioctl_fn lookup_dev_ioctl(unsigned int cmd)
{
static struct {
int cmd;
ioctl_fn fn;
} _ioctls[] = {
{cmd_idx(AUTOFS_DEV_IOCTL_VERSION_CMD),
autofs_dev_ioctl_version},
{cmd_idx(AUTOFS_DEV_IOCTL_PROTOVER_CMD),
autofs_dev_ioctl_protover},
{cmd_idx(AUTOFS_DEV_IOCTL_PROTOSUBVER_CMD),
autofs_dev_ioctl_protosubver},
{cmd_idx(AUTOFS_DEV_IOCTL_OPENMOUNT_CMD),
autofs_dev_ioctl_openmount},
{cmd_idx(AUTOFS_DEV_IOCTL_CLOSEMOUNT_CMD),
autofs_dev_ioctl_closemount},
{cmd_idx(AUTOFS_DEV_IOCTL_READY_CMD),
autofs_dev_ioctl_ready},
{cmd_idx(AUTOFS_DEV_IOCTL_FAIL_CMD),
autofs_dev_ioctl_fail},
{cmd_idx(AUTOFS_DEV_IOCTL_SETPIPEFD_CMD),
autofs_dev_ioctl_setpipefd},
{cmd_idx(AUTOFS_DEV_IOCTL_CATATONIC_CMD),
autofs_dev_ioctl_catatonic},
{cmd_idx(AUTOFS_DEV_IOCTL_TIMEOUT_CMD),
autofs_dev_ioctl_timeout},
{cmd_idx(AUTOFS_DEV_IOCTL_REQUESTER_CMD),
autofs_dev_ioctl_requester},
{cmd_idx(AUTOFS_DEV_IOCTL_EXPIRE_CMD),
autofs_dev_ioctl_expire},
{cmd_idx(AUTOFS_DEV_IOCTL_ASKUMOUNT_CMD),
autofs_dev_ioctl_askumount},
{cmd_idx(AUTOFS_DEV_IOCTL_ISMOUNTPOINT_CMD),
autofs_dev_ioctl_ismountpoint}
static ioctl_fn _ioctls[] = {
autofs_dev_ioctl_version,
autofs_dev_ioctl_protover,
autofs_dev_ioctl_protosubver,
autofs_dev_ioctl_openmount,
autofs_dev_ioctl_closemount,
autofs_dev_ioctl_ready,
autofs_dev_ioctl_fail,
autofs_dev_ioctl_setpipefd,
autofs_dev_ioctl_catatonic,
autofs_dev_ioctl_timeout,
autofs_dev_ioctl_requester,
autofs_dev_ioctl_expire,
autofs_dev_ioctl_askumount,
autofs_dev_ioctl_ismountpoint,
};
unsigned int idx = cmd_idx(cmd);
return (idx >= ARRAY_SIZE(_ioctls)) ? NULL : _ioctls[idx].fn;
return (idx >= ARRAY_SIZE(_ioctls)) ? NULL : _ioctls[idx];
}
/* ioctl dispatcher */