All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nikhilesh Reddy <reddyn-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
To: Jann Horn <jannhorn-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
Cc: Miklos Szeredi <miklos-sUDqSbJrdHQHWmgEVkV9KA@public.gmane.org>,
	fuse-devel
	<fuse-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org,
	torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org,
	linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.org,
	Richard Weinberger
	<richard.weinberger-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Theodore Ts'o <tytso-3s7WtUTddSA@public.gmane.org>,
	jack-AlSwsSmVLrQ@public.gmane.org,
	Antonio SJ Musumeci
	<trapexit-wGTF+nt6ur047o9RxwvyTQ@public.gmane.org>,
	sven.utcke-Mmb7MZpHnFY@public.gmane.org,
	Nikolaus Rath <nikolaus-BTH8mxji4b0@public.gmane.org>
Subject: Re: [PATCH] fuse: Add support for fuse stacked I/O
Date: Wed, 20 Jan 2016 15:07:39 -0800	[thread overview]
Message-ID: <56A0133B.9090501@codeaurora.org> (raw)
In-Reply-To: <CAK9i0=ojVmbuDiFXY_sHA12vTWgz9aKwEQuZmmYtUka3zqr=hg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On 01/18/2016 07:07 PM, Jann Horn wrote:
> 2016-01-14 0:53 GMT+01:00 Nikhilesh Reddy <reddyn-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>:
>> Add support for filesystem stacked read/write of files
>> when enabled through a userspace init option of FUSE_STACKED_IO.
>>
>> When FUSE_STACKED_IO is enabled all the reads and writes
>> to the fuse mount point go directly to the native filesystem
>> rather than through the fuse daemon. All requests that aren't
>> read/write still go thought the userspace code.
>
> Maybe I missed it, but how does this guard against kernel stack
> overflow and how does it interact with the "sb->s_stack_depth >
> FILESYSTEM_MAX_STACK_DEPTH" stacking limit that overlayfs and ecryptfs
> use?
>
> As far as I can tell from a quick glance, someone could just stack
> lots of FUSE files on top of each other and cause kernel stack
> overflow that way, and that's nasty.
>
Hi
Thanks so much for your comment and for catching this.
I have fixed the code to prevent further stacking and will send it out 
in the updated version of the patch ( now called fuse passthrough ).

-- 
Thanks
Nikhilesh Reddy

Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project.

WARNING: multiple messages have this Message-ID (diff)
From: Nikhilesh Reddy <reddyn@codeaurora.org>
To: Jann Horn <jannhorn@googlemail.com>
Cc: Miklos Szeredi <miklos@szeredi.hu>,
	fuse-devel <fuse-devel@lists.sourceforge.net>,
	linux-kernel@vger.kernel.org, linux-api@vger.kernel.org,
	gregkh@linuxfoundation.org, torvalds@linux-foundation.org,
	linux-fsdevel@vger.kernel.org, viro@zeniv.linux.org.uk,
	Richard Weinberger <richard.weinberger@gmail.com>,
	Theodore Ts'o <tytso@mit.edu>,
	jack@suse.cz, Antonio SJ Musumeci <trapexit@spawn.link>,
	sven.utcke@gmx.de, Nikolaus Rath <nikolaus@rath.org>
Subject: Re: [PATCH] fuse: Add support for fuse stacked I/O
Date: Wed, 20 Jan 2016 15:07:39 -0800	[thread overview]
Message-ID: <56A0133B.9090501@codeaurora.org> (raw)
In-Reply-To: <CAK9i0=ojVmbuDiFXY_sHA12vTWgz9aKwEQuZmmYtUka3zqr=hg@mail.gmail.com>

On 01/18/2016 07:07 PM, Jann Horn wrote:
> 2016-01-14 0:53 GMT+01:00 Nikhilesh Reddy <reddyn@codeaurora.org>:
>> Add support for filesystem stacked read/write of files
>> when enabled through a userspace init option of FUSE_STACKED_IO.
>>
>> When FUSE_STACKED_IO is enabled all the reads and writes
>> to the fuse mount point go directly to the native filesystem
>> rather than through the fuse daemon. All requests that aren't
>> read/write still go thought the userspace code.
>
> Maybe I missed it, but how does this guard against kernel stack
> overflow and how does it interact with the "sb->s_stack_depth >
> FILESYSTEM_MAX_STACK_DEPTH" stacking limit that overlayfs and ecryptfs
> use?
>
> As far as I can tell from a quick glance, someone could just stack
> lots of FUSE files on top of each other and cause kernel stack
> overflow that way, and that's nasty.
>
Hi
Thanks so much for your comment and for catching this.
I have fixed the code to prevent further stacking and will send it out 
in the updated version of the patch ( now called fuse passthrough ).

-- 
Thanks
Nikhilesh Reddy

Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project.

  parent reply	other threads:[~2016-01-20 23:07 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <565394BE.4040506@codeaurora.org>
     [not found] ` <565394BE.4040506-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-01-13 23:53   ` [PATCH] fuse: Add support for fuse stacked I/O Nikhilesh Reddy
2016-01-13 23:53     ` Nikhilesh Reddy
2016-01-14  4:57     ` Greg KH
2016-01-14 18:57       ` Nikhilesh Reddy
     [not found]         ` <5697EF97.9020800-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-01-14 19:19           ` Linus Torvalds
2016-01-14 19:19             ` Linus Torvalds
     [not found]             ` <CA+55aFwxaU0Y_UxyKFv6WaYsPWDDzZG-rhVtMuLSPcJ0WLLw2A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-01-15 16:31               ` Andy Lutomirski
2016-01-15 16:31                 ` Andy Lutomirski
     [not found]                 ` <CALCETrWNQ9ytw1bCOOjFJRstauYc6DocQAmZCF61CErAJ5BF2g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-01-15 17:37                   ` Antonio SJ Musumeci
     [not found]                     ` <CAB3-ZyT+xcU-0BnNvq-+GsDe6W8=MCWwxguS-+KQ39gajmM5pw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-01-15 17:51                       ` Nikolaus Rath
2016-01-15 17:51                         ` Nikolaus Rath
2016-01-15 19:29                         ` Nikhilesh Reddy
     [not found]                           ` <56994884.9060002-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-01-15 21:38                             ` Nikolaus Rath
2016-01-15 21:38                               ` Nikolaus Rath
2016-01-15 21:43                           ` Linus Torvalds
2016-01-15 21:46                             ` Andy Lutomirski
     [not found]                               ` <CALCETrUA2veiBYYbN1hCSkHxBFyDpe3b=PXg=j53_ZuQBt1FUw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-01-15 21:53                                 ` Linus Torvalds
2016-01-15 21:53                                   ` Linus Torvalds
2016-01-19  2:57                                   ` Nikhilesh Reddy
     [not found]                                     ` <569DA62B.7070701-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-01-20 23:24                                       ` Nikhilesh Reddy
2016-01-20 23:24                                         ` Nikhilesh Reddy
2016-01-15 21:56                           ` [fuse-devel] " Hans Beckerus
     [not found]     ` <5696E366.2080605-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-01-14  8:25       ` Christoph Hellwig
2016-01-14  8:25         ` Christoph Hellwig
2016-01-14 15:52         ` Nikolaus Rath
     [not found]           ` <87mvs8qhun.fsf-Zv899e0YUSYPWKMTL/zdXNi2O/JbrIOy@public.gmane.org>
2016-01-15  9:29             ` Christoph Hellwig
2016-01-15  9:29               ` Christoph Hellwig
2016-01-19  3:07       ` Jann Horn
2016-01-19  3:07         ` Jann Horn
     [not found]         ` <CAK9i0=ojVmbuDiFXY_sHA12vTWgz9aKwEQuZmmYtUka3zqr=hg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-01-20 23:07           ` Nikhilesh Reddy [this message]
2016-01-20 23:07             ` Nikhilesh Reddy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56A0133B.9090501@codeaurora.org \
    --to=reddyn-sgv2jx0feol9jmxxk+q4oq@public.gmane.org \
    --cc=fuse-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org \
    --cc=jack-AlSwsSmVLrQ@public.gmane.org \
    --cc=jannhorn-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org \
    --cc=linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=miklos-sUDqSbJrdHQHWmgEVkV9KA@public.gmane.org \
    --cc=nikolaus-BTH8mxji4b0@public.gmane.org \
    --cc=richard.weinberger-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=sven.utcke-Mmb7MZpHnFY@public.gmane.org \
    --cc=torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
    --cc=trapexit-wGTF+nt6ur047o9RxwvyTQ@public.gmane.org \
    --cc=tytso-3s7WtUTddSA@public.gmane.org \
    --cc=viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.