Robert Noland wrote: > On Tue, 2009-12-01 at 10:17 +0100, Thomas Hellstrom wrote: > >> Jakob Bornecrantz wrote: >> >>> On 1 dec 2009, at 00.24, Robert Noland wrote: >>> >>> >>>> On Tue, 2009-12-01 at 10:37 +1100, Daniel Stone wrote: >>>> >>>> >>>>> On Mon, Nov 30, 2009 at 11:21:47AM -0600, Robert Noland wrote: >>>>> >>>>> >>>>>> I've tried to ask linux folk if this is also true for linux, but the >>>>>> answer is unclear at this time. >>>>>> >>>>>> >>>>> EINTR will be returned to userspace if the syscall needs to be >>>>> restarted. >>>>> >>>>> >>>> Ok, EINTR is already handled in drmIoctl() as is EAGAIN, so that >>>> sounds >>>> like my patch would be correct. >>>> >>>> >>> Hmm looks like we need to change bunch of stuff in ttm and the vmwgfx >>> for that to be true. I still like to get Thomas comments on this >>> before we do anything drastic. >>> >>> >>> >> Yes, there is some stuff we need to change here, really. >> >> As previously pointed out by people on the dri-devel list (Kristian >> among others), if the linux kernel returns >> -ERESTARTSYS, and the kernel cannot restart the system call AND there is >> a signal pending, the kernel (not libc) will convert it to -EINTR and >> return to user-space. -ERESTARTSYS may only be returned when there is a >> signal pending. >> >> I'm not sure this is the case with -ERESTART. IIRC I've seen man pages >> with kernel calls return -ERESTART, but I'm not sure at this point. Best >> would be to test and see what happens. >> >> Having said that. I don't think we should change this *now*. If BSD >> converts -ERESTART to -EINTR, that will get caught in drmCommandXXX and >> functionality will be preserved. >> > > My current issue is that ERESTART isn't even defined in userspace, so if > I enable gallium I have build failure. > > robert. > Hmm. Then we should disable the vmware winsys build on *BSD until this is properly fixed.
/Thomas ------------------------------------------------------------------------------ Join us December 9, 2009 for the Red Hat Virtual Experience, a free event focused on virtualization and cloud computing. Attend in-depth sessions from your desk. Your couch. Anywhere. http://p.sf.net/sfu/redhat-sfdev2dev _______________________________________________ Mesa3d-dev mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mesa3d-dev
