http://defect.opensolaris.org/bz/show_bug.cgi?id=12222


amaguire <alan.maguire at sun.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |alan.maguire at sun.com


--- Comment #3 from amaguire <alan.maguire at sun.com> 2009-10-27 11:44:00 UTC 
---
(In reply to comment #2)
> I happened to see this crash twice with event test 13, but now I've run it
> again with no crash, so this doesn't look very reproducible.  Certainly from
> the stack, its not clear whether this is even a nwamd bug specifically.

looking at sysevent_open_channel(), it seems like we fclose() the fp twice in
certain circumstances:

   1834     while (getextmntent(fp, &m, sizeof (struct extmnttab)) == 0) {
   1835         if (strcmp(m.mnt_mountp, "/var/run") == 0 &&
   1836             strcmp(m.mnt_fstype, "tmpfs") == 0) {
   1837                 (void) fclose(fp);
   1838             var_run_mounted = 1;
   1839             break;
   1840         }
   1841     }
   1842     (void) fclose(fp);

what puzzles me is why this crash doesn't happen more often. Won't
getextmntent() always find the /var/run tmpfs entry, fclose()ing the fp and
break'ing out of the loop? The fix - it seems to me - is to remove the
fclose(fp) on ln 1837. I can supply a modified libsysevent if this is
reasonably reproducible...

-- 
Configure bugmail: http://defect.opensolaris.org/bz/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Reply via email to