lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4FF6DFFE.10203@landley.net>
Date:	Fri, 06 Jul 2012 07:54:22 -0500
From:	Rob Landley <rob@...dley.net>
To:	Mitsuo Hayasaka <mitsuo.hayasaka.hu@...achi.com>
CC:	Miklos Szeredi <miklos@...redi.hu>,
	fuse-devel@...ts.sourceforge.net, linux-kernel@...r.kernel.org,
	linux-doc@...r.kernel.org, yrl.pp-manager.tt@...achi.com
Subject: Re: [RFC PATCH 5/5] fuse: add documentation of sysfs parameter to
 limit maximum fuse request size

On 07/05/2012 05:51 AM, Mitsuo Hayasaka wrote:
> Add an explantion about the sysfs parameter to the limit
> maximum read/write request size.
> 
> Signed-off-by: Mitsuo Hayasaka <mitsuo.hayasaka.hu@...achi.com>
> Cc: Rob Landley <rob@...dley.net>
> Cc: Miklos Szeredi <miklos@...redi.hu>
> ---
> 
>  Documentation/filesystems/fuse.txt |   17 ++++++++++++++++-
>  1 files changed, 16 insertions(+), 1 deletions(-)
> 
> diff --git a/Documentation/filesystems/fuse.txt b/Documentation/filesystems/fuse.txt
> index 13af4a4..e6ffba3 100644
> --- a/Documentation/filesystems/fuse.txt
> +++ b/Documentation/filesystems/fuse.txt
> @@ -108,13 +108,28 @@ Mount options
>  
>    With this option the maximum size of read operations can be set.
>    The default is infinite.  Note that the size of read requests is
> -  limited anyway to 32 pages (which is 128kbyte on i386).
> +  limited to 32 pages (which is 128kbyte on i386) if direct_io
> +  option is not specified. When direct_io option is specified,
> +  the request size is limited to max_pages_per_req sysfs parameter.

"Note that the maximum size of read requests defaults to 32 pages (128k
on i386), use max_pages_per_req to change this default."

And then describe max_page_per_req sufficiently thoroughly below, all in
one place.

(By the way, has anybody actually tested it with a single page as the
limit? Does that work?)

>  'blksize=N'
>  
>    Set the block size for the filesystem.  The default is 512.  This
>    option is only valid for 'fuseblk' type mounts.
>  
> +Sysfs parameter
> +~~~~~~~~~~~~~~~
> +
> +The sysfs parameter max_pages_per_req limits the maximum page size per
> +FUSE request.

No, it limits the maximum size of a data request and the units are
decimal number of pages. It doesn't change the size of memory pages in
the system.

Also, your first hunk implies this setting only takes effect if they
mounted with "-o direct_io", is that true?

> +	/sys/fs/fuse/max_pages_per_req
> +
> +The default is 32 pages. It can be changed from 32 to 256 pages, which
> +may improve the read/write throughput optimizing it. This change is
> +effective per mount. Therefore, the re-mounting of FUSE filesystem
> +is required after changing it.

I'd say "Changing it to 256 pages may improve read/write throguhput on
systems with enough memory. Existing FUSE mounts must be remounted for
this change to take effect."

I.E. don't imply 32 and 256 are the only options unless they are. (Is
there some requirement that it be a power of 2, or just a good idea?)

And per-mount sounds like you're setting it for a specific mount point,
so if I have three mounts there would be three entries under
/sys/fs/fuse, which does not seem to be the case. (Which is odd, because
you'd think there would be an "-o max_pages_per_req=128" that _would_
set this per-mount if the value actually used is cached in the
superblock, but I'm not seeing one...)

Rob
-- 
GNU/Linux isn't: Linux=GPLv2, GNU=GPLv3+, they can't share code.
Either it's "mere aggregation", or a license violation.  Pick one.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ