!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.3.27 

uname -a: Linux pdx1-shared-a4-04 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64 

uid=6659440(dh_z2jmpm) gid=2086089(pg10499364) groups=2086089(pg10499364)  

Safe-mode: OFF (not secure)

/usr/src/linux-hwe-6.5-headers-6.5.0-45/arch/riscv/include/asm/   drwxr-xr-x
Free 715.76 GB of 879.6 GB (81.37%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     alternative.h (2.38 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (C) 2021 Sifive.
 */

#ifndef __ASM_ALTERNATIVE_H
#define __ASM_ALTERNATIVE_H

#include <asm/alternative-macros.h>

#ifndef __ASSEMBLY__

#ifdef CONFIG_RISCV_ALTERNATIVE

#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/stddef.h>
#include <asm/hwcap.h>

#define PATCH_ID_CPUFEATURE_ID(p)        lower_16_bits(p)
#define PATCH_ID_CPUFEATURE_VALUE(p)        upper_16_bits(p)

#define RISCV_ALTERNATIVES_BOOT        0 /* alternatives applied during regular boot */
#define RISCV_ALTERNATIVES_MODULE    1 /* alternatives applied during module-init */
#define RISCV_ALTERNATIVES_EARLY_BOOT    2 /* alternatives applied before mmu start */

/* add the relative offset to the address of the offset to get the absolute address */
#define __ALT_PTR(a, f)            ((void *)&(a)->f + (a)->f)
#define ALT_OLD_PTR(a)            __ALT_PTR(a, old_offset)
#define ALT_ALT_PTR(a)            __ALT_PTR(a, alt_offset)

void probe_vendor_features(unsigned int cpu);
void __init apply_boot_alternatives(void);
void __init apply_early_boot_alternatives(void);
void apply_module_alternatives(void *start, size_t length);

void riscv_alternative_fix_offsets(void *alt_ptr, unsigned int len,
                   int patch_offset);

struct alt_entry {
    s32 old_offset;        /* offset relative to original instruction or data  */
    s32 alt_offset;        /* offset relative to replacement instruction or data */
    u16 vendor_id;        /* CPU vendor ID */
    u16 alt_len;        /* The replacement size */
    u32 patch_id;        /* The patch ID (erratum ID or cpufeature ID) */
};

void sifive_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
                  unsigned long archid, unsigned long impid,
                  unsigned int stage);
void thead_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
                 unsigned long archid, unsigned long impid,
                 unsigned int stage);

void thead_feature_probe_func(unsigned int cpu, unsigned long archid,
                  unsigned long impid);

void riscv_cpufeature_patch_func(struct alt_entry *begin, struct alt_entry *end,
                 unsigned int stage);

#else /* CONFIG_RISCV_ALTERNATIVE */

static inline void probe_vendor_features(unsigned int cpu) { }
static inline void apply_boot_alternatives(void) { }
static inline void apply_early_boot_alternatives(void) { }
static inline void apply_module_alternatives(void *start, size_t length) { }

#endif /* CONFIG_RISCV_ALTERNATIVE */

#endif
#endif

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0156 ]--