linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] ppc/iommu: use find_first_bit to look up entries in the iommu table
@ 2013-01-10 19:33 Thadeu Lima de Souza Cascardo
  2013-01-29  0:35 ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 3+ messages in thread
From: Thadeu Lima de Souza Cascardo @ 2013-01-10 19:33 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: paulus, shangw, Thadeu Lima de Souza Cascardo, anton

Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
---
v2:
Remove the unneeded extra variable i, which caused build failure.
---
 arch/powerpc/kernel/iommu.c |    9 ++-------
 1 files changed, 2 insertions(+), 7 deletions(-)

diff --git a/arch/powerpc/kernel/iommu.c b/arch/powerpc/kernel/iommu.c
index 6d48ff8..0fc44d2 100644
--- a/arch/powerpc/kernel/iommu.c
+++ b/arch/powerpc/kernel/iommu.c
@@ -708,7 +708,7 @@ struct iommu_table *iommu_init_table(struct iommu_table *tbl, int nid)
 
 void iommu_free_table(struct iommu_table *tbl, const char *node_name)
 {
-	unsigned long bitmap_sz, i;
+	unsigned long bitmap_sz;
 	unsigned int order;
 
 	if (!tbl || !tbl->it_map) {
@@ -725,14 +725,9 @@ void iommu_free_table(struct iommu_table *tbl, const char *node_name)
 		clear_bit(0, tbl->it_map);
 
 	/* verify that table contains no entries */
-	/* it_size is in entries, and we're examining 64 at a time */
-	for (i = 0; i < (tbl->it_size/64); i++) {
-		if (tbl->it_map[i] != 0) {
+	if (find_first_bit(tbl->it_map, tbl->it_size) < tbl->it_size)
 			printk(KERN_WARNING "%s: Unexpected TCEs for %s\n",
 				__func__, node_name);
-			break;
-		}
-	}
 
 	/* calculate bitmap size in bytes */
 	bitmap_sz = (tbl->it_size + 7) / 8;
-- 
1.7.1

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

* Re: [PATCH v2] ppc/iommu: use find_first_bit to look up entries in the iommu table
  2013-01-10 19:33 [PATCH v2] ppc/iommu: use find_first_bit to look up entries in the iommu table Thadeu Lima de Souza Cascardo
@ 2013-01-29  0:35 ` Benjamin Herrenschmidt
  2013-01-30 12:55   ` Thadeu Lima de Souza Cascardo
  0 siblings, 1 reply; 3+ messages in thread
From: Benjamin Herrenschmidt @ 2013-01-29  0:35 UTC (permalink / raw)
  To: Thadeu Lima de Souza Cascardo; +Cc: paulus, linuxppc-dev, shangw, anton

On Thu, 2013-01-10 at 17:33 -0200, Thadeu Lima de Souza Cascardo wrote:
> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
> ---
> v2:
> Remove the unneeded extra variable i, which caused build failure.

I believe something equivalent is already in -next, can you dbl check ?

Cheers,
Ben.

> ---
>  arch/powerpc/kernel/iommu.c |    9 ++-------
>  1 files changed, 2 insertions(+), 7 deletions(-)
> 
> diff --git a/arch/powerpc/kernel/iommu.c b/arch/powerpc/kernel/iommu.c
> index 6d48ff8..0fc44d2 100644
> --- a/arch/powerpc/kernel/iommu.c
> +++ b/arch/powerpc/kernel/iommu.c
> @@ -708,7 +708,7 @@ struct iommu_table *iommu_init_table(struct iommu_table *tbl, int nid)
>  
>  void iommu_free_table(struct iommu_table *tbl, const char *node_name)
>  {
> -	unsigned long bitmap_sz, i;
> +	unsigned long bitmap_sz;
>  	unsigned int order;
>  
>  	if (!tbl || !tbl->it_map) {
> @@ -725,14 +725,9 @@ void iommu_free_table(struct iommu_table *tbl, const char *node_name)
>  		clear_bit(0, tbl->it_map);
>  
>  	/* verify that table contains no entries */
> -	/* it_size is in entries, and we're examining 64 at a time */
> -	for (i = 0; i < (tbl->it_size/64); i++) {
> -		if (tbl->it_map[i] != 0) {
> +	if (find_first_bit(tbl->it_map, tbl->it_size) < tbl->it_size)
>  			printk(KERN_WARNING "%s: Unexpected TCEs for %s\n",
>  				__func__, node_name);
> -			break;
> -		}
> -	}
>  
>  	/* calculate bitmap size in bytes */
>  	bitmap_sz = (tbl->it_size + 7) / 8;

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

* Re: [PATCH v2] ppc/iommu: use find_first_bit to look up entries in the iommu table
  2013-01-29  0:35 ` Benjamin Herrenschmidt
@ 2013-01-30 12:55   ` Thadeu Lima de Souza Cascardo
  0 siblings, 0 replies; 3+ messages in thread
From: Thadeu Lima de Souza Cascardo @ 2013-01-30 12:55 UTC (permalink / raw)
  To: Benjamin Herrenschmidt; +Cc: paulus, linuxppc-dev, shangw, anton

On Tue, Jan 29, 2013 at 11:35:56AM +1100, Benjamin Herrenschmidt wrote:
> On Thu, 2013-01-10 at 17:33 -0200, Thadeu Lima de Souza Cascardo wrote:
> > Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
> > ---
> > v2:
> > Remove the unneeded extra variable i, which caused build failure.
> 
> I believe something equivalent is already in -next, can you dbl check ?
> 
> Cheers,
> Ben.
> 

There is, and it's using bitmap_empty, which is even more clear.

Thanks.
Cascardo.

> > ---
> >  arch/powerpc/kernel/iommu.c |    9 ++-------
> >  1 files changed, 2 insertions(+), 7 deletions(-)
> > 
> > diff --git a/arch/powerpc/kernel/iommu.c b/arch/powerpc/kernel/iommu.c
> > index 6d48ff8..0fc44d2 100644
> > --- a/arch/powerpc/kernel/iommu.c
> > +++ b/arch/powerpc/kernel/iommu.c
> > @@ -708,7 +708,7 @@ struct iommu_table *iommu_init_table(struct iommu_table *tbl, int nid)
> >  
> >  void iommu_free_table(struct iommu_table *tbl, const char *node_name)
> >  {
> > -	unsigned long bitmap_sz, i;
> > +	unsigned long bitmap_sz;
> >  	unsigned int order;
> >  
> >  	if (!tbl || !tbl->it_map) {
> > @@ -725,14 +725,9 @@ void iommu_free_table(struct iommu_table *tbl, const char *node_name)
> >  		clear_bit(0, tbl->it_map);
> >  
> >  	/* verify that table contains no entries */
> > -	/* it_size is in entries, and we're examining 64 at a time */
> > -	for (i = 0; i < (tbl->it_size/64); i++) {
> > -		if (tbl->it_map[i] != 0) {
> > +	if (find_first_bit(tbl->it_map, tbl->it_size) < tbl->it_size)
> >  			printk(KERN_WARNING "%s: Unexpected TCEs for %s\n",
> >  				__func__, node_name);
> > -			break;
> > -		}
> > -	}
> >  
> >  	/* calculate bitmap size in bytes */
> >  	bitmap_sz = (tbl->it_size + 7) / 8;
> 
> 

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

end of thread, other threads:[~2013-01-30 12:55 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-10 19:33 [PATCH v2] ppc/iommu: use find_first_bit to look up entries in the iommu table Thadeu Lima de Souza Cascardo
2013-01-29  0:35 ` Benjamin Herrenschmidt
2013-01-30 12:55   ` Thadeu Lima de Souza Cascardo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).