diff options
author | Michael I. Bushnell <mib@gnu.org> | 1995-05-02 15:59:06 +0000 |
---|---|---|
committer | Michael I. Bushnell <mib@gnu.org> | 1995-05-02 15:59:06 +0000 |
commit | 3bb45eb81e677b4c92cc328cd0e580bd32ccc663 (patch) | |
tree | 85e19e80655dcccbfb74ed86b50c5857eee7769a /ufs | |
parent | c7af45ba62d79db2ceb767dfec9fdc54f20ed409 (diff) |
(pager_clear_user_data): Acquire pagerlistlock around modifications to
UPI->next/prevp list structure.
Diffstat (limited to 'ufs')
-rw-r--r-- | ufs/pager.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/ufs/pager.c b/ufs/pager.c index d41b792d..f403df64 100644 --- a/ufs/pager.c +++ b/ufs/pager.c @@ -1,5 +1,5 @@ /* Pager for ufs - Copyright (C) 1994 Free Software Foundation + Copyright (C) 1994, 1995 Free Software Foundation This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as @@ -363,9 +363,11 @@ pager_clear_user_data (struct user_pager_info *upi) upi->np->dn->fileinfo = 0; spin_unlock (&node2pagelock); diskfs_nrele_light (upi->np); + spin_lock (&pagerlistlock); *upi->prevp = upi->next; if (upi->next) upi->next->prevp = upi->prevp; + spin_unlock (&pagerlistlock); free (upi); } |