Re: [current tinderbox] failure on amd64/amd64
From: Bruce Evans (bde_at_zeta.org.au)
Date: 05/05/05
- Previous message: Alexander S. Usov: "kernel panics in recent RELENG-5"
- In reply to: Bill Paul: "Re: [current tinderbox] failure on amd64/amd64"
- Next in thread: Bill Paul: "Re: [current tinderbox] failure on amd64/amd64"
- Reply: Bill Paul: "Re: [current tinderbox] failure on amd64/amd64"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Fri, 6 May 2005 02:21:18 +1000 (EST) To: Bill Paul <wpaul@freebsd.org>
On Thu, 5 May 2005, Bill Paul wrote:
>> On Thu, 5 May 2005, Xin LI wrote:
>>
>>> On Thu, May 05, 2005 at 04:44:28AM -0400, FreeBSD Tinderbox wrote:
>>>> /tinderbox/CURRENT/amd64/amd64/src/sys/modules/ndis/../../compat/ndis/subr_ndis.c: In function `NdisMFreeSharedMemory':
>>>> /tinderbox/CURRENT/amd64/amd64/src/sys/modules/ndis/../../compat/ndis/subr_ndis.c:1710: warning: long long unsigned int format, uint64_t arg (arg 3)
>>>
>>> Maybe we should make use of the PRIx64 macro? (see patch attached)
>>
>> No. PRI* is a bug in C99; it should never be used. Just cast the arg to
>> a suitable larger type with a known format (uintmax_t here). (C99 is
>> missing support for better ways; either %I as in sfio (?) or %DWIM where
>> the compiler rewrites the string to match the arg would be better.)
>
> I think what you really meant to say was:
>
> "Use %jx instead of %qx."
>
> Am I right?
No, the arg must match the format. %jx matches uintmax_t, but the arg has
type uint64_t. uint64_t just happens to be the same as uintmax_t on all
supported machines, so using %jx without casting the arg to match gives a
latent bug.
Bruce
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
- Previous message: Alexander S. Usov: "kernel panics in recent RELENG-5"
- In reply to: Bill Paul: "Re: [current tinderbox] failure on amd64/amd64"
- Next in thread: Bill Paul: "Re: [current tinderbox] failure on amd64/amd64"
- Reply: Bill Paul: "Re: [current tinderbox] failure on amd64/amd64"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|
|