From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH] drm/i915: Take modeset locks around intel_modeset_setup_hw_state() Date: Mon, 2 Dec 2013 14:12:19 +0200 Message-ID: <20131202121219.GN10036@intel.com> References: <1385975286-25392-1-git-send-email-ville.syrjala@linux.intel.com> <1385978429.2972.8.camel@x41.thuisdomein> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Return-path: Content-Disposition: inline In-Reply-To: <1385978429.2972.8.camel@x41.thuisdomein> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org To: Paul Bolle Cc: dri-devel@lists.freedesktop.org, Dave Airlie , intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org List-Id: intel-gfx@lists.freedesktop.org On Mon, Dec 02, 2013 at 11:00:29AM +0100, Paul Bolle wrote: > On Mon, 2013-12-02 at 11:08 +0200, ville.syrjala@linux.intel.com wrote: > > From: Ville Syrj=E4l=E4 > > = > > Some lower level things get angry if we don't have modeset locks > > during intel_modeset_setup_hw_state(). Actually the resume and > > lid_notify codepaths alreday hold the locks, but the init codepath > > doesn't, so fix that. > > = > > Signed-off-by: Ville Syrj=E4l=E4 > > --- > > Totally untested, but looks correct to me. > = > I assume I need to test this, on top of 7c063c725987 ("drm/i915: take > mode config lock around crtc disable at suspend"), to see if this makes > the WARNING that I currently see at boot go away? Yeah that would be nice. > Paul Bolle > = > > drivers/gpu/drm/i915/intel_display.c | 2 ++ > > 1 file changed, 2 insertions(+) > > = > > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i91= 5/intel_display.c > > index 080f6fd..114db51 100644 > > --- a/drivers/gpu/drm/i915/intel_display.c > > +++ b/drivers/gpu/drm/i915/intel_display.c > > @@ -11046,7 +11046,9 @@ void intel_modeset_gem_init(struct drm_device *= dev) > > = > > intel_setup_overlay(dev); > > = > > + drm_modeset_lock_all(dev); > > intel_modeset_setup_hw_state(dev, false); > > + drm_modeset_unlock_all(dev); > > } > > = > > void intel_modeset_cleanup(struct drm_device *dev) -- = Ville Syrj=E4l=E4 Intel OTC