chown only runs when needed now