Messages in this thread | | | Date | Sat, 07 Aug 1999 18:06:35 +0530 | From | "T. P. Saravanan" <> | Subject | how to bypass buffer cache for a block device driver |
| |
I've a custom hardware with lot of inbuilt cache. I want to write a block device driver for it and i *want to bypass the buffer cache*. I intend to run filesystems on top of it.
I filled in the "read" and "write" functions with my own versions and bypassed "block_read" and "block_write". I could "fdisk" but mount failed complaining about "request_fn".
I filled in the "request_fn" and now, it appears to me that all io happens through "request_fn". For instance, "printk" lines in "read" and "write" print nothing.
If i check the pid in "request_fn" it is that of "kflushd" or "bdflush".
---
Is it possible to bypass the buffer cache completely for a block device driver? What should I do?
Is it possible to bypass only for some processes and let thro for others? (This is the final behaviour I want.)
Where should I look for more about block device drivers and their interaction with buffer cache (i.e. apart from code in terms of design, structure etc.,).
---
I am not on the mailing list, so please post a copy to "sara@procsys.com" too.
---
Thanks in advance
Saravanan
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |