Re: Per-cpu IDT patch

Manuel Bouyer <[email protected]>
Newsgroups gmane.os.netbsd.ports.x86-64,gmane.os.netbsd.ports.i386
Message-ID <[email protected]>
On Fri, Jul 03, 2020 at 02:11:43PM +0900, s ymgch wrote:
> Hi all,
> 
> I tried to make an IDT per-cpu. The patch is here:
> http://www.netbsd.org/~yamaguchi/pcpu-idt.patch
> 
> The summary of modifications is as follows.
> - Add an IDT pointer and idt_allocmap into struct cpu_info
> - Change prototype of cpu_init_idt()
>    - void => struct cpu_info*
>    - for loading an IDT address in struct cpu_info*
> - Copy a part of IDT entries from cpu 0 at attaching a CPU
>    - for the same entries, for example, exceptions, db, etc.
> 
> This function can be enabled by PCPU_IDT option that is newly provided.
> 
> Does this patch look good?
> Please let me know if you have any comments about this.

I guess idt_vec_init_cpu_md() is not used by XENPV at all ?
If so I guess you can remove #ifndef XENPV here
If is it used I think it can not work without setting the idt back to read-only
anyway.

Othervise I don't see problems at first glance. I tested an amd64 domU in
PV, PVH and PVHVM mode.

-- 
Manuel Bouyer <[email protected]>
     NetBSD: 26 ans d'experience feront toujours la difference
--
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.