Port-xen archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Xen timecounter issues



It came to my attention today that there has been a lot of discussion
recently about timecounters on Xen:

https://mail-index.netbsd.org/port-xen/2024/02/01/msg010525.html
https://mail-index.netbsd.org/port-xen/2024/06/20/msg010573.html

These threads are long and I wasn't following because I'm not
subscribed to port-xen, but since I wrote xen_clock.c and I remember
roughly how it works, maybe my input might be helpful.  Is there a
summary of the issues?

1. Is there an array of the following variables?

   - dom0 kernel (netbsd-8, netbsd-9, netbsd-10, linux, freebsd, ...)
   - domU kernel, if misbehaviour observed in domU (ditto)
   - Xen kernel version
   - virtualization type (pv/pvh/hvm/...)
   - Xen TSC configuration
   - physical CPU (and, whether the physical CPU has invariant TSC)
   - misbehaviour summary

2. Is there an easy reproducer, or test to ascertain whether the
   misbehaviour has happened, which you used to fill out the array?

3. Has anyone reviewed what other kernels do, i.e., use the pvclock
   API or use rdtsc like `bare metal' x86?
   - under dom0 vs domU?
   - under different virtualization types?
   - with different Xen TSC configurations?
   E.g., I skimmed through FreeBSD and it looks like it has very few
   conditionals on xen_initial_domain (meaning dom0), so it seems
   unlikely it would use pvclock on domU but not on dom0.  (But this
   was a quick skim, not conclusive.)

4. (a) Can a dom0 vCPU be interrupted and switched from one pCPU to
       another pCPU on the same host?
   (b) Can a dom0 be migrated from one host to another host?
   (c) Can a domain be migrated from a host with one Xen TSC
       configuration to a host with a different Xen TSC configuration?


Home | Main Index | Thread Index | Old Index