From @tomeu 's series !3078 .. first patch needed a retype, the others more or less I could cherrypick. The last patch in that series doesn't apply anymore.