All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] genirq: Update stale comment for __irq_domain_add
@ 2016-05-31 12:56 Punit Agrawal
  2016-05-31 12:56 ` [PATCH 2/2] genirq: Use firmware identifier while adding domain Punit Agrawal
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Punit Agrawal @ 2016-05-31 12:56 UTC (permalink / raw)
  To: tglx, jiang.liu, marc.zyngier; +Cc: linux-kernel, Punit Agrawal

Commit 1bf4ddc46c5d ("irqdomain: Introduce irq_domain_create_{linear,
tree}") introduced the use of fwnode_handle to identify the interrupt
controller when calling __irq_domain_add but missed updating the kernel
doc parameters for the function.

Update this comment. While we are touching this code, also consolidate
the declaration and assignment of of_node.

Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>
---
 kernel/irq/irqdomain.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
index 8798b6c..1fe2fea 100644
--- a/kernel/irq/irqdomain.c
+++ b/kernel/irq/irqdomain.c
@@ -80,7 +80,7 @@ EXPORT_SYMBOL_GPL(irq_domain_free_fwnode);
 
 /**
  * __irq_domain_add() - Allocate a new irq_domain data structure
- * @of_node: optional device-tree node of the interrupt controller
+ * @fwnode: firmware node for the interrupt controller
  * @size: Size of linear map; 0 for radix mapping only
  * @hwirq_max: Maximum number of interrupts supported by controller
  * @direct_max: Maximum value of direct maps; Use ~0 for no limit; 0 for no
@@ -97,9 +97,7 @@ struct irq_domain *__irq_domain_add(struct fwnode_handle *fwnode, int size,
 				    void *host_data)
 {
 	struct irq_domain *domain;
-	struct device_node *of_node;
-
-	of_node = to_of_node(fwnode);
+	struct device_node *of_node = to_of_node(fwnode);
 
 	domain = kzalloc_node(sizeof(*domain) + (sizeof(unsigned int) * size),
 			      GFP_KERNEL, of_node_to_nid(of_node));
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/2] genirq: Use firmware identifier while adding domain
  2016-05-31 12:56 [PATCH 1/2] genirq: Update stale comment for __irq_domain_add Punit Agrawal
@ 2016-05-31 12:56 ` Punit Agrawal
  2016-09-05 14:30   ` Marc Zyngier
  2016-09-05 14:30 ` [PATCH 1/2] genirq: Update stale comment for __irq_domain_add Marc Zyngier
  2016-09-05 15:16 ` [tip:irq/core] " tip-bot for Punit Agrawal
  2 siblings, 1 reply; 5+ messages in thread
From: Punit Agrawal @ 2016-05-31 12:56 UTC (permalink / raw)
  To: tglx, jiang.liu, marc.zyngier; +Cc: linux-kernel, Punit Agrawal

Use the firmware provided identifier for the domain name.

Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>
---
 kernel/irq/irqdomain.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
index 1fe2fea..3af09e1 100644
--- a/kernel/irq/irqdomain.c
+++ b/kernel/irq/irqdomain.c
@@ -114,6 +114,10 @@ struct irq_domain *__irq_domain_add(struct fwnode_handle *fwnode, int size,
 	domain->hwirq_max = hwirq_max;
 	domain->revmap_size = size;
 	domain->revmap_direct_max_irq = direct_max;
+	if (is_fwnode_irqchip(fwnode))
+		domain->name = container_of(fwnode, struct irqchip_fwid, fwnode)->name;
+	else
+		domain->name = of_node_full_name(of_node);
 	irq_domain_check_hierarchy(domain);
 
 	mutex_lock(&irq_domain_mutex);
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] genirq: Update stale comment for __irq_domain_add
  2016-05-31 12:56 [PATCH 1/2] genirq: Update stale comment for __irq_domain_add Punit Agrawal
  2016-05-31 12:56 ` [PATCH 2/2] genirq: Use firmware identifier while adding domain Punit Agrawal
@ 2016-09-05 14:30 ` Marc Zyngier
  2016-09-05 15:16 ` [tip:irq/core] " tip-bot for Punit Agrawal
  2 siblings, 0 replies; 5+ messages in thread
From: Marc Zyngier @ 2016-09-05 14:30 UTC (permalink / raw)
  To: Punit Agrawal, tglx, jiang.liu; +Cc: linux-kernel

[this has been languishing in my Inbox for months - thanks tglx for the
heads up]

On 31/05/16 13:56, Punit Agrawal wrote:
> Commit 1bf4ddc46c5d ("irqdomain: Introduce irq_domain_create_{linear,
> tree}") introduced the use of fwnode_handle to identify the interrupt
> controller when calling __irq_domain_add but missed updating the kernel
> doc parameters for the function.
> 
> Update this comment. While we are touching this code, also consolidate
> the declaration and assignment of of_node.
> 
> Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>

Acked-by: Marc Zyngier <marc.zyngier@arm.com>

	M.
-- 
Jazz is not dead. It just smells funny...

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/2] genirq: Use firmware identifier while adding domain
  2016-05-31 12:56 ` [PATCH 2/2] genirq: Use firmware identifier while adding domain Punit Agrawal
@ 2016-09-05 14:30   ` Marc Zyngier
  0 siblings, 0 replies; 5+ messages in thread
From: Marc Zyngier @ 2016-09-05 14:30 UTC (permalink / raw)
  To: Punit Agrawal, tglx, jiang.liu; +Cc: linux-kernel

On 31/05/16 13:56, Punit Agrawal wrote:
> Use the firmware provided identifier for the domain name.
> 
> Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>
> ---
>  kernel/irq/irqdomain.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
> index 1fe2fea..3af09e1 100644
> --- a/kernel/irq/irqdomain.c
> +++ b/kernel/irq/irqdomain.c
> @@ -114,6 +114,10 @@ struct irq_domain *__irq_domain_add(struct fwnode_handle *fwnode, int size,
>  	domain->hwirq_max = hwirq_max;
>  	domain->revmap_size = size;
>  	domain->revmap_direct_max_irq = direct_max;
> +	if (is_fwnode_irqchip(fwnode))
> +		domain->name = container_of(fwnode, struct irqchip_fwid, fwnode)->name;

So this thing worries me to no end. Look at the way irqchip_fwid is
constructed:

	name = kasprintf(GFP_KERNEL, "irqchip@%p", data);

You'd end-up disclosing a kernel address, which is not a very good idea.

> +	else
> +		domain->name = of_node_full_name(of_node);

And what if the node gets pruned (as it can happen on OpenFirmware
implementations)?

>  	irq_domain_check_hierarchy(domain);
>  
>  	mutex_lock(&irq_domain_mutex);
> 

Thanks,

	M.
-- 
Jazz is not dead. It just smells funny...

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [tip:irq/core] genirq: Update stale comment for __irq_domain_add
  2016-05-31 12:56 [PATCH 1/2] genirq: Update stale comment for __irq_domain_add Punit Agrawal
  2016-05-31 12:56 ` [PATCH 2/2] genirq: Use firmware identifier while adding domain Punit Agrawal
  2016-09-05 14:30 ` [PATCH 1/2] genirq: Update stale comment for __irq_domain_add Marc Zyngier
@ 2016-09-05 15:16 ` tip-bot for Punit Agrawal
  2 siblings, 0 replies; 5+ messages in thread
From: tip-bot for Punit Agrawal @ 2016-09-05 15:16 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: hpa, marc.zyngier, linux-kernel, punit.agrawal, mingo, tglx

Commit-ID:  545d5d657b720e9c4dc773265bb7e9d88e34b269
Gitweb:     http://git.kernel.org/tip/545d5d657b720e9c4dc773265bb7e9d88e34b269
Author:     Punit Agrawal <punit.agrawal@arm.com>
AuthorDate: Tue, 31 May 2016 13:56:48 +0100
Committer:  Thomas Gleixner <tglx@linutronix.de>
CommitDate: Mon, 5 Sep 2016 17:11:10 +0200

genirq: Update stale comment for __irq_domain_add

Commit 1bf4ddc46c5d ("irqdomain: Introduce irq_domain_create_{linear,
tree}") introduced the use of fwnode_handle to identify the interrupt
controller when calling __irq_domain_add but missed updating the kernel
doc parameters for the function.

Update this comment. While we are touching this code, also consolidate
the declaration and assignment of of_node.

Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>
Acked-by: Marc Zygnier <marc.zyngier@arm.com>
Link: http://lkml.kernel.org/r/1464699409-23113-1-git-send-email-punit.agrawal@arm.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

---
 kernel/irq/irqdomain.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
index f10cffe..8c0a0ae 100644
--- a/kernel/irq/irqdomain.c
+++ b/kernel/irq/irqdomain.c
@@ -80,7 +80,7 @@ EXPORT_SYMBOL_GPL(irq_domain_free_fwnode);
 
 /**
  * __irq_domain_add() - Allocate a new irq_domain data structure
- * @of_node: optional device-tree node of the interrupt controller
+ * @fwnode: firmware node for the interrupt controller
  * @size: Size of linear map; 0 for radix mapping only
  * @hwirq_max: Maximum number of interrupts supported by controller
  * @direct_max: Maximum value of direct maps; Use ~0 for no limit; 0 for no
@@ -96,10 +96,8 @@ struct irq_domain *__irq_domain_add(struct fwnode_handle *fwnode, int size,
 				    const struct irq_domain_ops *ops,
 				    void *host_data)
 {
+	struct device_node *of_node = to_of_node(fwnode);
 	struct irq_domain *domain;
-	struct device_node *of_node;
-
-	of_node = to_of_node(fwnode);
 
 	domain = kzalloc_node(sizeof(*domain) + (sizeof(unsigned int) * size),
 			      GFP_KERNEL, of_node_to_nid(of_node));

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-09-05 15:16 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-05-31 12:56 [PATCH 1/2] genirq: Update stale comment for __irq_domain_add Punit Agrawal
2016-05-31 12:56 ` [PATCH 2/2] genirq: Use firmware identifier while adding domain Punit Agrawal
2016-09-05 14:30   ` Marc Zyngier
2016-09-05 14:30 ` [PATCH 1/2] genirq: Update stale comment for __irq_domain_add Marc Zyngier
2016-09-05 15:16 ` [tip:irq/core] " tip-bot for Punit Agrawal

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.