Christos Longros 33ed68fc24 zpool create: report which device caused failure
When zpool create fails because a vdev is already in use, the
error message now identifies the problematic device and the pool
it belongs to, e.g.:

  cannot create 'tank': device '/dev/sdb1' is part of
  active pool 'rpool'

Implementation follows the ZPOOL_CONFIG_LOAD_INFO pattern used
by zpool import:

  - Add spa_create_info to spa_t to capture error info during
    vdev_label_init(), before vdev_close() resets vdev state
  - When vdev_inuse() detects a conflict, read the on-disk
    label to extract the pool name and store it with the
    device path
  - Return the info wrapped under ZPOOL_CONFIG_CREATE_INFO
    through the ioctl zc_nvlist_dst to userspace
  - In libzfs, zpool_create_info() unwraps the nvlist and
    formats the device-specific error message

Restructure zpool_create() error handling so all switch cases
use break instead of return, eliminating duplicated cleanup
code and using the single create_failed exit path.

Reviewed-by: Tony Hutter <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: Christos Longros <[email protected]>
Closes #18213
2026-04-03 14:18:24 -07:00
2026-03-31 16:48:33 -07:00
2026-04-03 11:17:08 -07:00
2022-12-22 11:34:28 -08:00
2020-06-09 21:24:09 -07:00
…
2026-02-11 09:37:02 -08:00
2020-08-26 21:44:41 -07:00
…
2020-03-16 10:46:03 -07:00

img

OpenZFS is an advanced file system and volume manager which was originally developed for Solaris and is now maintained by the OpenZFS community. This repository contains the code for running OpenZFS on Linux and FreeBSD.

codecov coverity

Official Resources

Installation

Full documentation for installing OpenZFS on your favorite operating system can be found at the Getting Started Page.

Contribute & Develop

We have a separate document with contribution guidelines.

We have a Code of Conduct.

Release

OpenZFS is released under a CDDL license. For more details see the NOTICE, LICENSE and COPYRIGHT files; UCRL-CODE-235197

Supported Kernels and Distributions

Linux

Given the wide variety of Linux environments, we prioritize development and testing on stable, supported kernels and distributions.

Kernel (kernel.org)

All longterm kernels from kernel.org are supported. stable kernels are usually supported in the next OpenZFS release.

Supported longterm kernels: 6.18, 6.12, 6.6, 6.1, 5.15, 5.10.

Red Hat Enterprise Linux (RHEL)

All RHEL (and compatible systems: AlmaLinux OS, Rocky Linux, etc) on the full or maintenance support tracks are supported.

Supported RHEL releases: 8.10, 9.7, 10.1.

Ubuntu

All Ubuntu LTS releases are supported.

Supported Ubuntu releases: 24.04 “Noble”, 22.04 “Jammy”.

Debian

All Debian stable and LTS releases are supported.

Supported Debian releases: 13 “Trixie”, 12 “Bookworm”, 11 “Bullseye”.

Other Distributions

Generally, if a distribution is following an LTS kernel, it should work well with OpenZFS.

FreeBSD

All FreeBSD releases receiving security support are supported by OpenZFS.

Supported FreeBSD releases: 15.0, 14.4, 13.5.

S
Description
No description provided
Readme
4 GiB
0 Stars 1 Watchers 0 Forks
Languages
C 59.9%
C++ 26.8%
Roff 4.5%
Shell 2.8%
Assembly 1.7%
Other 3.7%