All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Neuling <mikey@neuling.org>
To: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	David Howells <dhowells@redhat.com>,
	Grant Likely <grant.likely@secretlab.ca>,
	akpm@linux-foundation.org, linux-arch@vger.kernel.org,
	linux-kernel@vger.kernel.org, paul.gortmaker@windriver.com,
	arnd@arndb.de, hpa@zytor.com,
	ppc-dev <linuxppc-dev@lists.ozlabs.org>
Subject: Re: [GIT PULL] Disintegrate and kill asm/system.h
Date: Thu, 29 Mar 2012 15:55:24 +1100	[thread overview]
Message-ID: <11814.1332996924@neuling.org> (raw)
In-Reply-To: <20120329154238.1ce219f7c998da45452af4b2@canb.auug.org.au>

> > Can we please move that abortion into arch/powerpc/? Instead of making
> > generic code even uglier..
> 
> How about this (build tested on powerpc allyesconfig):
> 
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Thu, 29 Mar 2012 14:58:10 +1100
> Subject: [PATCH] powerpc: fix fallout from system.h split up
> 
> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>

FWIW.. this works for me too..

Acked-by: Michael Neuling <mikey@neuling.org>

Mikey

> ---
>  arch/powerpc/kernel/fadump.c |    2 +
>  arch/powerpc/kernel/irq.c    |   72 ++++++++++++++++++++++++++++++++++++++=
> ++++
>  arch/powerpc/kernel/kgdb.c   |    1 +
>  kernel/irq/irqdomain.c       |   72 --------------------------------------=
> ----
>  4 files changed, 75 insertions(+), 72 deletions(-)
> 
> diff --git a/arch/powerpc/kernel/fadump.c b/arch/powerpc/kernel/fadump.c
> index cfe7a38..18bdf74 100644
> --- a/arch/powerpc/kernel/fadump.c
> +++ b/arch/powerpc/kernel/fadump.c
> @@ -40,6 +40,8 @@
>  #include <asm/prom.h>
>  #include <asm/rtas.h>
>  #include <asm/fadump.h>
> +#include <asm/debug.h>
> +#include <asm/setup.h>
> =20
>  static struct fw_dump fw_dump;
>  static struct fadump_mem_struct fdm;
> diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c
> index 243dbab..ff165f5 100644
> --- a/arch/powerpc/kernel/irq.c
> +++ b/arch/powerpc/kernel/irq.c
> @@ -623,3 +623,75 @@ static int __init setup_noirqdistrib(char *str)
> =20
>  __setup("noirqdistrib", setup_noirqdistrib);
>  #endif /* CONFIG_PPC64 */
> +
> +#ifdef CONFIG_VIRQ_DEBUG
> +static int virq_debug_show(struct seq_file *m, void *private)
> +{
> +	unsigned long flags;
> +	struct irq_desc *desc;
> +	const char *p;
> +	static const char none[] =3D "none";
> +	void *data;
> +	int i;
> +
> +	seq_printf(m, "%-5s  %-7s  %-15s  %-18s  %s\n", "virq", "hwirq",
> +		      "chip name", "chip data", "domain name");
> +
> +	for (i =3D 1; i < nr_irqs; i++) {
> +		desc =3D irq_to_desc(i);
> +		if (!desc)
> +			continue;
> +
> +		raw_spin_lock_irqsave(&desc->lock, flags);
> +
> +		if (desc->action && desc->action->handler) {
> +			struct irq_chip *chip;
> +
> +			seq_printf(m, "%5d  ", i);
> +			seq_printf(m, "0x%05lx  ", desc->irq_data.hwirq);
> +
> +			chip =3D irq_desc_get_chip(desc);
> +			if (chip && chip->name)
> +				p =3D chip->name;
> +			else
> +				p =3D none;
> +			seq_printf(m, "%-15s  ", p);
> +
> +			data =3D irq_desc_get_chip_data(desc);
> +			seq_printf(m, "0x%16p  ", data);
> +
> +			if (desc->irq_data.domain->of_node)
> +				p =3D desc->irq_data.domain->of_node->full_name
;
> +			else
> +				p =3D none;
> +			seq_printf(m, "%s\n", p);
> +		}
> +
> +		raw_spin_unlock_irqrestore(&desc->lock, flags);
> +	}
> +
> +	return 0;
> +}
> +
> +static int virq_debug_open(struct inode *inode, struct file *file)
> +{
> +	return single_open(file, virq_debug_show, inode->i_private);
> +}
> +
> +static const struct file_operations virq_debug_fops =3D {
> +	.open =3D virq_debug_open,
> +	.read =3D seq_read,
> +	.llseek =3D seq_lseek,
> +	.release =3D single_release,
> +};
> +
> +static int __init irq_debugfs_init(void)
> +{
> +	if (debugfs_create_file("virq_mapping", S_IRUGO, powerpc_debugfs_root,
> +				 NULL, &virq_debug_fops) =3D=3D NULL)
> +		return -ENOMEM;
> +
> +	return 0;
> +}
> +__initcall(irq_debugfs_init);
> +#endif /* CONFIG_VIRQ_DEBUG */
> diff --git a/arch/powerpc/kernel/kgdb.c b/arch/powerpc/kernel/kgdb.c
> index 76a6e40..782bd0a 100644
> --- a/arch/powerpc/kernel/kgdb.c
> +++ b/arch/powerpc/kernel/kgdb.c
> @@ -24,6 +24,7 @@
>  #include <asm/current.h>
>  #include <asm/processor.h>
>  #include <asm/machdep.h>
> +#include <asm/debug.h>
> =20
>  /*
>   * This table contains the mapping between PowerPC hardware trap types, and
> diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
> index af48e59..ae645ab 100644
> --- a/kernel/irq/irqdomain.c
> +++ b/kernel/irq/irqdomain.c
> @@ -632,78 +632,6 @@ unsigned int irq_linear_revmap(struct irq_domain *doma=
> in,
>  	return revmap[hwirq];
>  }
> =20
> -#ifdef CONFIG_VIRQ_DEBUG
> -static int virq_debug_show(struct seq_file *m, void *private)
> -{
> -	unsigned long flags;
> -	struct irq_desc *desc;
> -	const char *p;
> -	static const char none[] =3D "none";
> -	void *data;
> -	int i;
> -
> -	seq_printf(m, "%-5s  %-7s  %-15s  %-18s  %s\n", "virq", "hwirq",
> -		      "chip name", "chip data", "domain name");
> -
> -	for (i =3D 1; i < nr_irqs; i++) {
> -		desc =3D irq_to_desc(i);
> -		if (!desc)
> -			continue;
> -
> -		raw_spin_lock_irqsave(&desc->lock, flags);
> -
> -		if (desc->action && desc->action->handler) {
> -			struct irq_chip *chip;
> -
> -			seq_printf(m, "%5d  ", i);
> -			seq_printf(m, "0x%05lx  ", desc->irq_data.hwirq);
> -
> -			chip =3D irq_desc_get_chip(desc);
> -			if (chip && chip->name)
> -				p =3D chip->name;
> -			else
> -				p =3D none;
> -			seq_printf(m, "%-15s  ", p);
> -
> -			data =3D irq_desc_get_chip_data(desc);
> -			seq_printf(m, "0x%16p  ", data);
> -
> -			if (desc->irq_data.domain->of_node)
> -				p =3D desc->irq_data.domain->of_node->full_name
;
> -			else
> -				p =3D none;
> -			seq_printf(m, "%s\n", p);
> -		}
> -
> -		raw_spin_unlock_irqrestore(&desc->lock, flags);
> -	}
> -
> -	return 0;
> -}
> -
> -static int virq_debug_open(struct inode *inode, struct file *file)
> -{
> -	return single_open(file, virq_debug_show, inode->i_private);
> -}
> -
> -static const struct file_operations virq_debug_fops =3D {
> -	.open =3D virq_debug_open,
> -	.read =3D seq_read,
> -	.llseek =3D seq_lseek,
> -	.release =3D single_release,
> -};
> -
> -static int __init irq_debugfs_init(void)
> -{
> -	if (debugfs_create_file("virq_mapping", S_IRUGO, powerpc_debugfs_root,
> -				 NULL, &virq_debug_fops) =3D=3D NULL)
> -		return -ENOMEM;
> -
> -	return 0;
> -}
> -__initcall(irq_debugfs_init);
> -#endif /* CONFIG_VIRQ_DEBUG */
> -
>  int irq_domain_simple_map(struct irq_domain *d, unsigned int irq,
>  			  irq_hw_number_t hwirq)
>  {
> --=20
> 1.7.9.1
> 
> 
> --=20
> Cheers,
> Stephen Rothwell                    sfr@canb.auug.org.au
> http://www.canb.auug.org.au/~sfr/

WARNING: multiple messages have this Message-ID (diff)
From: Michael Neuling <mikey@neuling.org>
To: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: linux-arch@vger.kernel.org, arnd@arndb.de,
	ppc-dev <linuxppc-dev@lists.ozlabs.org>,
	linux-kernel@vger.kernel.org, David Howells <dhowells@redhat.com>,
	paul.gortmaker@windriver.com, hpa@zytor.com,
	akpm@linux-foundation.org,
	Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [GIT PULL] Disintegrate and kill asm/system.h
Date: Thu, 29 Mar 2012 15:55:24 +1100	[thread overview]
Message-ID: <11814.1332996924@neuling.org> (raw)
In-Reply-To: <20120329154238.1ce219f7c998da45452af4b2@canb.auug.org.au>

> > Can we please move that abortion into arch/powerpc/? Instead of making
> > generic code even uglier..
> 
> How about this (build tested on powerpc allyesconfig):
> 
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Thu, 29 Mar 2012 14:58:10 +1100
> Subject: [PATCH] powerpc: fix fallout from system.h split up
> 
> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>

FWIW.. this works for me too..

Acked-by: Michael Neuling <mikey@neuling.org>

Mikey

> ---
>  arch/powerpc/kernel/fadump.c |    2 +
>  arch/powerpc/kernel/irq.c    |   72 ++++++++++++++++++++++++++++++++++++++=
> ++++
>  arch/powerpc/kernel/kgdb.c   |    1 +
>  kernel/irq/irqdomain.c       |   72 --------------------------------------=
> ----
>  4 files changed, 75 insertions(+), 72 deletions(-)
> 
> diff --git a/arch/powerpc/kernel/fadump.c b/arch/powerpc/kernel/fadump.c
> index cfe7a38..18bdf74 100644
> --- a/arch/powerpc/kernel/fadump.c
> +++ b/arch/powerpc/kernel/fadump.c
> @@ -40,6 +40,8 @@
>  #include <asm/prom.h>
>  #include <asm/rtas.h>
>  #include <asm/fadump.h>
> +#include <asm/debug.h>
> +#include <asm/setup.h>
> =20
>  static struct fw_dump fw_dump;
>  static struct fadump_mem_struct fdm;
> diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c
> index 243dbab..ff165f5 100644
> --- a/arch/powerpc/kernel/irq.c
> +++ b/arch/powerpc/kernel/irq.c
> @@ -623,3 +623,75 @@ static int __init setup_noirqdistrib(char *str)
> =20
>  __setup("noirqdistrib", setup_noirqdistrib);
>  #endif /* CONFIG_PPC64 */
> +
> +#ifdef CONFIG_VIRQ_DEBUG
> +static int virq_debug_show(struct seq_file *m, void *private)
> +{
> +	unsigned long flags;
> +	struct irq_desc *desc;
> +	const char *p;
> +	static const char none[] =3D "none";
> +	void *data;
> +	int i;
> +
> +	seq_printf(m, "%-5s  %-7s  %-15s  %-18s  %s\n", "virq", "hwirq",
> +		      "chip name", "chip data", "domain name");
> +
> +	for (i =3D 1; i < nr_irqs; i++) {
> +		desc =3D irq_to_desc(i);
> +		if (!desc)
> +			continue;
> +
> +		raw_spin_lock_irqsave(&desc->lock, flags);
> +
> +		if (desc->action && desc->action->handler) {
> +			struct irq_chip *chip;
> +
> +			seq_printf(m, "%5d  ", i);
> +			seq_printf(m, "0x%05lx  ", desc->irq_data.hwirq);
> +
> +			chip =3D irq_desc_get_chip(desc);
> +			if (chip && chip->name)
> +				p =3D chip->name;
> +			else
> +				p =3D none;
> +			seq_printf(m, "%-15s  ", p);
> +
> +			data =3D irq_desc_get_chip_data(desc);
> +			seq_printf(m, "0x%16p  ", data);
> +
> +			if (desc->irq_data.domain->of_node)
> +				p =3D desc->irq_data.domain->of_node->full_name
;
> +			else
> +				p =3D none;
> +			seq_printf(m, "%s\n", p);
> +		}
> +
> +		raw_spin_unlock_irqrestore(&desc->lock, flags);
> +	}
> +
> +	return 0;
> +}
> +
> +static int virq_debug_open(struct inode *inode, struct file *file)
> +{
> +	return single_open(file, virq_debug_show, inode->i_private);
> +}
> +
> +static const struct file_operations virq_debug_fops =3D {
> +	.open =3D virq_debug_open,
> +	.read =3D seq_read,
> +	.llseek =3D seq_lseek,
> +	.release =3D single_release,
> +};
> +
> +static int __init irq_debugfs_init(void)
> +{
> +	if (debugfs_create_file("virq_mapping", S_IRUGO, powerpc_debugfs_root,
> +				 NULL, &virq_debug_fops) =3D=3D NULL)
> +		return -ENOMEM;
> +
> +	return 0;
> +}
> +__initcall(irq_debugfs_init);
> +#endif /* CONFIG_VIRQ_DEBUG */
> diff --git a/arch/powerpc/kernel/kgdb.c b/arch/powerpc/kernel/kgdb.c
> index 76a6e40..782bd0a 100644
> --- a/arch/powerpc/kernel/kgdb.c
> +++ b/arch/powerpc/kernel/kgdb.c
> @@ -24,6 +24,7 @@
>  #include <asm/current.h>
>  #include <asm/processor.h>
>  #include <asm/machdep.h>
> +#include <asm/debug.h>
> =20
>  /*
>   * This table contains the mapping between PowerPC hardware trap types, and
> diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
> index af48e59..ae645ab 100644
> --- a/kernel/irq/irqdomain.c
> +++ b/kernel/irq/irqdomain.c
> @@ -632,78 +632,6 @@ unsigned int irq_linear_revmap(struct irq_domain *doma=
> in,
>  	return revmap[hwirq];
>  }
> =20
> -#ifdef CONFIG_VIRQ_DEBUG
> -static int virq_debug_show(struct seq_file *m, void *private)
> -{
> -	unsigned long flags;
> -	struct irq_desc *desc;
> -	const char *p;
> -	static const char none[] =3D "none";
> -	void *data;
> -	int i;
> -
> -	seq_printf(m, "%-5s  %-7s  %-15s  %-18s  %s\n", "virq", "hwirq",
> -		      "chip name", "chip data", "domain name");
> -
> -	for (i =3D 1; i < nr_irqs; i++) {
> -		desc =3D irq_to_desc(i);
> -		if (!desc)
> -			continue;
> -
> -		raw_spin_lock_irqsave(&desc->lock, flags);
> -
> -		if (desc->action && desc->action->handler) {
> -			struct irq_chip *chip;
> -
> -			seq_printf(m, "%5d  ", i);
> -			seq_printf(m, "0x%05lx  ", desc->irq_data.hwirq);
> -
> -			chip =3D irq_desc_get_chip(desc);
> -			if (chip && chip->name)
> -				p =3D chip->name;
> -			else
> -				p =3D none;
> -			seq_printf(m, "%-15s  ", p);
> -
> -			data =3D irq_desc_get_chip_data(desc);
> -			seq_printf(m, "0x%16p  ", data);
> -
> -			if (desc->irq_data.domain->of_node)
> -				p =3D desc->irq_data.domain->of_node->full_name
;
> -			else
> -				p =3D none;
> -			seq_printf(m, "%s\n", p);
> -		}
> -
> -		raw_spin_unlock_irqrestore(&desc->lock, flags);
> -	}
> -
> -	return 0;
> -}
> -
> -static int virq_debug_open(struct inode *inode, struct file *file)
> -{
> -	return single_open(file, virq_debug_show, inode->i_private);
> -}
> -
> -static const struct file_operations virq_debug_fops =3D {
> -	.open =3D virq_debug_open,
> -	.read =3D seq_read,
> -	.llseek =3D seq_lseek,
> -	.release =3D single_release,
> -};
> -
> -static int __init irq_debugfs_init(void)
> -{
> -	if (debugfs_create_file("virq_mapping", S_IRUGO, powerpc_debugfs_root,
> -				 NULL, &virq_debug_fops) =3D=3D NULL)
> -		return -ENOMEM;
> -
> -	return 0;
> -}
> -__initcall(irq_debugfs_init);
> -#endif /* CONFIG_VIRQ_DEBUG */
> -
>  int irq_domain_simple_map(struct irq_domain *d, unsigned int irq,
>  			  irq_hw_number_t hwirq)
>  {
> --=20
> 1.7.9.1
> 
> 
> --=20
> Cheers,
> Stephen Rothwell                    sfr@canb.auug.org.au
> http://www.canb.auug.org.au/~sfr/

  reply	other threads:[~2012-03-29  4:55 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-28 18:20 [GIT PULL] Disintegrate and kill asm/system.h David Howells
2012-03-29  2:50 ` Michael Neuling
2012-03-29  2:55   ` Stephen Rothwell
2012-03-29  4:15     ` Stephen Rothwell
2012-03-29  4:15       ` Stephen Rothwell
2012-03-29  4:21       ` Michael Neuling
2012-03-29  4:21         ` Michael Neuling
2012-03-29  4:24       ` Linus Torvalds
2012-03-29  4:24         ` Linus Torvalds
2012-03-29  4:42         ` Stephen Rothwell
2012-03-29  4:42           ` Stephen Rothwell
2012-03-29  4:55           ` Michael Neuling [this message]
2012-03-29  4:55             ` Michael Neuling
2012-03-29  5:02           ` Linus Torvalds
2012-03-29  5:02             ` Linus Torvalds
2012-03-29  8:11             ` Benjamin Herrenschmidt
2012-03-29  8:11               ` Benjamin Herrenschmidt
2012-03-29 21:14               ` Grant Likely
2012-03-29 21:14                 ` Grant Likely
2012-03-29 21:48                 ` Thomas Gleixner
2012-03-29 21:48                   ` Thomas Gleixner
2012-03-29 22:16                   ` Grant Likely
2012-03-29 22:16                     ` Grant Likely
2012-03-29  4:14   ` Benjamin Herrenschmidt
2012-03-29 21:01     ` Grant Likely
2012-03-29 22:50       ` Stephen Rothwell
2012-03-29 22:52         ` Grant Likely
2012-03-29 23:38           ` Stephen Rothwell
2012-03-30  0:37             ` Grant Likely
2012-03-30  7:48     ` Paul Mundt
2012-03-30 21:46       ` Grant Likely
  -- strict thread matches above, loose matches on Subject: below --
2012-03-21 17:14 David Howells
2012-03-21 23:06 ` Paul Gortmaker
2012-03-21 23:06   ` Paul Gortmaker

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=11814.1332996924@neuling.org \
    --to=mikey@neuling.org \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=dhowells@redhat.com \
    --cc=grant.likely@secretlab.ca \
    --cc=hpa@zytor.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=paul.gortmaker@windriver.com \
    --cc=sfr@canb.auug.org.au \
    --cc=torvalds@linux-foundation.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.