All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: xf86-video-imxfb-vivante crashing with Xorg 1.19
@ 2017-02-01 17:23 Alfredo J. Cabral Hinojosa
  2017-02-01 17:32 ` Tom Hochstein
  0 siblings, 1 reply; 10+ messages in thread
From: Alfredo J. Cabral Hinojosa @ 2017-02-01 17:23 UTC (permalink / raw)
  To: tom.hochstein; +Cc: meta-freescale

Hello Tom,

Can you share the link to the patch? can’t find it.

Thanks!

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: xf86-video-imxfb-vivante crashing with Xorg 1.19
  2017-02-01 17:23 xf86-video-imxfb-vivante crashing with Xorg 1.19 Alfredo J. Cabral Hinojosa
@ 2017-02-01 17:32 ` Tom Hochstein
  2017-02-01 17:33   ` Alfredo J. Cabral Hinojosa
  0 siblings, 1 reply; 10+ messages in thread
From: Tom Hochstein @ 2017-02-01 17:32 UTC (permalink / raw)
  To: Alfredo J. Cabral Hinojosa; +Cc: meta-freescale

[-- Attachment #1: Type: text/plain, Size: 414 bytes --]



> -----Original Message-----
> From: Alfredo J. Cabral Hinojosa [mailto:alfredo.cabral@code-ing.com]
> Sent: Wednesday, February 01, 2017 11:24 AM
> To: Tom Hochstein <tom.hochstein@nxp.com>
> Cc: meta-freescale@yoctoproject.org
> Subject: Re: [meta-freescale] xf86-video-imxfb-vivante crashing with Xorg 1.19
> 
> Hello Tom,
> 
> Can you share the link to the patch? can’t find it.
> 
> Thanks!

[-- Attachment #2: 0001-xserver-xorg-Fix-X-server-1.19-crash.patch --]
[-- Type: application/octet-stream, Size: 3318 bytes --]

From d39d1c61c06243710ce179fe1cde9cfa8e82929f Mon Sep 17 00:00:00 2001
From: Tom Hochstein <tom.hochstein@nxp.com>
Date: Tue, 31 Jan 2017 11:37:03 -0600
Subject: [OE-core][PATCH v3] xserver-xorg: Fix X server 1.19 crash

Commit 6a5a4e60373c1386b311b2a8bb666c32d68a9d99 removes the configure of
useSIGIO option:

xfree86 SIGIO support is reworked to use internal versions of
OsBlockSIGIO and OsReleaseSIGIO

The check for useSIGIO is no longer needed.

Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
---
 .../0003-Remove-check-for-useSIGIO-option.patch    | 47 ++++++++++++++++++++++
 .../xorg-xserver/xserver-xorg_1.19.1.bb            |  1 +
 2 files changed, 48 insertions(+)
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch

diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch
new file mode 100644
index 0000000..beed6cb
--- /dev/null
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch
@@ -0,0 +1,47 @@
+From cf407b16cd65ad6e26a9c8e5984e163409a5c0f7 Mon Sep 17 00:00:00 2001
+From: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
+Date: Mon, 30 Jan 2017 16:32:06 -0600
+Subject: [PATCH] Remove check for useSIGIO option
+
+Commit 6a5a4e60373c1386b311b2a8bb666c32d68a9d99 removes the configure of useSIGIO
+option.
+
+As the xfree86 SIGIO support is reworked to use internal versions of OsBlockSIGIO
+and OsReleaseSIGIO.
+
+No longer the check for useSIGIO is needed
+
+Upstream-Status: Pending
+
+Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
+---
+ hw/xfree86/os-support/shared/sigio.c | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/hw/xfree86/os-support/shared/sigio.c b/hw/xfree86/os-support/shared/sigio.c
+index 884a71c..be76498 100644
+--- a/hw/xfree86/os-support/shared/sigio.c
++++ b/hw/xfree86/os-support/shared/sigio.c
+@@ -185,9 +185,6 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure)
+     int i;
+     int installed = FALSE;
+ 
+-    if (!xf86Info.useSIGIO)
+-        return 0;
+-
+     for (i = 0; i < MAX_FUNCS; i++) {
+         if (!xf86SigIOFuncs[i].f) {
+             if (xf86IsPipe(fd))
+@@ -256,9 +253,6 @@ xf86RemoveSIGIOHandler(int fd)
+     int max;
+     int ret;
+ 
+-    if (!xf86Info.useSIGIO)
+-        return 0;
+-
+     max = 0;
+     ret = 0;
+     for (i = 0; i < MAX_FUNCS; i++) {
+-- 
+2.7.4
+
diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.19.1.bb b/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.19.1.bb
index 987a2be..5a657e0 100644
--- a/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.19.1.bb
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.19.1.bb
@@ -3,6 +3,7 @@ require xserver-xorg.inc
 SRC_URI += "file://musl-arm-inb-outb.patch \
             file://0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch \
             file://0002-configure.ac-Fix-wayland-scanner-and-protocols-locat.patch \
+            file://0003-Remove-check-for-useSIGIO-option.patch \
             "
 SRC_URI[md5sum] = "caa8ee7b2950abbf734347d137529fb6"
 SRC_URI[sha256sum] = "79ae2cf39d3f6c4a91201d8dad549d1d774b3420073c5a70d390040aa965a7fb"
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: xf86-video-imxfb-vivante crashing with Xorg 1.19
  2017-02-01 17:32 ` Tom Hochstein
@ 2017-02-01 17:33   ` Alfredo J. Cabral Hinojosa
  0 siblings, 0 replies; 10+ messages in thread
From: Alfredo J. Cabral Hinojosa @ 2017-02-01 17:33 UTC (permalink / raw)
  To: Tom Hochstein; +Cc: meta-freescale

[-- Attachment #1: Type: text/plain, Size: 823 bytes --]

Awesome,
Thanks Tom.

BR
Alfredo J. Cabral Hinojosa
Prol. Paseo de la Reforma 1015 Torre B Piso 6.
Col. Desarrollo Santa Fe, 05200, Cuajimalpa de Morelos, México D.F.

www.code-ing.com
Teléfono: +52 55 21 63 59 25
Celular: +52 55 43 56 64 04

> On Feb 1, 2017, at 11:32 AM, Tom Hochstein <tom.hochstein@nxp.com> wrote:
> 
> 
> 
>> -----Original Message-----
>> From: Alfredo J. Cabral Hinojosa [mailto:alfredo.cabral@code-ing.com]
>> Sent: Wednesday, February 01, 2017 11:24 AM
>> To: Tom Hochstein <tom.hochstein@nxp.com>
>> Cc: meta-freescale@yoctoproject.org
>> Subject: Re: [meta-freescale] xf86-video-imxfb-vivante crashing with Xorg 1.19
>> 
>> Hello Tom,
>> 
>> Can you share the link to the patch? can’t find it.
>> 
>> Thanks!
> <0001-xserver-xorg-Fix-X-server-1.19-crash.patch>


[-- Attachment #2: Type: text/html, Size: 3052 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: xf86-video-imxfb-vivante crashing with Xorg 1.19
  2017-01-31 20:14       ` Tom Hochstein
@ 2017-02-08 12:06         ` Gary Thomas
  0 siblings, 0 replies; 10+ messages in thread
From: Gary Thomas @ 2017-02-08 12:06 UTC (permalink / raw)
  To: meta-freescale

On 2017-01-31 21:14, Tom Hochstein wrote:
>
>
>> -----Original Message-----
>> From: Gary Thomas [mailto:gary@mlbassoc.com]
>> Sent: Tuesday, January 24, 2017 9:37 AM
>> To: Tom Hochstein <tom.hochstein@nxp.com>; meta-freescale@yoctoproject.org
>> Cc: Lauren Post <lauren.post@nxp.com>
>> Subject: Re: [meta-freescale] xf86-video-imxfb-vivante crashing with Xorg 1.19
>>
>> On 2017-01-24 16:32, Tom Hochstein wrote:
>>> Hi Gary,
>>>
>>> I am seeing a failure too. We're looking into it.
>>
>> Thanks for the feedback.  Looking forward to a resolution.  Let me know if
>> I can provide any more data to help diagnose the issue.
>
> I posted a patch from Prabhu to OE-core.

I tested this and it does seem to work again, thanks (I'm not sure what change
made it work, but I'm happy one was found).

Sorry for the delayed follow-up - I was away on holiday.

>
>>
>>> -----Original Message-----
>>> From: Gary Thomas [mailto:gary@mlbassoc.com]
>>> Sent: Tuesday, January 24, 2017 8:41 AM
>>> To: meta-freescale@yoctoproject.org
>>> Cc: Tom Hochstein <tom.hochstein@nxp.com>; Lauren Post <lauren.post@nxp.com>
>>> Subject: Re: [meta-freescale] xf86-video-imxfb-vivante crashing with Xorg 1.19
>>>
>>> On 2017-01-17 06:32, Gary Thomas wrote:
>>>> When I build for my i.MX6Q target, X crashes immediately.  This is a
>>>> direct result of OE-core updating the X server from 1.18.4 to 1.19
>>>> What I've been able to discover is that the video driver (xf86-video-imxfb-vivante)
>>>> is being called early on from 'AddScreen' in the main X server.  The
>>>> driver sets up a shared data structure DRIInfoRec like this:
>>>>
>>>> VivDRIScreenInit: pDRIInfo: 0xb76e80, busIdString = 0xb76f38 ('platform:Vivante GCCore:00')
>>>> 00B76E80: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>>>> 00B76E90: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>>>> 00B76EA0: 0000 0000 0000 0000  9401 1500 3C03 1500   |............<...|
>>>> 00B76EB0: 9CCF 1400 B0D1 1400  1404 1500 38D3 1400   |............8...|
>>>> 00B76EC0: B0D6 59B6 B8D6 59B6  386F B700 0000 0000   |..Y...Y.8o......|
>>>> 00B76ED0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>>>> 00B76EE0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>>>> 00B76EF0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>>>> 00B76F00: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>>>> 00B76F10: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>>>> 00B76F20: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>>>>
>>>> but by the time the server gets to ProcXF86DRIOpenConnection, this structure
>>>> has been trashed:
>>>>
>>>> DRIOpenConnection: pDRIPriv: 0xb76fc0, pDriverInfo: 0xb76e80, busIdString: 0x454d
>>>> 00B76E80: E889 B700 C06E B700  0000 0000 0400 0000   |.....n..........|
>>>> 00B76E90: FFFF FF7F FFFF FFFF  0000 0080 0000 0000   |................|
>>>> 00B76EA0: 0200 0000 9018 0D00  DC18 0D00 0000 0000   |................|
>>>> 00B76EB0: 2075 1D00 B88B B700  0000 0000 1100 0000   | u..............|
>>>> 00B76EC0: 5345 5256 4552 5449  4D45 0000 2900 0000   |SERVERTIME..)...|
>>>> 00B76ED0: 0000 0000 0000 0000  4C00 0000 00EC B000   |........L.......|
>>>> 00B76EE0: 0000 0000 0000 0000  A95D 1A00 888B B700   |.........]......|
>>>> 00B76EF0: 0100 0000 1900 0000  0000 0000 4C00 0000   |............L...|
>>>> 00B76F00: 1600 0000 D06E B700  1800 0000 3900 0000   |.....n......9...|
>>>> 00B76F10: 0100 0000 0000 0000  486F B700 8100 0000   |........Ho......|
>>>> 00B76F20: 4000 0000 4100 0000  0000 0000 0000 0000   |@...A...........|
>>>> ProcXF86DRIOpenConnection: busIdString = 0x454d
>>>>
>>>> I'm pretty sure that what's happening is near the end of AddScreen,
>>>> there is a call to dixRegisterScreenPrivateKey() which in turn
>>>> calls dixReallocPrivates() which seems to be relocating the DRIInfoRec
>>>> but the pointers used by DRIOpenConnection() are not updated.  The old
>>>> (non-relocated) structure gets reused and trashed and when DRIOpenConnection()
>>>> it picks up garbage.
>>>>
>>>> I'm not sure what needs to change to fix this though.  Looking at the X server
>>>> code, I didn't find a lot of differences in/around this code path.  What I do
>>>> know is that reverting to xserver-xorg 1.18.4 absolutely works.
>>>>
>>>> I'm using Poky/Yocto + meta-freescale layers (both on master)
>>>>   poky: 840e221ea7c35177fda37af618c4727fa7754789
>>>>   meta-freescale: a99b95c899e6c20b9f46fa04766c155e3a32949a
>>>>
>>>> Has anyone else built X (not Wayland) recently using this codebase?  Anyone
>>>> else having the same issues?
>>>
>>> Is no-one else but me seeing this issue?  If not, what could I be doing wrong?
>>> I'm building the same images (same config, etc) that I've been using for [literally]
>>> years and now it breaks with this version of the X server.
>>>
>>> At least an 'ack - I've read this and it's your problem' would be better
>>> than total silence...

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: xf86-video-imxfb-vivante crashing with Xorg 1.19
  2017-01-24 15:37     ` Gary Thomas
@ 2017-01-31 20:14       ` Tom Hochstein
  2017-02-08 12:06         ` Gary Thomas
  0 siblings, 1 reply; 10+ messages in thread
From: Tom Hochstein @ 2017-01-31 20:14 UTC (permalink / raw)
  To: Gary Thomas, meta-freescale; +Cc: Prabhu Sundararaj



> -----Original Message-----
> From: Gary Thomas [mailto:gary@mlbassoc.com]
> Sent: Tuesday, January 24, 2017 9:37 AM
> To: Tom Hochstein <tom.hochstein@nxp.com>; meta-freescale@yoctoproject.org
> Cc: Lauren Post <lauren.post@nxp.com>
> Subject: Re: [meta-freescale] xf86-video-imxfb-vivante crashing with Xorg 1.19
> 
> On 2017-01-24 16:32, Tom Hochstein wrote:
> > Hi Gary,
> >
> > I am seeing a failure too. We're looking into it.
> 
> Thanks for the feedback.  Looking forward to a resolution.  Let me know if
> I can provide any more data to help diagnose the issue.

I posted a patch from Prabhu to OE-core.

> 
> > -----Original Message-----
> > From: Gary Thomas [mailto:gary@mlbassoc.com]
> > Sent: Tuesday, January 24, 2017 8:41 AM
> > To: meta-freescale@yoctoproject.org
> > Cc: Tom Hochstein <tom.hochstein@nxp.com>; Lauren Post <lauren.post@nxp.com>
> > Subject: Re: [meta-freescale] xf86-video-imxfb-vivante crashing with Xorg 1.19
> >
> > On 2017-01-17 06:32, Gary Thomas wrote:
> >> When I build for my i.MX6Q target, X crashes immediately.  This is a
> >> direct result of OE-core updating the X server from 1.18.4 to 1.19
> >> What I've been able to discover is that the video driver (xf86-video-imxfb-vivante)
> >> is being called early on from 'AddScreen' in the main X server.  The
> >> driver sets up a shared data structure DRIInfoRec like this:
> >>
> >> VivDRIScreenInit: pDRIInfo: 0xb76e80, busIdString = 0xb76f38 ('platform:Vivante GCCore:00')
> >> 00B76E80: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> >> 00B76E90: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> >> 00B76EA0: 0000 0000 0000 0000  9401 1500 3C03 1500   |............<...|
> >> 00B76EB0: 9CCF 1400 B0D1 1400  1404 1500 38D3 1400   |............8...|
> >> 00B76EC0: B0D6 59B6 B8D6 59B6  386F B700 0000 0000   |..Y...Y.8o......|
> >> 00B76ED0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> >> 00B76EE0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> >> 00B76EF0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> >> 00B76F00: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> >> 00B76F10: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> >> 00B76F20: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> >>
> >> but by the time the server gets to ProcXF86DRIOpenConnection, this structure
> >> has been trashed:
> >>
> >> DRIOpenConnection: pDRIPriv: 0xb76fc0, pDriverInfo: 0xb76e80, busIdString: 0x454d
> >> 00B76E80: E889 B700 C06E B700  0000 0000 0400 0000   |.....n..........|
> >> 00B76E90: FFFF FF7F FFFF FFFF  0000 0080 0000 0000   |................|
> >> 00B76EA0: 0200 0000 9018 0D00  DC18 0D00 0000 0000   |................|
> >> 00B76EB0: 2075 1D00 B88B B700  0000 0000 1100 0000   | u..............|
> >> 00B76EC0: 5345 5256 4552 5449  4D45 0000 2900 0000   |SERVERTIME..)...|
> >> 00B76ED0: 0000 0000 0000 0000  4C00 0000 00EC B000   |........L.......|
> >> 00B76EE0: 0000 0000 0000 0000  A95D 1A00 888B B700   |.........]......|
> >> 00B76EF0: 0100 0000 1900 0000  0000 0000 4C00 0000   |............L...|
> >> 00B76F00: 1600 0000 D06E B700  1800 0000 3900 0000   |.....n......9...|
> >> 00B76F10: 0100 0000 0000 0000  486F B700 8100 0000   |........Ho......|
> >> 00B76F20: 4000 0000 4100 0000  0000 0000 0000 0000   |@...A...........|
> >> ProcXF86DRIOpenConnection: busIdString = 0x454d
> >>
> >> I'm pretty sure that what's happening is near the end of AddScreen,
> >> there is a call to dixRegisterScreenPrivateKey() which in turn
> >> calls dixReallocPrivates() which seems to be relocating the DRIInfoRec
> >> but the pointers used by DRIOpenConnection() are not updated.  The old
> >> (non-relocated) structure gets reused and trashed and when DRIOpenConnection()
> >> it picks up garbage.
> >>
> >> I'm not sure what needs to change to fix this though.  Looking at the X server
> >> code, I didn't find a lot of differences in/around this code path.  What I do
> >> know is that reverting to xserver-xorg 1.18.4 absolutely works.
> >>
> >> I'm using Poky/Yocto + meta-freescale layers (both on master)
> >>   poky: 840e221ea7c35177fda37af618c4727fa7754789
> >>   meta-freescale: a99b95c899e6c20b9f46fa04766c155e3a32949a
> >>
> >> Has anyone else built X (not Wayland) recently using this codebase?  Anyone
> >> else having the same issues?
> >
> > Is no-one else but me seeing this issue?  If not, what could I be doing wrong?
> > I'm building the same images (same config, etc) that I've been using for [literally]
> > years and now it breaks with this version of the X server.
> >
> > At least an 'ack - I've read this and it's your problem' would be better
> > than total silence...
> >
> 
> 
> --
> ------------------------------------------------------------
> Gary Thomas                 |  Consulting for the
> MLB Associates              |    Embedded world
> ------------------------------------------------------------


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: xf86-video-imxfb-vivante crashing with Xorg 1.19
@ 2017-01-24 17:23 Alfredo José Cabral Hinojosa
  0 siblings, 0 replies; 10+ messages in thread
From: Alfredo José Cabral Hinojosa @ 2017-01-24 17:23 UTC (permalink / raw)
  To: meta-freescale

I'm experiencing the same issue, using xorg 1.19.1 and driver 5.0.11p8.6 kernel 4.1.15-2.0.0

Alfredo J Cabral Hinojosa
CODE


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: xf86-video-imxfb-vivante crashing with Xorg 1.19
  2017-01-24 15:32   ` Tom Hochstein
@ 2017-01-24 15:37     ` Gary Thomas
  2017-01-31 20:14       ` Tom Hochstein
  0 siblings, 1 reply; 10+ messages in thread
From: Gary Thomas @ 2017-01-24 15:37 UTC (permalink / raw)
  To: Tom Hochstein, meta-freescale

On 2017-01-24 16:32, Tom Hochstein wrote:
> Hi Gary,
>
> I am seeing a failure too. We're looking into it.

Thanks for the feedback.  Looking forward to a resolution.  Let me know if
I can provide any more data to help diagnose the issue.

> -----Original Message-----
> From: Gary Thomas [mailto:gary@mlbassoc.com]
> Sent: Tuesday, January 24, 2017 8:41 AM
> To: meta-freescale@yoctoproject.org
> Cc: Tom Hochstein <tom.hochstein@nxp.com>; Lauren Post <lauren.post@nxp.com>
> Subject: Re: [meta-freescale] xf86-video-imxfb-vivante crashing with Xorg 1.19
>
> On 2017-01-17 06:32, Gary Thomas wrote:
>> When I build for my i.MX6Q target, X crashes immediately.  This is a
>> direct result of OE-core updating the X server from 1.18.4 to 1.19
>> What I've been able to discover is that the video driver (xf86-video-imxfb-vivante)
>> is being called early on from 'AddScreen' in the main X server.  The
>> driver sets up a shared data structure DRIInfoRec like this:
>>
>> VivDRIScreenInit: pDRIInfo: 0xb76e80, busIdString = 0xb76f38 ('platform:Vivante GCCore:00')
>> 00B76E80: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>> 00B76E90: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>> 00B76EA0: 0000 0000 0000 0000  9401 1500 3C03 1500   |............<...|
>> 00B76EB0: 9CCF 1400 B0D1 1400  1404 1500 38D3 1400   |............8...|
>> 00B76EC0: B0D6 59B6 B8D6 59B6  386F B700 0000 0000   |..Y...Y.8o......|
>> 00B76ED0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>> 00B76EE0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>> 00B76EF0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>> 00B76F00: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>> 00B76F10: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>> 00B76F20: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>>
>> but by the time the server gets to ProcXF86DRIOpenConnection, this structure
>> has been trashed:
>>
>> DRIOpenConnection: pDRIPriv: 0xb76fc0, pDriverInfo: 0xb76e80, busIdString: 0x454d
>> 00B76E80: E889 B700 C06E B700  0000 0000 0400 0000   |.....n..........|
>> 00B76E90: FFFF FF7F FFFF FFFF  0000 0080 0000 0000   |................|
>> 00B76EA0: 0200 0000 9018 0D00  DC18 0D00 0000 0000   |................|
>> 00B76EB0: 2075 1D00 B88B B700  0000 0000 1100 0000   | u..............|
>> 00B76EC0: 5345 5256 4552 5449  4D45 0000 2900 0000   |SERVERTIME..)...|
>> 00B76ED0: 0000 0000 0000 0000  4C00 0000 00EC B000   |........L.......|
>> 00B76EE0: 0000 0000 0000 0000  A95D 1A00 888B B700   |.........]......|
>> 00B76EF0: 0100 0000 1900 0000  0000 0000 4C00 0000   |............L...|
>> 00B76F00: 1600 0000 D06E B700  1800 0000 3900 0000   |.....n......9...|
>> 00B76F10: 0100 0000 0000 0000  486F B700 8100 0000   |........Ho......|
>> 00B76F20: 4000 0000 4100 0000  0000 0000 0000 0000   |@...A...........|
>> ProcXF86DRIOpenConnection: busIdString = 0x454d
>>
>> I'm pretty sure that what's happening is near the end of AddScreen,
>> there is a call to dixRegisterScreenPrivateKey() which in turn
>> calls dixReallocPrivates() which seems to be relocating the DRIInfoRec
>> but the pointers used by DRIOpenConnection() are not updated.  The old
>> (non-relocated) structure gets reused and trashed and when DRIOpenConnection()
>> it picks up garbage.
>>
>> I'm not sure what needs to change to fix this though.  Looking at the X server
>> code, I didn't find a lot of differences in/around this code path.  What I do
>> know is that reverting to xserver-xorg 1.18.4 absolutely works.
>>
>> I'm using Poky/Yocto + meta-freescale layers (both on master)
>>   poky: 840e221ea7c35177fda37af618c4727fa7754789
>>   meta-freescale: a99b95c899e6c20b9f46fa04766c155e3a32949a
>>
>> Has anyone else built X (not Wayland) recently using this codebase?  Anyone
>> else having the same issues?
>
> Is no-one else but me seeing this issue?  If not, what could I be doing wrong?
> I'm building the same images (same config, etc) that I've been using for [literally]
> years and now it breaks with this version of the X server.
>
> At least an 'ack - I've read this and it's your problem' would be better
> than total silence...
>


-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: xf86-video-imxfb-vivante crashing with Xorg 1.19
  2017-01-24 14:40 ` Gary Thomas
@ 2017-01-24 15:32   ` Tom Hochstein
  2017-01-24 15:37     ` Gary Thomas
  0 siblings, 1 reply; 10+ messages in thread
From: Tom Hochstein @ 2017-01-24 15:32 UTC (permalink / raw)
  To: Gary Thomas, meta-freescale

Hi Gary,

I am seeing a failure too. We're looking into it.

Tom

-----Original Message-----
From: Gary Thomas [mailto:gary@mlbassoc.com] 
Sent: Tuesday, January 24, 2017 8:41 AM
To: meta-freescale@yoctoproject.org
Cc: Tom Hochstein <tom.hochstein@nxp.com>; Lauren Post <lauren.post@nxp.com>
Subject: Re: [meta-freescale] xf86-video-imxfb-vivante crashing with Xorg 1.19

On 2017-01-17 06:32, Gary Thomas wrote:
> When I build for my i.MX6Q target, X crashes immediately.  This is a
> direct result of OE-core updating the X server from 1.18.4 to 1.19
> What I've been able to discover is that the video driver (xf86-video-imxfb-vivante)
> is being called early on from 'AddScreen' in the main X server.  The
> driver sets up a shared data structure DRIInfoRec like this:
>
> VivDRIScreenInit: pDRIInfo: 0xb76e80, busIdString = 0xb76f38 ('platform:Vivante GCCore:00')
> 00B76E80: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76E90: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76EA0: 0000 0000 0000 0000  9401 1500 3C03 1500   |............<...|
> 00B76EB0: 9CCF 1400 B0D1 1400  1404 1500 38D3 1400   |............8...|
> 00B76EC0: B0D6 59B6 B8D6 59B6  386F B700 0000 0000   |..Y...Y.8o......|
> 00B76ED0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76EE0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76EF0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76F00: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76F10: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76F20: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>
> but by the time the server gets to ProcXF86DRIOpenConnection, this structure
> has been trashed:
>
> DRIOpenConnection: pDRIPriv: 0xb76fc0, pDriverInfo: 0xb76e80, busIdString: 0x454d
> 00B76E80: E889 B700 C06E B700  0000 0000 0400 0000   |.....n..........|
> 00B76E90: FFFF FF7F FFFF FFFF  0000 0080 0000 0000   |................|
> 00B76EA0: 0200 0000 9018 0D00  DC18 0D00 0000 0000   |................|
> 00B76EB0: 2075 1D00 B88B B700  0000 0000 1100 0000   | u..............|
> 00B76EC0: 5345 5256 4552 5449  4D45 0000 2900 0000   |SERVERTIME..)...|
> 00B76ED0: 0000 0000 0000 0000  4C00 0000 00EC B000   |........L.......|
> 00B76EE0: 0000 0000 0000 0000  A95D 1A00 888B B700   |.........]......|
> 00B76EF0: 0100 0000 1900 0000  0000 0000 4C00 0000   |............L...|
> 00B76F00: 1600 0000 D06E B700  1800 0000 3900 0000   |.....n......9...|
> 00B76F10: 0100 0000 0000 0000  486F B700 8100 0000   |........Ho......|
> 00B76F20: 4000 0000 4100 0000  0000 0000 0000 0000   |@...A...........|
> ProcXF86DRIOpenConnection: busIdString = 0x454d
>
> I'm pretty sure that what's happening is near the end of AddScreen,
> there is a call to dixRegisterScreenPrivateKey() which in turn
> calls dixReallocPrivates() which seems to be relocating the DRIInfoRec
> but the pointers used by DRIOpenConnection() are not updated.  The old
> (non-relocated) structure gets reused and trashed and when DRIOpenConnection()
> it picks up garbage.
>
> I'm not sure what needs to change to fix this though.  Looking at the X server
> code, I didn't find a lot of differences in/around this code path.  What I do
> know is that reverting to xserver-xorg 1.18.4 absolutely works.
>
> I'm using Poky/Yocto + meta-freescale layers (both on master)
>   poky: 840e221ea7c35177fda37af618c4727fa7754789
>   meta-freescale: a99b95c899e6c20b9f46fa04766c155e3a32949a
>
> Has anyone else built X (not Wayland) recently using this codebase?  Anyone
> else having the same issues?

Is no-one else but me seeing this issue?  If not, what could I be doing wrong?
I'm building the same images (same config, etc) that I've been using for [literally]
years and now it breaks with this version of the X server.

At least an 'ack - I've read this and it's your problem' would be better
than total silence...

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: xf86-video-imxfb-vivante crashing with Xorg 1.19
  2017-01-17  5:32 Gary Thomas
@ 2017-01-24 14:40 ` Gary Thomas
  2017-01-24 15:32   ` Tom Hochstein
  0 siblings, 1 reply; 10+ messages in thread
From: Gary Thomas @ 2017-01-24 14:40 UTC (permalink / raw)
  To: meta-freescale

On 2017-01-17 06:32, Gary Thomas wrote:
> When I build for my i.MX6Q target, X crashes immediately.  This is a
> direct result of OE-core updating the X server from 1.18.4 to 1.19
> What I've been able to discover is that the video driver (xf86-video-imxfb-vivante)
> is being called early on from 'AddScreen' in the main X server.  The
> driver sets up a shared data structure DRIInfoRec like this:
>
> VivDRIScreenInit: pDRIInfo: 0xb76e80, busIdString = 0xb76f38 ('platform:Vivante GCCore:00')
> 00B76E80: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76E90: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76EA0: 0000 0000 0000 0000  9401 1500 3C03 1500   |............<...|
> 00B76EB0: 9CCF 1400 B0D1 1400  1404 1500 38D3 1400   |............8...|
> 00B76EC0: B0D6 59B6 B8D6 59B6  386F B700 0000 0000   |..Y...Y.8o......|
> 00B76ED0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76EE0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76EF0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76F00: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76F10: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
> 00B76F20: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
>
> but by the time the server gets to ProcXF86DRIOpenConnection, this structure
> has been trashed:
>
> DRIOpenConnection: pDRIPriv: 0xb76fc0, pDriverInfo: 0xb76e80, busIdString: 0x454d
> 00B76E80: E889 B700 C06E B700  0000 0000 0400 0000   |.....n..........|
> 00B76E90: FFFF FF7F FFFF FFFF  0000 0080 0000 0000   |................|
> 00B76EA0: 0200 0000 9018 0D00  DC18 0D00 0000 0000   |................|
> 00B76EB0: 2075 1D00 B88B B700  0000 0000 1100 0000   | u..............|
> 00B76EC0: 5345 5256 4552 5449  4D45 0000 2900 0000   |SERVERTIME..)...|
> 00B76ED0: 0000 0000 0000 0000  4C00 0000 00EC B000   |........L.......|
> 00B76EE0: 0000 0000 0000 0000  A95D 1A00 888B B700   |.........]......|
> 00B76EF0: 0100 0000 1900 0000  0000 0000 4C00 0000   |............L...|
> 00B76F00: 1600 0000 D06E B700  1800 0000 3900 0000   |.....n......9...|
> 00B76F10: 0100 0000 0000 0000  486F B700 8100 0000   |........Ho......|
> 00B76F20: 4000 0000 4100 0000  0000 0000 0000 0000   |@...A...........|
> ProcXF86DRIOpenConnection: busIdString = 0x454d
>
> I'm pretty sure that what's happening is near the end of AddScreen,
> there is a call to dixRegisterScreenPrivateKey() which in turn
> calls dixReallocPrivates() which seems to be relocating the DRIInfoRec
> but the pointers used by DRIOpenConnection() are not updated.  The old
> (non-relocated) structure gets reused and trashed and when DRIOpenConnection()
> it picks up garbage.
>
> I'm not sure what needs to change to fix this though.  Looking at the X server
> code, I didn't find a lot of differences in/around this code path.  What I do
> know is that reverting to xserver-xorg 1.18.4 absolutely works.
>
> I'm using Poky/Yocto + meta-freescale layers (both on master)
>   poky: 840e221ea7c35177fda37af618c4727fa7754789
>   meta-freescale: a99b95c899e6c20b9f46fa04766c155e3a32949a
>
> Has anyone else built X (not Wayland) recently using this codebase?  Anyone
> else having the same issues?

Is no-one else but me seeing this issue?  If not, what could I be doing wrong?
I'm building the same images (same config, etc) that I've been using for [literally]
years and now it breaks with this version of the X server.

At least an 'ack - I've read this and it's your problem' would be better
than total silence...

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


^ permalink raw reply	[flat|nested] 10+ messages in thread

* xf86-video-imxfb-vivante crashing with Xorg 1.19
@ 2017-01-17  5:32 Gary Thomas
  2017-01-24 14:40 ` Gary Thomas
  0 siblings, 1 reply; 10+ messages in thread
From: Gary Thomas @ 2017-01-17  5:32 UTC (permalink / raw)
  To: meta-freescale

When I build for my i.MX6Q target, X crashes immediately.  This is a
direct result of OE-core updating the X server from 1.18.4 to 1.19
What I've been able to discover is that the video driver (xf86-video-imxfb-vivante)
is being called early on from 'AddScreen' in the main X server.  The
driver sets up a shared data structure DRIInfoRec like this:

VivDRIScreenInit: pDRIInfo: 0xb76e80, busIdString = 0xb76f38 ('platform:Vivante GCCore:00')
00B76E80: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
00B76E90: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
00B76EA0: 0000 0000 0000 0000  9401 1500 3C03 1500   |............<...|
00B76EB0: 9CCF 1400 B0D1 1400  1404 1500 38D3 1400   |............8...|
00B76EC0: B0D6 59B6 B8D6 59B6  386F B700 0000 0000   |..Y...Y.8o......|
00B76ED0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
00B76EE0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
00B76EF0: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
00B76F00: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
00B76F10: 0000 0000 0000 0000  0000 0000 0000 0000   |................|
00B76F20: 0000 0000 0000 0000  0000 0000 0000 0000   |................|

but by the time the server gets to ProcXF86DRIOpenConnection, this structure
has been trashed:

DRIOpenConnection: pDRIPriv: 0xb76fc0, pDriverInfo: 0xb76e80, busIdString: 0x454d
00B76E80: E889 B700 C06E B700  0000 0000 0400 0000   |.....n..........|
00B76E90: FFFF FF7F FFFF FFFF  0000 0080 0000 0000   |................|
00B76EA0: 0200 0000 9018 0D00  DC18 0D00 0000 0000   |................|
00B76EB0: 2075 1D00 B88B B700  0000 0000 1100 0000   | u..............|
00B76EC0: 5345 5256 4552 5449  4D45 0000 2900 0000   |SERVERTIME..)...|
00B76ED0: 0000 0000 0000 0000  4C00 0000 00EC B000   |........L.......|
00B76EE0: 0000 0000 0000 0000  A95D 1A00 888B B700   |.........]......|
00B76EF0: 0100 0000 1900 0000  0000 0000 4C00 0000   |............L...|
00B76F00: 1600 0000 D06E B700  1800 0000 3900 0000   |.....n......9...|
00B76F10: 0100 0000 0000 0000  486F B700 8100 0000   |........Ho......|
00B76F20: 4000 0000 4100 0000  0000 0000 0000 0000   |@...A...........|
ProcXF86DRIOpenConnection: busIdString = 0x454d

I'm pretty sure that what's happening is near the end of AddScreen,
there is a call to dixRegisterScreenPrivateKey() which in turn
calls dixReallocPrivates() which seems to be relocating the DRIInfoRec
but the pointers used by DRIOpenConnection() are not updated.  The old
(non-relocated) structure gets reused and trashed and when DRIOpenConnection()
it picks up garbage.

I'm not sure what needs to change to fix this though.  Looking at the X server
code, I didn't find a lot of differences in/around this code path.  What I do
know is that reverting to xserver-xorg 1.18.4 absolutely works.

I'm using Poky/Yocto + meta-freescale layers (both on master)
   poky: 840e221ea7c35177fda37af618c4727fa7754789
   meta-freescale: a99b95c899e6c20b9f46fa04766c155e3a32949a

Has anyone else built X (not Wayland) recently using this codebase?  Anyone
else having the same issues?

Thanks

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2017-02-08 12:06 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-01 17:23 xf86-video-imxfb-vivante crashing with Xorg 1.19 Alfredo J. Cabral Hinojosa
2017-02-01 17:32 ` Tom Hochstein
2017-02-01 17:33   ` Alfredo J. Cabral Hinojosa
  -- strict thread matches above, loose matches on Subject: below --
2017-01-24 17:23 Alfredo José Cabral Hinojosa
2017-01-17  5:32 Gary Thomas
2017-01-24 14:40 ` Gary Thomas
2017-01-24 15:32   ` Tom Hochstein
2017-01-24 15:37     ` Gary Thomas
2017-01-31 20:14       ` Tom Hochstein
2017-02-08 12:06         ` Gary Thomas

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.