1 |
root |
1.1 |
Revision history for libeio |
2 |
|
|
|
3 |
root |
1.12 |
TODO: maybe add mincore support? available on at least darwin, solaris, linux, freebsd |
4 |
root |
1.22 |
TODO: openbsd requires stdint.h for intptr_t - why posix? |
5 |
root |
1.2 |
|
6 |
root |
1.27 |
TODO: make mtouch/readdir maybe others cancellable in-request |
7 |
|
|
TODO: fadvise request |
8 |
root |
1.43 |
TODO: fdopendir/utimensat |
9 |
root |
1.45 |
TODO: maybe work around 3.996gb barrier in pread/pwrite as well, maybe readahead etc.? |
10 |
root |
1.1 |
1.0 |
11 |
root |
1.53 |
- for simple request api, initialise result/errorno to -1/ECANCELED. |
12 |
root |
1.37 |
- fix a deadlock where a wakeup signal could be missed when |
13 |
|
|
a timeout occured at the same time. |
14 |
root |
1.24 |
- use nonstandard but maybe-working-on-bsd fork technique. |
15 |
root |
1.38 |
- use fewer time() syscalls when waiting for new requests. |
16 |
root |
1.31 |
- fix a path-memory-leak in readdir when using the wrappers |
17 |
|
|
(reported by Thomas L. Shinnick). |
18 |
root |
1.24 |
- support a max_idle value of 0. |
19 |
root |
1.25 |
- support setting of idle timeout value (eio_set_idle_timeout). |
20 |
root |
1.7 |
- readdir: correctly handle malloc failures. |
21 |
|
|
- readdir: new flags argument, can return inode |
22 |
|
|
and possibly filetype, can sort in various ways. |
23 |
root |
1.8 |
- readdir: stop immediately when cancelled, do |
24 |
|
|
not continue reading the directory. |
25 |
root |
1.9 |
- fix return value of eio_sendfile_sync. |
26 |
|
|
- include sys/mman.h for msync. |
27 |
root |
1.5 |
- added EIO_STACKSIZE. |
28 |
root |
1.2 |
- added msync, mtouch support (untested). |
29 |
root |
1.4 |
- added sync_file_range (untested). |
30 |
root |
1.2 |
- fixed custom support. |
31 |
root |
1.3 |
- use a more robust feed-add detection method. |
32 |
root |
1.1 |
- "outbundled" from IO::AIO. |
33 |
root |
1.10 |
- eio_set_max_polltime did not properly convert time to ticks. |
34 |
root |
1.11 |
- tentatively support darwin in sendfile. |
35 |
root |
1.13 |
- fix freebsd/darwin sendfile. |
36 |
root |
1.12 |
- also use sendfile emulation for ENOTSUP and EOPNOTSUPP |
37 |
|
|
error codes. |
38 |
|
|
- add OS-independent EIO_MT_* and EIO_MS_* flag enums. |
39 |
root |
1.14 |
- add eio_statvfs/eio_fstatvfs. |
40 |
root |
1.16 |
- add eio_mlock/eio_mlockall and OS-independent MCL_* flag enums. |
41 |
root |
1.17 |
- no longer set errno to 0 before making syscalls, this only lures |
42 |
|
|
people into the trap of believing errno shows success or failure. |
43 |
root |
1.18 |
- "fix" demo.c so that it works as non-root. |
44 |
root |
1.19 |
- suppoert utimes seperately from futimes, as some systems have |
45 |
|
|
utimes but not futimes. |
46 |
root |
1.20 |
- use _POSIX_MEMLOCK_RANGE for mlock. |
47 |
root |
1.21 |
- do not (errornously) overwrite CFLAGS in configure.ac. |
48 |
root |
1.23 |
- mknod used int3 for dev_t (ยง2 bit), not offs (64 bit). |
49 |
root |
1.26 |
- fix memory corruption in eio_readdirx for the flags |
50 |
|
|
combination EIO_READDIR_STAT_ORDER | EIO_READDIR_DIRS_FIRST. |
51 |
root |
1.27 |
- port to openbsd (another blatantly broken non-UNIX/POSIX platform). |
52 |
root |
1.28 |
- fix eio_custom prototype. |
53 |
root |
1.29 |
- work around a Linux (and likely FreeBSD and other kernels) bug |
54 |
|
|
where sendfile would not transfer all the requested bytes on |
55 |
|
|
large transfers, using a heuristic. |
56 |
root |
1.30 |
- use libecb, and apply lots of minor space optimisations. |
57 |
root |
1.32 |
- disable sendfile on darwin, broken as everything else. |
58 |
root |
1.34 |
- add realpath request and implementation. |
59 |
root |
1.35 |
- cancelled requests will still invoke their request callbacks. |
60 |
root |
1.36 |
- add fallocate. |
61 |
root |
1.38 |
- do not acquire any locks when forking. |
62 |
root |
1.39 |
- incorporated some mingw32 changes by traviscline. |
63 |
|
|
- added syncfs support, using direct syscall. |
64 |
root |
1.40 |
- set thread name on linux (ps -L/Hcx, top, gdb). |
65 |
root |
1.41 |
- remove useless use of volatile variables. |
66 |
root |
1.43 |
- fix memory leak when reaping threads. |
67 |
|
|
- use utime now uses nanosecond resolution on posix 2008 systems. |
68 |
root |
1.44 |
- allow taking advantage of posix 2008 xxxat functions and fdopendir |
69 |
|
|
by implementing a working directory abstraction. |
70 |
root |
1.46 |
- make readahead emulation behave more like actual readahead by never failing. |
71 |
root |
1.47 |
- added EIO_LSEEK (untested). |
72 |
root |
1.50 |
- added EIO_FALLOC_FL_PUNCH_HOLE. |
73 |
root |
1.48 |
- wtf. etp_proc returned 0, and no compiler ever complained. |
74 |
root |
1.49 |
- remove pread/pwrite emulation, as the only system that lacked them |
75 |
|
|
(cygwin) provides them for a while now. |
76 |
root |
1.51 |
- provide pread/pwrite implementations for win32. |
77 |
root |
1.52 |
- implement aio_realpath for windows. |
78 |
root |
1.55 |
- add EIO_FALLOC_FL_COLLAPSE_RANGE and EIO_FALLOC_FL_ZERO_RANGE. |
79 |
|
|
- add EIO_FCNTL, EIO_IOCTL. |
80 |
root |
1.56 |
- try to use SYMBOLIC_LINK_FLAG_ALLOW_UNPRIVILEGED_CREATE when creating |
81 |
|
|
symlinks on windows. |
82 |
root |
1.57 |
- support a minimum of EIO_PATH_MIN (default: 8160) as PATH_MAX (including |
83 |
|
|
trailing 0 byte) in readlink, realpath etc. |
84 |
|
|
- generate ENAMETOOLONG if readlink overflow is detected. |
85 |
root |
1.58 |
- implement support for renameat2, and corresponding flags. |
86 |
root |
1.59 |
- add EIO_FALLOC_FL_INSERT_RANGE and EIO_FALLOC_FL_UNSHARE_RANGE. |
87 |
root |
1.60 |
- use posix_close if available or needed. |
88 |
|
|
- save errno around close in ftruncateat, fstatvfsat and EIO_CLOSE. |
89 |
|
|
- add EIO_SLURP convenience request. |
90 |
|
|
- update configure.ac for newer autoconf/automake. |
91 |
root |
1.57 |
|
92 |
root |
1.32 |
|