From mboxrd@z Thu Jan 1 00:00:00 1970 From: Greg KH Subject: Re: [PATCH v4] drm/i915: Avoid GPU Hang when comming out of s3 or s4 Date: Mon, 11 May 2015 05:22:49 -0700 Message-ID: <20150511122249.GB22424@kroah.com> References: <20150511103303.GZ15256@phenom.ffwll.local> <1431342327-8140-1-git-send-email-peter.antoine@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <1431342327-8140-1-git-send-email-peter.antoine@intel.com> Sender: stable-owner@vger.kernel.org To: Peter Antoine Cc: intel-gfx@lists.freedesktop.org, david.weinehall@intel.com, yex.tian@intel.com, deepak.s@intel.com, thomas.daniel@intel.com, daniel.vetter@ffwll.ch, stable@vger.kernel.org List-Id: intel-gfx@lists.freedesktop.org On Mon, May 11, 2015 at 12:05:27PM +0100, Peter Antoine wrote: > This patch fixed a timing issue that causes a GPU hang when a the system > comes out of power saving. > > During pm_resume, We are submitting batchbuffers before enabling > Interrupts this is causing us to miss the context switch interrupt, > and in consequence intel_execlists_handle_ctx_events is not triggered. > > This patch is based on a patch from Deepak S > from another platform. > > The patch fixes an issue introduced by: > commit e7778be1eab918274f79603d7c17b3ec8be77386 > drm/i915: Fix startup failure in LRC mode after recent init changes > > The above patch added a call to init_context() to fix an issue introduced > by a previous patch. But, it then opened up a small timing window for the > batches being added by the init_context (basically setting up the context) > to complete before the interrupts have been turned on, thus hanging the > GPU. > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89600 > Signed-off-by: Peter Antoine > --- > drivers/gpu/drm/i915/i915_drv.c | 11 ++++++++--- > 1 file changed, 8 insertions(+), 3 deletions(-) This is not the correct way to submit patches for inclusion in the stable kernel tree. Please read Documentation/stable_kernel_rules.txt for how to do this properly.