Thread (4 messages) flat view 4 messages, 3 authors, 2017-03-13

Re: [patch 2/3] kcmp: Add KCMP_EPOLL_TFD mode to compare epoll target files

From: Cyrill Gorcunov <hidden>
Date: 2017-03-13 18:38:02
Also in: linux-fsdevel, lkml

On Mon, Mar 13, 2017 at 10:37:24AM -0700, Andrei Vagin wrote:
Here is one question inline.

Acked-by: Andrei Vagin <redacted>
Thanks!
quoted
+
+	files = get_files_struct(task2);
+	if (!files)
+		return -EBADF;
+
+	spin_lock(&files->file_lock);
+	filp_epoll = fcheck_files(files, slot.efd);
+	if (filp_epoll)
+		get_file(filp_epoll);
+	else
+		filp_tgt = ERR_PTR(-EBADF);
+	spin_unlock(&files->file_lock);
+	put_files_struct(files);
Why can we not use fget here ^^^^ ?
Because it's not @current's file table but foreigner process.
So we make sure there is no expand_fdtable in progress and
we test for file descriptor which is being freed.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help