Don't set a struct pointer to NULL before freeing its members. It's
hard to see what's happening due to a local pointer-to-pointer data
aliasing con->eh_data.
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
Tested-by: Philip Cox <Philip.Cox@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
 release:
        amdgpu_ras_release_bad_pages(adev);
 free:
-       con->eh_data = NULL;
        kfree((*data)->bps);
        kfree((*data)->bps_bo);
        kfree(*data);
+       con->eh_data = NULL;
 out:
        DRM_WARN("Failed to initialize ras recovery!\n");