Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1511421

Re: /dev/mem and PCI memory = EFAULT?

From Stas Sergeev <stsp@list.ru>
Newsgroups linux.kernel
Subject Re: /dev/mem and PCI memory = EFAULT?
Date 2016-10-28 23:20 +0200
Message-ID <sxmJb-5cR-13@gated-at.bofh.it> (permalink)
References <sxmzv-59w-7@gated-at.bofh.it> <sxmzw-59w-15@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


29.10.2016 00:05, Andy Lutomirski пишет:
> On Fri, Oct 28, 2016 at 2:03 PM, Stas Sergeev <stsp@list.ru> wrote:
>> Hello.
>>
>> For the long time dosemu used /dev/mem for vga pass-through.
>> Now it appears /dev/mem has this check:
>> http://lxr.free-electrons.com/source/drivers/char/mem.c#L51
>> which prevents an accesses to PCI memory regions if the
>> "high_memory" points low enough. It seems "high_memory"
>> just points to the end of the physical ram, so depending on
>> the ram size you either can access PCI devices or you get
>> EFAULT.
>> Was it wrong to use /dev/mem for accessing the PCI devices?
>> How should I do that now?
>>
> What is DOSEMU trying to do here?  Access the framebuffer?
>
> ISTM it would be better to use the DRM or FB layer directly (just map
> the framebuffer itself) or, if necessary, use VFIO.
Yes, framebuffer.
Mapping fb directly is not really an option because dosemu does
its own modesetting when you do vga pass-through. So it is
usually started that way with "nomodeset=1" and w/o fb.
Yes, some crazy people try the pass-through even out of fb
console, but that's weird (the problem is most SDL2 builds do
not have directfb backend compiled in, otherwise we could
just use SDL rendering on top of fb).

The thing is, I needed (for testing purposes, unrelated to dosemu)
some quick way to access the PCI memory space, and to my surprise I
couldn't do that with /dev/mem. Was this really disallowed intentionally?

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

/dev/mem and PCI memory = EFAULT? Stas Sergeev <stsp@list.ru> - 2016-10-28 23:10 +0200
  Re: /dev/mem and PCI memory = EFAULT? Andy Lutomirski <luto@amacapital.net> - 2016-10-28 23:10 +0200
    Re: /dev/mem and PCI memory = EFAULT? Stas Sergeev <stsp@list.ru> - 2016-10-28 23:20 +0200
      Re: /dev/mem and PCI memory = EFAULT? Andy Lutomirski <luto@amacapital.net> - 2016-10-28 23:30 +0200
        Re: /dev/mem and PCI memory = EFAULT (regression?) Stas Sergeev <stsp@list.ru> - 2016-10-29 00:10 +0200
          Re: /dev/mem and PCI memory = EFAULT (regression?) Linus Torvalds <torvalds@linux-foundation.org> - 2016-10-29 01:30 +0200
            Re: /dev/mem and PCI memory = EFAULT (regression?) Stas Sergeev <stsp@list.ru> - 2016-10-29 01:50 +0200

csiph-web