Page MenuHomeFreeBSD

royger (Roger Pau Monné)
User

Projects

User Details

User Since
May 18 2014, 2:32 AM (472 w, 2 d)

Recent Activity

Apr 14 2023

royger committed rG6d765bff6f73: xen: move common variables off of sys/x86/xen/hvm.c (authored by ehem_freebsd_m5p.com).
xen: move common variables off of sys/x86/xen/hvm.c
Apr 14 2023, 2:03 PM
royger committed rG5e2183dab871: xen/intr: move sys/x86/xen/xen_intr.c to sys/dev/xen/bus/ (authored by julien_xen.org).
xen/intr: move sys/x86/xen/xen_intr.c to sys/dev/xen/bus/
Apr 14 2023, 2:03 PM
royger committed rG2d795ab1eaa7: xen/intr: move x86 PIC interface to xen_arch_intr.c, introduce wrappers (authored by julien_xen.org).
xen/intr: move x86 PIC interface to xen_arch_intr.c, introduce wrappers
Apr 14 2023, 2:03 PM
royger committed rG6699c22c1cb0: xen/intr: move interrupt allocation/release to architecture (authored by ehem_freebsd_m5p.com).
xen/intr: move interrupt allocation/release to architecture
Apr 14 2023, 2:03 PM
royger committed rG373301019f16: xen/intr: remove type argument from xen_intr_alloc_isrc() (authored by ehem_freebsd_m5p.com).
xen/intr: remove type argument from xen_intr_alloc_isrc()
Apr 14 2023, 2:03 PM
royger committed rGd0a69069bb22: xen/x86: rework isrc allocation to use list instead of table scanning (authored by ehem_freebsd_m5p.com).
xen/x86: rework isrc allocation to use list instead of table scanning
Apr 14 2023, 2:03 PM
royger committed rGab7ce14b1d9d: xen/intr: introduce dev/xen/bus/intr-internal.h (authored by julien_xen.org).
xen/intr: introduce dev/xen/bus/intr-internal.h
Apr 14 2023, 2:03 PM
royger committed rGd32d65276b20: xen/intr: move evtchn_type to intr-internal.h (authored by ehem_freebsd_m5p.com).
xen/intr: move evtchn_type to intr-internal.h
Apr 14 2023, 2:03 PM
royger committed rGaf610cabf1f4: xen/intr: adjust xen_intr_handle_upcall() to match driver filter (authored by ehem_freebsd_m5p.com).
xen/intr: adjust xen_intr_handle_upcall() to match driver filter
Apr 14 2023, 2:03 PM
royger committed rG2794893ebff0: xen/intr: do full xenisrc initialization during binding (authored by ehem_freebsd_m5p.com).
xen/intr: do full xenisrc initialization during binding
Apr 14 2023, 2:03 PM
royger committed rGff73b1d69b90: xen/intr: split xen_intr_isrc_lock uses (authored by ehem_freebsd_m5p.com).
xen/intr: split xen_intr_isrc_lock uses
Apr 14 2023, 2:03 PM
royger committed rG834013dea2d2: xen/intr: rework xen_intr_alloc_isrc() locking (authored by ehem_freebsd_m5p.com).
xen/intr: rework xen_intr_alloc_isrc() locking
Apr 14 2023, 2:03 PM
royger committed rG09bd542d17c9: xen/intr: rework xen_intr_alloc_isrc() call structure (authored by ehem_freebsd_m5p.com).
xen/intr: rework xen_intr_alloc_isrc() call structure
Apr 14 2023, 2:03 PM
royger closed D28982: xen: move common variables and code off of sys/x86/xen/hvm.c.
Apr 14 2023, 2:03 PM
royger closed D30236: xen/intr: move sys/x86/xen/xen_intr.c to sys/xen/xen_intr.c.
Apr 14 2023, 2:02 PM
royger closed D30909: xen/intr: introduce xen_arch_intr.c.
Apr 14 2023, 2:02 PM
royger closed D30936: xen/intr: move interrupt allocation/release to architecture.
Apr 14 2023, 2:02 PM
royger closed D31188: xen/intr: move isrc allocation out of xen_intr_bind_isrc().
Apr 14 2023, 2:02 PM
royger closed D30006: xen/intr: adjust xen_intr_handle_upcall() to match interrupt filter.
Apr 14 2023, 2:02 PM
royger committed rG149c58101811: xen/intr: adjust xenisrc types, adjust format strings to match (authored by ehem_freebsd_m5p.com).
xen/intr: adjust xenisrc types, adjust format strings to match
Apr 14 2023, 2:02 PM
royger closed D30648: xen/intr: move x86 bits into xen_arch_isrc_t structure.
Apr 14 2023, 2:02 PM
royger committed rGecdcad6516c9: xen: remove CONFIG_XEN_COMPAT, purge Xen 3.0 compatibility (authored by ehem_freebsd_m5p.com).
xen: remove CONFIG_XEN_COMPAT, purge Xen 3.0 compatibility
Apr 14 2023, 2:02 PM
royger committed rG61ccede8cf6c: xen: purge no longer used hypervisor functions (authored by ehem_freebsd_m5p.com).
xen: purge no longer used hypervisor functions
Apr 14 2023, 2:02 PM
royger closed D30726: xen/intr: rework locking, prepare xen_intr_alloc_isrc() for split.
Apr 14 2023, 2:02 PM
royger committed rG28a78d860e46: xen: introduce XEN_CPUID_TO_VCPUID()/XEN_VCPUID() (authored by julien_xen.org).
xen: introduce XEN_CPUID_TO_VCPUID()/XEN_VCPUID()
Apr 14 2023, 2:01 PM
royger committed rGb2c50bb934fb: xen/efi: make Xen PV EFI clock optional (authored by ehem_freebsd_m5p.com).
xen/efi: make Xen PV EFI clock optional
Apr 14 2023, 2:01 PM
royger closed D31065: xen/efi: make Xen PV EFI clock optional.
Apr 14 2023, 2:01 PM
royger committed rG054073c2831c: xen/intr: xen_intr_bind_isrc() always set handle (authored by ehem_freebsd_m5p.com).
xen/intr: xen_intr_bind_isrc() always set handle
Apr 14 2023, 2:01 PM
royger closed D29404: xen: introduce XEN_CPUID_TO_VCPUID().
Apr 14 2023, 2:01 PM

Mar 29 2023

royger committed rGb94341afcb12: xen/intr: rework xen_intr_resume() for in-place remapping (authored by ehem_freebsd_m5p.com).
xen/intr: rework xen_intr_resume() for in-place remapping
Mar 29 2023, 7:56 AM
royger committed rGe45c8ea31cd8: xen/intr: merge parts of resume functionality into new function (authored by ehem_freebsd_m5p.com).
xen/intr: merge parts of resume functionality into new function
Mar 29 2023, 7:56 AM
royger committed rG910bd069f809: xen/intr: remove x86 APIC headers from xen_intr.c (authored by julien_xen.org).
xen/intr: remove x86 APIC headers from xen_intr.c
Mar 29 2023, 7:56 AM
royger committed rG40ad9aaa880c: xen/intr: stop passing shared_info_t to xen_intr_active_ports() (authored by ehem_freebsd_m5p.com).
xen/intr: stop passing shared_info_t to xen_intr_active_ports()
Mar 29 2023, 7:56 AM
royger committed rG9f3be3a6ec8e: xen: switch to using core atomics for synchronization (authored by ehem_freebsd_m5p.com).
xen: switch to using core atomics for synchronization
Mar 29 2023, 7:55 AM
royger committed rG49ca3167b7be: xen/intr: add check for intr_register_source() errors (authored by ehem_freebsd_m5p.com).
xen/intr: add check for intr_register_source() errors
Mar 29 2023, 7:55 AM
royger committed rG1797ff962769: xen/intr: cleanup event channel number use (authored by ehem_freebsd_m5p.com).
xen/intr: cleanup event channel number use
Mar 29 2023, 7:55 AM
royger committed rG2b2415bafa0d: xen/intr: fix corruption of event channel table (authored by ehem_freebsd_m5p.com).
xen/intr: fix corruption of event channel table
Mar 29 2023, 7:55 AM
royger closed D30599: xen/intr: rework xen_intr_resume() for in-place remapping.
Mar 29 2023, 7:55 AM
royger closed D30598: xen/intr: merge parts of resume functionality into new function.
Mar 29 2023, 7:55 AM
royger closed D31995: xen/intr: add check for intr_register_source() errors.
Mar 29 2023, 7:55 AM
royger closed D30743: xen/intr: rework handling of event channel numbers in xen_intr.c.
Mar 29 2023, 7:54 AM
royger committed rG0ebf9bb42d7c: xen/intr: fix overflow of Xen interrupt range (authored by ehem_freebsd_m5p.com).
xen/intr: fix overflow of Xen interrupt range
Mar 29 2023, 7:54 AM
royger committed rG2d5e325303cf: xen/intr: always set xi_close in xen_intr_bind_isrc() (authored by ehem_freebsd_m5p.com).
xen/intr: always set xi_close in xen_intr_bind_isrc()
Mar 29 2023, 7:53 AM

Mar 24 2023

royger requested changes to D29404: xen: introduce XEN_CPUID_TO_VCPUID().

You will likely need to introduce a wrapper for xen_intr_assign_cpu() in order to keep the second parameter as an apic_id.

Mar 24 2023, 3:05 PM

Mar 14 2023

royger committed rGa78e46a7dbb3: xen: take struct size into account for video information (authored by royger).
xen: take struct size into account for video information
Mar 14 2023, 9:02 AM
royger committed R11:7326a17b98b6: emulators/xen-kernel: add fix for fetching video mode (authored by royger).
emulators/xen-kernel: add fix for fetching video mode
Mar 14 2023, 8:52 AM

Mar 9 2023

royger committed rG6f80738b228c: xen: fetch dom0 video console information from Xen (authored by royger).
xen: fetch dom0 video console information from Xen
Mar 9 2023, 4:15 PM
royger committed rG5489d7e93a06: xen: bump used interface version (authored by royger).
xen: bump used interface version
Mar 9 2023, 4:15 PM
royger committed R11:3688ce5f8484: {emulators,sysutils}/xen-{kernel,tools}: update to 4.17 (authored by royger).
{emulators,sysutils}/xen-{kernel,tools}: update to 4.17
Mar 9 2023, 3:08 PM
royger added a comment to D37682: xen: bump used interface version.

Updating to newer variation of Xen's interface here. I'd noticed NR_EVENT_CHANNELS and EVTCHN_2L_NR_CHANNELS before, but hadn't known which one was the more recent/proper one.

There is substantial overlap with D30743. Notably D30743 adds a bunch of uses due to _Static_assert()s with the constant. Looking at the number of uses, I would suggest xen_intr.c should use a #define NR_EVENT_CHANNELS, which then moves to sys/dev/xen/bus/intr-internal.h with D30648. The reason being there are so many uses, both the architecture and independent portions would need simultaneous update if there was a move to the more recent types of event channel.

Mar 9 2023, 12:28 PM

Feb 8 2023

royger added a comment to D37800: Mechanically convert Xen netfront/netback(4) to DrvAPI.

Sorry, I'm on parental leave and so far didn't have time to look into this. I will be back on the 8th of March, is there any rush to get this in now? If there's a rush I would be fine with this going in as long as someone can give a look and test it.

Feb 8 2023, 11:11 AM

Dec 13 2022

royger requested review of D37682: xen: bump used interface version.
Dec 13 2022, 10:38 AM

Dec 12 2022

royger accepted D37667: misc/seabios: Update to 1.16.0; use binutils binaries.

LGTM. Thanks for doing this.

Dec 12 2022, 11:29 AM

Nov 29 2022

royger committed rGbc9a5b049797: xen/acpi: only evaluate Processor objects matching online CPUs (authored by royger).
xen/acpi: only evaluate Processor objects matching online CPUs
Nov 29 2022, 3:55 PM

Nov 3 2022

royger accepted D30816: xen/console: add hook for xen_early_init().

IMO would be better to do this probing inside of an Arm specific early init routine, but if the current approach works and it's the prefered way for Arm people that's fine with me.

Nov 3 2022, 12:39 PM
royger committed rGdabb3db7a817: xen/netfront: deal with mbuf data crossing a page boundary (authored by royger).
xen/netfront: deal with mbuf data crossing a page boundary
Nov 3 2022, 12:38 PM
royger closed D33876: xen/netfront: deal with mbuf data crossing a page boundary.
Nov 3 2022, 12:38 PM

Oct 27 2022

royger accepted D37067: Increase MAX_APIC_ID safeguard to 0x800.

It looks like MAX_APIC_ID is used only in madt_parse_cpu() as a limit, so this change should have no functional impact on any currently working system.
I agree that we should address allocations sized by max_apic_id; we need to do something similar for arrays sized by MAXCPU and that's going to be a lot more work.

Oct 27 2022, 1:28 PM

Oct 20 2022

royger added a comment to D37067: Increase MAX_APIC_ID safeguard to 0x800.

Could you do this in the same patch where MAXCPU is increased?

I'd like to do it independently, so that setting MAXCPU via the kernel config works again. Ideally also MFC this (but no MAXCPU bump) to stable/13. Alternatively, could we just replace MAX_APIC_ID with MAXCPU * 2?

Oct 20 2022, 1:25 PM
royger added a comment to D37067: Increase MAX_APIC_ID safeguard to 0x800.

Could you do this in the same patch where MAXCPU is increased? I think it would be clearer that there's a dependency between MAXCPU and MAX_APIC_ID and that both need to be increased in lockstep.

Oct 20 2022, 12:25 PM
royger added a comment to D37060: Limit MAXCPU <= MAX_APIC_ID assertion to i386.

No, MAX_APIC_ID is also relevant for amd64, as it's used by madt_parse_cpu(), it needs to be bumped to twice the value of MAXCPU I think.

Oct 20 2022, 8:19 AM
royger added a comment to D36838: amd64: Bump MAXCPU to 1024 (from 256).

But you need to also bump MAX_APIC_ID, or else the MADT parse code will start dropping CPUs that have IDs > 512. Note that APIC IDs don't need to be continuous, so it's possible to have a system only with even APIC IDs (ie: 0, 2, 4..) at which point in order to support 512 CPUs you might need to be able to parse APIC IDs up to 1024 or more.

Oct 20 2022, 8:12 AM

Sep 23 2022

royger accepted D36191: PVH: Set bootmethod to XEN or PVH appropriately.

LGTM, the commit/revision title needs updating AFAICT.

Sep 23 2022, 1:53 PM
royger accepted D35801: x86: Distinguish Xen from non-Xen PVH boots.

LGTM, just one nit. Fell free to commit when that's done, no need for another round of review.

Sep 23 2022, 1:52 PM
royger accepted D35800: x86: Add support for PVH version 1 memmap.
Sep 23 2022, 1:34 PM

Aug 20 2022

royger added a comment to D36258: xen/timer: rename "timer.c" to "xen_timer.c".

FWIW xen_time.c might be slightly better, because it contains the code for the event timer, but also the time counter and the system clock.

Aug 20 2022, 1:21 PM
royger accepted D36258: xen/timer: rename "timer.c" to "xen_timer.c".

I was expecting this would happen sooner or later, TBH I was waiting for a real clash to happen before doing the renaming. I assume you now need to use parts of this file on Arm?

Aug 20 2022, 1:20 PM

Aug 18 2022

royger accepted D35800: x86: Add support for PVH version 1 memmap.

LGTM. I would use unsigned int as array index, but that's a question of taste.

Aug 18 2022, 12:54 PM
royger added a comment to D35800: x86: Add support for PVH version 1 memmap.

This mostly doesn't effect my goals so I've been quiet. One issue here though, what is your source for PVH version numbers?

Previous work has referred them using one-based versions, whereas you appear to be using zero-based versions. Of note ac3ede5371af/D30228. Perhaps Firecracker uses zero-based while Xen uses one-based? (I'm unsure which is "official", just prior usage is one-based)

Aug 18 2022, 12:46 PM

Aug 14 2022

royger added a comment to D36191: PVH: Set bootmethod to XEN or PVH appropriately.

I think I would prefer setting it to PVH in both cases, we have other ways to expose the underlying hypervisor, and the boot entry point is the same for Xen or KVM PVH.

Aug 14 2022, 8:47 AM

Jul 14 2022

royger added inline comments to D35800: x86: Add support for PVH version 1 memmap.
Jul 14 2022, 2:10 PM
royger added a comment to D35801: x86: Distinguish Xen from non-Xen PVH boots.

I wonder whether we might want to move part of the x86/xen/pv.c contents (IOW: those used by firecracker also) into a more generic file? Maybe sys/x86/x86/pvh.c?

Jul 14 2022, 1:57 PM

Jun 30 2022

royger committed rG77cb05db0cee: x86/xen: stop assuming kernel memory loading order in PVH (authored by royger).
x86/xen: stop assuming kernel memory loading order in PVH
Jun 30 2022, 6:55 AM
royger closed D35628: x86/xen: stop assuming kernel memory loading order in PVH.
Jun 30 2022, 6:54 AM

Jun 29 2022

royger updated the diff for D35628: x86/xen: stop assuming kernel memory loading order in PVH.
  • Use MAX() instead of max().
  • Remove extra newline.
Jun 29 2022, 8:19 AM
royger added inline comments to D35628: x86/xen: stop assuming kernel memory loading order in PVH.
Jun 29 2022, 8:14 AM
royger abandoned D35629: x86/xen: set the ACPI RSDP kenv hint earlier for PVH.

Nah, I guess there's no need to move it, so I will keep as-is to avoid code churn. Sorry for the alias mess :).

Jun 29 2022, 7:58 AM

Jun 28 2022

royger requested review of D35629: x86/xen: set the ACPI RSDP kenv hint earlier for PVH.
Jun 28 2022, 4:00 PM
royger requested review of D35628: x86/xen: stop assuming kernel memory loading order in PVH.
Jun 28 2022, 3:53 PM
royger committed rG091febc04a5d: xen/blkback: do not use x86 CPUID in generic code (authored by royger).
xen/blkback: do not use x86 CPUID in generic code
Jun 28 2022, 7:53 AM
royger committed rG881c145431b7: elfnote: place note in a PT_NOTE program header (authored by royger).
elfnote: place note in a PT_NOTE program header
Jun 28 2022, 7:53 AM
royger closed D35611: elfnote: place note in a PT_NOTE program header.
Jun 28 2022, 7:53 AM

Jun 27 2022

royger requested review of D35611: elfnote: place note in a PT_NOTE program header.
Jun 27 2022, 1:52 PM

Jun 23 2022

royger added inline comments to D35535: intr/x86: allow passing stray message into intr_execute_handlers().
Jun 23 2022, 9:27 AM

Jun 22 2022

royger added inline comments to D35406: intr/x86: remove ->pic_vector() from x86 interrupt framework.
Jun 22 2022, 6:59 AM

Jun 7 2022

royger committed rG1d528f95e8ce: xen/blkback: remove bounce buffering mode (authored by royger).
xen/blkback: remove bounce buffering mode
Jun 7 2022, 10:30 AM
royger committed rG137381ca606c: xen/blkback: fix tear-down issues (authored by royger).
xen/blkback: fix tear-down issues
Jun 7 2022, 10:30 AM
royger committed rGf3d54ded282c: xenbus: improve device tracking (authored by royger).
xenbus: improve device tracking
Jun 7 2022, 10:30 AM

May 6 2022

royger committed rGe99c0c8b79b0: xen: Prevent buffer overflow in privcmd ioctl (authored by Dan Carpenter <dan.carpenter@oracle.com>).
xen: Prevent buffer overflow in privcmd ioctl
May 6 2022, 8:10 AM

Apr 23 2022

royger accepted D35001: xen: Use devclass_find to lookup devclasses in identify..

Thanks!

Apr 23 2022, 6:20 AM

Apr 22 2022

royger added a comment to D35001: xen: Use devclass_find to lookup devclasses in identify..
In D35001#793469, @jhb wrote:

I'm axing the devclass argument to DRIVER_MODULE since it is unused the vast majority of the time. If you'd rather not hardcode the string we could instead use driver->name instead of the hardcoded string.

Note however that we hardcode the driver name a few lines below in the call to BUS_ADD_CHILD, so if we are really worried about that then we need to change BUS_ADD_CHILD to also use driver->name.

Apr 22 2022, 3:08 PM

Apr 21 2022

royger added a comment to D35001: xen: Use devclass_find to lookup devclasses in identify..

Hm, isn't this more fragile, as we need to keep the string in driver_t in sync with the call to devclass_find()?

Apr 21 2022, 8:18 AM

Apr 12 2022

royger committed rGa1a5c5351659: x86/xen: fallback when VCPUOP_send_nmi is not available (authored by royger).
x86/xen: fallback when VCPUOP_send_nmi is not available
Apr 12 2022, 8:08 AM
royger committed rG590f093f74f2: xen/blkback: fix reconnection of backend (authored by royger).
xen/blkback: fix reconnection of backend
Apr 12 2022, 8:08 AM
royger committed rG499d685b02d4: xen/netback: do not attempt to connect in the Initialised state (authored by royger).
xen/netback: do not attempt to connect in the Initialised state
Apr 12 2022, 8:08 AM
royger closed D34841: xen/acpi: upload Cx and Px data to Xen.
Apr 12 2022, 8:05 AM
royger committed rGb93f47eaeef7: xen/acpi: upload Cx and Px data to Xen (authored by royger).
xen/acpi: upload Cx and Px data to Xen
Apr 12 2022, 8:05 AM

Apr 8 2022

royger requested review of D34841: xen/acpi: upload Cx and Px data to Xen.
Apr 8 2022, 8:11 AM

Mar 30 2022

royger committed R11:b717e6878059: {emulators,sysutils}/xen-{kernel,tools}: update to 4.16.0 (authored by royger).
{emulators,sysutils}/xen-{kernel,tools}: update to 4.16.0
Mar 30 2022, 10:31 AM

Mar 23 2022

royger committed rGb6370a2c00e1: vt/vga: ignore ACPI_FADT_NO_VGA unless running virtualized (authored by royger).
vt/vga: ignore ACPI_FADT_NO_VGA unless running virtualized
Mar 23 2022, 2:53 PM