From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jike Song Subject: Re: [RFC PATCH 7/8] drm/i915: vgt irq mediation - via a tasklet based mechanism Date: Wed, 22 Oct 2014 15:34:59 +0800 Message-ID: <54475E23.9070903@intel.com> References: <1412071538-19059-1-git-send-email-jike.song@intel.com> <1412071538-19059-8-git-send-email-jike.song@intel.com> <20140930103019.GJ24667@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id AF04B6E270 for ; Wed, 22 Oct 2014 00:37:34 -0700 (PDT) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Tian, Kevin" Cc: "daniel.vetter@ffwll.ch" , "intel-gfx@lists.freedesktop.org" List-Id: intel-gfx@lists.freedesktop.org On 10/01/2014 12:26 AM, Tian, Kevin wrote: > From virtualization p.o.v, the ideal case is to run host i915 irq handler in the > interrupt context, which meets all the assumption from original code. Using > tasklet or other manner still has some restriction. This is a major open we'd > like to hear more from you guys. Is it possible to have i915 driver to request > two irq numbers: irq1 for real device and irq2 is purely faked one. vgt handler > registers on irq1 and i915 hanlder registers on irq2, and then we can use self > IPI to trigger irq2 when injection is required. But I'm not sure whether this is > an existing feature in kernel, or need some core enhancement in irq sub-system... Hi Kevin, Daniel, I'm so excited to know that, there is an existing feature in kernel: irq_work. Basicly it allows us to run the host i915 ISR in hardirq context prefectly, what's needed is to select CONFIG_IRQ_WORK in Kconfig :) I'll use that in the v2 patches. > > Thanks > Kevin > -- Thanks, Jike