Change routines which set host to dirty to also check for device dirty on entry. This prevents a common bug where both dirty bits end up being set. (And prevents reading stale data when a buffer has been access on the device last.) An alternative design would be to have move dirty bit management out to a higher, explicitly written, level. The current design feels like the worst of both worlds in that it automatically manages half the state but not the other half.
Change routines which set host to dirty to also check for device dirty
on entry. This prevents a common bug where both dirty bits end up
being set. (And prevents reading stale data when a buffer has been
access on the device last.) An alternative design would be to have
move dirty bit management out to a higher, explicitly written,
level. The current design feels like the worst of both worlds in that
it automatically manages half the state but not the other half.

Removed a memset to zero of the buf field which is redundant due to
the default initializer on buf.


Former-commit-id: eab984f18bb7cddfe99659b8922c62375f206dfb
Trass3r/Halide,darkbuck/Halide,Trass3r/Halide,Trass3r/Halide,darkbuck/Halide,darkbuck/Halide,Trass3r/Halide,Trass3r/Halide,Trass3r/Halide,darkbuck/Halide,darkbuck/Halide,darkbuck/Halide,Trass3r/Halide,darkbuck/Halide