The function grub_disk_get_size is confusingly named because it actually returns a sector count where the sectors are sized in the grub native sector size. Rename to something more appropriate.
Signed-off-by: Glenn Washburn <developm...@efficientek.com> Suggested-by: Daniel Kiper <daniel.ki...@oracle.com> Reviewed-by: Daniel Kiper <daniel.ki...@oracle.com> Reviewed-by: Patrick Steinhardt <p...@pks.im> --- grub-core/disk/diskfilter.c | 12 ++++++------ grub-core/disk/dmraid_nvidia.c | 2 +- grub-core/disk/efi/efidisk.c | 2 +- grub-core/disk/geli.c | 6 +++--- grub-core/disk/ldm.c | 4 ++-- grub-core/disk/luks.c | 2 +- grub-core/disk/mdraid1x_linux.c | 2 +- grub-core/disk/mdraid_linux.c | 2 +- grub-core/fs/cbfs.c | 16 ++++++++-------- grub-core/fs/nilfs2.c | 2 +- grub-core/fs/zfs/zfs.c | 4 ++-- grub-core/kern/disk.c | 2 +- grub-core/kern/mips/arc/init.c | 2 +- grub-core/normal/misc.c | 6 +++--- grub-core/osdep/windows/platform.c | 2 +- include/grub/disk.h | 4 ++-- util/grub-install.c | 2 +- util/grub-probe.c | 2 +- 18 files changed, 37 insertions(+), 37 deletions(-) diff --git a/grub-core/disk/diskfilter.c b/grub-core/disk/diskfilter.c index 86557f923..032011566 100644 --- a/grub-core/disk/diskfilter.c +++ b/grub-core/disk/diskfilter.c @@ -148,7 +148,7 @@ scan_disk_partition_iter (grub_disk_t disk, grub_partition_t p, void *data) if (m->disk && m->disk->id == disk->id && m->disk->dev->id == disk->dev->id && m->part_start == grub_partition_get_start (disk->partition) - && m->part_size == grub_disk_get_size (disk)) + && m->part_size == grub_disk_native_sectors (disk)) return 0; } @@ -1190,13 +1190,13 @@ insert_array (grub_disk_t disk, const struct grub_diskfilter_pv_id *id, grub_dprintf ("diskfilter", "Inserting %s (+%lld,%lld) into %s (%s)\n", disk->name, (unsigned long long) grub_partition_get_start (disk->partition), - (unsigned long long) grub_disk_get_size (disk), + (unsigned long long) grub_disk_native_sectors (disk), array->name, diskfilter->name); #ifdef GRUB_UTIL grub_util_info ("Inserting %s (+%" GRUB_HOST_PRIuLONG_LONG ",%" GRUB_HOST_PRIuLONG_LONG ") into %s (%s)\n", disk->name, (unsigned long long) grub_partition_get_start (disk->partition), - (unsigned long long) grub_disk_get_size (disk), + (unsigned long long) grub_disk_native_sectors (disk), array->name, diskfilter->name); array->driver = diskfilter; #endif @@ -1210,7 +1210,7 @@ insert_array (grub_disk_t disk, const struct grub_diskfilter_pv_id *id, struct grub_diskfilter_lv *lv; /* FIXME: Check whether the update time of the superblocks are the same. */ - if (pv->disk && grub_disk_get_size (disk) >= pv->part_size) + if (pv->disk && grub_disk_native_sectors (disk) >= pv->part_size) return GRUB_ERR_NONE; pv->disk = grub_disk_open (disk->name); if (!pv->disk) @@ -1219,7 +1219,7 @@ insert_array (grub_disk_t disk, const struct grub_diskfilter_pv_id *id, raid device, we shouldn't change it. */ pv->start_sector -= pv->part_start; pv->part_start = grub_partition_get_start (disk->partition); - pv->part_size = grub_disk_get_size (disk); + pv->part_size = grub_disk_native_sectors (disk); #ifdef GRUB_UTIL { @@ -1311,7 +1311,7 @@ grub_diskfilter_get_pv_from_disk (grub_disk_t disk, if (pv->disk && pv->disk->id == disk->id && pv->disk->dev->id == disk->dev->id && pv->part_start == grub_partition_get_start (disk->partition) - && pv->part_size == grub_disk_get_size (disk)) + && pv->part_size == grub_disk_native_sectors (disk)) { if (vg_out) *vg_out = vg; diff --git a/grub-core/disk/dmraid_nvidia.c b/grub-core/disk/dmraid_nvidia.c index 060279124..4d2fb04d1 100644 --- a/grub-core/disk/dmraid_nvidia.c +++ b/grub-core/disk/dmraid_nvidia.c @@ -107,7 +107,7 @@ grub_dmraid_nv_detect (grub_disk_t disk, /* Skip partition. */ return NULL; - sector = grub_disk_get_size (disk); + sector = grub_disk_native_sectors (disk); if (sector == GRUB_DISK_SIZE_UNKNOWN) /* Not raid. */ return NULL; diff --git a/grub-core/disk/efi/efidisk.c b/grub-core/disk/efi/efidisk.c index 9e20af70e..f077b5f55 100644 --- a/grub-core/disk/efi/efidisk.c +++ b/grub-core/disk/efi/efidisk.c @@ -867,7 +867,7 @@ grub_efidisk_get_device_name (grub_efi_handle_t *handle) if (ctx.hd->partition_start == 0 && (ctx.hd->partition_size << (parent->log_sector_size - GRUB_DISK_SECTOR_BITS)) - == grub_disk_get_size (parent)) + == grub_disk_native_sectors (parent)) { dev_name = grub_strdup (parent->name); } diff --git a/grub-core/disk/geli.c b/grub-core/disk/geli.c index 0175ce4c4..2f34a35e6 100644 --- a/grub-core/disk/geli.c +++ b/grub-core/disk/geli.c @@ -258,7 +258,7 @@ configure_ciphers (grub_disk_t disk, const char *check_uuid, if (2 * GRUB_MD_SHA256->mdlen + 1 > GRUB_CRYPTODISK_MAX_UUID_LENGTH) return NULL; - sector = grub_disk_get_size (disk); + sector = grub_disk_native_sectors (disk); if (sector == GRUB_DISK_SIZE_UNKNOWN || sector == 0) return NULL; @@ -391,7 +391,7 @@ configure_ciphers (grub_disk_t disk, const char *check_uuid, newdev->modname = "geli"; - newdev->total_sectors = grub_disk_get_size (disk) - 1; + newdev->total_sectors = grub_disk_native_sectors (disk) - 1; grub_memcpy (newdev->uuid, uuid, sizeof (newdev->uuid)); COMPILE_TIME_ASSERT (sizeof (newdev->uuid) >= 32 * 2 + 1); return newdev; @@ -420,7 +420,7 @@ recover_key (grub_disk_t source, grub_cryptodisk_t dev) if (dev->hash->mdlen > GRUB_CRYPTO_MAX_MDLEN) return grub_error (GRUB_ERR_BUG, "mdlen is too long"); - sector = grub_disk_get_size (source); + sector = grub_disk_native_sectors (source); if (sector == GRUB_DISK_SIZE_UNKNOWN || sector == 0) return grub_error (GRUB_ERR_BUG, "not a geli"); diff --git a/grub-core/disk/ldm.c b/grub-core/disk/ldm.c index 58f8a53e1..912e88255 100644 --- a/grub-core/disk/ldm.c +++ b/grub-core/disk/ldm.c @@ -821,7 +821,7 @@ grub_ldm_detect (grub_disk_t disk, /* LDM is never inside a partition. */ if (!has_ldm || disk->partition) continue; - sector = grub_disk_get_size (disk); + sector = grub_disk_native_sectors (disk); if (sector == GRUB_DISK_SIZE_UNKNOWN) continue; sector--; @@ -938,7 +938,7 @@ grub_util_is_ldm (grub_disk_t disk) /* LDM is never inside a partition. */ if (!has_ldm || disk->partition) continue; - sector = grub_disk_get_size (disk); + sector = grub_disk_native_sectors (disk); if (sector == GRUB_DISK_SIZE_UNKNOWN) continue; sector--; diff --git a/grub-core/disk/luks.c b/grub-core/disk/luks.c index aa9877b68..5fc79d880 100644 --- a/grub-core/disk/luks.c +++ b/grub-core/disk/luks.c @@ -125,7 +125,7 @@ configure_ciphers (grub_disk_t disk, const char *check_uuid, newdev->offset_sectors = grub_be_to_cpu32 (header.payloadOffset); newdev->source_disk = NULL; newdev->log_sector_size = 9; - newdev->total_sectors = grub_disk_get_size (disk) - newdev->offset_sectors; + newdev->total_sectors = grub_disk_native_sectors (disk) - newdev->offset_sectors; grub_memcpy (newdev->uuid, uuid, sizeof (uuid)); newdev->modname = "luks"; diff --git a/grub-core/disk/mdraid1x_linux.c b/grub-core/disk/mdraid1x_linux.c index c980feba4..38444b02c 100644 --- a/grub-core/disk/mdraid1x_linux.c +++ b/grub-core/disk/mdraid1x_linux.c @@ -111,7 +111,7 @@ grub_mdraid_detect (grub_disk_t disk, grub_uint64_t size; grub_uint8_t minor_version; - size = grub_disk_get_size (disk); + size = grub_disk_native_sectors (disk); /* Check for an 1.x superblock. * It's always aligned to a 4K boundary diff --git a/grub-core/disk/mdraid_linux.c b/grub-core/disk/mdraid_linux.c index 11024ae31..e40216f51 100644 --- a/grub-core/disk/mdraid_linux.c +++ b/grub-core/disk/mdraid_linux.c @@ -190,7 +190,7 @@ grub_mdraid_detect (grub_disk_t disk, struct grub_diskfilter_vg *ret; /* The sector where the mdraid 0.90 superblock is stored, if available. */ - size = grub_disk_get_size (disk); + size = grub_disk_native_sectors (disk); if (size == GRUB_DISK_SIZE_UNKNOWN) /* not 0.9x raid. */ return NULL; diff --git a/grub-core/fs/cbfs.c b/grub-core/fs/cbfs.c index 857bea991..581215ef1 100644 --- a/grub-core/fs/cbfs.c +++ b/grub-core/fs/cbfs.c @@ -148,16 +148,16 @@ grub_cbfs_mount (grub_disk_t disk) grub_off_t header_off; struct cbfs_header head; - if (grub_disk_get_size (disk) == GRUB_DISK_SIZE_UNKNOWN) + if (grub_disk_native_sectors (disk) == GRUB_DISK_SIZE_UNKNOWN) goto fail; - if (grub_disk_read (disk, grub_disk_get_size (disk) - 1, + if (grub_disk_read (disk, grub_disk_native_sectors (disk) - 1, GRUB_DISK_SECTOR_SIZE - sizeof (ptr), sizeof (ptr), &ptr)) goto fail; ptr = grub_cpu_to_le32 (ptr); - header_off = (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS) + header_off = (grub_disk_native_sectors (disk) << GRUB_DISK_SECTOR_BITS) + (grub_int32_t) ptr; if (grub_disk_read (disk, 0, header_off, @@ -171,16 +171,16 @@ grub_cbfs_mount (grub_disk_t disk) if (!data) goto fail; - data->cbfs_start = (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS) + data->cbfs_start = (grub_disk_native_sectors (disk) << GRUB_DISK_SECTOR_BITS) - (grub_be_to_cpu32 (head.romsize) - grub_be_to_cpu32 (head.offset)); - data->cbfs_end = (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS) + data->cbfs_end = (grub_disk_native_sectors (disk) << GRUB_DISK_SECTOR_BITS) - grub_be_to_cpu32 (head.bootblocksize); data->cbfs_align = grub_be_to_cpu32 (head.align); - if (data->cbfs_start >= (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS)) + if (data->cbfs_start >= (grub_disk_native_sectors (disk) << GRUB_DISK_SECTOR_BITS)) goto fail; - if (data->cbfs_end > (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS)) - data->cbfs_end = (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS); + if (data->cbfs_end > (grub_disk_native_sectors (disk) << GRUB_DISK_SECTOR_BITS)) + data->cbfs_end = (grub_disk_native_sectors (disk) << GRUB_DISK_SECTOR_BITS); data->next_hofs = data->cbfs_start; diff --git a/grub-core/fs/nilfs2.c b/grub-core/fs/nilfs2.c index 7ed148d3b..082326f38 100644 --- a/grub-core/fs/nilfs2.c +++ b/grub-core/fs/nilfs2.c @@ -753,7 +753,7 @@ grub_nilfs2_load_sb (struct grub_nilfs2_data *data) partition_size = (grub_le_to_cpu64 (data->sblock.s_dev_size) >> GRUB_DISK_SECTOR_BITS); else - partition_size = grub_disk_get_size (disk); + partition_size = grub_disk_native_sectors (disk); if (partition_size != GRUB_DISK_SIZE_UNKNOWN) { /* Read second super block. */ diff --git a/grub-core/fs/zfs/zfs.c b/grub-core/fs/zfs/zfs.c index 41ef0ff57..b6e1e178d 100644 --- a/grub-core/fs/zfs/zfs.c +++ b/grub-core/fs/zfs/zfs.c @@ -1175,7 +1175,7 @@ scan_disk (grub_device_t dev, struct grub_zfs_data *data, desc.original = original; /* Don't check back labels on CDROM. */ - if (grub_disk_get_size (dev->disk) == GRUB_DISK_SIZE_UNKNOWN) + if (grub_disk_native_sectors (dev->disk) == GRUB_DISK_SIZE_UNKNOWN) vdevnum = VDEV_LABELS / 2; for (label = 0; ubbest == NULL && label < vdevnum; label++) @@ -1184,7 +1184,7 @@ scan_disk (grub_device_t dev, struct grub_zfs_data *data, = label * (sizeof (vdev_label_t) >> SPA_MINBLOCKSHIFT) + ((VDEV_SKIP_SIZE + VDEV_BOOT_HEADER_SIZE) >> SPA_MINBLOCKSHIFT) + (label < VDEV_LABELS / 2 ? 0 : - ALIGN_DOWN (grub_disk_get_size (dev->disk), sizeof (vdev_label_t)) + ALIGN_DOWN (grub_disk_native_sectors (dev->disk), sizeof (vdev_label_t)) - VDEV_LABELS * (sizeof (vdev_label_t) >> SPA_MINBLOCKSHIFT)); /* Read in the uberblock ring (128K). */ diff --git a/grub-core/kern/disk.c b/grub-core/kern/disk.c index ffb09c8ee..e1b0e073e 100644 --- a/grub-core/kern/disk.c +++ b/grub-core/kern/disk.c @@ -533,7 +533,7 @@ grub_disk_read (grub_disk_t disk, grub_disk_addr_t sector, } grub_uint64_t -grub_disk_get_size (grub_disk_t disk) +grub_disk_native_sectors (grub_disk_t disk) { if (disk->partition) return grub_partition_get_len (disk->partition); diff --git a/grub-core/kern/mips/arc/init.c b/grub-core/kern/mips/arc/init.c index 3834a1490..2ed3ff319 100644 --- a/grub-core/kern/mips/arc/init.c +++ b/grub-core/kern/mips/arc/init.c @@ -430,7 +430,7 @@ grub_machine_get_bootlocation (char **device, char **path) } if (poff == 0 - && pend == grub_disk_get_size (parent)) + && pend == grub_disk_native_sectors (parent)) { grub_disk_close (parent); *device = dname; diff --git a/grub-core/normal/misc.c b/grub-core/normal/misc.c index 435cd9234..8bb6da31f 100644 --- a/grub-core/normal/misc.c +++ b/grub-core/normal/misc.c @@ -176,14 +176,14 @@ grub_normal_print_device_info (const char *name) (grub_partition_get_start (dev->disk->partition) & 1) ? ".5" : "" ); else grub_printf_ (N_(" - Sector size %uB"), 1 << dev->disk->log_sector_size); - if (grub_disk_get_size (dev->disk) == GRUB_DISK_SIZE_UNKNOWN) + if (grub_disk_native_sectors (dev->disk) == GRUB_DISK_SIZE_UNKNOWN) grub_puts_ (N_(" - Total size unknown")); else grub_printf (_(" - Total size %llu%sKiB"), - (unsigned long long) (grub_disk_get_size (dev->disk) >> 1), + (unsigned long long) (grub_disk_native_sectors (dev->disk) >> 1), /* TRANSLATORS: Replace dot with appropriate decimal separator for your language. */ - (grub_disk_get_size (dev->disk) & 1) ? _(".5") : ""); + (grub_disk_native_sectors (dev->disk) & 1) ? _(".5") : ""); } if (dev) diff --git a/grub-core/osdep/windows/platform.c b/grub-core/osdep/windows/platform.c index 1ef86bf58..253f8d101 100644 --- a/grub-core/osdep/windows/platform.c +++ b/grub-core/osdep/windows/platform.c @@ -371,7 +371,7 @@ grub_install_register_efi (grub_device_t efidir_grub_dev, hddp->partition_start = grub_partition_get_start (efidir_grub_dev->disk->partition) >> (efidir_grub_dev->disk->log_sector_size - GRUB_DISK_SECTOR_BITS); - hddp->partition_size = grub_disk_get_size (efidir_grub_dev->disk) + hddp->partition_size = grub_disk_native_sectors (efidir_grub_dev->disk) >> (efidir_grub_dev->disk->log_sector_size - GRUB_DISK_SECTOR_BITS); pathptr = hddp + 1; diff --git a/include/grub/disk.h b/include/grub/disk.h index 132a1bb75..0fb727d3d 100644 --- a/include/grub/disk.h +++ b/include/grub/disk.h @@ -171,7 +171,7 @@ typedef struct grub_disk_memberlist *grub_disk_memberlist_t; #define GRUB_DISK_MAX_MAX_AGGLOMERATE ((1 << (30 - GRUB_DISK_CACHE_BITS - GRUB_DISK_SECTOR_BITS)) - 1) -/* Return value of grub_disk_get_size() in case disk size is unknown. */ +/* Return value of grub_disk_native_sectors() in case disk size is unknown. */ #define GRUB_DISK_SIZE_UNKNOWN 0xffffffffffffffffULL /* Convert to GRUB native disk sized sector from disk sized sector. */ @@ -219,7 +219,7 @@ extern grub_err_t (*EXPORT_VAR(grub_disk_write_weak)) (grub_disk_t disk, const void *buf); -grub_uint64_t EXPORT_FUNC(grub_disk_get_size) (grub_disk_t disk); +grub_uint64_t EXPORT_FUNC(grub_disk_native_sectors) (grub_disk_t disk); #if DISK_CACHE_STATS void diff --git a/util/grub-install.c b/util/grub-install.c index a35a2e2e8..f9f8ee7b2 100644 --- a/util/grub-install.c +++ b/util/grub-install.c @@ -748,7 +748,7 @@ is_prep_empty (grub_device_t dev) grub_disk_addr_t dsize, addr; grub_uint32_t buffer[32768]; - dsize = grub_disk_get_size (dev->disk); + dsize = grub_disk_native_sectors (dev->disk); for (addr = 0; addr < dsize; addr += sizeof (buffer) / GRUB_DISK_SECTOR_SIZE) { diff --git a/util/grub-probe.c b/util/grub-probe.c index cbe6ed94c..c08e46bbb 100644 --- a/util/grub-probe.c +++ b/util/grub-probe.c @@ -398,7 +398,7 @@ probe (const char *path, char **device_names, char delim) if (! dev || !dev->disk) grub_util_error ("%s", grub_errmsg); - dsize = grub_disk_get_size (dev->disk); + dsize = grub_disk_native_sectors (dev->disk); for (addr = 0; addr < dsize; addr += sizeof (buffer) / GRUB_DISK_SECTOR_SIZE) { -- 2.27.0 _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel