summaryrefslogtreecommitdiff
path: root/src/support/cksum.c
diff options
context:
space:
mode:
authorKeith Bostic <keith@wiredtiger.com>2014-11-13 10:39:44 -0500
committerKeith Bostic <keith@wiredtiger.com>2014-11-13 10:39:44 -0500
commit9849d92e649c991b7f29e2bc94db33c273356a6d (patch)
treeb0804fe7f707b7117a73a0d2d031b9d54347bd65 /src/support/cksum.c
parent51520ae2c7d93a854597e5dc254e3b65aad58304 (diff)
downloadmongo-9849d92e649c991b7f29e2bc94db33c273356a6d.tar.gz
The Intel link no longer works, update with the name of the paper.
Diffstat (limited to 'src/support/cksum.c')
-rw-r--r--src/support/cksum.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/support/cksum.c b/src/support/cksum.c
index 1eaa345d1fe..fc4725bcfbc 100644
--- a/src/support/cksum.c
+++ b/src/support/cksum.c
@@ -24,6 +24,18 @@
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
+/*
+ * Slicing-by-8 algorithm by Michael E. Kounavis and Frank L. Berry, described
+ * in "Novel Table Lookup-Based Algorithms for High-Performance CRC Generation",
+ * IEEE Transactions on Computers, Volume 57 Issue 11, November 2008.
+ *
+ * See also Peter Kanowski's posting:
+ * http://www.strchr.com/crc32_popcnt
+ *
+ * The big endian version calculates the same result at each step, except the
+ * value of the crc is byte reversed from what it would be at that step for
+ * little endian.
+ */
#include "wt_internal.h"
@@ -1093,17 +1105,6 @@ static const uint32_t g_crc_slicing[8][256] = {
/*
* __wt_cksum_sw --
* Return a checksum for a chunk of memory, computed in software.
- *
- * Slicing-by-8 algorithm by Michael E. Kounavis and Frank L. Berry from
- * Intel Corp.:
- * http://www.intel.com/technology/comms/perfnet/download/CRC_generators.pdf
- *
- * Based on Peter Kanowski's posting:
- * http://www.strchr.com/crc32_popcnt
- *
- * The big endian version calculates the same result at each step, except the
- * value of the crc is byte reversed from what it would be at that step for
- * little endian.
*/
static uint32_t
__wt_cksum_sw(const void *chunk, size_t len)