Re: [PATCH v2 0/7] binder: eliminate use of vmalloc space for binder buffers
From: Todd Kjos
Date: Fri Feb 08 2019 - 11:44:35 EST
On Fri, Feb 8, 2019 at 3:26 AM Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> On Wed, Jan 30, 2019 at 02:46:48PM -0800, Todd Kjos wrote:
> > Binder buffers have always been mapped into kernel space
> > via map_kernel_range_noflush() to allow the binder driver
> > to modify the buffer before posting to userspace for
> > processing.
> > In recent Android releases, the number of long-running
> > binder processes has increased to the point that for
> > 32-bit systems, there is a risk of running out of
> > vmalloc space.
> > This patch set removes the persistent mapping of the
> > binder buffers into kernel space. Instead, the binder
> > driver creates temporary mappings with kmap() or
> > kmap_atomic() to copy to or from the buffer only when
> > necessary.
> This patch series blows up when I apply it to my char-misc-next branch:
> drivers/android/binder_alloc_selftest.c: In function âcheck_buffer_pages_allocatedâ:
> drivers/android/binder_alloc_selftest.c:108:44: error: âstruct binder_bufferâ has no member named âdataâ
> end = (void *)PAGE_ALIGN((uintptr_t)buffer->data + size);
> Did you forget to enable CONFIG_ANDROID_BINDER_IPC_SELFTEST when doing your
I did forget. Thanks for catching this. I'll repost with the fix.
> greg k-h