libzfs: refresh property cache after inheriting userprop
This matches what happens when inheriting a system property
Consider the following program:
int main() {
void *zhp = libzfs_init(); void *dataset = zfs_open(zhp, "zest/__test", 1); printf("before:"); dump_nvlist(zfs_get_user_props(dataset), 2); printf("\n"); zfs_prop_inherit(dataset, "xyz.nabijaczleweli:test", 0); printf("after:"); dump_nvlist(zfs_get_user_props(dataset), 2); printf("\n"); zfs_refresh_properties(dataset); printf("refreshed:"); dump_nvlist(zfs_get_user_props(dataset), 2); printf("\n");
}
And the output before:
- zfs set xyz.nabijaczleweli:test=hehe zest/__test
- ./a.out
before: xyz.nabijaczleweli:test:
value: 'hehe' source: 'zest/__test'
after: xyz.nabijaczleweli:test:
value: 'hehe' source: 'zest/__test'
refreshed:
As compared to the output after:
- zfs set xyz.nabijaczleweli:test=hehe zest/__test
- ./a.out
before: xyz.nabijaczleweli:test:
value: 'hehe' source: 'zest/__test'
after:
refreshed:
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz>
Closes #11064
Closes #11911