On Mon, 2013-08-12 at 07:37 +0800, Wanpeng Li wrote:
> On Sat, Aug 10, 2013 at 01:17:32PM -0600, Toshi Kani wrote:
> >add_memory() and remove_memory() can only handle a memory range aligned
> >with section.  There are problems when an unaligned range is added and
> >then deleted as follows:
> >
> > - add_memory() with an unaligned range succeeds, but __add_pages()
> >   called from add_memory() adds a whole section of pages even though
> >   a given memory range is less than the section size.
> > - remove_memory() to the added unaligned range hits BUG_ON() in
> >   __remove_pages().
> >
> >This patch changes add_memory() and remove_memory() to check if a given
> >memory range is aligned with section at the beginning.  As the result,
> >add_memory() fails with -EINVAL when a given range is unaligned, and
> >does not add such memory range.  This prevents remove_memory() to be
> >called with an unaligned range as well.  Note that remove_memory() has
> >to use BUG_ON() since this function cannot fail.
> >
> >Signed-off-by: Toshi Kani <toshi.k...@hp.com>
> >Acked-by: KOSAKI Motohiro <kosaki.motoh...@jp.fujitsu.com>
> >Reviewed-by: Tang Chen <tangc...@cn.fujitsu.com>
> 
> Reviewed-by: Wanpeng Li <liw...@linux.vnet.ibm.com>

Thanks Wanpeng!
-Toshi

--
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/

Reply via email to