On Thu, Mar 18, 2021 at 1:20 PM Joel Sherrill <joel.sherr...@gmail.com> wrote: > > > > On Thu, Mar 18, 2021 at 2:16 PM Ryan Long <ryan.l...@oarcorp.com> wrote: >> >> When Joel and I looked at it, this was the only assert that prevented it >> from running. > > > But Gedare's suggestion is good since it is a VERY precise check. >
We're not running tests against all of these (c.f., Chris' complaint already). Especially, if you're not running the greth device drivers, then you don't know if those mkdir() are likely failing with EEXIST or not. > --joel >> >> >> -----Original Message----- >> From: Gedare Bloom <ged...@rtems.org> >> Sent: Thursday, March 18, 2021 2:14 PM >> To: Ryan Long <ryan.l...@oarcorp.com> >> Cc: devel@rtems.org >> Subject: Re: [PATCH v2] pwdgrp.c: removed assert causing runtime issues >> >> On Thu, Mar 18, 2021 at 11:40 AM Ryan Long <ryan.l...@oarcorp.com> wrote: >> > >> > Changed the _Assert_unused_variable_equals macro to just a (void) due >> > to /etc having already been created by the network stack >> > initialization or an initial filesystem image. >> > >> > Updates #4282 >> > --- >> > cpukit/libcsupport/src/pwdgrp.c | 9 ++++----- >> > 1 file changed, 4 insertions(+), 5 deletions(-) >> > >> > diff --git a/cpukit/libcsupport/src/pwdgrp.c >> > b/cpukit/libcsupport/src/pwdgrp.c index f4a10f7..edc8aff 100644 >> > --- a/cpukit/libcsupport/src/pwdgrp.c >> > +++ b/cpukit/libcsupport/src/pwdgrp.c >> > @@ -36,7 +36,6 @@ >> > #include <stdint.h> >> > >> > #include <rtems/seterr.h> >> > -#include <rtems/score/assert.h> >> > >> > #include "pwdgrp.h" >> > >> > @@ -63,13 +62,13 @@ static void init_file(const char *name, const char >> > *content) >> > */ >> > static void pwdgrp_init(void) >> > { >> > - int sc; >> > - >> > /* >> > * Do the best to create this directory. >> > + * >> > + * /etc could be created by the network stack initialization or an >> > initial >> > + * filesystem image. Deliberately ignore the return value. >> > */ >> > - sc = mkdir("/etc", S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | >> > S_IXOTH); >> > - _Assert_Unused_variable_equals(sc, 0); >> > + (void) mkdir("/etc", S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | >> > + S_IXOTH); >> > >> >> So this seems fine, but it got me thinking, does this issue affect all the >> other mkdir-related patches recently done? >> >> Probably, we should use >> _Assert(sc == 0 || errno == EEXIST); >> (void) sc; >> >> > /* >> > * Initialize /etc/passwd >> > -- >> > 1.8.3.1 >> > >> > _______________________________________________ >> > devel mailing list >> > devel@rtems.org >> > http://lists.rtems.org/mailman/listinfo/devel >> _______________________________________________ >> devel mailing list >> devel@rtems.org >> http://lists.rtems.org/mailman/listinfo/devel _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel