Spent today trying to straighten out some of the ideas I had for dropping bind/unbind paths into drivers.
https://github.com/airlied/linux/commits/ttm-no-more-bind
I think it mostly trends to the right place, the bind/unbind paths all end up in drivers, you get a move/invalidate_notify or move_notify in drivers (only drm_gem_vram, still uses move_notify).
I've only booted nouveau with this so far, just looking to see if it's a good idea or maybe I've gone too far :-P
Dave.