Re: xserver-xorg-video-nouveau: Changes to 'debian-unstable'
On 2012-05-23 21:21 +0200, Maarten Lankhorst wrote:
> Op 23-05-12 21:09, Sven Joachim schreef:
>> On 2012-05-23 20:47 +0200, Maarten Lankhorst wrote:
>>
>> The failing line seems to be this:
>>>
>>> (EE) NOUVEAU(0): Failed to allocate scratch buffer: -22
>>>
>>> aka EINVAL
>>>
>>> Is there anything in dmesg that indicates where it comes from?
>> No. The message only appears once in the driver's source, though; so I
>> conclude that nouveau_bo_new() must have returned 0 and nouveau_bo_map()
>> returned -EINVAL at the beginning of NVAccelCommonInit().
>>
> Nah, both could have failed.
Huh, indeed.
> It would be interesting to know which of the 2 failed, and where.
>
> 3 probable candidate calls that would fail:
> drmCommandWriteRead in abi16_bo_init called from nouveau_bo_new
> mmap in nouveau_bo_map
> drmCommandWrite in nouveau_bo_wait called from bo_map.
It's mmap in nouveau_bo_map. Of the parameters passed to it, bo->size
(== 131072) and bo->device->fd (== 15) look innocuous, while
nvbo->map_handle raises some suspicion. On first investigation GDB
claimed its value had been optimized out(!), so I rebuilt with
DEB_BUILD_OPTIONS=noopt, and now nvbo->map_handle == 4457037824, which
looks a bit large on i386.
Setting AC_SYS_LARGEFILE in configure.ac seems to be necessary, and
hopefully also sufficient. At least X has started successfully. :-)
Cheers,
Sven
Reply to: