Path: blob/main/crypto/krb5/src/plugins/kdb/db2/libdb2/hash/page.h.patch
34928 views
*** /tmp/,RCSt1a21720 Wed Apr 3 11:49:55 19961--- page.h Wed Apr 3 08:42:25 19962***************3*** 158,16345#define PAIRFITS(P,K,D) ((PAIRSIZE((K),(D))) <= FREESPACE((P)))6#define BIGPAIRFITS(P) ((FREESPACE((P)) >= PAIR_OVERHEAD))7#define FREESPACE(P) \8((OFFSET((P)) - PAGE_OVERHEAD - (NUM_ENT((P)) * PAIR_OVERHEAD)))91011--- 158,169 -----1213#define PAIRFITS(P,K,D) ((PAIRSIZE((K),(D))) <= FREESPACE((P)))14#define BIGPAIRFITS(P) ((FREESPACE((P)) >= PAIR_OVERHEAD))15+ /*16+ * Since these are all unsigned, we need to guarantee that we never go17+ * negative. Offset values are 0-based and overheads are one based (i.e.18+ * one byte of overhead is 1, not 0), so we need to convert OFFSETs to19+ * 1-based counting before subtraction.20+ */21#define FREESPACE(P) \22((OFFSET((P)) + 1 - PAGE_OVERHEAD - (NUM_ENT((P)) * PAIR_OVERHEAD)))2324***************25*** 159,16526#define PAIRFITS(P,K,D) ((PAIRSIZE((K),(D))) <= FREESPACE((P)))27#define BIGPAIRFITS(P) ((FREESPACE((P)) >= PAIR_OVERHEAD))28#define FREESPACE(P) \29! ((OFFSET((P)) - PAGE_OVERHEAD - (NUM_ENT((P)) * PAIR_OVERHEAD)))3031/*32* Overhead on header pages is just one word -- the length of the3334--- 165,171 -----35* 1-based counting before subtraction.36*/37#define FREESPACE(P) \38! ((OFFSET((P)) + 1 - PAGE_OVERHEAD - (NUM_ENT((P)) * PAIR_OVERHEAD)))3940/*41* Overhead on header pages is just one word -- the length of the424344