Messages in this thread | | | Date | Fri, 23 Jul 1999 02:19:35 -0400 | From | Jeff Garzik <> | Subject | Re: The great alpha compile warning hunt |
| |
Sean Hunter wrote: > > I'm busy trying to track down and eliminate a stack of warnings from > kernel compiles on Alpha. As you know, a lot of these are trivial > warnings just caused by people making intel assumptions. > > 1)size_t == int > > This causes a lot of "int format, different argument" warnings in > printk's. While I know that they're not that important, I'd like not > to see these if possible. > > What's the normal way to fix these sorts of things? Is an explicit > cast eg:
Thankfully most of these things are printk warning issues.
You should UPcast to a long in most cases, not downcast to an int.
> diff -ur linux.vanilla/fs/nfs/nfs2xdr.c linux/fs/nfs/nfs2xdr.c > --- linux.vanilla/fs/nfs/nfs2xdr.c Wed Jul 21 12:05:32 1999 > +++ linux/fs/nfs/nfs2xdr.c Wed Jul 21 10:40:29 1999 > @@ -446,7 +446,7 @@ > "NFS: server %s, readdir reply truncated\n", > clnt->cl_server); > printk(KERN_WARNING "NFS: nr=%d, slots=%d, len=%d\n", > - nr, (end - p), len); > + nr, (int)(end - p), len); > clnt->cl_flags |= NFS_CLNTF_BUFSIZE; > break; > > ...the approved method? I think this is quite ugly, but have done it > for all the offending printk's in my config.
No. Cast to a long, and s/%d/%ld/ for that arg. This particular case will work but in general you definitely don't want to cast pointer values (or the results of ptr arithmatic) to an int.
> 2)Similar problems with long int format being passed an int arg. > > Such as: > diff -ur linux.vanilla/fs/nfsd/export.c linux/fs/nfsd/export.c > --- linux.vanilla/fs/nfsd/export.c Tue Dec 29 19:42:25 1998 > +++ linux/fs/nfsd/export.c Wed Jul 21 11:48:09 1999 > @@ -236,7 +236,7 @@ > > dprintk("exp_export called for %s:%s (%x/%ld fl %x).\n", > nxp->ex_client, nxp->ex_path, > - nxp->ex_dev, nxp->ex_ino, nxp->ex_flags); > + nxp->ex_dev, (long)nxp->ex_ino, nxp->ex_flags); > dev = to_kdev_t(nxp->ex_dev); > ino = nxp->ex_ino;
That looks ok.
I actually made these changes myself but was waiting for the filesystem stuff to settle down before posting it.
Jeff
-- One of the most overlooked advantages to computers is... If they do foul up, there's no law against whacking them around a little. -- Joe Martin
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |