DPCD/AUX locking

Dave Airlie airlied at gmail.com
Wed May 7 00:12:54 PDT 2014


On 7 May 2014 15:26, Ben Skeggs <skeggsb at gmail.com> wrote:
> On Wed, May 7, 2014 at 9:20 AM, Dave Airlie <airlied at gmail.com> wrote:
>> So now I've been playing with MST I think get the feeling I might need
>> some explicit locking on the AUX channel, I think at the moment the
>> mode_config mutex implicitly defends the aux channel as the only real
>> paths into it are
>>
>> a) from userspace connector probing,
>> b) from HPD irqs,
>>
>> currently both of these on i915 at least take mode config,
>>
>> however with MST I can't use mode_config for this, so I'm wondering if
>> I should be adding some explicit locking in the helpers or make it the
>> drivers problem to lock around helper access?
> Without yet being clear on what you're locking against exactly, my
> vote would be on making this the driver's problem.  We (should be, but
> don't yet) need to take locks around AUX access anyway as the pads are
> shared between aux/ddc channels in a lot of cases.

locking against concurrent access,

currently if I get a HPD irq that requires reading the DPCD status,
and I get a connector detect from userspace that reads i2c over aux
they would collide,

at the moment mode config lock seems to stop that in i915 but taking mode config
for the DP HPD irq is very wrong for MST.

Dave.


More information about the dri-devel mailing list