????

Your IP : 216.73.216.152


Current Path : /var/lib/dkms/file_protector/1.1-1578/source/
Upload File :
Current File : //var/lib/dkms/file_protector/1.1-1578/source/module_rundown_protection.h

/**
 @file     module_rundown_protection.h
 @brief    Global module rundown protection used for safe syscalls handling
 @details  Copyright (c) 2022 Acronis International GmbH
 @author   Denis Kopyrin (Denis.Kopyrin@acronis.com)
 @since    $Id: $
 */

#pragma once
#ifdef KERNEL_MOCK
#include <mock/mock.h>
#endif
#include <linux/types.h>	// bool, [u]int(8|16|32|64)_t, atomics

void mod_rundown_protection_init(bool ready);
bool mod_rundown_protection_lock(void);
void mod_rundown_protection_unlock(void);
void mod_rundown_protection_set_rundown_active(void);
void mod_rundown_protection_wait_for_rundown(void);
bool mod_rundown_protection_wait_for_rundown_timeout(unsigned long timeout_jiffies);
void mod_rundown_protection_set_ready(void);