Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 31 Oct 2011 22:10:14 +0200
From:      Alexander Motin <mav@FreeBSD.org>
To:        freebsd-current@freebsd.org
Cc:        freebsd-geom@freebsd.org
Subject:   RFC: GEOM MULTIPATH rewrite
Message-ID:  <4EAF00A6.5060903@FreeBSD.org>

next in thread | raw e-mail | index | archive | help
Hi.

Attempt to fix some GEOM MULTIPATH issues made me almost rewrite it. So
I would like to present my results and request for testing and feedback.

The main changes:
 - Improved locking and destruction process to fix crashes in many cases.
 - Improved "automatic" configuration method to make it safe by reading
metadata back from all specified paths after writing to one.
 - Added provider size check to reduce chance of conflict with other
GEOM classes.
 - Added "manual" configuration method without using on-disk metadata.
 - Added "add" and "remove" commands to manage paths manually.
 - Failed paths no longer dropped from GEOM, but only marked as FAIL and
excluded from I/O operations.
 - Automatically restore failed paths when all others paths are marked
as failed, for example, because of device-caused (not transport) errors.
 - Added "fail" and "restore" commands to manually control FAIL flag.
 - GEOM is now destroyed on last provider disconnection. IMHO it is
right to do if device was completely removed.
 - Added optional Active/Active mode support. Unlike Active/Passive
mode, load evenly distributed between all working paths. If supported by
device, it allows to significantly improve performance, utilizing
bandwidth of all paths. It is controlled by -A option during creation.
Disabled by default now.
 - Improved `status` and `list` commands output.

Latest patch can be found here:
http://people.freebsd.org/~mav/gmultipath4.patch

Feedbacks are welcome!

Sponsored by: iXsystems, Inc.

-- 
Alexander Motin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4EAF00A6.5060903>