Commit 68f13abf authored by Sunny Bains's avatar Sunny Bains

Merge changes from parent.

parents 553c9c36 db70a821
...@@ -502,7 +502,12 @@ success: ...@@ -502,7 +502,12 @@ success:
mutex_exit(mutex); mutex_exit(mutex);
} else if (i == buf_buddy_get_slot(sizeof(buf_page_t))) { } else if (i == buf_buddy_get_slot(sizeof(buf_page_t))) {
/* This must be a buf_page_t object. */ /* This must be a buf_page_t object. */
#if UNIV_WORD_SIZE == 4
/* On 32-bit systems, there is no padding in
buf_page_t. On other systems, Valgrind could complain
about uninitialized pad bytes. */
UNIV_MEM_ASSERT_RW(src, size); UNIV_MEM_ASSERT_RW(src, size);
#endif
if (buf_buddy_relocate_block(src, dst)) { if (buf_buddy_relocate_block(src, dst)) {
goto success; goto success;
......
...@@ -1578,8 +1578,13 @@ alloc: ...@@ -1578,8 +1578,13 @@ alloc:
ut_ad(prev_b->in_LRU_list); ut_ad(prev_b->in_LRU_list);
ut_ad(buf_page_in_file(prev_b)); ut_ad(buf_page_in_file(prev_b));
#if UNIV_WORD_SIZE == 4
/* On 32-bit systems, there is no
padding in buf_page_t. On other
systems, Valgrind could complain about
uninitialized pad bytes. */
UNIV_MEM_ASSERT_RW(prev_b, sizeof *prev_b); UNIV_MEM_ASSERT_RW(prev_b, sizeof *prev_b);
#endif
UT_LIST_INSERT_AFTER(LRU, buf_pool->LRU, UT_LIST_INSERT_AFTER(LRU, buf_pool->LRU,
prev_b, b); prev_b, b);
......
...@@ -36,7 +36,7 @@ mach_write_to_1( ...@@ -36,7 +36,7 @@ mach_write_to_1(
ulint n) /*!< in: ulint integer to be stored, >= 0, < 256 */ ulint n) /*!< in: ulint integer to be stored, >= 0, < 256 */
{ {
ut_ad(b); ut_ad(b);
ut_ad(n <= 0xFFUL); ut_ad((n | 0xFFUL) <= 0xFFUL);
b[0] = (byte)n; b[0] = (byte)n;
} }
...@@ -65,7 +65,7 @@ mach_write_to_2( ...@@ -65,7 +65,7 @@ mach_write_to_2(
ulint n) /*!< in: ulint integer to be stored */ ulint n) /*!< in: ulint integer to be stored */
{ {
ut_ad(b); ut_ad(b);
ut_ad(n <= 0xFFFFUL); ut_ad((n | 0xFFFFUL) <= 0xFFFFUL);
b[0] = (byte)(n >> 8); b[0] = (byte)(n >> 8);
b[1] = (byte)(n); b[1] = (byte)(n);
...@@ -81,10 +81,7 @@ mach_read_from_2( ...@@ -81,10 +81,7 @@ mach_read_from_2(
/*=============*/ /*=============*/
const byte* b) /*!< in: pointer to 2 bytes */ const byte* b) /*!< in: pointer to 2 bytes */
{ {
ut_ad(b); return(((ulint)(b[0]) << 8) | (ulint)(b[1]));
return( ((ulint)(b[0]) << 8)
+ (ulint)(b[1])
);
} }
/********************************************************//** /********************************************************//**
...@@ -129,7 +126,7 @@ mach_write_to_3( ...@@ -129,7 +126,7 @@ mach_write_to_3(
ulint n) /*!< in: ulint integer to be stored */ ulint n) /*!< in: ulint integer to be stored */
{ {
ut_ad(b); ut_ad(b);
ut_ad(n <= 0xFFFFFFUL); ut_ad((n | 0xFFFFFFUL) <= 0xFFFFFFUL);
b[0] = (byte)(n >> 16); b[0] = (byte)(n >> 16);
b[1] = (byte)(n >> 8); b[1] = (byte)(n >> 8);
...@@ -148,8 +145,8 @@ mach_read_from_3( ...@@ -148,8 +145,8 @@ mach_read_from_3(
{ {
ut_ad(b); ut_ad(b);
return( ((ulint)(b[0]) << 16) return( ((ulint)(b[0]) << 16)
+ ((ulint)(b[1]) << 8) | ((ulint)(b[1]) << 8)
+ (ulint)(b[2]) | (ulint)(b[2])
); );
} }
...@@ -183,9 +180,9 @@ mach_read_from_4( ...@@ -183,9 +180,9 @@ mach_read_from_4(
{ {
ut_ad(b); ut_ad(b);
return( ((ulint)(b[0]) << 24) return( ((ulint)(b[0]) << 24)
+ ((ulint)(b[1]) << 16) | ((ulint)(b[1]) << 16)
+ ((ulint)(b[2]) << 8) | ((ulint)(b[2]) << 8)
+ (ulint)(b[3]) | (ulint)(b[3])
); );
} }
...@@ -721,7 +718,7 @@ mach_read_from_2_little_endian( ...@@ -721,7 +718,7 @@ mach_read_from_2_little_endian(
/*===========================*/ /*===========================*/
const byte* buf) /*!< in: from where to read */ const byte* buf) /*!< in: from where to read */
{ {
return((ulint)(*buf) + ((ulint)(*(buf + 1))) * 256); return((ulint)(buf[0]) | ((ulint)(buf[1]) << 8));
} }
/*********************************************************//** /*********************************************************//**
......
...@@ -3117,8 +3117,13 @@ page_zip_validate_low( ...@@ -3117,8 +3117,13 @@ page_zip_validate_low(
temp_page_zip in a debugger when running valgrind --db-attach. */ temp_page_zip in a debugger when running valgrind --db-attach. */
VALGRIND_GET_VBITS(page, temp_page, UNIV_PAGE_SIZE); VALGRIND_GET_VBITS(page, temp_page, UNIV_PAGE_SIZE);
UNIV_MEM_ASSERT_RW(page, UNIV_PAGE_SIZE); UNIV_MEM_ASSERT_RW(page, UNIV_PAGE_SIZE);
# if UNIV_WORD_SIZE == 4
VALGRIND_GET_VBITS(page_zip, &temp_page_zip, sizeof temp_page_zip); VALGRIND_GET_VBITS(page_zip, &temp_page_zip, sizeof temp_page_zip);
/* On 32-bit systems, there is no padding in page_zip_des_t.
On other systems, Valgrind could complain about uninitialized
pad bytes. */
UNIV_MEM_ASSERT_RW(page_zip, sizeof *page_zip); UNIV_MEM_ASSERT_RW(page_zip, sizeof *page_zip);
# endif
VALGRIND_GET_VBITS(page_zip->data, temp_page, VALGRIND_GET_VBITS(page_zip->data, temp_page,
page_zip_get_size(page_zip)); page_zip_get_size(page_zip));
UNIV_MEM_ASSERT_RW(page_zip->data, page_zip_get_size(page_zip)); UNIV_MEM_ASSERT_RW(page_zip->data, page_zip_get_size(page_zip));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment