Commit 8fcbaa2b authored by Jiri Slaby's avatar Jiri Slaby Committed by Greg Kroah-Hartman
Browse files

TTY: devpts, don't care about TTY in devpts_get_tty



The goal is to stop setting and using tty->driver_data in devpts code.
It should be used solely by the driver's code, pty in this case.

First, here we remove TTY from devpts_get_tty and rename it to
devpts_get_priv. Note we do not remove type safety, we just shift the
[implicit] (void *) cast one layer up.

index was unused in devpts_get_tty, so remove that from the prototype
too.

Signed-off-by: default avatarJiri Slaby <jslaby@suse.cz>
Acked-by: default avatarAlan Cox <alan@linux.intel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent cee4ad1e
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -547,7 +547,7 @@ static struct tty_struct *pts_unix98_lookup(struct tty_driver *driver,
	struct tty_struct *tty;

	mutex_lock(&devpts_mutex);
	tty = devpts_get_tty(pts_inode, idx);
	tty = devpts_get_priv(pts_inode);
	mutex_unlock(&devpts_mutex);
	/* Master must be open before slave */
	if (!tty)
+4 −5
Original line number Diff line number Diff line
@@ -593,10 +593,10 @@ int devpts_pty_new(struct inode *ptmx_inode, struct tty_struct *tty)
	return ret;
}

struct tty_struct *devpts_get_tty(struct inode *pts_inode, int number)
void *devpts_get_priv(struct inode *pts_inode)
{
	struct dentry *dentry;
	struct tty_struct *tty;
	void *priv = NULL;

	BUG_ON(pts_inode->i_rdev == MKDEV(TTYAUX_MAJOR, PTMX_MINOR));

@@ -605,13 +605,12 @@ struct tty_struct *devpts_get_tty(struct inode *pts_inode, int number)
	if (!dentry)
		return NULL;

	tty = NULL;
	if (pts_inode->i_sb->s_magic == DEVPTS_SUPER_MAGIC)
		tty = (struct tty_struct *)pts_inode->i_private;
		priv = pts_inode->i_private;

	dput(dentry);

	return tty;
	return priv;
}

void devpts_pty_kill(struct tty_struct *tty)
+3 −4
Original line number Diff line number Diff line
@@ -21,8 +21,8 @@ int devpts_new_index(struct inode *ptmx_inode);
void devpts_kill_index(struct inode *ptmx_inode, int idx);
/* mknod in devpts */
int devpts_pty_new(struct inode *ptmx_inode, struct tty_struct *tty);
/* get tty structure */
struct tty_struct *devpts_get_tty(struct inode *pts_inode, int number);
/* get private structure */
void *devpts_get_priv(struct inode *pts_inode);
/* unlink */
void devpts_pty_kill(struct tty_struct *tty);

@@ -36,8 +36,7 @@ static inline int devpts_pty_new(struct inode *ptmx_inode,
{
	return -EINVAL;
}
static inline struct tty_struct *devpts_get_tty(struct inode *pts_inode,
		int number)
static inline void *devpts_get_priv(struct inode *pts_inode)
{
	return NULL;
}