i915 driver fails on i686 userspace + x86_64 kernel
Chris Wilson
chris at chris-wilson.co.uk
Wed Oct 16 01:39:34 CEST 2013
On Tue, Oct 15, 2013 at 05:45:52PM -0400, Pavel Roskin wrote:
> On Tue, 15 Oct 2013 21:59:08 +0100
> Chris Wilson <chris at chris-wilson.co.uk> wrote:
>
> > Yikes, that implies we have a size mismatch with the kernel - ideally
> > we construct the struct to have the same size when compiled with 32
> > or 64 bits.
> >
> > Please try:
> >
> > commit a63b4d5a0766a7e98efeff8dd520c58e9a1bea88
> > Author: Chris Wilson <chris at chris-wilson.co.uk>
> > Date: Tue Oct 15 21:53:16 2013 +0100
> >
> > sna: Expand packed KMS structs for 64-bit alignment
>
> It helps. Xorg starts.
>
> However, I feel uneasy about that patch. I tried to debug the problem,
> and it looked not as a data corruption, but as something opposite. The
> kernel writes correct data to the userspace, but the userspace gets the
> old value.
For other structures we have taken great care to make sure that
they are padded to 64-bit boundaries for exactly this abi
incompatibility for 32-bit userspaces. To be strict we should do an
ioc32 wrapper in the kernel.
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the dri-devel
mailing list