Messages in this thread | | | Date | Thu, 23 May 2013 10:55:09 -0700 | Subject | how to get coalesced I/O in block layer | From | Shri Agarwal <> |
| |
Hi, i am trying to develop a blk driver, i have registered my I/O handler function with blk_init_queue(my function, lock)
my function get called for every Read and write as expected but all I/O are page sized only. so even if i send 32K I/O from application to my device, it gets me 8 4k(page size ) I/O.
so i have now two choice: 1. either i get I/O before got split 2. after elevator has aggregated them.
i have tried QUEUE_FLAG_PLUGGED to get large I/O but I/O are not consistent(corruption happens after read and writing with QUEUE_FLAG_PLUGGED). any info would be highly appreciated.
thanks
| |