On 22.06.21 14:17, Dongjiu Geng wrote:
> Hi,
>    when the Jailhouse hypervisor is enabled in first time,
> "cell_added_removed == root_cell" the  irqchip.adjust_irq_target()
> will execute two times, it seems there is no need to execute two
> times, maybe it is better to add a judgement to avoid it?
> 
> void irqchip_config_commit(struct cell *cell_added_removed)
> {
>         unsigned int n;
> 
>         if (!cell_added_removed)
>                 return;
> 
>         for (n = 32; n < sizeof(cell_added_removed->arch.irq_bitmap) * 8; 
> n++) {
>                 if (irqchip_irq_in_cell(cell_added_removed, n)) {
>                         irqchip.adjust_irq_target(cell_added_removed, n);
>                 }
>                 if (irqchip_irq_in_cell(&root_cell, n)) {
>                         irqchip.adjust_irq_target(&root_cell, n);
>                 }
>         }
> }
> 

Looks like a valid optimization, provided cell_added_removed ==
root_cell happens in reality (I don't recall from the top of my head
right now). Please validate and then possibly suggest a patch.

Jan

-- 
Siemens AG, T RDA IOT
Corporate Competence Center Embedded Linux

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jailhouse-dev/fd7255b3-59ca-17a3-1ce6-39dc3a8220c0%40siemens.com.

Reply via email to