... that's only assuming you're going to execute your light shaders at sample frequency, which is a bit excessive in most cases! Normally you only *want* to execute it at sample frequency for incoherent pixels, as I believe Humus' latest demo does.This method lowers the image quality (very) slightly, as you only store one depth value per pixel from each polygon (shader is run only once for each pixel inside the polygon). MSAA depth buffer stores one depth value per sample on every pixel (it's not replicated like color outputs are).
Furthermore I can't see the difference being at all significant in practice... plus isn't there a way in D3D10.1 to declare an interpolant as being at sample frequency (or maybe just to run the whole shader at sample frequency) IIRC?
Anyways it's convenient to reuse the depth buffer as part of your G-buffer since you're generating it anyways, but it's certainly not crippling on D3D10 to not have that convenience. In fact there are some (small) advantages to storing linear view space Z rather than post-projection Z, not that they necessary outweigh the bandwidth savings of one less G-buffer value, small as they may be too.