From: hiro <23hiro@gmail.com>
To: 9fans <9fans@9fans.net>
Subject: Re: mmaping on plan9? (was Re: [9fans] venti /plan9port mmapped
Date: Tue, 17 Feb 2026 17:39:19 +0100 [thread overview]
Message-ID: <CAFSF3XN79imWejPE_VutpNycsm5ZsUGtnBiVG8UrOA4iSwOL+w@mail.gmail.com> (raw)
In-Reply-To: <CAP6exYLvjoBD+=sBPb3ort-raHNV_Kmw-C38Y6jyi1C+ocWn+g@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 3614 bytes --]
Alyssa, Thanks for restoring some order after everybody got so confused.
Like ron i suggest setting the scope more clearly: what are the hardware
layers and driver interface abstractions involved, is this below your
kernel, part of the kernel, or part of the abi?
Remember we also do userlevel filesystems on plan9. And our kernel fs arent
so insanely different from such.
On Tuesday, February 17, 2026, ron minnich <rminnich@gmail.com> wrote:
> I suggest we start over, and, as Dan says, let's stop using the word mmap.
>
> Can we look at this from the point of view of a problem you are trying to
> solve? What is it you want to do?
>
> On Tue, Feb 17, 2026 at 5:36 AM Dan Cross <crossd@gmail.com> wrote:
>
>> On Tue, Feb 17, 2026 at 3:54 AM Alyssa M via 9fans <9fans@9fans.net>
>> wrote:
>> > Guys, I'm really sorry for the confusion.
>> > A week ago I posted this, as a loose analogy, trying to relate what Ron
>> said to my earlier idea:
>> > [snip]
>> > > It would be convenient for this if servers for disk file systems had
>> the ability to create a snapshot of a range of bytes from a file. But they
>> generally don't. So I'm building a file system wrapper layer (a file server
>> that talks to another file server) that provides snapshot files to the
>> kernel via an extension of the file server protocol, in addition to what
>> the underlying file system already provides. My current implementation does
>> this with temporary files. When a file is written, the temporary file gets
>> any original data that's about to be overwritten. The snapshot provided to
>> the kernel is a synthetic blend of the original file and any bytes that
>> were rescued and put in the temporary file. In most uses the original file
>> will never be touched by another process and the temporary file won't even
>> be created.
>> > >
>> > > The wrapper requires exclusive access to the file server underneath,
>> and also requires the contents to be stable. It is the wrapper that is
>> mounted in the namespace. So the wrapper sees all attempts to alter any
>> file, and can ensure that that any snapshot maintains the illusion of being
>> a full prior copy when writes later happen to the file it came from.
>>
>> This doesn't seem workable.
>>
>> Consider a network with three machines: one serves a filesystem, two
>> mount it as clients. If I understand your description above, there is
>> one of these "wrappers" on each client. How, then, do they arrange for
>> exclusive access to the filesystem, which is on a completely separate
>> machine?
>>
>> > [snip]
>> > I'm dismayed by the responses so far, because I think this is
>> potentially a lot better than mmap.
>>
>> No, this is nothing like mmap. mmap is an operation initiated by a
>> programmer; this is some totally separate thing.
>>
>> My humble suggestion is that if you don't want people to conflate this
>> with the `mmap` call, you should stop referring to it as `mmap`.
>>
>> - Dan C.
> *9fans <https://9fans.topicbox.com/latest>* / 9fans / see discussions
> <https://9fans.topicbox.com/groups/9fans> + participants
> <https://9fans.topicbox.com/groups/9fans/members> + delivery options
> <https://9fans.topicbox.com/groups/9fans/subscription> Permalink
> <https://9fans.topicbox.com/groups/9fans/Te8d7c6e48b5c075b-Med980740c04af0912ebaf0f0>
>
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Te8d7c6e48b5c075b-Mafe57a1fd798d48194107130
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
[-- Attachment #2: Type: text/html, Size: 5624 bytes --]
next prev parent reply other threads:[~2026-02-17 16:40 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-02 19:54 [9fans] venti /plan9port mmapped wb.kloke
2026-01-02 20:39 ` ori
2026-01-02 20:58 ` Bakul Shah via 9fans
2026-01-06 22:59 ` Ron Minnich
2026-01-07 4:27 ` Noam Preil
2026-01-07 6:15 ` Shawn Rutledge
2026-01-07 15:46 ` Persistent memory (was Re: [9fans] venti /plan9port mmapped) arnold
2026-01-07 16:11 ` Noam Preil
2026-01-07 17:26 ` Wes Kussmaul
2026-01-07 8:52 ` [9fans] venti /plan9port mmapped wb.kloke
2026-01-07 16:30 ` mmaping on plan9? (was " Bakul Shah via 9fans
2026-01-07 16:40 ` Noam Preil
2026-01-07 16:41 ` ori
2026-01-07 20:35 ` Bakul Shah via 9fans
2026-01-07 21:31 ` ron minnich
2026-01-08 7:56 ` arnold
2026-01-08 10:31 ` wb.kloke
2026-01-09 0:02 ` ron minnich
2026-01-09 3:57 ` Paul Lalonde
2026-01-09 5:10 ` ron minnich
2026-01-09 5:18 ` arnold
2026-01-09 6:06 ` David Leimbach via 9fans
2026-01-09 17:13 ` ron minnich
2026-01-09 17:39 ` tlaronde
2026-01-09 19:48 ` David Leimbach via 9fans
2026-02-05 21:30 ` Alyssa M via 9fans
2026-02-08 14:18 ` Ethan Azariah
2026-02-08 15:10 ` Alyssa M via 9fans
2026-02-08 20:43 ` Ethan Azariah
2026-02-09 1:35 ` ron minnich
2026-02-09 15:23 ` ron minnich
2026-02-09 17:13 ` Bakul Shah via 9fans
2026-02-09 21:38 ` ron minnich
2026-02-10 10:13 ` Alyssa M via 9fans
2026-02-11 1:43 ` Ron Minnich
2026-02-11 2:19 ` Bakul Shah via 9fans
2026-02-11 3:21 ` Ori Bernstein
2026-02-11 10:01 ` hiro
2026-02-12 1:36 ` Dan Cross
2026-02-12 5:39 ` Alyssa M via 9fans
2026-02-12 9:08 ` hiro via 9fans
2026-02-12 13:34 ` Alyssa M via 9fans
2026-02-13 13:48 ` hiro
2026-02-13 17:21 ` ron minnich
2026-02-15 16:12 ` Danny Wilkins via 9fans
2026-02-17 3:13 ` Alyssa M via 9fans
2026-02-17 13:02 ` Dan Cross
2026-02-17 16:00 ` ron minnich
2026-02-17 16:39 ` hiro [this message]
2026-02-17 16:56 ` Bakul Shah via 9fans
2026-02-17 17:54 ` hiro
2026-02-17 22:21 ` Alyssa M via 9fans
2026-02-16 2:24 ` Alyssa M via 9fans
2026-02-16 3:17 ` Ori Bernstein
2026-02-16 10:55 ` Frank D. Engel, Jr.
2026-02-16 13:49 ` Ori Bernstein
2026-02-16 19:40 ` Bakul Shah via 9fans
2026-02-16 19:43 ` Bakul Shah via 9fans
2026-02-16 9:50 ` tlaronde
2026-02-16 12:24 ` hiro via 9fans
2026-02-16 12:33 ` hiro via 9fans
2026-02-11 14:22 ` Dan Cross
2026-02-11 18:44 ` Ori Bernstein
2026-02-12 1:22 ` Dan Cross
2026-02-12 4:26 ` Ori Bernstein
2026-02-12 4:34 ` Dan Cross
2026-02-12 3:12 ` Alyssa M via 9fans
2026-02-12 4:52 ` Dan Cross
2026-02-12 8:37 ` Alyssa M via 9fans
2026-02-12 12:37 ` hiro via 9fans
2026-02-13 1:36 ` Dan Cross
2026-02-14 3:35 ` Alyssa M via 9fans
2026-02-14 14:26 ` Dan Cross
2026-02-15 4:34 ` Bakul Shah via 9fans
2026-02-15 10:19 ` hiro
2026-02-10 16:49 ` wb.kloke
2026-02-08 14:08 ` Ethan Azariah
2026-01-07 21:40 ` ori
2026-01-07 16:52 ` ori
2026-01-07 17:37 ` wb.kloke
2026-01-07 17:46 ` Noam Preil
2026-01-07 17:56 ` wb.kloke
2026-01-07 18:07 ` Noam Preil
2026-01-07 18:58 ` wb.kloke
2026-01-07 14:57 ` Thaddeus Woskowiak
2026-01-07 16:07 ` Wes Kussmaul
2026-01-07 16:22 ` Noam Preil
2026-01-07 17:31 ` Wes Kussmaul
2026-01-07 16:13 ` Noam Preil
2026-01-02 21:01 ` ori
2026-01-08 15:59 ` wb.kloke
2026-02-11 23:19 ` red
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=CAFSF3XN79imWejPE_VutpNycsm5ZsUGtnBiVG8UrOA4iSwOL+w@mail.gmail.com \
--to=23hiro@gmail.com \
--cc=9fans@9fans.net \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).