[GIT PULL] remove in-kernel calls to syscalls

2018-04-02 Thread Dominik Brodowski
ion (by Howard McLauchlan) -------- Dominik Brodowski (107): syscalls: define and explain goal to not call syscalls in the kernel kernel: use kernel_wait4() instead of sys_wait4() kernel: open-code sys_rt_sigpending() in sys_sigpending() kexec: call do_kexec

Re: [PATCH 000/109] remove in-kernel calls to syscalls

2018-03-29 Thread Dominik Brodowski
On Thu, Mar 29, 2018 at 02:46:44PM +, David Laight wrote: > From: Dominik Brodowski > > Sent: 29 March 2018 15:42 > > On Thu, Mar 29, 2018 at 07:20:27AM -0700, Matthew Wilcox wrote: > > > On Thu, Mar 29, 2018 at 01:22:37PM +0200, Dominik Brodowski wrote: > > >

Re: [PATCH 000/109] remove in-kernel calls to syscalls

2018-03-29 Thread Dominik Brodowski
On Thu, Mar 29, 2018 at 07:20:27AM -0700, Matthew Wilcox wrote: > On Thu, Mar 29, 2018 at 01:22:37PM +0200, Dominik Brodowski wrote: > > At least on 64-bit x86, it will likely be a hard requirement from v4.17 > > onwards to not call system call functions in the kernel: It is better

[PATCH 017/109] net: socket: add __sys_socketpair() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 2 ++ net/compat.c | 2 +- net/socket.c | 11 --- 3 files changed, 11 insertions(+), 4 deletions(-) diff

[PATCH 013/109] net: socket: add __sys_connect() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 2 ++ net/compat.c | 2 +- net/socket.c | 11 --- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a

[PATCH 000/109] remove in-kernel calls to syscalls

2018-03-29 Thread Dominik Brodowski
[ While most parts of this patch set have been sent out already at least once, I send out *all* patches to lkml once again as this whole series touches several different subsystems in sensitive areas. ] System calls are interaction points between userspace and the kernel. Therefore, system cal

[PATCH 020/109] net: socket: add __sys_getsockopt() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/socket.c | 14 ++ 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/net/socket.c b/net/socket.c index 5dd2e39a6cd4..a05289b1f863 100644

[PATCH 022/109] net: socket: move check for forbid_cmsg_compat to __sys_...msg()

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 13 + net/compat.c | 8 +--- net/socket.c | 38 +++--- 3 files

[PATCH 008/109] net: socket: add __sys_recvfrom() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 6 ++ net/compat.c | 3 ++- net/socket.c | 21 + 3 files changed, 21 insertions(+), 9 deletions

[PATCH 019/109] net: socket: add __sys_setsockopt() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 1 + net/socket.c | 13 ++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/include/linux/socket.h b

[PATCH 015/109] net: socket: add __sys_getsockname() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 2 ++ net/compat.c | 2 +- net/socket.c | 14 ++ 3 files changed, 13 insertions(+), 5 deletions(-) diff

[PATCH 021/109] net: socket: add do_sys_recvmmsg() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/socket.c | 17 - 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/net/socket.c b/net/socket.c index a05289b1f863..54d19b0edab1

[PATCH 010/109] net: socket: add __sys_accept4() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 2 ++ net/compat.c | 4 ++-- net/socket.c | 20 +--- 3 files changed, 17 insertions(+), 9 deletions(-) diff

[PATCH 027/109] net: socket: add __compat_sys_getsockopt() helper; remove in-kernel call to compat syscall

2018-03-29 Thread Dominik Brodowski
://lkml.kernel.org/r/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 16 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/net/compat.c b/net/compat.c index 75bfcbbb2e3e

[PATCH 025/109] net: socket: add __compat_sys_recvfrom() helper; remove in-kernel call to compat syscall

2018-03-29 Thread Dominik Brodowski
://lkml.kernel.org/r/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 23 --- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/net/compat.c b/net/compat.c index 9e0d030063ad

[PATCH 012/109] net: socket: add __sys_bind() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 1 + net/compat.c | 2 +- net/socket.c | 9 +++-- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/include/linux

[PATCH 104/109] net: remove compat_sys_*() prototypes from net/compat.h

2018-03-29 Thread Dominik Brodowski
As the syscall functions should only be called from the system call table but not from elsewhere in the kernel, it is sufficient that they are defined in linux/compat.h. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/net/compat.h | 11 --- 1

[PATCH 029/109] net: socket: add __compat_sys_...msg() helpers; remove in-kernel calls to compat syscalls

2018-03-29 Thread Dominik Brodowski
can be streamlined. For details, see http://lkml.kernel.org/r/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 37 ++--- 1 file changed, 30 insertions(+), 7 deletions

[PATCH 023/109] net: socket: replace calls to sys_send() with __sys_sendto()

2018-03-29 Thread Dominik Brodowski
details, see http://lkml.kernel.org/r/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 2 +- net/socket.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/net/compat.c b/net

[PATCH 011/109] net: socket: add __sys_socket() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 1 + net/compat.c | 2 +- net/socket.c | 9 +++-- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/include

[PATCH 018/109] net: socket: add __sys_shutdown() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 1 + net/compat.c | 2 +- net/socket.c | 9 +++-- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/include

[PATCH 014/109] net: socket: add __sys_listen() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 1 + net/compat.c | 2 +- net/socket.c | 9 +++-- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/include

[PATCH 009/109] net: socket: add __sys_sendto() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 3 +++ net/compat.c | 3 ++- net/socket.c | 19 --- 3 files changed, 17 insertions(+), 8 deletions(-) diff

[PATCH 016/109] net: socket: add __sys_getpeername() helper; remove in-kernel call to syscall

2018-03-29 Thread Dominik Brodowski
/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 2 ++ net/compat.c | 2 +- net/socket.c | 14 ++ 3 files changed, 13 insertions(+), 5 deletions(-) diff

[PATCH 026/109] net: socket: add __compat_sys_setsockopt() helper; remove in-kernel call to compat syscall

2018-03-29 Thread Dominik Brodowski
://lkml.kernel.org/r/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 14 ++ 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/net/compat.c b/net/compat.c index 513adc8d0e0f

[PATCH 024/109] net: socket: replace call to sys_recv() with __sys_recvfrom()

2018-03-29 Thread Dominik Brodowski
streamlined. For details, see http://lkml.kernel.org/r/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 3 ++- net/socket.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/net

[PATCH 028/109] net: socket: add __compat_sys_recvmmsg() helper; remove in-kernel call to compat syscall

2018-03-29 Thread Dominik Brodowski
://lkml.kernel.org/r/20180325162527.ga17...@light.dominikbrodowski.net Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 17 - 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/net/compat.c b/net/compat.c index cdf5b0c1b962

[PATCH 106/109] syscalls/x86: auto-create compat_sys_*() prototypes

2018-03-29 Thread Dominik Brodowski
() macro, and remove x86-specific prototypes from various header files. Suggested-by: Andy Lutomirski Cc: Arnd Bergmann Cc: David S. Miller Cc: netdev@vger.kernel.org Cc: Thomas Gleixner Cc: Andi Kleen Cc: Ingo Molnar Cc: Andrew Morton Cc: Al Viro Cc: x...@kernel.org Signed-off-by: Dominik

Re: [PATCH -next 00/22] remove in-kernel syscall invocations (part 2 == netdev)

2018-03-16 Thread Dominik Brodowski
On Fri, Mar 16, 2018 at 02:30:21PM -0400, David Miller wrote: > From: Dominik Brodowski > Date: Fri, 16 Mar 2018 18:05:52 +0100 > > > The rationale of this change is described in patch 1 of part 1[*] as > > follows: > > > > The syscall entry points to the

[PATCH -next 21/22] net: socket: add __compat_sys_recvmmsg() helper; remove in-kernel call to compat syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __compat_sys_recvmmsg() allows us to avoid the internal calls to the compat_sys_recvmmsg() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 17 - 1 file changed, 12 insertions(+), 5

[PATCH -next 08/22] net: socket: add __sys_getsockname() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_getsockname() allows us to avoid the internal calls to the sys_getsockname() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 2 ++ net/compat.c | 2 +- net/socket.c

[PATCH -next 03/22] net: socket: add __sys_accept4() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_accept4() allows us to avoid the internal calls to the sys_accept4() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 2 ++ net/compat.c | 4 ++-- net/socket.c | 20

[PATCH -next 15/22] net: socket: move check for forbid_cmsg_compat to __sys_...msg()

2018-03-16 Thread Dominik Brodowski
. __sys_recvmmsg() does not need this trickery, as the check is handled within the do_sys_recvmmsg() function internal to net/socket.c. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 13 + net/compat.c | 8 +--- net

[PATCH -next 17/22] net: socket: replace call to sys_recv() with __sys_recvfrom()

2018-03-16 Thread Dominik Brodowski
sys_recv() merely expands the parameters to __sys_recvfrom() by NULL and NULL. Open-code this in the two places which used sys_recv() as a wrapper to __sys_recvfrom(). Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 3 ++- net/socket.c | 3

[PATCH -next 02/22] net: socket: add __sys_sendto() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_sendto() allows us to avoid the internal calls to the sys_sendto() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 3 +++ net/compat.c | 3 ++- net/socket.c | 19

[PATCH -next 10/22] net: socket: add __sys_socketpair() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_socketpair() allows us to avoid the internal calls to the sys_socketpair() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 2 ++ net/compat.c | 2 +- net/socket.c

[PATCH -next 13/22] net: socket: add __sys_getsockopt() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_getsockopt() allows us to avoid the internal calls to the sys_getsockopt() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/socket.c | 14 ++ 1 file changed, 10 insertions(+), 4 deletions(-) diff

[PATCH -next 01/22] net: socket: add __sys_recvfrom() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_recvfrom() allows us to avoid the internal calls to the sys_recvfrom() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 6 ++ net/compat.c | 3 ++- net/socket.c

[PATCH -next 18/22] net: socket: add __compat_sys_recvfrom() helper; remove in-kernel call to compat syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __compat_sys_recvfrom() allows us to avoid the internal calls to the compat_sys_recvfrom() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 23 --- 1 file changed, 16 insertions(+), 7

[PATCH -next 14/22] net: socket: add do_sys_recvmmsg() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper do_sys_recvmmsg() allows us to avoid the internal calls to the sys_getsockopt() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/socket.c | 17 - 1 file changed, 12 insertions(+), 5 deletions(-) diff

[PATCH -next 05/22] net: socket: add __sys_bind() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_bind() allows us to avoid the internal calls to the sys_bind() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 1 + net/compat.c | 2 +- net/socket.c | 9 +++-- 3

[PATCH -next 12/22] net: socket: add __sys_setsockopt() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_setsockopt() allows us to avoid the internal calls to the sys_setsockopt() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 1 + net/socket.c | 13 ++--- 2 files changed

[PATCH -next 04/22] net: socket: add __sys_socket() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_socket() allows us to avoid the internal calls to the sys_socket() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 1 + net/compat.c | 2 +- net/socket.c | 9

[PATCH -next 07/22] net: socket: add __sys_listen() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_listen() allows us to avoid the internal calls to the sys_listen() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 1 + net/compat.c | 2 +- net/socket.c | 9

[PATCH -next 06/22] net: socket: add __sys_connect() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_connect() allows us to avoid the internal calls to the sys_connect() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 2 ++ net/compat.c | 2 +- net/socket.c | 11

[PATCH -next 11/22] net: socket: add __sys_shutdown() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_shutdown() allows us to avoid the internal calls to the sys_shutdown() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 1 + net/compat.c | 2 +- net/socket.c | 9

[PATCH -next 16/22] net: socket: replace calls to sys_send() with __sys_sendto()

2018-03-16 Thread Dominik Brodowski
sys_send() merely expands the parameters to __sys_sendto() by NULL and 0. Open-code this in the two places which used sys_send() as a wrapper to __sys_sendto(). Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 2 +- net/socket.c | 3 ++- 2

[PATCH -next 22/22] net: socket: add __compat_sys_...msg() helpers; remove in-kernel calls to compat syscalls

2018-03-16 Thread Dominik Brodowski
Using the net-internal helpers __compat_sys_...msg() allows us to avoid the internal calls to the compat_sys_...msg() syscalls. compat_sys_recvmmsg() is handled in a different patch. Signed-off-by: Dominik Brodowski --- net/compat.c | 37 ++--- 1 file changed, 30

[PATCH -next 19/22] net: socket: add __compat_sys_setsockopt() helper; remove in-kernel call to compat syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __compat_sys_setsockopt() allows us to avoid the internal calls to the compat_sys_setsockopt() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 14 ++ 1 file changed, 10 insertions(+), 4

[PATCH -next 00/22] remove in-kernel syscall invocations (part 2 == netdev)

2018-03-16 Thread Dominik Brodowski
-next Dominik Brodowski (22): net: socket: add __sys_recvfrom() helper; remove in-kernel call to syscall net: socket: add __sys_sendto() helper; remove in-kernel call to syscall net: socket: add __sys_accept4() helper; remove in-kernel call to syscall net: socket: add

[PATCH -next 09/22] net: socket: add __sys_getpeername() helper; remove in-kernel call to syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __sys_getpeername() allows us to avoid the internal calls to the sys_getpeername() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- include/linux/socket.h | 2 ++ net/compat.c | 2 +- net/socket.c

[PATCH -next 20/22] net: socket: add __compat_sys_getsockopt() helper; remove in-kernel call to compat syscall

2018-03-16 Thread Dominik Brodowski
Using the net-internal helper __compat_sys_getsockopt() allows us to avoid the internal calls to the compat_sys_getsockopt() syscall. Cc: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski --- net/compat.c | 16 1 file changed, 12 insertions(+), 4

[PATCH v3] nl80211: take RCU read lock when calling ieee80211_bss_get_ie()

2018-01-14 Thread Dominik Brodowski
As ieee80211_bss_get_ie() derefences an RCU to return ssid_ie, both the call to this function and any operation on this variable need protection by the RCU read lock. Fixes: 44905265bc15 ("nl80211: don't expose wdev->ssid for most interfaces") Signed-off-by: Dominik Brodowski

[PATCH v2] nl80211: take RCU read lock when calling ieee80211_bss_get_ie()

2018-01-14 Thread Dominik Brodowski
As ieee80211_bss_get_ie() derefences an RCU, it needs to be called with rcu_read_lock held. Fixes: 44905265bc15 ("nl80211: don't expose wdev->ssid for most interfaces") Signed-off-by: Dominik Brodowski --- > This uses the ssid_ie, so that doesn't really seem righ

[PATCH] nl80211: take RCU read lock when calling ieee80211_bss_get_ie()

2018-01-14 Thread Dominik Brodowski
As ieee80211_bss_get_ie() derefences an RCU, it needs to be called with rcu_read_lock held. Fixes: 44905265bc15 ("nl80211: don't expose wdev->ssid for most interfaces") Signed-off-by: Dominik Brodowski --- This patch fixes the regression I reported in the last couple of weeks

v4.15-rc7 regression/warning: suspicious RCU usage in net/wireless/util.c:778

2018-01-08 Thread Dominik Brodowski
On Sat, Dec 30, 2017 at 02:11:33PM +0100, Dominik Brodowski wrote: > On Fri, Dec 22, 2017 at 08:20:12AM +0100, Dominik Brodowski wrote: > > Dear all, > > > > once the (wifi) link becomes ready, the following warning is emitted on > > mainline (v4.15-rc4-202-ge

v4.15-rc5 warning: suspicious RCU usage in net/wireless/util.c:778

2017-12-30 Thread Dominik Brodowski
On Fri, Dec 22, 2017 at 08:20:12AM +0100, Dominik Brodowski wrote: > Dear all, > > once the (wifi) link becomes ready, the following warning is emitted on > mainline (v4.15-rc4-202-gead68f216110) on my notebook: ... and it is still present as of v4.15-rc5-149-g5aa90a845892 > [

suspicious RCU usage in net/wireless/util.c:778

2017-12-21 Thread Dominik Brodowski
Dear all, once the (wifi) link becomes ready, the following warning is emitted on mainline (v4.15-rc4-202-gead68f216110) on my notebook: [ 22.770422] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 22.772364] = [ 22.772369] WARNING: suspicious RCU usa

[PATCH 3/9] pcmcia: remove manf_id and card_id indirection

2006-12-05 Thread Dominik Brodowski
From: Dominik Brodowski <[EMAIL PROTECTED]> Date: Wed, 25 Oct 2006 21:28:53 -0400 Subject: [PATCH] pcmcia: remove manf_id and card_id indirection As we read out the manufactor and card_id from the PCMCIA device in the PCMCIA core, and device drivers can access those reliably in

[PATCH 4/9] pcmcia: remove prod_id indirection

2006-12-05 Thread Dominik Brodowski
From: Dominik Brodowski <[EMAIL PROTECTED]> Date: Sun, 4 Jun 2006 18:06:13 +0200 Subject: [PATCH] pcmcia: remove prod_id indirection As we read out the product information strings (VERS_1) from the PCMCIA device in the PCMCIA core, and device drivers can access those reliably in

[PATCH 5/9] pcmcia: conf.ConfigBase and conf.Present consolidation

2006-12-05 Thread Dominik Brodowski
From: Dominik Brodowski <[EMAIL PROTECTED]> Date: Wed, 25 Oct 2006 21:49:27 -0400 Subject: [PATCH] pcmcia: conf.ConfigBase and conf.Present consolidation struct pcmcia_device *p_dev->conf.ConfigBase and .Present are set in almost all PCMICA driver right at the beginning, using the same

[RFC PATCH 0/11] pcmcia: bugfixes for 2.6.19-rc3

2006-10-25 Thread Dominik Brodowski
CONFIG_PM=n slim: drivers/pcmcia/* i82092: wire up errors from pci_register_driver() Amol Lad (1): ioremap balanced with iounmap for drivers/pcmcia David Brownell (1): pcmcia: at91_cf update Dominik Brodowski (2): pcmcia: add more IDs to hostap_cs.c PCMCIA: f

[RFC PATCH 2/11] pcmcia: add more IDs to hostap_cs.c

2006-10-25 Thread Dominik Brodowski
From: Dominik Brodowski <[EMAIL PROTECTED]> Date: Sun, 2 Jul 2006 21:21:51 +0200 Subject: [PATCH] pcmcia: add more IDs to hostap_cs.c As a replacement for the broad manufactor/card ID match we commented out because of conflicts with pcnet_cs, add two product ID matches. Signed-off-by: D

Re: [PATCH 9/15] pcmcia: hostap_cs.c - 0xc00f, 0x0000 conflicts with pcnet_cs

2006-07-03 Thread Dominik Brodowski
Hi Pavel, On Fri, Jun 30, 2006 at 05:18:43PM -0400, Pavel Roskin wrote: > On Fri, 2006-06-30 at 21:59 +0200, Dominik Brodowski wrote: > > - PCMCIA_DEVICE_MANF_CARD(0xc00f, 0x), > > +/* PCMCIA_DEVICE_MANF_CARD(0xc00f, 0x),conflict with pcnet_cs */ > > That&

[PATCH 14/15] com20020_cs: more device support

2006-06-30 Thread Dominik Brodowski
; Signed-off-by: Dominik Brodowski <[EMAIL PROTECTED]> --- drivers/net/pcmcia/com20020_cs.c |5 - 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/drivers/net/pcmcia/com20020_cs.c b/drivers/net/pcmcia/com20020_cs.c index 441de82..48434d7 100644 --- a/drivers/net/pcmcia/c

[PATCH 9/15] pcmcia: hostap_cs.c - 0xc00f,0x0000 conflicts with pcnet_cs

2006-06-30 Thread Dominik Brodowski
From: Komuro <[EMAIL PROTECTED]> Date: Mon, 17 Apr 2006 21:41:21 +0900 Subject: [PATCH] pcmcia: hostap_cs.c - 0xc00f,0x conflicts with pcnet_cs Comment out the ID 0xc00f,0x in hostap_cs.c, as it conflicts with the pcnet_cs driver. Signed-off-by: [EMAIL PROTECTED] Signed-off-by: D

[RFC PATCH 1/8] pcmcia: add new ID to pcnet_cs

2006-04-18 Thread Dominik Brodowski
Please review these patches which I inted to push upstream for 2.6.17 soon. Thanks, Dominik Subject: [PATCH] pcmcia: add new ID to pcnet_cs This adds a new ID to pcnet_cs, as noted by Kuro Moji. Signed-off-by: Dominik Brodowski <[EMAIL PROTECTED]> --- drivers/net/pcmcia/pcne

[PATCH 29/33] pcmcia: convert DEV_OK to pcmcia_dev_present

2006-03-31 Thread Dominik Brodowski
Instead of the DEV_OK macro, drivers should use pcmcia_dev_present(). Signed-off-by: Dominik Brodowski <[EMAIL PROTECTED]> --- drivers/char/pcmcia/cm4000_cs.c |4 ++-- drivers/char/pcmcia/cm4040_cs.c |2 +- drivers/net/pcmcia/3c574_cs.c |4 ++-- d

[PATCH 21/33] pcmcia: remove unneeded Vcc pseudo setting

2006-03-31 Thread Dominik Brodowski
As we do not allow setting Vcc in the pcmcia core, and Vpp1 and Vpp2 can only be set to the same value, a lot of code can be streamlined. Signed-off-by: Dominik Brodowski <[EMAIL PROTECTED]> --- drivers/bluetooth/bluecard_cs.c |4 drivers/bluetooth/bt3c_cs.c

[PATCH 20/33] pcmcia: remove export of pcmcia_release_configuration

2006-03-31 Thread Dominik Brodowski
Handle the _modifying_ operation sm91c92_cs requires in pcmcia_modify_configuration, so that the only remaining users of pcmcia_release_configuration() are within the pcmcia core module. Signed-off-by: Dominik Brodowski <[EMAIL PROTECTED]> --- drivers/mtd/maps/pcmciamtd.c

[PATCH 27/33] pcmcia: remove unused p_dev->state flags

2006-03-31 Thread Dominik Brodowski
Remove the unused DEV_RELEASE_PENDING flag, and move the DEV_SUSPEND flag into the p_dev structure, and make use of it at the core level. Signed-off-by: Dominik Brodowski <[EMAIL PROTECTED]> --- drivers/net/wireless/atmel_cs.c |2 +- drivers/net/wireless/ray_cs.c |2 +- d

[PATCH 18/33] pcmcia: convert remaining users of pcmcia_release_io and _irq

2006-03-31 Thread Dominik Brodowski
Convert the remaining drivers which use pcmcia_release_io or pcmcia_release_irq, and remove the EXPORT of these symbols. Signed-off-by: Dominik Brodowski <[EMAIL PROTECTED]> --- Documentation/pcmcia/driver-changes.txt |4 ++-- drivers/isdn/hardware/avm/avm_cs.c

[PATCH 17/33] pcmcia: add pcmcia_disable_device

2006-03-31 Thread Dominik Brodowski
pcmcia_disable_device(struct pcmcia_device *p_dev) performs the necessary cleanups upon device or driver removal: it calls the appropriate pcmcia_release_* functions, and can replace (most) of the current drivers' _release() functions. Signed-off-by: Dominik Brodowski <[EMAIL P

[PATCH 19/33] pcmcia: default suspend and resume handling

2006-03-31 Thread Dominik Brodowski
In all but one case, the suspend and resume functions of PCMCIA drivers contain mostly of calls to pcmcia_release_configuration() and pcmcia_request_configuration(). Therefore, move this code out of the drivers and into the core. Signed-off-by: Dominik Brodowski <[EMAIL PROTECTED]> --- d

Re: State of the Union: Wireless

2006-01-06 Thread Dominik Brodowski
On Fri, Jan 06, 2006 at 12:31:24PM +0100, Johannes Berg wrote: > On Fri, 2006-01-06 at 12:00 +0100, Michael Buesch wrote: > > > * "master" interface as real device node > > * Virtual interfaces (net_devices) > > I didn't want to spam the netdev wiki with this (yet) so I collected > some more stru