standard-readme compliant Donate with Bitcoin

Only for the Ubuntu 19.10 Eoan Ermine distribution!

Dragon Kernel

Dragon is a distro kernel replacement built using the best configuration and kernel sources for desktop, multimedia, and gaming workloads. These kernels are not supported and are not appropriate for production use. You assume all risks associated with the use of this kernel.

 The vanilla Linux kernel is a solid, high-quality Ford, Dragon Linux kernel is the latest Porsche model.
Each person has a choice and desires... (c) Andy Lavr

The faster and better we make Linux, the faster the fucking MS dies!


By default, Ubuntu systems run with the Ubuntu kernels provided by the Ubuntu repositories. However it is handy to be able to test with modified upstream kernels to help locate problems in the Ubuntu kernel patches, or to confirm that upstream has fixed a specific issue. To this end i now offer select upstream kernel builds. These kernels are made from modified kernel source but using the Ubuntu kernel configuration files. These are then packaged as Ubuntu .deb files for simple installation.

Ubuntu’s stock Linux kernel is fine for most users, but because Ubuntu follows a six-month release cycle, their kernels are always a release or three behind upstream. This can cause problems for users attempting to install Ubuntu on brand new hardware, or worse, force ultra-nerds to wait to play with the latest and greatest new kernel features!

All workstations that I use today — a Dell Precision M6600 (Sandy Bridge), Dell Inspiron N5010 (Westmere), Hewlett-Packard HP Z230 SFF Workstation/1906 (Haswell), - boots Dragon kernels instead. Dragon’s kernels mirror the upstream development cycle, and as a bonus, include a number of exciting optimizations and patches to improve performance and expose up-and-coming features.

One recent patch pulls in the ability to utilize architecture-specific GCC optimizations when compiling a kernel. In general, compiler optimizations may not have much effect on runtime performance, however with something as foundational as a kernel, tiny improvements might add up quickly.

The Linux kernel is a very large piece of software. It contains drivers and special handling for all sorts of disparate hardware combinations. By and large, this is a good thing; it allows all sorts of different machines to boot a Linux kernel without undo fiddling. Pre-compiled kernels — like Ubuntu stock or Dragon — keep most of this code around because they cannot anticipate the kind of hardware their users might be using.

Dragon Kernel semantic versioning and give your version numbers meaning:

  • Dragon Kernel no longer uses the stable version of the Linux kernel, all builds are based only on the mainline version.
major.minor[.maintenance-build]  (Example: 5.5.25-dragon)

major.minor is mainline kernel version,  maintenance build is Dragon kernel version.

Main Features

  • Experience a whole new way to interact with your PC like never before.
  • Full kernel adaptation to version Ubuntu Eoan.
  • Full kernel adaptation to build GCC 9.2.1
  • Optimized to take full advantage of high-performance.
  • Supports all recent 64-bit versions of Debian and Ubuntu-based systems.
  • Tuned CPU for Intel i5/i7/i9/Atom and AMD platform.
  • Caching, Virtual Memory Manager and CPU Governor Improvements.
  • General-purpose Multitasking Kernel.
  • Built on the latest GCC 9.2.1
  • DRM Optimized Performance.
  • Intel CPUFreq (P-State passive mode).
  • OpenZFS, APFS, exFAT , Reiser5 (Software Framework Release: 5.1.3).
  • Scheduler Kyber, MQ-Deadline, BFQ and Ureadahead support available.
  • Fixed and tune BTRFS file system

New features Dragon kernel distribution with custom settings:

  • FUTEX for PROTON and WINE: New futex operation, called FUTEX_WAIT_MULTIPLE.
  • ACPICA: Version 20200110 and support for FPDT table.
  • INTEL: Add driver for Intel Data Streaming Accelerator.
  • AMD: PassThru DMA Engine driver.
  • EDR: Error Disconnect Recover (EDR) support.
  • BLK-MQ: Add per-ctx tag caching.
  • ZONEFS: ZoneFS is a very simple file system exposing each zone of a zoned block device as a file.
  • BTRFS: Direct-io using IOMAP, LAZYTIME and ASYNC DISCARD support.
  • BOOT: Boot-time tracing and Extra boot config.
  • EFI: Embedded firmware support.
  • PROC: Proc support multiple private instances.
  • ACPI; Support Generic Initiator proximity domains.
  • AVL Interactive Tuning: Tunes the kernel for responsiveness at the cost of throughput and power usage.
  • Preemptible tree-based hierarchical RCU: RCU implementation for real-time systems.
  • Hard Kernel Preemption: Most aggressive kernel preemption before requiring real-time patches. Guarantees responsive system under high intensity mixed workload scenarios.
  • Budget Fair Queue: Proper disk scheduler optimized for desktop usage, high throughput / low latency.
  • TCP BBR Congestion Control: Fast congestion control, maximizes throughput, guaranteeing higher speeds than Cubic.
  • Smaller TX Net Queues: Reduced queue size on network devices to combat buffer bloat.
  • Ubuntu ureadahead Support: Compatible with Ubuntu’s readahead.
  • Binary Compatibility Cross Distro: Compatible with Debian Testing and newer as well as latest Ubuntu. Worst case, a package rebuild will be required on older distributions.
  • Distribution Kernel Drop-in Replacement: Proper distribution style configuration supporting broadest selection of hardware. Paravirtualization options enabled to reduce overhead under virtualization.
  • Minimal Debugging: Minimum number of debug options enabled to increase kernel throughput.

Full security support


View testing result log

Download Spectre and Meltdown mitigation detection tool

  • Indirect Branch Restricted Speculation (IBRS)
  • Indirect Branch Prediction Barrier (IBPB)

  • Spectre Variant 1, bounds check bypass
  • Spectre Variant 2, branch target injection
  • Variant 3, Meltdown, rogue data cache load
  • Variant 3a, rogue system register read
  • Variant 4, speculative store bypass
  • Foreshadow (SGX), L1 terminal fault
  • Foreshadow-NG (OS), L1 terminal fault
  • Foreshadow-NG (VMM), L1 terminal fault
  • Fallout, microarchitectural store buffer data sampling (MSBDS)
  • ZombieLoad, microarchitectural fill buffer data sampling (MFBDS)
  • RIDL, microarchitectural load port data sampling (MLPDS)
  • RIDL, microarchitectural data sampling uncacheable memory (MDSUM)

OpenZFS - Is a combined file system and logical volume manager



OpenZFS is an outstanding storage platform that encompasses the functionality of traditional filesystems, volume managers, and more, with consistent reliability, functionality and performance.

  • The module OpenZFS v0.8.3 is integrated into the Dragon kernel.

Warning! This kernel implement OpenZFS version 0.8.3.

Packages for this version strictly install from Dragon repository!

To install OpenZFS, head to a terminal and run the following command:

$ sudo add-apt-repository ppa:wip-kernel/zfs-linux
$ sudo apt-get update
$ sudo apt install libnvpair1linux libuutil1linux libzfs2linux libzpool2linux zfs-zed zfsutils-linux zfs-test
$ sudo apt purge zfs-dkms
$ sudo reboot

exFAT - Extended File Allocation Table


Wiki exFAT

Linux read/write kernel driver for the exFAT(FAT64), FAT12, FAT16 and vfat (FAT32) file systems

exFAT can be used where NTFS is not a feasible solution (due to data-structure overhead), but a greater file-size limit than the standard FAT32 file system (i.e. 4 GiB) is required. exFAT has been adopted by the SD Card Association as the default file system for SDXC cards larger than 32 GiB.

  • The module (exFAT v1.2.24-dragon) is integrated into the kernel.

  • Full adaptation to Kernel v5

  • Support exFat capacity more than 2TB

Enable exFAT module and install exfat-utils:

Add to /etc/initramfs-tools/modules:


For filesystem creation and manipulation beyond that of the mount command it is necessary to install the exfat-utils package:

$ sudo add-apt-repository ppa:wip-kernel/exfat-utils
$ sudo apt-get update
$ sudo apt install exfat-utils
$ sudo apt purge exfat-fuse

Usage, formatting:

To create an exFAT file system, use mkfs.exfat (or the mkexfatfs command, which is synonymous):

# mkfs.exfat
mkexfatfs 1.3.0
Usage: mkfs.exfat [-i volume-id] [-n label] [-p partition-first-sector] [-s sectors-per-cluster] [-V] <device>

For instance, to create it on a removable device present at /dev/sde1 while assigning "Flash" as the file system label:

# mkfs.exfat -n Flash /dev/sde1

Reiser5 - Local volumes with parallel scaling out.


Wiki Reiser5

Documentation Reiser5

Enable Reiser5 support

Note: that by Linux kernel and GNU utilities the testing stuff is still recognized as “Reiser4”. Make sure there is the following message in kernel logs:

“Loading Reiser4 (Software Framework Release: 5.X.Y)”

$ uname -a
Linux wip 5.5.25-dragon-sandybridge #202001170001 DRAGON SMP Fri Jan 17 11:55:55 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

$ dmesg | egrep Reiser
[    2.252217] Loading Reiser4 (Software Framework Release: 5.1.3). See for a description of Reiser4.

It is recommended and also the default to use the zstd1 plugin by formatting with the following options:

# mkfs.reiser4 -d -o create=reg40,compress=zstd1 /dev/sda5
Package Version: 2.0.0
Software Framework Release: 5.1.3
Copyright (C) 2001-2005 by Hans Reiser, licensing governed by reiser4progs/COPYING. 
Overriding the plugin profile by "create=reg40,compress=zstd1".
Block size 4096 will be used.
Linux 5.5.25-dragon-sandybridge is detected.
Volume uuid bb09160e-1b19-4eba-9b36-204c247014b2 will be used.
Reiser4 is going to be created on /dev/sda5.
(Yes/No): Yes
Discarding /dev/sda5 ... done
Creating reiser4 on /dev/sda5 ... done

# mount -t reiser4 -o noatime,discard /dev/sda5 /mnt/reiser4

or add to /etc/fstab

UUID=bb09160e-1b19-4eba-9b36-204c247014b2 /home/<user>/<directory>  reiser4 defaults,noauto,noatime,discard 0 2
# df -h | egrep sda5
/dev/sda5         20G         808K   20G            1% /mnt/reiser4

# volume.reiser4 -l
Package Version: 2.0.0
Software Framework Release: 5.1.3
Volume ID: bb09160e-1b19-4eba-9b36-204c247014b2 (Active)
Brick ID: ebed3d8e-d00f-4e40-88aa-502df49fe7d5, Device name: /dev/sda5

# dmesg | egrep reiser4
[    2.252217] Loading Reiser4 (Software Framework Release: 5.1.3). See for a description of Reiser4.
[ 2171.902191] reiser4[mount(18465)]: reiser4_register_subvol (fs/reiser4/init_volume.c:221)[edward-1932]:
[ 2171.903695] reiser4 (sda5): found disk format 5.1.3.
[ 2171.946880] reiser4 (/dev/sda5): using Write-Anywhere Transaction Model.
[ 2171.946886] reiser4: brick /dev/sda5 activated

Reiser5 Tools for kernel v5.5+

  • After installing the Dragon kernel, it is recommended to upgrade the reiser4progs package:

Package version (download from Dragon support site):

  • reiser4progs (2.0.0)

Kernel tested by LTP

Linux Test Project

Linux Test Project Information

Linux Test Project is a joint project started by SGI, developed and maintained by IBM, Cisco, Fujitsu, SUSE, Red Hat and others, that has a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The LTP testsuite contains a collection of tools for testing the Linux kernel and related features.

View dmesg output

Pre install Dragon Kernel:

Detailed explanation

First Step:

  • strong recomended update microcode for you cpu


Update Intel microcode for use IBRS/IBPB:


  • strong recomended update firmware for you system

Update Firmware for current Dragon kernel:


Update WiFi Firmware for current Dragon kernel:


Copyright © 2019 Dragon Team All rights reserved.