diff --git a/[refs] b/[refs] index 71be20c05a0d..9015677313b4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 08d76760832993050ad8c25e63b56773ef2ca303 +refs/heads/master: b0b885657b6c8ef63a46bc9299b2a7715d19acde diff --git a/trunk/drivers/tty/pty.c b/trunk/drivers/tty/pty.c index a62798fcc014..59bfaecc4e14 100644 --- a/trunk/drivers/tty/pty.c +++ b/trunk/drivers/tty/pty.c @@ -681,6 +681,9 @@ static int ptmx_open(struct inode *inode, struct file *filp) nonseekable_open(inode, filp); + /* We refuse fsnotify events on ptmx, since it's a shared resource */ + filp->f_mode |= FMODE_NONOTIFY; + retval = tty_alloc_file(filp); if (retval) return retval; diff --git a/trunk/drivers/tty/tty_io.c b/trunk/drivers/tty/tty_io.c index 97ebc8c5864e..6464029e4860 100644 --- a/trunk/drivers/tty/tty_io.c +++ b/trunk/drivers/tty/tty_io.c @@ -988,10 +988,10 @@ void start_tty(struct tty_struct *tty) EXPORT_SYMBOL(start_tty); +/* We limit tty time update visibility to every 8 seconds or so. */ static void tty_update_time(struct timespec *time) { - unsigned long sec = get_seconds(); - sec -= sec % 60; + unsigned long sec = get_seconds() & ~7; if ((long)(sec - time->tv_sec) > 0) time->tv_sec = sec; }