Thread user_data through callbacks