LCOV - code coverage report
Current view: top level - arch/x86/include/asm/trace - exceptions.h (source / functions) Hit Total Coverage
Test: landlock.info Lines: 0 3 0.0 %
Date: 2021-04-22 12:43:58 Functions: 0 5 0.0 %

          Line data    Source code
       1             : /* SPDX-License-Identifier: GPL-2.0 */
       2             : #undef TRACE_SYSTEM
       3             : #define TRACE_SYSTEM exceptions
       4             : 
       5             : #if !defined(_TRACE_PAGE_FAULT_H) || defined(TRACE_HEADER_MULTI_READ)
       6             : #define _TRACE_PAGE_FAULT_H
       7             : 
       8             : #include <linux/tracepoint.h>
       9             : #include <asm/trace/common.h>
      10             : 
      11             : extern int trace_pagefault_reg(void);
      12             : extern void trace_pagefault_unreg(void);
      13             : 
      14           0 : DECLARE_EVENT_CLASS(x86_exceptions,
      15             : 
      16             :         TP_PROTO(unsigned long address, struct pt_regs *regs,
      17             :                  unsigned long error_code),
      18             : 
      19             :         TP_ARGS(address, regs, error_code),
      20             : 
      21             :         TP_STRUCT__entry(
      22             :                 __field(                unsigned long, address  )
      23             :                 __field(                unsigned long, ip       )
      24             :                 __field(                unsigned long, error_code )
      25             :         ),
      26             : 
      27             :         TP_fast_assign(
      28             :                 __entry->address = address;
      29             :                 __entry->ip = regs->ip;
      30             :                 __entry->error_code = error_code;
      31             :         ),
      32             : 
      33             :         TP_printk("address=%ps ip=%ps error_code=0x%lx",
      34             :                   (void *)__entry->address, (void *)__entry->ip,
      35             :                   __entry->error_code) );
      36             : 
      37             : #define DEFINE_PAGE_FAULT_EVENT(name)                           \
      38             : DEFINE_EVENT_FN(x86_exceptions, name,                           \
      39             :         TP_PROTO(unsigned long address, struct pt_regs *regs,   \
      40             :                  unsigned long error_code),                     \
      41             :         TP_ARGS(address, regs, error_code),                     \
      42             :         trace_pagefault_reg, trace_pagefault_unreg);
      43             : 
      44           0 : DEFINE_PAGE_FAULT_EVENT(page_fault_user);
      45           0 : DEFINE_PAGE_FAULT_EVENT(page_fault_kernel);
      46             : 
      47             : #undef TRACE_INCLUDE_PATH
      48             : #undef TRACE_INCLUDE_FILE
      49             : #define TRACE_INCLUDE_PATH .
      50             : #define TRACE_INCLUDE_FILE exceptions
      51             : #endif /*  _TRACE_PAGE_FAULT_H */
      52             : 
      53             : /* This part must be outside protection */
      54             : #include <trace/define_trace.h>

Generated by: LCOV version 1.14