Linux 5.8-rc1
From: Linus Torvalds
Date: Sun Jun 14 2020 - 16:44:32 EST
So I didn't really expect this, but 5.8 looks to be one of our biggest
releases of all time.
As of -rc1, it's right up there with v4.9, which has long been our
biggest release by quite a bit in number of commits. Yes, 5.8-rc1 has
a couple fewer commits than 4.9-rc1 did, but in many ways it's a much
more comprehensive release despite that.
The 4.9 kernel was artificially big partly because of the greybus
subsystem that was merged in that release, but also because v4.8 had
had a longer rc series and thus there was more pent up development. In
5.8, we have no sign of those kinds of issues making the release
bigger - there's just simply a lot of development in there.
And there are other kernel releases that have had more new lines -
v4.12 ends up being the undisputed size champion in that regard,
simply because it had a _huge_ number of new lines due to lots of
register descriptions for the AMD GPU drivers. Other kernels have been
similarly big due to particular subsystems (v4.2 had another AMD GPU
driver line count bump, 2.6.29 had a big staging driver additions,
etc).
But again, 5.8 is up there with the best, despite not really having
any single thing that stands out. Yes, there's a couple of big driver
changes (habanalabs and atomisp) that are certainly part of it, but
it's not nearly as one-sided as some of the other historical big
releases have been.
The development is really all over the place: there's tons of fairly
fundamental core work and cleanups, but there is also lots of
filesystem work and obviously all the usual driver updates too. Plus
documentation and archiecture work.
In fact, while 5.8-rc1 is "up there with the best" when it comes to
both number of commits and number of new lines, it's actually the
outstanding champion when it comes to number of files changed. And
again, that's not because of some single tree-wide simple scripting
thing (the kernels with lots of SPDX license line changes have a lot
of files changed), but simply because of lots and lots of development
work.
So in the 5.8 merge window we have modified about 20% of all the files
in the kernel source repository. That's really a fairly big
percentage, and while some of it _is_ scripted, on the whole it's
really just the same pattern: 5.8 has simply seen a lot of
development.
IOW, 5.8 looks big. Really big.
In pure numbers: over 14k non-merge commits (over 15k counting
merges), ~800k new lines, and over 14 thousand files changed.
It's worth noting that despite the size, it doesn't necessarily look
like a particularly troublesome release at least so far. Yes, the pure
size made this merge window a bit more stressful than I like, because
I _really_ like to have a few days of calm at the end to look at some
of the pull requests in more detail. This time around that never
really happened. But I only really had two pull requests I ended up
wanting to go through in more detail, so it all worked out fine.
So the pure size of this merge window did make me (once again)
consider making it more of a hard rule that pull requests with new
features (as opposed to the second wave of pull requests with just
fixes) absolutely _have_ to come in during the first week of the merge
window, but honestly, _most_ of the pull requests did in fact do that.
No, not all, and it could have been a bit more organized, and maybe I
got snippy with somebody, but on the whole things were pretty smooth
despite the large size.
Famous last words. Let's see what happens during the rest of this release.
But at least right now, while 5.8 looks like a very large release, I
don't get the feeling that it's particularly troublesome.
Knock wood.
Appended is the merge-log as usual. If you didn't get the idea yet
(IT'S BIG!) the shortlog would be much too unwieldly, even more so
than usual.
Linus
---
Al Viro (16):
uaccess/csum updates
uaccess/access_ok updates
uaccess/readdir updates
uaccess/__put-user updates
uaccess/__copy_from_user updates
uaccess/__copy_to_user updates
uaccess/coredump updates
vfs updates
ia64 build regression fix
splice updates
comedi uaccess cleanups
misc uaccess updates
i915 uaccess updates
sysctl fixes
vfs fixes
epoll update
Alex Williamson (1):
VFIO updates
Alexandre Belloni (1):
RTC updates
Andreas Gruenbacher (1):
gfs2 updates
Andrew Morton (7):
updates
more updates
yet more updates
still more updates
even more updates
some more updates
updates
Andy Shevchenko (1):
x86 platform driver updates
Anna Schumaker (1):
NFS client updates
Arnaldo Carvalho de Melo (1):
perf tooling updates
Arnd Bergmann (4):
ARM SoC updates
ARM defconfig updates
ARM/SoC driver updates
ARM devicetree updates
Benson Leung (1):
chrome platform updates
Bjorn Andersson (2):
rpmsg updates
remoteproc updates
Bjorn Helgaas (1):
PCI updates
Boris Brezillon (1):
i3c update
Borislav Petkov (4):
EDAC updates
x86 microcode update
x86 cache resource control updates
READ_IMPLIES_EXEC changes
Bruce Fields (1):
nfsd updates
Casey Schaufler (1):
smack updates
Christian Brauner (1):
thread updates
Christoph Hellwig (2):
dma-mapping updates
dma-mapping helpers
Corey Minyard (1):
IPMI updates
Damien Le Moal (1):
zonefs update
Dan Williams (1):
libnvdimm updates
Daniel Lezcano (1):
thermal updates
Daniel Thompson (1):
kgdb updates
Darrick Wong (6):
xfs updates
DAX updates part one
DAX updates part two
DAX updates part three
xfs fix
iomap fix
Dave Airlie (4):
drm updates
drm fixes
drm msm updates
drm fixes
David Howells (4):
keyring updates
AFS updates
AFS fixes
notification queue
David Kleikamp (1):
JFS update
David Miller (4):
networking updates
sparc updates
networking fixes
networking fixes
David Sterba (2):
btrfs updates
btrfs updates
David Teigland (1):
dlm updates
Dmitry Torokhov (1):
input updates
Dominik Brodowski (1):
pcmcia updates
Dominique Martinet (1):
9p update
Eric Biederman (4):
proc updates
execve updates
proc fix
proc fix
Eric Biggers (2):
fscrypt updates
fsverity updates
Gao Xiang (1):
erofs updates
Geert Uytterhoeven (1):
m68k updates
Greg KH (5):
USB/PHY driver updates
tty/serial driver updates
staging/IIO driver updates
driver core updates
char/misc driver updates
Greg Ungerer (1):
m68knommu updates
Guenter Roeck (1):
hwmon updates
Helge Deller (1):
parsic updates
Herbert Xu (2):
crypto updates
crypto fixes
Ilya Dryomov (1):
ceph updates
Ingo Molnar (16):
kprobes updates
RCU updates
locking updates
objtool updates
perf updates
EFI updates
SMP updates
x86 boot updates
x86 build updates
x86 cleanups
x86 cpu updates
x86 FPU updates
x86 platform updates
x86 vdso updates
scheduler updates
x86 mm updates
Jaegeuk Kim (1):
f2fs updates
James Bottomley (2):
SCSI updates
more SCSI updates
James Morris (1):
lockdown update
Jan Kara (2):
fsnotify updates
ext2 and reiserfs cleanups
Jarkko Sakkinen (1):
tpm updates
Jason Gunthorpe (2):
hmm updates
rdma updates
Jassi Brar (1):
mailbox updates
Jean Delvare (1):
dmi update
Jens Axboe (5):
block updates
block driver updates
io_uring updates
block fixes
io_uring fixes
Jessica Yu (1):
module updates
Jiri Kosina (2):
HID updates
livepatching updates
Joerg Roedel (2):
iommu updates
iommu driver directory structure cleanup
John Johansen (1):
apparmor updates
Jon Mason (1):
NTB updates
Jonathan Corbet (2):
documentation updates
more documentation updates
Juergen Gross (1):
xen updates
Kees Cook (1):
pstore updates
Lee Jones (2):
MFD updates
backlight updates
Ley Foon Tan (1):
nios2 update
Linus Walleij (2):
GPIO updates
pin control updates
Mark Brown (3):
regmap updates
spi updates
regulator updates
Masahiro Yamada (3):
Kbuild updates
Kconfig updates
more Kbuild updates
Matt Turner (1):
alpha updates
Mauro Carvalho Chehab (2):
media updates
more media updates
Max Filippov (1):
Xtensa updates
Micah Morton (1):
SafeSetID update
Michael Ellerman (2):
powerpc updates
powerpc fix
Michael Tsirkin (1):
virtio updates
Mike Marshall (1):
orangefs updates
Mike Snitzer (1):
device mapper updates
Miklos Szeredi (2):
overlayfs updates
fuse updates
Mimi Zohar (2):
integrity updates
integrity fix
Namjae Jeon (1):
exfat update
Palmer Dabbelt (2):
RISC-V updates
more RISC-V updates
Paolo Bonzini (2):
kvm updates
more KVM updates
Paul Moore (2):
audit updates
SELinux updates
Pavel Machek (1):
LED updates
Petr Mladek (2):
printk updates
printk fix
Rafael Wysocki (5):
power management updates
ACPI updates
PNP update
more power management updates
more ACPI updates
Rich Felker (1):
arch/sh updates
Richard Weinberger (3):
MTD updates
UBI update
UML updates
Rob Herring (2):
devicetree updates
Devicetree fixes
Russell King (2):
ARM updates
ARM fixes
Sebastian Reichel (1):
power supply and reset updates
Shuah Khan (2):
kselftest updates
Kunit updates
Stafford Horne (1):
OpenRISC update
Stephen Boyd (1):
clk updates
Steve French (2):
cifs updates
more cifs updates
Steven Rostedt (1):
tracing updates
Takashi Iwai (2):
sound updates
sound fixes
Ted Ts'o (1):
ext4 updates
Tejun Heo (2):
cgroup updates
workqueue updates
Tetsuo Handa (1):
tomoyo update
Thierry Reding (1):
pwm updates
Thomas Bogendoerfer (1):
MIPS updates
Thomas Gleixner (10):
irq updates
timer updates
x86 timer updates
x86 srbds fixes
timer fix
more x86 updates
atomics rework
the Kernel Concurrency Sanitizer
x86 entry updates
x86 RAS updates
Ulf Hansson (1):
MMC updates
Vasily Gorbik (1):
s390 updates
Vinod Koul (1):
dmaengine updates
Wei Liu (1):
hyper-v updates
Will Deacon (3):
arm64 updates
READ/WRITE_ONCE rework
arm64 fixes
Wim Van Sebroeck (1):
watchdog updates
Wolfram Sang (1):
i2c updates