The sys.tar.gz from https://ftp.eu.openbsd.org/pub/OpenBSD/7.7/ (normally unpacked into /usr/src/sys on an OpenBSD machine) represents the entire kernel source code of OpenBSD 7.7. (The userland and compiler are in src.tar.gz, Xorg is in xenocara.tar.gz, and ports are in ports.tar.gz.)
It has grown to 634MB unpacked for the entire kernel source tree.
But the vast majority of this growth is attributable to the sys/dev/pci/drm/amd directory, which is AMD Direct Rendering Manager, standing at 499MB, with the include files at sys/dev/pci/drm/amd/include being 458MB, the biggest of which is the asic_reg directory.
499/634 is 79%.
It follows that 79% of OpenBSD kernel by source code is dedicated to AMD's DRM implementation. Note that we're talking about the source code, NOT compiled code.
It's a huge part of Linux, too, over at drivers/gpu/drm/amd/include/asic_reg:
In OpenBSD, the last release before the explosive growth, was OpenBSD 6.5 (Apr 2019) with sys.tar.gz at 20MB. With OpenBSD 6.6 (Oct 2019), it went to 30MB, now with 7.7 (Apr 2025) it's 64MB compressed.
The sys.tar.gz from https://ftp.eu.openbsd.org/pub/OpenBSD/7.7/ (normally unpacked into /usr/src/sys on an OpenBSD machine) represents the entire kernel source code of OpenBSD 7.7. (The userland and compiler are in src.tar.gz, Xorg is in xenocara.tar.gz, and ports are in ports.tar.gz.)
It has grown to 634MB unpacked for the entire kernel source tree.
But the vast majority of this growth is attributable to the sys/dev/pci/drm/amd directory, which is AMD Direct Rendering Manager, standing at 499MB, with the include files at sys/dev/pci/drm/amd/include being 458MB, the biggest of which is the asic_reg directory.
499/634 is 79%.
It follows that 79% of OpenBSD kernel by source code is dedicated to AMD's DRM implementation. Note that we're talking about the source code, NOT compiled code.
It's a huge part of Linux, too, over at drivers/gpu/drm/amd/include/asic_reg:
https://github.com/torvalds/linux/tree/master/drivers/gpu/dr...
In OpenBSD, the last release before the explosive growth, was OpenBSD 6.5 (Apr 2019) with sys.tar.gz at 20MB. With OpenBSD 6.6 (Oct 2019), it went to 30MB, now with 7.7 (Apr 2025) it's 64MB compressed.
11k lines of #defines
Is this truly necessary?
https://kernel.googlesource.com/pub/scm/linux/kernel/git/tor...
https://github.com/torvalds/linux/blob/master/drivers/gpu/dr...
The last file in nbio is a header file with 38900 lines — a single file of 3.92 MB.
There's actually another one in nbio that's 16MB:
https://github.com/torvalds/linux/blob/master/drivers/gpu/dr...