[libprio] initial commit
authorChristophe Varoqui <christophe.varoqui@free.fr>
Mon, 19 Nov 2007 00:12:23 +0000 (01:12 +0100)
committerChristophe Varoqui <christophe.varoqui@free.fr>
Mon, 19 Nov 2007 00:12:23 +0000 (01:12 +0100)
commit0c858203d190690ad46beaa7d9a187260533f7d3
tree96f31b82d01fce9449710c4342e7e57847a3d53c
parentf3e2b4ee182ea9cb2403e1718eee20a55e84dc49
[libprio] initial commit

Priority callouts are nice, but have drawbacks.

1) multipathd holds a fd per path, but callouts have to open another for themselves. Which may fail.

2) callouts stored on a multipahed filesystem may hang multipathed on paging operation when there are no active path for the hosting device (getprio is in the salvation codepath). The window is small but Netapp fault injection tool manage to triggers the bug reliably.

This patch merges to priority methods in multipathd.
41 files changed:
Makefile.inc
libmultipath/Makefile
libmultipath/config.c
libmultipath/config.h
libmultipath/configure.c
libmultipath/defaults.h
libmultipath/dict.c
libmultipath/discovery.c
libmultipath/hwtable.c
libmultipath/propsel.c
libmultipath/propsel.h
libmultipath/structs.c
libmultipath/structs.h
libmultipath/structs_vec.c
libprio/Makefile [new file with mode: 0644]
libprio/alua.c [new file with mode: 0644]
libprio/alua.h [new file with mode: 0644]
libprio/alua_rtpg.c [new file with mode: 0644]
libprio/alua_rtpg.h [new file with mode: 0644]
libprio/alua_spc3.h [new file with mode: 0644]
libprio/const.c [new file with mode: 0644]
libprio/const.h [new file with mode: 0644]
libprio/emc.c [new file with mode: 0644]
libprio/emc.h [new file with mode: 0644]
libprio/hds.c [new file with mode: 0644]
libprio/hds.h [new file with mode: 0644]
libprio/hp_sw.c [new file with mode: 0644]
libprio/hp_sw.h [new file with mode: 0644]
libprio/libprio.c [new file with mode: 0644]
libprio/libprio.h [new file with mode: 0644]
libprio/netapp.c [new file with mode: 0644]
libprio/netapp.h [new file with mode: 0644]
libprio/random.c [new file with mode: 0644]
libprio/random.h [new file with mode: 0644]
libprio/rdac.c [new file with mode: 0644]
libprio/rdac.h [new file with mode: 0644]
multipath.conf.annotated
multipath.conf.synthetic
multipath/Makefile
multipath/main.c
multipathd/Makefile