Re: [PATCH 0/4 v5] devpts: handle bind-mounts correctly

From: Eric W. Biederman
Date: Tue Mar 13 2018 - 12:41:57 EST


Christian Brauner <christian.brauner@xxxxxxxxxx> writes:

> Hey everyone,
>
> This is the fith iteration of this patch. Per-patch changes are
> summarized in the individual patches:

Acked-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>

I guess we need to answer the question do I pick up this series or does
gregkh. This series would seem to fit in his tty tree.

You haven't copied gregkh so you may need to resend and do that.

Eric


> ChangeLog v4->v5:
> * added non-functional patch to document devpts_mntget().
> Reason for putting this in a separate patch is that it allows you,
> Linus and Eric, to simply drop it if judged useless.
> * reverse error handling logic to further simplify
> * dput() dentry in the non-function patch. This was not really a problem
> since the following patch included a fix for it. But better to get it
> right in all individual patches.
> * I did another rewrite of the problem analysis for
> posterity in the patch "Subject: [PATCH 2/3 v3] devpts: resolve devpts
> bind-mounts" and in this cover letter.
>
> ChangeLog v3->v4:
> * small logical simplifications
> * add test that bind-mounts of /dev/pts/ptmx to locations that do not
> resolve to a valid slave pty path under the originating devpts mount
> fail
>
> ChangeLog v2->v3:
> * rewritten commit message to thoroughly analyse the problem for
> posterity in the patch "Subject: [PATCH 2/3 v3] devpts: resolve devpts
> bind-mounts" and in this cover letter.
> * extended selftests to test for correct handling of /dev/pts/ptmx
> bind-mounts to /dev/ptmx and non-standard devpts mounts such as
> mount -t devpts devpts /mnt
>
> ChangeLog v1->v2:
> * see individual patches
> ChangeLog v0->v1:
> * see individual patches
>
> Christian Brauner (4):
> devpts: hoist out check for DEVPTS_SUPER_MAGIC
> devpts: resolve devpts bind-mounts
> devpts: comment devpts_mntget()
> selftests: add devpts selftests
>
> fs/devpts/inode.c | 66 +++--
> tools/testing/selftests/Makefile | 1 +
> tools/testing/selftests/filesystems/.gitignore | 1 +
> tools/testing/selftests/filesystems/Makefile | 2 +-
> tools/testing/selftests/filesystems/devpts_pts.c | 313 +++++++++++++++++++++++
> 5 files changed, 363 insertions(+), 20 deletions(-)
> create mode 100644 tools/testing/selftests/filesystems/devpts_pts.c