Author: badger
Date: Thu Apr 27 22:28:49 2017
New Revision: 317529
URL: https://svnweb.freebsd.org/changeset/base/317529

Log:
  Move td_sigqueue to the end of struct thread
  
  In order to preserve KBI in stable branches, replace the existing
  td_sigqueue slot with padding and move the expanded (as of r315949)
  td_sigqueue to the end of the struct.
  
  Reported by:  jhb
  Suggested by: kib
  Reviewed by:  jhb, kib, vangyzen
  Sponsored by: Dell EMC
  Differential Revision:        https://reviews.freebsd.org/D10515

Modified:
  stable/10/sys/sys/proc.h

Changes in other areas also in this revision:
Modified:
  stable/11/sys/sys/proc.h

Modified: stable/10/sys/sys/proc.h
==============================================================================
--- stable/10/sys/sys/proc.h    Thu Apr 27 22:03:08 2017        (r317528)
+++ stable/10/sys/sys/proc.h    Thu Apr 27 22:28:49 2017        (r317529)
@@ -218,8 +218,8 @@ struct thread {
        struct rl_q_entry *td_rlqe;     /* (k) Associated range lock entry. */
        struct umtx_q   *td_umtxq;      /* (c?) Link for when we're blocked. */
        lwpid_t         td_tid;         /* (b) Thread ID. */
-       sigqueue_t      td_sigqueue;    /* (c) Sigs arrived, not delivered. */
-#define        td_siglist      td_sigqueue.sq_signals
+       uint64_t        padding1[4];
+       void            *padding2[4];
        u_char          td_lend_user_pri; /* (t) Lend user pri. */
 
 /* Cleared during fork1() */
@@ -326,6 +326,8 @@ struct thread {
        u_int           td_dbg_sc_narg; /* (c) Syscall arg count to debugger.*/
        void            *td_emuldata;   /* Emulator state data */
        sbintime_t      td_sleeptimo;   /* (t) Sleep timeout. */
+       sigqueue_t      td_sigqueue;    /* (c) Sigs arrived, not delivered. */
+#define        td_siglist      td_sigqueue.sq_signals
 };
 
 struct mtx *thread_lock_block(struct thread *);
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to