diff options
| author | 2004-06-21 23:50:35 +0000 | |
|---|---|---|
| committer | 2004-06-21 23:50:35 +0000 | |
| commit | 3212dc310ec9c3aa2cd9e7180fe81d66a37e4443 (patch) | |
| tree | b8b428eb79259cc5ab8e628e0b78b672af7aa38b /sys/kern/sysv_shm.c | |
| parent | When in_ifinit fails and we've created a new address, clean it up before (diff) | |
| download | wireguard-openbsd-3212dc310ec9c3aa2cd9e7180fe81d66a37e4443.tar.xz wireguard-openbsd-3212dc310ec9c3aa2cd9e7180fe81d66a37e4443.zip | |
First step towards more sane time handling in the kernel -- this changes
things such that code that only need a second-resolution uptime or wall
time, and used to get that from time.tv_secs or mono_time.tv_secs now get
this from separate time_t globals time_second and time_uptime.
ok art@ niklas@ nordin@
Diffstat (limited to 'sys/kern/sysv_shm.c')
| -rw-r--r-- | sys/kern/sysv_shm.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/kern/sysv_shm.c b/sys/kern/sysv_shm.c index ff614d7655e..3be8c1a1523 100644 --- a/sys/kern/sysv_shm.c +++ b/sys/kern/sysv_shm.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sysv_shm.c,v 1.43 2004/05/03 17:38:48 millert Exp $ */ +/* $OpenBSD: sysv_shm.c,v 1.44 2004/06/21 23:50:36 tholo Exp $ */ /* $NetBSD: sysv_shm.c,v 1.50 1998/10/21 22:24:29 tron Exp $ */ /* @@ -172,7 +172,7 @@ shm_delete_mapping(struct vmspace *vm, struct shmmap_state *shmmap_s) size = round_page(shmseg->shm_segsz); uvm_deallocate(&vm->vm_map, shmmap_s->va, size); shmmap_s->shmid = -1; - shmseg->shm_dtime = time.tv_sec; + shmseg->shm_dtime = time_second; if ((--shmseg->shm_nattch <= 0) && (shmseg->shm_perm.mode & SHMSEG_REMOVED)) { shm_deallocate_segment(shmseg); @@ -286,7 +286,7 @@ sys_shmat1(struct proc *p, void *v, register_t *retval, int findremoved) shmmap_s->va = attach_va; shmmap_s->shmid = SCARG(uap, shmid); shmseg->shm_lpid = p->p_pid; - shmseg->shm_atime = time.tv_sec; + shmseg->shm_atime = time_second; shmseg->shm_nattch++; *retval = attach_va; return (0); @@ -329,7 +329,7 @@ sys_shmctl(struct proc *p, void *v, register_t *retval) shmseg->shm_perm.mode = (shmseg->shm_perm.mode & ~ACCESSPERMS) | (inbuf.shm_perm.mode & ACCESSPERMS); - shmseg->shm_ctime = time.tv_sec; + shmseg->shm_ctime = time_second; break; case IPC_RMID: if ((error = ipcperm(cred, &shmseg->shm_perm, IPC_M)) != 0) @@ -446,7 +446,7 @@ shmget_allocate_segment(struct proc *p, shmseg->shm_cpid = p->p_pid; shmseg->shm_lpid = shmseg->shm_nattch = 0; shmseg->shm_atime = shmseg->shm_dtime = 0; - shmseg->shm_ctime = time.tv_sec; + shmseg->shm_ctime = time_second; shmseg->shm_internal = shm_handle; *retval = IXSEQ_TO_IPCID(segnum, shmseg->shm_perm); |
