OSDN Git Service

amdgpu: fix off by one in handle_table_insert
authorChristian König <christian.koenig@amd.com>
Wed, 15 Aug 2018 11:25:14 +0000 (13:25 +0200)
committerChristian König <christian.koenig@amd.com>
Thu, 16 Aug 2018 06:50:04 +0000 (08:50 +0200)
Stupid me, max_key must always be larger than key.

Signed-off-by: Christian König <christian.koenig@amd.com>
Bugzilla: https://bugs.freedesktop.org/107552
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com>
amdgpu/handle_table.c

index 15cd476..4fdd29d 100644 (file)
@@ -33,7 +33,7 @@ drm_private int handle_table_insert(struct handle_table *table, uint32_t key,
 {
        if (key >= table->max_key) {
                uint32_t alignment = sysconf(_SC_PAGESIZE) / sizeof(void*);
-               uint32_t max_key = ALIGN(key, alignment);
+               uint32_t max_key = ALIGN(key + 1, alignment);
                void **values;
 
                values = realloc(table->values, max_key * sizeof(void *));