On Thu, 13 Nov 2008, Tejun Heo wrote:Yes, that kind of interface is nice for f_ops->poll, and for libfuse. But for the kernel interface it's inefficient. A wake up event is 3 context switches instead of one. And that's inherent in the interface itself for no good reason. Also there's again the question of userspace filesystem messing with the caller: your original implementation allows the userspace filesystem to block f_ops->poll() forever, which really isn't what poll/select is about. So I'd still argue for the simple POLL-request/POLL-notify protocol on the kernel API, and possibly have the async notification similar to the kernel interface on the library API. Implementation wise I don't care all that much, but I'd actually prefer if it was implemented using the traditional request/reply thing and optimized (possibly later) to find requests in a more efficient way than searching the linear list, which would benefit not just poll but all requests. Miklos --
| Heiko Carstens | [patch -mm] s390: struct bin_attribute changes |
| Andrew Morton | 2.6.25-rc2-mm1 |
| Eric W. Biederman | Re: [PATCH] kexec: force x86_64 arches to boot kdump kernels on boot cpu |
| Jan Engelhardt | intel iommu (Re: -mm merge plans for 2.6.23) |
git: | |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Jens Axboe | Re: [BUG] New Kernel Bugs |
| Andrew Morton | Re: [PATCH] PHYLIB: IRQ event workqueue handling fixes |
