util/tc: make clear calls async
these can be trivially made async because the surface param is part of the current fb state, guaranteeing its lifetime for the duration of the call
these can be trivially made async because the surface param is part of the current fb state, guaranteeing its lifetime for the duration of the call