[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAFLxGvx6B02c+HgYwJ8exVLT6owrkQL1Rq+X6VzUDKVUxE=aoQ@mail.gmail.com>
Date: Sat, 17 Sep 2016 16:41:47 +0200
From: Richard Weinberger <richard.weinberger@...il.com>
To: Sandeep Jain <Sandeep_Jain@...tor.com>
Cc: David Woodhouse <dwmw2@...radead.org>,
Brian Norris <computersforpeace@...il.com>,
"linux-mtd@...ts.infradead.org" <linux-mtd@...ts.infradead.org>,
LKML <linux-kernel@...r.kernel.org>,
Steve Longerbeam <steve_longerbeam@...tor.com>,
Jim Baxter <jim_baxter@...tor.com>
Subject: Re: [PATCH] mtd: Allocate bdi objects dynamically
On Thu, Aug 4, 2016 at 4:01 PM, Sandeep Jain <Sandeep_Jain@...tor.com> wrote:
> From: Steve Longerbeam <steve_longerbeam@...tor.com>
>
> The MTD backing dev info objects mtd_bdi was statically allocated.
> So when MTD is built as a loadable module, this object fall in the
> vmalloc address space.
>
> The problem with that, is that the BDI APIs use wake_up_bit(), which calls
> virt_to_page() to retrieve the memory zone of the page containing the
> wait_queue to wake up, and virt_to_page() is not valid for vmalloc or
> highmem addresses.
>
> Fix this by allocating the BDI objects dynamically with kmalloc. The
> objects now fall in the logical address space so that BDI APIs will
> work in all cases (mtd builtin or module).
>
> Signed-off-by: Steve Longerbeam <steve_longerbeam@...tor.com>
> Signed-off-by: Jim Baxter <jim_baxter@...tor.com>
> Signed-off-by: Sandeep Jain <Sandeep_Jain@...tor.com>
Reviewed-by: Richard Weinberger <richard@....at>
--
Thanks,
//richard
Powered by blists - more mailing lists