[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
libpager/data-request.c:_pager_allow_termination called without holding
From: |
Neal H Walfield |
Subject: |
libpager/data-request.c:_pager_allow_termination called without holding P->interlock |
Date: |
01 Apr 2002 20:35:32 -0500 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/21.1 |
Small bug. Shall I apply this fix?
2002-04-01 Neal H Walfield <neal@cs.uml.edu>
* data-request.c (_pager_seqnos_memory_object_data_request): Must
hold P->interlock when calling _pager_allow_termination.
Index: data-request.c
===================================================================
RCS file: /cvsroot/hurd/hurd/libpager/data-request.c,v
retrieving revision 1.20
diff -u -u -p -r1.20 data-request.c
--- data-request.c 25 Jul 2000 19:40:27 -0000 1.20
+++ data-request.c 2 Apr 2002 01:26:29 -0000
@@ -1,5 +1,5 @@
/* Implementation of memory_object_data_request for pager library
- Copyright (C) 1994, 1995, 1996, 1997, 2000 Free Software Foundation
+ Copyright (C) 1994,95,96,97,2000,02 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
@@ -130,17 +130,13 @@ _pager_seqnos_memory_object_data_request
ports_port_deref (p);
return 0;
- allow_term_out:
- mutex_lock (&p->interlock);
- _pager_allow_termination (p);
- mutex_unlock (&p->interlock);
- ports_port_deref (p);
- return 0;
-
error_read:
memory_object_data_error (p->memobjcntl, offset, length, EIO);
_pager_mark_object_error (p, offset, length, EIO);
+ allow_term_out:
+ mutex_lock (&p->interlock);
_pager_allow_termination (p);
+ mutex_unlock (&p->interlock);
ports_port_deref (p);
return 0;
- libpager/data-request.c:_pager_allow_termination called without holding P->interlock,
Neal H Walfield <=