Problem with multi-pass B&S turned out to be bug in CL::Buffer.
Some event dependency tweaks in multi-pass B&S.