aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorToomas Soome <tsoome@FreeBSD.org>2020-07-07 12:24:40 +0000
committerKyle Evans <kevans@FreeBSD.org>2021-10-08 01:15:59 +0000
commit06d16b8e9ba9f1ad0540c54402485081e0dbf93e (patch)
treeccb553d6f3866dc8ceb3b1c2db397eac4276db4c
parent5a6dd8690100ff19cdd8072d068db260cacebc3d (diff)
downloadsrc-06d16b8e9ba9f1ad0540c54402485081e0dbf93e.tar.gz
src-06d16b8e9ba9f1ad0540c54402485081e0dbf93e.zip
loader: geli_dev_ioctl does return huge mediasize
The DIOCGMEDIASIZE is calculated md->md_sectorsize * md->md_provsize, and for boot disk, the md_sectorsize is 4k. However, the md_provsize is already in units of bytes. (cherry picked from commit 0d1a62068123df267e20530c86d2fc7a4e1aaa2e)
-rw-r--r--stand/libsa/geli/gelidev.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/stand/libsa/geli/gelidev.c b/stand/libsa/geli/gelidev.c
index 8c1359c0b49a..751255636112 100644
--- a/stand/libsa/geli/gelidev.c
+++ b/stand/libsa/geli/gelidev.c
@@ -219,7 +219,7 @@ geli_dev_ioctl(struct open_file *f, u_long cmd, void *data)
*(u_int *)data = md->md_sectorsize;
break;
case DIOCGMEDIASIZE:
- *(uint64_t *)data = md->md_sectorsize * md->md_provsize;
+ *(uint64_t *)data = md->md_provsize;
break;
default:
return (ENOTTY);