[LST/MM TOPIC] really non-blocking in aio stack

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

Currently native aio has been used in many critical applications like
innodb of MySQL and Nginx for a web server. But it is really not as
asynchronous as the user expects. __getblk() can be blocked by the 
metadata allocation, and get_reuqest() can sleep because of the queue
congestion. So the user is really annoyed by the delay. So we want to
improve it somehow to make it at least really non-blocking.

Although we have define EIOCBRETRY, it seems to me that it is not used
as perfect as it can. We can return a EIOCBRETRY when the underlying
work will be blocked, and the generic aio can be tuned to either do it
asynchronously or notify the user about the status and let the user
have been no finalization yet. So maybe we can take this chance to
discuss it since now at least it really hurts some very important
applications in the world.

I am sorry that I forgot to send a topic to mailing list before the 
deadline. Hope it isn't too late.

Regards,
Zheng
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux