[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[dm-devel] [ANNOUNCE] block layer (request based) multipath v1



Version 1 and maybe the only version :)

I have pretty much completely convert dm-multipath to blk_mpath. I converted the hw handlers (including the out of tree hp-sw and engenio-rdac ones) and implemented the emc sense code for Read/Write errors. The next task would be to completely convert the open source Engenio driver which I had started doing for dm-multipath and the eroro code patches but ended up having problems with the sense decoding.

The large patch is here
http://www.cs.wisc.edu/~michaelc/block/blk_mpath/blk_mpath3.patch

I think the only items I have left to convert are some of the dm ioctls, but that is trivial and the defaults are ok for usage. For example I have not implemted a sysfs attr to read/write queue_if_no_path and a timeout attr so we do not have to wait forever on it.

Comments???? Should I work with Christophe to convert the userspace tools?



Changed since last post:

- Fixed partial completion code to support existing scenarios
(for example SCSI MEDIUM ERRORS where the head is completed ok but the end could end up failed or ok)
- converted dm-hw_handler code
- Completely converted dm-emc.c including adding RW error sense code
- Added hp-sw and engenio rdac code for failover. I will send sense code support when finished gettitng access from OSDL and can test that code, but it should basically work but just not so effeciently and when doing snapshots or backups or firmware upgrades or other features. Maybe Engenio could just implement this now since all the pieces are there, except maybe controller representation, or at least give me some docs so I do not have to guess about some of the code in the GPL driver :) - Added a path state sysfs attr for onlining paths. Userspace can online a path and do failback now.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]