x86/mm: Remove the redundant conditional check
diff mbox series

Message ID 20200308013511.12792-1-bhe@redhat.com
State New
Headers show
Series
  • x86/mm: Remove the redundant conditional check
Related show

Commit Message

Baoquan He March 8, 2020, 1:35 a.m. UTC
In commit f70029bbaacbfa8f0 ("mm, memory_hotplug: drop CONFIG_MOVABLE_NODE"),
the dependency on CONFIG_MOVABLE_NODE was removed for N_MEMORY, so the
conditional check in paging_init() doesn't make any sense any more.
Remove it.

Signed-off-by: Baoquan He <bhe@redhat.com>
---
 arch/x86/mm/init_64.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

Michal Hocko March 10, 2020, 10:10 a.m. UTC | #1
On Sun 08-03-20 09:35:11, Baoquan He wrote:
> In commit f70029bbaacbfa8f0 ("mm, memory_hotplug: drop CONFIG_MOVABLE_NODE"),
> the dependency on CONFIG_MOVABLE_NODE was removed for N_MEMORY, so the
> conditional check in paging_init() doesn't make any sense any more.
> Remove it.

Please expand more. I would really have to refresh the intention of the
code but from a quick look at the code CONFIG_HIGHMEM still makes
N_MEMORY != N_NORMAL_MEMORY. So what what does this change mean for that
config?

> Signed-off-by: Baoquan He <bhe@redhat.com>
> ---
>  arch/x86/mm/init_64.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
> index abbdecb75fad..0a14711d3a93 100644
> --- a/arch/x86/mm/init_64.c
> +++ b/arch/x86/mm/init_64.c
> @@ -818,8 +818,7 @@ void __init paging_init(void)
>  	 *	 will not set it back.
>  	 */
>  	node_clear_state(0, N_MEMORY);
> -	if (N_MEMORY != N_NORMAL_MEMORY)
> -		node_clear_state(0, N_NORMAL_MEMORY);
> +	node_clear_state(0, N_NORMAL_MEMORY);
>  
>  	zone_sizes_init();
>  }
> -- 
> 2.17.2
>
Baoquan He March 10, 2020, 2:23 p.m. UTC | #2
On 03/10/20 at 11:10am, Michal Hocko wrote:
> On Sun 08-03-20 09:35:11, Baoquan He wrote:
> > In commit f70029bbaacbfa8f0 ("mm, memory_hotplug: drop CONFIG_MOVABLE_NODE"),
> > the dependency on CONFIG_MOVABLE_NODE was removed for N_MEMORY, so the
> > conditional check in paging_init() doesn't make any sense any more.
> > Remove it.
> 
> Please expand more. I would really have to refresh the intention of the
> code but from a quick look at the code CONFIG_HIGHMEM still makes
> N_MEMORY != N_NORMAL_MEMORY. So what what does this change mean for that
> config?

Thanks for looking into this. I was trying to explain that
CONFIG_MOVABLE_NODE made N_MEMORY have chance to take different enum
value.
 
Do you think the below saying is OK to you?
 
~~~
In commit f70029bbaacb ("mm, memory_hotplug: drop CONFIG_MOVABLE_NODE"),
the dependency on CONFIG_MOVABLE_NODE was removed for N_MEMORY.  Before
commit f70029bbaacb, CONFIG_HIGHMEM && !CONFIG_MOVABLE_NODE could make
(N_MEMORY == N_NORMAL_MEMORY) be true. After commit f70029bbaacb, N_MEMORY
doesn't have any chance to be equal to N_NORMAL_MEMORY. So the  conditional
check in paging_init() doesn't make any sense any more. Let's remove it.
~~~
 
Thanks
Baoquan
Michal Hocko March 10, 2020, 2:32 p.m. UTC | #3
On Tue 10-03-20 22:23:41, Baoquan He wrote:
> On 03/10/20 at 11:10am, Michal Hocko wrote:
> > On Sun 08-03-20 09:35:11, Baoquan He wrote:
> > > In commit f70029bbaacbfa8f0 ("mm, memory_hotplug: drop CONFIG_MOVABLE_NODE"),
> > > the dependency on CONFIG_MOVABLE_NODE was removed for N_MEMORY, so the
> > > conditional check in paging_init() doesn't make any sense any more.
> > > Remove it.
> > 
> > Please expand more. I would really have to refresh the intention of the
> > code but from a quick look at the code CONFIG_HIGHMEM still makes
> > N_MEMORY != N_NORMAL_MEMORY. So what what does this change mean for that
> > config?
> 
> Thanks for looking into this. I was trying to explain that
> CONFIG_MOVABLE_NODE made N_MEMORY have chance to take different enum
> value.
>  
> Do you think the below saying is OK to you?
>  
> ~~~
> In commit f70029bbaacb ("mm, memory_hotplug: drop CONFIG_MOVABLE_NODE"),
> the dependency on CONFIG_MOVABLE_NODE was removed for N_MEMORY.  Before
> commit f70029bbaacb, CONFIG_HIGHMEM && !CONFIG_MOVABLE_NODE could make
> (N_MEMORY == N_NORMAL_MEMORY) be true. After commit f70029bbaacb, N_MEMORY
> doesn't have any chance to be equal to N_NORMAL_MEMORY. So the  conditional
> check in paging_init() doesn't make any sense any more. Let's remove it.

Yes this describes the matter much better. I have obviously misread the
code when looking at it this morning. Being explicit in the changelog
would have helped at least me. Thanks!
Baoquan He March 11, 2020, 1:15 a.m. UTC | #4
On 03/10/20 at 03:32pm, Michal Hocko wrote:
> On Tue 10-03-20 22:23:41, Baoquan He wrote:
> > On 03/10/20 at 11:10am, Michal Hocko wrote:
> > > On Sun 08-03-20 09:35:11, Baoquan He wrote:
> > > > In commit f70029bbaacbfa8f0 ("mm, memory_hotplug: drop CONFIG_MOVABLE_NODE"),
> > > > the dependency on CONFIG_MOVABLE_NODE was removed for N_MEMORY, so the
> > > > conditional check in paging_init() doesn't make any sense any more.
> > > > Remove it.
> > > 
> > > Please expand more. I would really have to refresh the intention of the
> > > code but from a quick look at the code CONFIG_HIGHMEM still makes
> > > N_MEMORY != N_NORMAL_MEMORY. So what what does this change mean for that
> > > config?
> > 
> > Thanks for looking into this. I was trying to explain that
> > CONFIG_MOVABLE_NODE made N_MEMORY have chance to take different enum
> > value.
> >  
> > Do you think the below saying is OK to you?
> >  
> > ~~~
> > In commit f70029bbaacb ("mm, memory_hotplug: drop CONFIG_MOVABLE_NODE"),
> > the dependency on CONFIG_MOVABLE_NODE was removed for N_MEMORY.  Before
> > commit f70029bbaacb, CONFIG_HIGHMEM && !CONFIG_MOVABLE_NODE could make
> > (N_MEMORY == N_NORMAL_MEMORY) be true. After commit f70029bbaacb, N_MEMORY
> > doesn't have any chance to be equal to N_NORMAL_MEMORY. So the  conditional
> > check in paging_init() doesn't make any sense any more. Let's remove it.
> 
> Yes this describes the matter much better. I have obviously misread the
> code when looking at it this morning. Being explicit in the changelog
> would have helped at least me. Thanks!

Will update log and repost, thanks.

Patch
diff mbox series

diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
index abbdecb75fad..0a14711d3a93 100644
--- a/arch/x86/mm/init_64.c
+++ b/arch/x86/mm/init_64.c
@@ -818,8 +818,7 @@  void __init paging_init(void)
 	 *	 will not set it back.
 	 */
 	node_clear_state(0, N_MEMORY);
-	if (N_MEMORY != N_NORMAL_MEMORY)
-		node_clear_state(0, N_NORMAL_MEMORY);
+	node_clear_state(0, N_NORMAL_MEMORY);
 
 	zone_sizes_init();
 }