lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e7840af3-4d8f-5f3d-65fb-3e580ba8c7f1@redhat.com>
Date:   Tue, 30 Aug 2022 12:48:44 +0200
From:   David Hildenbrand <david@...hat.com>
To:     Kefeng Wang <wangkefeng.wang@...wei.com>,
        Oscar Salvador <osalvador@...e.de>,
        Andrew Morton <akpm@...ux-foundation.org>
Cc:     linux-mm@...ck.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] mm: kill is_memblock_offlined()

On 27.08.22 13:20, Kefeng Wang wrote:
> Directly check state of struct memory_block, no need a single function.
> 
> Signed-off-by: Kefeng Wang <wangkefeng.wang@...wei.com>
> ---
>  drivers/base/memory.c          | 6 ------
>  include/linux/memory_hotplug.h | 2 --
>  mm/memory_hotplug.c            | 3 +--
>  3 files changed, 1 insertion(+), 10 deletions(-)
> 
> diff --git a/drivers/base/memory.c b/drivers/base/memory.c
> index bc60c9cd3230..9aa0da991cfb 100644
> --- a/drivers/base/memory.c
> +++ b/drivers/base/memory.c
> @@ -869,12 +869,6 @@ void remove_memory_block_devices(unsigned long start, unsigned long size)
>  	}
>  }
>  
> -/* return true if the memory block is offlined, otherwise, return false */
> -bool is_memblock_offlined(struct memory_block *mem)
> -{
> -	return mem->state == MEM_OFFLINE;
> -}
> -
>  static struct attribute *memory_root_attrs[] = {
>  #ifdef CONFIG_ARCH_MEMORY_PROBE
>  	&dev_attr_probe.attr,
> diff --git a/include/linux/memory_hotplug.h b/include/linux/memory_hotplug.h
> index 409196ef8038..de87545eabe9 100644
> --- a/include/linux/memory_hotplug.h
> +++ b/include/linux/memory_hotplug.h
> @@ -11,7 +11,6 @@ struct page;
>  struct zone;
>  struct pglist_data;
>  struct mem_section;
> -struct memory_block;
>  struct memory_group;
>  struct resource;
>  struct vmem_altmap;
> @@ -352,7 +351,6 @@ extern void move_pfn_range_to_zone(struct zone *zone, unsigned long start_pfn,
>  extern void remove_pfn_range_from_zone(struct zone *zone,
>  				       unsigned long start_pfn,
>  				       unsigned long nr_pages);
> -extern bool is_memblock_offlined(struct memory_block *mem);
>  extern int sparse_add_section(int nid, unsigned long pfn,
>  		unsigned long nr_pages, struct vmem_altmap *altmap,
>  		struct dev_pagemap *pgmap);
> diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
> index 2fd45ccbce45..9ae1f98548b1 100644
> --- a/mm/memory_hotplug.c
> +++ b/mm/memory_hotplug.c
> @@ -1969,11 +1969,10 @@ int __ref offline_pages(unsigned long start_pfn, unsigned long nr_pages,
>  
>  static int check_memblock_offlined_cb(struct memory_block *mem, void *arg)
>  {
> -	int ret = !is_memblock_offlined(mem);
>  	int *nid = arg;
>  
>  	*nid = mem->nid;
> -	if (unlikely(ret)) {
> +	if (unlikely(mem->state != MEM_OFFLINE)) {
>  		phys_addr_t beginpa, endpa;
>  
>  		beginpa = PFN_PHYS(section_nr_to_pfn(mem->start_section_nr));

Reviewed-by: David Hildenbrand <david@...hat.com>

-- 
Thanks,

David / dhildenb

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ