Archives For kernel

Linux Kernel

Linus Torvalds announced the released of Kernel 5.0 yesterday afternoon. He wrote on lkml.org:

Ok, so the last week of the 5.0 release wasn’t entirely quiet, but it’s a lot smaller than rc8 was, and on the whole I’m happy that I delayed a week and did an rc8.

It turns out that the actual patch that I talked about in the rc8 release wasn’t the worrisome bug I had thought: yes, we had an uninitialized variable, but the reason we hadn’t immediately noticed it due to a warning was that the way gcc works, the compiler had basically initialized it for us to the right value. So the same thing that caused not the lack of warning, also effectively meant that the fix was a no-op in practice.

But hey, we had other bug fixes come in that actually did matter, and the uninitialized variable _could_ have been a problem with another compiler.

Regardless – all is well that ends well. We have more than a handful of real fixes in the last week, but not enough to make me go “Hmm, things are really unstable”. In fact, at least two thirds of the patches are marked as being fixes for previous releases, so it’s not like 5.0 itself looks bad.

Changes in Linux Kernel 5.0 include:

  • AMD Radeon FreeSync support
  • Logitech High Resolution Scrolling support
  • Raspberry Pi Touchscreen support out of the box.
  • New console font for HiDPI and retina screens.
  • Initial support for NVIDIA Turing GPUs
  • And numerous other changes

How to Install Linux Kernel 5.0 in Ubuntu:

The mainline kernels do not include any Ubuntu-provided drivers or patches. They are not supported and are not appropriate for production use

The mainline kernel packages for Linux 5.0 are available for download at the link below:

Download Kernel 5.0

Depends on your OS type, download and install the packages in turns:

  1. linux-headers-5.0.0-xxxxxx_all.deb
  2. linux-headers-5.0.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb
  3. linux-modules-5.0.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb
  4. linux-image-xxx-5.0.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb

Select generic for common system, and lowlatency for a low latency system (e.g. for recording audio), amd64 for 64bit system, i386 for 32bit system, or armhf, arm64, etc for other OS types.

Alternatively you can download and install the kernel binaries via terminal commands (Ctrl+Alt+T):

For 64-bit OS:

cd /tmp/

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000_5.0.0-050000.201903032031_all.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-image-unsigned-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-modules-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb

sudo dpkg -i *.deb

for 32-bit OS:

cd /tmp/

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000_5.0.0-050000.201903032031_all.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-image-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-modules-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb

sudo dpkg -i *.deb

Once installed, restart your computer and enjoy!

Uninstall Linux Kernel 5.0:

Restart your machine and select boot with the previous kernel in boot menu ‘Grub2 -> Advanced Option for Ubuntu’. Then run command to remove Linux Kernel 5.0:

sudo dpkg --purge linux-image-5.0.0-050000-generic linux-image-unsigned-5.0.0-050000-generic

Linux Kernel

Linux Kernel 4.20 was released a few days ago. Linus Torvalds announced:

Let’s face it, last week wasn’t quite as quiet as I would have hoped for, but there really doesn’t seem to be any point to delay 4.20 because everybody is already taking a break.

And it’s not like there are any known issues, it’s just that the shortlog below is a bit longer than I would have wished for. Nothing screams “oh, that’s scary”, though.

And as part of the “everybody is already taking a break”, I can happily report that I already have quite a few early pull requests in my inbox. I encouraged people to get it over and done with, so that people can just relax over the year-end holidays. In fact, I probably won’t start pulling for a couple of days, but otherwise let’s just try to keep to the normal merge window schedule, even if most people hopefully won’t even be back until over the merge window is over.

As to the details of this last week of 4.20 – most of it is networking (drivers, core networking fixes, bpf). There’s a few other non-network driver updates too, and a revert series of some of the x86 inline asm changes that were obviated by upcoming compiler support.

… …

Changes in Linux 4.20 include:

  • AMD Picasso APU support as well as Raven 2 APU support
  • Intel DRM driver has full PPGTT support for Haswell/Ivy/Valley View hardware.
  • The open-source NVIDIA Nouveau driver has initial HDMI 2.0 support.
  • The NVIDIA Xavier “Tegra194” SoC has initial display support.
  • Support for the Hygon Dhyana CPUs
  • Intel 2.5G Ethernet support via the new “IGC” driver.
  • LG Gram laptop support
  • File systems improvements, drivers updates, and many other changes.

How to Install Linux Kernel 4.20 in Ubuntu:

For easy way, there are a few third party tools, e.g., UKTools and Ukuu, make it easy to install the latest Kernel in Ubuntu.

The mainline kernels do not include any Ubuntu-provided drivers or patches. They are not supported and are not appropriate for production use

You can also manually download the .deb binary packages:

Download Kernel 4.20

Depends on your OS type, download and install the packages in turns:

  1. linux-headers-4.20.0-xxxxxx_all.deb
  2. linux-headers-4.20.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb
  3. linux-modules-4.20.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb
  4. linux-image-xxx-4.20.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb

Select generic for common system, and lowlatency for a low latency system (e.g. for recording audio), amd64 for 64bit system, i386 for 32bit system, or armhf, arm64, etc for other OS types.

Also you can download and install the kernel binaries via terminal commands (Ctrl+Alt+T):

For 64-bit OS:

cd /tmp/

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-headers-4.20.0-042000_4.20.0-042000.201812232030_all.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-headers-4.20.0-042000-generic_4.20.0-042000.201812232030_amd64.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-image-unsigned-4.20.0-042000-generic_4.20.0-042000.201812232030_amd64.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-modules-4.20.0-042000-generic_4.20.0-042000.201812232030_amd64.deb

sudo dpkg -i *.deb

for 32-bit OS:

cd /tmp/

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-headers-4.20.0-042000_4.20.0-042000.201812232030_all.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-headers-4.20.0-042000-generic_4.20.0-042000.201812232030_i386.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-image-4.20.0-042000-generic_4.20.0-042000.201812232030_i386.deb

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-modules-4.20.0-042000-generic_4.20.0-042000.201812232030_i386.deb

sudo dpkg -i *.deb

Once installed, restart your computer and enjoy!

Uninstall Linux Kernel 4.20:

Restart your machine and select boot with the previous kernel in boot menu ‘Grub2 -> Advanced Option for Ubuntu’. Then run command to remove Linux Kernel 4.20.0:

sudo dpkg --purge linux-image-4.20.0-042000-generic linux-image-unsigned-4.20.0-042000-generic

Linux Kernel

Linus Torvalds finally announced the release of Linux Kernel 4.18 yesterday afternoon. He wrote in lkml.org:

It was a very calm week, and arguably I could just have released on schedule last week, but we did have some minor updates. Mostly networking, but some vfs race fixes (mentioned in the rc8 announment
as “pending”) and a couple of driver fixes (scsi, networking, i2c). Some other minor random things (arm crypto fix, parisc memory ordering fix). Shortlog appended for the (few) details.

Some of these I was almost ready to just delay to until the next merge window, but they were marked for stable anyway, so it would just have caused more backporting. The vfs fixes are for old races that are
really hard to hit (which is obviously why they are old and weren’t noticed earlier). Some of them _have_ been seen in real life, some of them probably need explicit help to ever trigger (ie artificial delays
just to show that “yes, this can actually happen in theory”).

Changes in kernel 4.18 include:

  • Initial support for the Qualcomm Snapdragon 845 SoC.
  • Various power management improvements to AMDGPU
  • Initial NVIDIA GV100 Volta support within Nouveau DRM driver
  • 32-bit ARM finally gets mitigated for Spectre V1/V2
  • Various new sound chips support
  • USB 3.2 and USB Type-C improvements.
  • And many other changes.

How to Install Linux Kernel 4.18 in Ubuntu:

There a few tools, e.g., UKTools and Ukuu, make it easy to install the latest Kernel in Ubuntu.

You can also manually download the Kernel 4.18 Ubuntu binary packages at:

Download Kernel 4.18

Depends on your OS type, download and install the packages in turns:

  1. linux-headers-4.18.0-xxxxxx_all.deb
  2. linux-headers-4.18.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb
  3. linux-modules-4.18.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb
  4. linux-image-xxx-4.18.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb

Select generic for common system, and lowlatency for a low latency system (e.g. for recording audio), amd64 for 64bit system, i386 for 32bit system, or armhf, arm64, etc for other OS types.

Also you can download and install the kernel binaries via terminal commands:

For 64-bit OS:

cd /tmp/

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.18/linux-headers-4.18.0-041800_4.18.0-041800.201808122131_all.deb

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.18/linux-headers-4.18.0-041800-generic_4.18.0-041800.201808122131_amd64.deb

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.18/linux-image-unsigned-4.18.0-041800-generic_4.18.0-041800.201808122131_amd64.deb

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.18/linux-modules-4.18.0-041800-generic_4.18.0-041800.201808122131_amd64.deb

sudo dpkg -i *.deb

for 32-bit OS:

cd /tmp/

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.18/linux-headers-4.18.0-041800_4.18.0-041800.201808122131_all.deb

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.18/linux-headers-4.18.0-041800-generic_4.18.0-041800.201808122131_i386.deb

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.18/linux-image-4.18.0-041800-generic_4.18.0-041800.201808122131_i386.deb

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.18/linux-modules-4.18.0-041800-generic_4.18.0-041800.201808122131_i386.deb

sudo dpkg -i *.deb

Once installed, restart your computer and enjoy!

Uninstall Linux Kernel 4.17:

Restart your machine and select boot with the previous kernel in boot menu ‘Grub2 -> Advanced Option for Ubuntu’. Then run command to remove Linux Kernel 4.18.0:

sudo dpkg --purge linux-image-4.18.0-041800-generic linux-image-unsigned-4.18.0-041800-generic

Linux Kernel

Linux Kernel 4.16 was released yesterday. Linus Torvalds announced in lkml.org:

So the take from final week of the 4.16 release looks a lot like rc7, in that about half of it is networking. If it wasn’t for that, it would all be very small and calm.

We had a number of fixes and cleanups elsewhere, but none of it made me go “uhhuh, better let this soak for another week”. And davem didn’t think the networking was a reason to delay the release, so I’m not.

End result: 4.16 is out, and the merge window for 4.17 is open and I’ll start doing pull requests tomorrow.

Outside of networking, most of the last week was various arch fixlets (powerpc, arm, x86, arm64), some driver fixes (mainly scsi and rdma) and misc other noise (documentation, vm, perf).

The appended shortlog gives an overview of the details (again, this is only the small stuff in the last week, if you want the full 4.16 changelog you’d better get the git tree and filter by your area of interest).

Linux Kernel 4.16 release highlights:

  • Spectre / Meltdown mitigation & other security updates.
  • L2 CDP support for L2 cache partitioning on Intel CPUs
  • Correct AMD Zen temperature reporting for the Ryzen Threadripper 1900X processor.
  • P-State driver support for Skylake X servers.
  • POWER memory protection keys support
  • Oracle DAX driver for SPARC co-processor
  • Jailhouse guest support for non-root users

How to Install Kernel 4.16 in Ubuntu:

Other than using a graphical tool UKUU to install the latest mainline kernel packages, following steps will tell you how to manually download and install it in all current Ubuntu releases.

The mainline kernels do not include any Ubuntu-provided drivers or patches. They are not supported and are not appropriate for production use.

The mainline kernel PPA has made the new kernel binaries for Ubuntu, available for download at the link below:

Download Kernel 4.16 (.deb)

Depends on your OS type, download and install the packages in turns:

  1. linux-headers-4.16.0-xxxxxx_all.deb
  2. linux-headers-4.16.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb
  3. linux-image-4.16.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb

Select generic for common system, and lowlatency for a low latency system (e.g. for recording audio), amd64 for 64bit system, i386 for 32bit system, or armhf, arm64, etc for other OS types.

To get the Kernel 4.16 from the command console, run the commands below one by one:

For 64-bit OS:

cd /tmp/

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.16/linux-headers-4.16.0-041600_4.16.0-041600.201804012230_all.deb

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.16/linux-headers-4.16.0-041600-generic_4.16.0-041600.201804012230_amd64.deb

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.16/linux-image-4.16.0-041600-generic_4.16.0-041600.201804012230_amd64.deb

sudo dpkg -i *.deb

for 32-bit OS:

cd /tmp/

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.16/linux-headers-4.16.0-041600_4.16.0-041600.201804012230_all.deb

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.16/linux-headers-4.16.0-041600-generic_4.16.0-041600.201804012230_i386.deb

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.16/linux-image-4.16.0-041600-generic_4.16.0-041600.201804012230_amd64.deb
sudo dpkg -i *.deb

After installed these .debs, restart and enjoy!

Uninstall Linux Kernel 4.16:

Start/restart your machine and select boot with the previous kernel in Grub2 -> Advanced menu. Then use Ubuntu Tweak, or other system tool to remove the Kernel 4.16, or you may see this how to remove old kernels tutorial.

Linux Kernel

After 9 release candidates, Linux Kernel 4.15 stable was finally announced earlier today. Kernel 4.15 is the first to be fully patched against the Meltdown and Spectre security vulnerabilities.

After a release cycle that was unusual in so many (bad) ways, this last week was really pleasant. Quiet and small, and no last-minutepanics, just small fixes for various issues. I never got a feeling that I’d need to extend things by yet another week, and 4.15 looks fine to me.“, Linus Torvalds announced.

What’s new in Kernel 4.15:

  • support for the RISC-V architecture
  • support for AMD Secure Encrypted Virtualization
  • support for the User-Mode Instruction Prevention feature on Intel CPUs
  • DRM leasing support for benefiting VR use-cases on Linux.
  • The HTC Vive VR headset treated “Non-Desktop”
  • Intel Coffee Lake graphics are now considered stable
  • Nouveau driver adds support for GeForce GTX 1000 “Pascal” temperature monitoring.

How to Install Kernel 4.15 in Ubuntu:

Other than using a graphical tool UKUU to install the latest mainline kernel packages, following steps will tell you how to manually download and install it in all current Ubuntu releases.

The mainline kernels do not include any Ubuntu-provided drivers or patches. They are not supported and are not appropriate for production use.

The mainline kernel PPA has made the new kernel binaries for Ubuntu, available for download at the link below:

Download Kernel 4.15 (.deb)

Depends on your OS type, download and install the packages in turns:

  1. linux-headers-4.15.0-xxxxxx_all.deb
  2. linux-headers-4.15.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb
  3. linux-image-4.15.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb

Select generic for common system, and lowlatency for a low latency system (e.g. for recording audio), amd64 for 64bit system, i386 for 32bit system, or armhf, arm64, etc for other OS types.

To get the Kernel 4.15 from the command console, run the commands below one by one:

For 64-bit OS:

cd /tmp/

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15/linux-headers-4.15.0-041500_4.15.0-041500.201801282230_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15/linux-headers-4.15.0-041500-generic_4.15.0-041500.201801282230_amd64.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15/linux-image-4.15.0-041500-generic_4.15.0-041500.201801282230_amd64.deb

sudo dpkg -i *.deb

for 32-bit OS:

cd /tmp/

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15/linux-headers-4.15.0-041500_4.15.0-041500.201801282230_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15/linux-headers-4.15.0-041500-generic_4.15.0-041500.201801282230_i386.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15/linux-image-4.15.0-041500-generic_4.15.0-041500.201801282230_i386.deb

sudo dpkg -i *.deb

After installed these .debs, restart and enjoy!

Uninstall Linux Kernel 4.15:

Start/restart your machine and select boot with the previous kernel in Grub2 -> Advanced menu. Then use Ubuntu Tweak, or other system tool to remove the Kernel 4.15, or you may see this how to remove old kernels tutorial.