Re: [PATCH 2/3] mdadm: fix building errors

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

 



Dear Xiao,


Thank you for your patch. Could you make the summary/title more specific? Something like Cast …?


Am 07.05.25 um 14:20 schrieb Xiao Ni:
Some building errors are found in ppc64le platform:
format '%llu' expects argument of type 'long long unsigned int', but
argument 3 has type 'long unsigned int' [-Werror=format=]

I’d put pasted things in one line.

Also, please state how you fixed this.

Signed-off-by: Xiao Ni <xni@xxxxxxxxxx>
---
  super-ddf.c   | 9 +++++----
  super-intel.c | 3 ++-
  2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/super-ddf.c b/super-ddf.c
index 6e7db924d2b1..dda8b7fedd64 100644
--- a/super-ddf.c
+++ b/super-ddf.c
@@ -1606,9 +1606,9 @@ static void examine_vd(int n, struct ddf_super *sb, char *guid)
  			       map_num(ddf_sec_level, vc->srl) ?: "-unknown-");
  		}
  		printf("  Device Size[%d] : %llu\n", n,
-		       be64_to_cpu(vc->blocks)/2);
+		       (unsigned long long)(be64_to_cpu(vc->blocks)/2));
  		printf("   Array Size[%d] : %llu\n", n,
-		       be64_to_cpu(vc->array_blocks)/2);
+		       (unsigned long long)(be64_to_cpu(vc->array_blocks)/2));
  	}
  }
@@ -1665,7 +1665,7 @@ static void examine_pds(struct ddf_super *sb)
  		printf("       %3d    %08x  ", i,
  		       be32_to_cpu(pd->refnum));
  		printf("%8lluK ",
-		       be64_to_cpu(pd->config_size)>>1);
+				(unsigned long long)be64_to_cpu(pd->config_size)>>1);

Keep the alignement from before?

  		for (dl = sb->dlist; dl ; dl = dl->next) {
  			if (be32_eq(dl->disk.refnum, pd->refnum)) {
  				char *dv = map_dev(dl->major, dl->minor, 0);
@@ -2901,7 +2901,8 @@ static unsigned int find_unused_pde(const struct ddf_super *ddf)
  static void _set_config_size(struct phys_disk_entry *pde, const struct dl *dl)
  {
  	__u64 cfs, t;
-	cfs = min(dl->size - 32*1024*2ULL, be64_to_cpu(dl->primary_lba));
+	cfs = min((unsigned long long)dl->size - 32*1024*2ULL,
+			(unsigned long long)(be64_to_cpu(dl->primary_lba)));
  	t = be64_to_cpu(dl->secondary_lba);
  	if (t != ~(__u64)0)
  		cfs = min(cfs, t);
diff --git a/super-intel.c b/super-intel.c
index b7b030a20432..4fbbc98d915c 100644
--- a/super-intel.c
+++ b/super-intel.c
@@ -2325,7 +2325,8 @@ static void export_examine_super_imsm(struct supertype *st)
  	printf("MD_LEVEL=container\n");
  	printf("MD_UUID=%s\n", nbuf+5);
  	printf("MD_DEVICES=%u\n", mpb->num_disks);
-	printf("MD_CREATION_TIME=%llu\n", __le64_to_cpu(mpb->creation_time));
+	printf("MD_CREATION_TIME=%llu\n",
+			(unsigned long long)__le64_to_cpu(mpb->creation_time));
  }
static void detail_super_imsm(struct supertype *st, char *homehost,

Can’t this be fixed in the header?


Kind regards,

Paul




[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux