root/include/xen/mem-reservation.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. xenmem_reservation_scrub_page
  2. xenmem_reservation_va_mapping_update
  3. xenmem_reservation_va_mapping_reset

   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 
   3 /*
   4  * Xen memory reservation utilities.
   5  *
   6  * Copyright (c) 2003, B Dragovic
   7  * Copyright (c) 2003-2004, M Williamson, K Fraser
   8  * Copyright (c) 2005 Dan M. Smith, IBM Corporation
   9  * Copyright (c) 2010 Daniel Kiper
  10  * Copyright (c) 2018 Oleksandr Andrushchenko, EPAM Systems Inc.
  11  */
  12 
  13 #ifndef _XENMEM_RESERVATION_H
  14 #define _XENMEM_RESERVATION_H
  15 
  16 #include <linux/highmem.h>
  17 
  18 #include <xen/page.h>
  19 
  20 extern bool xen_scrub_pages;
  21 
  22 static inline void xenmem_reservation_scrub_page(struct page *page)
  23 {
  24         if (xen_scrub_pages)
  25                 clear_highpage(page);
  26 }
  27 
  28 #ifdef CONFIG_XEN_HAVE_PVMMU
  29 void __xenmem_reservation_va_mapping_update(unsigned long count,
  30                                             struct page **pages,
  31                                             xen_pfn_t *frames);
  32 
  33 void __xenmem_reservation_va_mapping_reset(unsigned long count,
  34                                            struct page **pages);
  35 #endif
  36 
  37 static inline void xenmem_reservation_va_mapping_update(unsigned long count,
  38                                                         struct page **pages,
  39                                                         xen_pfn_t *frames)
  40 {
  41 #ifdef CONFIG_XEN_HAVE_PVMMU
  42         if (!xen_feature(XENFEAT_auto_translated_physmap))
  43                 __xenmem_reservation_va_mapping_update(count, pages, frames);
  44 #endif
  45 }
  46 
  47 static inline void xenmem_reservation_va_mapping_reset(unsigned long count,
  48                                                        struct page **pages)
  49 {
  50 #ifdef CONFIG_XEN_HAVE_PVMMU
  51         if (!xen_feature(XENFEAT_auto_translated_physmap))
  52                 __xenmem_reservation_va_mapping_reset(count, pages);
  53 #endif
  54 }
  55 
  56 int xenmem_reservation_increase(int count, xen_pfn_t *frames);
  57 
  58 int xenmem_reservation_decrease(int count, xen_pfn_t *frames);
  59 
  60 #endif

/* [<][>][^][v][top][bottom][index][help] */