All of lore.kernel.org
 help / color / mirror / Atom feed
From: Glauber Costa <glommer@parallels.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Mel Gorman <mgorman@suse.de>,
	Zdenek Kabelac <zkabelac@redhat.com>,
	Seth Jennings <sjenning@linux.vnet.ibm.com>,
	Jiri Slaby <jslaby@suse.cz>,
	Valdis.Kletnieks@vt.edu, Jiri Slaby <jirislaby@gmail.com>,
	linux-mm@kvack.org, LKML <linux-kernel@vger.kernel.org>,
	Rik van Riel <riel@redhat.com>,
	Robert Jennings <rcj@linux.vnet.ibm.com>
Subject: Re: [PATCH] Revert "mm: remove __GFP_NO_KSWAPD"
Date: Wed, 21 Nov 2012 12:30:18 +0400	[thread overview]
Message-ID: <50AC911A.3070501@parallels.com> (raw)
In-Reply-To: <20121120121817.cf80b8ad.akpm@linux-foundation.org>

On 11/21/2012 12:18 AM, Andrew Morton wrote:
> On Tue, 20 Nov 2012 13:18:19 +0400
> Glauber Costa <glommer@parallels.com> wrote:
> 
>> On 11/12/2012 03:37 PM, Mel Gorman wrote:
>>> diff --git a/include/linux/gfp.h b/include/linux/gfp.h
>>> index 02c1c971..d0a7967 100644
>>> --- a/include/linux/gfp.h
>>> +++ b/include/linux/gfp.h
>>> @@ -31,6 +31,7 @@ struct vm_area_struct;
>>>  #define ___GFP_THISNODE		0x40000u
>>>  #define ___GFP_RECLAIMABLE	0x80000u
>>>  #define ___GFP_NOTRACK		0x200000u
>>> +#define ___GFP_NO_KSWAPD	0x400000u
>>>  #define ___GFP_OTHER_NODE	0x800000u
>>>  #define ___GFP_WRITE		0x1000000u
>>
>> Keep in mind that this bit has been reused in -mm.
>> If this patch needs to be reverted, we'll need to first change
>> the definition of __GFP_KMEMCG (and __GFP_BITS_SHIFT as a result), or it
>> would break things.
> 
> I presently have
> 
> /* Plain integer GFP bitmasks. Do not use this directly. */
> #define ___GFP_DMA		0x01u
> #define ___GFP_HIGHMEM		0x02u
> #define ___GFP_DMA32		0x04u
> #define ___GFP_MOVABLE		0x08u
> #define ___GFP_WAIT		0x10u
> #define ___GFP_HIGH		0x20u
> #define ___GFP_IO		0x40u
> #define ___GFP_FS		0x80u
> #define ___GFP_COLD		0x100u
> #define ___GFP_NOWARN		0x200u
> #define ___GFP_REPEAT		0x400u
> #define ___GFP_NOFAIL		0x800u
> #define ___GFP_NORETRY		0x1000u
> #define ___GFP_MEMALLOC		0x2000u
> #define ___GFP_COMP		0x4000u
> #define ___GFP_ZERO		0x8000u
> #define ___GFP_NOMEMALLOC	0x10000u
> #define ___GFP_HARDWALL		0x20000u
> #define ___GFP_THISNODE		0x40000u
> #define ___GFP_RECLAIMABLE	0x80000u
> #define ___GFP_KMEMCG		0x100000u
> #define ___GFP_NOTRACK		0x200000u
> #define ___GFP_NO_KSWAPD	0x400000u
> #define ___GFP_OTHER_NODE	0x800000u
> #define ___GFP_WRITE		0x1000000u
> 
> and
> 

Humm, I didn't realize there were also another free space at 0x100000u.
This seems fine.

> #define __GFP_BITS_SHIFT 25	/* Room for N __GFP_FOO bits */
> #define __GFP_BITS_MASK ((__force gfp_t)((1 << __GFP_BITS_SHIFT) - 1))
> 
> Which I think is OK?
Yes, if we haven't increased the size of the flag-space, no need to
change it.

> 
> I'd forgotten about __GFP_BITS_SHIFT.  Should we do this?
> 
> --- a/include/linux/gfp.h~a
> +++ a/include/linux/gfp.h
> @@ -35,6 +35,7 @@ struct vm_area_struct;
>  #define ___GFP_NO_KSWAPD	0x400000u
>  #define ___GFP_OTHER_NODE	0x800000u
>  #define ___GFP_WRITE		0x1000000u
> +/* If the above are modified, __GFP_BITS_SHIFT may need updating */
>  
This is a very helpful comment.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

WARNING: multiple messages have this Message-ID (diff)
From: Glauber Costa <glommer@parallels.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Mel Gorman <mgorman@suse.de>,
	Zdenek Kabelac <zkabelac@redhat.com>,
	Seth Jennings <sjenning@linux.vnet.ibm.com>,
	Jiri Slaby <jslaby@suse.cz>, <Valdis.Kletnieks@vt.edu>,
	Jiri Slaby <jirislaby@gmail.com>, <linux-mm@kvack.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Rik van Riel <riel@redhat.com>,
	Robert Jennings <rcj@linux.vnet.ibm.com>
Subject: Re: [PATCH] Revert "mm: remove __GFP_NO_KSWAPD"
Date: Wed, 21 Nov 2012 12:30:18 +0400	[thread overview]
Message-ID: <50AC911A.3070501@parallels.com> (raw)
In-Reply-To: <20121120121817.cf80b8ad.akpm@linux-foundation.org>

On 11/21/2012 12:18 AM, Andrew Morton wrote:
> On Tue, 20 Nov 2012 13:18:19 +0400
> Glauber Costa <glommer@parallels.com> wrote:
> 
>> On 11/12/2012 03:37 PM, Mel Gorman wrote:
>>> diff --git a/include/linux/gfp.h b/include/linux/gfp.h
>>> index 02c1c971..d0a7967 100644
>>> --- a/include/linux/gfp.h
>>> +++ b/include/linux/gfp.h
>>> @@ -31,6 +31,7 @@ struct vm_area_struct;
>>>  #define ___GFP_THISNODE		0x40000u
>>>  #define ___GFP_RECLAIMABLE	0x80000u
>>>  #define ___GFP_NOTRACK		0x200000u
>>> +#define ___GFP_NO_KSWAPD	0x400000u
>>>  #define ___GFP_OTHER_NODE	0x800000u
>>>  #define ___GFP_WRITE		0x1000000u
>>
>> Keep in mind that this bit has been reused in -mm.
>> If this patch needs to be reverted, we'll need to first change
>> the definition of __GFP_KMEMCG (and __GFP_BITS_SHIFT as a result), or it
>> would break things.
> 
> I presently have
> 
> /* Plain integer GFP bitmasks. Do not use this directly. */
> #define ___GFP_DMA		0x01u
> #define ___GFP_HIGHMEM		0x02u
> #define ___GFP_DMA32		0x04u
> #define ___GFP_MOVABLE		0x08u
> #define ___GFP_WAIT		0x10u
> #define ___GFP_HIGH		0x20u
> #define ___GFP_IO		0x40u
> #define ___GFP_FS		0x80u
> #define ___GFP_COLD		0x100u
> #define ___GFP_NOWARN		0x200u
> #define ___GFP_REPEAT		0x400u
> #define ___GFP_NOFAIL		0x800u
> #define ___GFP_NORETRY		0x1000u
> #define ___GFP_MEMALLOC		0x2000u
> #define ___GFP_COMP		0x4000u
> #define ___GFP_ZERO		0x8000u
> #define ___GFP_NOMEMALLOC	0x10000u
> #define ___GFP_HARDWALL		0x20000u
> #define ___GFP_THISNODE		0x40000u
> #define ___GFP_RECLAIMABLE	0x80000u
> #define ___GFP_KMEMCG		0x100000u
> #define ___GFP_NOTRACK		0x200000u
> #define ___GFP_NO_KSWAPD	0x400000u
> #define ___GFP_OTHER_NODE	0x800000u
> #define ___GFP_WRITE		0x1000000u
> 
> and
> 

Humm, I didn't realize there were also another free space at 0x100000u.
This seems fine.

> #define __GFP_BITS_SHIFT 25	/* Room for N __GFP_FOO bits */
> #define __GFP_BITS_MASK ((__force gfp_t)((1 << __GFP_BITS_SHIFT) - 1))
> 
> Which I think is OK?
Yes, if we haven't increased the size of the flag-space, no need to
change it.

> 
> I'd forgotten about __GFP_BITS_SHIFT.  Should we do this?
> 
> --- a/include/linux/gfp.h~a
> +++ a/include/linux/gfp.h
> @@ -35,6 +35,7 @@ struct vm_area_struct;
>  #define ___GFP_NO_KSWAPD	0x400000u
>  #define ___GFP_OTHER_NODE	0x800000u
>  #define ___GFP_WRITE		0x1000000u
> +/* If the above are modified, __GFP_BITS_SHIFT may need updating */
>  
This is a very helpful comment.

  reply	other threads:[~2012-11-21  8:30 UTC|newest]

Thread overview: 100+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-11  8:52 kswapd0: wxcessive CPU usage Jiri Slaby
2012-10-11  8:52 ` Jiri Slaby
2012-10-11 13:44 ` Valdis.Kletnieks
2012-10-11 15:34   ` Jiri Slaby
2012-10-11 15:34     ` Jiri Slaby
2012-10-11 17:56     ` Valdis.Kletnieks
2012-10-11 17:59       ` Jiri Slaby
2012-10-11 17:59         ` Jiri Slaby
2012-10-11 18:19         ` Valdis.Kletnieks
2012-10-11 22:08           ` kswapd0: excessive " Jiri Slaby
2012-10-11 22:08             ` Jiri Slaby
2012-10-12 12:37             ` Jiri Slaby
2012-10-12 12:37               ` Jiri Slaby
2012-10-12 13:57               ` Mel Gorman
2012-10-12 13:57                 ` Mel Gorman
2012-10-15  9:54                 ` Jiri Slaby
2012-10-15  9:54                   ` Jiri Slaby
2012-10-15 11:09                   ` Mel Gorman
2012-10-15 11:09                     ` Mel Gorman
2012-10-29 10:52                     ` Thorsten Leemhuis
2012-10-29 10:52                       ` Thorsten Leemhuis
2012-10-30 19:18                       ` Mel Gorman
2012-10-30 19:18                         ` Mel Gorman
2012-10-31 11:25                         ` Thorsten Leemhuis
2012-10-31 11:25                           ` Thorsten Leemhuis
2012-10-31 15:04                           ` Mel Gorman
2012-10-31 15:04                             ` Mel Gorman
2012-11-04 16:36                         ` Rik van Riel
2012-11-04 16:36                           ` Rik van Riel
2012-11-02 10:44                     ` Zdenek Kabelac
2012-11-02 10:44                       ` Zdenek Kabelac
2012-11-02 10:53                       ` Jiri Slaby
2012-11-02 10:53                         ` Jiri Slaby
2012-11-02 19:45                         ` Jiri Slaby
2012-11-02 19:45                           ` Jiri Slaby
2012-11-04 11:26                           ` Zdenek Kabelac
2012-11-04 11:26                             ` Zdenek Kabelac
2012-11-05 14:24                           ` [PATCH] Revert "mm: vmscan: scale number of pages reclaimed by reclaim/compaction based on failures" Mel Gorman
2012-11-05 14:24                             ` Mel Gorman
2012-11-06 10:15                             ` Johannes Hirte
2012-11-06 10:15                               ` Johannes Hirte
2012-11-09  8:36                               ` Mel Gorman
2012-11-09  8:36                                 ` Mel Gorman
2012-11-14 21:43                                 ` Johannes Hirte
2012-11-14 21:43                                   ` Johannes Hirte
2012-11-09  9:12                             ` Mel Gorman
2012-11-09  9:12                               ` Mel Gorman
2012-11-09  4:22                           ` kswapd0: excessive CPU usage Seth Jennings
2012-11-09  4:22                             ` Seth Jennings
2012-11-09  8:07                             ` Zdenek Kabelac
2012-11-09  8:07                               ` Zdenek Kabelac
2012-11-09  9:06                               ` Mel Gorman
2012-11-09  9:06                                 ` Mel Gorman
2012-11-11  9:13                                 ` Zdenek Kabelac
2012-11-11  9:13                                   ` Zdenek Kabelac
2012-11-12 11:37                                   ` [PATCH] Revert "mm: remove __GFP_NO_KSWAPD" Mel Gorman
2012-11-12 11:37                                     ` Mel Gorman
2012-11-16 19:14                                     ` Josh Boyer
2012-11-16 19:14                                       ` Josh Boyer
2012-11-16 19:51                                       ` Andrew Morton
2012-11-16 19:51                                         ` Andrew Morton
2012-11-20  1:43                                         ` Valdis.Kletnieks
2012-11-16 20:06                                       ` Mel Gorman
2012-11-16 20:06                                         ` Mel Gorman
2012-11-20 15:38                                         ` Josh Boyer
2012-11-20 15:38                                           ` Josh Boyer
2012-11-20 16:13                                           ` Bruno Wolff III
2012-11-20 16:13                                             ` Bruno Wolff III
2012-11-20 17:43                                           ` Thorsten Leemhuis
2012-11-20 17:43                                             ` Thorsten Leemhuis
2012-11-23 15:20                                             ` Thorsten Leemhuis
2012-11-23 15:20                                               ` Thorsten Leemhuis
2012-11-27 11:12                                               ` Mel Gorman
2012-11-27 11:12                                                 ` Mel Gorman
2012-11-21 15:08                                           ` Mel Gorman
2012-11-21 15:08                                             ` Mel Gorman
2012-11-20  9:18                                     ` Glauber Costa
2012-11-20  9:18                                       ` Glauber Costa
2012-11-20 20:18                                       ` Andrew Morton
2012-11-20 20:18                                         ` Andrew Morton
2012-11-21  8:30                                         ` Glauber Costa [this message]
2012-11-21  8:30                                           ` Glauber Costa
2012-11-12 12:19                                   ` kswapd0: excessive CPU usage Mel Gorman
2012-11-12 12:19                                     ` Mel Gorman
2012-11-12 13:13                                     ` Zdenek Kabelac
2012-11-12 13:13                                       ` Zdenek Kabelac
2012-11-12 13:31                                       ` Mel Gorman
2012-11-12 13:31                                         ` Mel Gorman
2012-11-12 14:50                                         ` Zdenek Kabelac
2012-11-12 14:50                                           ` Zdenek Kabelac
2012-11-18 19:00                                         ` Zdenek Kabelac
2012-11-18 19:00                                           ` Zdenek Kabelac
2012-11-18 19:07                                           ` Jiri Slaby
2012-11-18 19:07                                             ` Jiri Slaby
2012-11-09  8:40                             ` Mel Gorman
2012-11-09  8:40                               ` Mel Gorman
2012-10-11 22:14 ` kswapd0: wxcessive " Andrew Morton
2012-10-11 22:14   ` Andrew Morton
2012-10-11 22:26   ` Jiri Slaby
2012-10-11 22:26     ` Jiri Slaby

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=50AC911A.3070501@parallels.com \
    --to=glommer@parallels.com \
    --cc=Valdis.Kletnieks@vt.edu \
    --cc=akpm@linux-foundation.org \
    --cc=jirislaby@gmail.com \
    --cc=jslaby@suse.cz \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@suse.de \
    --cc=rcj@linux.vnet.ibm.com \
    --cc=riel@redhat.com \
    --cc=sjenning@linux.vnet.ibm.com \
    --cc=zkabelac@redhat.com \
    /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.