ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libeio/Changes
Revision: 1.64
Committed: Thu Nov 29 19:47:33 2018 UTC (5 years, 5 months ago) by root
Branch: MAIN
Changes since 1.63: +1 -0 lines
Log Message:
*** empty log message ***

File Contents

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