Re: [PATCH] xf86drm.c: add counter for ioctl restarting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 13 Apr 2012 17:26:42 +0400, "Anton V. Boyarshinov" <boyarsh@xxxxxxxxxxxx> wrote:
> In some cases ioclt->alarm->ioctl loop can be infinite:
> ioctl(7, 0x40086482, 0xbfb62738)        = ? ERESTARTSYS (To be restarted)
> --- SIGALRM (Alarm clock) @ 0 (0) ---
> sigreturn()                             = ? (mask now [])
> ioctl(7, 0x40086482, 0xbfb62738)        = ? ERESTARTSYS (To be restarted)
> and forever.
> 
> It seems, that limiting ioctl restarting by some resonable number of trys
> is a dirty but working way to prevent Xorg lockups.

And you have audited all callpaths to make sure that they can handle
EINTR? Up until now it was part of the libdrm api that it did not return
EINTR...

>From my naive pov, we could just fix the root cause of the bug rather
than escalating the bug into a random failure.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux