How can I read more than 4kb directly from a block device?

How can I read more than 4kb directly from a block device?

Post by wong tsan » Sat, 22 Dec 2001 21:27:10



Dear all,
        I have problem to read more than 4kb data by using bread().
So I try to use getblk() to initialize an array of buffer_head of data
size 4kb each and then pass to ll_rw_block() to get the data.
        But I find that the I/O performance is very bad. I want to know
how I can using bread(), or getblk() + ll_rw_block() to read more than
4kb data from block device efficiently. Would anyone help me?
        Thanks in advance!

Wong Tsang

 
 
 

1. Is there any method to read more than 4kb from block device?

Dear all,

        I have the problem to pass the buffer_head to
ll_rw_block() to read more than 4kb from block device.
I found out that the problem happened in getblk() which
does not allow the requested size greater than PAGE_SIZE(4kb).

        I would like to know if there is a method to read
more than 4kb data from block device. The retrieved data will
be used in the kernel mode.
        Thanks in advance!

Wong Tsang

2. machine hangs on boot when not connected to network

3. I need to read directly from hard disk device (really need to read /var partition)

4. virgin.net

5. How to set/read serial device pins directly

6. Slow system, RAM memory requirements ?

7. in debt

8. Non-Block read & Block read

9. Non blocking socket blocks; says 'read would block' ?

10. 4kB disk blocks and Sun Ultra

11. fs block size > 4KB

12. Problem with 4KB block ext2 filesystems & non ELF binaries