diff options
| author | mlelstv <mlelstv@NetBSD.org> | 2022-03-28 10:38:00 +0000 |
|---|---|---|
| committer | mlelstv <mlelstv@NetBSD.org> | 2022-03-28 10:38:00 +0000 |
| commit | 3d84144c6c954a86ab7b2e9bdbfefc96309abd3e (patch) | |
| tree | 4f08c767adac7ebb92d69c9bc8c2b47eb0263d5c /sys/dev | |
| parent | 77838db5baada9ce86b5bc40efe37a28bd82d0e4 (diff) | |
Media size is in bytes (off_t), not sectors.
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/dm/device-mapper.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/dev/dm/device-mapper.c b/sys/dev/dm/device-mapper.c index bdd17f60f62..cc0e275639e 100644 --- a/sys/dev/dm/device-mapper.c +++ b/sys/dev/dm/device-mapper.c @@ -1,4 +1,4 @@ -/* $NetBSD: device-mapper.c,v 1.62 2021/05/07 09:54:43 hannken Exp $ */ +/* $NetBSD: device-mapper.c,v 1.63 2022/03/28 10:38:00 mlelstv Exp $ */ /* * Copyright (c) 2010 The NetBSD Foundation, Inc. @@ -562,14 +562,15 @@ disk_ioctl_switch(dev_t dev, unsigned long cmd, void *data) { off_t *valp = data; uint64_t numsec; + unsigned secsize; if ((dmv = dm_dev_lookup(NULL, NULL, minor(dev))) == NULL) return ENODEV; aprint_debug("DIOCGMEDIASIZE ioctl called\n"); - dm_table_disksize(&dmv->table_head, &numsec, NULL); - *valp = numsec; + dm_table_disksize(&dmv->table_head, &numsec, &secsize); + *valp = (off_t) secsize * numsec; dm_dev_unbusy(dmv); break; |
