Skip to content

Commit 13091aa

Browse files
committed
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Honestly all the conflicts were simple overlapping changes, nothing really interesting to report. Signed-off-by: David S. Miller <davem@davemloft.net>
2 parents f97252a + 29f785f commit 13091aa

File tree

4,109 files changed

+9649
-34881
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

4,109 files changed

+9649
-34881
lines changed

Documentation/ABI/testing/sysfs-class-net-qmi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Contact: Bjørn Mork <bjorn@mork.no>
2929
Description:
3030
Unsigned integer.
3131

32-
Write a number ranging from 1 to 127 to add a qmap mux
32+
Write a number ranging from 1 to 254 to add a qmap mux
3333
based network device, supported by recent Qualcomm based
3434
modems.
3535

@@ -46,5 +46,5 @@ Contact: Bjørn Mork <bjorn@mork.no>
4646
Description:
4747
Unsigned integer.
4848

49-
Write a number ranging from 1 to 127 to delete a previously
49+
Write a number ranging from 1 to 254 to delete a previously
5050
created qmap mux based network device.

Documentation/arm64/sve.txt

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,18 @@ model features for SVE is included in Appendix A.
5656
is to connect to a target process first and then attempt a
5757
ptrace(PTRACE_GETREGSET, pid, NT_ARM_SVE, &iov).
5858

59+
* Whenever SVE scalable register values (Zn, Pn, FFR) are exchanged in memory
60+
between userspace and the kernel, the register value is encoded in memory in
61+
an endianness-invariant layout, with bits [(8 * i + 7) : (8 * i)] encoded at
62+
byte offset i from the start of the memory representation. This affects for
63+
example the signal frame (struct sve_context) and ptrace interface
64+
(struct user_sve_header) and associated data.
65+
66+
Beware that on big-endian systems this results in a different byte order than
67+
for the FPSIMD V-registers, which are stored as single host-endian 128-bit
68+
values, with bits [(127 - 8 * i) : (120 - 8 * i)] of the register encoded at
69+
byte offset i. (struct fpsimd_context, struct user_fpsimd_state).
70+
5971

6072
2. Vector length terminology
6173
-----------------------------
@@ -124,6 +136,10 @@ the SVE instruction set architecture.
124136
size and layout. Macros SVE_SIG_* are defined [1] to facilitate access to
125137
the members.
126138

139+
* Each scalable register (Zn, Pn, FFR) is stored in an endianness-invariant
140+
layout, with bits [(8 * i + 7) : (8 * i)] stored at byte offset i from the
141+
start of the register's representation in memory.
142+
127143
* If the SVE context is too big to fit in sigcontext.__reserved[], then extra
128144
space is allocated on the stack, an extra_context record is written in
129145
__reserved[] referencing this space. sve_context is then written in the

Documentation/block/switching-sched.txt

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,9 @@ you can do so by typing:
1313

1414
# mount none /sys -t sysfs
1515

16-
As of the Linux 2.6.10 kernel, it is now possible to change the
17-
IO scheduler for a given block device on the fly (thus making it possible,
18-
for instance, to set the CFQ scheduler for the system default, but
19-
set a specific device to use the deadline or noop schedulers - which
20-
can improve that device's throughput).
16+
It is possible to change the IO scheduler for a given block device on
17+
the fly to select one of mq-deadline, none, bfq, or kyber schedulers -
18+
which can improve that device's throughput.
2119

2220
To set a specific scheduler, simply do this:
2321

@@ -30,8 +28,8 @@ The list of defined schedulers can be found by simply doing
3028
a "cat /sys/block/DEV/queue/scheduler" - the list of valid names
3129
will be displayed, with the currently selected scheduler in brackets:
3230

33-
# cat /sys/block/hda/queue/scheduler
34-
noop deadline [cfq]
35-
# echo deadline > /sys/block/hda/queue/scheduler
36-
# cat /sys/block/hda/queue/scheduler
37-
noop [deadline] cfq
31+
# cat /sys/block/sda/queue/scheduler
32+
[mq-deadline] kyber bfq none
33+
# echo none >/sys/block/sda/queue/scheduler
34+
# cat /sys/block/sda/queue/scheduler
35+
[none] mq-deadline kyber bfq

Documentation/cgroup-v1/blkio-controller.txt

Lines changed: 7 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -8,61 +8,13 @@ both at leaf nodes as well as at intermediate nodes in a storage hierarchy.
88
Plan is to use the same cgroup based management interface for blkio controller
99
and based on user options switch IO policies in the background.
1010

11-
Currently two IO control policies are implemented. First one is proportional
12-
weight time based division of disk policy. It is implemented in CFQ. Hence
13-
this policy takes effect only on leaf nodes when CFQ is being used. The second
14-
one is throttling policy which can be used to specify upper IO rate limits
15-
on devices. This policy is implemented in generic block layer and can be
16-
used on leaf nodes as well as higher level logical devices like device mapper.
11+
One IO control policy is throttling policy which can be used to
12+
specify upper IO rate limits on devices. This policy is implemented in
13+
generic block layer and can be used on leaf nodes as well as higher
14+
level logical devices like device mapper.
1715

1816
HOWTO
1917
=====
20-
Proportional Weight division of bandwidth
21-
-----------------------------------------
22-
You can do a very simple testing of running two dd threads in two different
23-
cgroups. Here is what you can do.
24-
25-
- Enable Block IO controller
26-
CONFIG_BLK_CGROUP=y
27-
28-
- Enable group scheduling in CFQ
29-
CONFIG_CFQ_GROUP_IOSCHED=y
30-
31-
- Compile and boot into kernel and mount IO controller (blkio); see
32-
cgroups.txt, Why are cgroups needed?.
33-
34-
mount -t tmpfs cgroup_root /sys/fs/cgroup
35-
mkdir /sys/fs/cgroup/blkio
36-
mount -t cgroup -o blkio none /sys/fs/cgroup/blkio
37-
38-
- Create two cgroups
39-
mkdir -p /sys/fs/cgroup/blkio/test1/ /sys/fs/cgroup/blkio/test2
40-
41-
- Set weights of group test1 and test2
42-
echo 1000 > /sys/fs/cgroup/blkio/test1/blkio.weight
43-
echo 500 > /sys/fs/cgroup/blkio/test2/blkio.weight
44-
45-
- Create two same size files (say 512MB each) on same disk (file1, file2) and
46-
launch two dd threads in different cgroup to read those files.
47-
48-
sync
49-
echo 3 > /proc/sys/vm/drop_caches
50-
51-
dd if=/mnt/sdb/zerofile1 of=/dev/null &
52-
echo $! > /sys/fs/cgroup/blkio/test1/tasks
53-
cat /sys/fs/cgroup/blkio/test1/tasks
54-
55-
dd if=/mnt/sdb/zerofile2 of=/dev/null &
56-
echo $! > /sys/fs/cgroup/blkio/test2/tasks
57-
cat /sys/fs/cgroup/blkio/test2/tasks
58-
59-
- At macro level, first dd should finish first. To get more precise data, keep
60-
on looking at (with the help of script), at blkio.disk_time and
61-
blkio.disk_sectors files of both test1 and test2 groups. This will tell how
62-
much disk time (in milliseconds), each group got and how many sectors each
63-
group dispatched to the disk. We provide fairness in terms of disk time, so
64-
ideally io.disk_time of cgroups should be in proportion to the weight.
65-
6618
Throttling/Upper Limit policy
6719
-----------------------------
6820
- Enable Block IO controller
@@ -94,7 +46,7 @@ Throttling/Upper Limit policy
9446
Hierarchical Cgroups
9547
====================
9648

97-
Both CFQ and throttling implement hierarchy support; however,
49+
Throttling implements hierarchy support; however,
9850
throttling's hierarchy support is enabled iff "sane_behavior" is
9951
enabled from cgroup side, which currently is a development option and
10052
not publicly available.
@@ -107,9 +59,8 @@ If somebody created a hierarchy like as follows.
10759
|
10860
test3
10961

110-
CFQ by default and throttling with "sane_behavior" will handle the
111-
hierarchy correctly. For details on CFQ hierarchy support, refer to
112-
Documentation/block/cfq-iosched.txt. For throttling, all limits apply
62+
Throttling with "sane_behavior" will handle the
63+
hierarchy correctly. For throttling, all limits apply
11364
to the whole subtree while all statistics are local to the IOs
11465
directly generated by tasks in that cgroup.
11566

@@ -130,10 +81,6 @@ CONFIG_DEBUG_BLK_CGROUP
13081
- Debug help. Right now some additional stats file show up in cgroup
13182
if this option is enabled.
13283

133-
CONFIG_CFQ_GROUP_IOSCHED
134-
- Enables group scheduling in CFQ. Currently only 1 level of group
135-
creation is allowed.
136-
13784
CONFIG_BLK_DEV_THROTTLING
13885
- Enable block device throttling support in block layer.
13986

@@ -344,32 +291,3 @@ Common files among various policies
344291
- blkio.reset_stats
345292
- Writing an int to this file will result in resetting all the stats
346293
for that cgroup.
347-
348-
CFQ sysfs tunable
349-
=================
350-
/sys/block/<disk>/queue/iosched/slice_idle
351-
------------------------------------------
352-
On a faster hardware CFQ can be slow, especially with sequential workload.
353-
This happens because CFQ idles on a single queue and single queue might not
354-
drive deeper request queue depths to keep the storage busy. In such scenarios
355-
one can try setting slice_idle=0 and that would switch CFQ to IOPS
356-
(IO operations per second) mode on NCQ supporting hardware.
357-
358-
That means CFQ will not idle between cfq queues of a cfq group and hence be
359-
able to driver higher queue depth and achieve better throughput. That also
360-
means that cfq provides fairness among groups in terms of IOPS and not in
361-
terms of disk time.
362-
363-
/sys/block/<disk>/queue/iosched/group_idle
364-
------------------------------------------
365-
If one disables idling on individual cfq queues and cfq service trees by
366-
setting slice_idle=0, group_idle kicks in. That means CFQ will still idle
367-
on the group in an attempt to provide fairness among groups.
368-
369-
By default group_idle is same as slice_idle and does not do anything if
370-
slice_idle is enabled.
371-
372-
One can experience an overall throughput drop if you have created multiple
373-
groups and put applications in that group which are not driving enough
374-
IO to keep disk busy. In that case set group_idle=0, and CFQ will not idle
375-
on individual groups and throughput should improve.

Documentation/cgroup-v1/hugetlb.txt

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,18 @@ Brief summary of control files
3232
hugetlb.<hugepagesize>.usage_in_bytes # show current usage for "hugepagesize" hugetlb
3333
hugetlb.<hugepagesize>.failcnt # show the number of allocation failure due to HugeTLB limit
3434

35-
For a system supporting two hugepage size (16M and 16G) the control
35+
For a system supporting three hugepage sizes (64k, 32M and 1G), the control
3636
files include:
3737

38-
hugetlb.16GB.limit_in_bytes
39-
hugetlb.16GB.max_usage_in_bytes
40-
hugetlb.16GB.usage_in_bytes
41-
hugetlb.16GB.failcnt
42-
hugetlb.16MB.limit_in_bytes
43-
hugetlb.16MB.max_usage_in_bytes
44-
hugetlb.16MB.usage_in_bytes
45-
hugetlb.16MB.failcnt
38+
hugetlb.1GB.limit_in_bytes
39+
hugetlb.1GB.max_usage_in_bytes
40+
hugetlb.1GB.usage_in_bytes
41+
hugetlb.1GB.failcnt
42+
hugetlb.64KB.limit_in_bytes
43+
hugetlb.64KB.max_usage_in_bytes
44+
hugetlb.64KB.usage_in_bytes
45+
hugetlb.64KB.failcnt
46+
hugetlb.32MB.limit_in_bytes
47+
hugetlb.32MB.max_usage_in_bytes
48+
hugetlb.32MB.usage_in_bytes
49+
hugetlb.32MB.failcnt

Documentation/devicetree/bindings/net/can/microchip,mcp251x.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Required properties:
44
- compatible: Should be one of the following:
55
- "microchip,mcp2510" for MCP2510.
66
- "microchip,mcp2515" for MCP2515.
7+
- "microchip,mcp25625" for MCP25625.
78
- reg: SPI chip select.
89
- clocks: The clock feeding the CAN controller.
910
- interrupts: Should contain IRQ line for the CAN controller.

0 commit comments

Comments
 (0)