take check for new events in namespace (guts of mounts_poll()) to namespace.c
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
@@ -647,17 +647,11 @@ static int mounts_release(struct inode *inode, struct file *file)
|
||||
static unsigned mounts_poll(struct file *file, poll_table *wait)
|
||||
{
|
||||
struct proc_mounts *p = file->private_data;
|
||||
struct mnt_namespace *ns = p->ns;
|
||||
unsigned res = POLLIN | POLLRDNORM;
|
||||
|
||||
poll_wait(file, &ns->poll, wait);
|
||||
|
||||
spin_lock(&vfsmount_lock);
|
||||
if (p->event != ns->event) {
|
||||
p->event = ns->event;
|
||||
poll_wait(file, &p->ns->poll, wait);
|
||||
if (mnt_had_events(p))
|
||||
res |= POLLERR | POLLPRI;
|
||||
}
|
||||
spin_unlock(&vfsmount_lock);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
Reference in New Issue
Block a user