From ae38fd1e4c98588314a42097c5a5e77dcef23561 Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Sun, 12 Mar 2000 23:15:27 +0000 Subject: Merge with Linux 2.3.50. --- ipc/sem.c | 2 +- ipc/shm.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'ipc') diff --git a/ipc/sem.c b/ipc/sem.c index 1dfdc92c0..a8dc53890 100644 --- a/ipc/sem.c +++ b/ipc/sem.c @@ -309,7 +309,7 @@ static void update_queue (struct sem_array * sma) for (q = sma->sem_pending; q; q = q->next) { if (q->status == 1) - return; /* wait for other process */ + continue; /* this one was woken up before */ error = try_atomic_semop(sma, q->sops, q->nsops, q->undo, q->pid, q->alter); diff --git a/ipc/shm.c b/ipc/shm.c index 9c326c799..6c6fc31d6 100644 --- a/ipc/shm.c +++ b/ipc/shm.c @@ -925,9 +925,9 @@ static struct page * shm_nopage(struct vm_area_struct * shmd, unsigned long addr swap_free(entry); if ((shp != shm_lock(shp->id)) && (is_shmzero == 0)) BUG(); - if (is_shmzero) shm_swp--; + if (is_shmzero == 0) shm_swp--; } - if (is_shmzero) shm_rss++; + if (is_shmzero == 0) shm_rss++; pte = pte_mkdirty(mk_pte(page, PAGE_SHARED)); SHM_ENTRY(shp, idx) = pte; } else -- cgit v1.2.3