Bug 696115

Summary: [Arrandale] X crashes when resizing imare in LibreOffice Impress
Product: [Fedora] Fedora Reporter: Vít Ondruch <vondruch>
Component: xorg-x11-drv-intelAssignee: Adam Jackson <ajax>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: medium    
Version: 15CC: ajax, chorn, jburgess777, mcepl, rtguille, xgl-maint
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-07-27 13:44:50 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Xorg.0.log none

Description Vít Ondruch 2011-04-13 10:35:59 UTC
Description of problem:
X crashes when resizing imare in LibreOffice Impress

Version-Release number of selected component (if applicable):


How reproducible:
Randomly

Steps to Reproduce:
1. Resizing image in LibreOffice Impress
2.
3.
  
Actual results:
Xorg.0.log:

[ 12027.052] 
Backtrace:
[ 12027.055] 0: /usr/bin/Xorg (xorg_backtrace+0x2f) [0x4a116f]
[ 12027.055] 1: /usr/bin/Xorg (0x400000+0x62206) [0x462206]
[ 12027.055] 2: /lib64/libpthread.so.0 (0x322ac00000+0xf3c0) [0x322ac0f3c0]
[ 12027.055] 3: /usr/lib64/libdrm_intel.so.1 (drm_intel_bo_emit_reloc+0x0) [0x7f51b42adb70]
[ 12027.055] 4: /usr/lib64/xorg/modules/drivers/intel_drv.so (0x7f51b44ca000+0x2312d) [0x7f51b44ed12d]
[ 12027.055] 5: /usr/lib64/xorg/modules/drivers/intel_drv.so (0x7f51b44ca000+0xa759) [0x7f51b44d4759]
[ 12027.055] 6: /usr/lib64/xorg/modules/drivers/intel_drv.so (0x7f51b44ca000+0x2e10f) [0x7f51b44f810f]
[ 12027.055] 7: /usr/bin/Xorg (0x400000+0xd97ed) [0x4d97ed]
[ 12027.056] 8: /usr/lib64/xorg/modules/drivers/intel_drv.so (0x7f51b44ca000+0x2f459) [0x7f51b44f9459]
[ 12027.056] 9: /usr/bin/Xorg (0x400000+0xd494b) [0x4d494b]
[ 12027.056] 10: /usr/bin/Xorg (0x400000+0x2eb41) [0x42eb41]
[ 12027.056] 11: /usr/bin/Xorg (0x400000+0x22dca) [0x422dca]
[ 12027.056] 12: /lib64/libc.so.6 (__libc_start_main+0xed) [0x322a82143d]
[ 12027.056] 13: /usr/bin/Xorg (0x400000+0x230b1) [0x4230b1]
[ 12027.056] Segmentation fault at address 0x79000022
[ 12027.056] 
Fatal server error:
[ 12027.056] Caught signal 11 (Segmentation fault). Server aborting
[ 12027.056] 
[ 12027.056] 
Please consult the Fedora Project support 
	 at http://wiki.x.org
 for help. 
[ 12027.056] Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 12027.056] 


Expected results:


Additional info:

Comment 1 Vít Ondruch 2011-04-13 15:43:58 UTC
$ rpm -q xorg-x11-server-Xorg
xorg-x11-server-Xorg-1.10.0-7.fc15.x86_64

$ rpm -q xorg-x11-drv-intel
xorg-x11-drv-intel-2.14.0-5.fc15.x86_64

Comment 2 Matěj Cepl 2011-04-13 18:00:42 UTC
bradford:~ $ eu-addr2line -e /usr/lib/debug/usr/bin/Xorg.debug 0x42eb41
/usr/src/debug/xorg-server-1.10.0/dix/dispatch.c:431
        if (result > (maxBigRequestSize << 2))
            result = BadLength;
        else {
            result = XaceHookDispatch(client, MAJOROP);
            if (result == Success)
>>>>>       result = (* client->requestVector[MAJOROP])(client);
            XaceHookAuditEnd(client, result);
        }


bradford:~ $ eu-addr2line -e /usr/lib/debug/usr/bin/Xorg.debug 0x4d494b
/usr/src/debug/xorg-server-1.10.0/render/render.c:783
    ntraps /= sizeof (xTrapezoid);
    if (ntraps)
>>>>    CompositeTrapezoids (stuff->op, pSrc, pDst, pFormat,
                 stuff->xSrc, stuff->ySrc,
                 ntraps, (xTrapezoid *) &stuff[1]);
    return Success;

bradford:~ $ eu-addr2line -e /usr/lib/debug/usr/lib64/xorg/modules/drivers/intel_drv.so.debug 0x2f459
/usr/src/debug/xf86-video-intel-2.14.0/uxa/uxa-render.c:1963
        CompositePicture(op, src, mask, dst,
                 xRel, yRel,
                 0, 0,
                 bounds.x1, bounds.y1,
                 width, height);
>>>        FreePicture(mask, 0);


bradford:~ $ eu-addr2line -e /usr/lib/debug/usr/bin/Xorg.debug 0x4d97ed
/usr/src/debug/xorg-server-1.10.0/miext/damage/damage.c:625
    unwrap (pScrPriv, ps, Composite);
    (*ps->Composite) (op,
               pSrc,
               pMask,
               pDst,
               xSrc,
               ySrc,
               xMask,
               yMask,
               xDst,
               yDst,
               width,
               height);
>>>    damageRegionProcessPending (pDst->pDrawable);


bradford:~ $ eu-addr2line -e /usr/lib/debug/usr/lib64/xorg/modules/drivers/intel_drv.so.debug 0x2e10f
/usr/src/debug/xf86-video-intel-2.14.0/uxa/uxa-render.c:1679
        ret =
            uxa_try_driver_composite(op, pSrc, pMask, pDst, xSrc, ySrc,
                         xMask, yMask, xDst, yDst, width,
                         height);
>>>>        if (ret == 1)
            goto done;


bradford:~ $ eu-addr2line -e /usr/lib/debug/usr/lib64/xorg/modules/drivers/intel_drv.so.debug 0xa759
/usr/src/debug/xf86-video-intel-2.14.0/uxa/uxa-render.c:1295
    nbox = REGION_NUM_RECTS(&region);
    pbox = REGION_RECTS(&region);
>>>>    while (nbox--) {
        (*uxa_screen->info->composite) (pDstPix,
                        pbox->x1 + xSrc,
                        pbox->y1 + ySrc,
                        pbox->x1 + xMask,
                        pbox->y1 + yMask,
                        pbox->x1 + dst_off_x,
                        pbox->y1 + dst_off_y,
                        pbox->x2 - pbox->x1,
                        pbox->y2 - pbox->y1);
        pbox++;
    }


bradford:~ $ eu-addr2line -e /usr/lib/debug/usr/lib64/xorg/modules/drivers/intel_drv.so.debug 0x2312d
/usr/src/debug/xf86-video-intel-2.14.0/src/intel_batchbuffer.h:120
static inline void
intel_batch_emit_reloc(intel_screen_private *intel,
               dri_bo * bo,
               uint32_t read_domains,
               uint32_t write_domains, uint32_t delta, int needs_fence)
{
    if (needs_fence)
        drm_intel_bo_emit_reloc_fence(intel->batch_bo,
                          intel->batch_used * 4,
                          bo, delta,
                          read_domains, write_domains);
    else
        drm_intel_bo_emit_reloc(intel->batch_bo, intel->batch_used * 4,
                    bo, delta,
                    read_domains, write_domains);

>>>    intel_batch_emit_dword(intel, bo->offset + delta);
}

Comment 3 Matěj Cepl 2011-04-15 21:25:42 UTC
Please attach

* your X server config file (/etc/X11/xorg.conf, if available), and
* X server log file (/var/log/Xorg.*.log)

to the bug report as individual uncompressed file attachments using the bugzilla file attachment link above.

Thanks in advance.

Comment 4 Reartes Guillermo 2011-04-16 19:05:24 UTC
> 1. Resizing image in LibreOffice Impress

any format / size in special ?

i tried inserting (from the menu) a png and resized it without problems on a
blank presentation. (radeon/redwood)

Comment 5 Vít Ondruch 2011-04-18 08:07:23 UTC
Created attachment 492820 [details]
Xorg.0.log

I don't have the original log with crash report anymore. So this is my current log if it helps.

Comment 6 Vít Ondruch 2011-04-18 08:08:45 UTC
> * your X server config file (/etc/X11/xorg.conf, if available), and

Don't have such file.

Comment 7 Vít Ondruch 2011-04-18 08:12:07 UTC
(In reply to comment #4)
> > 1. Resizing image in LibreOffice Impress
> 
> any format / size in special ?
> 
> i tried inserting (from the menu) a png and resized it without problems on a
> blank presentation. (radeon/redwood)

Nothing special. It was very probably JPEG. It does not happen everytime, just once in a while (I prepared presentation, almost 40 slides and it crashed twice as far as I remember). Moreover the resizing of the image is very sluggish, not a nice smooth experience.

Comment 8 Jon Burgess 2011-06-01 21:17:16 UTC
That backtrace looks suspiciously like the crash I have been seeing a couple of times per hour since upgrading to F15. It seems to have gone away after installing a custom xorg-x11-drv-intel built from the FDO git master branch. I have not seen any crash after a few hours of usage.

I reckon that FDO bug 36319 is the culprit, having this fix: http://cgit.freedesktop.org/xorg/driver/xf86-video-intel/commit/?id=c9fb69cb2502917dfb2828c90802de7766072899

Comment 9 Jim Minter 2011-06-07 10:46:19 UTC
I've also had what looks like the same issue when resizing xfce4 Terminal windows on F15.  Dual head setup, Arrandale chipset (i5-940M).  I agree that https://bugs.freedesktop.org/show_bug.cgi?id=36319 looks like the fault, however applying the single fix that Jon mentions above was insufficient for me.  I applied:

http://cgit.freedesktop.org/xorg/driver/xf86-video-intel/commit/?id=c9fb69cb2502917dfb2828c90802de7766072899
http://cgit.freedesktop.org/xorg/driver/xf86-video-intel/commit/?id=a51cd83d25f2f9f2107219d5671194f931601244

Everything seems OK to me now.  Could these upstream fixes be pulled into Fedora?

Comment 10 Jim Minter 2011-08-05 14:33:38 UTC
xorg-x11-drv-intel-2.15.0-4.fc15 pulls the patches I mentioned above and resolves these problems for me.  I believe this bug can be closed as a duplicate of 717331.

Comment 11 Matěj Cepl 2011-08-05 21:07:09 UTC
Reporter, do you agree with comment 10? Was this fixed in the indicated package?

Thank you in advance for reply

Comment 12 Vít Ondruch 2012-07-27 13:44:50 UTC
Well, I am not using F15 for long time already and it is EOL anyway, so I'm closing this issue as fixed.