I was happy when I saw 3.16 working – kind of, at least. The T400 has an Intel GM45 chipset which is supported by the drm i915 driver. The issue with 3.16 was that GNOME 3 kept using the fallback interface, not on every boot, but on most.
I tried to track down the issue and found something in dmesg:
22:21:01 laptop kernel: [ 0.964036] [drm:init_ring_common] *ERROR* render ring initialization failed ctl 0001f001 (valid? 1) head f4403374 tail 00000000 start 000fd000 [expected 000fd000]
So here it is, in case anyone needs my (quite minimal) kernel config for my Lenovo T400. Please note that IPv6 is not configured.
This kernel works flawlessly on my venerable Lenovo T400.