Bitdefender Hypervisor Memory Introspection
kthread.c File Reference
#include "../common.h"

Go to the source code of this file.

Data Structures

struct  data
 

Typedefs

typedef void *() kthread_create_on_node_fn(int(*threadfn) (void *data), void *data, int node, const char namefmt[],...)
 
typedef void *() vmalloc_exec_fn(unsigned long size)
 
typedef int() wake_up_process_fn(void *p)
 
typedef void *() __vmalloc_node_range_fn(unsigned long size, unsigned long align, unsigned long start, unsigned long end, unsigned int gfp_mask, unsigned long prot, unsigned long vm_flags, int node, const void *caller)
 

Functions

struct data _data __agent_data ("kthread")
 The section used for this agent is .kthread_data'. More...
 
 __agent_text ("kthread")
 Allocates a memory region with size of _data.args.vmalloc_size, deploy the main agent in that memory region and creates kthread that execute the main agent. More...
 
 __agent_trampoline ("kthread")
 The trampoline of the agent. More...
 

Typedef Documentation

◆ __vmalloc_node_range_fn

typedef void*() __vmalloc_node_range_fn(unsigned long size, unsigned long align, unsigned long start, unsigned long end, unsigned int gfp_mask, unsigned long prot, unsigned long vm_flags, int node, const void *caller)

Definition at line 10 of file kthread.c.

◆ kthread_create_on_node_fn

typedef void*() kthread_create_on_node_fn(int(*threadfn)(void *data), void *data, int node, const char namefmt[],...)

Definition at line 7 of file kthread.c.

◆ vmalloc_exec_fn

typedef void*() vmalloc_exec_fn(unsigned long size)

Definition at line 8 of file kthread.c.

◆ wake_up_process_fn

typedef int() wake_up_process_fn(void *p)

Definition at line 9 of file kthread.c.

Function Documentation

◆ __agent_data()

struct data _data __agent_data ( "kthread"  )

The section used for this agent is .kthread_data'.

◆ __agent_text()

__agent_text ( "kthread"  )

Allocates a memory region with size of _data.args.vmalloc_size, deploy the main agent in that memory region and creates kthread that execute the main agent.

If an error occurs, the Intocore is notified.

The section used for this function is .kthread_text'.

Definition at line 39 of file kthread.c.

◆ __agent_trampoline()

__agent_trampoline ( "kthread"  )

The trampoline of the agent.

Calls the kthread function and generates the 'exit' asm-code.

The section used for this function is .kthread_trampoline'.

Definition at line 86 of file kthread.c.