From owner-cvs-all Thu Oct 8 17:24:57 1998 Return-Path: Received: (from daemon@localhost) by hub.freebsd.org (8.8.8/8.8.8) id RAA28304 for cvs-all-outgoing; Thu, 8 Oct 1998 17:24:57 -0700 (PDT) (envelope-from owner-cvs-all) Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id RAA28287; Thu, 8 Oct 1998 17:24:53 -0700 (PDT) (envelope-from jdp@FreeBSD.org) From: John Polstra Received: (from jdp@localhost) by freefall.freebsd.org (8.8.8/8.8.5) id RAA11054; Thu, 8 Oct 1998 17:24:51 -0700 (PDT) Date: Thu, 8 Oct 1998 17:24:51 -0700 (PDT) Message-Id: <199810090024.RAA11054@freefall.freebsd.org> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG Subject: cvs commit: src/sys/vm vm_zone.c Sender: owner-cvs-all@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk jdp 1998/10/08 17:24:51 PDT Modified files: sys/vm vm_zone.c Log: Fix a panic on SMP systems, caused by sleeping while holding a simple-lock. The reviewer raises the following caveat: "I believe these changes open a non-critical race condition when adding memory to the pool for the zone. I think what will happen is that you could have two threads that are simultaneously adding additional memory when the pool runs out. This appears to not be a problem, however, since the re-aquisition of the lock will protect the list pointers." The submitter agrees that the race is non-critical, and points out that it already existed for the non-SMP case. He suggests that perhaps a sleep lock (using the lock manager) should be used to close that race. This might be worth revisiting after 3.0 is released. Reviewed by: dg (David Greenman) Submitted by: tegge (Tor Egge) Revision Changes Path 1.22 +13 -1 src/sys/vm/vm_zone.c