[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20251210031757.66037-1-me@linux.beauty>
Date: Wed, 10 Dec 2025 11:17:56 +0800
From: Li Chen <me@...ux.beauty>
To: Alasdair Kergon <agk@...hat.com>,
Mike Snitzer <snitzer@...nel.org>,
Mikulas Patocka <mpatocka@...hat.com>,
dm-devel@...ts.linux.dev,
linux-kernel@...r.kernel.org
Cc: Li Chen <me@...ux.beauty>
Subject: [PATCH 1/2] dm cache: drop redundant origin size check
The cache target already exposes the origin device through
cache_iterate_devices(), which allows dm-table to call
device_area_is_invalid() and verify that the mapping fits inside the
underlying block device.
The explicit ti->len > origin_sectors test in parse_origin_dev() is
therefore redundant. Drop this check and rely on the core device
validation instead. This changes the user-visible error string when the
origin is too small, but preserves the failure behaviour.
Signed-off-by: Li Chen <me@...ux.beauty>
---
drivers/md/dm-cache-target.c | 7 -------
1 file changed, 7 deletions(-)
diff --git a/drivers/md/dm-cache-target.c b/drivers/md/dm-cache-target.c
index a10d75a562db..350a0aa53365 100644
--- a/drivers/md/dm-cache-target.c
+++ b/drivers/md/dm-cache-target.c
@@ -2099,7 +2099,6 @@ static int parse_cache_dev(struct cache_args *ca, struct dm_arg_set *as,
static int parse_origin_dev(struct cache_args *ca, struct dm_arg_set *as,
char **error)
{
- sector_t origin_sectors;
int r;
if (!at_least_one_arg(as, error))
@@ -2112,12 +2111,6 @@ static int parse_origin_dev(struct cache_args *ca, struct dm_arg_set *as,
return r;
}
- origin_sectors = get_dev_size(ca->origin_dev);
- if (ca->ti->len > origin_sectors) {
- *error = "Device size larger than cached device";
- return -EINVAL;
- }
-
return 0;
}
--
2.51.0
Powered by blists - more mailing lists