Project

General

Profile

Actions

Feature #14600

open

dkio(4I) needs an ioctl to re-read the disk label

Added by Joshua M. Clulow 3 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
kernel
Start date:
Due date:
% Done:

0%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

As discovered in #14022 there are occasions where we would like to explicitly reload and revalidate a disk label that has been updated, e.g. through DKIOCSETEFI. There is currently no specific dkio(4I) ioctl to do this, so we are relying on side effects of DKIOCSTATE, which itself caused #14593.

The dkio(4I) ioctls provide a common interface into disk drivers, but the implementation is at least partly driver-specific. Some of the ioctls are not well-specified, and the implementations are not strictly uniform between drivers. Introducing a new ioctl that performs the required activity is likely substantially less risky than utilising the behaviour of an existing ioctl.

This change will introduce DKIOCLABELCHECK, whose sole purpose is to have cmlb reload and revalidate the label from the disk. It is expected that disk drivers should just pass this ioctl through to cmlb_ioctl().


Related issues

Related to illumos gate - Bug #14022: zpool online -e breaks access to poolClosedAndy Fiddaman

Actions
Related to illumos gate - Bug #14593: zpool online -e hangs forever after 14022Closed

Actions
Actions #1

Updated by Joshua M. Clulow 3 months ago

  • Related to Bug #14022: zpool online -e breaks access to pool added
  • Related to Bug #14593: zpool online -e hangs forever after 14022 added
Actions

Also available in: Atom PDF