Kernel: Improved throne communication module for user space UID rescan

This commit is contained in:
ShirkNeko
2025-09-18 22:58:01 +08:00
parent bcdbb1e877
commit 9b96f853e9
6 changed files with 274 additions and 171 deletions

View File

@@ -4,39 +4,9 @@
#include <linux/fs.h>
#include <linux/version.h>
#include <linux/cred.h>
#include <linux/list.h>
#include "ss/policydb.h"
#include "linux/key.h"
/**
* list_count_nodes - count the number of nodes in a list
* @head: the head of the list
*
* This function iterates over the list starting from @head and counts
* the number of nodes in the list. It does not modify the list.
*
* Context: Any context. The function is safe to call in any context,
* including interrupt context, as it does not sleep or allocate
* memory.
*
* Return: the number of nodes in the list (excluding the head)
*/
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 6, 0)
static inline __maybe_unused size_t list_count_nodes(const struct list_head *head)
{
const struct list_head *pos;
size_t count = 0;
if (!head)
return 0;
list_for_each(pos, head)
count++;
return count;
}
#endif
/*
* Adapt to Huawei HISI kernel without affecting other kernels ,
* Huawei Hisi Kernel EBITMAP Enable or Disable Flag ,