Bug 224963 - GEOM: devices with distinct data should have distinct physical paths
Summary: GEOM: devices with distinct data should have distinct physical paths
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: CURRENT
Hardware: Any Any
: --- Affects Some People
Assignee: Alan Somers
URL:
Keywords:
Depends on: 224962 224964 224965 224966
Blocks:
  Show dependency treegraph
 
Reported: 2018-01-07 03:12 UTC by Alan Somers
Modified: 2018-03-10 04:13 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alan Somers freebsd_committer freebsd_triage 2018-01-07 03:12:08 UTC
A device's physical path describes its physical location, as distinct from its logical or electrical location.  Currently only ses(4) provides physical paths to da(4) disks, and only zfsd(8) consumes them.  All current GEOM transforms either present blank physical paths, or pass through the underlying provider's physical paths.  This is a problem for zfsd(8), because da0, da0p1, and da0p1.eli will all have the same physical path, so zfsd(8) doesn't know which to use in an autoreplace operation.

I propose the following two rules for all disk-like devices:

1) The physical path should only be nonempty for providers that have a distinct physical location.  For example, memory disks, mirrored pairs, and iSCSI LUNs should not have physical paths.

2) No two providers should have identical physical paths unless they both provide exactly the same data.  Many GEOM transforms currently violate this rule, for example geli and gpart.  gsched is an unusual exception, because both X and X.sched do provide exactly the same data.
Comment 1 Alan Somers freebsd_committer freebsd_triage 2018-03-10 02:04:29 UTC
This is done in 12.  Now it's just waiting on the child bugs to MFC.