Size: 1422
Comment:
|
Size: 1431
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 27: | Line 27: |
<pre> | |
Line 30: | Line 31: |
Line 34: | Line 34: |
</pre> |
Linux 2.6.23; not yet released
1. Short overview (for news sites, etc)
2.6.23 includes the fallocate() syscall
2. Important things (AKA: ''the cool stuff'')
2.1. fallocate()
2.6.23 adds a new system call fallocate() which allows applications to preallocate space for a file (http://lwn.net/Articles/226710/). Each file system implementation that wants to use this feature will need to support an inode operation called fallocate.
Applications can use this feature to avoid fragmentation to certain level and thus get faster access speed. With preallocation, applications also get a guarantee of space for particular file(s) - even if later the system becomes full [http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=97ac73506c0ba93f30239bb57b4cfc5d73e68a62 (commit)]
3. Miscellaneous userland ABI changes
3.1. open() O_CLOEXEC flag
2.6.23 adds a new O_CLOEXEC flag (http://lwn.net/Articles/236843/). This flag makes it possible to avoid certain race conditions in multithreaded applications that simultaneously
<pre>
- thread #1 thread #2 fd=open()
- fork + exec
- fcntl(fd,F_SETFD,FD_CLOEXEC)
</pre>