mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-12-08 21:22:43 +00:00
operations
For reducing sign conversion in hypervisor:
Update parameters of bitmap operations as unsigned type;
Update the input of related caller as unsigned type when the
caller's input parameter is const variable or the variable is
only used by bitmap operations.
V1-->V2:
(1) Explicit casting for the first parameter
of all bitmap operations;
(2) Remove mask operation for explicit casting
of all bitmap operations, since masking is
useless. Otherwise, this trucation is dangerous.
V2-->V3:
(1) Explicit casting for all bitmap operations parameter;
(2) Masking bit offset with 6-bit;
(3) Add few comments about bit offset.
V3-->V4:
add '\' for some statement of bitmap macro
Signed-off-by: Xiangyang Wu <xiangyang.wu@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
24 lines
539 B
C
24 lines
539 B
C
/*
|
|
* Copyright (C) 2018 Intel Corporation. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
#ifndef SOFTIRQ_H
|
|
#define SOFTIRQ_H
|
|
|
|
#define SOFTIRQ_TIMER 0
|
|
#define SOFTIRQ_DEV_ASSIGN 1
|
|
#define SOFTIRQ_MAX 2
|
|
#define SOFTIRQ_MASK ((1UL<<SOFTIRQ_MAX)-1)
|
|
|
|
/* used for atomic value for prevent recursive */
|
|
#define SOFTIRQ_ATOMIC 63U
|
|
|
|
void enable_softirq(uint16_t cpu_id);
|
|
void disable_softirq(uint16_t cpu_id);
|
|
void init_softirq(void);
|
|
void raise_softirq(int softirq_id);
|
|
void exec_softirq(void);
|
|
#endif /* SOFTIRQ_H */
|