Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Jun 2026 17:59:11 +0200
From:      Oliver Pinter <oliver.pntr@gmail.com>
To:        =?UTF-8?Q?Dag=2DErling_Sm=C3=B8rgrav?= <des@freebsd.org>
Cc:        "src-committers@freebsd.org" <src-committers@freebsd.org>,  "dev-commits-src-all@freebsd.org" <dev-commits-src-all@freebsd.org>,  "dev-commits-src-main@freebsd.org" <dev-commits-src-main@freebsd.org>
Subject:   Re: git: 01c8644093c2 - main - x86: Harmonize GENERIC and MINIMAL
Message-ID:  <CAPjTQNEO=G9KroDnGmtL39cu9HbgWxVEDVByBzhy36cX4sAH1Q@mail.gmail.com>
In-Reply-To: <6a3a3af2.3fd82.49697213@gitrepo.freebsd.org>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
On Tuesday, June 23, 2026, Dag-Erling Smørgrav <des@freebsd.org> wrote:

> The branch main has been updated by des:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=
> 01c8644093c28d09f0d41fb522dc53f1ab696a7e
>
> commit 01c8644093c28d09f0d41fb522dc53f1ab696a7e
> Author:     Dag-Erling Smørgrav <des@FreeBSD.org>
> AuthorDate: 2026-06-23 07:51:01 +0000
> Commit:     Dag-Erling Smørgrav <des@FreeBSD.org>
> CommitDate: 2026-06-23 07:51:01 +0000
>
>     x86: Harmonize GENERIC and MINIMAL
>
>     * Reorder MINIMAL so everything is in the same order as in GENERIC.
>
>     * Wherever comments diverged, except for the explanatory comment at
>       the top, copy the GENERIC version to MINIMAL.
>
>     * Add KDTRACE_FRAME to i386 GENERIC; it was already in MINIMAL, and
>       adding it to GENERIC seemed like the more correct move.
>
>     With these changes, MINIMAL is a strict subset of GENERIC, apart from
>     the identifier and the explanatory comment at the top.
>
>
Hi!

Wouldn't be easier to remove the redundant lines from the GENERIC and
include MINIMAL from them? Or to you would like to keep them self contained
without dependencies?


>     Reviewed by:    imp
>     Differential Revision:  https://reviews.freebsd.org/D57729
> ---
>  sys/amd64/conf/MINIMAL | 26 +++++++++++++-------------
>  sys/i386/conf/GENERIC  |  1 +
>  sys/i386/conf/MINIMAL  | 34 +++++++++++++++++-----------------
>  3 files changed, 31 insertions(+), 30 deletions(-)
>
> diff --git a/sys/amd64/conf/MINIMAL b/sys/amd64/conf/MINIMAL
> index ba64c39bc6b9..bf371f79ed86 100644
> --- a/sys/amd64/conf/MINIMAL
> +++ b/sys/amd64/conf/MINIMAL
> @@ -91,6 +91,18 @@ device               acpi
>  options        IOMMU
>  device         pci
>
> +# ATA controllers
> +device         ahci                    # AHCI-compatible SATA controllers
> +
> +# ATA/SCSI peripherals
> +device         scbus                   # SCSI bus (required for ATA/SCSI)
> +device         da                      # Direct Access (disks)
> +device         cd                      # CD
> +device         pass                    # Passthrough device (direct
> ATA/SCSI access)
> +
> +# NVM Express (NVMe) support
> +device         nvme                    # base NVMe driver
> +
>  # atkbdc0 controls both the keyboard and the PS/2 mouse
>  device         atkbdc                  # AT keyboard controller
>  device         atkbd                   # AT keyboard
> @@ -138,8 +150,8 @@ device              virtio                  # Generic
> VirtIO bus (required)
>  device         virtio_pci              # VirtIO PCI device
>  device         vtnet                   # VirtIO Ethernet device
>  device         virtio_blk              # VirtIO Block device
> -device         virtio_balloon          # VirtIO Memory Balloon device
>  device         virtio_scsi             # VirtIO SCSI device
> +device         virtio_balloon          # VirtIO Memory Balloon device
>
>  # Linux KVM paravirtualization support
>  device         kvm_clock               # KVM paravirtual clock driver
> @@ -156,15 +168,3 @@ device             xentimer                # Xen x86
> PV timer device
>  options        EVDEV_SUPPORT           # evdev support in legacy drivers
>  device         evdev                   # input event device support
>  device         uinput                  # install /dev/uinput cdev
> -
> -# NVM Express (NVMe) support
> -device         nvme                    # base NVMe driver
> -
> -# ATA controllers
> -device         ahci                    # AHCI-compatible SATA controllers
> -
> -# CAM
> -device         scbus                   # SCSI bus (required for ATA/SCSI)
> -device         da                      # Direct Access (disks)
> -device         cd                      # CD
> -device         pass                    # Passthrough device (direct
> ATA/SCSI access)
> diff --git a/sys/i386/conf/GENERIC b/sys/i386/conf/GENERIC
> index 5f1e81b46129..44926bc2d3d5 100644
> --- a/sys/i386/conf/GENERIC
> +++ b/sys/i386/conf/GENERIC
> @@ -79,6 +79,7 @@ options       AUDIT                   # Security event
> auditing
>  options        CAPABILITY_MODE         # Capsicum capability mode
>  options        CAPABILITIES            # Capsicum capabilities
>  options        MAC                     # TrustedBSD MAC Framework
> +options        KDTRACE_FRAME           # Ensure frames are compiled in
>  options        KDTRACE_HOOKS           # Kernel DTrace hooks
>  options        DDB_CTF                 # Kernel ELF linker loads CTF data
>  options        INCLUDE_CONFIG_FILE     # Include this file in kernel
> diff --git a/sys/i386/conf/MINIMAL b/sys/i386/conf/MINIMAL
> index 55ef357248c5..ec46c91aaad2 100644
> --- a/sys/i386/conf/MINIMAL
> +++ b/sys/i386/conf/MINIMAL
> @@ -90,9 +90,9 @@ include "std.debug"
>  options        GZIO                    # gzip (dumps)
>  options        ZSTDIO                  # zstd (dumps, tarfs, uzip, zfs)
>
> -# Make an SMP-capable kernel by default
> +# To make an SMP kernel, the next two lines are needed
>  options        SMP                     # Symmetric MultiProcessor Kernel
> -device         apic
> +device         apic                    # I/O APIC
>
>  # CPU frequency control
>  device         cpufreq
> @@ -102,6 +102,18 @@ device             acpi
>  device         smbios
>  device         pci
>
> +# ATA controllers
> +device         ahci                    # AHCI-compatible SATA controllers
> +
> +# ATA/SCSI peripherals
> +device         scbus                   # SCSI bus (required for ATA/SCSI)
> +device         da                      # Direct Access (disks)
> +device         cd                      # CD
> +device         pass                    # Passthrough device (direct
> ATA/SCSI access)
> +
> +# NVM Express (NVMe) support
> +device         nvme                    # base NVMe driver
> +
>  # atkbdc0 controls both the keyboard and the PS/2 mouse
>  device         atkbdc                  # AT keyboard controller
>  device         atkbd                   # AT keyboard
> @@ -141,15 +153,15 @@ device            virtio                  # Generic
> VirtIO bus (required)
>  device         virtio_pci              # VirtIO PCI device
>  device         vtnet                   # VirtIO Ethernet device
>  device         virtio_blk              # VirtIO Block device
> -device         virtio_balloon          # VirtIO Memory Balloon device
>  device         virtio_scsi             # VirtIO SCSI device
> +device         virtio_balloon          # VirtIO Memory Balloon device
>
>  # Linux KVM paravirtualization support
>  device         kvm_clock               # KVM paravirtual clock driver
>
>  # Xen HVM Guest Optimizations
> -# NOTE: XENHVM depends on xenpci and xentimer.
> -# They must be added or removed together.
> +# NOTE: XENHVM and xenpci interdepend.  They must be added or removed
> +# together.  xentimer depends on XENHVM and isn't required.
>  options        XENHVM                  # Xen HVM kernel infrastructure
>  device         xenpci                  # Xen HVM Hypervisor services
> driver
>  device         xentimer                # Xen x86 PV timer device
> @@ -158,15 +170,3 @@ device             xentimer                # Xen x86
> PV timer device
>  options        EVDEV_SUPPORT           # evdev support in legacy drivers
>  device         evdev                   # input event device support
>  device         uinput                  # install /dev/uinput cdev
> -
> -# NVM Express (NVMe) support
> -device         nvme                    # base NVMe driver
> -
> -# ATA controllers
> -device         ahci                    # AHCI-compatible SATA controllers
> -
> -# CAM
> -device         scbus                   # SCSI bus (required for ATA/SCSI)
> -device         da                      # Direct Access (disks)
> -device         cd                      # CD
> -device         pass                    # Passthrough device (direct
> ATA/SCSI access)
>
>

[-- Attachment #2 --]
<br><br>On Tuesday, June 23, 2026, Dag-Erling Smørgrav &lt;<a href="mailto:des@freebsd.org">des@freebsd.org</a>&gt; wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">The branch main has been updated by des:<br>
<br>
URL: <a href="https://cgit.FreeBSD.org/src/commit/?id=01c8644093c28d09f0d41fb522dc53f1ab696a7e" target="_blank">https://cgit.FreeBSD.org/src/<wbr>commit/?id=<wbr>01c8644093c28d09f0d41fb522dc53<wbr>f1ab696a7e</a><br>;
<br>
commit 01c8644093c28d09f0d41fb522dc53<wbr>f1ab696a7e<br>
Author:     Dag-Erling Smørgrav &lt;des@FreeBSD.org&gt;<br>
AuthorDate: 2026-06-23 07:51:01 +0000<br>
Commit:     Dag-Erling Smørgrav &lt;des@FreeBSD.org&gt;<br>
CommitDate: 2026-06-23 07:51:01 +0000<br>
<br>
    x86: Harmonize GENERIC and MINIMAL<br>
<br>
    * Reorder MINIMAL so everything is in the same order as in GENERIC.<br>
<br>
    * Wherever comments diverged, except for the explanatory comment at<br>
      the top, copy the GENERIC version to MINIMAL.<br>
<br>
    * Add KDTRACE_FRAME to i386 GENERIC; it was already in MINIMAL, and<br>
      adding it to GENERIC seemed like the more correct move.<br>
<br>
    With these changes, MINIMAL is a strict subset of GENERIC, apart from<br>
    the identifier and the explanatory comment at the top.<br>
<br></blockquote><div><br></div><div>Hi!</div><div><br></div><div>Wouldn&#39;t be easier to remove the redundant lines from the GENERIC and include MINIMAL from them? Or to you would like to keep them self contained without dependencies?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
    Reviewed by:    imp<br>
    Differential Revision:  <a href="https://reviews.freebsd.org/D57729" target="_blank">https://reviews.freebsd.org/<wbr>D57729</a><br>;
---<br>
 sys/amd64/conf/MINIMAL | 26 +++++++++++++-------------<br>
 sys/i386/conf/GENERIC  |  1 +<br>
 sys/i386/conf/MINIMAL  | 34 +++++++++++++++++-------------<wbr>----<br>
 3 files changed, 31 insertions(+), 30 deletions(-)<br>
<br>
diff --git a/sys/amd64/conf/MINIMAL b/sys/amd64/conf/MINIMAL<br>
index ba64c39bc6b9..bf371f79ed86 100644<br>
--- a/sys/amd64/conf/MINIMAL<br>
+++ b/sys/amd64/conf/MINIMAL<br>
@@ -91,6 +91,18 @@ device               acpi<br>
 options        IOMMU<br>
 device         pci<br>
<br>
+# ATA controllers<br>
+device         ahci                    # AHCI-compatible SATA controllers<br>
+<br>
+# ATA/SCSI peripherals<br>
+device         scbus                   # SCSI bus (required for ATA/SCSI)<br>
+device         da                      # Direct Access (disks)<br>
+device         cd                      # CD<br>
+device         pass                    # Passthrough device (direct ATA/SCSI access)<br>
+<br>
+# NVM Express (NVMe) support<br>
+device         nvme                    # base NVMe driver<br>
+<br>
 # atkbdc0 controls both the keyboard and the PS/2 mouse<br>
 device         atkbdc                  # AT keyboard controller<br>
 device         atkbd                   # AT keyboard<br>
@@ -138,8 +150,8 @@ device              virtio                  # Generic VirtIO bus (required)<br>
 device         virtio_pci              # VirtIO PCI device<br>
 device         vtnet                   # VirtIO Ethernet device<br>
 device         virtio_blk              # VirtIO Block device<br>
-device         virtio_balloon          # VirtIO Memory Balloon device<br>
 device         virtio_scsi             # VirtIO SCSI device<br>
+device         virtio_balloon          # VirtIO Memory Balloon device<br>
<br>
 # Linux KVM paravirtualization support<br>
 device         kvm_clock               # KVM paravirtual clock driver<br>
@@ -156,15 +168,3 @@ device             xentimer                # Xen x86 PV timer device<br>
 options        EVDEV_SUPPORT           # evdev support in legacy drivers<br>
 device         evdev                   # input event device support<br>
 device         uinput                  # install /dev/uinput cdev<br>
-<br>
-# NVM Express (NVMe) support<br>
-device         nvme                    # base NVMe driver<br>
-<br>
-# ATA controllers<br>
-device         ahci                    # AHCI-compatible SATA controllers<br>
-<br>
-# CAM<br>
-device         scbus                   # SCSI bus (required for ATA/SCSI)<br>
-device         da                      # Direct Access (disks)<br>
-device         cd                      # CD<br>
-device         pass                    # Passthrough device (direct ATA/SCSI access)<br>
diff --git a/sys/i386/conf/GENERIC b/sys/i386/conf/GENERIC<br>
index 5f1e81b46129..44926bc2d3d5 100644<br>
--- a/sys/i386/conf/GENERIC<br>
+++ b/sys/i386/conf/GENERIC<br>
@@ -79,6 +79,7 @@ options       AUDIT                   # Security event auditing<br>
 options        CAPABILITY_MODE         # Capsicum capability mode<br>
 options        CAPABILITIES            # Capsicum capabilities<br>
 options        MAC                     # TrustedBSD MAC Framework<br>
+options        KDTRACE_FRAME           # Ensure frames are compiled in<br>
 options        KDTRACE_HOOKS           # Kernel DTrace hooks<br>
 options        DDB_CTF                 # Kernel ELF linker loads CTF data<br>
 options        INCLUDE_CONFIG_FILE     # Include this file in kernel<br>
diff --git a/sys/i386/conf/MINIMAL b/sys/i386/conf/MINIMAL<br>
index 55ef357248c5..ec46c91aaad2 100644<br>
--- a/sys/i386/conf/MINIMAL<br>
+++ b/sys/i386/conf/MINIMAL<br>
@@ -90,9 +90,9 @@ include &quot;std.debug&quot;<br>
 options        GZIO                    # gzip (dumps)<br>
 options        ZSTDIO                  # zstd (dumps, tarfs, uzip, zfs)<br>
<br>
-# Make an SMP-capable kernel by default<br>
+# To make an SMP kernel, the next two lines are needed<br>
 options        SMP                     # Symmetric MultiProcessor Kernel<br>
-device         apic<br>
+device         apic                    # I/O APIC<br>
<br>
 # CPU frequency control<br>
 device         cpufreq<br>
@@ -102,6 +102,18 @@ device             acpi<br>
 device         smbios<br>
 device         pci<br>
<br>
+# ATA controllers<br>
+device         ahci                    # AHCI-compatible SATA controllers<br>
+<br>
+# ATA/SCSI peripherals<br>
+device         scbus                   # SCSI bus (required for ATA/SCSI)<br>
+device         da                      # Direct Access (disks)<br>
+device         cd                      # CD<br>
+device         pass                    # Passthrough device (direct ATA/SCSI access)<br>
+<br>
+# NVM Express (NVMe) support<br>
+device         nvme                    # base NVMe driver<br>
+<br>
 # atkbdc0 controls both the keyboard and the PS/2 mouse<br>
 device         atkbdc                  # AT keyboard controller<br>
 device         atkbd                   # AT keyboard<br>
@@ -141,15 +153,15 @@ device            virtio                  # Generic VirtIO bus (required)<br>
 device         virtio_pci              # VirtIO PCI device<br>
 device         vtnet                   # VirtIO Ethernet device<br>
 device         virtio_blk              # VirtIO Block device<br>
-device         virtio_balloon          # VirtIO Memory Balloon device<br>
 device         virtio_scsi             # VirtIO SCSI device<br>
+device         virtio_balloon          # VirtIO Memory Balloon device<br>
<br>
 # Linux KVM paravirtualization support<br>
 device         kvm_clock               # KVM paravirtual clock driver<br>
<br>
 # Xen HVM Guest Optimizations<br>
-# NOTE: XENHVM depends on xenpci and xentimer.<br>
-# They must be added or removed together.<br>
+# NOTE: XENHVM and xenpci interdepend.  They must be added or removed<br>
+# together.  xentimer depends on XENHVM and isn&#39;t required.<br>
 options        XENHVM                  # Xen HVM kernel infrastructure<br>
 device         xenpci                  # Xen HVM Hypervisor services driver<br>
 device         xentimer                # Xen x86 PV timer device<br>
@@ -158,15 +170,3 @@ device             xentimer                # Xen x86 PV timer device<br>
 options        EVDEV_SUPPORT           # evdev support in legacy drivers<br>
 device         evdev                   # input event device support<br>
 device         uinput                  # install /dev/uinput cdev<br>
-<br>
-# NVM Express (NVMe) support<br>
-device         nvme                    # base NVMe driver<br>
-<br>
-# ATA controllers<br>
-device         ahci                    # AHCI-compatible SATA controllers<br>
-<br>
-# CAM<br>
-device         scbus                   # SCSI bus (required for ATA/SCSI)<br>
-device         da                      # Direct Access (disks)<br>
-device         cd                      # CD<br>
-device         pass                    # Passthrough device (direct ATA/SCSI access)<br>
<br>
</blockquote>
home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAPjTQNEO=G9KroDnGmtL39cu9HbgWxVEDVByBzhy36cX4sAH1Q>