From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [RFC 12/17] irq: bypass: Extend skeleton for ARM forwarding control Date: Fri, 3 Jul 2015 08:52:10 +0200 Message-ID: <5596311A.3010703@redhat.com> References: <1435843047-6327-1-git-send-email-eric.auger@linaro.org> <1435843047-6327-13-git-send-email-eric.auger@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 34CDD576EC for ; Fri, 3 Jul 2015 02:40:58 -0400 (EDT) Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6Z5JBZVh8CoM for ; Fri, 3 Jul 2015 02:40:57 -0400 (EDT) Received: from mail-wi0-f177.google.com (mail-wi0-f177.google.com [209.85.212.177]) by mm01.cs.columbia.edu (Postfix) with ESMTPS id 2A93B576EA for ; Fri, 3 Jul 2015 02:40:56 -0400 (EDT) Received: by widjy10 with SMTP id jy10so101971435wid.1 for ; Thu, 02 Jul 2015 23:52:14 -0700 (PDT) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu To: "Wu, Feng" , Eric Auger , "eric.auger@st.com" , "linux-arm-kernel@lists.infradead.org" , "kvmarm@lists.cs.columbia.edu" , "kvm@vger.kernel.org" , "christoffer.dall@linaro.org" , "marc.zyngier@arm.com" , "alex.williamson@redhat.com" , "avi.kivity@gmail.com" , "mtosatti@redhat.com" , "joro@8bytes.org" , "b.reynal@virtualopensystems.com" Cc: "linux-kernel@vger.kernel.org" , "patches@linaro.org" List-Id: kvmarm@lists.cs.columbia.edu On 03/07/2015 04:43, Wu, Feng wrote: > > struct irq_bypass_consumer { > struct list_head node; > void *token; > + unsigned irq; /*got from producer when registered*/ > void (*add_producer)(struct irq_bypass_producer *, > struct irq_bypass_consumer *); > void (*del_producer)(struct irq_bypass_producer *, > struct irq_bypass_consumer *); > + void (*update)(struct irq_bypass_consumer *); > }; > > 'update' is used to update the IRTE, while irq is initialized when > registered, which is used to find the right IRTE. Feel free to add "update" in your PI patches. I am not sure if "irq" belongs here or in the containing struct. You can play with both and submit the version that looks better to you. Paolo