From 2a4a9dc2f09d7672268af4a4f70e1a26b481b5e9 Mon Sep 17 00:00:00 2001 From: Brian Behlendorf Date: Thu, 19 Jul 2012 14:50:25 -0700 Subject: [PATCH] Add ddt_object_load() error handling Add the missing error handling to ddt_object_load(). There's no good reason this needs to be fatal. It is preferable that an error be returned. This will allow 'zpool import -FX' to safely attempt to rollback through previous txgs looking for a good one. Signed-off-by: Brian Behlendorf --- module/zfs/ddt.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/module/zfs/ddt.c b/module/zfs/ddt.c index 7279f1d5d..18c6cef5a 100644 --- a/module/zfs/ddt.c +++ b/module/zfs/ddt.c @@ -120,7 +120,9 @@ ddt_object_load(ddt_t *ddt, enum ddt_type type, enum ddt_class class) /* * Seed the cached statistics. */ - VERIFY(ddt_object_info(ddt, type, class, &doi) == 0); + error = ddt_object_info(ddt, type, class, &doi); + if (error) + return (error); ddo->ddo_count = ddt_object_count(ddt, type, class); ddo->ddo_dspace = doi.doi_physical_blocks_512 << 9;