I think they can both be updated with read-modify-write:
P' = P + D_n + D_n' Q' = Q + g^n * D_n + g^n * D_n'
However, the multiplications by g^n for computing Q' could be killer
on your CPU, so it's a tradeoff. Since we're updating e.g. 128k at
once for a single value of n, it's possible that it could be done in such a way that it's not too intensive (or cache-thrashing).
Or perhaps you have so many disks that it really is worth the time
to do the computation rather than read from all of them.
It's not a matter of cache-trashing, it's a matter of the fact that very few CPUs have any form of parallel table lookup. It could be done with dynamic code generation, but that's a whole ball of wax on its own.
-hpa
- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html