bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC PATCH tarfs 3/6] Implement basic read-only mmap support


From: Samuel Thibault
Subject: Re: [RFC PATCH tarfs 3/6] Implement basic read-only mmap support
Date: Sat, 1 May 2021 20:32:18 +0200
User-agent: NeoMutt/20170609 (1.8.3)

Sergey Bugaev, le sam. 01 mai 2021 21:27:33 +0300, a ecrit:
> On Sat, May 1, 2021 at 8:48 PM Samuel Thibault <samuel.thibault@gnu.org> 
> wrote:
> > Since this is not part of the main hurd repo there is no copyright
> > assignment requirement, so you can put your name. You can also assign
> > copyright and then put the FSF name.
> 
> OK, I'll put my own name for now then.
> 
> I'm fine with assigning copyright to FSF if that's required for
> contributing to the main repo; but I've heard it's a long complicated
> process that involves physically sending papeps overseas & getting an
> ack from my employer. Is that true? Could you (or somebody) guide me
> through it?

IIRC now it can be completely by e-mail.

You may indeed have to make sure that your employer won't claim any
copyright on what you work on outside your office hours. Yes, that's
crazy, but some employers are crazy like that. Actually you'd have to
check that for putting your name too.

> > > The idea was that NODE_INFO(node)->pager does *not* itself keep a hard
> > > reference on the pager (create_pager () calls ports_port_deref (pager)
> > > after pager_get_port ()), so once all the pager clients are gone, the
> > > memory object would get garbage-collected, which would call
> > > pager_clear_user_data (), which sets NODE_INFO(node)->pager = NULL.
> >
> > Does that also destroy the pager?
> 
> Doesn't it?

I don't know.

People often seem to assume I know everything in the Hurd. I simply
plainly don't. I'm used to the general source code and principles etc.
but anybody who has spent time on the code will probably know the
details much better than I do.

> * Ports (as in struct port_info) are reference counted.

Yes.

> * Pagers from libpager use this mechanism. Once nothing in the process
> references a pager and all the send rights to it are gone (so, after
> memory_object_terminate ()), the pager gets destroyed by the reference
> counting mechanism. It is then when pager_clear_user_data () is
> called, among other things.

Ok, and I guess libpager handles the destruction of the pager itself,
good.

Samuel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]