svn commit: r288653 - in head/sys/dev/drm2: . i915

Adrian Chadd adrian.chadd at gmail.com
Tue Oct 6 20:20:38 UTC 2015


ok, so what should we rip out? That '3' case?


-a


On 6 October 2015 at 13:19, Jean-Sébastien Pédron <dumbbell at freebsd.org> wrote:
> On 04.10.2015 11:46, Konstantin Belousov wrote:
>> On Sun, Oct 04, 2015 at 07:45:37AM +0000, Adrian Chadd wrote:
>>>   * Add missing case statement (gen == 3) in intel_gpu_reset().
>> This seems to be wrong.  The i915 and G33 chipsets do not have registers
>> declared in the 8xx chipset documentation.  More, i915 and G33 have different
>> reset procedures.
>>
>> The absence of '3' case was copied from the corresponding Linux kernel.
>> Was this change tested, or is there a reference to upstream where the
>> handling was added in this manner ?
>
> You're right, even in Linux 3.8, the switch does not have a case for
> generation 3.
>
>>>   * Replace M_WAITOK with M_NOWAIT when the return value of malloc is checked (may be incorrect).
>> This is also incorrect.  At least the modesetting pathes are executed in
>> the syscall context, and sleeping is allowed; the modesetting locks were
>> selected to make sleeping possible.  Using nowait causes random syscalls
>> failure where the requests would succeed otherwise.
>
> My reasoning was that M_WAITOK could make the display hang/unresponsive
> while the memory is under pressure. The caller should be responsible for
> handling the error instead.
>
> In Linux, *alloc() calls may fail so application should already be
> responsible for that.
>
> --
> Jean-Sébastien Pédron
>


More information about the svn-src-head mailing list