For my home non-production 16.04 LTS machines I made the following decision:
I'll stay on 4.4.0-104 (and 4.4.0-103 as fallback) and 20170707 intel-microcode for complete and safe Meltdown and Spectre fixes which do not have side-effects (I do not mean speed here).
So I removed new kernels, reinstalled 103 and 104 and pinned corresponding packages.
Warning: do not follow steps below if you are using Ubuntu on production server or enterprise desktop.
Here are my steps to achieve this:
Remove new kernels
sudo apt-get purge linux-tools-generic linux-headers-generic linux-image-generic \
linux-headers-4.4.0-109 linux-headers-4.4.0-109-generic linux-image-4.4.0-109-generic linux-image-extra-4.4.0-109-generic linux-tools-4.4.0-109 linux-tools-4.4.0-109-generic \
linux-headers-4.4.0-110 linux-headers-4.4.0-110-generic linux-image-4.4.0-110-generic linux-image-extra-4.4.0-110-generic linux-tools-4.4.0-110 linux-tools-4.4.0-110-generic \
linux-headers-4.4.0-111 linux-headers-4.4.0-111-generic linux-image-4.4.0-111-generic linux-image-extra-4.4.0-111-generic linux-tools-4.4.0-111 linux-tools-4.4.0-111-generic \
linux-headers-4.4.0-112 linux-headers-4.4.0-112-generic linux-image-4.4.0-112-generic linux-image-extra-4.4.0-112-generic linux-tools-4.4.0-112 linux-tools-4.4.0-112-generic
Install 4.4.0-104 and 4.4.0-103 (as fallback)
sudo apt-get install linux-headers-4.4.0-104 linux-headers-4.4.0-104-generic \
linux-image-4.4.0-104-generic linux-image-extra-4.4.0-104-generic \
linux-tools-4.4.0-104 linux-tools-4.4.0-104-generic linux-headers-4.4.0-103 linux-headers-4.4.0-103-generic \
linux-image-4.4.0-103-generic linux-image-extra-4.4.0-103-generic \
linux-tools-4.4.0-103 linux-tools-4.4.0-103-generic
Install all 4.4.0-104 packages from cache for sure
sudo dpkg -i /var/cache/apt/archives/*4.4.0-104*.deb
Pin kernel-related package versions
cat <<EOF | sudo tee /etc/apt/preferences.d/pin-kernels
Package: linux-headers-4.4.0-104
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: linux-headers-4.4.0-104-generic
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: linux-headers-generic
Pin: version 4.4.0.104.109
Pin-Priority: 1337
Package: linux-image-4.4.0-104-generic
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: linux-image-extra-4.4.0-104-generic
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: linux-image-generic
Pin: version 4.4.0.104.109
Pin-Priority: 1337
Package: linux-tools-4.4.0-104
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: linux-tools-4.4.0-104-generic
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: linux-libc-dev:i386
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: linux-libc-dev
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: linux-tools-common
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: linux-source
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: linux-source-4.4.0
Pin: version 4.4.0-104.127
Pin-Priority: 1337
Package: intel-microcode
Pin: version 3.20170707.1~ubuntu16.04.0
Pin-Priority: 1337
EOF
When normal patches will be released you can simply remove pin and install corresponding packages with the following commands:
sudo rm /etc/apt/preferences.d/pin-kernels
sudo apt-get update
sudo apt-get install linux-tools-generic linux-headers-generic linux-image-generic
sudo apt-get upgrade
sudo apt-get dist-upgrade
apport-bug linux-image-4.4.0-112-generic
.