Link [ NetBSD | NetBSD OpenGrok source search | PR fulltext-search | Summary of daily snapshot builds | history of daily build result | pkgsrc commit viewer ]


   
        usage: [branch:branch] [user:user] [path@revision] keyword [... [-excludekeyword [...]]] (e.g. branch:MAIN sys/arch/arm, if_wm.c@1.234 )




switch to index mode

recent branches: MAIN (10h)  netbsd-11 (21h)  netbsd-9 (8d)  netbsd-10 (8d)  perseant-exfatfs (92d) 

2025-12-08 06:13:42 UTC Now

2025-12-07 19:59:51 UTC MAIN commitmail json YAML

2025-12-07 10:05:10 UTC MAIN commitmail json YAML

uhid: Move generic HID code to sys/dev/hid

This change introduces a bus agnostic HID interface (sys/dev/hid/hidev.h)
and splits the uhid driver into a shareable (sys/dev/hid/uhid_common.c) and
USB specific (sys/dev/usb/uhid.c) code.

(jmcneill)

2025-12-07 09:10:23 UTC netbsd-11 commitmail json YAML

2025-12-07 09:10:00 UTC netbsd-11 commitmail json YAML

Pull up following revision(s) (requested by jmcneill in ticket #115):

sys/dev/sdmmc/sdmmc_io.c: revision 1.22
sys/dev/sdmmc/sdhc.c: revision 1.123

sdhc: Do not set auto cmd12 enable for SDIO RW extended ops
sdmmc: Use block mode for multi block SDIO transfers.

Change from OpenBSD:
https://github.com/openbsd/src/commit/5e0782b17abc2070c235843e37de911ce3f98ef8

So far the SDIO stack issued one transfer for every 64 byte to be
copied.  This severely limits the speed over the bus.  By using
block mode we can issue block-sized transfers, which bumps the
transfer size to at least 512 bytes.  By using multi-block mode
we can copy up to 511 blocks per transfer.

(martin)

2025-12-07 09:07:10 UTC netbsd-11 commitmail json YAML

Annotate #112 for additional pullups

(martin)

2025-12-07 09:06:21 UTC netbsd-11 commitmail json YAML

Additionaly apply the following to fix the build for ticket #112:

usr.sbin/npf/npfctl/npf_build.c 1.63

enclose NPF_VAR_ID case in braces to fix linter build

(martin)

2025-12-07 02:20:59 UTC MAIN commitmail json YAML

remove some commented out leftovers
NFC

(macallan)

2025-12-07 02:11:49 UTC MAIN commitmail json YAML

fix XMAP9 access / timings, which is surprisingly difficult since REX and XMAP9
run at different clock speeds ( one on bus clock, the other on half the pixel
clock with no handshake, and both with their own FIFOs

From Adrian Chadd

(macallan)

2025-12-06 20:25:28 UTC MAIN commitmail json YAML

reverse the GCC 14 test polarity, now just alpha, mips, sh3, and m68k.

mips switching soon, the others have some issues remaining.

(mrg)

2025-12-06 19:39:59 UTC MAIN commitmail json YAML

note ppc switched.  thanks to martin for making it work!

(mrg)

2025-12-06 16:07:13 UTC MAIN commitmail json YAML

Fix case of OpenBSD for last rge(4) entry

(leot)

2025-12-06 16:03:40 UTC MAIN commitmail json YAML

sdmmc: Use block mode for multi block SDIO transfers.

Change from OpenBSD:
https://github.com/openbsd/src/commit/5e0782b17abc2070c235843e37de911ce3f98ef8

So far the SDIO stack issued one transfer for every 64 byte to be
copied.  This severely limits the speed over the bus.  By using
block mode we can issue block-sized transfers, which bumps the
transfer size to at least 512 bytes.  By using multi-block mode
we can copy up to 511 blocks per transfer.

(jmcneill)

2025-12-06 16:00:24 UTC MAIN commitmail json YAML

sdhc: Do not set auto cmd12 enable for SDIO RW extended ops

(jmcneill)

2025-12-06 15:25:51 UTC MAIN commitmail json YAML

Note my update of rge(4)

(pgoyette)

2025-12-06 14:33:54 UTC MAIN commitmail json YAML

doc: Fix spelling of "accommodate".

(nia)

2025-12-06 14:32:54 UTC MAIN commitmail json YAML

doc: Last month of changes

(nia)

2025-12-06 13:05:05 UTC MAIN commitmail json YAML

Trailing whitespace

(skrll)

2025-12-06 12:19:13 UTC MAIN commitmail json YAML

m68k/elf_machdep.h: organize symbols into psABI & local groups.

Allow this file to be used with <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-06 12:14:40 UTC MAIN commitmail json YAML

elftoolchain/common: Update to upstream [r4303].

(jkoshy)

2025-12-06 10:35:20 UTC MAIN commitmail json YAML

2025-12-06 06:20:23 UTC MAIN commitmail json YAML

ftp: fix ascii transfers with progress bar

Handle stdio interruption by signals and improve error handling
in getc() and putc() on the control and data channels.
Provide ftp_getc() and ftp_putc() wrappers that:
- Retry the operation on EINTR or EAGAIN instead of failing.
- Store other error codes in a return variable separate to errno,
  and use that variable in ferror() handling, for more correct
  error messages.

Fixes the progress bar display in ascii mode transfers.

(Note that I haven't fixed interrupted reads from stdin or
writes to ttyout; that's a much larger refactor that's out of scope).

Fix PR bin/59587 from Johnny Billquist, with the fix
inspired by the patch in that PR.

(lukem)

2025-12-06 04:55:05 UTC MAIN commitmail json YAML

2025-12-05 22:48:44 UTC MAIN commitmail json YAML

2025-12-05 20:56:46 UTC MAIN commitmail json YAML

or1k/elf_machdep.h: Group symbols into psABI and local groups.

Allow this file to be used with <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-05 20:53:51 UTC MAIN commitmail json YAML

Appease clang & KNF.

Should be NFC for gcc compiles.

(kre)

2025-12-05 20:49:17 UTC MAIN commitmail json YAML

Track individual inodes between the time that their accounting is
subtracted from one segment before it is added to the new segment.
Counting duplicates is not sufficient.  Addresses a "negative bytes"
panic.

(perseant)

2025-12-05 20:30:27 UTC MAIN commitmail json YAML

Use a red/black tree, rather than a linked list, to store deferred
sergment byte count changes in truncation.

(perseant)

2025-12-05 18:33:28 UTC MAIN commitmail json YAML

mips: Fix R5000SC cache page macro typo that broke boot.

A change in rev 1.5 to mips_r5k_round_page() and mips_r5k_trunc_page()
in cache_r5k.h (for PR/55139) had a fatal typo in the mask, so the
R5000SC cache flush code ended up operating on unintended addresses
and at least R5000SC Indy would no longer boot.
(not sure how my Qube 2700 worked at that time..)

Fix the macros to use the intended mask so that the secondary cache
flushes are done on the correct range again.

Sorry for the long breakage.

Analyzed and reported by Adrian Chadd on port-mips@.
https://mail-index.netbsd.org/port-mips/2025/12/thread1.html#001536

Should be pulled up to netbsd-9, netbsd-10, and netbsd-11.

(tsutsui)

2025-12-05 17:58:12 UTC MAIN commitmail json YAML

sys/arch/amd64: support ramdisks when booting in GENPVH mode

This adds support for booting NetBSD/amd64 with QEMU窶冱 -kernel/-initrd
combination, in generic PVH mode (GENPVH). This includes the MICROVM
kernel, which now defaults to supporting modules and root on memory
disks.

This patch probes the first few bytes loaded in memory for
differentiating between modules, splash screens (PNG or JPEG), or
assumes filesystem images otherwise. It works with plain filesystem
images, but not with modules yet. Supporting any combination of
filesystem, modules or splash screen images should be possible in the
future.

Tested on NetBSD/amd64 by iMil and myself; measured to gain another 1~3
ms of boot time with the MICROVM kernel on the reference hardware.

As posted on tech-kern@ on 26/11/2025, with no objections.

XXX pull-up to -11 and adapt for -10

(khorben)

2025-12-05 16:32:31 UTC MAIN commitmail json YAML

ia64/elf_machdep.h: organize symbols into psABI & local groups.

Allow this file to be used with <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-05 16:30:22 UTC MAIN commitmail json YAML

sparc/elf_machdep.h: organize symbols into psABI & local groups.

Allow this file to be used with <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-05 16:29:13 UTC MAIN commitmail json YAML

sparc64/elf_machdep.h: organize symbols into psABI & local groups.

Allow this file to be used with <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-05 16:27:20 UTC MAIN commitmail json YAML

elftoolchain/common: Update to upstream [r4299].

(jkoshy)

2025-12-05 15:19:50 UTC MAIN commitmail json YAML

Make sure to actually *push* the MMU51_TCR_BITS onto the stack.

(thorpej)

2025-12-05 14:43:37 UTC MAIN commitmail json YAML

Use the sharable MMU enablement code fragment.

(thorpej)

2025-12-05 14:42:07 UTC MAIN commitmail json YAML

Add a sharable code fragment for enabling the MMU.

(thorpej)

2025-12-05 14:17:52 UTC MAIN commitmail json YAML

Some tidy-up of the MMU-enable code:
- Use defined constants rather than magic numbers for the 68040 %cacr
  and 68060 %cacr and %pcr bits.
- Clean up some comments.
- Use a more robust comparison against mmutype for the 68040-or-68060
  case (and improve the comment, as well).
- Make sure all final jumps to Lmmuenabled are non-PC-relative, and add
  such a jump to the final (68851/68030) case rather than letting it simply
  fall through.  This is in service of making this code sharable as an
  includable code fragment on platforms with different requirements (i.e.
  systems that don't have a VA==PA environment when this code runs).

(thorpej)

2025-12-05 13:52:27 UTC MAIN commitmail json YAML

Add a note about how asm code relies on the ordering of the MMU_*
constants.

(thorpej)

2025-12-05 13:27:03 UTC MAIN commitmail json YAML

Define the fields in the 68060 Processor Configuration Register.

(thorpej)

2025-12-05 13:10:56 UTC netbsd-11 commitmail json YAML

Tickets #111 - #114

(martin)

2025-12-05 13:09:37 UTC netbsd-11 commitmail json YAML

Pull up following revision(s) (requested by riz in ticket #114):

distrib/sets/lists/debug/mi: revision 1.488 (parts of, via patch)

fix debuglib setlists

(martin)

2025-12-05 13:03:52 UTC netbsd-11 commitmail json YAML

Pull up following revision(s) (requested by nia in ticket #113):

sys/arch/mips/include/bswap.h: revision 1.6
sys/arch/powerpc/include/bswap.h: revision 1.7

mips: Use the inline macro version of bswap.

mips suffers from the same problem as sparc where bswap is slow
and using the GCC builtin does not make it better.

This change improves the speed of disk encryption by around 3 MiB/s
on an EdgeRouter 4.
PR port-sparc64/59789

powerpc: Use GCC builtins for bswap.

This doubled disk encryption performance on an (emulated) G4. Further
improvements are possible if the GCC 2 version of the endian functions
is used, so we might want to consider doing that on more NetBSD ports.

PR port-sparc64/59789 bswap is slow

(martin)

2025-12-05 12:56:23 UTC netbsd-11 commitmail json YAML

Pull up following revision(s) (requested by joe in ticket #112):

usr.sbin/npf/npftest/npftest.conf: revision 1.18
usr.sbin/npf/npftest/libnpftest/npf_rule_test.c: revision 1.26
usr.sbin/npf/npfctl/npf_var.c: revision 1.16
usr.sbin/npf/npfctl/npf_var.h: revision 1.14
usr.sbin/npf/npfctl/npf_build.c: revision 1.62

PR bin/59511

when extracting variables for filtering in NPF, allow the handler to
recursively extract all variables that might be present in the parent variable
to fully get all the filter elements present in them. this issue poses a  security risk
as intruders can find their way into your machine if you intend to block them
but have their IPs in a nested variable with other IPs as well.

(martin)

2025-12-05 12:44:45 UTC netbsd-11 commitmail json YAML

Pull up following revision(s) (requested by skrll in ticket #111):

sys/dev/mii/mcommphy.c: revision 1.4
sys/dev/mii/mcommphy.c: revision 1.5
sys/dev/mii/mcommphy.c: revision 1.6

Apply some standard defaults for YT85[23]1

Slight re-arrangement of #defines. NFCI.

Spaces to tab

(martin)

2025-12-04 22:04:58 UTC MAIN commitmail json YAML

diff(1): use Fl Fl for long options

(wiz)

2025-12-04 21:57:22 UTC MAIN commitmail json YAML

Avoid inserting spurious whitespace after "etc.)", which doesn't actually
end the sentence here.

(jschauma)

2025-12-04 21:53:01 UTC MAIN commitmail json YAML

mips/elf_machdep.h: organize symbols into psABI & local groups.

Allow this file to be used with <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-04 21:51:10 UTC MAIN commitmail json YAML

riscv/elf_machdep.h: organize symbols into psABI & local groups.

Allow this file to be used with <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-04 21:47:01 UTC MAIN commitmail json YAML

elftoolchain/common: Sync with upstream [r4296].

(jkoshy)

2025-12-04 18:22:17 UTC MAIN commitmail json YAML

2025-12-04 16:01:43 UTC MAIN commitmail json YAML

remove accidental new line.

(andvar)

2025-12-04 15:34:22 UTC MAIN commitmail json YAML

viaide(4): identify and attach VT6420 IDE (PATA) controller.

The VT6420 is an independent version of the integrated VT8237R SATA RAID and
IDE controller, sharing the same PCI ID as the southbridge SATA controller.
The PATA controller, on the other hand, has a unique PCI ID, since the
integrated one reuses the same PCI ID as many other VIA southbridges and ISA
bridge identification would not work with this controller. The controller is
quite rare (likely due to the SATA autonegotiation bug), so it seems nobody
added this PCI ID to any major OS.

Tested on Biostar M7NCD Ultra.

(andvar)

2025-12-04 14:51:22 UTC MAIN commitmail json YAML

Enable PaX features in WII kernel configuration.

Seems to work fine, with mmap addresses being randomized per-process
and (PROT_WRITE | PROT_EXEC) resulting in a segfault.

(nia)

2025-12-04 10:27:09 UTC MAIN commitmail json YAML

2025-12-04 10:26:47 UTC MAIN commitmail json YAML

Add VIA VT6420 IDE controller.

(andvar)

2025-12-04 06:01:57 UTC MAIN commitmail json YAML

Disable caches earlier.  Use relative labels in MMU enablement code.

(thorpej)

2025-12-04 02:55:25 UTC MAIN commitmail json YAML

2025-12-04 02:40:36 UTC MAIN commitmail json YAML

Add setdfc() and setsfc() inlines.

(thorpej)

2025-12-04 01:47:34 UTC MAIN commitmail json YAML

Fix an error in version 1.295: the size of an IINFO is IINFOSIZE(fs), not
sizeof(IINFOSIZE(fs)).  Addresses a segment summary overwrite in LFS64.

(perseant)

2025-12-03 21:36:14 UTC MAIN commitmail json YAML

vax/elf_machdep.h: permit usage with <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-03 21:17:46 UTC MAIN commitmail json YAML

hppa/elf_machdep.h: organize symbols into psABI & local groups.

Allow this file to be used with <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-03 21:15:07 UTC MAIN commitmail json YAML

elftoolchain/common: Update to upstream [r4294].

(jkoshy)

2025-12-03 20:09:16 UTC MAIN commitmail json YAML

The LLVM build is a bit larger than the GCC build.  Bump the size up a bit.

(brad)

2025-12-03 08:26:10 UTC MAIN commitmail json YAML

_SC_OPEN_MAX can exceed FD_SETSIZE. Use the compat value svc_maxfd+1
from the rpc library similar to ypbind(8).

The custom _svc_run() function is required as the standard svc_run()
may hang for retries.

Fixes PR 59750.

(mlelstv)

2025-12-03 08:12:33 UTC MAIN commitmail json YAML

2025-12-03 02:15:08 UTC MAIN commitmail json YAML

I am giving up attempting to bend the kernel build machinery to my will
so that assym.h can be safely included by libkern assembly sources.  So,
instead, redundantly define __HAVE_M68K_BROKEN_RMC in multiple places so
that all the things that need to key off of it can.

(thorpej)

2025-12-02 22:50:16 UTC MAIN commitmail json YAML

sh3/elf_machdep.h: organize symbols into toolchain & local groups.

Allow this file to be used with <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-02 22:39:31 UTC MAIN commitmail json YAML

2025-12-02 18:07:15 UTC MAIN commitmail json YAML

Trim sl and swwdog from the RAMDISK kernel in hopes of getting it to fit.

(brad)

2025-12-02 15:41:48 UTC MAIN commitmail json YAML

Revert previous.  I guess I'll have to solve the m68k build issue
a different way.

(thorpej)

2025-12-02 15:40:19 UTC MAIN commitmail json YAML

We can use __builtin_bswapX on sparc when using clang, so do so.

PR port-sparc64/59789 bswap is slow

(nia)

2025-12-02 14:50:52 UTC MAIN commitmail json YAML

Make libkern depend on assym.h.

(thorpej)

2025-12-02 13:28:55 UTC MAIN commitmail json YAML

Revert the size change of the install ramdisk and instead just remove
a driver from the install kernel.  Same ramdisk size as before.  Not
sure this platform can have a larger ramdisk size.

(brad)

2025-12-02 09:09:00 UTC MAIN commitmail json YAML

Image size changed.  Bump.

(brad)

2025-12-02 07:42:07 UTC MAIN commitmail json YAML

MPROTECT=0 misleadingly actually enables MPROTECT.

(nia)

2025-12-02 03:03:20 UTC MAIN commitmail json YAML

2025-12-02 02:53:08 UTC MAIN commitmail json YAML

Add a PMBM_F_RO flag to allow machine_bootmap[] to create read-only
mappings.  mac68k uses this to map the Mac ROMs.

(thorpej)

2025-12-02 02:32:36 UTC MAIN commitmail json YAML

Add __HAVE_NEW_PMAP_68K glue:
- mac68k_init(): Use pmap_protect() to write-protect the kernel text
  (with a comment explaining why we do this here).
- Add a machine_bootmap[] with entries for IOBase, ROMBase, and VIDBase.
  In bootstrap_mac68k(), patch up machine_bootmap[] with run-time computed
  values.

(thorpej)

2025-12-02 02:26:18 UTC MAIN commitmail json YAML

pmap_machine_check_bootstrap_allocations() and bootstrap_mac68k() are
independent of the pmap implementation; move them out of pmap_bootstrap.c
and into machdep.c

(thorpej)

2025-12-02 02:23:21 UTC MAIN commitmail json YAML

bus_mem_add_mapping(): Rather than directly fiddling with PTEs, just
pass the appropriate flags to pmap_kenter_pa().

(thorpej)

2025-12-02 02:22:34 UTC MAIN commitmail json YAML

Revert previous (wrong commit message, obviously).

(thorpej)

2025-12-02 02:17:06 UTC MAIN commitmail json YAML

cpsw.4: some minor updates

Intervention for PHY configuration hasn't been necessary for some time.

(gutteridge)

2025-12-02 02:08:11 UTC MAIN commitmail json YAML

bus_mem_add_mapping(): Rather than directly fiddling with PTEs, just
pass the appropriate flags to pmap_kenter_pa().

(thorpej)

2025-12-02 02:05:23 UTC MAIN commitmail json YAML

Now that pmap_bootstrap1() correctly initializes Sysseg_pa, use that
value rather than computing the PA of from Sysseg.

(thorpej)

2025-12-02 02:04:21 UTC MAIN commitmail json YAML

Sysseg_pa is supposed to be a physical address, so don't PA2VA()
the value before assigning it.

(thorpej)

2025-12-02 01:23:09 UTC MAIN commitmail json YAML

* Use the LFS_IFDIRTY flag to keep track of whether the Ifile has
  ungathered changes during checkpoint.  Modify LFS_WRITESEGENTRY and
  make a new LFS_WRITEIENTRY macro to help track this.  Prevents
  an infinite loop in lfs_writeinode, previously caught with a panic.

* Fix a false-positive "negative bytes" panic when writing inodes into
  the same segment they were in before, and consolidate the accounting
  logic into new function lfs_subtract_inode.

* Ensure that we do not clean any inodes that were unavailable during
  the first pass of cleaning, so that we never need to mix cleaning and
  non-cleaning blocks (except for the Ifile) when writing.

* Straighten out the logic in lfs_writefile to make it more readable.

* Include IMNT_WANTRDONLY in tests for closing out writes, not just
  IMNT_UNMOUNT.

* Keep track of whether the kernel cleaner is active on a file system
  with a status flag; use a condvar to synchronously turn this on
  or off.

(perseant)

2025-12-02 01:16:41 UTC MAIN commitmail json YAML

Remved final return from void-retuning function

(manu)

2025-12-01 21:51:57 UTC MAIN commitmail json YAML

Bump up the size of the ramdisk.  Maybe fix the build.

(brad)

2025-12-01 21:24:29 UTC MAIN commitmail json YAML

2025-12-01 21:22:33 UTC MAIN commitmail json YAML

Make the sshramdisk a bit bigger.  Hopefully fixes the build.

(brad)

2025-12-01 20:24:31 UTC MAIN commitmail json YAML

Enable ASLR by default on OCTEON.

Tested on an EdgeRouter 4.

(nia)

2025-12-01 17:50:17 UTC MAIN commitmail json YAML

2025-12-01 17:48:01 UTC MAIN commitmail json YAML

i386/elf_machdep.h: Organise symbols into psABI and local groups.

Permit this file to be used alongside <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-01 17:47:13 UTC MAIN commitmail json YAML

Add a hook that allows a machine to override the default kernel text
protection bits.  This is needed by mac68k which must map a portion
of the kernel text read/write (roughly the first 8KB of the kernel
address space) as that's where it needs to place the vector table plus
the "low ram" variable area needed by the Mac ROMs.

The hook is such that the entire kernel text is mapped with the specified
PTE bits, and then machdep code can come back later to perform any fixups
as needed (e.g. re-mapping &start to &etext read-only) once the kernel is
running on its MMU tables.

While here, add one more PMAP_MACHINE_CHECK_BOOTSTRAP_ALLOCATIONS check
if allocation of additional segment table pages is needed (unlikely, but
this check is needed in case it does happen).

(thorpej)

2025-12-01 17:38:54 UTC MAIN commitmail json YAML

2025-12-01 16:39:57 UTC MAIN commitmail json YAML

powerpc/elf_machdep.h: Use psABI spellings and group symbols into psABI/local groups.

The prior spellings have been kept around for backward compatibility.

Permit this file to be used alongside <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-12-01 16:02:42 UTC MAIN commitmail json YAML

Pull in some code from OpenBSD and adapt to our net80211 stack.

The result seems to be stable (no more firmware panics and
unknown firmware events). The driver now also sets (and
upgrades) transmit rates.

Tested with
- Intel AC 3168
- Intel AC 7265
- Intel AC 8000
- Intel AC 8265

AC 3168 now also uses a more recent firmware (in a separate commit).

(mlelstv)

2025-12-01 14:56:03 UTC MAIN commitmail json YAML

When using a SC16IS7xx device in interrupt polling mode it was pretty
abusive to the I2C or SPI bus, and beat up the USB bus pretty badly as
the kthread ran all of the time checking to see if an interrupt
occurred.

Take advantage of the enable and disable calls that the general com.c
code supports for the purpose of doing power management and use those
to start, pause and resume the kthread only when the device is
actually open().  There does not effect the use of the GPIO on the
SC16IS7XX as that doesn't use the kthread for anything.  There does
not seem to be any particular down side to this change.  That is, it
there doesn't seem to be a use case for the device not to be open()
and still want interrupts handled.

Also...  apparently the device property is-console and/or
force-console needs to be set to something.  Just letting those float
appears to have the chance of introducing random values which are
sometimes "true", which is unexpected.  For the SC16IS7xx device, just
set these to false.  It is mostly a SMOP to getting this device
working as a console, with limitations, as the I2C or SPI bus must
exist first and be in a working state.  There is some interesting
ability of UEFI to talk to a I2C bus, so it may be possible to even
have early console if you can get that path working on systems that
have UEFI.  While the ability to have a dedicated console, and perhaps
KGDB, port outside of what a system might usually have is interesting,
all of this is beyond my particular use case.

(brad)

2025-12-01 14:13:42 UTC MAIN commitmail json YAML

2025-12-01 14:05:07 UTC MAIN commitmail json YAML

XXX XXX Big, fat, ugly workaround for an unfortunate senario triggered
XXX XXX by the addition of the umcpmio driver on the RISC-V port.

(thorpej)

2025-12-01 13:31:22 UTC MAIN commitmail json YAML

Only include "assym.h" if _KERNEL_OPT is defined.

(Rump strikes again!)

(thorpej)

2025-12-01 09:31:44 UTC MAIN commitmail json YAML

if: move if_linkstate_hooks initialization out of if_getindex() (NFC)

if_getindex() is not expected to initialize it.

(ozaki-r)

2025-12-01 08:26:55 UTC MAIN commitmail json YAML

sparc64: Enable AES_BEAR64 in GENERIC

PR kern/59774 bearssl 32-bit AES is too slow, want 64-bit optimized
version in kernel

(nia)

2025-12-01 07:53:51 UTC MAIN commitmail json YAML

2025-12-01 07:52:57 UTC MAIN commitmail json YAML

s/releated/related/ in the acpi dump output and the kernel config comment.

(andvar)

2025-12-01 06:26:06 UTC MAIN commitmail json YAML

2025-12-01 03:53:25 UTC MAIN commitmail json YAML

2025-12-01 00:32:40 UTC MAIN commitmail json YAML

npf.conf.5: fix a minor typo

(gutteridge)

2025-11-30 23:42:56 UTC MAIN commitmail json YAML

pmap_bootstrap1() has some macros to aid translation between virtual and
physical addresses.  Move these into <m68k/pmap_68k.h> and put them into
two groups.

The first group (PMAP_BOOTSTRAP_RELOC_GLOB() and PMAP_BOOTSTRAP_RELOC_PA())
are for referencing global symbols and physical addresses from within the
context of pmap_bootstrap1() (or similar function) itself.

The second group (PMAP_BOOTSTRAP_VA_TO_PA() and PMAP_BOOTSTRAP_PA_TO_VA())
are for translating addresses that will be used in the context of the running
kernel once the MMU is enabled.

The former group is necessary because some platforms may call pmap_bootstrap1()
with the MMU *enabled* but running on foreign mappings whereby global
references work without relocation but access to physical addresses require
relocation (this is the case on mac68k systems that place the frame buffer
at physical address $0000.0000, in which case MacOS uses the MMU to simulate
the traditional MacOS memory map and we're running on those mappings when
the kernel starts).

Systems with special requirements (see above) can override each of these
macros individually by simply defining them in <machine/pmap.h> before
including <m68k/pmap_68k.k>.

(thorpej)

2025-11-30 22:17:30 UTC MAIN commitmail json YAML

arm/elf_machdep.h: Use psABI spellings for a few constants.

The prior spellings have been kept around for backward compatibility.

(jkoshy)

2025-11-30 21:42:28 UTC MAIN commitmail json YAML

Move the mac68k "check bootstrap allocations fit" code into a new function
called pmap_machine_check_bootstrap_allocations(), and call it from the
existing Hibler pmap pmap_bootstrap1() in the appropriate place.

Add a new hook for the new pmap_bootstrap1() enabled by defining
PMAP_MACHINE_CHECK_BOOTSTRAP_ALLOCATIONS in <machine/pmap.h>.  When
enabled, that function will be called once the bulk of the bootstrap
allocations have been completed.

(thorpej)

2025-11-30 20:53:47 UTC MAIN commitmail json YAML

pmap_bootstrap() -> pmap_bootstrap1().

(thorpej)

2025-11-30 20:45:21 UTC MAIN commitmail json YAML

Move the initialization of avail_start, avail_end, and last_page
from the end of pmap_bootstrap() to just after the call to pmap_bootstrap().

NFC.

(thorpej)

2025-11-30 20:39:57 UTC MAIN commitmail json YAML

Don't bother recomputing physmem after all of the bootstrap allocations
are complete.  It's now computed earlier and is intended to reflect the
actual amount of physical memory in the machine in any case.

(thorpej)

2025-11-30 20:09:18 UTC MAIN commitmail json YAML

2025-11-30 19:50:21 UTC MAIN commitmail json YAML

physmem is a psize_t (see uvm_page.c).  Make the type used in the RELOC()
macro match, even though there's no practical difference on an IPL32 system.

(thorpej)

2025-11-30 19:40:00 UTC MAIN commitmail json YAML

Another mac68k adaptation note / TODO: mac68k also needs to map the
last page of RAM VA==PA for doboot(), but this is not at a fixed
location like it is on hp300.  Existing kernel PT allocation should
be sufficient to ensure there's a PTE availabe for this, but it would
be nice to provide a way for cpu_startup() to assert it.

(thorpej)

2025-11-30 19:22:54 UTC MAIN commitmail json YAML

bump date to reflect changes

(joe)

2025-11-30 19:17:52 UTC MAIN commitmail json YAML

Rename the "maxaddr" global to "last_page" to reflect what it actually is.
(There is also a "maxaddr" local used in cpu_startup(), so renaming the
variable that points to the last memory page makes things less confusing.)

(thorpej)

2025-11-30 19:03:55 UTC MAIN commitmail json YAML

pmap_bootstrap1(): Skip machine_bootmap[] entries with size == 0.

(thorpej)

2025-11-30 17:48:16 UTC MAIN commitmail json YAML

powerpc: Use GCC builtins for bswap.

This doubled disk encryption performance on an (emulated) G4. Further
improvements are possible if the GCC 2 version of the endian functions
is used, so we might want to consider doing that on more NetBSD ports.

PR port-sparc64/59789 bswap is slow

(nia)

2025-11-30 17:43:04 UTC MAIN commitmail json YAML

mips: Use the inline macro version of bswap.

mips suffers from the same problem as sparc where bswap is slow
and using the GCC builtin does not make it better.

This change improves the speed of disk encryption by around 3 MiB/s
on an EdgeRouter 4.

PR port-sparc64/59789

(nia)

2025-11-30 17:34:19 UTC MAIN commitmail json YAML

pmap_bootstrap1(): Add a TODO comment describing a hook currently needed
by mac68k.

(thorpej)

2025-11-30 17:07:18 UTC MAIN commitmail json YAML

Sum up the memory and initalize physmem just before calling pmap_bootstrap().
NFC.

(thorpej)

2025-11-30 16:34:24 UTC MAIN commitmail json YAML

Move the initialization of vidlen out of pmap_bootstrap() and into
bootstrap_mac68k(), just before the pmap_bootstrap() call.

NFC.

(thorpej)

2025-11-30 07:12:03 UTC MAIN commitmail json YAML

2025-11-30 07:09:22 UTC MAIN commitmail json YAML

Slight re-arrangement of #defines. NFCI.

(skrll)

2025-11-30 01:46:00 UTC MAIN commitmail json YAML

2025-11-30 01:31:36 UTC MAIN commitmail json YAML

2025-11-30 00:23:52 UTC MAIN commitmail json YAML

install.1: Fix explanation of -p option.

Noted by GAW like a year ago

(dholland)

2025-11-29 23:48:06 UTC MAIN commitmail json YAML

Consistently specify `-fno-unwind-tables` to shrink kernel binary size.

before:
NetBSD 11.99.4 (GENERIC) #22: Sun Nov 30 08:16:31 JST 2025
  text    data    bss    dec    hex filename
2996019  101388  101984 3199391  30d19f netbsd

after:
NetBSD 11.99.4 (GENERIC) #23: Sun Nov 30 08:18:18 JST 2025
  text    data    bss    dec    hex filename
2689719  101388  101984 2893091  2c2523 netbsd

Worth to pull up to netbsd-11.

XXX: should this be default for all kernels?

(tsutsui)

2025-11-29 23:15:54 UTC MAIN commitmail json YAML

Remind people to update the SMALL* configs when updating this one.

(thorpej)

2025-11-29 23:15:23 UTC MAIN commitmail json YAML

Add a trimmed down configuration file for the small 68020-based
machines.

(thorpej)

2025-11-29 23:12:26 UTC MAIN commitmail json YAML

Initialize interrupt handlers earlier than registering NMI handler.

Otherwise `KASSERT(ih_allocfuncs == NULL);` in m68k_intr_init() is fired.
Also fix build error without "options news1700".

Should be pulled up to netbsd-11.

XXX: maybe this KASSERT should be more consistent with m68k_intr_establish()
XXX: that allows called without m68k_intr_init()?

(tsutsui)

2025-11-29 22:46:08 UTC MAIN commitmail json YAML

- pte_set() and pte_mask() are only used for HP MMU VAC shenanigans; only
  make them available if MMU_CONFIG_HP_CLASS is true.  Also, don't bother
  with the inline asm; it's not really needed at all.
- Don't use atomic_add_ulong() for pmap_stat_update(), as it is implemented
  in terms of CAS, which must be avoided on __HAVE_M68K_BROKEN_RMC systems.
  It's only used inside pmap critical sections, so just garden-variety C
  arithmetic is fine.
- pmap_reference() / pmap_destroy() get similar treatment -- avoid
  atomic_inc and atomic_dec.  In this case, wrap the arithmentic inside
  PMAP_CRIT_ENTER() / PMAP_CRIT_EXIT().

(thorpej)

2025-11-29 22:15:41 UTC MAIN commitmail json YAML

remove closing parentheses that I added in the last commit, it is closed in the
next line.

(andvar)

2025-11-29 22:10:55 UTC MAIN commitmail json YAML

2025-11-29 22:10:42 UTC MAIN commitmail json YAML

s/Fujutsu/Fujitsu/ in comment.

(andvar)

2025-11-29 22:08:06 UTC MAIN commitmail json YAML

2025-11-29 22:06:03 UTC MAIN commitmail json YAML

Avoid using anything from <sys/atomic.h> if __HAVE_M68K_BROKEN_RMC is
defined.  On m68k, the atomics in question are implemented in terms of
CAS, and that instruction must be avoided on __HAVE_M68K_BROKEN_RMC
systems.

(Really, the use of atomics they're they're used isn't necessary *at
all* here, but I'm looking for the minimal change necessary for possible
pullup-11.)

(thorpej)

2025-11-29 22:03:17 UTC MAIN commitmail json YAML

alpha/elf_machdep.h: Organize symbols into local and ABI groups.

Permit this file to be used alongside <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-11-29 21:57:14 UTC MAIN commitmail json YAML

Introduce __HAVE_M68K_BROKEN_RMC, which can be defined by m68k platforms
that cannot perform indivisible READ-MODIFY-WRITE bus cycles.  The
define is named for the /RMC output signal on the CPU that is asserted
when such a cycle is performed.  These cycles are only used by the CAS,
CAS2, and TAS instructions.  The cycles are, as far as I can tell,
otherwise indistinguishable from garden-variety read followed by write
bus cycles, except for the assertion of /RMC.  Note that other single-
instruction "read-modify-write" instructions (e.g. OR, AND, ADD, etc.
with a memory destination operand) do not assert /RMC, and are thus not
considered truly atomic from the perspective of the 68k architecture.

When __HAVE_M68K_BROKEN_RMC is defined, then we must make unavailable
the CAS, CAS2, and TAS instructions, because using them will typically
cause a bus error to occur.  In this case, we handle _atomic_cas_32()
(and its aliases) in the kernel environment the same way as the 68010
does: a restartable atomic sequence.  8- and 16-bit CAS operations are
not available in the kernel environment on such platforms.

We define __HAVE_M68K_BROKEN_RMC for the hp300 platform because 68020-based
hp300 systems will generate a fault for /RMC-type cycles.

Based on work by Izumi Tsutsui.

XXX pullup-11?

(thorpej)

2025-11-29 21:45:57 UTC MAIN commitmail json YAML

Interpret p_cdsession field in partition info only when the type
is set to FS_ISO9660. Other filesystem types use the field for p_fsize,
and default values there confuse the cd9660 filesystem code.

Fixes PR 59783.

(mlelstv)

2025-11-29 21:32:29 UTC MAIN commitmail json YAML

amd64/elf_machdep.h: Organize symbols into local and psABI groups.

Permit this file to be used alongside <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-11-29 20:00:26 UTC MAIN commitmail json YAML

Don't need to define __HAVE_RAS here; it's already defined by <m68k/types.h>.

(thorpej)

2025-11-29 19:34:20 UTC MAIN commitmail json YAML

Make sure to pass an allocation strategy (VM_BESTFIT) to vmem_alloc().

(thorpej)

2025-11-29 19:32:52 UTC MAIN commitmail json YAML

2025-11-29 18:51:55 UTC MAIN commitmail json YAML

Add umcpmio to the list of things that spi can attach to.

(brad)

2025-11-29 18:49:44 UTC MAIN commitmail json YAML

Mention umcpmio(4) version 2.

(brad)

2025-11-29 18:39:32 UTC MAIN commitmail json YAML

2025-11-29 18:39:15 UTC MAIN commitmail json YAML

umcpmio(4) version 2

o This driver supports a number of different bus frameworks.
Reorganize the driver into specific files based on the bus and
function.

o Fix an error condtion in the HID transport that happens when the
device is removed.

o Add support to the driver for the MCP2210 USB to SPI bridge.  This
bridge chip is the companion to the MCP2221 / MCP2221A.  The MCP2210
provides a SPI bus to any system that has a USB bus.  It also provides
GPIO that is used with the gpio(4) framework and 256 bytes of EEPROM
that is exposed to a /dev/ device.  It is almost certain that the chip
is just one of Microchip's PICs and while not at all perfect, is
reasonably decent if your USB bus functions well.  Like the MCP2221 /
MCP2221A, umcpmioctl provides control over a number of functions to
the MCP2210.

Premade breakout boards are available from Microchip or Mikeroe, but
the MCP2210 is pretty inexpensive and it is not at all hard to roll
your own breakout for it.

(brad)

2025-11-29 18:16:27 UTC MAIN commitmail json YAML

Fix builds in __HAVE_NEW_PMAP_68K && DEBUG case (for now).

(tsutsui)

2025-11-29 18:11:11 UTC MAIN commitmail json YAML

Make pte_set() and pte_mask() compile down to single instructions.

(thorpej)

2025-11-29 17:54:21 UTC MAIN commitmail json YAML

Hide the shell code used to compare symbols for shared libraries with
the expected set from make output, to make it easier to search for
real "error: " in the log files.

(martin)

2025-11-29 17:02:36 UTC netbsd-9 commitmail json YAML

2025-11-29 17:01:47 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by skrll in ticket #1983):

sys/dev/usb/ucom.c: revision 1.142
sys/dev/usb/ucom.c: revision 1.149

Fix ucom input queue corruption on open-after-close

When closing ucom(4) while a transfer was in progress, ucomreadcb()
is called with USBD_CANCELLED. Previously, the ucom_buffer was not
removed from sc->sc_ibuff_empty, leading to queue corruption when
reopening the device: ucomopen() calls ucomsubmitread(), which
queues the ucom_buffer again.

We fix this by making sure the ucom_buffer is removed from queue
on USBD_CANCELLED or USBD_IOERROR.

Approved by Nick Hudson, who rewrote the comment.

Add a KASSERT in ucomreadcb that the ucom_buffer removed from the
sc_ibuff_empty list is associated with the current xfer. This was
suggested by Taylor.

While I'm here fix a typo in the comment above this code.

(martin)

2025-11-29 16:52:32 UTC MAIN commitmail json YAML

2025-11-29 16:42:16 UTC MAIN commitmail json YAML

2025-11-29 16:08:28 UTC netbsd-11 commitmail json YAML

Tickets #109 and #110

(martin)

2025-11-29 16:08:01 UTC netbsd-11 commitmail json YAML

Pull up following revision(s) (requested by riastradh in ticket #110):

lib/libpthread/Makefile: revision 1.103
tests/lib/libpthread/dlopen/t_dso_pthread_create.c: revision 1.2
tests/lib/libpthread/dlopen/t_dlopen.c: revision 1.2
tests/lib/libpthread/dlopen/t_dlopen.c: revision 1.3
lib/libpthread/shlib_version: revision 1.24

tests/lib/libpthread: Test unloading libpthread after lazy binding.

If you dlopen libpthread and dlclose it again, the thread stubs like
pthread_mutex_lock need to continue working -- a library might have
calls to it in order to support thread-safety for threaded
applications, but that library needs to continue working even in
non-threaded applications after lazy binding of the libpthread symbol
instead of the libc stub.

PR lib/59784: dlopening and dlclosing libpthread is broken

tests/lib/libpthread: Don't abuse xfail.

Use a signal handler to check for SIGABRT, rather than
atf_tc_expect_signal.

xfail is for when there is a bug that we haven't fixed yet and the
test manifests a symptom of that bug -- a list of xfails is a list of
open bugs to be fixed.  In this case, we are verifying that
pthread_create _correctly_ raises SIGABRT (or fails with nonzero
return code -- both are acceptable outcomes, really), and there is no
bug here at the moment.

Prompted by (but unrelated to):
PR lib/59784: dlopening and dlclosing libpthread is broken

libpthread: Link with -Wl,-z,nodelete.
Can't safely unload libpthread because of the interaction with libc
thread stubs.

PR lib/59784: dlopening and dlclosing libpthread is broken

libpthread: Touch comment in shlib_version for recent LDADD.

This provokes relinking libpthread.so with the new arguments, without
needing manual intervention to follow a note in UPDATING.

PR lib/59784: dlopening and dlclosing libpthread is broken

(martin)

2025-11-29 16:02:27 UTC netbsd-10 commitmail json YAML

2025-11-29 16:01:08 UTC netbsd-10 commitmail json YAML

Pull up following revision(s) (requested by skrll in ticket #1202):

sys/dev/usb/ucom.c: revision 1.142
sys/dev/usb/ucom.c: revision 1.149

Fix ucom input queue corruption on open-after-close

When closing ucom(4) while a transfer was in progress, ucomreadcb()
is called with USBD_CANCELLED. Previously, the ucom_buffer was not
removed from sc->sc_ibuff_empty, leading to queue corruption when
reopening the device: ucomopen() calls ucomsubmitread(), which
queues the ucom_buffer again.

We fix this by making sure the ucom_buffer is removed from queue
on USBD_CANCELLED or USBD_IOERROR.

Approved by Nick Hudson, who rewrote the comment.

Add a KASSERT in ucomreadcb that the ucom_buffer removed from the
sc_ibuff_empty list is associated with the current xfer. This was
suggested by Taylor.

While I'm here fix a typo in the comment above this code.

(martin)

2025-11-29 15:58:35 UTC netbsd-11 commitmail json YAML

Pull up following revision(s) (requested by skrll in ticket #109):

sys/dev/usb/ucom.c: revision 1.142
sys/dev/usb/ucom.c: revision 1.149

Fix ucom input queue corruption on open-after-close

When closing ucom(4) while a transfer was in progress, ucomreadcb()
is called with USBD_CANCELLED. Previously, the ucom_buffer was not
removed from sc->sc_ibuff_empty, leading to queue corruption when
reopening the device: ucomopen() calls ucomsubmitread(), which
queues the ucom_buffer again.

We fix this by making sure the ucom_buffer is removed from queue
on USBD_CANCELLED or USBD_IOERROR.

Approved by Nick Hudson, who rewrote the comment.

Add a KASSERT in ucomreadcb that the ucom_buffer removed from the
sc_ibuff_empty list is associated with the current xfer. This was
suggested by Taylor.

While I'm here fix a typo in the comment above this code.

(martin)

2025-11-29 15:53:02 UTC MAIN commitmail json YAML

sys/bswap.h: KNF

PR port-sparc64/59789 bswap is slow

(riastradh)

2025-11-29 14:39:36 UTC MAIN commitmail json YAML

libpthread: Touch comment in shlib_version for recent LDADD.

This provokes relinking libpthread.so with the new arguments, without
needing manual intervention to follow a note in UPDATING.

PR lib/59784: dlopening and dlclosing libpthread is broken

(riastradh)

2025-11-29 09:56:20 UTC MAIN commitmail json YAML

2025-11-29 08:01:01 UTC MAIN commitmail json YAML

2025-11-29 07:08:53 UTC MAIN commitmail json YAML

Trailing whitespace

(skrll)

2025-11-29 01:33:40 UTC MAIN commitmail json YAML

console support for ucom(4)

console over ucom(4) is enabled by using "kconsdev ucom0" in boot prompt
or in boot.cfg. Speed defaults to 115200, but can be specified like this:
"kconsdev uom0,19200"

Early boot is silent, until ucom(4) gets attached.
boot -a and DDB are supported and work well on real hardware
In Qemu, DDB works, but boot -a randomly hangs on prompts

This contribution sticks to existing USB stack practice of skipping
locks when polling. riastradh@ asked for improvement here, but adressing
this requires a larger rework than just ucom(4) console code.

(manu)

2025-11-29 01:28:48 UTC MAIN commitmail json YAML

2025-11-29 00:07:26 UTC MAIN commitmail json YAML

Add new test files to FILES.

PR bin/59798 We are still using GNU diffutils

(nia)

2025-11-28 23:58:48 UTC MAIN commitmail json YAML

2025-11-28 23:50:33 UTC MAIN commitmail json YAML

Add new test files to FILES.

PR bin/59798 We are still using GNU diffutils

(nia)

2025-11-28 23:01:28 UTC MAIN commitmail json YAML

2025-11-28 21:56:23 UTC MAIN commitmail json YAML

Remove unnecessary inclusion of <sys/extent.h>

(thorpej)

2025-11-28 21:52:53 UTC MAIN commitmail json YAML

2025-11-28 21:50:23 UTC MAIN commitmail json YAML

2025-11-28 20:32:28 UTC MAIN commitmail json YAML

Save the PROM work area in C code.  Avoids cranky warnings from the
assembler about negative .space repeat counts.

(thorpej)

2025-11-28 19:12:58 UTC MAIN commitmail json YAML

aarch64/elf_machdep.h: Permit usage alongside <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-11-28 19:11:27 UTC MAIN commitmail json YAML

arm/elf_machdep.h: Permit usage alongside <sys/elfdefinitions.h>.

PR lib/59564

(jkoshy)

2025-11-28 17:04:50 UTC MAIN commitmail json YAML

Switch ppc to gcc14

(martin)

2025-11-28 17:02:09 UTC MAIN commitmail json YAML

Update status for sh3el

(martin)

2025-11-28 14:46:32 UTC MAIN commitmail json YAML

2025-11-28 11:45:26 UTC MAIN commitmail json YAML

2025-11-28 10:58:58 UTC netbsd-11 commitmail json YAML

2025-11-28 10:58:02 UTC netbsd-11 commitmail json YAML

Pull up following revision(s) (requested by nia in ticket #108):

sys/arch/sparc64/include/bswap.h: revision 1.3
sys/arch/sparc/include/bswap.h: revision 1.3
sys/sys/bswap.h: revision 1.20
sys/sys/endian.h: revision 1.38

sparc: Avoid using GCC builtins for byte-swapping and endian encoding.

gcc on most netbsd architectures (mostly excluding sparc and vax) can
generate fast MD byte-swapping code. On sparc it generates a function
call, which is very slow. We have existing inline macros for byte
swapping, so use those instead.

bswap on sparc with gcc is still non-ideal, so also reactivate the
portable endian encoding functions we apparently haven't been using
since the gcc2 days, rather than using bswap for that.

These changes improve the speed of disk encryption on ultrasparc ii
by almost 40% (the endian.h change being more significant in making
that number go high).
clang does the right thing on sparc (or at least introduces different
bottlenecks...), so avoid this there.

Thanks joerg for analysis of the problem, uwe for reviewing the patch.

PR port-sparc64/59789 bswap is slow
PR kern/59774 bearssl 32-bit AES is too slow

(martin)

2025-11-28 09:23:10 UTC MAIN commitmail json YAML

s/Capabililty/Capability/ in pcictl(8) dump output.

(andvar)

2025-11-28 09:02:58 UTC MAIN commitmail json YAML

Add a KASSERT in ucomreadcb that the ucom_buffer removed from the
sc_ibuff_empty list is associated with the current xfer. This was
suggested by Taylor.

While I'm here fix a typo in the comment above this code.

(skrll)

2025-11-28 08:27:08 UTC MAIN commitmail json YAML

2025-11-28 08:11:16 UTC MAIN commitmail json YAML

Apply some standard defaults for YT85[23]1

(skrll)

2025-11-27 22:42:41 UTC MAIN commitmail json YAML

Update comments reflecting current status.

(thorpej)

2025-11-27 21:26:04 UTC MAIN commitmail json YAML

When entering an EXEC mapping on 68040-class MMUs, we need to make sure
to push the page from the D-cache to handle the following situation:

Page was brought into memory over some mechanism that has the CPU
touch the page (e.g. paging in binary over NFS root, with an "le"
network interface).  The page is cached write-back, and so when the
user-space EXEC mapping of the page is entered, the data may still
be lingering in the cache and not yet made it out to main memory,
so when the I-cache loads from the page, it gets stale data.

XXX In addition to the DCFP(), we also do an ICPP() because that's what
Hibler's pmap did.  The ICPP() is probably not necessary.  This is an
area for future optimiation.

XXX We really only need to do this if there are not already EXEC mappings
of a managed page.  This is a possible area for future optimization.

Issue analysed and fix proposed by tsutsui@.  This is a slightly tweaked
version of that change.

(thorpej)

2025-11-27 20:51:24 UTC MAIN commitmail json YAML

arm/elf_machdep.h: Keep local and psABI definitions in separate groups.

The content of the file is otherwise unchanged.

(jkoshy)

2025-11-27 17:29:10 UTC MAIN commitmail json YAML

Add a licensing roadmap.

Feel free to edit based on your own understanding of the current
consensus.

(nia)

2025-11-27 15:42:13 UTC MAIN commitmail json YAML

2025-11-27 14:51:27 UTC MAIN commitmail json YAML

aarch64/elf_machdep.h: keep local and psABI definitions in separate groups.

The content of the file is otherwise unchanged.

PR lib/59788

(jkoshy)

2025-11-27 05:04:35 UTC MAIN commitmail json YAML

2025-11-26 23:02:11 UTC MAIN commitmail json YAML

Add reloc and relocend fields to the gen68k kcore header, as well.

No compatibility issue, since libkvm does not yet read this format.

(thorpej)

2025-11-26 22:25:11 UTC MAIN commitmail json YAML

sparc: Avoid using GCC builtins for byte-swapping and endian encoding.

gcc on most netbsd architectures (mostly excluding sparc and vax) can
generate fast MD byte-swapping code. On sparc it generates a function
call, which is very slow. We have existing inline macros for byte
swapping, so use those instead.

bswap on sparc with gcc is still non-ideal, so also reactivate the
portable endian encoding functions we apparently haven't been using
since the gcc2 days, rather than using bswap for that.

These changes improve the speed of disk encryption on ultrasparc ii
by almost 40% (the endian.h change being more significant in making
that number go high).

clang does the right thing on sparc (or at least introduces different
bottlenecks...), so avoid this there.

Thanks joerg for analysis of the problem, uwe for reviewing the patch.

PR port-sparc64/59789 bswap is slow
PR kern/59774 bearssl 32-bit AES is too slow

(nia)

2025-11-26 21:21:09 UTC MAIN commitmail json YAML

piixpm(4) has iic(4) behavior and will respond to drivers trying to
see if indirect match and attach works.

However, it had an aggressive panic in its piixpm_i2c_exec() function
if there existed a command but not any data.  Turn this into a
return(EINVAL) sort of thing.  Without this, just modloading aht20temp
will panic a NetBSD/amd64 Virtualbox VM.

It is very common for I2C devices, especially sensor devices, to do a
READ (with or without STOP) with just a command sent, wait a while and
then do a WRITE or more READ without a command and with a data buffer.
Often the device has to have this pause in order to perform some
action.

I don't have the datasheet on the piixpm(4) chip available to me, and
it is possible that it can handle a command without data.  The
interrupt function implies as much, but for now, just EINVAL the
situation.

It would have also been trivial to panic the system from userland by
opening the iic device and performing ioctl calls and it would be best
to not allow that.

(brad)