forked from torvalds/linux
Permalink
Show file tree
Hide file tree
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
raid6: add Kconfig option to skip raid6 benchmarking
Adds CONFIG_RAID6_FORCE_ALGO, which causes the kernel to not benchmark
each raid recovery and syndrome generation algorithm, and instead use
the version selected via Kconfig (CONFIG_RAID6_FORCE_{INT,SSSE3,AVX2}).
In the case, the selected algorithm is not supported by the processor at
runtime, a fallback is used.
Signed-off-by: Jim Kukunas <james.t.kukunas@linux.intel.com>- Loading branch information
Showing
3 changed files
with
97 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,38 @@ | ||
| menu "RAID 6" | ||
|
|
||
| config RAID6_PQ | ||
| tristate | ||
|
|
||
| config RAID6_FORCE_ALGO | ||
| bool "Always use specified recovery algorithm" | ||
| default n | ||
| depends on RAID6_PQ | ||
| help | ||
| If this option is not set, on every boot the kernel will | ||
| benchmark each optimized version of the RAID6 recovery and | ||
| syndrome generation algorithms and will select the one that | ||
| performs best. Microbenchmarking each version negatively | ||
| affects boot time. | ||
|
|
||
| Enabling this option skips the benchmark at boot, and | ||
| instead always uses the algorithm selected. The only exception | ||
| is if the selected algorithm relies on a cpu feature not | ||
| supported at runtime. In this case, one of the lower performance | ||
| fallbacks are used. | ||
|
|
||
| choice | ||
| prompt "RAID6 Recovery Algorithm" | ||
| default RAID6_FORCE_INT | ||
| depends on RAID6_FORCE_ALGO | ||
| help | ||
| Select the RAID6 recovery algorithm to unconditionally use | ||
|
|
||
| config RAID6_FORCE_INT | ||
| bool "Reference Implementation" | ||
| config RAID6_FORCE_SSSE3 | ||
| bool "SSSE3" | ||
| config RAID6_FORCE_AVX2 | ||
| bool "AVX2" | ||
| endchoice | ||
|
|
||
| endmenu |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters