svn commit: r318360 - head/sys/sys
John Baldwin
jhb at FreeBSD.org
Tue May 16 18:39:24 UTC 2017
Author: jhb
Date: Tue May 16 18:39:23 2017
New Revision: 318360
URL: https://svnweb.freebsd.org/changeset/base/318360
Log:
Fix p_endcopy.
For p_endcopy to work correctly, it must be the name of the next element
in struct proc after the end of the copy region, not the name of the
last element in the copy region. Currently, the last element
(p_elf_flags) is not being copied. In addition, the p_xexit and
p_xsig fields should not be copied on fork, so move them out of the
copy region.
Reviewed by: kib
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D10677
Modified:
head/sys/sys/proc.h
Modified: head/sys/sys/proc.h
==============================================================================
--- head/sys/sys/proc.h Tue May 16 18:05:34 2017 (r318359)
+++ head/sys/sys/proc.h Tue May 16 18:39:23 2017 (r318360)
@@ -624,13 +624,13 @@ struct proc {
pid_t p_reapsubtree; /* (e) Pid of the direct child of the
reaper which spawned
our subtree. */
- u_int p_xexit; /* (c) Exit code. */
- u_int p_xsig; /* (c) Stop/kill sig. */
uint16_t p_elf_machine; /* (x) ELF machine type */
uint64_t p_elf_flags; /* (x) ELF flags */
-
/* End area that is copied on creation. */
-#define p_endcopy p_elf_flags
+#define p_endcopy p_xexit
+
+ u_int p_xexit; /* (c) Exit code. */
+ u_int p_xsig; /* (c) Stop/kill sig. */
struct pgrp *p_pgrp; /* (c + e) Pointer to process group. */
struct knlist *p_klist; /* (c) Knotes attached to this proc. */
int p_numthreads; /* (c) Number of threads. */
More information about the svn-src-head
mailing list