mirror of
https://github.com/torvalds/linux.git
synced 2026-06-07 05:55:44 +02:00
RDMA/hns: Fix the wrong type of return value of the interrupt handler
The type of return value of the interrupt handler should be irqreturn_t. Link: https://lore.kernel.org/r/20220714134353.16700-3-liangwenpeng@huawei.com Signed-off-by: Haoyue Xu <xuhaoyue1@hisilicon.com> Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com> Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
parent
f5c25465b4
commit
d95e0a0c6c
|
|
@ -5855,12 +5855,12 @@ static struct hns_roce_aeqe *next_aeqe_sw_v2(struct hns_roce_eq *eq)
|
|||
!!(eq->cons_index & eq->entries)) ? aeqe : NULL;
|
||||
}
|
||||
|
||||
static int hns_roce_v2_aeq_int(struct hns_roce_dev *hr_dev,
|
||||
struct hns_roce_eq *eq)
|
||||
static irqreturn_t hns_roce_v2_aeq_int(struct hns_roce_dev *hr_dev,
|
||||
struct hns_roce_eq *eq)
|
||||
{
|
||||
struct device *dev = hr_dev->dev;
|
||||
struct hns_roce_aeqe *aeqe = next_aeqe_sw_v2(eq);
|
||||
int aeqe_found = 0;
|
||||
irqreturn_t aeqe_found = IRQ_NONE;
|
||||
int event_type;
|
||||
u32 queue_num;
|
||||
int sub_type;
|
||||
|
|
@ -5914,7 +5914,7 @@ static int hns_roce_v2_aeq_int(struct hns_roce_dev *hr_dev,
|
|||
eq->event_type = event_type;
|
||||
eq->sub_type = sub_type;
|
||||
++eq->cons_index;
|
||||
aeqe_found = 1;
|
||||
aeqe_found = IRQ_HANDLED;
|
||||
|
||||
hns_roce_v2_init_irq_work(hr_dev, eq, queue_num);
|
||||
|
||||
|
|
@ -5922,7 +5922,8 @@ static int hns_roce_v2_aeq_int(struct hns_roce_dev *hr_dev,
|
|||
}
|
||||
|
||||
update_eq_db(eq);
|
||||
return aeqe_found;
|
||||
|
||||
return IRQ_RETVAL(aeqe_found);
|
||||
}
|
||||
|
||||
static struct hns_roce_ceqe *next_ceqe_sw_v2(struct hns_roce_eq *eq)
|
||||
|
|
@ -5937,11 +5938,11 @@ static struct hns_roce_ceqe *next_ceqe_sw_v2(struct hns_roce_eq *eq)
|
|||
!!(eq->cons_index & eq->entries)) ? ceqe : NULL;
|
||||
}
|
||||
|
||||
static int hns_roce_v2_ceq_int(struct hns_roce_dev *hr_dev,
|
||||
struct hns_roce_eq *eq)
|
||||
static irqreturn_t hns_roce_v2_ceq_int(struct hns_roce_dev *hr_dev,
|
||||
struct hns_roce_eq *eq)
|
||||
{
|
||||
struct hns_roce_ceqe *ceqe = next_ceqe_sw_v2(eq);
|
||||
int ceqe_found = 0;
|
||||
irqreturn_t ceqe_found = IRQ_NONE;
|
||||
u32 cqn;
|
||||
|
||||
while (ceqe) {
|
||||
|
|
@ -5955,21 +5956,21 @@ static int hns_roce_v2_ceq_int(struct hns_roce_dev *hr_dev,
|
|||
hns_roce_cq_completion(hr_dev, cqn);
|
||||
|
||||
++eq->cons_index;
|
||||
ceqe_found = 1;
|
||||
ceqe_found = IRQ_HANDLED;
|
||||
|
||||
ceqe = next_ceqe_sw_v2(eq);
|
||||
}
|
||||
|
||||
update_eq_db(eq);
|
||||
|
||||
return ceqe_found;
|
||||
return IRQ_RETVAL(ceqe_found);
|
||||
}
|
||||
|
||||
static irqreturn_t hns_roce_v2_msix_interrupt_eq(int irq, void *eq_ptr)
|
||||
{
|
||||
struct hns_roce_eq *eq = eq_ptr;
|
||||
struct hns_roce_dev *hr_dev = eq->hr_dev;
|
||||
int int_work;
|
||||
irqreturn_t int_work;
|
||||
|
||||
if (eq->type_flag == HNS_ROCE_CEQ)
|
||||
/* Completion event interrupt */
|
||||
|
|
@ -5985,7 +5986,7 @@ static irqreturn_t hns_roce_v2_msix_interrupt_abn(int irq, void *dev_id)
|
|||
{
|
||||
struct hns_roce_dev *hr_dev = dev_id;
|
||||
struct device *dev = hr_dev->dev;
|
||||
int int_work = 0;
|
||||
irqreturn_t int_work = IRQ_NONE;
|
||||
u32 int_st;
|
||||
u32 int_en;
|
||||
|
||||
|
|
@ -6013,7 +6014,7 @@ static irqreturn_t hns_roce_v2_msix_interrupt_abn(int irq, void *dev_id)
|
|||
int_en |= 1 << HNS_ROCE_V2_VF_ABN_INT_EN_S;
|
||||
roce_write(hr_dev, ROCEE_VF_ABN_INT_EN_REG, int_en);
|
||||
|
||||
int_work = 1;
|
||||
int_work = IRQ_HANDLED;
|
||||
} else {
|
||||
dev_err(dev, "There is no abnormal irq found!\n");
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user