On Tue, Nov 28, 2006 at 05:54:28AM +0000, Christoph Hellwig wrote:I'd like to apologize for this statement, it was a little harsh. I still think most of these APIs are rather braindead, but then again everyone does braindead APIs from now to then. I still think it's very futile that you try to force APIs using standizations on us. Instead of going down that route please try to present a case for every single API you want, including reasonings why this can't be fixed by speeding up existing APIs. Note that with us I don't mean just linux but also other OpenSource OSes. Unless you at least get Linux and FreeBSD and Solaris to agree on the need for the API it's very pointless to go anywhere close to a standization body. Anyway, let's go on to the individual API groups: - readdirplus This one is completely unneeded as a kernel API. Doing readdir plus calls on the wire makes a lot of sense and we already do that for NFSv3+. Doing this at the syscall layer just means kernel bloat - syscalls are very cheap. - lockg I'm more than unhappy to add new kernel-level file locking calls. The whole mess of lockf vs fcntl vs leases is bad enough that we don't want to add more to it. Doing some form of advisory locks that can be implemented in userland using a shared memory region or message passing might be fine. - openg/sutoc No way. We already have a very nice file descriptor abstraction. You can pass file descriptors over unix sockets just fine. - NFSV4acls These have nothing to do at all with I/O performance. They're also sufficiently braindead. Even if you still want to push for it you shouldn't mix it up with anything else in here. - statlite The concept generally makes sense. The specified details are however very wrong. Any statlite call should operate on the normal OS-specified stat structure and have the mask of flags as an additional argument. Because of that you can only specific existing posix stat values as mandatory, but we should have an informal agreement that assigns unique mask values to extensions. This allows applications to easily fall back to stat on operating systems not supporting the flags variant, and also allows new operating systems to implement stat using the flags variant. While we're at it statlight is a really bad name for this API, following that *at APIs it should probably be {l,f,}statf. - O_LAZY This might make some sense. I'd rather implement lazyio_synchronize and lazyio_propagate as additional arguments to posix_fadvise, though. - readx/writex Again, useless bloat. Syscalls are cheap, and if you really want to submit multiple s/g I/Os at the same time and wait for all of them use the Posix AIO APIs or something like Linux's io_submit. - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
| Chuck Ebbert | Why do so many machines need "noapic"? |
| Linus Torvalds | Linux 2.6.27 |
| Alan Cox | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Bart Van Assche | Re: Integration of SCST in the mainstream Linux kernel |
git: | |
| Frank Lichtenheld | Re: Trying to use git-filter-branch to compress history by removing large, obsolet... |
| Imran M Yousuf | Re: [kernel.org users] [RFD] On deprecating "git-foo" for builtins |
| Petr Baudis | Re: VCS comparison table |
| Aubrey Li | git clone problem through HTTP |
| Richard Stallman | Real men don't attack straw men |
| Marcos Laufer | dmesg IBM x3650 OpenBSD 4.3 |
| Parvinder Bhasin | OpenBSD and SYNFlood / DDoS protection |
| sonjaya | openvpn on openbsd 4.1 |
| Hugh Dickins | Re: [bug?] tg3: Failed to load firmware "tigon/tg3_tso.bin" |
| Arjan van de Ven | Re: [GIT]: Networking |
| Jens Axboe | Re: [BUG] New Kernel Bugs |
| Francois Romieu | Re: 8169 Intermittent ifup Failure Issue With RTL8102E Chipset in Intel's New D945... |
| Shared swap partition | 10 hours ago | Linux general |
| high memory | 2 days ago | Linux kernel |
| semaphore access speed | 2 days ago | Applications and Utilities |
| the kernel how to power off the machine | 2 days ago | Linux kernel |
| Easter Eggs in windows XP | 2 days ago | Windows |
| Root password | 2 days ago | Linux general |
| Where/when DNOTIFY is used? | 2 days ago | Linux kernel |
| How to convert Linux Kernel built-in module into a loadable module | 2 days ago | Linux kernel |
| Linux 2.6.24 and I/O schedulers | 2 days ago | Linux kernel |
| USB Driver -- Interrupt Polling -- A Little Help Please | 3 days ago | Linux general |
