On Mon, Jul 06, 2015 at 03:14:23PM +0200, Mark Kettenis wrote:
> My recent change in this area weren't quite right.  As a result
> non-kms pci video drivers might not have been working properly on
> various platforms.  I just committed a fix for an issue where on
> i386/amd64 a write combining mapping would be requested even if it
> shouldn't.
> 
> Another issue is that the change broke other platforms that don't
> support write-combining.  Since the define for the magic offset lives
> in <sys/memrange.h>, which exists for all platforms, it gets added for
> all platforms.  But <sys/memrange.h> really only makes sense for
> i386/amd64.  So one way to fix the issue is to only include it on
> those platforms.
> 
> Other fixes are possible, like defining MEMRANGE_WC_RANGE to 0 on
> these platforms.  Or not installing this header file at all on other
> platforms.
> 
> opinions? ok?
> 

Looks ok to me. But I'm also ok with not installing it at all on other
platforms (may be easier said than done?)

-ml

> 
> Index: src/openbsd_pci.c
> ===================================================================
> RCS file: /cvs/xenocara/lib/libpciaccess/src/openbsd_pci.c,v
> retrieving revision 1.25
> diff -u -p -r1.25 openbsd_pci.c
> --- src/openbsd_pci.c 6 Jul 2015 12:49:35 -0000       1.25
> +++ src/openbsd_pci.c 6 Jul 2015 12:55:53 -0000
> @@ -16,7 +16,9 @@
>  
>  #include <sys/param.h>
>  #include <sys/ioctl.h>
> +#if defined(__i386__) || defined(__amd64__)
>  #include <sys/memrange.h>
> +#endif
>  #include <sys/mman.h>
>  #include <sys/pciio.h>
>  #include <sys/sysctl.h>
> 

Reply via email to