Re: [PATCH] init/do_mounts.c: replace sys_mount() to do_mount()

Arnd Bergmann
2010-08-17T13:42:32Z

On Tuesday 17 August 2010, Namhyung Kim wrote:
> 2010-08-17 (화), 15:15 +0200, Arnd Bergmann:
> > AFAICT there is no need for the copy at all here. The reason that sys_mount
> > copies to a separate page is that it gets passed an arbitrary-length user
> > input.
>
> Right. But make sure to user options never exceed a page, do_mount() has
> following code:
>
> if (data_page)
> ((char *)data_page)[PAGE_SIZE - 1] = 0;

Hmm, how very unexpected...

Maybe you can fix that as well in the same patch and move this safeguard
into the copy_mount_options() function? I guess ideally we'd even mark
the arguments to do_mount() as pointers to const, but that might create
an excessive amount of churn.

Arnd