diff options
author | monty@donna.mysql.com <> | 2001-02-17 14:19:19 +0200 |
---|---|---|
committer | monty@donna.mysql.com <> | 2001-02-17 14:19:19 +0200 |
commit | c533308a158795f91247e9fe3c7304fa5e7d2b3c (patch) | |
tree | bfe39951a73e906579ab819bf5198ad8f3a64a36 /innobase/include/fut0fut.ic | |
parent | 024e2f39c9a3812243778ebe64b43e8edd22a4a1 (diff) | |
download | mariadb-git-c533308a158795f91247e9fe3c7304fa5e7d2b3c.tar.gz |
Added Innobase to source distribution
Diffstat (limited to 'innobase/include/fut0fut.ic')
-rw-r--r-- | innobase/include/fut0fut.ic | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/innobase/include/fut0fut.ic b/innobase/include/fut0fut.ic new file mode 100644 index 00000000000..0f1aa9dd9ae --- /dev/null +++ b/innobase/include/fut0fut.ic @@ -0,0 +1,36 @@ +/********************************************************************** +File-based utilities + +(c) 1995 Innobase Oy + +Created 12/13/1995 Heikki Tuuri +***********************************************************************/ + +#include "sync0rw.h" +#include "buf0buf.h" + +/************************************************************************ +Gets a pointer to a file address and latches the page. */ +UNIV_INLINE +byte* +fut_get_ptr( +/*========*/ + /* out: pointer to a byte in a frame; the file + page in the frame is bufferfixed and latched */ + ulint space, /* in: space id */ + fil_addr_t addr, /* in: file address */ + ulint rw_latch, /* in: RW_S_LATCH, RW_X_LATCH */ + mtr_t* mtr) /* in: mtr handle */ +{ + byte* ptr; + + ut_ad(mtr); + ut_ad(addr.boffset < UNIV_PAGE_SIZE); + ut_ad((rw_latch == RW_S_LATCH) || (rw_latch == RW_X_LATCH)); + + ptr = buf_page_get(space, addr.page, rw_latch, mtr) + addr.boffset; + + buf_page_dbg_add_level(ptr, SYNC_NO_ORDER_CHECK); + + return(ptr); +} |