* Re: [RFC] View-Based File System Model with Program-Scoped Isolation
[not found] <Oa1N9bTNjTvfRX39yqCcQGpl9FJVwfDT2fTq-9NXTT8HqTIqG2Y-Gy0f7QHKcp2-TIv7NZ3bu_YexmKiGuo9FBTeCtRnVzABBVnhx5EiShk=@mcbridemail.com>
@ 2025-09-04 22:06 ` Al Viro
2025-09-04 22:58 ` Blake McBride
0 siblings, 1 reply; 6+ messages in thread
From: Al Viro @ 2025-09-04 22:06 UTC (permalink / raw)
To: Blake McBride
Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
brauner@kernel.org, akpm@linux-foundation.org, Colby Wes McBride
On Thu, Sep 04, 2025 at 09:52:22PM +0000, Blake McBride wrote:
> Proposed Model
> --------------
> The key concept is the introduction of *views*. A view is a named,
> use-case-specific file hierarchy that contains a subset of the overall
> files on the system. Each view presents its own hierarchy, which can
> be completely different from others. Files may appear in multiple
> views, and may even have different names per view.
What happens on cross-directory rename? Within the same "view", that is.
How does it map to changes observable in other views of yours?
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC] View-Based File System Model with Program-Scoped Isolation
2025-09-04 22:06 ` [RFC] View-Based File System Model with Program-Scoped Isolation Al Viro
@ 2025-09-04 22:58 ` Blake McBride
2025-09-04 23:08 ` Al Viro
0 siblings, 1 reply; 6+ messages in thread
From: Blake McBride @ 2025-09-04 22:58 UTC (permalink / raw)
To: Al Viro
Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
brauner@kernel.org, akpm@linux-foundation.org, Colby Wes McBride
Off the cuff, I'd say it is an mv option. It defaults to changing all occurrences, with an option to change it only in the current view.
--blake
On Thursday, September 4th, 2025 at 5:12 PM, Al Viro <viro@zeniv.linux.org.uk> wrote:
>
>
> On Thu, Sep 04, 2025 at 09:52:22PM +0000, Blake McBride wrote:
>
> > Proposed Model
> > --------------
> > The key concept is the introduction of views. A view is a named,
> > use-case-specific file hierarchy that contains a subset of the overall
> > files on the system. Each view presents its own hierarchy, which can
> > be completely different from others. Files may appear in multiple
> > views, and may even have different names per view.
>
>
>
> What happens on cross-directory rename? Within the same "view", that is.
> How does it map to changes observable in other views of yours?
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC] View-Based File System Model with Program-Scoped Isolation
2025-09-04 22:58 ` Blake McBride
@ 2025-09-04 23:08 ` Al Viro
2025-09-04 23:41 ` Blake McBride
0 siblings, 1 reply; 6+ messages in thread
From: Al Viro @ 2025-09-04 23:08 UTC (permalink / raw)
To: Blake McBride
Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
brauner@kernel.org, akpm@linux-foundation.org, Colby Wes McBride
On Thu, Sep 04, 2025 at 10:58:12PM +0000, Blake McBride wrote:
> Off the cuff, I'd say it is an mv option. It defaults to changing all occurrences, with an option to change it only in the current view.
Huh? mv(1) is userland; whatever it does, by definition it boils down
to a sequence of system calls.
If those "views" of yours are pasted together subtrees of the global
forest, you already can do all of that with namespaces; if they are not,
you get all kinds of interesting questions about coherency.
Which one it is? Before anyone can discuss possible implementations
and relative merits thereof, you need to define the semantics of
what you want to implement...
And frankly, if you are thinking in terms of userland programs (file
manglers, etc.) you are going the wrong way - description will have
to be on the syscall level.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC] View-Based File System Model with Program-Scoped Isolation
2025-09-04 23:08 ` Al Viro
@ 2025-09-04 23:41 ` Blake McBride
2025-09-04 23:57 ` Blake McBride
0 siblings, 1 reply; 6+ messages in thread
From: Blake McBride @ 2025-09-04 23:41 UTC (permalink / raw)
To: Al Viro
Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
brauner@kernel.org, akpm@linux-foundation.org, Colby Wes McBride
On Thursday, September 4th, 2025 at 6:09 PM, Al Viro <viro@zeniv.linux.org.uk> wrote:
>
>
> On Thu, Sep 04, 2025 at 10:58:12PM +0000, Blake McBride wrote:
>
> > Off the cuff, I'd say it is an mv option. It defaults to changing all occurrences, with an option to change it only in the current view.
>
>
> Huh? mv(1) is userland; whatever it does, by definition it boils down
> to a sequence of system calls.
Yes. This is what is intended. All of userland would just operate on the view the same as if that was your real hierarchy.
>
> If those "views" of yours are pasted together subtrees of the global
> forest, you already can do all of that with namespaces; if they are not,
> you get all kinds of interesting questions about coherency.
These views are not pasted together subtrees. Each view can have utterly different layouts of the same set of files.
>
> Which one it is? Before anyone can discuss possible implementations
> and relative merits thereof, you need to define the semantics of
> what you want to implement...
>
> And frankly, if you are thinking in terms of userland programs (file
> manglers, etc.) you are going the wrong way - description will have
> to be on the syscall level.
I did not specify the implementation, just the user experience. All of userland would "appear" to function as it does now. The same with the syscalls that are made by the application code. They all effect the current view as if it was the real hierarchy.
--blake
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC] View-Based File System Model with Program-Scoped Isolation
2025-09-04 23:41 ` Blake McBride
@ 2025-09-04 23:57 ` Blake McBride
2025-09-05 0:06 ` Blake McBride
0 siblings, 1 reply; 6+ messages in thread
From: Blake McBride @ 2025-09-04 23:57 UTC (permalink / raw)
To: Blake McBride
Cc: Al Viro, linux-fsdevel@vger.kernel.org,
linux-kernel@vger.kernel.org, brauner@kernel.org,
akpm@linux-foundation.org, Colby Wes McBride
Let me be a little more clear about the application programmer-level API - nothing has to change. A context or view is selected by the user before a program is started (unless a program has a default or specific context). The API that the program uses is utterly unchanged. However, all of the calls are within the context of the view.
--blake
On Thursday, September 4th, 2025 at 6:41 PM, Blake McBride <blake@mcbridemail.com> wrote:
>
>
> On Thursday, September 4th, 2025 at 6:09 PM, Al Viro viro@zeniv.linux.org.uk wrote:
>
> > On Thu, Sep 04, 2025 at 10:58:12PM +0000, Blake McBride wrote:
> >
> > > Off the cuff, I'd say it is an mv option. It defaults to changing all occurrences, with an option to change it only in the current view.
> >
> > Huh? mv(1) is userland; whatever it does, by definition it boils down
> > to a sequence of system calls.
>
>
>
> Yes. This is what is intended. All of userland would just operate on the view the same as if that was your real hierarchy.
>
> > If those "views" of yours are pasted together subtrees of the global
> > forest, you already can do all of that with namespaces; if they are not,
> > you get all kinds of interesting questions about coherency.
>
>
>
> These views are not pasted together subtrees. Each view can have utterly different layouts of the same set of files.
>
>
>
>
> > Which one it is? Before anyone can discuss possible implementations
> > and relative merits thereof, you need to define the semantics of
> > what you want to implement...
> >
> > And frankly, if you are thinking in terms of userland programs (file
> > manglers, etc.) you are going the wrong way - description will have
> > to be on the syscall level.
>
>
> I did not specify the implementation, just the user experience. All of userland would "appear" to function as it does now. The same with the syscalls that are made by the application code. They all effect the current view as if it was the real hierarchy.
>
> --blake
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC] View-Based File System Model with Program-Scoped Isolation
2025-09-04 23:57 ` Blake McBride
@ 2025-09-05 0:06 ` Blake McBride
0 siblings, 0 replies; 6+ messages in thread
From: Blake McBride @ 2025-09-05 0:06 UTC (permalink / raw)
To: Blake McBride
Cc: Al Viro, linux-fsdevel@vger.kernel.org,
linux-kernel@vger.kernel.org, brauner@kernel.org,
akpm@linux-foundation.org, Colby Wes McBride
In effect, it is like an enhanced cwd. You change what directory you are in (your cwd), and then all commands you run (except for absolute paths) are relative to your cwd. However, in this case, it isn't just your cwd; it also depends on your current view or context.
--blake
On Thursday, September 4th, 2025 at 6:58 PM, Blake McBride <blake@mcbridemail.com> wrote:
>
>
> Let me be a little more clear about the application programmer-level API - nothing has to change. A context or view is selected by the user before a program is started (unless a program has a default or specific context). The API that the program uses is utterly unchanged. However, all of the calls are within the context of the view.
>
> --blake
>
>
>
>
>
> On Thursday, September 4th, 2025 at 6:41 PM, Blake McBride blake@mcbridemail.com wrote:
>
> > On Thursday, September 4th, 2025 at 6:09 PM, Al Viro viro@zeniv.linux.org.uk wrote:
> >
> > > On Thu, Sep 04, 2025 at 10:58:12PM +0000, Blake McBride wrote:
> > >
> > > > Off the cuff, I'd say it is an mv option. It defaults to changing all occurrences, with an option to change it only in the current view.
> > >
> > > Huh? mv(1) is userland; whatever it does, by definition it boils down
> > > to a sequence of system calls.
> >
> > Yes. This is what is intended. All of userland would just operate on the view the same as if that was your real hierarchy.
> >
> > > If those "views" of yours are pasted together subtrees of the global
> > > forest, you already can do all of that with namespaces; if they are not,
> > > you get all kinds of interesting questions about coherency.
> >
> > These views are not pasted together subtrees. Each view can have utterly different layouts of the same set of files.
> >
> > > Which one it is? Before anyone can discuss possible implementations
> > > and relative merits thereof, you need to define the semantics of
> > > what you want to implement...
> > >
> > > And frankly, if you are thinking in terms of userland programs (file
> > > manglers, etc.) you are going the wrong way - description will have
> > > to be on the syscall level.
> >
> > I did not specify the implementation, just the user experience. All of userland would "appear" to function as it does now. The same with the syscalls that are made by the application code. They all effect the current view as if it was the real hierarchy.
> >
> > --blake
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2025-09-05 0:06 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <Oa1N9bTNjTvfRX39yqCcQGpl9FJVwfDT2fTq-9NXTT8HqTIqG2Y-Gy0f7QHKcp2-TIv7NZ3bu_YexmKiGuo9FBTeCtRnVzABBVnhx5EiShk=@mcbridemail.com>
2025-09-04 22:06 ` [RFC] View-Based File System Model with Program-Scoped Isolation Al Viro
2025-09-04 22:58 ` Blake McBride
2025-09-04 23:08 ` Al Viro
2025-09-04 23:41 ` Blake McBride
2025-09-04 23:57 ` Blake McBride
2025-09-05 0:06 ` Blake McBride
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.