> + token = luo_next_file_token;
> + luo_next_file_token++;

This seems like it should be an atomic fetch_add: I'm only seeing read locks up till this point

(Sorry if this is too nitpicky. Also for any formatting issues, I'm on mobile atm)