Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Mar 2009 19:18:47 +0100
From:      Alexej Sokolov <bsd.quest@googlemail.com>
To:        Pekka Nikander <pekka.nikander@nomadiclab.com>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Problems mapping an vm_object to a process memory space
Message-ID:  <671bb5fc0903131118u31b5b9b6l46b5d063aee78ff0@mail.gmail.com>
In-Reply-To: <37364E21-701A-42F9-95B7-1B3386AEDE71@nomadiclab.com>
References:  <37364E21-701A-42F9-95B7-1B3386AEDE71@nomadiclab.com>

next in thread | previous in thread | raw e-mail | index | archive | help
hi ,
I had a problem with remapping too. Could I see your code?
here is my code, that some times on AMD64 runs wrong :
http://pastebin.com/m78da0b37

And now I solved the problem with remapping by using /dev/mem device. It has
mmap syscal. And it seems to be working without problem.

Alexej
<

2009/3/13 Pekka Nikander <pekka.nikander@nomadiclab.com>

> As a part of a research project, I'm trying to build publish/subscribe
> shared memory semantics where the idea is to first map an vm_object as
> read/write to a publisher's memory space, and then a COW shadow of that
> later to the subscriber processes' memory space.
>
> I've got to the point where the code works most of the time, but at certain
> scenarios (which are hard to classify and seem slightly random) the mapping
> goes wrong, and either the subscriber process has no physical mapping at the
> supposed address or there appears some random page.   To me it appears as if
> the vm_object, vm_map etc data structures are OK, but somehow the pmaps
> don't get right.  I'm currently using 7.1 RELEASE on amd64, but I'm planning
> to try the same on -CURRENT as soon as I get it properly ported.  I even
> tried calling pmap_enter_object explicitly before returning to the user
> space, but it doesn't seem to help.
>
> Another thing is that there may be some bugs related OBJ_ONEMAPPING.  We
> need to explicitly clear it at places, and sometimes artificially bump up
> the vm_object reference count to avoid code related to ONEMAPPING from
> trashing the object's mappings.  Is this a known issue?
>
> Any advice?
>
> --Pekka Nikander
>
> _______________________________________________
> freebsd-hackers@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?671bb5fc0903131118u31b5b9b6l46b5d063aee78ff0>