Re: [PATCH] mm: page_alloc: simplify drain_zone_pages by using min()

2014-06-16 Thread Andrew Morton
On Mon, 16 Jun 2014 23:08:14 +0200 Michal Nazarewicz  wrote:

> Instead of open-coding getting minimal value of two, just use min macro.
> That is why it is there for.  While changing the function also change
> type of batch local variable to match type of per_cpu_pages::batch
> (which is int).
> 

I'm not sure why we made all the per_cpu_pages mambers `int'.  Unsigned
would make more sense.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] mm: page_alloc: simplify drain_zone_pages by using min()

2014-06-16 Thread David Rientjes
On Mon, 16 Jun 2014, Michal Nazarewicz wrote:

> Instead of open-coding getting minimal value of two, just use min macro.
> That is why it is there for.  While changing the function also change
> type of batch local variable to match type of per_cpu_pages::batch
> (which is int).
> 
> Signed-off-by: Michal Nazarewicz 

Acked-by: David Rientjes 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] mm: page_alloc: simplify drain_zone_pages by using min()

2014-06-16 Thread Michal Nazarewicz
Instead of open-coding getting minimal value of two, just use min macro.
That is why it is there for.  While changing the function also change
type of batch local variable to match type of per_cpu_pages::batch
(which is int).

Signed-off-by: Michal Nazarewicz 
---
 mm/page_alloc.c | 8 ++--
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 5dba293..26aa003 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -1224,15 +1224,11 @@ static int rmqueue_bulk(struct zone *zone, unsigned int 
order,
 void drain_zone_pages(struct zone *zone, struct per_cpu_pages *pcp)
 {
unsigned long flags;
-   int to_drain;
-   unsigned long batch;
+   int to_drain, batch;
 
local_irq_save(flags);
batch = ACCESS_ONCE(pcp->batch);
-   if (pcp->count >= batch)
-   to_drain = batch;
-   else
-   to_drain = pcp->count;
+   to_drain = min(pcp->count, batch);
if (to_drain > 0) {
free_pcppages_bulk(zone, to_drain, pcp);
pcp->count -= to_drain;
-- 
2.0.0.526.g5318336

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] mm: page_alloc: simplify drain_zone_pages by using min()

2014-06-16 Thread Michal Nazarewicz
Instead of open-coding getting minimal value of two, just use min macro.
That is why it is there for.  While changing the function also change
type of batch local variable to match type of per_cpu_pages::batch
(which is int).

Signed-off-by: Michal Nazarewicz min...@mina86.com
---
 mm/page_alloc.c | 8 ++--
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 5dba293..26aa003 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -1224,15 +1224,11 @@ static int rmqueue_bulk(struct zone *zone, unsigned int 
order,
 void drain_zone_pages(struct zone *zone, struct per_cpu_pages *pcp)
 {
unsigned long flags;
-   int to_drain;
-   unsigned long batch;
+   int to_drain, batch;
 
local_irq_save(flags);
batch = ACCESS_ONCE(pcp-batch);
-   if (pcp-count = batch)
-   to_drain = batch;
-   else
-   to_drain = pcp-count;
+   to_drain = min(pcp-count, batch);
if (to_drain  0) {
free_pcppages_bulk(zone, to_drain, pcp);
pcp-count -= to_drain;
-- 
2.0.0.526.g5318336

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] mm: page_alloc: simplify drain_zone_pages by using min()

2014-06-16 Thread David Rientjes
On Mon, 16 Jun 2014, Michal Nazarewicz wrote:

 Instead of open-coding getting minimal value of two, just use min macro.
 That is why it is there for.  While changing the function also change
 type of batch local variable to match type of per_cpu_pages::batch
 (which is int).
 
 Signed-off-by: Michal Nazarewicz min...@mina86.com

Acked-by: David Rientjes rient...@google.com
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] mm: page_alloc: simplify drain_zone_pages by using min()

2014-06-16 Thread Andrew Morton
On Mon, 16 Jun 2014 23:08:14 +0200 Michal Nazarewicz min...@mina86.com wrote:

 Instead of open-coding getting minimal value of two, just use min macro.
 That is why it is there for.  While changing the function also change
 type of batch local variable to match type of per_cpu_pages::batch
 (which is int).
 

I'm not sure why we made all the per_cpu_pages mambers `int'.  Unsigned
would make more sense.


--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/