LCOV - code coverage report
Current view: top level - include/linux - set_memory.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 0 4 0.0 %
Date: 2022-12-09 01:23:36 Functions: 0 2 0.0 %

          Line data    Source code
       1             : /* SPDX-License-Identifier: GPL-2.0-only */
       2             : /*
       3             :  * Copyright 2017, Michael Ellerman, IBM Corporation.
       4             :  */
       5             : #ifndef _LINUX_SET_MEMORY_H_
       6             : #define _LINUX_SET_MEMORY_H_
       7             : 
       8             : #ifdef CONFIG_ARCH_HAS_SET_MEMORY
       9             : #include <asm/set_memory.h>
      10             : #else
      11             : static inline int set_memory_ro(unsigned long addr, int numpages) { return 0; }
      12             : static inline int set_memory_rw(unsigned long addr, int numpages) { return 0; }
      13             : static inline int set_memory_x(unsigned long addr,  int numpages) { return 0; }
      14             : static inline int set_memory_nx(unsigned long addr, int numpages) { return 0; }
      15             : #endif
      16             : 
      17             : #ifndef CONFIG_ARCH_HAS_SET_DIRECT_MAP
      18           0 : static inline int set_direct_map_invalid_noflush(struct page *page)
      19             : {
      20           0 :         return 0;
      21             : }
      22           0 : static inline int set_direct_map_default_noflush(struct page *page)
      23             : {
      24           0 :         return 0;
      25             : }
      26             : 
      27             : static inline bool kernel_page_present(struct page *page)
      28             : {
      29             :         return true;
      30             : }
      31             : #else /* CONFIG_ARCH_HAS_SET_DIRECT_MAP */
      32             : /*
      33             :  * Some architectures, e.g. ARM64 can disable direct map modifications at
      34             :  * boot time. Let them overrive this query.
      35             :  */
      36             : #ifndef can_set_direct_map
      37             : static inline bool can_set_direct_map(void)
      38             : {
      39             :         return true;
      40             : }
      41             : #define can_set_direct_map can_set_direct_map
      42             : #endif
      43             : #endif /* CONFIG_ARCH_HAS_SET_DIRECT_MAP */
      44             : 
      45             : #ifndef set_mce_nospec
      46             : static inline int set_mce_nospec(unsigned long pfn, bool unmap)
      47             : {
      48             :         return 0;
      49             : }
      50             : #endif
      51             : 
      52             : #ifndef clear_mce_nospec
      53             : static inline int clear_mce_nospec(unsigned long pfn)
      54             : {
      55             :         return 0;
      56             : }
      57             : #endif
      58             : 
      59             : #ifndef CONFIG_ARCH_HAS_MEM_ENCRYPT
      60             : static inline int set_memory_encrypted(unsigned long addr, int numpages)
      61             : {
      62             :         return 0;
      63             : }
      64             : 
      65             : static inline int set_memory_decrypted(unsigned long addr, int numpages)
      66             : {
      67             :         return 0;
      68             : }
      69             : #endif /* CONFIG_ARCH_HAS_MEM_ENCRYPT */
      70             : 
      71             : #endif /* _LINUX_SET_MEMORY_H_ */

Generated by: LCOV version 1.14