lkml.org 
[lkml]   [2024]   [Jan]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v3 2/3] irqchip/loongson-eiointc: Refine irq affinity setting during resume
From
Date
My work area is hypervisor and I find gaps between other architectures 
and hypervisors, try to keep up. And We prepare to provide eiointc
virtualization extension patch, so there is such patch.

For internal repo, you can give suggestion in internal forum to driver
owner. This is linux kernel mainline forum, I suggest we had better
discuss patch based on mainline base code.

Regards
Bibo Mao

On 2024/1/24 下午5:56, Huacai Chen wrote:
> I can give an Acked-by if these lines are also removed in our internal repo.
>
> Huacai
>
> On Thu, Jan 18, 2024 at 8:15 PM Bibo Mao <maobibo@loongson.cn> wrote:
>>
>> During suspend and resume, CPUs except CPU0 are hot-unpluged and IRQs
>> are migrated to CPU0. So it is not necessary to restore irq affinity for
>> eiointc irq controller when system resumes. This patch removes the piece
>> of code about irq affinity restoring in function eiointc_resume.
>>
>> Signed-off-by: Bibo Mao <maobibo@loongson.cn>
>> ---
>> drivers/irqchip/irq-loongson-eiointc.c | 16 ----------------
>> 1 file changed, 16 deletions(-)
>>
>> diff --git a/drivers/irqchip/irq-loongson-eiointc.c b/drivers/irqchip/irq-loongson-eiointc.c
>> index 6143adb1b73b..86f4faad0695 100644
>> --- a/drivers/irqchip/irq-loongson-eiointc.c
>> +++ b/drivers/irqchip/irq-loongson-eiointc.c
>> @@ -315,23 +315,7 @@ static int eiointc_suspend(void)
>>
>> static void eiointc_resume(void)
>> {
>> - int i, j;
>> - struct irq_desc *desc;
>> - struct irq_data *irq_data;
>> -
>> eiointc_router_init(0);
>> -
>> - for (i = 0; i < nr_pics; i++) {
>> - for (j = 0; j < eiointc_priv[0]->vec_count; j++) {
>> - desc = irq_resolve_mapping(eiointc_priv[i]->eiointc_domain, j);
>> - if (desc && desc->handle_irq && desc->handle_irq != handle_bad_irq) {
>> - raw_spin_lock(&desc->lock);
>> - irq_data = irq_domain_get_irq_data(eiointc_priv[i]->eiointc_domain, irq_desc_get_irq(desc));
>> - eiointc_set_irq_affinity(irq_data, irq_data->common->affinity, 0);
>> - raw_spin_unlock(&desc->lock);
>> - }
>> - }
>> - }
>> }
>>
>> static struct syscore_ops eiointc_syscore_ops = {
>> --
>> 2.39.3
>>


\
 
 \ /
  Last update: 2024-05-27 14:32    [W:0.052 / U:2.376 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site