Van: Laurie Jennings <laurie_jennings_1...@yahoo.com>
Datum: zondag, 21 juli 2019 16:58
Aan: Konstantin Belousov <kostik...@gmail.com>
CC: FreeBSD Current <freebsd-current@freebsd.org>
Onderwerp: Re: mmap port from 9 not working

 On Sunday, July 21, 2019, 10:44:14 AM EDT, Konstantin Belousov 
<kostik...@gmail.com> wrote:

On Sun, Jul 21, 2019 at 03:48:03AM +0000, Laurie Jennings wrote:
> I have some custom stuff I'm porting from Freebsd 9.x using mmap. I get a 
pointer from the kernel via an ioctl and I map it into a shared buffer.
> char *kptr;   // mem ptr from kernel
> 
fd=open("/dev/kmem",O_RDWR);memp=mmap(0,size,PROT_READ|PROT_WRITE,MAP_SHARED,fd,(off_t)
 ptr);
> > This worked perfectly in 9; memp I had a shared block of memory between the kernel and user space. > In 11.3 this returns an errno 22, which is pretty murky. I did notice that off_t doesnt yield an actual offset; I've tried putting in the correct value manuallybut it just fails and fails.I've tried read only also. > Please Help!

| Start with providing (and looking yourself) at the output of kdump/ktrace
| around the failing mmap.  The checks for correctness of the mmap(2) arguments
| were greatly improved during years after FreeBSD 9.
Since posting this I found a thread that said something about mmap no longer supporting /dev/kmem. If that's that case I need to find another method. No sense spending a day debugging something thatisn't supposed to work. SHOULD this still work? This always worked fine with non-wired memory but maybe things have changed since 9.
It looks like this is not possible anymore. Here is the code change with some 
explanation.
https://svnweb.freebsd.org/base?view=revision&revision=307332
https://reviews.freebsd.org/D8248

Just a question of my site out of interest to people who know more about this 
than I do. Does Page Table Isolation (PTI) also prevent mapping /dev/kmem in 
user space?
https://wiki.freebsd.org/SpeculativeExecutionVulnerabilities#Meltdown_.28CVE-2017-5754.29

Regards,
Ronald.

_______________________________________________
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to