]> git.proxmox.com Git - mirror_zfs.git/commitdiff
recvd_props_mode: use a uintptr_t to stash nvlists
authorBrooks Davis <brooks@one-eyed-alien.net>
Thu, 27 Oct 2022 22:25:42 +0000 (23:25 +0100)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 3 Nov 2022 16:52:19 +0000 (09:52 -0700)
Avoid assuming than a uint64_t can hold a pointer.

Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Reviewed-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Signed-off-by: Brooks Davis <brooks.davis@sri.com>
Closes #14131

lib/libzfs/libzfs_dataset.c

index f8a61c64261f42c4caac36735d6acf539a4f8397..87bc4ea66c5bc317fb8ec74993f0497f1a2d8d9b 100644 (file)
@@ -2087,16 +2087,16 @@ zfs_is_recvd_props_mode(zfs_handle_t *zhp)
 }
 
 static void
-zfs_set_recvd_props_mode(zfs_handle_t *zhp, uint64_t *cookie)
+zfs_set_recvd_props_mode(zfs_handle_t *zhp, uintptr_t *cookie)
 {
-       *cookie = (uint64_t)(uintptr_t)zhp->zfs_props;
+       *cookie = (uintptr_t)zhp->zfs_props;
        zhp->zfs_props = zhp->zfs_recvd_props;
 }
 
 static void
-zfs_unset_recvd_props_mode(zfs_handle_t *zhp, uint64_t *cookie)
+zfs_unset_recvd_props_mode(zfs_handle_t *zhp, uintptr_t *cookie)
 {
-       zhp->zfs_props = (nvlist_t *)(uintptr_t)*cookie;
+       zhp->zfs_props = (nvlist_t *)*cookie;
        *cookie = 0;
 }
 
@@ -2373,7 +2373,7 @@ zfs_prop_get_recvd(zfs_handle_t *zhp, const char *propname, char *propbuf,
        prop = zfs_name_to_prop(propname);
 
        if (prop != ZPROP_USERPROP) {
-               uint64_t cookie;
+               uintptr_t cookie;
                if (!nvlist_exists(zhp->zfs_recvd_props, propname))
                        return (-1);
                zfs_set_recvd_props_mode(zhp, &cookie);