Archives For kernel

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.

Linux Kernel

Linux Kernel 4.14 stable was released yesterday. Linus Torvalds announced that:

No surprises this week, although it is probably worth pointing out how the 0day robot has been getting even better (it was very useful before, but Fengguang has been working on making it even better, and reporting the problems it has found).

Sure, some of the new reports turned out to be just 0day doing things that just don’t work (ie KASAN with old gcc versions, but also doing things like loading old ISA drivers in situations that just don’t make sense – remember when you couldn’t even ask if the hardware existed or not, and just had to know), but even then it’s been all good.

The appended shortlog is obviously only for the (small) haul since rc8, and it really is tiny. Not very many commits, and they are small. The biggest thing that stands out in the diffstat is the “leaking_addresses” perl script, which is actually under active development, but I put the first version in for 4.14 just so that people could see that initial state and start looking at the end result and perhaps ask themselves “should my code make these kernel addresses visible to user space”.

How to Install Kernel 4.14 in Ubuntu / Linux Mint:

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.14 (.deb)

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

  1. linux-headers-4.14.0-xxxxxx_all.deb
  2. linux-headers-4.14.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb
  3. linux-image-4.14.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.14 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.14/linux-headers-4.14.0-041400_4.14.0-041400.201711122031_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.14/linux-headers-4.14.0-041400-generic_4.14.0-041400.201711122031_amd64.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.14/linux-image-4.14.0-041400-generic_4.14.0-041400.201711122031_amd64.deb

sudo dpkg -i *.deb

for 32-bit OS:

cd /tmp/

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.14/linux-headers-4.14.0-041400_4.14.0-041400.201711122031_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.14/linux-headers-4.14.0-041400-generic_4.14.0-041400.201711122031_i386.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.14/linux-image-4.14.0-041400-generic_4.14.0-041400.201711122031_i386.deb

sudo dpkg -i *.deb

After installed these .debs, restart and enjoy!

For those who prefer a graphical tool, try Ukuu.

Uninstall Linux Kernel 4.13:

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.14, or you may see this how to remove old kernels tutorial.

Linux Kernel

After 7 release candidates, Linux Kernel 4.13 was finally released yesterday afternoon. Linus Torvalds announced that:

So last week was actually somewhat eventful, but not enough to push me to delay 4.13.

Most of the changes since rc7 are actually networking fixes, the bulk of them to various drivers. With apologies to the authors of said patches, they don’t look all that interesting (which is definitely exactly what you want just before a release). Details in the appended shortlog.

Note that the shortlog below is obviously only since rc7 – the _full_ 4.13 log is much too big to post and nobody sane would read it. So if you’re interested in all the rest of it, get the git tree and limit the logs to the files you are interested in if you crave details.

New Features in Kernel 4.13:

  • Initial Intel Cannonlake and Coffeelake support
  • Nouveau has HDMI 3D / stereoscopic support.
  • Radeon/AMDGPU DRM updates
  • New HID, audio hardware support
  • New input drivers support.
  • And lots of more other changes and improvements.

How to Install Kernel 4.13 in Ubuntu / Linux Mint:

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.13 (.deb)

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

  1. linux-headers-4.13.0-xxxxxx_all.deb
  2. linux-headers-4.13.0-xxx-generic(/lowlatency)_xxx_amd64(/i386).deb
  3. linux-image-4.13.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.13 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.13/linux-headers-4.13.0-041300_4.13.0-041300.201709031731_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers-4.13.0-041300-generic_4.13.0-041300.201709031731_amd64.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-image-4.13.0-041300-generic_4.13.0-041300.201709031731_amd64.deb

sudo dpkg -i *.deb

for 32-bit OS:

cd /tmp/

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers-4.13.0-041300_4.13.0-041300.201709031731_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-headers-4.13.0-041300-generic_4.13.0-041300.201709031731_i386.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/linux-image-4.13.0-041300-generic_4.13.0-041300.201709031731_i386.deb

sudo dpkg -i *.deb

After installed these .debs, restart and enjoy!

Uninstall Linux Kernel 4.13:

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.13, or you may see this how to remove old kernels tutorial.