108#define FNV_PRIME 16777619
122 0x5B1F36E9, 0xB8525960, 0x02AB50AA, 0x1DE66D2A,
123 0x79FF467A, 0x9BB9F8A3, 0x217E7CD2, 0x83E13D2C,
124 0xF8D4474F, 0xE39EB970, 0x42C6AE16, 0x993216FA,
125 0x7B093B5D, 0x98DAFF3C, 0xF718902A, 0x0B1C9CDB,
126 0xE58F764B, 0x187636BC, 0x5D7B3BB1, 0xE73DE7DE,
127 0x92BEC979, 0xCCA6C0B2, 0x304A0979, 0x85AA43D4,
128 0x783125BB, 0x6CA8EAA2, 0xE407EAC6, 0x4B5CFC3E,
129 0x9FBF8C76, 0x15CA20BE, 0xF2CA9FD3, 0x959BD756
135#define CHECKSUM_COMP(checksum, value) \
137 uint32 __tmp = (checksum) ^ (value); \
138 (checksum) = __tmp * FNV_PRIME ^ (__tmp >> 17); \
165 for (
i = 0;
i < 2;
i++)
214 return (
uint16) ((checksum % 65535) + 1);
static bool PageIsNew(Page page)
#define Assert(condition)
static const uint32 checksumBaseOffsets[N_SUMS]
#define CHECKSUM_COMP(checksum, value)
static uint32 pg_checksum_block(const PGChecksummablePage *page)
uint16 pg_checksum_page(char *page, BlockNumber blkno)
uint32 data[BLCKSZ/(sizeof(uint32) *N_SUMS)][N_SUMS]