diff options
author | Dan Williams <dan.j.williams@intel.com> | 2008-06-27 18:31:50 -0400 |
---|---|---|
committer | Neil Brown <neilb@notabene.brown> | 2008-06-27 18:31:50 -0400 |
commit | b203886edbcaac3ca427cf4dbcb50b18bdb346fd (patch) | |
tree | d96cf939fd3a7ab454f61110b91b3a928eb5fe7c /include/linux/raid | |
parent | 0cd17fec983b6bca505eecee1af33138687220b6 (diff) |
md: kill STRIPE_OP_MOD_DMA in raid5 offload
From: Dan Williams <dan.j.williams@intel.com>
This micro-optimization allowed the raid code to skip a re-read of the
parity block after checking parity. It took advantage of the fact that
xor-offload-engines have their own internal result buffer and can check
parity without writing to memory. Remove it for the following reasons:
1/ It is a layering violation for MD to need to manage the DMA and
non-DMA paths within async_xor_zero_sum
2/ Bad precedent to toggle the 'ops' flags outside the lock
3/ Hard to realize a performance gain as reads will not need an updated
parity block and writes will dirty it anyways.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Neil Brown <neilb@suse.de>
Diffstat (limited to 'include/linux/raid')
-rw-r--r-- | include/linux/raid/raid5.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/include/linux/raid/raid5.h b/include/linux/raid/raid5.h index f0827d31ae6f..4ecae31a3dcb 100644 --- a/include/linux/raid/raid5.h +++ b/include/linux/raid/raid5.h | |||
@@ -267,10 +267,8 @@ struct r6_state { | |||
267 | 267 | ||
268 | /* modifiers to the base operations | 268 | /* modifiers to the base operations |
269 | * STRIPE_OP_MOD_REPAIR_PD - compute the parity block and write it back | 269 | * STRIPE_OP_MOD_REPAIR_PD - compute the parity block and write it back |
270 | * STRIPE_OP_MOD_DMA_CHECK - parity is not corrupted by the check | ||
271 | */ | 270 | */ |
272 | #define STRIPE_OP_MOD_REPAIR_PD 7 | 271 | #define STRIPE_OP_MOD_REPAIR_PD 7 |
273 | #define STRIPE_OP_MOD_DMA_CHECK 8 | ||
274 | 272 | ||
275 | /* | 273 | /* |
276 | * Plugging: | 274 | * Plugging: |