On 3/20/24 03:49, Tomi Valkeinen wrote: > On 20/03/2024 00:51, Sean Anderson wrote: > >> +/** >> + * enum test_pattern - Test patterns for test testing > > "for test testing"? =) > >> @@ -1655,6 +2321,9 @@ static void zynqmp_dp_hpd_irq_work_func(struct work_struct *work) >> u8 status[DP_LINK_STATUS_SIZE + 2]; >> int err; >> + if (READ_ONCE(dp->ignore_hpd)) >> + return; >> + >> mutex_lock(&dp->lock); >> err = drm_dp_dpcd_read(&dp->aux, DP_SINK_COUNT, status, >> DP_LINK_STATUS_SIZE + 2); > > Why do you need READ/WRITE_ONCE() for ignore_hpd? It's not protected by dp->lock so we don't have to take it for zynqmp_dp_hpd_work_func. Although maybe we should make a version of zynqmp_dp_bridge_detect which assumes we already hold the lock. --Sean