On Fri, Dec 04, 2020 at 10:43:30AM -0600, Glenn Washburn wrote:
> 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.
> 
> Suggested-by: Daniel Kiper <daniel.ki...@oracle.com>
> 
> Signed-off-by: Glenn Washburn <developm...@efficientek.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
> 

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to