bugfix: the arc cache needs to be updated after releasing the object lock

a deadlock would happen otherwise because calls to arc_move() or arc_remove()
end up calling one of the callbacks which will pretend to lock the object again
and since it's not recursive (and it's better to keep it like this) it deadlocks