]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
drm/xe/client: bo->client does not need bos_lock
authorTejas Upadhyay <tejas.upadhyay@intel.com>
Wed, 5 Feb 2025 05:10:42 +0000 (10:40 +0530)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Mon, 10 Feb 2025 16:39:08 +0000 (11:39 -0500)
bos_lock is to protect list of bos used by client, it is
not required to protect bo->client so bring it outside of
bos_lock.

Fixes: b27970f3e11c ("drm/xe: Add tracking support for bos per client")
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
Reviewed-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250205051042.1991192-1-tejas.upadhyay@intel.com
Signed-off-by: Nirmoy Das <nirmoy.das@intel.com>
(cherry picked from commit f74fd53ba34551b7626193fb70c17226f06e9bf1)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/xe/xe_drm_client.c

index 63f30b6df70b91e544e629f0a06d1a775501494b..2d4874d2b922539b9ccf5f098a7cc2a80b1f9719 100644 (file)
@@ -135,8 +135,8 @@ void xe_drm_client_add_bo(struct xe_drm_client *client,
        XE_WARN_ON(bo->client);
        XE_WARN_ON(!list_empty(&bo->client_link));
 
-       spin_lock(&client->bos_lock);
        bo->client = xe_drm_client_get(client);
+       spin_lock(&client->bos_lock);
        list_add_tail(&bo->client_link, &client->bos_list);
        spin_unlock(&client->bos_lock);
 }