Well I think for this case the solution is simple: Tiling not allowed if userspace is too dumb to properly round the buffer up so it fulfills whatever odd requirement the hw has. I think hiding the fact that certain buffers need more backing storage than a naive userspace might assume is ripe for ugly problems down the road.
That depends a lot upon the interface. One good reason for hiding it for example is that if you have hardware where a limit goes away (or worse yet appears) in some rev of the device or an erratum you don't have to issue a new X server.
For some of the other interfaces like the dumb fb api it's even more important the code doesn't know.
I don't however think the helper should know about padding because I think a driver can implement its own function which wraps the helper and then adds the padding itself ?
Alan