summaryrefslogtreecommitdiff
path: root/sys/scsi/mpathvar.h
diff options
context:
space:
mode:
authorDavid Gwynne <dlg@cvs.openbsd.org>2013-08-26 07:29:46 +0000
committerDavid Gwynne <dlg@cvs.openbsd.org>2013-08-26 07:29:46 +0000
commit75f7b0568c60fc6c73c92ea2979f586cbcbc1bec (patch)
tree83c79ddbf455635fab0da97ab29872fceb72ee7c /sys/scsi/mpathvar.h
parent01dec682de0d0eb91db9e358055837917d9f874c (diff)
introduce the idea of groups of paths. mpath had stuff to managed
devices and paths. devices are what mpath presents as targets on its scsibus, and paths are the things attached to hardware controllers that are available to shove io down to the actual real target. all paths were considered usable for handling io on behalf of a device. this adds groups in between devices and paths. only paths on the first group in the list will now be used to handle io now. sym devices will only have one group. asym devices will treat each path as a different group. rdac, emc, and hds will group paths based on which controller in the array theyre connected to. in the future we will intercept sense data from passive controllers and use that to start running checks to pick a new primary group so we can handle controller failover situations. the group id in hds(4) is currently busted, everything else should be correct.
Diffstat (limited to 'sys/scsi/mpathvar.h')
-rw-r--r--sys/scsi/mpathvar.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/scsi/mpathvar.h b/sys/scsi/mpathvar.h
index a4c7ca4171f..45a858dacc0 100644
--- a/sys/scsi/mpathvar.h
+++ b/sys/scsi/mpathvar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: mpathvar.h,v 1.4 2013/06/10 04:16:33 dlg Exp $ */
+/* $OpenBSD: mpathvar.h,v 1.5 2013/08/26 07:29:45 dlg Exp $ */
/*
* Copyright (c) 2010 David Gwynne <dlg@openbsd.org>
@@ -47,7 +47,7 @@ struct mpath_path {
};
int mpath_path_probe(struct scsi_link *);
-int mpath_path_attach(struct mpath_path *,
+int mpath_path_attach(struct mpath_path *, u_int,
const struct mpath_ops *);
void mpath_path_state(struct mpath_path *, int);
int mpath_path_detach(struct mpath_path *);