revive pool alloc