Skip to content

Commit

Permalink
Report ashift of L2ARC devices in zdb
Browse files Browse the repository at this point in the history
Commit 8af1104 does not actually store the ashift of cache devices in
their label. However, in order to facilitate reporting the ashift
through zdb, we enable this in the present commit. We also document
how the retrieval of the ashift is done.

Signed-off-by: George Amanakis <[email protected]>
  • Loading branch information
gamanakis committed Sep 29, 2023
1 parent ba769ea commit af5f580
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions module/zfs/vdev_label.c
Original file line number Diff line number Diff line change
Expand Up @@ -1138,6 +1138,16 @@ vdev_label_init(vdev_t *vd, uint64_t crtxg, vdev_labeltype_t reason)
POOL_STATE_L2CACHE) == 0);
VERIFY(nvlist_add_uint64(label, ZPOOL_CONFIG_GUID,
vd->vdev_guid) == 0);

/*
* This is merely to facilitate reporting the ashift of the
* cache device through zdb. The actual retrieval of the
* ashift (in vdev_alloc()) uses the nvlist
* spa->spa_l2cache->sav_config (populated in
* spa_ld_open_aux_vdevs()).
*/
VERIFY(nvlist_add_uint64(label, ZPOOL_CONFIG_ASHIFT,
vd->vdev_ashift) == 0);
} else {
uint64_t txg = 0ULL;

Expand Down

0 comments on commit af5f580

Please sign in to comment.