alloclmb Subroutine

Purpose

Allocates a contiguous block of contiguous real memory for exclusive use by the caller. The block of memory reserved will be the size of a system LMB.

Syntax

#include <sys/dr.h>

int alloclmb(long long *laddr, int flags)

Description

The alloclmb() subroutine reserves an LMB sized block of contiguous real memory for exclusive use by the caller. It returns the partition logical address of that memory in *laddr.

alloclmb() is only valid in an LPAR environment, and it fails (with ENOTSUP) if called in another environment.

Only a privileged user should call alloclmb().

Parameters

Item Description
laddr On successful return, contains the logical address of the allocated LMB.
flags Must be 0.

Execution Environment

This alloclmb() interface should only be called from the process environment.

Return Values

Item Description
0 The LMB is successfully allocated.

Error Codes

Item Description
ENOTSUP LMB allocation not supported on this system.
EINVAL Invalid flags value.
EINVAL Not in the process environment.
ENOMEM A free LMB could not be made available.