linux: libzutil: zfs_strip_path: only strip known prefixes
This mirrors FreeBSD: # zpool create -o cachefile= testpsko media/testpsko # zpool create -o cachefile= testpsko2 $PWD/testpsko2 $ ./zpool list -v NAME SIZE ALLOC FREE filling 25.5T 6.85T 18.6T mirror-0 3.64T 500G 3.15T ata-HGST_HUS726T4TALE6L4_V6K2L4RR - - - ata-HGST_HUS726T4TALE6L4_V6K2MHYR - - - raidz1-1 21.8T 6.36T 15.5T ata-HGST_HUS728T8TALE6L4_VDKT237K - - - ata-HGST_HUS728T8TALE6L4_VDGY075D - - - ata-HGST_HUS728T8TALE6L4_VDKVRRJK - - - cache - - - nvme0n1p4 63.0G 12.8G 50.2G tarta-boot 240M 50.0M 190M mirror-0 240M 50.0M 190M tarta-boot - - - tarta-boot-nvme - - - tarta-zoot 55.5G 6.96G 48.5G mirror-0 55.5G 6.96G 48.5G tarta-zoot - - - tarta-zoot-nvme - - - testpsko 39.5G 744K 39.5G media/testpsko1 39.5G 744K 39.5G testpsko2 39.5G 130K 39.5G /home/nabijaczleweli/store/code/zfs/testpsko2 39.5G 130K 39.5G Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Closes #13413 Closes #9771
This commit is contained in:
parent
5ac80603bd
commit
276b08cb00
|
@ -151,7 +151,15 @@ zfs_strip_partition_path(const char *path)
|
|||
const char *
|
||||
zfs_strip_path(const char *path)
|
||||
{
|
||||
return (strrchr(path, '/') + 1);
|
||||
size_t spath_count;
|
||||
const char *const *spaths = zpool_default_search_paths(&spath_count);
|
||||
|
||||
for (size_t i = 0; i < spath_count; ++i)
|
||||
if (strncmp(path, spaths[i], strlen(spaths[i])) == 0 &&
|
||||
path[strlen(spaths[i])] == '/')
|
||||
return (path + strlen(spaths[i]) + 1);
|
||||
|
||||
return (path);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue