lkml.org 
[lkml]   [2006]   [Jun]   [21]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateWed, 21 Jun 2006 09:38:08 +0200
FromCarsten Otte <>
SubjectRe: [patch] do_no_pfn
Bjorn Helgaas wrote:
> I do have a case where I used pages without struct pages, but
> I don't really like the implementation, and I'd love to have
> someone who knows about VM tell me "no, dummy, you should do it
> this way instead."
> 
> Here's the scenario:  I'm trying to implement
> /sys/class/pci_bus/DDDD:BB/legacy_mem so we can run X servers
> on multiple VGA cards.  The chipset (used in HP parisc and ia64
> boxes) supports multiple PCI root bridges, and it routes the
> VGA legacy MMIO space at 0xA0000-0xBFFFF to one of them.
> 
> This region is MMIO, so there are no struct pages for it.  I can
> easily mmap the space for the first VGA device.  But to support
> a second device, I have to be able to invalidate the mappings
> for the first device, twiddle stuff in the chipset, and make new
> mappings for the second device.  And of course I have to do the
> reverse (invalidate mappings of second device, twiddle chipset,
> map first device) when the first X server faults on the frame
> buffer.
> 
> Basically, only one of the /sys/class/pci_bus/DDDD:BB/legacy_mem
> files can have an active mmap at a time, and I haven't figured
> out a good way to do the mutual exclusion.
Probably you can just nuke the pte's similar to __xip_unmap() in
mm/filemap_xip.c.

cheers,
Carsten

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-06-21 09:41    [from the cache]
©2003-2008