Author: kib
Date: Mon Jun 27 23:34:53 2016
New Revision: 302242
URL: https://svnweb.freebsd.org/changeset/base/302242

Log:
  Fix userspace build after r302235: do not expose bool field of the
  structure, change it to int.
  
  The real fix is to sanitize user-visible definitions in sys/event.h,
  e.g. the affected struct knlist is of no use for userspace programs.
  
  Reported and tested by:       jkim
  Sponsored by: The FreeBSD Foundation
  MFC after:    2 weeks
  Approved by:  re (gjb)

Modified:
  head/sys/kern/kern_event.c
  head/sys/sys/event.h

Modified: head/sys/kern/kern_event.c
==============================================================================
--- head/sys/kern/kern_event.c  Mon Jun 27 22:21:29 2016        (r302241)
+++ head/sys/kern/kern_event.c  Mon Jun 27 23:34:53 2016        (r302242)
@@ -2204,7 +2204,7 @@ knlist_init(struct knlist *knl, void *lo
        else
                knl->kl_assert_unlocked = kl_assert_unlocked;
 
-       knl->kl_autodestroy = false;
+       knl->kl_autodestroy = 0;
        SLIST_INIT(&knl->kl_list);
 }
 
@@ -2255,7 +2255,7 @@ knlist_detach(struct knlist *knl)
 {
 
        KNL_ASSERT_LOCKED(knl);
-       knl->kl_autodestroy = true;
+       knl->kl_autodestroy = 1;
        if (knlist_empty(knl)) {
                knlist_destroy(knl);
                free(knl, M_KQUEUE);

Modified: head/sys/sys/event.h
==============================================================================
--- head/sys/sys/event.h        Mon Jun 27 22:21:29 2016        (r302241)
+++ head/sys/sys/event.h        Mon Jun 27 23:34:53 2016        (r302242)
@@ -159,7 +159,7 @@ struct knlist {
        void    (*kl_assert_locked)(void *);
        void    (*kl_assert_unlocked)(void *);
        void    *kl_lockarg;            /* argument passed to lock functions */
-       bool    kl_autodestroy;
+       int     kl_autodestroy;
 };
 
 
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"

Reply via email to