On my Lenovo ThinkPad E570 with a GeForce GTX 950M, vkCreateSwapchainKHR() returns VK_ERROR_OUT_OF_HOST_MEMORY with the Linux drivers 387.22, on Gentoo. The validation layers don’t complain.
The same code works with the Linux drivers 384.90 on my laptop, as well as with the 387.22 drivers on my desktop (with a GeForce GTX 1060 3GB). I.e. it’s the combination of 387.22 with the 950M that fails.
It’s related to new optimizations in 387 that were not properly taking the capabilities of some GPU SKUs into account, in particular for Optimus laptops.