1 2009-10-30 Andreas Schwab <schwab@redhat.com>
3 * tst-aiod.h: Include <string.h>.
5 2009-09-30 Andreas Schwab <schwab@redhat.com>
7 * sysdeps/unix/sysv/linux/x86_64/librtkaio-cancellation.S: New
10 2007-12-12 Jakub Jelinek <jakub@redhat.com>
12 * sysdeps/unix/sysv/linux/kaio_read.c (aio_read64): Define to
13 something else while including kaio_misc.h.
14 * sysdeps/unix/sysv/linux/kaio_write.c (aio_write64): Likewise.
16 2007-08-01 Jakub Jelinek <jakub@redhat.com>
18 * sysdeps/unix/sysv/linux/kaio_misc.h (AIO_MISC_NOTIFY,
19 AIO_MISC_WAIT): Add LLL_PRIVATE as last argument to lll_futex_*wait.
21 2006-09-15 Jakub Jelinek <jakub@redhat.com>
24 * rt/tst-aiod.c (do_prepare): Give name_len type size_t.
25 * rt/tst-aiod64.c (do_prepare): Likewise.
27 2006-09-07 Jakub Jelinek <jakub@redhat.com>
29 * tst-aiod2.c: Adjust test for new semantics of lio_listio.
30 * tst-aiod3.c: The thread is now supposed to be created.
32 * Makefile: Use $(..) in place of ../.
33 (tests): Add tst-aio{8,9,10}, tst-cpuclock{1,2}, tst-cputimer{1,2,3}
35 (CPPFLAGS-librtkaio): Append -I$(..)rt.
36 * Versions.def (librtkaio): Add GLIBC_2.4 version.
37 * sysdeps/unix/sysv/linux/kaio_misc.c (wait_for_kernel_requests)
38 [!DONT_NEED_AIO_MISC_COND]: Don't use condvar, use AIO_MISC_WAIT.
39 * sysdeps/unix/sysv/linux/kaio_misc.h [HAVE_FORCED_UNWIND]
40 (DONT_NEED_AIO_MISC_COND, AIO_MISC_NOTIFY, AIO_MISC_WAIT): Define.
41 (struct waitlist) [DONT_NEED_AIO_MISC_COND]: Remove cond.
42 * sysdeps/unix/sysv/linux/kaio_suspend.c (struct clparam)
43 [DONT_NEED_AIO_MISC_COND]: Remove cond.
44 (cleanup) [DONT_NEED_AIO_MISC_COND]: Lock __aio_requests_mutex on
45 entry. Don't destroy param->cond.
46 (aio_suspend): Fail if nent is negative.
47 (aio_suspend) [DONT_NEED_AIO_MISC_COND]: Don't use cond, use
49 * sysdeps/unix/sysv/linux/klio_listio.c (lio_listio): Renamed to...
50 (lio_listio_internal): ... this. Don't use cond, but AIO_MISC_WAIT,
51 if DONT_NEED_AIO_MISC_COND. Remove mode parameter check. Only set
52 sigevent type to SIGEV_NONE if LIO_NO_INDIVIDUAL_EVENT is set.
53 (__lio_listio_21): New function. Compatiblity version which sets
54 LIO_NO_INDIVIDUAL_EVENT before calling lio_listio_internal.
55 (__lio_listio_item_notify): New function.
56 * sysdeps/unix/sysv/linux/klio_listio64.c: Define __lio_listio_21 and
57 __lio_listio_item_notify macros.
59 * configure.in: New file
60 * configure: Regenerated.
61 * sysdeps/rtkaio/kaio_cancel.c: Moved to...
62 * kaio_cancel.c: ... here. New file.
63 * sysdeps/rtkaio/kaio_error.c: Moved to...
64 * kaio_error.c: ... here. New file.
65 * sysdeps/rtkaio/kaio_fsync.c: Moved to...
66 * kaio_fsync.c: ... here. New file.
67 * sysdeps/rtkaio/kaio_misc.c: Moved to...
68 * kaio_misc.c: ... here. New file.
69 * sysdeps/rtkaio/kaio_notify.c: Moved to...
70 * kaio_notify.c: ... here. New file.
71 * sysdeps/rtkaio/kaio_read.c: Moved to...
72 * kaio_read.c: ... here. New file.
73 * sysdeps/rtkaio/kaio_read64.c: Moved to...
74 * kaio_read64.c: ... here. New file.
75 * sysdeps/rtkaio/kaio_return.c: Moved to...
76 * kaio_return.c: ... here. New file.
77 * sysdeps/rtkaio/kaio_sigqueue.c: Moved to...
78 * kaio_sigqueue.c: ... here. New file.
79 * sysdeps/rtkaio/kaio_suspend.c: Moved to...
80 * kaio_suspend.c: ... here. New file.
81 * sysdeps/rtkaio/kaio_write.c: Moved to...
82 * kaio_write.c: ... here. New file.
83 * sysdeps/rtkaio/kaio_write64.c: Moved to...
84 * kaio_write64.c: ... here. New file.
85 * sysdeps/rtkaio/klio_listio.c: Moved to...
86 * klio_listio.c: ... here. New file.
87 * sysdeps/rtkaio/klio_listio64.c: Moved to...
88 * klio_listio64.c: ... here. New file.
89 * sysdeps/pthread/Versions: New file.
90 * tst-aio8.c: New file.
91 * tst-aio9.c: New file.
92 * tst-aio10.c: New file.
93 * tst-clock2.c: New file.
94 * tst-cpuclock1.c: New file.
95 * tst-cpuclock2.c: New file.
96 * tst-cputimer1.c: New file.
97 * tst-cputimer2.c: New file.
98 * tst-cputimer3.c: New file.
99 * sysdeps/unix/sysv/linux/sparc/Makefile: New file.
100 * sysdeps/unix/sysv/linux/sparc/rtkaio-sysdep.c: New file.
101 * sysdeps/unix/sysv/linux/sparc/sparc64/Versions: New file.
102 * sysdeps/mips/Makefile: Removed.
103 * sysdeps/unix/mips/rtkaio-sysdep.S: Removed.
104 * sysdeps/unix/sysv/linux/hppa/Versions: Removed.
105 * sysdeps/unix/sysv/linux/hppa/kaio_cancel.c: Removed.
107 2006-07-19 Jakub Jelinek <jakub@redhat.com>
109 * sysdeps/unix/sysv/linux/kaio_misc.c: Include atomic.h.
110 (kernel_callback): Ensure __return_value is updated before
113 2006-05-11 Jakub Jelinek <jakub@redhat.com>
115 * Makefile (tests): Add tst-mqueue{8,9}, tst-timer5 and
116 tst-aiod{,64,2,3,4,5}.
117 (LDFLAGS-rtkaio.so): Add -Wl,--enable-new-dtags,-z,nodelete.
118 * sysdeps/unix/sysv/linux/kaio_misc.h: Include signal.h and
120 (aio_start_notify_thread, aio_create_helper_thread): Define
121 for !BROKEN_THREAD_SIGNALS.
122 (__aio_start_notify_thread, __aio_create_helper_thread): New
123 functions for !BROKEN_THREAD_SIGNALS.
124 * sysdeps/unix/sysv/linux/kaio_misc.c: Include sys/sysmacros.h.
125 (aio_create_helper_thread): Define if not yet defined.
126 (__aio_create_helper_thread): New function.
127 (__aio_wait_for_events): Pass 1 rather than 0 as min_nr to
129 (handle_kernel_aio): Likewise.
130 (__aio_create_kernel_thread): Use aio_create_helper_thread.
131 (__aio_enqueue_user_request): Likewise.
132 (handle_fildes_io): Likewise. Remove noreturn attribute,
133 return NULL instead of calling pthread_exit (NULL).
134 (__aio_enqueue_request_ctx): Call fcntl and fxstat64 to avoid using
135 kaio on non-O_DIRECT non-/dev/raw* filedescriptors. For LIO_SYNC
136 and LIO_DSYNC also set kctx to KCTX_NONE.
137 * sysdeps/unix/sysv/linux/kaio_suspend.c (aio_suspend): Don't start
138 handle_kernel_aio thread if ktotal is zero.
139 * sysdeps/pthread/Makefile (tests): Add tst-mqueue8x.
140 (CFLAGS-tst-mqueue8x.c): Add -fexceptions.
141 * Versions.def (librtkaio): Add GLIBC_2.3.4 version.
142 * kaio_mq_close.c: New file.
143 * kaio_mq_getattr.c: New file.
144 * kaio_mq_notify.c: New file.
145 * kaio_mq_open.c: New file.
146 * kaio_mq_receive.c: New file.
147 * kaio_mq_send.c: New file.
148 * kaio_mq_setattr.c: New file.
149 * kaio_mq_timedreceive.c: New file.
150 * kaio_mq_timedsend.c: New file.
151 * kaio_mq_unlink.c: New file.
152 * sysdeps/pthread/tst-mqueue8x.c: New file.
153 * sysdeps/unix/sysv/linux/syscalls.list: New file.
154 * tst-mqueue8.c: New file.
155 * tst-mqueue9.c: New file.
156 * tst-timer5.c: New file.
157 * tst-aiod.h: New file.
158 * tst-aiod.c: New test.
159 * tst-aiod64.c: New test.
160 * tst-aiod2.c: New test.
161 * tst-aiod3.c: New test.
162 * tst-aiod4.c: New test.
163 * tst-aiod5.c: New test.
164 * sysdeps/mips/Makefile: New file.
165 * sysdeps/unix/alpha/Makefile: New file.
166 * sysdeps/unix/alpha/rtkaio-sysdep.S: New file.
167 * sysdeps/unix/mips/rtkaio-sysdep.S: New file.
168 * sysdeps/unix/sysv/linux/Makefile: New file.
169 * sysdeps/unix/sysv/linux/s390/Makefile: New file.
170 * sysdeps/unix/sysv/linux/s390/rtkaio-sysdep.S: New file.
171 * sysdeps/unix/sysv/linux/powerpc/Makefile: New file.
172 * sysdeps/unix/sysv/linux/powerpc/rtkaio-sysdep.c: New file.
173 * sysdeps/unix/sysv/linux/ia64/Makefile: New file.
174 * sysdeps/unix/sysv/linux/ia64/rtkaio-sysdep.S: New file.
176 2004-04-17 Jakub Jelinek <jakub@redhat.com>
178 * rt/Makefile (mq-routines): Set.
179 (librt-routines): Use it.
180 (tests): Add tst-mqueue{1,2,3,4,5,6,7} and tst-timer{3,4}.
181 (tst-mqueue7-ARGS): Set.
182 * rt/Versions (librt): Add mq_*@@GLIBC_2.3.4.
183 * rt/tst-mqueue1.c: New file.
184 * rt/tst-mqueue2.c: New file.
185 * rt/tst-mqueue3.c: New file.
186 * rt/tst-mqueue4.c: New file.
187 * rt/tst-mqueue5.c: New file.
188 * rt/tst-mqueue6.c: New file.
189 * rt/tst-mqueue7.c: New file.
190 * rt/tst-timer3.c: New file.
191 * rt/tst-timer4.c: New file.
193 2003-08-14 Jakub Jelinek <jakub@redhat.com>
195 * sysdeps/unix/sysv/linux/kaio_misc.c (wait_for_kernel_requests):
197 (handle_fildes_io): Use it for LIO_SYNC and LIO_DSYNC.
199 * sysdeps/pthread/Makefile (CPPFLAGS): Add -DBROKEN_THREAD_SIGNALS
200 for rtkaio/linuxthreads combo.
201 * sysdeps/unix/sysv/linux/kaio_misc.c (__aio_enqueue_request_ctx):
202 Only set caller_pid if BROKEN_THREAD_SIGNALS.
203 * sysdeps/unix/sysv/linux/kaio_misc.h (struct waitlist,
204 struct requestlist): Remove caller_pid unless BROKEN_THREAD_SIGNALS.
205 (__aio_notify_only): Remove last argument if not
206 BROKEN_THREAD_SIGNALS.
207 * sysdeps/unix/sysv/linux/kaio_suspend.c (aio_suspend): Only set
208 caller_pid if not BROKEN_THREAD_SIGNALS.
209 * sysdeps/unix/sysv/linux/klio_listio.c (lio_listio): Likewise.
210 Remove last argument in call to __aio_notify_only unless
211 BROKEN_THREAD_SIGNALS.
213 * tst-aio.c: Avoid test duplication. Include rt/aio.c instead.
214 * tst-aio2.c: Similarly.
215 * tst-aio3.c: Similarly.
216 * tst-aio4.c: Similarly.
217 * tst-aio5.c: Similarly.
218 * tst-aio6.c: Similarly.
219 * tst-aio64.c: Similarly.
220 * tst-aio7.c: Similarly.
221 * tst-clock.c: Similarly.
222 * tst-clock_nanosleep.c: Similarly.
223 * tst-shm.c: Similarly.
224 * tst-timer2.c: Similarly.
226 2003-07-29 Roland McGrath <roland@redhat.com>
228 * rt/tst-timer2.c: New file.
229 * rt/Makefile (tests): Add it.
231 2003-07-25 Jakub Jelinek <jakub@redhat.com>
233 * sysdeps/unix/sysv/linux/kaio_cancel.c (aio_cancel): Attempt
234 to cancel kioctx != KCTX_NONE requests even if second argument
235 to aio_cancel is NULL.
237 2003-07-24 Jakub Jelinek <jakub@redhat.com>
239 * sysdeps/unix/sysv/linux/kaio_cancel.c (aio_cancel): Return
240 AIO_ALLDONE if aiocbp != NULL and has already completed. Return
241 -1/EINVAL if aiocbp->aio_fildes does not match fildes.
243 * sysdeps/unix/sysv/linux/alpha/kaio_cancel.c: New file.
244 * sysdeps/unix/sysv/linux/hppa/kaio_cancel.c: New file.
245 * sysdeps/unix/sysv/linux/sparc/kaio_cancel.c: New file.
246 * sysdeps/unix/sysv/linux/kaio_cancel.c (aio_cancel): Attempt
247 to cancel request handled by kernel (so far just if aiocbp != NULL).
248 * sysdeps/unix/sysv/linux/kaio_misc.c (__aio_remove_krequest): Fix
249 assertion, req->kioctx must NOT be KCTX_NONE.
250 * sysdeps/unix/sysv/linux/kaio_misc.h (__aio_remove_krequest): New
253 2003-07-23 Jakub Jelinek <jakub@redhat.com>