Re: mmc blkqueue is empty even if there are pending reads in do_generic_file_read()

2011-05-08 Thread Per Forlin
On 8 May 2011 17:09, Arnd Bergmann a...@arndb.de wrote: On Saturday 07 May 2011, Per Forlin wrote: The mmc queue never runs empty until end of transfer.. The requests are 128 blocks (64k limit set in mmc host driver) compared to 256 blocks before. This will not improve performance much

Re: mmc blkqueue is empty even if there are pending reads in do_generic_file_read()

2011-05-07 Thread Per Forlin
On 4 May 2011 21:13, Per Forlin per.for...@linaro.org wrote: On 3 May 2011 22:02, Arnd Bergmann a...@arndb.de wrote: On Tuesday 03 May 2011 20:54:43 Per Forlin wrote: page_not_up_to_date: /* Get exclusive access to the page ... */ error = lock_page_killable(page); I looked at the code in

Re: mmc blkqueue is empty even if there are pending reads in do_generic_file_read()

2011-05-04 Thread Arnd Bergmann
On Tuesday 03 May 2011, Per Forlin wrote: submitting small 512 byte read requests is a real problem when the underlying page size is 16 KB. If your interpretation is right, we should probably find a way to make it read larger chunks on flash media. Sorry a typo. I missed out a k :) It

Re: mmc blkqueue is empty even if there are pending reads in do_generic_file_read()

2011-05-04 Thread Per Forlin
On 3 May 2011 22:02, Arnd Bergmann a...@arndb.de wrote: On Tuesday 03 May 2011 20:54:43 Per Forlin wrote: page_not_up_to_date: /* Get exclusive access to the page ... */ error = lock_page_killable(page); I looked at the code in do_generic_file_read(). lock_page_killable waits until the

Re: mmc blkqueue is empty even if there are pending reads in do_generic_file_read()

2011-05-03 Thread Arnd Bergmann
On Thursday 28 April 2011, Per Forlin wrote: For reads on the other hand it look like this root@(none):/ dd if=/dev/mmcblk0 of=/dev/null bs=4k count=256 256+0 records in 256+0 records out root@(none):/ dmesg [mmc_queue_thread] req d954cec0 blocks 32 [mmc_queue_thread] req (null) blocks 0

Re: mmc blkqueue is empty even if there are pending reads in do_generic_file_read()

2011-05-03 Thread Per Forlin
On 3 May 2011 15:16, Arnd Bergmann a...@arndb.de wrote: On Thursday 28 April 2011, Per Forlin wrote: For reads on the other hand it look like this root@(none):/ dd if=/dev/mmcblk0 of=/dev/null bs=4k count=256 256+0 records in 256+0 records out root@(none):/ dmesg [mmc_queue_thread] req

Re: mmc blkqueue is empty even if there are pending reads in do_generic_file_read()

2011-05-03 Thread Arnd Bergmann
On Tuesday 03 May 2011 20:54:43 Per Forlin wrote: page_not_up_to_date: /* Get exclusive access to the page ... */ error = lock_page_killable(page); I looked at the code in do_generic_file_read(). lock_page_killable waits until the current read ahead is completed. Is it possible to

Re: mmc blkqueue is empty even if there are pending reads in do_generic_file_read()

2011-05-03 Thread Per Forlin
On 3 May 2011 22:02, Arnd Bergmann a...@arndb.de wrote: On Tuesday 03 May 2011 20:54:43 Per Forlin wrote: page_not_up_to_date: /* Get exclusive access to the page ... */ error = lock_page_killable(page); I looked at the code in do_generic_file_read(). lock_page_killable waits until the

mmc blkqueue is empty even if there are pending reads in do_generic_file_read()

2011-04-28 Thread Per Forlin
Hi, I am working on minimizing the latency between two block requests in the mmc framework. The approach is simple. If there are more than one request in the block queue the 2nd request will be prepared while the 1st request is being transfered. When the 1 st request is completed the 2nd request

mmc blkqueue is empty even if there are pending reads in do_generic_file_read()

2011-04-28 Thread Per Forlin
Hi, I am working on minimizing the latency between two block requests in the mmc framework. The approach is simple. If there are more than one request in the block queue the 2nd request will be prepared while the 1st request is being transfered. When the 1 st request is completed the 2nd request