drm/amdkfd: Slighly optimize 'init_doorbell_bitmap()'
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Tue, 23 Nov 2021 20:46:58 +0000 (21:46 +0100)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 1 Dec 2021 21:02:37 +0000 (16:02 -0500)
The 'doorbell_bitmap' bitmap has just been allocated. So we can use the
non-atomic '__set_bit()' function to save a few cycles as no concurrent
access can happen.

Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdkfd/kfd_process.c

index 67bb1654becc5ab0cd4570f9b28768f6445aa1dc..9158f9754a24283bb71e38f14f45a6c441444d18 100644 (file)
@@ -1446,9 +1446,9 @@ static int init_doorbell_bitmap(struct qcm_process_device *qpd,
 
        for (i = 0; i < KFD_MAX_NUM_OF_QUEUES_PER_PROCESS / 2; i++) {
                if (i >= range_start && i <= range_end) {
-                       set_bit(i, qpd->doorbell_bitmap);
-                       set_bit(i + KFD_QUEUE_DOORBELL_MIRROR_OFFSET,
-                               qpd->doorbell_bitmap);
+                       __set_bit(i, qpd->doorbell_bitmap);
+                       __set_bit(i + KFD_QUEUE_DOORBELL_MIRROR_OFFSET,
+                                 qpd->doorbell_bitmap);
                }
        }