HV:misc:fix "signed/unsigned conversion with cast"

Signed/unsigned conversion should add cast explicitily
or change the type of them to the same.

V1->V2:Fixed the 0U to 0UL because of the mistakes.
V2->V3:remove unsed macro

Signed-off-by: HuiHuang Shi <huihuang.shi@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
Huihuang Shi
2018-07-16 12:08:59 +08:00
committed by lijinxia
parent 619c600021
commit aa5027a30c
12 changed files with 95 additions and 92 deletions

View File

@@ -9,9 +9,9 @@
static inline uint32_t
entry_id_from_msix(uint16_t bdf, int8_t index)
{
uint32_t id = index;
uint32_t id = (uint8_t)index;
id = bdf | (id << 16) | (PTDEV_INTR_MSI << 24);
id = bdf | (id << 16U) | (PTDEV_INTR_MSI << 24);
return id;
}
@@ -232,7 +232,7 @@ static uint64_t ptdev_build_physical_rte(struct vm *vm,
struct ptdev_remapping_info *entry)
{
uint64_t rte;
int phys_irq = dev_to_irq(entry->node);
uint32_t phys_irq = dev_to_irq(entry->node);
uint32_t vector = dev_to_vector(entry->node);
if (entry->ptdev_intr_info.intx.vpin_src == PTDEV_VPIN_IOAPIC) {
@@ -553,12 +553,12 @@ void ptdev_softirq(__unused uint16_t cpu_id)
}
}
void ptdev_intx_ack(struct vm *vm, int virt_pin,
void ptdev_intx_ack(struct vm *vm, uint8_t virt_pin,
enum ptdev_vpin_source vpin_src)
{
uint32_t phys_irq;
struct ptdev_remapping_info *entry;
int phys_pin;
uint8_t phys_pin;
entry = lookup_entry_by_vintx(vm, virt_pin, vpin_src);
if (entry == NULL) {
@@ -632,7 +632,7 @@ int ptdev_msix_remap(struct vm *vm, uint16_t virt_bdf,
}
/* handle destroy case */
if (is_entry_active(entry) && info->vmsi_data == 0) {
if (is_entry_active(entry) && info->vmsi_data == 0U) {
info->pmsi_data = 0U;
ptdev_deactivate_entry(entry);
goto END;
@@ -712,7 +712,7 @@ int ptdev_intx_pin_remap(struct vm *vm, struct ptdev_intx_info *info)
struct ptdev_remapping_info *entry;
uint64_t rte;
uint32_t phys_irq;
int phys_pin;
uint8_t phys_pin;
bool lowpri = !is_vm0(vm);
bool need_switch_vpin_src = false;
@@ -807,7 +807,7 @@ int ptdev_intx_pin_remap(struct vm *vm, struct ptdev_intx_info *info)
ptdev_deactivate_entry(entry);
}
dev_dbg(ACRN_DBG_IRQ,
"IOAPIC pin=%d pirq=%d vpin=%d switch from %s to %s "
"IOAPIC pin=%hhu pirq=%u vpin=%d switch from %s to %s "
"vpin=%d for vm%d", phys_pin, phys_irq,
entry->ptdev_intr_info.intx.virt_pin,
(entry->ptdev_intr_info.intx.vpin_src != 0)?
@@ -829,7 +829,7 @@ int ptdev_intx_pin_remap(struct vm *vm, struct ptdev_intx_info *info)
GSI_MASK_IRQ(phys_irq);
ptdev_deactivate_entry(entry);
dev_dbg(ACRN_DBG_IRQ,
"IOAPIC pin=%d pirq=%d deassigned ",
"IOAPIC pin=%hhu pirq=%u deassigned ",
phys_pin, phys_irq);
dev_dbg(ACRN_DBG_IRQ, "from vm%d vIOAPIC vpin=%d",
entry->vm->attr.id,
@@ -852,7 +852,7 @@ int ptdev_intx_pin_remap(struct vm *vm, struct ptdev_intx_info *info)
activate_physical_ioapic(vm, entry);
dev_dbg(ACRN_DBG_IRQ,
"IOAPIC pin=%d pirq=%d assigned to vm%d %s vpin=%d",
"IOAPIC pin=%hhu pirq=%u assigned to vm%d %s vpin=%d",
phys_pin, phys_irq, entry->vm->attr.id,
entry->ptdev_intr_info.intx.vpin_src == PTDEV_VPIN_PIC ?
"vPIC" : "vIOAPIC",
@@ -937,7 +937,7 @@ void ptdev_remove_msix_remapping(struct vm *vm, uint16_t virt_bdf,
#ifdef HV_DEBUG
static void get_entry_info(struct ptdev_remapping_info *entry, char *type,
uint32_t *irq, uint32_t *vector, uint64_t *dest, bool *lvl_tm,
int *pin, int *vpin, int *bdf, int *vbdf)
int *pin, int *vpin, uint32_t *bdf, uint32_t *vbdf)
{
if (is_entry_active(entry)) {
if (entry->type == PTDEV_INTR_MSI) {
@@ -955,7 +955,7 @@ static void get_entry_info(struct ptdev_remapping_info *entry, char *type,
*bdf = entry->phys_bdf;
*vbdf = entry->virt_bdf;
} else {
int phys_irq = pin_to_irq(
uint32_t phys_irq = pin_to_irq(
entry->ptdev_intr_info.intx.phys_pin);
uint64_t rte = 0;
@@ -974,8 +974,8 @@ static void get_entry_info(struct ptdev_remapping_info *entry, char *type,
}
*pin = entry->ptdev_intr_info.intx.phys_pin;
*vpin = entry->ptdev_intr_info.intx.virt_pin;
*bdf = 0;
*vbdf = 0;
*bdf = 0U;
*vbdf = 0U;
}
*irq = dev_to_irq(entry->node);
*vector = dev_to_vector(entry->node);
@@ -987,8 +987,8 @@ static void get_entry_info(struct ptdev_remapping_info *entry, char *type,
*lvl_tm = 0;
*pin = -1;
*vpin = -1;
*bdf = 0;
*vbdf = 0;
*bdf = 0U;
*vbdf = 0U;
}
}
@@ -1000,7 +1000,8 @@ void get_ptdev_info(char *str, int str_max)
char type[16];
uint64_t dest;
bool lvl_tm;
int pin, vpin, bdf, vbdf;
int32_t pin, vpin;
uint32_t bdf, vbdf;
struct list_head *pos;
len = snprintf(str, size,

View File

@@ -23,31 +23,31 @@
#define IOMMU_INIT_BUS_LIMIT (0xf)
#define PAGE_MASK (0xFFFUL)
#define LEVEL_WIDTH 9
#define LEVEL_WIDTH 9U
#define ROOT_ENTRY_LOWER_PRESENT_POS (0)
#define ROOT_ENTRY_LOWER_PRESENT_MASK ((uint64_t)1)
#define ROOT_ENTRY_LOWER_CTP_POS (12)
#define ROOT_ENTRY_LOWER_CTP_MASK ((uint64_t)0xFFFFFFFFFFFFF)
#define ROOT_ENTRY_LOWER_PRESENT_POS (0U)
#define ROOT_ENTRY_LOWER_PRESENT_MASK (1UL)
#define ROOT_ENTRY_LOWER_CTP_POS (12U)
#define ROOT_ENTRY_LOWER_CTP_MASK (0xFFFFFFFFFFFFFUL)
#define CTX_ENTRY_UPPER_AW_POS (0)
#define CTX_ENTRY_UPPER_AW_POS (0U)
#define CTX_ENTRY_UPPER_AW_MASK \
((uint64_t)0x7 << CTX_ENTRY_UPPER_AW_POS)
#define CTX_ENTRY_UPPER_DID_POS (8)
(0x7UL << CTX_ENTRY_UPPER_AW_POS)
#define CTX_ENTRY_UPPER_DID_POS (8U)
#define CTX_ENTRY_UPPER_DID_MASK \
((uint64_t)0x3F << CTX_ENTRY_UPPER_DID_POS)
#define CTX_ENTRY_LOWER_P_POS (0)
(0x3FUL << CTX_ENTRY_UPPER_DID_POS)
#define CTX_ENTRY_LOWER_P_POS (0U)
#define CTX_ENTRY_LOWER_P_MASK \
((uint64_t)0x1 << CTX_ENTRY_LOWER_P_POS)
#define CTX_ENTRY_LOWER_FPD_POS (1)
(0x1UL << CTX_ENTRY_LOWER_P_POS)
#define CTX_ENTRY_LOWER_FPD_POS (1U)
#define CTX_ENTRY_LOWER_FPD_MASK \
((uint64_t)0x1 << CTX_ENTRY_LOWER_FPD_POS)
#define CTX_ENTRY_LOWER_TT_POS (2)
(0x1UL << CTX_ENTRY_LOWER_FPD_POS)
#define CTX_ENTRY_LOWER_TT_POS (2U)
#define CTX_ENTRY_LOWER_TT_MASK \
((uint64_t)0x3 << CTX_ENTRY_LOWER_TT_POS)
#define CTX_ENTRY_LOWER_SLPTPTR_POS (12)
(0x3UL << CTX_ENTRY_LOWER_TT_POS)
#define CTX_ENTRY_LOWER_SLPTPTR_POS (12U)
#define CTX_ENTRY_LOWER_SLPTPTR_MASK \
((uint64_t)0xFFFFFFFFFFFFF << CTX_ENTRY_LOWER_SLPTPTR_POS)
(0xFFFFFFFFFFFFFUL << CTX_ENTRY_LOWER_SLPTPTR_POS)
#define DMAR_GET_BITSLICE(var, bitname) \
((var & bitname ## _MASK) >> bitname ## _POS)
@@ -57,14 +57,14 @@
~bitname ## _MASK) | ((val << bitname ## _POS) & bitname ## _MASK))
/* translation type */
#define DMAR_CTX_TT_UNTRANSLATED 0x0
#define DMAR_CTX_TT_ALL 0x1
#define DMAR_CTX_TT_PASSTHROUGH 0x2
#define DMAR_CTX_TT_UNTRANSLATED 0x0UL
#define DMAR_CTX_TT_ALL 0x1UL
#define DMAR_CTX_TT_PASSTHROUGH 0x2UL
/* Fault event MSI data register */
#define DMAR_MSI_DELIVERY_MODE_SHIFT (8)
#define DMAR_MSI_DELIVERY_FIXED (0 << DMAR_MSI_DELIVERY_MODE_SHIFT)
#define DMAR_MSI_DELIVERY_LOWPRI (1 << DMAR_MSI_DELIVERY_MODE_SHIFT)
#define DMAR_MSI_DELIVERY_MODE_SHIFT (8U)
#define DMAR_MSI_DELIVERY_FIXED (0U << DMAR_MSI_DELIVERY_MODE_SHIFT)
#define DMAR_MSI_DELIVERY_LOWPRI (1U << DMAR_MSI_DELIVERY_MODE_SHIFT)
/* Fault event MSI address register */
#define DMAR_MSI_DEST_MODE_SHIFT (2)
@@ -312,27 +312,28 @@ static void dmar_uint_show_capability(struct dmar_drhd_rt *dmar_uint)
}
#endif
static inline uint8_t width_to_level(int width)
static inline uint8_t width_to_level(uint32_t width)
{
return ((width - 12) + (LEVEL_WIDTH)-1) / (LEVEL_WIDTH);
return ((width - 12U) + (LEVEL_WIDTH)-1U) / (LEVEL_WIDTH);
}
static inline uint8_t width_to_agaw(int width)
static inline uint8_t width_to_agaw(uint32_t width)
{
return width_to_level(width) - 2;
return width_to_level(width) - 2U;
}
static uint8_t dmar_uint_get_msagw(struct dmar_drhd_rt *dmar_uint)
{
int i;
uint8_t i;
uint8_t sgaw = iommu_cap_sagaw(dmar_uint->cap);
for (i = 4; i >= 0; i--) {
if (((1 << i) & sgaw) != 0) {
for (i = 5U; i > 0U;) {
i--;
if (((1U << i) & sgaw) != 0U) {
break;
}
}
return (uint8_t)i;
return i;
}
static bool
@@ -340,9 +341,9 @@ dmar_unit_support_aw(struct dmar_drhd_rt *dmar_uint, uint32_t addr_width)
{
uint8_t aw;
aw = (uint8_t)width_to_agaw(addr_width);
aw = width_to_agaw(addr_width);
return ((1U << aw) & iommu_cap_sagaw(dmar_uint->cap)) != 0;
return (((1U << aw) & iommu_cap_sagaw(dmar_uint->cap)) != 0U);
}
static void dmar_enable_translation(struct dmar_drhd_rt *dmar_uint)
@@ -390,6 +391,7 @@ static void dmar_register_hrhd(struct dmar_drhd_rt *dmar_uint)
dmar_uint->gcmd = iommu_read64(dmar_uint, DMAR_GCMD_REG);
dmar_uint->cap_msagaw = dmar_uint_get_msagw(dmar_uint);
dmar_uint->cap_num_fault_regs =
iommu_cap_num_fault_regs(dmar_uint->cap);
dmar_uint->cap_fault_reg_offset =
@@ -508,7 +510,7 @@ static uint8_t alloc_domain_id(void)
static void free_domain_id(uint16_t dom_id)
{
uint64_t mask = (1 << dom_id);
uint64_t mask = (1UL << dom_id);
spinlock_obtain(&domain_lock);
domain_bitmap &= ~mask;
@@ -577,7 +579,7 @@ static void dmar_invalid_context_cache(struct dmar_drhd_rt *dmar_uint,
IOMMU_LOCK(dmar_uint);
iommu_write64(dmar_uint, DMAR_CCMD_REG, cmd);
/* read upper 32bits to check */
DMAR_WAIT_COMPLETION(DMAR_CCMD_REG + 4, (status & DMA_CCMD_ICC_32) == 0U,
DMAR_WAIT_COMPLETION(DMAR_CCMD_REG + 4U, (status & DMA_CCMD_ICC_32) == 0U,
status);
IOMMU_UNLOCK(dmar_uint);
@@ -867,7 +869,7 @@ static void dmar_disable(struct dmar_drhd_rt *dmar_uint)
}
struct iommu_domain *create_iommu_domain(uint16_t vm_id, uint64_t translation_table,
int addr_width)
uint32_t addr_width)
{
struct iommu_domain *domain;
uint16_t domain_id;
@@ -1172,7 +1174,7 @@ void disable_iommu(void)
}
/* 4 iommu fault register state */
#define IOMMU_FAULT_REGISTER_STATE_NUM 4
#define IOMMU_FAULT_REGISTER_STATE_NUM 4U
static uint32_t
iommu_fault_state[CONFIG_MAX_IOMMU_NUM][IOMMU_FAULT_REGISTER_STATE_NUM];