iova_magazine
struct iova_magazine *next;
static_assert(!(sizeof(struct iova_magazine) & (sizeof(struct iova_magazine) - 1)));
struct iova_magazine *loaded;
struct iova_magazine *prev;
struct iova_magazine *depot;
static struct iova_magazine *iova_magazine_alloc(gfp_t flags)
struct iova_magazine *mag;
static void iova_magazine_free(struct iova_magazine *mag)
iova_magazine_free_pfns(struct iova_magazine *mag, struct iova_domain *iovad)
static bool iova_magazine_full(struct iova_magazine *mag)
static bool iova_magazine_empty(struct iova_magazine *mag)
static unsigned long iova_magazine_pop(struct iova_magazine *mag,
static void iova_magazine_push(struct iova_magazine *mag, unsigned long pfn)
static struct iova_magazine *iova_depot_pop(struct iova_rcache *rcache)
struct iova_magazine *mag = rcache->depot;
static void iova_depot_push(struct iova_rcache *rcache, struct iova_magazine *mag)
struct iova_magazine *mag = NULL;
struct iova_magazine *new_mag = iova_magazine_alloc(GFP_ATOMIC);
struct iova_magazine *mag = iova_depot_pop(rcache);
sizeof(struct iova_magazine),