Re: tmpfs: fixups to use of the new mount API

From: Hugh Dickins
Date: Mon Aug 19 2019 - 18:22:17 EST


On Mon, 19 Aug 2019, Andrew Morton wrote:
> On Mon, 19 Aug 2019 15:09:14 -0700 (PDT) Hugh Dickins <hughd@xxxxxxxxxx> wrote:
>
> > Several fixups to shmem_parse_param() and tmpfs use of new mount API:
> >
> > mm/shmem.c manages filesystem named "tmpfs": revert "shmem" to "tmpfs"
> > in its mount error messages.
> >
> > /sys/kernel/mm/transparent_hugepage/shmem_enabled has valid options
> > "deny" and "force", but they are not valid as tmpfs "huge" options.
> >
> > The "size" param is an alternative to "nr_blocks", and needs to be
> > recognized as changing max_blocks. And where there's ambiguity, it's
> > better to mention "size" than "nr_blocks" in messages, since "size" is
> > the variant shown in /proc/mounts.
> >
> > shmem_apply_options() left ctx->mpol as the new mpol, so then it was
> > freed in shmem_free_fc(), and the filesystem went on to use-after-free.
> >
> > shmem_parse_param() issue "tmpfs: Bad value for '%s'" messages just
> > like fs_parse() would, instead of a different wording. Where config
> > disables "mpol" or "huge", say "tmpfs: Unsupported parameter '%s'".
>
> Is this
>
> Fixes: 144df3b288c41 ("vfs: Convert ramfs, shmem, tmpfs, devtmpfs, rootfs to use the new mount API")?

That's the patch and the SHA1 I saw when I looked it up in linux-next
yesterday: I don't know if the SHA1 will change before it reaches Linus.

>
> and a Cc:stable is appropriate?

No: this is just a fix for linux-next and mmotm at present.

Hugh