#define F_SEAL_WRITE 0x0008 /* prevent writes */
#endif
-uword
+u64
clib_mem_vm_get_page_size (int fd)
{
struct stat st = { 0 };
int log2_page_size;
int n_pages;
int old_mpol = -1;
- u64 old_mask[16] = { 0 };
+ long unsigned int old_mask[16] = { 0 };
/* save old numa mem policy if needed */
if (a->flags & (CLIB_MEM_VM_F_NUMA_PREFER | CLIB_MEM_VM_F_NUMA_FORCE))
if (old_mpol != -1)
{
int rv;
- u64 mask[16] = { 0 };
+ long unsigned int mask[16] = { 0 };
mask[0] = 1 << a->numa_node;
rv = set_mempolicy (MPOL_BIND, mask, sizeof (mask) * 8 + 1);
if (rv == -1 && a->numa_node != 0 &&
return err;
}
+void
+clib_mem_vm_ext_free (clib_mem_vm_alloc_t * a)
+{
+ if (a != 0)
+ {
+ clib_mem_vm_free (a->addr, 1 << a->log2_page_size);
+ if (a->fd != -1)
+ close (a->fd);
+ }
+}
+
u64 *
clib_mem_vm_get_paddr (void *mem, int log2_page_size, int n_pages)
{