I upgraded from the Dell Vostro 3450 to Lenevo Thinkpad T480 about an year ago.

The Vostro was a very special laptop for me because it held up through all my undergraduate years. I used Dell Vostro 3450 for whopping five years, and except for slight overheating issue with Linux, it was a solid purchase. I needed a new laptop which would last me for similar time frame. I decided upon the T480 after reading multiple reviews and watching drop tests on Youtube. You should watch them too:

Linux Compatibility

Everything works fine on Linux. I use Fedora 29 XFCE edition. With TLP enabled, I get around 10 hours of battery backup when running Visual Studio Code, a hot-reloading server for React and a Django development server.  And, of course our favorite browser which likes to chug on RAM and battery: Chrome.

On stock CPU configuration, the fan is barely audible and the laptop stays super cool. I can notice considerable difference in temperature and fan sounds when I boot into Windows. Windows has been comparately noisy for me. It probably has to do with the fact that the stock configuration on Linux has a lower TDP. There are undervolting tools available on Github to set a higher TDP, but honestly I prefer a cooler laptop and the performance has been good enough for my development purposes.

Screen tearing issue

This was a minor issue with Linux. It's hard to describe what's it like. It almost looks as if there's a scratch of dead pixels along the half of the diagonal length of the screen.

To fix this, create or edit the file /etc/X11/xorg.conf.d/20-intel.conf and set its contents to:

Section "Device"
  Identifier  "Intel Graphics"
  Driver      "intel"
  Option      "TearFree" "true"
EndSection

T480 freezes randomly with FS errors

This was a scary issue. My laptop would freeze all of a sudden, and I would get file system errors. I was pretty much sure it's a hardware problem. Frantically searching with phrases like "nvme crashes", "ext4 fs error T480", and "nvme controller crash", however, brought me to a different conclusion. Many people have faced same or similar issues with NVMe drives as found here, here, here, here, here and here. Definitely, not a hardware issue.

Reason

I have a very limited understanding of Linux Kernels. Based on these bugs, the cause seems to be related with how power saving is handled for NVMe drives. It is likely that when the drive goes to the deepest power saving state, the kernel accidentally loses control of the NVMe controller.

Fix

To fix this, add the following to your GRUB_CMDLINE_LINUX parameter, and regenerate Grub config. On Ubuntu, you can edit /etc/default/grub and run update-grub. On Fedora, you would have to use grubby:

nvme_core.default_ps_max_latency_us=5500

Stable

The laptop has been very stable since. It's my daily driver, and one of the best investments I've ever made.