On 9/4/2014 2:06 PM, Gedare Bloom wrote: > On Thu, Sep 4, 2014 at 1:10 PM, Joel Sherrill <joel.sherr...@oarcorp.com> > wrote: >> On 9/4/2014 11:19 AM, Gedare Bloom wrote: >>> On Wed, Sep 3, 2014 at 11:26 AM, Joel Sherrill >>> <joel.sherr...@oarcorp.com> wrote: >>>> --- >>>> cpukit/posix/src/mprotect.c | 23 ++++++++++++++--------- >>>> 1 file changed, 14 insertions(+), 9 deletions(-) >>>> >>>> diff --git a/cpukit/posix/src/mprotect.c b/cpukit/posix/src/mprotect.c >>>> index f2f8af6..51b565e 100644 >>>> --- a/cpukit/posix/src/mprotect.c >>>> +++ b/cpukit/posix/src/mprotect.c >>>> @@ -3,10 +3,19 @@ >>>> * >>>> * @brief Change Memory Protection >>>> * @ingroup POSIXAPI >>>> + * >>>> + * 12.2.3 Change Memory Protection, P1003.1b-1996, p. 277. >>>> + * >>>> + * This is not a functional version of mprotect() but the SPARC backend >>>> + * for at least gcc 2.8.1 plus gnat 3.13p and gcc 3.0.1 require it to >>>> + * be there and return 0. >>>> + * >>>> + * As of gcc 4.2.2, the gcc SPARC backend doesn't appear to have a >>>> + * way to call this for RTEMS anymore but it doesn't hurt to leave it. >>>> */ >>>> >>>> /* >>>> - * COPYRIGHT (c) 1989-2007. >>>> + * COPYRIGHT (c) 1989-2014. >>>> * On-Line Applications Research Corporation (OAR). >>>> * >>>> * The license and distribution terms for this file may be >>>> @@ -21,16 +30,12 @@ >>>> #include <unistd.h> >>>> >>>> /* >>>> - * 12.2.3 Change Memory Protection, P1003.1b-1996, p. 277. >>>> - * >>>> - * This is not a functional version but the SPARC backend for at least >>>> - * gcc 2.8.1 plus gnat 3.13p and gcc 3.0.1 require it to be there and >>>> - * return 0. >>>> - * >>>> - * As of gcc 4.2.2, the gcc SPARC backend doesn't appear to have a >>>> - * way to call this for RTEMS anymore but it doesn't hurt to leave it. >>>> + * RTEMS does not have <sys/mman.h> so we need a prototype here to >>>> + * avoid warnings. >>>> */ >>>> >>>> +int mprotect( const void *, size_t, int ); >>>> + >>> I don't like (despise) adding prototypes to C files just to get rid of >>> this warning. The prototype should be coming from whatever header >>> provides the function, or the function should be declared static. >> We can't make it static as it doesn't solve the problem of providing a >> public >> symbol to satisfy linking. As the comments indicate, this was added to let >> gcc produced SPARC executables actually link. >> >> Also I didn't see adding <sys/mman.h> when we don't support any of it. >> >> http://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/mman.h.html >> >> However, that doesn't mean that adding <sys/mman.h> and a bunch of >> stubs that return ENOSYS isn't an acceptable option. I just don't want to >> invest the effort now. >> > Make a note to that effect. PR? Note in code? Where?
I can assign the PR to you. :) > -gedare >>>> int mprotect( >>>> const void *addr __attribute__((unused)), >>>> size_t len __attribute__((unused)), >>>> -- >>>> 1.9.3 >>>> >>>> _______________________________________________ >>>> devel mailing list >>>> devel@rtems.org >>>> http://lists.rtems.org/mailman/listinfo/devel >> >> >> -- >> Joel Sherrill, Ph.D. Director of Research & Development >> joel.sherr...@oarcorp.com On-Line Applications Research >> Ask me about RTEMS: a free RTOS Huntsville AL 35805 >> Support Available (256) 722-9985 >> -- Joel Sherrill, Ph.D. Director of Research & Development joel.sherr...@oarcorp.com On-Line Applications Research Ask me about RTEMS: a free RTOS Huntsville AL 35805 Support Available (256) 722-9985 _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel