From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933498AbcBQAXG (ORCPT ); Tue, 16 Feb 2016 19:23:06 -0500 Received: from g9t5009.houston.hp.com ([15.240.92.67]:59145 "EHLO g9t5009.houston.hp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933384AbcBQAXE (ORCPT ); Tue, 16 Feb 2016 19:23:04 -0500 Message-ID: <1455671761.2925.174.camel@hpe.com> Subject: Re: [PATCH] devm_memremap_release: fix memremap'd addr handling From: Toshi Kani To: Andrew Morton Cc: dan.j.williams@intel.com, linux-nvdimm@ml01.01.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Christoph Hellwig Date: Tue, 16 Feb 2016 18:16:01 -0700 In-Reply-To: <20160216161843.25aaac7046c7a79e1713c8a2@linux-foundation.org> References: <1455640227-21459-1-git-send-email-toshi.kani@hpe.com> <20160216161843.25aaac7046c7a79e1713c8a2@linux-foundation.org> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.18.4 (3.18.4-1.fc23) Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 2016-02-16 at 16:18 -0800, Andrew Morton wrote: > On Tue, 16 Feb 2016 09:30:27 -0700 Toshi Kani wrote: > > > The pmem driver calls devm_memremap() to map a persistent memory > > range.  When the pmem driver is unloaded, this memremap'd range > > is not released. > > > > Fix devm_memremap_release() to handle a given memremap'd address > > properly. > > > > ... > > > > --- a/kernel/memremap.c > > +++ b/kernel/memremap.c > > @@ -114,7 +114,7 @@ EXPORT_SYMBOL(memunmap); > >   > >  static void devm_memremap_release(struct device *dev, void *res) > >  { > > - memunmap(res); > > + memunmap(*(void **)res); > >  } > >   > > Huh.  So what happens?  memunmap() decides it isn't a vmalloc address > and we leak a vma? Yes, that's right. > I'll add a cc:stable to this. Agreed. Thanks! -Toshi