Re: [PATCH 03/34] teach move_mount(2) to work with OPEN_TREE_CLONE [ver #12]

From: David Howells
Date: Thu Oct 18 2018 - 16:58:12 EST


David Howells <dhowells@xxxxxxxxxx> wrote:

> but this fails on your modified test-fsmount with:
>
> shell-init: error retrieving current directory: getcwd: cannot access
> parent directories: No such file or directory

Actually, it doesn't fail at this point, and I do see a splat later in
fsnotify_first_mark().

static struct fsnotify_mark *fsnotify_first_mark(struct fsnotify_mark_connector **connp)
{
struct fsnotify_mark_connector *conn;
struct hlist_node *node = NULL;

conn = srcu_dereference(*connp, &fsnotify_mark_srcu);

conn here is 6b6b6b6b6b6b6b6b.

RIP: 0010:fsnotify_first_mark+0x5f/0xbb

Call Trace:
fsnotify+0x115/0x344
? __fput+0xac/0x1c1
__fput+0xac/0x1c1
task_work_run+0x78/0x9f
do_exit+0x525/0xa05
do_group_exit+0xb2/0xb2
__x64_sys_exit_group+0x14/0x14
do_syscall_64+0x7d/0x1a0
entry_SYSCALL_64_after_hwframe+0x49/0xbe

The line in fsnotify is:

fsnotify_first_mark(&mnt->mnt_fsnotify_marks);

and fsnotify() is called from fsnotify_close().

David