about summary refs log tree commit diff
path: root/rt/aio_misc.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-07-27 09:43:12 +0000
committerUlrich Drepper <drepper@redhat.com>2000-07-27 09:43:12 +0000
commit92806ee99d2e2d93b3e5ed39a0932dbefb58c725 (patch)
tree17a0e3e6158ba49ff8c459c2b8255f058da4d4ca /rt/aio_misc.h
parent950c1194b1506c8274aaa19da5e1076a93a152b8 (diff)
downloadglibc-92806ee99d2e2d93b3e5ed39a0932dbefb58c725.tar.gz
glibc-92806ee99d2e2d93b3e5ed39a0932dbefb58c725.tar.xz
glibc-92806ee99d2e2d93b3e5ed39a0932dbefb58c725.zip
Update.
2000-07-26  Andreas Jaeger  <aj@suse.de>

	* rt/tst-aio.c: Add tests for aio_fsync and aio_cancel.
	(do_wait): Test requests with aio_return.
	(do_test): Change callers of do_wait.

2000-07-27  Ulrich Drepper  <drepper@redhat.com>

	* rt/aio_misc.c (__aio_remove_request): New function.  Handle removing
	from request list.  Don't do the list handling here, call
	__aio_remove_request.
	* rt/aio_misc.h: Add prototype for __aio_remove_request.
	* rt/aio_cancel.c: Don't assume __aio_find_req_fd succeeds since the
	request might already be processed.  Don't do the list handling
	here, call __aio_remove_request.

	* rt/aio_misc.c: Don't depend on aio_reqprio field for LIO_SYNC and
	LIO_DSYNC.

	* rt/aio_misc.c: Add comment explaining why writer memory barriers
	are missing.
Diffstat (limited to 'rt/aio_misc.h')
-rw-r--r--rt/aio_misc.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/rt/aio_misc.h b/rt/aio_misc.h
index e3c93bef36..eda06541e6 100644
--- a/rt/aio_misc.h
+++ b/rt/aio_misc.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -104,6 +104,11 @@ extern struct requestlist *__aio_find_req (aiocb_union *elem)
 /* Find request entry for given file descriptor.  */
 extern struct requestlist *__aio_find_req_fd (int fildes) internal_function;
 
+/* Remove request from the list.  */
+extern void __aio_remove_request (struct requestlist *last,
+				  struct requestlist *req, int all)
+     internal_function;
+
 /* Release the entry for the request.  */
 extern void __aio_free_request (struct requestlist *req) internal_function;