Hi Yang, On 17/01/18 04:37, Yang Shunyong wrote: > With recent hashed kernel pointers change, output with %p will > output hashed address. This patch changes %p to %px in irq domain > debug information. As unprivileged user has no permission to mount > debugfs or set printk level to KERN_DEBUG to access the information, > changes in this patch are appropriate. > > Signed-off-by: Yang Shunyong <shunyong.y...@hxt-semitech.com> > --- > kernel/irq/irqdomain.c | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c > index 62068ad..d40fbed 100644 > --- a/kernel/irq/irqdomain.c > +++ b/kernel/irq/irqdomain.c > @@ -75,7 +75,7 @@ struct fwnode_handle *__irq_domain_alloc_fwnode(unsigned > int type, int id, > n = kasprintf(GFP_KERNEL, "%s-%d", name, id); > break; > default: > - n = kasprintf(GFP_KERNEL, "irqchip@%p", data); > + n = kasprintf(GFP_KERNEL, "irqchip@%px", data); > break; > } > > @@ -450,7 +450,7 @@ EXPORT_SYMBOL_GPL(irq_domain_check_msi_remap); > */ > void irq_set_default_host(struct irq_domain *domain) > { > - pr_debug("Default domain set to @0x%p\n", domain); > + pr_debug("Default domain set to @0x%px\n", domain); > > irq_default_domain = domain; > } > @@ -635,7 +635,7 @@ unsigned int irq_create_mapping(struct irq_domain *domain, > struct device_node *of_node; > int virq; > > - pr_debug("irq_create_mapping(0x%p, 0x%lx)\n", domain, hwirq); > + pr_debug("%s(0x%px, 0x%lx)\n", __func__, domain, hwirq); > > /* Look for default domain if nececssary */ > if (domain == NULL) > @@ -644,7 +644,7 @@ unsigned int irq_create_mapping(struct irq_domain *domain, > WARN(1, "%s(, %lx) called with NULL domain\n", __func__, hwirq); > return 0; > } > - pr_debug("-> using domain @%p\n", domain); > + pr_debug("-> using domain @%px\n", domain); > > of_node = irq_domain_get_of_node(domain); > > @@ -921,7 +921,7 @@ static void virq_debug_show_one(struct seq_file *m, > struct irq_desc *desc) > chip = irq_data_get_irq_chip(data); > seq_printf(m, "%-15s ", (chip && chip->name) ? chip->name : > "none"); > > - seq_printf(m, "0x%p ", irq_data_get_irq_chip_data(data)); > + seq_printf(m, "0x%px ", irq_data_get_irq_chip_data(data)); > > seq_printf(m, " %c ", (desc->action && > desc->action->handler) ? '*' : ' '); > direct = (irq == hwirq) && (irq < > domain->revmap_direct_max_irq); >
In all honesty, I'd be more inclined to remove this debug feature altogether, as CONFIG_GENERIC_IRQ_DEBUGFS is more complete and more useful. Is there any feature missing from that infrastructure that prevents you from using it instead? If the answer is "none", then I'll post a patch removing it. Thanks, M. -- Jazz is not dead. It just smells funny...