Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1282478

Re: [PATCH 3/3] drivers: memory: prohibit offlining of memory blocks with missing sections

From Andrew Morton <akpm@linux-foundation.org>
Newsgroups linux.kernel
Subject Re: [PATCH 3/3] drivers: memory: prohibit offlining of memory blocks with missing sections
Date 2015-12-02 23:50 +0100
Message-ID <qBonM-4Vx-7@gated-at.bofh.it> (permalink)
References <qBhcB-nj-3@gated-at.bofh.it> <qBhcB-nj-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Wed,  2 Dec 2015 09:07:01 -0600 Seth Jennings <sjennings@variantweb.net> wrote:

> bdee237c and 982792c7 introduced large block sizes for x86.
> This made it possible to have multiple sections per memory
> block where previously, there was a only every one section
> per block.
> 
> Since blocks consist of contiguous ranges of section, there
> can be holes in the blocks where sections are not present.
> If one attempts to offline such a block, a crash occurs since
> the code is not designed to deal with this.
> 
> This patch is a quick fix to gaurd against the crash by
> not allowing blocks with non-present sections to be offlined.
> 
> ...
>
> --- a/drivers/base/memory.c
> +++ b/drivers/base/memory.c
> @@ -303,6 +303,10 @@ static int memory_subsys_offline(struct device *dev)
>  	if (mem->state == MEM_OFFLINE)
>  		return 0;
>  
> +	/* Can't offline block with non-present sections */
> +	if (mem->section_count != sections_per_block)
> +		return -EINVAL;
> +
>  	return memory_block_change_state(mem, MEM_OFFLINE, MEM_ONLINE);
>  }

[3/3] fixes a kernel crash so I've tagged it for -stable and shall move
it ahead of [1/2] and [2/2], which are merely cleanups.

This assumes that [3/3] is independent of the other two patches.  I'll
eat my hat if it isn't.

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

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 3/3] drivers: memory: prohibit offlining of memory blocks with missing sections Seth Jennings <sjennings@variantweb.net> - 2015-12-02 16:10 +0100
  Re: [PATCH 3/3] drivers: memory: prohibit offlining of memory  blocks with missing sections Andrew Morton <akpm@linux-foundation.org> - 2015-12-02 23:50 +0100
    [PATCH] drivers: memory: check for missing sections when testing  zones Andrew Banman <abanman@sgi.com> - 2015-12-03 19:00 +0100
      Re: [PATCH] drivers: memory: check for missing sections when  testing zones Andrew Morton <akpm@linux-foundation.org> - 2015-12-05 01:10 +0100

csiph-web