I would like to propose changing the prototype for the kernel memory zeroing and copying routines.
Basically, the problem is that a whole hellofalot of drivers run bzero and bcopy on volatile memory. The only way to remove the warnings is to volatilize bzero and bcopy. The compiler will, I believe, upgrade a pointer to a non-volatile (aka char *) to a pointer to a volatile (aka volatile char *) without issuing any warnings. This change should be fully backwards compatible. So I propose changing FROM void bzero __P((void *buf, size_t len)); void bcopy __P((const void *from, void *to, size_t len)); TO void bzero __P((volatile void *buf, size_t len)); void bcopy __P((volatile const void *from, volatile void *to, size_t len)); Comments? -Matt Matthew Dillon <dil...@backplane.com> To Unsubscribe: send mail to majord...@freebsd.org with "unsubscribe freebsd-current" in the body of the message