IO Ordering on Path Failover

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

 



I am trying to understand how IO ordering safety is enforced with on
path failover. This is new territory for me so forgive me if this is
obvious. Consider the sequence:

1. client writes(lba=0,val=x) on path A.
2. multipath declares path A dead and retries write on path B
3. retried write on path B completes successfully and client get ack'd
4. client writes(lba=0,val=y) on path B. It also completes
successfully and is ack'd to client
5. write from (1) completes and corrupts data

It seems like multipath needs a guarantee at step 2 that the original
write won't complete after path A has been declared down. I thought it
would issue something like a LUN RESET on path B and that the response
to that reset would indicate that it is safe to proceed. This page
sort of supports that speculation:
http://scst.sourceforge.net/mc_s.html

In testing with dm-multipath accessing an LIO/IBLOCK device over FC, I
don't see a LUN RESET. I also don't see any indication of this in the
code but I might be missing something.

It occurred to me that my target might not be setting the correct bits
for multipathing.

Any advice?

-- 
Bob Bawn

--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/dm-devel




[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux