Commit graph

1,058,063 commits

Author SHA1 Message Date
Qing Wang
db5b6a46f4 net: bpf: Switch over to memdup_user()
This patch fixes the following Coccinelle warning:

net/bpf/test_run.c:361:8-15: WARNING opportunity for memdup_user
net/bpf/test_run.c:1055:8-15: WARNING opportunity for memdup_user

Use memdup_user rather than duplicating its implementation
This is a little bit restricted to reduce false positives

Signed-off-by: Qing Wang <wangqing@vivo.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: John Fastabend <john.fastabend@gmail.com>
Link: https://lore.kernel.org/bpf/1634556651-38702-1-git-send-email-wangqing@vivo.com
2021-10-20 18:43:15 -07:00
Brendan Jackman
7960d02ddd selftests/bpf: Some more atomic tests
Some new verifier tests that hit some important gaps in the parameter
space for atomic ops.

There are already exhaustive tests for the JIT part in
lib/test_bpf.c, but these exercise the verifier too.

Signed-off-by: Brendan Jackman <jackmanb@google.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20211015093318.1273686-1-jackmanb@google.com
2021-10-20 18:09:08 -07:00
Ian Kent
25f54d08f1 autofs: fix wait name hash calculation in autofs_wait()
There's a mistake in commit 2be7828c9f ("get rid of autofs_getpath()")
that affects kernels from v5.13.0, basically missed because of me not
fully testing the change for Al.

The problem is that the hash calculation for the wait name qstr hasn't
been updated to account for the change to use dentry_path_raw(). This
prevents the correct matching an existing wait resulting in multiple
notifications being sent to the daemon for the same mount which must
not occur.

The problem wasn't discovered earlier because it only occurs when
multiple processes trigger a request for the same mount concurrently
so it only shows up in more aggressive testing.

Fixes: 2be7828c9f ("get rid of autofs_getpath()")
Cc: stable@vger.kernel.org
Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2021-10-20 21:09:02 -04:00
Len Baker
50740d5de6 dmaengine: pxa_dma: Prefer struct_size over open coded arithmetic
As noted in the "Deprecated Interfaces, Language Features, Attributes,
and Conventions" documentation [1], size calculations (especially
multiplication) should not be performed in memory allocator (or similar)
function arguments due to the risk of them overflowing. This could lead
to values wrapping around and a smaller allocation being made than the
caller was expecting. Using those allocations could lead to linear
overflows of heap memory and other misbehaviors.

So, use the struct_size() helper to do the arithmetic instead of the
argument "size + count * size" in the kzalloc() function.

[1] https://www.kernel.org/doc/html/latest/process/deprecated.html#open-coded-arithmetic-in-allocator-arguments

Signed-off-by: Len Baker <len.baker@gmx.com>
Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
2021-10-20 18:35:22 -05:00
Len Baker
5dfbbb668a KVM: PPC: Replace zero-length array with flexible array member
There is a regular need in the kernel to provide a way to declare having
a dynamically sized set of trailing elements in a structure. Kernel code
should always use "flexible array members" [1] for these cases. The
older style of one-element or zero-length arrays should no longer be
used[2].

Also, make use of the struct_size() helper in kzalloc().

[1] https://en.wikipedia.org/wiki/Flexible_array_member
[2] https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays

Signed-off-by: Len Baker <len.baker@gmx.com>
Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
2021-10-20 18:30:42 -05:00
Len Baker
6446c4fb12 aio: Prefer struct_size over open coded arithmetic
As noted in the "Deprecated Interfaces, Language Features, Attributes,
and Conventions" documentation [1], size calculations (especially
multiplication) should not be performed in memory allocator (or similar)
function arguments due to the risk of them overflowing. This could lead
to values wrapping around and a smaller allocation being made than the
caller was expecting. Using those allocations could lead to linear
overflows of heap memory and other misbehaviors.

So, use the struct_size() helper to do the arithmetic instead of the
argument "size + size * count" in the kzalloc() function.

[1] https://www.kernel.org/doc/html/latest/process/deprecated.html#open-coded-arithmetic-in-allocator-arguments

Signed-off-by: Len Baker <len.baker@gmx.com>
Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
2021-10-20 18:24:31 -05:00
Len Baker
98b160c828 writeback: prefer struct_size over open coded arithmetic
As noted in the "Deprecated Interfaces, Language Features, Attributes,
and Conventions" documentation [1], size calculations (especially
multiplication) should not be performed in memory allocator (or similar)
function arguments due to the risk of them overflowing. This could lead
to values wrapping around and a smaller allocation being made than the
caller was expecting. Using those allocations could lead to linear
overflows of heap memory and other misbehaviors.

In this case these are not actually dynamic sizes: all the operands
involved in the calculation are constant values. However it is better to
refactor them anyway, just to keep the open-coded math idiom out of
code.

So, use the struct_size() helper to do the arithmetic instead of the
argument "size + count * size" in the kzalloc() functions.

This code was detected with the help of Coccinelle and audited and fixed
manually.

[1] https://www.kernel.org/doc/html/latest/process/deprecated.html#open-coded-arithmetic-in-allocator-arguments

Signed-off-by: Len Baker <len.baker@gmx.com>
Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
2021-10-20 18:20:28 -05:00
Gustavo A. R. Silva
c2e4e3b756 xfs: Use kvcalloc() instead of kvzalloc()
Use 2-factor argument multiplication form kvcalloc() instead of
kvzalloc().

Link: https://github.com/KSPP/linux/issues/162
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
2021-10-20 18:14:12 -05:00
Caleb Connolly
89139102d3 arm64: dts: qcom: sdm845-oneplus: enable second wifi channel
Like the c630, the OnePlus 6 is also capable of using both antenna
channels for 2.4 and 5ghz wifi, however unlike the c630 only the first
channel is used for bluetooth.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20211020163557.291803-1-caleb@connolly.tech
2021-10-20 18:00:05 -05:00
Kiran Patil
9fea749856 ice: Add tc-flower filter support for channel
Add support to add/delete channel specific filter using tc-flower.
For now, only supported action is "skip_sw hw_tc <tc_num>"

Filter criteria is specific to channel and it can be
combination of L3, L3+L4, L2+L4.

Example:
MATCH criteria       Action
---------------------------
src and/or dest IPv4[6]/mask -> Forward to "hw_tc <tc_num>"
dest IPv4[6]/mask + dest L4 port -> Forward to "hw_tc <tc_num>"
dest MAC + dest L4 port -> Forward to "hw_tc <tc_num>"
src IPv4[6]/mask + src L4 port -> Forward to "hw_tc <tc_num>"
src MAC + src L4 port -> Forward to "hw_tc <tc_num>"

Adding tc-flower filter for channel using "hw_tc"
-------------------------------------------------
tc qdisc add dev <ethX> clsact

Above two steps are only needed the first time when adding
tc-flower filter.

tc filter add dev <ethX> protocol ip ingress prio 1 flower \
     dst_ip 192.168.0.1/32 ip_proto tcp dst_port 5001 \
     skip_sw hw_tc 1

tc filter show dev <ethX> ingress
filter protocol ip pref 1 flower chain 0
filter protocol ip pref 1 flower chain 0 handle 0x1 hw_tc 1
  eth_type ipv4
  ip_proto tcp
  dst_ip 192.168.0.1
  dst_port 5001
  skip_sw
  in_hw in_hw_count 1

Delete specific filter:
-------------------------
tc filter del  dev <ethx> ingress pref 1 handle 0x1 flower

Delete All filters:
------------------
tc filter del dev <ethX> ingress

Co-developed-by: Amritha Nambiar <amritha.nambiar@intel.com>
Signed-off-by: Amritha Nambiar <amritha.nambiar@intel.com>
Signed-off-by: Kiran Patil <kiran.patil@intel.com>
Signed-off-by: Sudheer Mogilappagari <sudheer.mogilappagari@intel.com>
Tested-by: Bharathi Sreenivas <bharathi.sreenivas@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2021-10-20 15:58:11 -07:00
Kiran Patil
fbc7b27af0 ice: enable ndo_setup_tc support for mqprio_qdisc
Add support in driver for TC_QDISC_SETUP_MQPRIO. This support
enables instantiation of channels in HW using existing MQPRIO
infrastructure which is extended to be offloadable. This
provides a mechanism to configure dedicated set of queues for
each TC.

Configuring channels using "tc mqprio":
--------------------------------------
tc qdisc add dev <ethX> root mqprio num_tc 3 map 0 1 2 \
	queues 4@0 4@4 4@8  hw 1 mode channel

Above command configures 3 TCs having 4 queues each. "hw 1 mode channel"
implies offload of channel configuration to HW. When driver processes
configuration received via "ndo_setup_tc: QDISC_SETUP_MQPRIO", each
TC maps to HW VSI with specified queues.

User can optionally specify bandwidth min and max rate limit per TC
(see example below). If shaper params like min and/or max bandwidth
rate limit are specified, driver configures VSI specific rate limiter
in HW.

Configuring channels and bandwidth shaper parameters using "tc mqprio":
----------------------------------------------------------------
tc qdisc add dev <ethX> root mqprio \
	num_tc 4 map 0 1 2 3 queues 4@0 4@4 4@8 4@12 hw 1 mode channel \
	shaper bw_rlimit min_rate 1Gbit 2Gbit 3Gbit 4Gbit \
	max_rate 4Gbit 5Gbit 6Gbit 7Gbit

Command to view configured TCs:
-----------------------------
tc qdisc show dev <ethX>

Deleting TCs:
------------
tc qdisc del dev <ethX> root mqprio

Signed-off-by: Kiran Patil <kiran.patil@intel.com>
Signed-off-by: Amritha Nambiar <amritha.nambiar@intel.com>
Signed-off-by: Sudheer Mogilappagari <sudheer.mogilappagari@intel.com>
Tested-by: Bharathi Sreenivas <bharathi.sreenivas@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2021-10-20 15:58:11 -07:00
Kiran Patil
0754d65bd4 ice: Add infrastructure for mqprio support via ndo_setup_tc
Add infrastructure required for "ndo_setup_tc:qdisc_mqprio".
ice_vsi_setup is modified to configure traffic classes based
on mqprio data received from the stack. This includes low-level
functions to configure min, max rate-limit parameters in hardware
for traffic classes. Each traffic class gets mapped to a hardware
channel (VSI) which can be individually configured with different
bandwidth parameters.

Co-developed-by: Tarun Singh <tarun.k.singh@intel.com>
Signed-off-by: Tarun Singh <tarun.k.singh@intel.com>
Signed-off-by: Kiran Patil <kiran.patil@intel.com>
Signed-off-by: Amritha Nambiar <amritha.nambiar@intel.com>
Signed-off-by: Sudheer Mogilappagari <sudheer.mogilappagari@intel.com>
Tested-by: Bharathi Sreenivas <bharathi.sreenivas@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2021-10-20 15:57:54 -07:00
wangyugui
911a81c9c7 RDMA/core: Use kvzalloc when allocating the struct ib_port
The 'struct attribute' flex array contains some struct lock_class_key's
which become big when lockdep is turned on. Big enough that some drivers
will not load when CONFIG_PROVE_LOCKING=y because they cannot allocate
enough memory:

 WARNING: CPU: 36 PID: 8 at mm/page_alloc.c:5350 __alloc_pages+0x27e/0x3e0
  Call Trace:
   kmalloc_order+0x2a/0xb0
   kmalloc_order_trace+0x19/0xf0
   __kmalloc+0x231/0x270
   ib_setup_port_attrs+0xd8/0x870 [ib_core]
   ib_register_device+0x419/0x4e0 [ib_core]
   bnxt_re_task+0x208/0x2d0 [bnxt_re]

Link: https://lore.kernel.org/r/20211019002656.17745-1-wangyugui@e16-tech.com
Signed-off-by: wangyugui <wangyugui@e16-tech.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
2021-10-20 19:56:42 -03:00
Zhu Yanjun
dede33da0d RDMA/irdma: Make irdma_uk_cq_init() return a void
The function irdma_uk_cq_init always returns 0, so make it void and delete
all the return value checks.

Link: https://lore.kernel.org/r/20211019153717.3836-1-yanjun.zhu@linux.dev
Signed-off-by: Zhu Yanjun <yanjun.zhu@linux.dev>
Reviewed-by: Shiraz Saleem <shiraz.saleem@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
2021-10-20 19:54:16 -03:00
Toke Høiland-Jørgensen
dfcb63ce1d fq_codel: generalise ce_threshold marking for subset of traffic
Commit e72aeb9ee0 ("fq_codel: implement L4S style ce_threshold_ect1
marking") expanded the ce_threshold feature of FQ-CoDel so it can
be applied to a subset of the traffic, using the ECT(1) bit of the ECN
field as the classifier. However, hard-coding ECT(1) as the only
classifier for this feature seems limiting, so let's expand it to be more
general.

To this end, change the parameter from a ce_threshold_ect1 boolean, to a
one-byte selector/mask pair (ce_threshold_{selector,mask}) which is applied
to the whole diffserv/ECN field in the IP header. This makes it possible to
classify packets by any value in either the ECN field or the diffserv
field. In particular, setting a selector of INET_ECN_ECT_1 and a mask of
INET_ECN_MASK corresponds to the functionality before this patch, and a
mask of ~INET_ECN_MASK allows using the selector as a straight-forward
match against a diffserv code point:

 # apply ce_threshold to ECT(1) traffic
 tc qdisc replace dev eth0 root fq_codel ce_threshold 1ms ce_threshold_selector 0x1/0x3

 # apply ce_threshold to ECN-capable traffic marked as diffserv AF22
 tc qdisc replace dev eth0 root fq_codel ce_threshold 1ms ce_threshold_selector 0x50/0xfc

Regardless of the selector chosen, the normal rules for ECN-marking of
packets still apply, i.e., the flow must still declare itself ECN-capable
by setting one of the bits in the ECN field to get marked at all.

v2:
- Add tc usage examples to patch description

Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Link: https://lore.kernel.org/r/20211019174709.69081-1-toke@redhat.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2021-10-20 15:24:36 -07:00
Thiago Rafael Becker
023859ce6f sunrpc: remove unnecessary test in rpc_task_set_client()
In rpc_task_set_client(), testing for a NULL clnt is not necessary, as
clnt should always be a valid pointer to a rpc_client.

Signed-off-by: Thiago Rafael Becker <trbecker@gmail.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:55 -04:00
Anna Schumaker
5fe1210d25 NFS: Unexport nfs_probe_fsinfo()
All the callers are now in client.c so we can remove the
EXPORT_SYMBOL_GPL() and make it static.

Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:55 -04:00
Anna Schumaker
1301ba603c NFS: Call nfs_probe_server() during a fscontext-reconfigure event
This lets us update the server's attributes when the user does a "mount
-o remount" on the filesystem.

Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:55 -04:00
Anna Schumaker
4d4cf8d2d6 NFS: Replace calls to nfs_probe_fsinfo() with nfs_probe_server()
Clean up. There are a few places where we want to probe the server, but
don't actually care about the fsinfo result. Change these to use
nfs_probe_server(), which handles the fattr allocation for us.

Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Anna Schumaker
e5731131fb NFS: Move nfs_probe_destination() into the generic client
And rename it to nfs_probe_server(). I also change it to take the nfs_fh
as an argument so callers can choose what filehandle to probe.

Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Anna Schumaker
01dde76e47 NFS: Create an nfs4_server_set_init_caps() function
And call it before doing an FSINFO probe to reset to the baseline
capabilities before probing.

Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Chuck Lever
86882c7546 NFS: Remove --> and <-- dprintk call sites
dprintk call sites that display no other information than the
function name can be replaced with use of the trace "function" or
"function_graph" plug-ins.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Chuck Lever
b40887e10d SUNRPC: Trace calls to .rpc_call_done
Introduce a single tracepoint that can replace simple dprintk call
sites in upper layer "rpc_call_done" callbacks. Example:

   kworker/u24:2-1254  [001]   771.026677: rpc_stats_latency:    task:00000001@00000002 xid=0x16a6f3c0 rpcbindv2 GETPORT backlog=446 rtt=101 execute=555
   kworker/u24:2-1254  [001]   771.026677: rpc_task_call_done:   task:00000001@00000002 flags=ASYNC|DYNAMIC|SOFT|SOFTCONN|SENT runstate=RUNNING|ACTIVE status=0 action=rpcb_getport_done
   kworker/u24:2-1254  [001]   771.026678: rpcb_setport:         task:00000001@00000002 status=0 port=20048

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Chuck Lever
d9f877433e NFS: Replace dprintk callsites in nfs_readpage(s)
These new events report slightly different information for readpage
and readpages/readahead.

For readpage:
             fsx-1387  [006]   380.761896: nfs_aop_readpage:    fileid=00:28:2 fhandle=0x36fbbe51 version=1752899355910932437 offset=131072
             fsx-1387  [006]   380.761900: nfs_aop_readpage_done: fileid=00:28:2 fhandle=0x36fbbe51 version=1752899355910932437 offset=131072 ret=0

The index of a synchronous single-page read is reported.

For readpages:

             fsx-1387  [006]   380.760847: nfs_aop_readahead:   fileid=00:28:2 fhandle=0x36fbbe51 version=1752899355909932456 nr_pages=3
             fsx-1387  [006]   380.760853: nfs_aop_readahead_done: fileid=00:28:2 fhandle=0x36fbbe51 version=1752899355909932456 nr_pages=3 ret=0

The count of pages requested is reported. nfs_readpages does not
wait for the READ requests to complete.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Chuck Lever
76497b1adb SUNRPC: Use BIT() macro in rpc_show_xprt_state()
Clean up: BIT() is preferred over open-coding the shift.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Chuck Lever
b4776a341e SUNRPC: Tracepoints should display tk_pid and cl_clid as a fixed-size field
For certain special cases, RPC-related tracepoints record a -1 as
the task ID or the client ID. It's ugly for a trace event to display
4 billion in these cases.

To help keep SUNRPC tracepoints consistent, create a macro that
defines the print format specifiers for tk_pid and cl_clid. At some
point in the future we might try tk_pid with a wider range of values
than 0..64K so this makes it easier to make that change.

RPC tracepoints now look like this:

<...>-1276  [009]   149.720358: rpc_clnt_new:         client=00000005 peer=[192.168.2.55]:20049 program=nfs server=klimt.ib

<...>-1342  [004]   149.921234: rpc_xdr_recvfrom:     task:0000001a@00000005 head=[0xff1242d9ab6dc01c,144] page=0 tail=[(nil),0] len=144
<...>-1342  [004]   149.921235: xprt_release_cong:    task:0000001a@00000005 snd_task:ffffffff cong=256 cwnd=16384
<...>-1342  [004]   149.921235: xprt_put_cong:        task:0000001a@00000005 snd_task:ffffffff cong=0 cwnd=16384

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Chuck Lever
7a3d524c4c xprtrdma: Remove rpcrdma_ep::re_implicit_roundup
Clean up: this field is no longer used.

xprt_rdma_pad_optimize is also no longer used, but is left in place
because it is part of the kernel/userspace API.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Chuck Lever
21037b8c22 xprtrdma: Provide a buffer to pad Write chunks of unaligned length
This is a buffer to be left persistently registered while a
connection is up. Connection tear-down will automatically DMA-unmap,
invalidate, and dereg the MR. A persistently registered buffer is
lower in cost to provide, and it can never be coalesced into the
RDMA segment that carries the data payload.

An RPC that provisions a Write chunk with a non-aligned length now
uses this MR rather than the tail buffer of the RPC's rq_rcv_buf.

Reviewed-By: Tom Talpey <tom@talpey.com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Alexey Gladkov
d5f458a979 Fix user namespace leak
Fixes: 61ca2c4afd ("NFS: Only reference user namespace from nfs4idmap struct instead of cred")
Signed-off-by: Alexey Gladkov <legion@kernel.org>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Trond Myklebust
e591b298d7 NFS: Save some space in the inode
Save some space in the nfs_inode by setting up an anonymous union with
the fields that are peculiar to a specific type of filesystem object.

Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Dave Wysochanski
0ebeebcf59 NFS: Fix WARN_ON due to unionization of nfs_inode.nrequests
Fixes the following WARN_ON
WARNING: CPU: 2 PID: 18678 at fs/nfs/inode.c:123 nfs_clear_inode+0x3b/0x50 [nfs]
...
Call Trace:
  nfs4_evict_inode+0x57/0x70 [nfsv4]
  evict+0xd1/0x180
  dispose_list+0x48/0x60
  evict_inodes+0x156/0x190
  generic_shutdown_super+0x37/0x110
  nfs_kill_super+0x1d/0x40 [nfs]
  deactivate_locked_super+0x36/0xa0

Signed-off-by: Dave Wysochanski <dwysocha@redhat.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:54 -04:00
Trond Myklebust
6e176d4716 NFSv4: Fixes for nfs4_inode_return_delegation()
We mustn't call nfs_wb_all() on anything other than a regular file.
Furthermore, we can exit early when we don't hold a delegation.

Reported-by: David Wysochanski <dwysocha@redhat.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:53 -04:00
Trond Myklebust
f0caea8882 NFS: Fix an Oops in pnfs_mark_request_commit()
Olga reports seeing the following Oops when doing O_DIRECT writes to a
pNFS flexfiles server:

Oops: 0000 [#1] SMP PTI
CPU: 1 PID: 234186 Comm: kworker/u8:1 Not tainted 5.15.0-rc4+ #4
Hardware name: Red Hat KVM/RHEL-AV, BIOS 1.13.0-2.module+el8.3.0+7353+9de0a3cc 04/01/2014
Workqueue: nfsiod rpc_async_release [sunrpc]
RIP: 0010:nfs_mark_request_commit+0x12/0x30 [nfs]
Code: ff ff be 03 00 00 00 e8 ac 34 83 eb e9 29 ff ff
ff e8 22 bc d7 eb 66 90 0f 1f 44 00 00 48 85 f6 74 16 48 8b 42 10 48
8b 40 18 <48> 8b 40 18 48 85 c0 74 05 e9 70 fc 15 ec 48 89 d6 e9 68 ed
ff ff
RSP: 0018:ffffa82f0159fe00 EFLAGS: 00010286
RAX: 0000000000000000 RBX: ffff8f3393141880 RCX: 0000000000000000
RDX: ffffa82f0159fe08 RSI: ffff8f3381252500 RDI: ffff8f3393141880
RBP: ffff8f33ac317c00 R08: 0000000000000000 R09: ffff8f3487724cb0
R10: 0000000000000008 R11: 0000000000000001 R12: 0000000000000001
R13: ffff8f3485bccee0 R14: ffff8f33ac317c10 R15: ffff8f33ac317cd8
FS:  0000000000000000(0000) GS:ffff8f34fbc80000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000018 CR3: 0000000122120006 CR4: 0000000000770ee0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
PKRU: 55555554
Call Trace:
 nfs_direct_write_completion+0x13b/0x250 [nfs]
 rpc_free_task+0x39/0x60 [sunrpc]
 rpc_async_release+0x29/0x40 [sunrpc]
 process_one_work+0x1ce/0x370
 worker_thread+0x30/0x380
 ? process_one_work+0x370/0x370
 kthread+0x11a/0x140
 ? set_kthread_struct+0x40/0x40
 ret_from_fork+0x22/0x30

Reported-by: Olga Kornievskaia <aglo@umich.edu>
Fixes: 9c455a8c1e ("NFS/pNFS: Clean up pNFS commit operations")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:53 -04:00
Trond Myklebust
133a48abf6 NFS: Fix up commit deadlocks
If O_DIRECT bumps the commit_info rpcs_out field, then that could lead
to fsync() hangs. The fix is to ensure that O_DIRECT calls
nfs_commit_end().

Fixes: 723c921e7d ("sched/wait, fs/nfs: Convert wait_on_atomic_t() usage to the new wait_var_event() API")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2021-10-20 18:09:45 -04:00
Thomas Gleixner
2f27b50342 x86/fpu: Remove fpu::state
All users converted. Remove it along with the sanity checks.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20211013145322.765063318@linutronix.de
2021-10-20 23:58:29 +02:00
Thomas Gleixner
63d6bdf36c x86/math-emu: Convert to fpstate
Convert math emulation code to the new register storage
mechanism in preparation for dynamically sized buffers.

No functional change.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20211013145322.711347464@linutronix.de
2021-10-20 23:57:54 +02:00
Thomas Gleixner
c20942ce51 x86/fpu/core: Convert to fpstate
Convert the rest of the core code to the new register storage mechanism in
preparation for dynamically sized buffers.

No functional change.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20211013145322.659456185@linutronix.de
2021-10-20 23:54:26 +02:00
Arnd Bergmann
48fe205ada i.MX defconfig update for 5.16:
- A series from Marcel Ziswiler to update imx_v6_v7_defconfig for the
   new Colibri iMX6ULL eMMC variant support.
 - Enable HID I2C in the imx_v6_v7_defconfig as it is used for a HID
   compliant wacom device on the reMarkable2 tablet.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmFq1uwUHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM7GsAf+Ke0evf++bsvZnsdNW7UPQAtjnYgK
 tNnQb97q5yz904u0tIRRjg2Qug+e2ohasxAUK2v0Jg58paYpVEmK7Kfa91BIds8F
 Zw1rXAw3owyxt5VfWw5GT8TQEm/3MyMQvKJKdvTuSL+LEPcVIfXU88Us0oh9zSIj
 SS2HFI6xmjCFI8JDgctGZcKBoTCJQlycI1lwdA7gpXXcJ4XJepxpzxtOobXKoDuv
 KAJNSSGjY933y8HlImXFKol0KABlVB/ievV48PDvktQ3Rj526AG+ElB0m48YU7wQ
 36hDX1Vmoun9L6QuICizklATNTwfT7O6fxEOpWJuFNja1orKzMXSyoatcA==
 =DPy3
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmFwijoACgkQmmx57+YA
 GNnOmRAAhKoQmTazRw0sqsxH2l6x9E0x6SuM90bKT85/W4HcIzcUjCEcE+IMvDUj
 H/XHNbWjyJP8Y5w+dOV9oGg4wzDnRdTzA6e89nh+90SfMyr4Bls2Ec14JspYQmuP
 IhgwdjQ4v3M420zHJT/cpmpP/rhkl0oBbpvs/BxvTaRLTf632+rWFnM54PGh1eQu
 iz02ODSB4L2pgdND32vzRu3K4XWgrxY0UzCvaCK7x2KL4+IPPAU6ui5UbmQ0f8D3
 zxM84lSsXpEJJh1n4jzfND3ooIdDNqTi5cTMLt5UFr2lO+8fZN9XE6kYs73/SPWY
 pYvJ5iRNJ6sk+U/qtrE+IktKD2rWO9tuNQf4o3VO3GZVF3DYjtSvZkEJJnmpvSw0
 v2oXqmgDzBt/d0mDkEAxIc+HXGlz6jDVPbU71PGd+Mgnb6vfdlWbEUZKM7t3YRFi
 TUMRSazsnYr3vGFs5eCDgsAZtgldepVxqm7iwzD+81G9CgnU2avnmdlEyH6kuEjn
 gmq27doVIMHwtN+ULf5hdxvhBVKt7eWhK5anW6dZIrq58uNnpnYMEx9WYrYial3s
 2+cGS/9QlmC3J7QrsHZj3FVPuq6AejNlp2hHkhd8vHWH0f20bE3IP654MbwFre4G
 yPdvHxJKapg2W01F4pJqIT/ZU/1hag4OvV0t9RDWlYsv9mVlehU=
 =aROW
 -----END PGP SIGNATURE-----

Merge tag 'imx-defconfig-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/defconfigs

i.MX defconfig update for 5.16:

- A series from Marcel Ziswiler to update imx_v6_v7_defconfig for the
  new Colibri iMX6ULL eMMC variant support.
- Enable HID I2C in the imx_v6_v7_defconfig as it is used for a HID
  compliant wacom device on the reMarkable2 tablet.

* tag 'imx-defconfig-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx_v6_v7_defconfig: Enable HID I2C
  ARM: imx_v6_v7_defconfig: enable bpf syscall and cgroup bpf
  ARM: imx_v6_v7_defconfig: build imx sdma driver as module
  ARM: imx_v6_v7_defconfig: rebuild default configuration
  ARM: imx_v6_v7_defconfig: change snd soc tlv320aic3x to i2c variant
  ARM: imx_v6_v7_defconfig: enable mtd physmap

Link: https://lore.kernel.org/r/20211016140138.1603-5-shawnguo@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-20 23:29:30 +02:00
Arnd Bergmann
ddcb48fa7d Visconti defconfig updates for v5.16
- Enable Visconti's PCIe host controller in the ARM64 defconfig
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEXmKe5SMhlzV7hM9DMiR/u0CtH6YFAmFqAg4ACgkQMiR/u0Ct
 H6YmFw/+JbLxVCH+qffJEgZp5gkhENOD/xK4SRhIiLhRrEgrQkl3B0wen5+LU/NJ
 dsNGf/dmqR+d8KNS84u/xUWZXCgdRg+gH/QpiidewVOyBEdBJ8tTU/eZYPXo2dm2
 1deGgzSmKV3GA16QchN0+r5i69v3bbzj8VfWXvDXnLvKKlBUYhsr5H7RV4RqVOJd
 jDEWLGV3BlTk1EJ/5NhLnC7T+KxLE67rQsFIOMEfOV/KnIaoQL5WoH+K0YCl8TjM
 R7STF8upC9VxkyzOGkiK6Gab3Lnh3JswncqW9+TlQXMamu8aZkv+992DkTbSw/n8
 H6dB1gWSAgrPIZGqO0GDHMgE6LIeT3+LS/GRUUczkcSrhjxQ4HeZqjQohiMoH/oS
 pJdiPkVCVh2y1gOyYI9oNYzPBmhrITxqcYyhelrTGqOR7ouok9f0xTngWUgXdhvc
 NvsIqI0z2BHxvO9dsIQ8osYqgPAn8DDlu2fvXmlMhLZ+5f9h48XCk/m3gMj7sF82
 NopgnaZ1cuYtIPAxFlbaiivsCfcQAOdA1pTz0jDA2SREszP6QtZw1auBqTQl+JR0
 5keX+O8UT0FvzCRS44160KKvtqwdI069VC7DMUVi427J7D2JzKiuKW6hhluZyTqj
 B8uXjLR8zHHbbMs0irpvF0T4zNdtEfOT8XO9NBirBp62x8TnSuA=
 =ID9z
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmFwig8ACgkQmmx57+YA
 GNlmAA/+MbWd3lbgPRWt2VfWOBD6U7odTFSnUlgzohL5rgIZGR0FL0G0fOFlQGRE
 jsHHck6ejHea26YQVhR9uH83RNaxLdHScLwdKlT/g8GWjc3NudLBICCBjjpW7YfK
 cXGSQ4giiO5OQxE2YrwW8NsQ0RBXW3qCufQOgDX/3OOthtd0qn98YvL6rWPNqPHZ
 3AqlUPwp1zdXedcRJnrCt3u8vW0RsSEW8ebtPHEDtGEOtGYXl9Bl5oaUw6u4L3zn
 cVw+wwEZrLglh5oBPvPRYRtUPX7XEV9DuFhMLwRUdaQUf91zFu5jFtZRNpICT6Vi
 29FFwGdKirAeuvZObzd+ip1hls+/YrpVyJ84xQy81sK6kntquAY80/WGCMYHGUNn
 W/sPpqCvWZZvuwcVl6iSj6wcUzudNjdB1GrAkHVwXchsmN7Fkw+UKIn56tfFM67n
 goSlWfOxebyAa/6K2FBJvmoAmcRSNbQDZ3WSN+cWCDgjh+PDUv5QHtd2fSIjI3pD
 BZBSUvxZvMepBBfJY3jXHqlC2r+45WNZd2qosV12cIkqeSBF4shbu4muT0x1UoxL
 p/zpOlb7G7oB9OsMc1RyB27kvAGVk26x39VE+TdF+Ti8rT0HpHMUDdvnaHLsYA4g
 MB49Fq7KITmEAmDxSKZ5++iMrNVNCEJLCUdWwkCVlQ675mR37VM=
 =OAnU
 -----END PGP SIGNATURE-----

Merge tag 'visconti-arm-defconfig-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/iwamatsu/linux-visconti into arm/defconfigs

Visconti defconfig updates for v5.16

- Enable Visconti's PCIe host controller in the ARM64 defconfig

* tag 'visconti-arm-defconfig-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/iwamatsu/linux-visconti:
  arm64: defconfig: Visconti: Enable PCIe host controller

Link: https://lore.kernel.org/r/YWoIf4xPoQtLhC3x@toshiba.co.jp
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-20 23:28:47 +02:00
Arnd Bergmann
a307ca9260 mvebu defconfig for 5.16 (part 1)
Update defconfig and enable mtd physmap
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCYWmt8wAKCRALBhiOFHI7
 1fzRAJ9Ztw5rR0z7d5GnIZ8h7qBPpqE9wgCgpAQYfcSuA3oDoqhA7uHaga3iGoE=
 =0Bxi
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmFwidoACgkQmmx57+YA
 GNl7Kg/+NpIudLqvaHD2lqP50tZgN9bGoVE05GZuzqU3JWbu5paDfd1to5B0dPAl
 RbbZJ0pXEbCAccuz/EhGAFvO6n16qLB92Vx9HdNDuJa3cqz9wWciroKeceuKpNXC
 /3we6XK8QM8JV114UURw1mYXevfoUJGvp+GCTfcJBgWSAOote+DI/TveigN95BAM
 SzfAIwyuKS8jWNBRQ/mAR15Wnbumgni/5qJRum5lDprx1JiY0KwH5lsoBAde0MrR
 FMS1nT8+ei0luf3zzwCe+Mpno7NgC5G0y8InDWr6GRcTDe8095amJZkS1SSz4GlK
 70+NccL90kyG5f++uR/pctH6Nhezp1WT4fMqomls+TsNpJtTSj1VIqo4SXpZsOZO
 pA0lNa+70qHgDgHfUV+4pmycPFgAOgisUiWmsTB6mt6xEg7G1JOmdvNxbNP7tr0x
 OnnEn64bujMx3Enr2J+5FezavFALtzpXitay0qOBqmjSPm0tDh5JIIyPcw+cUtFS
 0jqExoK0ujzCScpw55P45yDuu4QI68vBgwvdR2Or3krgBzC1k2EyaanEw4DQ4csz
 nwyT1juMxfXt8O/y/9kWyiXLod7Oh00Uu7p+ZsUEYAWtLxTqupaPpq59NUqgmUrX
 Sa3Qc5hS/g4/JEj03Deq7QR9M5pOTJT53NhsgrSHTlQawqSypNY=
 =cSgX
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-defconfig-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu into arm/defconfigs

mvebu defconfig for 5.16 (part 1)

Update defconfig and enable mtd physmap

* tag 'mvebu-defconfig-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu:
  ARM: mvebu_v7_defconfig: rebuild default configuration
  ARM: mvebu_v7_defconfig: enable mtd physmap

Link: https://lore.kernel.org/r/871r4mmecw.fsf@BL-laptop
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-20 23:27:54 +02:00
Arnd Bergmann
c13d33985d Reset controller updates for v5.16
Allow building the reset-brcmstb-rescal driver as module, add reset
 lines for the Uniphier PXs3 audio and video input subsystems and
 bindings for the Uniphier NX1 SoC, and add lan966x switch reset support
 to the reset-microchip-sparx5 driver.
 -----BEGIN PGP SIGNATURE-----
 
 iI0EABYIADUWIQRRO6F6WdpH1R0vGibVhaclGDdiwAUCYXBBkBcccC56YWJlbEBw
 ZW5ndXRyb25peC5kZQAKCRDVhaclGDdiwCF/AQDzczjKGzRt7UT5nGCRFs6cxI5R
 QsTnpRTIcBfxGFrKAQEAvagsMyYOZgadazUZ1pWm8VfZ5yyVDCkR4mPtXy6DXAA=
 =hBbU
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmFwiZ0ACgkQmmx57+YA
 GNmI0g//V256MjYBTu9G2VllxkybmNBh5dVI8GPHEZSAcKbB6Nq/785AbI+m3cEx
 6ioIEijnllsHByjfBYBLkOXM7gpteRpFkt949RvKJiternsXraHvofzZDXkp/O0o
 WOIL9KUUSSB1f8x8sIEveZFYHKC0ZvT5zJiPYn2az6c0XMeHwLkVDuPO4vfo+Odl
 S1OaQQYQ9u+KP+UdlLP7zg2lotjZfZ4Fh3cOqp1+F1hZ1zz6fTKWH0f3PPesk5Gt
 aRvpizrLL7R+k2YXqE4BGvdjKK7+3bvUYskuVXfCMG5Cy2GHfwX7rAsUkz0UdHhQ
 Y4wh6HAsDAccZLI1YLWqCOc3dnaMTmHKi1yyMA2zbC4cZkUByXuL7CZ7ySwCT6I5
 OEMLcCDL1WpywVZHAYmw3FGqTSkyoSQk19f4p93zEsHHJvADhggiOg3GHV4VDz0/
 8yhPXRsWtbpe6l3iZqElbkLeCsGY3Tkxf+DMDprj3jF+Vc0Ng+O3JYKGumKF7yd8
 EJshpJ3720F+m3Wh2RwrKb6NJ02frbEYGoqvIxUkSLAtq9EYK8eA6WNsypWiOL5r
 0K0NJFguUSaXOYJ5SZAUuBtzoU2LIZS5UtC0nPosSKcYeEmO1QhA8OcDp02Vxg0F
 XTEN3R+ZKK/c8SAVmubzAYiK58tdgUPR81a98ehlLreVtJa/ADM=
 =L2UE
 -----END PGP SIGNATURE-----

Merge tag 'reset-for-v5.16' of git://git.pengutronix.de/pza/linux into arm/drivers

Reset controller updates for v5.16

Allow building the reset-brcmstb-rescal driver as module, add reset
lines for the Uniphier PXs3 audio and video input subsystems and
bindings for the Uniphier NX1 SoC, and add lan966x switch reset support
to the reset-microchip-sparx5 driver.

* tag 'reset-for-v5.16' of git://git.pengutronix.de/pza/linux:
  reset: mchp: sparx5: Extend support for lan966x
  dt-bindings: reset: Add lan966x support
  reset: uniphier: Add NX1 reset support
  dt-bindings: reset: uniphier: Add NX1 reset control binding
  reset: uniphier: Add audio system and video input reset control for PXs3
  reset: Allow building Broadcom STB RESCAL as module

Link: https://lore.kernel.org/r/96e686f78f0e42bad666df5ec0cbcb2dcdc270a3.camel@pengutronix.de
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-20 23:26:53 +02:00
Arnd Bergmann
5cec64e5f9 Platform core changes for the Allwinner SoCs, this time adding SPDX
headers to our files.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQRcEzekXsqa64kGDp7j7w1vZxhRxQUCYW0q7QAKCRDj7w1vZxhR
 xWxSAP9W4gN/i+iNo6tuAao/awLjSeZ0gMC5JJbBKLbnAp6k+QD/cLNYOZBLMTV0
 TJWKEBNUyWsQXRVSYzYQ5NuSnJGIhA0=
 =yvae
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmFwiR4ACgkQmmx57+YA
 GNk74A/9EDZQcF+0ZfVkzJEJrU5tm6uL3G4JB1lgAoLWtsKfrVU8O5AG7B6Efxum
 Mds4VuoszHRC9/ecDNwPp8m+vR1vhe8j1qHLLOJwkOVFl9n6qykFypgfTnsubUM8
 3cwPMicTNxn0mzTK03MO7rUBIQ0B2+4RkP8fGc5ZBlpghCpEMKm/uPdplv60bwfA
 hYxaCRFdwZGLNr9p4x/hT7E/3FBKTPz9Y06F0gnVK71pP1QX2bRNMZtX/UOAzSGX
 9n74A77FHkRZRTvYzzFbTBclv8VGXCHOTo1GMEwgSQO11Bl6fnU49ob3G9eiWO4I
 NWyvotFcbb9H3vrnnIurrNmAbjWARpC7/n3igTyoND4qoy61PX4QLc6wwrsW5Ll2
 UGfOWN4txhRWJyKoMVdWk3/pHCtUl2YTPC+o9qVwF/h8ERldzYqZE1dacyioT3T+
 caXotletUsES+RqPYeC3JsYxA0jLhhh0S5WgLlmbD9ClCsor78GoHzcVBizMLaQk
 EVwlJ9q5UrofmgtjnWJNsA1djsefK5sK5F/1/FWefIdGiMoJ3bxwgo/Ea/n2NgMs
 QeHxwU61t+KWqAo5xD8wJ6FqtO8LKPXOkf/z/CYg2IQASFho6obnR6J/vwrlrw/B
 drPA5qflo2mzHnJDtFTwqm0rsZ3lDwahtnY2YENzIXSDW9fLJ8Q=
 =lmOm
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-core-for-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/soc

Platform core changes for the Allwinner SoCs, this time adding SPDX
headers to our files.

* tag 'sunxi-core-for-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  ARM: sunxi: Add a missing SPDX license header
  ARM: sunxi: Add a missing SPDX license header

Link: https://lore.kernel.org/r/0ceaad3e-dc26-4be6-b98f-d25e51a41b81.lettre@localhost
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-20 23:24:45 +02:00
Arnd Bergmann
17c129caec i.MX maintainers update for 5.16:
- Add a new entry for the maintenance of NXP S32G device tree files.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmFq15AUHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM60nwf+MLt/GNyW1nfde2V0bIR5CLRaDshs
 pbvDOBX0QNlXzLrYZxWVv/LYaxFxlmYRnTRpvCFl6+p7ff0C4vi0mX82eA6LVNec
 PRQKvqmdvzVJmB7CCyj30LoY6gOe+4pJn2yWdMyooyqlWUB9/pA6IcWcW/DmfeD4
 y8CkJSO+Uu6xvVaHbKnEo+cvfS1H7STK9wCRHoq21bNxS63/IVZLwa4b27zLY3H5
 AY0rfclsWeYxYSKq9PEFjxLy8r5IT63X6HXmCR9WJLAHjBfCLqm5xZLmMIc8koJt
 goPV+T2f0XW10XlMT8UeD0j7oesepjWIRLKNXx9JiWRyqpnu9Uycp+LWUQ==
 =vV3v
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmFwiO0ACgkQmmx57+YA
 GNlLchAAssh4q1aTOYnTMTAIc1HBnWFT58qtHVUva1VpRvhAQJjGrrgKsTRadXYg
 /NwjkttcH7FGhdCgKeKvJRPAL09D8nUK+smrvHr3KwgZtN+zDDuw3/ktovg6lw+S
 JqqdD7ag5VLuwOnQFTs4YQsFvNuGSuajUtTFsHiRD75cf9aw+tOV5I4C5wpjw+Wg
 wfNkwnVnWz+Zkj1OyYEdlQUds3SbjDhmgFuzTwYZcT0fM1KMk+e0QPVxigUqc/ft
 N4Unf5NRSUVtySFqNrN+v112PmZB3pkdwY/eemPzQHcSfHp/0VuDXp4RbK5ZsQ41
 qyVoyigEjb9I5xy5gtZgfG/FtZjzIUJ3mxpXMTkpadInwKiYh30IOPYqGs4jF99r
 tSPlinC9ksLnsBISHGSCpEi0UVSxvwxSbIEK+njUIHM1BK2ealMnrMnPfy3Sh8UU
 G0Yu3a5uLLgIZSgrNDtJrqEfLYbCFiNK6KWfVKFz5DI/8NX2TUl8dOgR1NL7SztD
 u7luYJXf+5vptuIWknEoL+VREoPK8XHrz1gbX/zw8N5rUv/Js3m1dCy0z6/cQ9/O
 y5qW+FpXDPRQf0DE+2P+w5Q9EJFJqeOyMvoMaAhEJMfa7iuI9DP+u4hQ53QYemRH
 E15XbnlLpRr5sRBm+bpMRYF3smqJJ0mh9U9KQZX1z7PpzgnDABU=
 =8Qew
 -----END PGP SIGNATURE-----

Merge tag 'imx-maintainers-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/soc

i.MX maintainers update for 5.16:

- Add a new entry for the maintenance of NXP S32G device tree files.

* tag 'imx-maintainers-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  MAINTAINERS: add an entry for NXP S32G boards

Link: https://lore.kernel.org/r/20211016140138.1603-6-shawnguo@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-20 23:23:57 +02:00
Arnd Bergmann
851feb4943 STM32 SoC for v5.16, round 1
Highlights:
 ----------
 
 Add support of new STM32MP13 SoC which enhances current
 STM32 MPU family. It is mainly a derivative of STM32MP15 SoCs
 (one Cortex-A7 plus standard peripherals).
 
 The STM32MP13 SoC diversity is composed by:
     -STM32MP131:
       -core: 1*CA7, 17*TIMERS, 5*LPTIMERS, DMA/MDMA/DMAMUX
       -storage: 3*SDMCC, 1*QSPI, FMC
       -com: USB (OHCI/EHCI, OTG), 5*I2C, 5*SPI/I2S, 8*U(S)ART
       -audio: 2*SAI
       -network: 1*ETH(GMAC)
     -STM32MP133: STM32MP131 + 2*CAN, ETH2(GMAC), ADC1
     -STM32MP135: STM32MP133 + DCMIPP, LTDC
 -----BEGIN PGP SIGNATURE-----
 
 iQJRBAABCgA7FiEEctl9+nxzUSUqdELdf5rJavIecIUFAmFplPUdHGFsZXhhbmRy
 ZS50b3JndWVAZm9zcy5zdC5jb20ACgkQf5rJavIecIX7SA//aks6hFD3+n8CTGcw
 vm9/AU8dwIrzDLUZE22Lg6xXOfTMJlz+TR8+q3hlbJXQl/6eDmXhfPWi6qAdXCXw
 DWqwikn6ZzRpmBlN95mV72C5P6L1ipx/ivC0hHz9TldxN0lRYIRecE/t+lgi7h5V
 9rG+sBEzp3U7/5KGHwKxLLby5q41UoCgz6hYwtUiG0P9Y+VFLsGrPK/B4ZdKMhYX
 ZgnAOL4zDGyx4jxKAm4h4QwKl4eNpmjRUINHkbtf9d6pQMRjeJy9PcmZ8kfYTink
 u+s4X/ADWCwb7ahr4ZN8cERU4mX0z7in1j6bpAGdd5btEGEPvQpmPG5jxooyXW5a
 kzpsb1Sh/6PzlxfkPo1QmtgUzrvd4jTURHYyjm6T44wTH6ZiW79qK2llCy8LpCgZ
 gKnSk3cFNAeoB4Udgx0GSF5EwA8fGT+SaqAMq7YF72Kj+9mt8irQJ3IfishF/7YY
 ci/02bVuyM3h70l3AeOCbXQtx9hALbJ3P7aweLIfFB0ZiIOFpX8fx27q0YdEixji
 FQlwP9RtrN+H92Zylhq6FG9Bnx7XKCBm8D+a7JzFA4ToaoFvgjhw2ubhT7AmSQ5b
 oQqVr3EOJSrUi+s0J9c0OX4oCU25NpVAXrmPABlfSfo1Ns+oNsyLcF1RQG6HShcf
 fXHHWZHOmWyV9flCCniyhjukKIU=
 =ea0B
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmFwiLIACgkQmmx57+YA
 GNlrig/7BtW+09Jeb94LdWM/Dxb0pCSoddDvEWirtfYgxCPa4VQq+ZYnSMKEqaHA
 js7gRbdDFmOqNnxaI0obBuKhKzINFcfuLy09NkbqNaIodqxspw5Aq5mHYi1IAhao
 yl7uR26L6wRSCn2QTPQC/doL6BO+23+R5ixLKBWiwvCbO6NoEJ4CaSA3SYLkHxRx
 28VvFnz2YvEi61dP6109q8qaoP2SE9QvoYjbVox6wRmY0B6WJL8KkScM4xMlf8qj
 CyN3gtWV6CceDWjQu3ulCY8ktMUQd0ChGcD9ZwIgWp1/Elk7y/4hXMXXG+9WpaC0
 tG5V32/3040YdCQQMjgkgx6XoH6qcE0e6ihbQ3LDLFIEbdeh0MNN/B5xBYnX7lHs
 vstFZljL8RSquumcx21RS3SqgzCM0pEMwFGqk/o2WUmAGzMWNPatUlPvec0ZeTkW
 ue16dxY/BnZIm+a4z5eA4jMIt57rf0Jp3bBeupZQI9nTZtnsggeztekya7qp+xsB
 pFrWw+pfpZBoidNMhfzBQlwZtv2PABhkku3MhnnrM4Jkl7jeK/vzwort9gEwjhDK
 GGIUe6gjY52BYeyHfAK5HGel+WoOXzU1YgtMSQuyfczaYJbehVWiuL9tsnagkeYH
 uPY+2T3XnO5x5xgdMu13x9giL+ygcD65YBJr64o20VxGiZczyZc=
 =zpS6
 -----END PGP SIGNATURE-----

Merge tag 'stm32-soc-for-v5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into arm/soc

STM32 SoC for v5.16, round 1

Highlights:
----------

Add support of new STM32MP13 SoC which enhances current
STM32 MPU family. It is mainly a derivative of STM32MP15 SoCs
(one Cortex-A7 plus standard peripherals).

The STM32MP13 SoC diversity is composed by:
    -STM32MP131:
      -core: 1*CA7, 17*TIMERS, 5*LPTIMERS, DMA/MDMA/DMAMUX
      -storage: 3*SDMCC, 1*QSPI, FMC
      -com: USB (OHCI/EHCI, OTG), 5*I2C, 5*SPI/I2S, 8*U(S)ART
      -audio: 2*SAI
      -network: 1*ETH(GMAC)
    -STM32MP133: STM32MP131 + 2*CAN, ETH2(GMAC), ADC1
    -STM32MP135: STM32MP133 + DCMIPP, LTDC

* tag 'stm32-soc-for-v5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  ARM: stm32: add initial support for STM32MP13 family
  docs: arm: stm32: introduce STM32MP13 SoCs

Link: https://lore.kernel.org/r/0b6c9657-dcca-3bad-601f-610dfc81d9ae@foss.st.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-20 23:22:58 +02:00
Arnd Bergmann
9f2feb32c2 Changes for omap gpmc bindings and devicetree files for v5.16
A series of changes to update the gpmc related bindings to yaml
 format, and a few non-urgent dts fixes.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAmFkEDARHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXPNag//aqw0TTX4QjiNCxlgbTd6bvdG//aZnwCL
 isZb8deQhY+X7F9RJNsbfPnmRftaH4Z3yvJ+58+wBSTrKW1BjosCUnbMVHFrkl1E
 BFLfpQG1lNhhED1aSz5KCvS6FjHKGzJv+dEIKtTA/V3CDNhPVjlmPakWn0vQslEY
 f9Q3g+mgH4tBmYtilVYRrRhFeIjYukmsC9Pu84/YYbjd12g9DiuG1QeKnlg+9ZgO
 0pH1Wo+RiAA2MScwAyk3hwJ5QWCFj0zqjoEx4rTo49f8m8I5de/eNXEMwT8EDQO2
 6vXzDl1l6Djsp3VWtQPT9Gp0iEk9j05sTNolvlm13eP7sF366Vga/NRbAnw4qFUa
 7DTxpzQijEVRe+0gpFvmqp6IMM67yMWIZ12klnnzd6qOgQepNgn00WsR/Xw4smJo
 CntrhvLMSVfUKIgT3g1kr4TfNkpAJngqMEYTvbKzx91jgECjcomPrtDnpcH0WlW7
 5nH5BAdtumledkJj+Shxwmv3X7jZI3pBFlWQ2tjNyj4Dmj1NV3dJG2FoLRrK7Nud
 v1wQNiGTBgasyBl8lKdqzEor9TvTraFVH0X+gug2OkFk4Qu7jH3poc3H3n2ZBdUF
 lU0d36mNcZBxJPWEosoAOk3E7qdZ+GPcoPGjHzakVYiY6CgICaYTo3OyTPiTXuBS
 efXF1MlH/zc=
 =2byI
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmFwh4kACgkQmmx57+YA
 GNlt7w/8DMlz/ZcYin4zyJz4F9QpLxNvvLtBlL7yrtFpScYRXegEVL0gNR3S+1pE
 +Jo5fL25NO6KaHa2n08ns6mNnUycnngBFlYLUwIlKnT+bshTql5uM90Gogjm4pG9
 KItIx5bJR2xE22NgfLYUX74CYCtrFKKucLdl8Fnfj/TYKg3yBIR1jmfg7gXSkiqw
 fopRFntlXMDkZR4mzlvuDzdzksqFXubYuEHDdsRlmXFfLGcuDq7QQFSk0G1Zf7XF
 JI1eHWZnHjPBr8NT8qR2XxBVHt9KMDvtz1XmXhP9csqdVbCyTC8JWl7Lt7Gdcw1t
 TTUnX97LyPa7T4K7if08U98yoSj5CyQsXyos1AScr5WWdhD5Y98Z6SM3EJeXto1a
 zFQMiGRRhGFo3OYOcsXVefelXhzHxLcgxaEl9/A/hcUYu/8Ns2VpYho6C1H/L1ek
 8to5d3R03jitywJbU2iv1AuyvFQqGobcsbdV0OrFWtIiIT4dzDIvmh7RcU14U95r
 oh9kcAC4GCoXPZjrBjr6oFlK+gWm6KByvsYi4IvXXUskMjd/p2NDHF+Gl+4v0HwE
 u12TvlNXbAe2GCBRXQ3HOVdafTRBqkFqYsDyncCHgSZxHqo8Lgm975vdDvljE6aF
 JFDawUeEhmlduhCArTcPD3zQ/NsxKXUKFpCj+0UxHm3MfuqwP5w=
 =mJMK
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v5.16/gpmc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/dt

Changes for omap gpmc bindings and devicetree files for v5.16

A series of changes to update the gpmc related bindings to yaml
format, and a few non-urgent dts fixes.

* tag 'omap-for-v5.16/gpmc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: omap: fix gpmc,mux-add-data type
  ARM: dts: omap: Fix boolean properties gpmc,cycle2cycle-{same|diff}csen
  dt-bindings: memory-controllers: ti,gpmc: Convert to yaml
  dt-bindings: mtd: ti,gpmc-onenand: Convert to yaml
  dt-bindings: mtd: ti,gpmc-nand: Convert to yaml
  dt-bindings: memory-controllers: Introduce ti,gpmc-child
  dt-bindings: net: Remove gpmc-eth.txt
  dt-bindings: mtd: Remove gpmc-nor.txt

Link: https://lore.kernel.org/r/pull-1634280279-284035@atomide.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-20 23:18:01 +02:00
Arnd Bergmann
06fab4a544
Merge branch 'mstar-dt-next' of https://github.com/linux-chenxing/linux into arm/dt
* 'mstar-dt-next' of https://github.com/linux-chenxing/linux:
  ARM: dts: mstar: Mark timer with arm,cpu-registers-not-fw-configured
  ARM: dts: mstar: Add rtc device node

Link: https://lore.kernel.org/r/20211020163010.3079-1-romain.perier@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-20 23:17:06 +02:00
Denis Kirjanov
210893cad2 openrisc: signal: remove unused DEBUG_SIG macro
Signed-off-by: Denis Kirjanov <kda@linux-powerpc.org>
Signed-off-by: Stafford Horne <shorne@gmail.com>
2021-10-21 05:42:06 +09:00
Thomas Gleixner
7e049e8b74 x86/fpu/signal: Convert to fpstate
Convert signal related code to the new register storage mechanism in
preparation for dynamically sized buffers.

No functional change.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20211013145322.607370221@linutronix.de
2021-10-20 22:41:15 +02:00
Thomas Gleixner
caee31a36c x86/fpu/regset: Convert to fpstate
Convert regset related code to the new register storage mechanism in
preparation for dynamically sized buffers.

No functional change.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20211013145322.555239736@linutronix.de
2021-10-20 22:35:29 +02:00
Thomas Gleixner
cceb496420 x86/fpu: Convert tracing to fpstate
Convert FPU tracing code to the new register storage mechanism in
preparation for dynamically sized buffers.

No functional change.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20211013145322.503327333@linutronix.de
2021-10-20 22:35:04 +02:00