Deleted Added
full compact
vm_glue.c (40286) vm_glue.c (41931)
1/*
2 * Copyright (c) 1991, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * The Mach Operating System project at Carnegie-Mellon University.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 45 unchanged lines hidden (view full) ---

54 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
55 * School of Computer Science
56 * Carnegie Mellon University
57 * Pittsburgh PA 15213-3890
58 *
59 * any improvements or extensions that they make and grant Carnegie the
60 * rights to redistribute these changes.
61 *
1/*
2 * Copyright (c) 1991, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * The Mach Operating System project at Carnegie-Mellon University.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 45 unchanged lines hidden (view full) ---

54 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
55 * School of Computer Science
56 * Carnegie Mellon University
57 * Pittsburgh PA 15213-3890
58 *
59 * any improvements or extensions that they make and grant Carnegie the
60 * rights to redistribute these changes.
61 *
62 * $Id: vm_glue.c,v 1.76 1998/09/29 17:33:59 abial Exp $
62 * $Id: vm_glue.c,v 1.77 1998/10/13 08:24:43 dg Exp $
63 */
64
65#include "opt_rlimit.h"
66#include "opt_vm.h"
67
68#include <sys/param.h>
69#include <sys/systm.h>
70#include <sys/proc.h>

--- 154 unchanged lines hidden (view full) ---

225 shmfork(p1, p2);
226 }
227
228 pmap_new_proc(p2);
229
230 up = p2->p_addr;
231
232 /*
63 */
64
65#include "opt_rlimit.h"
66#include "opt_vm.h"
67
68#include <sys/param.h>
69#include <sys/systm.h>
70#include <sys/proc.h>

--- 154 unchanged lines hidden (view full) ---

225 shmfork(p1, p2);
226 }
227
228 pmap_new_proc(p2);
229
230 up = p2->p_addr;
231
232 /*
233#ifndef COMPAT_LINUX_THREADS
233 * p_stats and p_sigacts currently point at fields in the user struct
234 * but not at &u, instead at p_addr. Copy p_sigacts and parts of
234 * p_stats and p_sigacts currently point at fields in the user struct
235 * but not at &u, instead at p_addr. Copy p_sigacts and parts of
236#else
237 * p_stats currently points at fields in the user struct
238 * but not at &u, instead at p_addr. Copy parts of
239#endif /* COMPAT_LINUX_THREADS */
235 * p_stats; zero the rest of p_stats (statistics).
236 */
237 p2->p_stats = &up->u_stats;
240 * p_stats; zero the rest of p_stats (statistics).
241 */
242 p2->p_stats = &up->u_stats;
243#ifndef COMPAT_LINUX_THREADS
238 p2->p_sigacts = &up->u_sigacts;
239 up->u_sigacts = *p1->p_sigacts;
244 p2->p_sigacts = &up->u_sigacts;
245 up->u_sigacts = *p1->p_sigacts;
246#endif /* COMPAT_LINUX_THREADS */
240 bzero(&up->u_stats.pstat_startzero,
241 (unsigned) ((caddr_t) &up->u_stats.pstat_endzero -
242 (caddr_t) &up->u_stats.pstat_startzero));
243 bcopy(&p1->p_stats->pstat_startcopy, &up->u_stats.pstat_startcopy,
244 ((caddr_t) &up->u_stats.pstat_endcopy -
245 (caddr_t) &up->u_stats.pstat_startcopy));
246
247

--- 265 unchanged lines hidden ---
247 bzero(&up->u_stats.pstat_startzero,
248 (unsigned) ((caddr_t) &up->u_stats.pstat_endzero -
249 (caddr_t) &up->u_stats.pstat_startzero));
250 bcopy(&p1->p_stats->pstat_startcopy, &up->u_stats.pstat_startcopy,
251 ((caddr_t) &up->u_stats.pstat_endcopy -
252 (caddr_t) &up->u_stats.pstat_startcopy));
253
254

--- 265 unchanged lines hidden ---