Date: Wed, 9 Oct 2002 11:18:20 -0400 (EDT) From: Andrew Gallatin <gallatin@cs.duke.edu> To: Jeff Roberson <jroberson@chesapeake.net> Cc: gibbs@freebsd.org, current@freebsd.org Subject: Re: alpha tinderbox failure Message-ID: <15780.18620.457682.641298@grasshopper.cs.duke.edu> In-Reply-To: <20021008235836.B44108-100000@mail.chesapeake.net> References: <200210082312.g98NCS5R025098@beast.freebsd.org> <20021008235836.B44108-100000@mail.chesapeake.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Jeff Roberson writes: > > > On Tue, 8 Oct 2002, Dag-Erling Smorgrav wrote: > > "Makefile", line 4194: warning: duplicate script for target "geom_bsd.o" ignored > > cc1: warnings being treated as errors > > /h/des/src/sys/dev/advansys/adv_pci.c: In function `adv_pci_attach': > > /h/des/src/sys/dev/advansys/adv_pci.c:197: warning: overflow in implicit constant conversion > > *** Error code 1 > > Any progress on this? This particular message is caused by alpha's #define BUS_SPACE_UNRESTRICTED (~0UL) Clashing with int nsegments: /* XXX Should probably allow specification of alignment */ int bus_dma_tag_create(bus_dma_tag_t parent, bus_size_t alignemnt, bus_size_t boundary, bus_addr_t lowaddr, bus_addr_t highaddr, bus_dma_filter_t *filtfunc, void *filtfuncarg, bus_size_t maxsize, int nsegments, bus_size_t maxsegsz, int flags, bus_dma_tag_t *dmat); Sparc64 has the same problem. ia64 gets around it by just making BUS_SPACE_UNRESTRICTED an int: #define BUS_SPACE_UNRESTRICTED (~0) I'd like to do the same for alpha. I think this is valid, as BUS_SPACE_UNRESTRICTED seems to be used exlusively as an argument to bus_dma_tag_create(... nsegments = BUS_SPACE_UNRESTRICTED...) I'd also like to add a bus_space_subregion(). Please review the appended patch. I'm running it with no ill effects, and it makes alpha get a bit further on in LINT. (until it dies on printf format warnings). Its going to be a bear to get a clean lint with Werror. All those crusty old isa drivers casting pointers to integers make me feel a bit overwhelmed. It would be nice if des could remove LINT from the tinderbox builds until LINT has a chance of compiling. Right now people are ignoring the alpha tinderbox failure messages. Eventually, it will fail for a reason besides useless LINT garbage, and everybody will ignore it. Drew Index: include/bus.h =================================================================== RCS file: /home/ncvs/src/sys/alpha/include/bus.h,v retrieving revision 1.11 diff -u -r1.11 bus.h --- include/bus.h 4 Oct 2002 20:40:39 -0000 1.11 +++ include/bus.h 9 Oct 2002 00:06:39 -0000 @@ -88,7 +88,27 @@ /* The largest address space known so far is 40 bits */ #define BUS_SPACE_MAXADDR 0xFFFFFFFFFUL -#define BUS_SPACE_UNRESTRICTED (~0UL) +#define BUS_SPACE_UNRESTRICTED (~0) + +/* + * Get a new handle for a subregion of an already-mapped area of bus space. + */ + +static __inline int bus_space_subregion(bus_space_tag_t t, + bus_space_handle_t bsh, + bus_size_t offset, bus_size_t size, + bus_space_handle_t *nbshp); + +static __inline int +bus_space_subregion(bus_space_tag_t t __unused, bus_space_handle_t bsh, + bus_size_t offset, bus_size_t size __unused, + bus_space_handle_t *nbshp) +{ + + *nbshp = bsh + offset; + return (0); +} + struct alpha_busspace; To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15780.18620.457682.641298>