Expand Pool gives traceback if there's a pmem devicein the pool
Description
If you try to "Expand Pool" on a system with a pmem device in the pool, you get a traceback which says:
"[EFAULT] Command camcontrol reprobe pmem0 failed (code 1): camcontrol: cam_lookup_pass: CAMGETPASSTHRU ioctl failed cam_lookup_pass: No such file or directory cam_lookup_pass: either the pass driver isn't in your kernel cam_lookup_pass: or pmem0 doesn't exist.
To fix:
line 129 of src/middlewared/middlewared/plugins/pool_/expand.py should be changed to: if not part_data['disk'].startswith(('nvd', 'vtbd', 'pmem')):
I tested this on 12.0-U8 and confirmed it allows pool expansion.
If you try to "Expand Pool" on a system with a pmem device in the pool, you get a traceback which says:
"[EFAULT] Command camcontrol reprobe pmem0 failed (code 1): camcontrol: cam_lookup_pass: CAMGETPASSTHRU ioctl failed cam_lookup_pass: No such file or directory cam_lookup_pass: either the pass driver isn't in your kernel cam_lookup_pass: or pmem0 doesn't exist.
To fix:
line 129 of src/middlewared/middlewared/plugins/pool_/expand.py should be changed to:
if not part_data['disk'].startswith(('nvd', 'vtbd', 'pmem')):
I tested this on 12.0-U8 and confirmed it allows pool expansion.
This is a similar issue to and but for pmem.
Reported by customer in Salesforce case 14302