From: Julien Grall <julien.grall@linaro.org>
To: vijay.kilari@gmail.com, Ian.Campbell@citrix.com,
stefano.stabellini@eu.citrix.com, stefano.stabellini@citrix.com,
tim@xen.org, xen-devel@lists.xen.org
Cc: Prasun.Kapoor@caviumnetworks.com,
vijaya.kumar@caviumnetworks.com, manish.jaggi@caviumnetworks.com
Subject: Re: [RFC PATCH 09/19] xen/arm: Update irq descriptor for LPIs support
Date: Mon, 02 Mar 2015 14:17:01 +0000 [thread overview]
Message-ID: <54F470DD.3020306@linaro.org> (raw)
In-Reply-To: <1425299435-3278-10-git-send-email-vijay.kilari@gmail.com>
Hi Vijay,
On 02/03/15 12:30, vijay.kilari@gmail.com wrote:
> diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c
> index cb9c99b..d52ee0c 100644
> --- a/xen/arch/arm/irq.c
> +++ b/xen/arch/arm/irq.c
> @@ -89,6 +89,7 @@ static int __cpuinit init_local_irq_data(void)
> init_one_irq_desc(desc);
> desc->irq = irq;
> desc->action = NULL;
> + desc->data = NULL;
Why do you initialize desc->data and not desc->virq?
>
> /* PPIs are included in local_irqs, we copy the IRQ type from
> * local_irqs_type when bringing up local IRQ for this CPU in
> @@ -104,6 +105,23 @@ static int __cpuinit init_local_irq_data(void)
> return 0;
> }
>
> +int irq_set_desc_data(unsigned int irq, void *d)
> +{
> + unsigned long flags;
> + struct irq_desc *desc = irq_to_desc(irq);
> +
> + spin_lock_irqsave(&desc->lock, flags);
> + desc->data = d;
> + spin_unlock_irqrestore(&desc->lock, flags);
> +
> + return 0;
> +}
> +
> +void *irq_get_desc_data(struct irq_desc *d)
> +{
> + return d->data;
> +}
> +
None of those helper are used within this patch series...
> void __init init_IRQ(void)
> {
> int irq;
> diff --git a/xen/include/asm-arm/irq.h b/xen/include/asm-arm/irq.h
> index 435dfcd..de029e4 100644
> --- a/xen/include/asm-arm/irq.h
> +++ b/xen/include/asm-arm/irq.h
> @@ -46,7 +46,8 @@ void arch_move_irqs(struct vcpu *v);
>
> /* Set IRQ type for an SPI */
> int irq_set_spi_type(unsigned int spi, unsigned int type);
> -
There is not much reason to drop this blank line.
> +int irq_set_desc_data(unsigned int irq, void *d);
> +void *irq_get_desc_data(struct irq_desc *d);
> int platform_get_irq(const struct dt_device_node *device, int index);
>
> void irq_set_affinity(struct irq_desc *desc, const cpumask_t *cpu_mask);
> diff --git a/xen/include/xen/irq.h b/xen/include/xen/irq.h
> index 9e0155c..f12afac 100644
> --- a/xen/include/xen/irq.h
> +++ b/xen/include/xen/irq.h
> @@ -91,6 +91,8 @@ typedef struct irq_desc {
> spinlock_t lock;
> struct arch_irq_desc arch;
> cpumask_var_t affinity;
> + void *data; /* IRQ specific data */
> + int virq; /* Used to store vlpi */
irq_desc is a common structure. We should not add new field without a
strong argument.
Currently, neither data and virq seems relevant:
- the IRQ data is already contained in the irq_action. So why do you
need to introduce a new field?
- the virq field see https://patches.linaro.org/43012/
Regards,
--
Julien Grall
next prev parent reply other threads:[~2015-03-02 14:17 UTC|newest]
Thread overview: 59+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-02 12:30 [RFC PATCH 00/19] xen/arm: Add ITS support vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 01/19] xen/arm: add linked list apis vijay.kilari
2015-03-02 13:21 ` Jan Beulich
2015-03-02 12:30 ` [RFC PATCH 02/19] xen/arm: its: Import GICv3 ITS driver from linux vijay.kilari
2015-03-13 10:24 ` Julien Grall
2015-03-13 10:35 ` Julien Grall
2015-03-16 9:55 ` Vijay Kilari
2015-03-16 10:12 ` Stefano Stabellini
2015-03-16 13:04 ` Julien Grall
2015-03-16 13:15 ` Julien Grall
2015-03-16 13:32 ` Vijay Kilari
2015-03-02 12:30 ` [RFC PATCH 03/19] xen/arm: its: Port ITS driver to xen vijay.kilari
2015-03-13 11:46 ` Julien Grall
2015-03-16 14:06 ` Vijay Kilari
2015-03-16 14:20 ` Julien Grall
2015-03-16 16:03 ` Vijay Kilari
2015-03-16 16:18 ` Julien Grall
2015-03-02 12:30 ` [RFC PATCH 04/19] xen/arm: its: Move ITS command encode helper functions vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 05/19] xen/arm: its: Remove unused code in ITS driver vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 06/19] xen/arm: its: Add helper functions to decode ITS Command vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 07/19] xen/arm: vits: Move LPI handling to basic virtual its driver vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 08/19] xen/arm: Add helper function to get domain page vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 09/19] xen/arm: Update irq descriptor for LPIs support vijay.kilari
2015-03-02 14:17 ` Julien Grall [this message]
2015-03-03 17:54 ` Stefano Stabellini
2015-03-02 12:30 ` [RFC PATCH 10/19] xen/arm: its: Add virtual ITS command support vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 11/19] xen/arm: its: Add emulation of ITS control registers vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 12/19] xen/arm: its: Add support to emulate GICR register for LPIs vijay.kilari
2015-03-03 17:16 ` Stefano Stabellini
2015-03-04 12:10 ` Stefano Stabellini
2015-03-02 12:30 ` [RFC PATCH 13/19] xen/arm: its: implement hw_irq_controller " vijay.kilari
2015-03-03 17:28 ` Stefano Stabellini
2015-03-09 13:03 ` Vijay Kilari
2015-03-09 16:09 ` Stefano Stabellini
2015-03-09 16:32 ` Vijay Kilari
2015-03-02 12:30 ` [RFC PATCH 14/19] xen/arm: vits: Map ITS translation space vijay.kilari
2015-03-03 17:31 ` Stefano Stabellini
2015-03-03 17:41 ` Julien Grall
2015-03-02 12:30 ` [RFC PATCH 15/19] xen/arm: gicv3: Refactor redistributor information vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 16/19] xen/arm: its: Dynamic allocation of LPI descriptors vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 17/19] xen/arm: its: Support ITS interrupt handling vijay.kilari
2015-03-03 18:07 ` Stefano Stabellini
2015-03-03 19:49 ` Julien Grall
2015-03-04 9:57 ` Stefano Stabellini
2015-03-02 12:30 ` [RFC PATCH 18/19] xen/arm: its: Generate ITS node for Dom0 vijay.kilari
2015-03-02 12:30 ` [RFC PATCH 19/19] xen/arm: its: Initialize virtual and physical ITS driver vijay.kilari
2015-03-02 13:19 ` [RFC PATCH 00/19] xen/arm: Add ITS support Julien Grall
2015-03-03 3:55 ` Vijay Kilari
2015-03-03 11:43 ` Julien Grall
2015-03-09 12:57 ` Vijay Kilari
2015-03-09 16:06 ` Stefano Stabellini
2015-03-09 18:16 ` Julien Grall
2015-03-13 4:48 ` Vijay Kilari
2015-03-13 10:13 ` Julien Grall
2015-03-16 10:30 ` Vijay Kilari
2015-03-02 14:53 ` Ian Campbell
2015-03-02 17:39 ` Ian Campbell
2015-03-03 4:02 ` Vijay Kilari
2015-03-03 10:07 ` Ian Campbell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54F470DD.3020306@linaro.org \
--to=julien.grall@linaro.org \
--cc=Ian.Campbell@citrix.com \
--cc=Prasun.Kapoor@caviumnetworks.com \
--cc=manish.jaggi@caviumnetworks.com \
--cc=stefano.stabellini@citrix.com \
--cc=stefano.stabellini@eu.citrix.com \
--cc=tim@xen.org \
--cc=vijay.kilari@gmail.com \
--cc=vijaya.kumar@caviumnetworks.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.