Re: [PATCH 2/5] fdisk: add total sectors

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jun 03, 2012 at 08:15:20PM +0200, Davidlohr Bueso wrote:
> From: Davidlohr Bueso <dave@xxxxxxx>
> 
> Add the total_sectors variable to the context structure. This is the initial geometry information.
> 
> Signed-off-by: Davidlohr Bueso <dave@xxxxxxx>
> ---
>  fdisk/fdisk.c         |   21 ++++++++-------------
>  fdisk/fdisk.h         |    5 ++++-
>  fdisk/fdiskdoslabel.c |    4 ++--
>  fdisk/utils.c         |   12 ++++++++++++
>  4 files changed, 26 insertions(+), 16 deletions(-)
> 
> diff --git a/fdisk/fdisk.c b/fdisk/fdisk.c
> index d7ff2e5..654d8f3 100644
> --- a/fdisk/fdisk.c
> +++ b/fdisk/fdisk.c
> @@ -145,7 +145,6 @@ unsigned int	heads,
>  	units_per_sector = 1,
>  	display_in_cyl_units = 0;
>  
> -sector_t total_number_of_sectors; /* in logical sectors */
>  unsigned long grain = DEFAULT_SECTOR_SIZE;
>  enum labeltype disklabel;	/* Current disklabel */
>  
> @@ -400,8 +399,8 @@ void update_units(void)
>  
>  void warn_limits(struct fdisk_context *cxt)
>  {
> -	if (total_number_of_sectors > UINT_MAX && !nowarn) {
> -		unsigned long long bytes = total_number_of_sectors * cxt->sector_size;
> +	if (cxt->total_sectors > UINT_MAX && !nowarn) {
> +		unsigned long long bytes = cxt->total_sectors * cxt->sector_size;
>  		int giga = bytes / 1000000000;
>  		int hectogiga = (giga + 50) / 100;
>  
> @@ -509,7 +508,7 @@ update_sector_offset(struct fdisk_context *cxt)
>  		sector_offset = x / cxt->sector_size;
>  
>  		/* don't use huge offset on small devices */
> -		if (total_number_of_sectors <= sector_offset * 4)
> +		if (cxt->total_sectors <= sector_offset * 4)
>  			sector_offset = cxt->phy_sector_size / cxt->sector_size;
>  
>  		/* use 1MiB grain always when possible */
> @@ -517,7 +516,7 @@ update_sector_offset(struct fdisk_context *cxt)
>  			grain = 2048 * 512;
>  
>  		/* don't use huge grain on small devices */
> -		if (total_number_of_sectors <= (grain * 4 / cxt->sector_size))
> +		if (cxt->total_sectors <= (grain * 4 / cxt->sector_size))
>  			grain = cxt->phy_sector_size;
>  	}
>  }
> @@ -540,13 +539,9 @@ get_geometry(struct fdisk_context *cxt, struct geom *g) {
>  		pt_sectors ? pt_sectors :
>  		kern_sectors ? kern_sectors : 63;
>  
> -	/* get number of 512-byte sectors, and convert it the real sectors */
> -	if (blkdev_get_sectors(cxt->dev_fd, &nsects) == 0)
> -		total_number_of_sectors = (nsects / (cxt->sector_size >> 9));

This leaves 'nsect' as unused variable.

Otherwise it looks good to me.

Petr

-- 
Petr Uzel
IRC: ptr_uzl @ freenode

Attachment: pgpZu2yDZ7JWG.pgp
Description: PGP signature


[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux