Use GL_EXT_texture_storage or GL_APPLE_texture_max_level if possible