]> git.proxmox.com Git - mirror_zfs.git/commit
ddt: introduce lightweight entry
authorRob Norris <rob.norris@klarasystems.com>
Mon, 3 Jul 2023 12:16:04 +0000 (22:16 +1000)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 16 Aug 2024 19:02:22 +0000 (12:02 -0700)
commit4d686c3da53db5e5f3f3cc52060d9fbca2baf092
tree9747b7af3a59ace608ba064b4bac7b08894ac4da
parentd17ab631a9142b81b100d87f0619f5e59bc211ac
ddt: introduce lightweight entry

The idea here is that sometimes you need the contents of an entry with
no intent to modify it, and/or from a place where its difficult to get
hold of its originating ddt_t to know how to interpret it.

A lightweight entry contains everything you might need to "read" an
entry - its key, type and phys contents - but none of the extras for
modifying it or using it in a larger context. It also has the full
complement of phys slots, so it can represent any kind of dedup entry
without having to know the specific configuration of the table it came
from.

Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Rob Norris <rob.norris@klarasystems.com>
Sponsored-by: Klara, Inc.
Sponsored-by: iXsystems, Inc.
Closes #15893
cmd/zdb/zdb.c
include/sys/ddt.h
include/sys/ddt_impl.h
include/sys/dsl_scan.h
module/zfs/ddt.c
module/zfs/dsl_scan.c