openssd: add locking for gc

Now that we can perform gc asynchronious, lets protect gc from
gc'ing the same block during a race condition.