Re: [PATCH] binder: remove BINDER_DEBUG_ENTRY()

2018-12-03 Thread Todd Kjos
On Fri, Nov 30, 2018 at 5:26 PM Yangtao Li wrote: > > We already have the DEFINE_SHOW_ATTRIBUTE.There is no need to define > such a macro,so remove BINDER_DEBUG_ENTRY. > > Signed-off-by: Yangtao Li Acked-by: Todd Kjos > --- > drivers/

[PATCH] binder: fix kerneldoc header for struct binder_buffer

2018-12-03 Thread Todd Kjos
Fix the incomplete kerneldoc header for struct binder_buffer. Change-Id: If3ca10cf6d90f605a0c078e4cdce28f02a475877 Signed-off-by: Todd Kjos --- drivers/android/binder_alloc.h | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/android

[PATCH] binder: fix sparse warnings on locking context

2018-12-03 Thread Todd Kjos
Add __acquire()/__release() annnotations to fix warnings in sparse context checking There is one case where the warning was due to a lack of a "default:" case in a switch statement where a lock was being released in each of the cases, so the default case was added. Signed-off-by:

[PATCH] binder: filter out nodes when showing binder procs

2018-12-03 Thread Todd Kjos
When dumping out binder transactions via a debug node, the output is too verbose if a process has many nodes. Change the output for transaction dumps to only display nodes with pending async transactions. Signed-off-by: Todd Kjos --- drivers/android/binder.c | 3 +++ 1 file changed, 3

[PATCH] binder: fix use-after-free due to fdget() optimization

2018-12-03 Thread Todd Kjos
the reference count of task A's /dev/binder to 0 and frees it 11.task A continues processing of the ioctl and accesses some property of e.g. the binder_proc => KASAN-detectable UAF Fixed by using get_file() / fput() in binder_ioctl(). Suggested-by: Jann Horn Signed-off-b

Re: [PATCH] binder: fix race that allows malicious free of live buffer

2018-11-09 Thread Todd Kjos
On Fri, Nov 9, 2018 at 4:32 AM Greg KH wrote: > > On Tue, Nov 06, 2018 at 03:55:32PM -0800, Todd Kjos wrote: > > Malicious code can attempt to free buffers using the > > BC_FREE_BUFFER ioctl to binder. There are protections > > against a user freeing a buffer while

Re: [PATCH V3] binder: ipc namespace support for android binder

2018-11-09 Thread Todd Kjos
er_device_failed: > hlist_for_each_entry_safe(device, tmp, &binder_devices, hlist) { > misc_deregister(&device->miscdev); > diff --git a/include/linux/ipc_namespace.h b/include/linux/ipc_namespace.h > index 6ab8c1bada3f..d7f850a2ded8 100644 >

Re: [PATCH V3] binder: ipc namespace support for android binder

2018-11-09 Thread Todd Kjos
On Fri, Nov 9, 2018 at 10:27 AM Davidlohr Bueso wrote: > > On Thu, 08 Nov 2018, chouryzhou(??) wrote: > > >+#ifdef CONFIG_ANDROID_BINDER_IPC > >+ /* next fields are for binder */ > >+ struct mutex binder_procs_lock; > >+ struct hlist_head binder_procs; > >+ struct

Re: Re: [PATCH V3] binder: ipc namespace support for android binder(Internet mail)

2018-11-09 Thread Todd Kjos
On Fri, Nov 9, 2018 at 8:43 PM chouryzhou(周威) wrote: > > If IPC_NS is disabled, "current-nsporxy->ipc_ns" will also exists, it will > be a static > reference of "init_ipc_ns" (in ipc/msgutil.c, not defined in binder.c by me) > with > no namespace-ization. You will get the same one in all proce

Re: Re: [PATCH V3] binder: ipc namespace support for android binder

2018-11-09 Thread Todd Kjos
On Fri, Nov 9, 2018 at 7:09 PM chouryzhou(周威) wrote: > > > > > I still don't understand the dependencies on SYSVIPC or POSIX_MQUEUE. > > It seems like this mechanism would work even if both are disabled -- > > as long as IPC_NS is enabled. Seems cleaner to change init/Kconfig and > > allow IPC_NS

Re: Re: [PATCH V3] binder: ipc namespace support for android binder(Internet mail)

2018-11-09 Thread Todd Kjos
On Fri, Nov 9, 2018 at 9:43 PM chouryzhou(周威) wrote: > > > > > > > If IPC_NS is disabled, "current-nsporxy->ipc_ns" will also exists, it > > > will be a static > > > reference of "init_ipc_ns" (in ipc/msgutil.c, not defined in binder.c by > > > me) with > > > no namespace-ization. You will get

[PATCH] drivers/staging/gasket: Use refcount_read()

2018-07-06 Thread Todd Poynor
From: Todd Poynor Use the refcount_read accessor function, avoid reaching into refcount and atomic struct fields. Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_sysfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/gasket/gasket_sysfs.c b

[PATCH] of/platform: add initcall_debug logs for device creates

2018-06-18 Thread Todd Poynor
From: Todd Poynor Add initcall_debug logs for the amount of time taken by each OF platform bus device create call. For example: of platform device create /reserved-memory/ramoops@a380 took 3255 usecs initcall_debug already reports the total of all such device creates as a single

[PATCH] drivers: base: initcall_debug logs for driver probe times

2018-06-19 Thread Todd Poynor
From: Todd Poynor Add initcall_debug logs for each driver device probe call, for example: probe of a380.ramoops returned after 3007 usecs This replaces the previous code added to report times for deferred probes. It also reports OF platform bus device creates that were formerly lumped

Self-Interest

2018-06-12 Thread Benjamin Todd
-- Hello, I have a very Important Information for you, can you please contact me, I look forward for your response. Regards. Mr.Ben

Re: [PATCH v1] binder: implement binderfs

2018-12-12 Thread Todd Kjos
t; 2) > > > exit(EXIT_FAILURE); > > > > > > strncpy(device.name, argv[1], sizeof(device.name)); > > > > > > fd = open("/dev/binderfs/binder-control", O_RDONLY | O_CLOEXEC); > > > if

[PATCH] binder: fix use-after-free due to ksys_close() during fdget()

2018-12-13 Thread Todd Kjos
a ("binder: use standard functions to allocate fds") Suggested-by: Al Viro Signed-off-by: Todd Kjos --- drivers/android/binder.c | 91 +++- 1 file changed, 81 insertions(+), 10 deletions(-) diff --git a/drivers/android/binder.c b/drivers/an

Re: [PATCH] binder: fix use-after-free due to ksys_close() during fdget()

2018-12-13 Thread Todd Kjos
I need to make a change to this patch, so please ignore this version. I'll send a v2 soon. On Thu, Dec 13, 2018 at 1:04 PM Todd Kjos wrote: > > 44d8047f1d8 ("binder: use standard functions to allocate fds") > exposed a pre-existing issue in the binder driver. > >

[PATCH v2] binder: fix use-after-free due to ksys_close() during fdget()

2018-12-14 Thread Todd Kjos
a ("binder: use standard functions to allocate fds") Suggested-by: Al Viro Signed-off-by: Todd Kjos --- v2: - simplified code If possible, please add to 4.20-final drivers/android/binder.c | 60 ++-- 1 file changed, 58 insertions(+), 2 deletions(-)

[PATCH v3] binder: fix use-after-free due to ksys_close() during fdget()

2018-12-14 Thread Todd Kjos
. The fput() is deferred instead of using ksys_close(). Fixes: 44d8047f1d87a ("binder: use standard functions to allocate fds") Suggested-by: Al Viro Signed-off-by: Todd Kjos --- v2: - simplified code v3: - implemented Al Viro's suggestion to pass struct file instead of fd - added

Re: [PATCH v1] binder: implement binderfs

2018-12-10 Thread Todd Kjos
chouryzhou@, can you confirm that this implementation works for your android-in-container use-case? -Todd On Fri, Dec 7, 2018 at 3:26 PM Christian Brauner wrote: > > As discussed at Linux Plumbers Conference 2018 in Vancouver [1] this is the > implementation of binderfs. > >

Re: [PATCH] binderfs: implement sysctls

2018-12-21 Thread Todd Kjos
On Fri, Dec 21, 2018 at 8:33 AM Greg KH wrote: > > On Fri, Dec 21, 2018 at 04:59:19PM +0100, Christian Brauner wrote: > > On Fri, Dec 21, 2018 at 04:37:58PM +0100, Greg KH wrote: > > > On Fri, Dec 21, 2018 at 03:12:42PM +0100, Christian Brauner wrote: > > > > On Fri, Dec 21, 2018 at 02:55:09PM +01

Re: [PATCH v1 2/2] binderfs: reserve devices for initial mount

2019-01-03 Thread Todd Kjos
r devices are removed (on accident or on purpose) > they can always be recreated without risking that all minor numbers have > already been used up. > > Cc: Todd Kjos > Cc: Greg Kroah-Hartman > Signed-off-by: Christian Brauner > --- > v1: > - patch introduced > v0: &g

Re: [PATCH v1 2/2] binderfs: reserve devices for initial mount

2019-01-03 Thread Todd Kjos
On Thu, Jan 3, 2019 at 12:34 PM Christian Brauner wrote: > > On Thu, Jan 03, 2019 at 12:25:24PM -0800, Todd Kjos wrote: > > On Sun, Dec 23, 2018 at 6:36 AM Christian Brauner > > wrote: > > > > > > The binderfs instance in the initial ipc namespace will alw

Re: [PATCH v1 2/2] binderfs: reserve devices for initial mount

2019-01-03 Thread Todd Kjos
On Thu, Jan 3, 2019 at 2:08 PM Christian Brauner wrote: > > On Thu, Jan 03, 2019 at 01:47:13PM -0800, Todd Kjos wrote: > > On Thu, Jan 3, 2019 at 12:34 PM Christian Brauner > > wrote: > > > > > > On Thu, Jan 03, 2019 at 12:25:24PM -0800, Todd Kjos wrote: >

Re: [PATCH] MAINTAINERS: Add me to Android drivers

2018-10-09 Thread Todd Kjos
ndation.org > Signed-off-by: Joel Fernandes (Google) > --- > MAINTAINERS | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/MAINTAINERS b/MAINTAINERS > index 544cac829cf4..d639c4d04438 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -894,6 +894,7 @@ M: Gr

Re: [PATCH] binder: ipc namespace support for android binder

2018-10-29 Thread Todd Kjos
]. If this is really needed, then we should have a solution that works for devices without requiring IPC_NS or SYSVIPC. Also, we should not add binder-specific code to ipc/namespace.c or include/linux/ipc_namespace.h. -Todd [1] https://android-review.googlesource.com/c/kernel/common/+/471961 [2] http

Re: [PATCH v3] staging: gasket: Fix sparse "incorrect type in assignment" warnings.

2018-10-15 Thread Todd Poynor
virt_base; > + u8 *virt_base; > > /* Physical base address. */ > ulong phys_base; > -- > 2.9.5 Reviewed-by: Todd Poynor Thanks!

Re: [PATCH 01/11] staging: gasket: core: debug log updates

2018-10-15 Thread Todd Poynor
On Mon, Oct 15, 2018 at 12:34 AM Greg Kroah-Hartman wrote: > > On Sun, Oct 14, 2018 at 09:59:17PM -0700, Todd Poynor wrote: > > From: Todd Poynor > > > > Add debug logs for device enable/disable events, > > Why? > > What is going to need this? As one of th

[PATCH 2/3] staging: gasket: remove debug logs in page table mapping calls

2018-10-16 Thread Todd Poynor
From: Todd Poynor Remove very noisy debug logs that also contain typos and incorrect output formats. Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 24 -- 1 file changed, 24 deletions(-) diff --git a/drivers/staging/gasket/gasket_page_table.c

[PATCH 1/3] staging: gasket: remove debug logs for callback invocation

2018-10-16 Thread Todd Poynor
From: Todd Poynor Debug logs for device-specific callback invocation aren't very useful, remove. Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 7 +-- 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/drivers/staging/gasket/gasket_core.c b/dr

[PATCH 3/3] staging: gasket: page_table: add mapping flags

2018-10-16 Thread Todd Poynor
From: Nick Ewalt This allows for more precise dma_direction in the dma_map_page requests. Also leaves room for adding more flags later. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket.h| 33 drivers/staging/gasket/gasket_ioctl.c

[PATCH 0/3] staging: gasket: add DMA direction flags a.o.

2018-10-16 Thread Todd Poynor
From: Todd Poynor Add flags to page mapping ioctls that specify DMA directions other than bi-directional, avoiding unnecessary cache maintenance for read-only or write-only buffers. Remove some spammy / unhelpful / inaccurately formatted debug logs. Nick Ewalt (1): staging: gasket

Re: [PATCH v2] ANDROID: binder: Add BINDER_GET_NODE_INFO_FOR_REF ioctl.

2018-10-17 Thread Todd Kjos
On Fri, Sep 7, 2018 at 6:38 AM Martijn Coenen wrote: > > This allows the context manager to retrieve information about nodes > that it holds a reference to, such as the current number of > references to those nodes. > > Such information can for example be used to determine whether the > serviceman

[PATCH] binder: fix race that allows malicious free of live buffer

2018-11-06 Thread Todd Kjos
that when the struct buffer was recycled, allow_user_free was stale and set to 1 allowing a free to go through. Signed-off-by: Todd Kjos Acked-by: Arve Hjønnevåg --- drivers/android/binder.c | 21 - drivers/android/binder_alloc.c | 16 ++-- drivers/an

[PATCH] binder: fix sparse warnings on locking context

2018-11-06 Thread Todd Kjos
Add __acquire()/__release() annnotations to fix warnings in sparse context checking There is one case where the warning was due to a lack of a "default:" case in a switch statement where a lock was being released in each of the cases, so the default case was added. Signed-off-by:

RFC: staging: gasket: re-implement using UIO

2018-11-06 Thread Todd Poynor
use. There's a few other tidbits the driver does, including allocating coherent memory for userspace to share with the device, but that's probably enough for now. If anybody wants to squash any of the above as a non-starter for UIO or point things in a different direction, it's appreciated. Thanks, Todd

[PATCH 10/11] staging: gasket: sysfs: fix attribute release comment

2018-10-14 Thread Todd Poynor
From: Nick Ewalt Comments for gasket_sysfs_get_attr() incorrectly describe reference release procedure. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_sysfs.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging

[PATCH 01/11] staging: gasket: core: debug log updates

2018-10-14 Thread Todd Poynor
From: Todd Poynor Add debug logs for device enable/disable events, remove logs for callbacks (the called functions can generate their own logs if needed). Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 9 +++-- 1 file changed, 3 insertions(+), 6 deletions(-) diff

[PATCH 05/11] staging: gasket: page_table: rearrange gasket_page_table_entry

2018-10-14 Thread Todd Poynor
From: Nick Ewalt Rearrange gasket_page_table entry to reduce padding slop. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/staging/gasket

[PATCH 09/11] staging: gasket: apex: fix sysfs_show

2018-10-14 Thread Todd Poynor
From: Nick Ewalt sysfs_show was incorrectly extracting the sysfs_attribute_type from the gasket_sysfs_attribute. This prevented dispatch from working properly. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/apex_driver.c | 2 +- 1 file changed, 1 insertion

[PATCH 03/11] staging: gasket: page table: remove dead code in coherent mem alloc

2018-10-14 Thread Todd Poynor
From: Todd Poynor gasket_alloc_coherent_memory() has some unnecessary code related to out of memory checking that will never hit the condition checked, remove. Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 6 +- 1 file changed, 1 insertion(+), 5 deletions

[PATCH 06/11] staging: gasket: page table: fixup error path allocating coherent mem

2018-10-14 Thread Todd Poynor
From: Nick Ewalt Correctly clean up data structure state in gasket_alloc_coherent_memory error path, to ensure no double free on the stale pointer value. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 6 +- 1 file changed, 5

[PATCH 00/11] staging: gasket: fixes

2018-10-14 Thread Todd Poynor
From: Todd Poynor Various fixes for gasket/apex drivers. Nick Ewalt (8): staging: gasket: page_table: remove unnecessary PTE status set to free staging: gasket: page_table: rearrange gasket_page_table_entry staging: gasket: page table: fixup error path allocating coherent mem staging

[PATCH 04/11] staging: gasket: page_table: remove unnecessary PTE status set to free

2018-10-14 Thread Todd Poynor
From: Nick Ewalt Remove unnecessary ptes[i].status update in gasket_perform_unmapping. The vaaue will be cleared in the following memset. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 1 - 1 file changed, 1 deletion(-) diff --git a

[PATCH 11/11] staging: gasket: Update device virtual address comment

2018-10-14 Thread Todd Poynor
From: Nick Ewalt Add that number of page table entries and extended address bit offset are configurable. Update example virtual address format to be more consistent with typical usage. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 14

[PATCH 07/11] staging: gasket: page_table: fix comment in components_to_dev_address

2018-10-14 Thread Todd Poynor
From: Nick Ewalt Comments in components_to_dev_address() describing examples are inconsistent, fix these to be accurate. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git

[PATCH 02/11] staging: gasket: page table: return valid error code on map fail

2018-10-14 Thread Todd Poynor
From: Todd Poynor Return -EINVAL on mapping failures, instead of -1, which triggers a checkpatch error. Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/staging/gasket/gasket_page_table.c

[PATCH 08/11] staging: gasket: page_table: simplify gasket_components_to_dev_address

2018-10-14 Thread Todd Poynor
-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 21 ++--- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/drivers/staging/gasket/gasket_page_table.c b/drivers/staging/gasket/gasket_page_table.c index ec9359576ea7c

Re: [PATCH 00/11] staging: gasket: fixes

2018-10-15 Thread Todd Poynor
On Mon, Oct 15, 2018 at 12:33 AM Greg Kroah-Hartman wrote: > > On Sun, Oct 14, 2018 at 09:59:16PM -0700, Todd Poynor wrote: > > From: Todd Poynor > > > > Various fixes for gasket/apex drivers. > > For some reason you seem to have ignored/missed this patch: >

Re: [PATCH] binder: ipc namespace support for android binder

2018-10-26 Thread Todd Kjos
On Fri, Oct 26, 2018 at 2:20 AM chouryzhou(周威) wrote: > > Hi > We are working for running android in container, but we found that binder is > not isolated by ipc namespace. Since binder is a form of IPC and therefore > should > be tied to ipc namespace. With this patch, we can run more than one

[PATCH 09/10] staging: gasket: page_table: use total_entries for max ext lvl0 page idx

2018-09-17 Thread Todd Poynor
From: Nick Ewalt The maximum number of entries in the page table is configurable at initialization time and should be used in gasket_extended_lvl0_page_idx. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 2 +- 1 file changed, 1 insertion

[PATCH 04/10] staging: gasket: fix DMA direction for extended page tables

2018-09-17 Thread Todd Poynor
From: Nick Ewalt Extended page tables should be mapped as DMA_TO_DEVICE, not bi-directional. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/gasket

[PATCH 02/10] staging: gasket: interrupt: remove PCI-MSIX-specific status check

2018-09-17 Thread Todd Poynor
From: Todd Poynor Devices not using MSIX don't use the msix_initialized field, so don't require it to be set in the interrupt system status check. The general check for interrupts configured that follows can cover both MSIX and device-managed interrupts. Signed-off-by: Todd Poynor --

[PATCH 08/10] staging: gasket: cleanup if dma_map_page fails in gasket_perform_mapping

2018-09-17 Thread Todd Poynor
From: Nick Ewalt Previously pages would have never been unmapped in this case. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 33 +- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/drivers/staging

[PATCH 07/10] staging: gasket: fix gasket_free_coherent_memory metadata frees

2018-09-17 Thread Todd Poynor
From: Nick Ewalt Free gasket_coherent_page_entries metadata memory, update data structures accordingly. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 5 + 1 file changed, 5 insertions(+) diff --git a/drivers/staging/gasket

[PATCH 10/10] staging: gasket: page_table: handle failed dma_map_page

2018-09-17 Thread Todd Poynor
From: Nick Ewalt Handle dma_map_page failing in gasket_alloc_extended_subtable: free memory, don't add invalid page table entry. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 11 +++ 1 file changed, 11 insertions(+) diff

[PATCH 03/10] staging: gasket: page table: use GFP_KERNEL for dma_alloc_coherent

2018-09-17 Thread Todd Poynor
From: Todd Poynor Flags should be specified for dma_alloc_coherent() call. Use GFP_KERNEL, it's fine to sleep here. Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/g

[PATCH 05/10] staging: gasket: fix data page unmap DMA direction

2018-09-17 Thread Todd Poynor
From: Nick Ewalt The DMA direction supplied to dma_unmap_page should match the corresponding dma_map_page call, which is mapped bi-directional. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 2 +- 1 file changed, 1 insertion(+), 1

[PATCH 01/10] staging: gasket: Kconfig: describe Apex as an Edge TPU device

2018-09-17 Thread Todd Poynor
From: Todd Poynor Add a brief description and URL for more information on the Apex device, an Edge TPU (Tensorflow Processing Unit) machine learning accelerator. Signed-off-by: Todd Poynor --- drivers/staging/gasket/Kconfig | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff

[PATCH 06/10] staging: gasket: page_table: don't unmap coherent pages

2018-09-17 Thread Todd Poynor
From: Nick Ewalt Only call dma_unmap_page if there was an associated dma_map_page call. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/gasket

[PATCH 00/10] staging: gasket: Apex uncloaks, plus fixes

2018-09-17 Thread Todd Poynor
From: Todd Poynor Add a description of the Gasket framework device Apex (it's a Google Edge TPU machine learning accelerator soon to be released), plus a handful of fixes. Nick Ewalt (7): staging: gasket: fix DMA direction for extended page tables staging: gasket: fix data page unma

Re: [PATCH 05/18] staging: gasket: sysfs mapping creation fixups

2018-07-16 Thread Todd Poynor
On Fri, Jul 13, 2018 at 11:32 PM, Greg Kroah-Hartman wrote: > On Fri, Jul 13, 2018 at 10:58:03PM -0700, Todd Poynor wrote: >> From: Todd Poynor >> >> Return EBUSY for attempt to create a mapping already in use. > > Why? The existing code returns EINVAL which ofte

Re: [PATCH 04/18] staging: gasket: device registration error and unregister fixups

2018-07-16 Thread Todd Poynor
ock(&g_mutex); >> return ret; >> } > > regards, > dan carpenter Thanks, I'll fix up the newly-added one in a respin of this patch and fix up existing labels in a future patch. -- Todd

Re: [PATCH 06/18] staging: gasket: fix deadlock in pci driver unregister path

2018-07-16 Thread Todd Poynor
On Sat, Jul 14, 2018 at 5:57 AM, Greg Kroah-Hartman wrote: > On Sat, Jul 14, 2018 at 11:07:21AM +0300, Dmitry Torokhov wrote: >> On Sat, Jul 14, 2018 at 8:58 AM Todd Poynor wrote: >> > >> > From: Todd Poynor >> > >> > g_mutex held acro

Re: [PATCH 10/18] staging: gasket: gasket_open use container_of()

2018-07-16 Thread Todd Poynor
On Sat, Jul 14, 2018 at 1:15 AM, Dmitry Torokhov wrote: > On Sat, Jul 14, 2018 at 8:58 AM Todd Poynor wrote: >> >> From: Todd Poynor >> >> Use container_of(), drop unnecessary NULL check. >> >> Reported-by: Dmitry Torokhov >> Signed-off-

Re: [PATCH 11/18] staging: gasket: always allow root open for write

2018-07-16 Thread Todd Poynor
On Sat, Jul 14, 2018 at 1:25 AM, Dmitry Torokhov wrote: > On Sat, Jul 14, 2018 at 8:58 AM Todd Poynor wrote: >> >> From: Todd Poynor >> >> Always allow root to open device for writing. >> >> Drop special-casing of ioctl permissions for root vs. ow

Re: [PATCH 11/18] staging: gasket: always allow root open for write

2018-07-16 Thread Todd Poynor
On Sun, Jul 15, 2018 at 12:41 PM, Greg Kroah-Hartman wrote: > On Sun, Jul 15, 2018 at 11:15:26AM -0700, Todd Poynor wrote: >> On Sun, Jul 15, 2018 at 3:03 AM, Greg Kroah-Hartman >... >> My own preference is to rewrite the apex driver entirely in-kernel and >> pull in its u

Re: [PATCH 13/18] staging: gasket: gasket_enable_dev fixups

2018-07-16 Thread Todd Poynor
On Fri, Jul 13, 2018 at 11:39 PM, Greg Kroah-Hartman wrote: > On Fri, Jul 13, 2018 at 10:58:11PM -0700, Todd Poynor wrote: >> From: Todd Poynor >> >> Remove unnecessary variable. >> >> Bail out if no physical device. >> >> Signed-off-by: T

[PATCH 00/32 v2] staging: gasket: sundry fixes and fixups

2018-07-16 Thread Todd Poynor
From: Todd Poynor Various fixes mainly from the chromium review of the gasket and apex drivers. More to come. Various (32): staging: gasket: remove X86 Kconfig restriction staging: gasket: fix typo in apex_enter_reset staging: gasket: fix typo in gasket_core.h comments staging: gasket

[PATCH 12/32] staging: gasket: gasket_wait_with_reschedule return when condition hit

2018-07-16 Thread Todd Poynor
From: Todd Poynor Return right away instead of break out of while and then return. Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging

[PATCH 01/32] staging: gasket: remove X86 Kconfig restriction

2018-07-16 Thread Todd Poynor
From: Todd Poynor The gasket and apex drivers are to be used on other architectures besides X86. Signed-off-by: Todd Poynor --- drivers/staging/gasket/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/gasket/Kconfig b/drivers/staging/gasket/Kconfig

[PATCH 03/32] staging: gasket: fix typo in gasket_core.h comments

2018-07-16 Thread Todd Poynor
From: Todd Poynor Grammar fixup in gasket_core.h comments describing struct gasket_interrupt_desc. Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/gasket/gasket_core.h b/drivers/staging

[PATCH 11/32] staging: gasket: gasket_wait_with_reschedule use msleep

2018-07-16 Thread Todd Poynor
From: Todd Poynor Replace schedule_timeout() call with msleep(). Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/staging/gasket

[PATCH 18/32] staging: gasket: gasket_enable_dev remove unnecessary variable

2018-07-16 Thread Todd Poynor
From: Todd Poynor Remove unnecessary variable, pass constant param instead. Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 5 + 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/staging

[PATCH 09/32] staging: gasket: convert gasket_mmap_has_permissions to bool return

2018-07-16 Thread Todd Poynor
From: Todd Poynor gasket_mmap_has_permissions() should return a boolean value. Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/staging/gasket/gasket_core.c

[PATCH 23/32] staging: gasket: gasket_mmap return error instead of valid BAR index

2018-07-16 Thread Todd Poynor
From: Todd Poynor When offset to be mapped matches both a BAR region and a coherent mapped region return an error as intended, not the BAR index. Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion

[PATCH 30/32] staging: gasket: gasket_mmap use PAGE_MASK

2018-07-16 Thread Todd Poynor
From: Todd Poynor Instead of math on PAGE_SIZE. Reported-by: Guenter Roeck Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/gasket/gasket_core.c b/drivers/staging

[PATCH 21/32] staging: gasket: remove unnecessary code in coherent allocator

2018-07-16 Thread Todd Poynor
From: Todd Poynor Remove extraneous statement in gasket_config_coherent_allocator() Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_ioctl.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers

[PATCH 29/32] staging: gasket: remove unnecessary parens in page table code

2018-07-16 Thread Todd Poynor
From: Todd Poynor gasket_alloc_coherent_memory() extra parentheses in statement. Reported-by: Guenter Roeck Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging

[PATCH 04/32] staging: gasket: whitespace fix in gasket_page_table_init

2018-07-16 Thread Todd Poynor
From: Todd Poynor Tab replaced with space. Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/gasket/gasket_page_table.c b/drivers/staging/gasket

[PATCH 15/32] staging: gasket: drop gasket_cdev_get_info, use container_of

2018-07-16 Thread Todd Poynor
From: Todd Poynor Remove gasket_cdev_get_info(), use container_of() directly instead, drop unnecessary NULL checks. Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 26 -- 1 file changed, 4

[PATCH 17/32] staging: gasket: annotate ioctl arg with __user

2018-07-16 Thread Todd Poynor
From: Todd Poynor For sparse checking. Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/apex_driver.c | 12 ++--- drivers/staging/gasket/gasket_core.c | 6 ++- drivers/staging/gasket/gasket_core.h | 4 +- drivers/staging

[PATCH 08/32] staging: gasket: Remove stale pointers on error allocating attr array

2018-07-16 Thread Todd Poynor
From: Todd Poynor If gasket_sysfs_create_mapping() hits errors allocating the attribute array, remove stale pointers to device info from the mapping object. Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_sysfs.c | 2 ++ 1 file changed, 2 insertions

[PATCH 16/32] staging: gasket: always allow root open for write

2018-07-16 Thread Todd Poynor
From: Todd Poynor Always allow root to open device for writing. Drop special-casing of ioctl permissions for root vs. owner. Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor Reviewed-by: Dmitry Torokhov --- drivers/staging/gasket/apex_driver.c | 9

[PATCH 13/32] staging: gasket: gasket_wait_with_reschedule use 32 bits of retry count

2018-07-16 Thread Todd Poynor
From: Todd Poynor Don't need a 64-bit retry counter. Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 4 ++-- drivers/staging/gasket/gasket_core.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff

[PATCH 31/32] staging: gasket: remove extra parens in gasket_write_mappable_regions

2018-07-16 Thread Todd Poynor
From: Todd Poynor Remove unneeded parentheses around subexpressions. Reported-by: Guenter Roeck Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/gasket

[PATCH 32/32] staging: gasket: fix multi-line comment syntax in gasket_core.h

2018-07-16 Thread Todd Poynor
From: Todd Poynor Use consistent kernel-style multi-line comment syntax. Reported-by: Guenter Roeck Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/staging/gasket

[PATCH 14/32] staging: gasket: bail out of reset sequence on device callback error

2018-07-16 Thread Todd Poynor
From: Todd Poynor If device reset callback returns an error, error out at the gasket level. Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a

[PATCH 06/32] staging: gasket: hold mutex on gasket driver unregistration

2018-07-16 Thread Todd Poynor
From: Todd Poynor Take the global mutex on driver unregistration updates for proper ordering of updates and consistent access procedures. Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 4 1 file changed, 4 insertions(+) diff --git a

[PATCH 22/32] staging: gasket: don't treat no device reset callback as an error

2018-07-16 Thread Todd Poynor
From: Todd Poynor It is not an error for a device to not have a reset callback registered. Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 7 ++- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/staging/gasket

[PATCH 19/32] staging: gasket: remove code for no physical device

2018-07-16 Thread Todd Poynor
From: Todd Poynor gasket_enable_dev code for enabling a gasket device with no physical PCI device registered shouldn't be necessary. Reported-by: Greg Kroah-Hartman Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_core.c | 12 +--- 1 file changed, 1 insertion(+

[PATCH 24/32] staging: gasket: apex_clock_gating simplify logic, reduce indentation

2018-07-16 Thread Todd Poynor
From: Todd Poynor Collapse together two checks and return immediately, avoid conditional indentation for most of function code. Reported-by: Guenter Roeck Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/apex_driver.c | 44 +--- 1 file

[PATCH 27/32] staging: gasket: remove else clause after return in if clause

2018-07-16 Thread Todd Poynor
From: Todd Poynor Else after return is unnecessary and may cause static code checkers to complain. Reported-by: Guenter Roeck Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff

[PATCH 26/32] staging: gasket: gasket page table functions use bool return type

2018-07-16 Thread Todd Poynor
From: Todd Poynor Convert from int to bool return type for gasket page table functions that return values used as booleans. Reported-by: Guenter Roeck Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_page_table.c | 58 +++--- drivers

[PATCH 20/32] staging: gasket: fix class create bug handling

2018-07-16 Thread Todd Poynor
From: Todd Poynor class_create() never returns NULL, and this driver should never return PTR_ERR(NULL) anyway. Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor Reviewed-by: Dmitry Torokhov --- drivers/staging/gasket/gasket_core.c | 2 +- 1 file changed, 1

[PATCH 28/32] staging: gasket: fix comment syntax in apex.h

2018-07-16 Thread Todd Poynor
From: Todd Poynor Use kernel-style multi-line comment syntax. Reported-by: Guenter Roeck Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/apex.h | 7 --- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/staging/gasket/apex.h b/drivers

[PATCH 25/32] staging: gasket: apex_ioctl_check_permissions use bool return type

2018-07-16 Thread Todd Poynor
From: Todd Poynor Convert from int return to bool. Reported-by: Guenter Roeck Signed-off-by: Simon Que Signed-off-by: Todd Poynor --- drivers/staging/gasket/apex_driver.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/staging/gasket/apex_driver.c b

[PATCH 10/32] staging: gasket: fix gasket_wait_with_reschedule timeout return code

2018-07-16 Thread Todd Poynor
From: Todd Poynor Return -ETIMEDOUT, not -EINVAL, on timeout, including callers. Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/apex_driver.c | 8 drivers/staging/gasket/gasket_core.c | 2 +- 2 files changed, 5

[PATCH 07/32] staging: gasket: Return EBUSY on mapping create when already in use

2018-07-16 Thread Todd Poynor
From: Todd Poynor gasket_sysfs_create_mapping() return EBUSY if sysfs mapping already in use. Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor --- drivers/staging/gasket/gasket_sysfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/gasket

<    1   2   3   4   5   6   7   8   >