Hi Greg, Thanks for the information. I have another question :). Is there some less flexibility if we use device mapper target? For example in block device driver you can use the api such that it won't use the OS io scheduler, so the io comes directly to the block device driver through the 'make_request' call. With the device mapper i don't think that happens(looking at the api calls). Does this mean that stuff like io scheduling. barrier control etc is done by the device mapper itself and we can focus only on 'mapping' the io. Regards, Neha On Wed, May 8, 2013 at 8:11 AM, Greg Freemyer <greg.freemyer@gmail.com>wrote:
The block layers can be layered both ways. DM is the newer infrastructure and was created in the early days of 2.6
If what I was writing could fit into a dm-target, that is what I would do.
There are significant projects like drbd and mdraid that are not dm-targets, but I think their is a long term goal to incorporate mdraid's functionality at a minimum into dm. I doubt drbd is ever moved to dm. It is just too big of a project and in use in lots of production server environments.
Greg
On Tue, May 7, 2013 at 1:46 AM, Gaurav Mahajan <gauravmahajan2007@gmail.com> wrote:
Hi Neha,
LVM uses device mapper. Advantages of using device mapper is that you can stack different dm-targets on each other. I am really not aware of block device drivers.
May be Greg can help us understand the actual pros and cons.
Thanks, Gaurav
On Wed, May 1, 2013 at 9:45 PM, neha naik <nehanaik27@gmail.com> wrote:
Hi Gaurav, I went through your blog and it is really informative. But after
reading
that i realized that i have a question: If I want to write a block device driver which is going to sit on lvm (and do some functionality on top of it) then should i go for the block device driver api or write it as a device mapper target. What are the advantages/disadvantages of both the approaches.
Regards, Neha
On Tue, Apr 30, 2013 at 4:24 AM, Gaurav Mahajan <gauravmahajan2007@gmail.com> wrote:
Hi Amit,
I had compiled some notes on my blog. Here are some links on writing your own device mapper target.
http://techgmm.blogspot.in/p/writing-your-own-device-mapper-target.html
Concept of device mapper target. http://techgmm.blogspot.in/p/device-mapper-layer-explored-every.html
Thanks, Gaurav.
On Tue, Apr 30, 2013 at 5:05 AM, Anatol Pomozov <anatol.pomozov@gmail.com> wrote:
Hi
On Mon, Apr 29, 2013 at 9:51 AM, amit mehta <gmate.amit@gmail.com> wrote:
On Sun, Apr 28, 2013 at 5:24 PM, Greg Freemyer <greg.freemyer@gmail.com> wrote:
A nice diagram of the overall storage subsystem is at http://www.thomas-krenn.com/en/oss/linux-io-stack-diagram.html
Dm is just a single block in it, but it can help to see where it
fits
in overall.
Btw: that diagram doesn't show the legacy ata driver that creates /dev/hdx style devices. Has that been dropped while I wasn't paying attention? I haven't used it in years, but I thought it was still used on embedded systems.
Thank you for sharing the link, but I'm looking for more detailed information on I/O stack in Linux, dm-mapper and multipath in particular.
Some docs about multipath can be found here
http://www.sourceware.org/lvm2/wiki/MultipathUsageGuide http://christophe.varoqui.free.fr/refbook.html
The userspace part for tools is here http://sourceware.org/lvm2/
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies