This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] Userspace PIO access under xen

To: Ian Pratt <m+Ian.Pratt@xxxxxxxxxxxx>
Subject: Re: [Xen-devel] Userspace PIO access under xen
From: "Michael S. Tsirkin" <mst@xxxxxxxxxxxxxx>
Date: Mon, 25 Jul 2005 15:32:58 +0300
Cc: Dror Goldenberg <gdror@xxxxxxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Mon, 25 Jul 2005 12:28:58 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <A95E2296287EAD4EB592B5DEEFCE0E9D28276E@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <A95E2296287EAD4EB592B5DEEFCE0E9D28276E@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
Reply-to: "Michael S. Tsirkin" <mst@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/
Quoting r. Ian Pratt <m+Ian.Pratt@xxxxxxxxxxxx>:
> Subject: RE: [Xen-devel] Userspace PIO access under xen
> > You can also use /proc/bus/pci/ for this, the difference is 
> > that you have to give full bus address to /proc/bus/pci/ , 
> > while /sys/bus/pci/devices/ needs an offset within the resource.
> > 
> > > Change pci_mmap_page_range in arch/xen/arch/pci/i386.c to use 
> > > io_remap_pfn_range
> > 
> > I've written a small kernel module to map PIO to userspace 
> > using remap_page_range, and that doesnt seem to work, either.
> You have to use io_remap_pfn_range for mapping IO space. Using
> remap_pfn_range is technically a bug in the i386 code.

#define io_remap_page_range(vma, vaddr, paddr, size, prot) \
                remap_pfn_range(vma, vaddr, (paddr) >> PAGE_SHIFT, size, prot)

So I just tested again and of course io_remap_pfn_range gives the same result.

> I believe the pfn_range functions are preferred over page_range
> functions anyhow.

I actually use remap_pfn_range, I mistyped that.

> Ian

Point is, none of these works.


Xen-devel mailing list