117 errmsg(
"out of shared memory")));
178 Assert(address > (
void *) toc);
179 offset = ((
char *) address) - (
char *) toc;
187#ifdef USE_ASSERT_CHECKING
189 for (
Size i = 0;
i < nentry;
i++)
204 errmsg(
"out of shared memory")));
207 Assert(offset < total_bytes);
249 for (
i = 0;
i < nentry; ++
i)
252 return ((
char *) toc) + toc->toc_entry[
i].offset;
#define pg_read_barrier()
#define pg_write_barrier()
#define BUFFERALIGN_DOWN(LEN)
#define Assert(condition)
#define FLEXIBLE_ARRAY_MEMBER
int errcode(int sqlerrcode)
#define ereport(elevel,...)
Size add_size(Size s1, Size s2)
Size mul_size(Size s1, Size s2)
void * shm_toc_allocate(shm_toc *toc, Size nbytes)
Size shm_toc_estimate(shm_toc_estimator *e)
shm_toc * shm_toc_create(uint64 magic, void *address, Size nbytes)
Size shm_toc_freespace(shm_toc *toc)
void shm_toc_insert(shm_toc *toc, uint64 key, void *address)
void * shm_toc_lookup(shm_toc *toc, uint64 key, bool noError)
shm_toc * shm_toc_attach(uint64 magic, void *address)
static void SpinLockRelease(volatile slock_t *lock)
static void SpinLockAcquire(volatile slock_t *lock)
static void SpinLockInit(volatile slock_t *lock)
shm_toc_entry toc_entry[FLEXIBLE_ARRAY_MEMBER]