Avoid a gcc -Wint-to-pointer-cast warning

On 32-bit platforms long long is generally 64-bits.  Sufficiently modern
versions of gcc (13 in my testing) complains when casting a pointer to
an integer of a different width so cast to uintptr_t first to avoid the
warning.

Fixes: c183d164aa Parallel pool import

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Don Brady <don.brady@klarasystems.com>
Signed-off-by: Brooks Davis <brooks.davis@sri.com>
Closes #16203
This commit is contained in:
Brooks Davis 2024-05-24 18:45:58 -07:00 committed by GitHub
parent 08648cf0da
commit 7572e8ca04
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -6827,7 +6827,7 @@ spa_tryimport(nvlist_t *tryconfig)
*/ */
char *name = kmem_alloc(MAXPATHLEN, KM_SLEEP); char *name = kmem_alloc(MAXPATHLEN, KM_SLEEP);
(void) snprintf(name, MAXPATHLEN, "%s-%llx-%s", (void) snprintf(name, MAXPATHLEN, "%s-%llx-%s",
TRYIMPORT_NAME, (u_longlong_t)curthread, poolname); TRYIMPORT_NAME, (u_longlong_t)(uintptr_t)curthread, poolname);
mutex_enter(&spa_namespace_lock); mutex_enter(&spa_namespace_lock);
spa = spa_add(name, tryconfig, NULL); spa = spa_add(name, tryconfig, NULL);