# ORE - Objects Raid Engine (libore.ko)
#
# Note ORE needs to "select ASYNC_XOR". So Not to force multiple selects
# for every ORE user we do it like this. Any user should add itself here
# at the "depends on EXOFS_FS || ..." with an ||. The dependencies are
# selected here, and we default to "ON". So in effect it is like been
# selected by any of the users.
config ORE
	tristate
	depends on EXOFS_FS || PNFS_OBJLAYOUT
	select ASYNC_XOR
	select RAID6_PQ
	select ASYNC_PQ
	default SCSI_OSD_ULD
