Subject: Re: disk block number printing
To: <>
From: David Laight <>
List: tech-kern
Date: 04/13/2003 08:19:33
On Sun, Apr 13, 2003 at 09:14:30AM +1000, Darren Reed wrote:
> In sys/kern/subr_disk.c, diskerr() uses %d to display block numbers.
> For block numbers > 2^32, the output is not going to be correct, but
> if I look at daddr_t, it may not always be int64_t.

true... 'tis bust, well spotted.
I'll fix it!

> Is there a reason why this shouldn't be %qd ?

Yes, because that is a gccism, the C format is %lld (for long long).
But even that isn't correct for uint64_t.

> On a related, but different note, does anyone know if the printf format
> style of "%I64d" is part of Posix and/or likely to be supported by NetBSD
> anytime soon ?  This capability is already present in Visual Studio .NET.

That isn't in C or Posix.  You need to use:
	"....%" PRId64 "..."


David Laight: