[common] array: add ALIGN_PAD macro for common logic

ALIGN_PAD(x, a) returns x rounded up to the nearest multiple of a.
This commit is contained in:
Quantum
2021-08-13 06:53:56 -04:00
committed by Geoffrey McRae
parent 712dcee07f
commit e5d252290d
3 changed files with 5 additions and 2 deletions

View File

@@ -22,5 +22,6 @@
#define _LG_ARRAY_H_
#define ARRAY_LENGTH(arr) (sizeof(arr) / sizeof(*(arr)))
#define ALIGN_PAD(value, align) (((value) + (align) - 1) & -(align))
#endif

View File

@@ -31,6 +31,7 @@
#include <string.h>
#include <errno.h>
#include "common/array.h"
#include "common/debug.h"
#include "common/option.h"
#include "common/sysinfo.h"
@@ -232,7 +233,7 @@ int ivshmemGetDMABuf(struct IVSHMEM * dev, uint64_t offset, uint64_t size)
(struct IVSHMEMInfo *)dev->opaque;
// align to the page size
size = (size + pageSize - 1) & -pageSize;
size = ALIGN_PAD(size, pageSize);
const struct kvmfr_dmabuf_create create =
{