sync with OpenBSD -current

This commit is contained in:
purplerain 2024-07-04 01:05:14 +00:00
parent 0c5463838b
commit ff77f1c0ed
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
8 changed files with 50 additions and 42 deletions

View file

@ -1,4 +1,4 @@
/* $OpenBSD: machdep.c,v 1.89 2024/04/29 13:01:54 jsg Exp $ */ /* $OpenBSD: machdep.c,v 1.90 2024/07/03 21:04:04 kettenis Exp $ */
/* /*
* Copyright (c) 2014 Patrick Wildt <patrick@blueri.se> * Copyright (c) 2014 Patrick Wildt <patrick@blueri.se>
* Copyright (c) 2021 Mark Kettenis <kettenis@openbsd.org> * Copyright (c) 2021 Mark Kettenis <kettenis@openbsd.org>
@ -1170,6 +1170,10 @@ pmap_bootstrap_bs_map(bus_space_tag_t t, bus_addr_t bpa, bus_size_t size,
{ {
u_long startpa, pa, endpa; u_long startpa, pa, endpa;
vaddr_t va; vaddr_t va;
int cache = PMAP_CACHE_DEV_NGNRNE;
if (flags & BUS_SPACE_MAP_PREFETCHABLE)
cache = PMAP_CACHE_CI;
va = virtual_avail; /* steal memory from virtual avail. */ va = virtual_avail; /* steal memory from virtual avail. */
@ -1179,8 +1183,7 @@ pmap_bootstrap_bs_map(bus_space_tag_t t, bus_addr_t bpa, bus_size_t size,
*bshp = (bus_space_handle_t)(va + (bpa - startpa)); *bshp = (bus_space_handle_t)(va + (bpa - startpa));
for (pa = startpa; pa < endpa; pa += PAGE_SIZE, va += PAGE_SIZE) for (pa = startpa; pa < endpa; pa += PAGE_SIZE, va += PAGE_SIZE)
pmap_kenter_cache(va, pa, PROT_READ | PROT_WRITE, pmap_kenter_cache(va, pa, PROT_READ | PROT_WRITE, cache);
PMAP_CACHE_DEV_NGNRNE);
virtual_avail = va; virtual_avail = va;

View file

@ -1,4 +1,4 @@
/* $OpenBSD: agintc.c,v 1.58 2024/06/23 21:58:34 patrick Exp $ */ /* $OpenBSD: agintc.c,v 1.59 2024/07/03 22:37:00 patrick Exp $ */
/* /*
* Copyright (c) 2007, 2009, 2011, 2017 Dale Rahn <drahn@dalerahn.com> * Copyright (c) 2007, 2009, 2011, 2017 Dale Rahn <drahn@dalerahn.com>
* Copyright (c) 2018 Mark Kettenis <kettenis@openbsd.org> * Copyright (c) 2018 Mark Kettenis <kettenis@openbsd.org>
@ -1705,6 +1705,13 @@ agintc_msi_attach(struct device *parent, struct device *self, void *aux)
size = (1ULL << sc->sc_devbits) * sc->sc_dte_sz; size = (1ULL << sc->sc_devbits) * sc->sc_dte_sz;
size = roundup(size, sc->sc_dtt_pgsz); size = roundup(size, sc->sc_dtt_pgsz);
/* FIXME: For now, skip registering MSI controller */
if (size / sc->sc_dtt_pgsz > GITS_BASER_SZ_MASK + 1) {
printf(": cannot support %u devbits on %lu pgsz\n",
sc->sc_devbits, sc->sc_dtt_pgsz);
return;
}
/* Clamp down to maximum configurable num pages */ /* Clamp down to maximum configurable num pages */
if (size / sc->sc_dtt_pgsz > GITS_BASER_SZ_MASK + 1) if (size / sc->sc_dtt_pgsz > GITS_BASER_SZ_MASK + 1)
size = (GITS_BASER_SZ_MASK + 1) * sc->sc_dtt_pgsz; size = (GITS_BASER_SZ_MASK + 1) * sc->sc_dtt_pgsz;

View file

@ -1,4 +1,4 @@
/* $OpenBSD: arm64_bus_space.c,v 1.8 2021/02/16 12:33:22 kettenis Exp $ */ /* $OpenBSD: arm64_bus_space.c,v 1.9 2024/07/03 21:04:04 kettenis Exp $ */
/* /*
* Copyright (c) 2001-2003 Opsycon AB (www.opsycon.se / www.opsycon.com) * Copyright (c) 2001-2003 Opsycon AB (www.opsycon.se / www.opsycon.com)
@ -195,6 +195,8 @@ generic_space_map(bus_space_tag_t t, bus_addr_t offs, bus_size_t size,
if (flags & BUS_SPACE_MAP_CACHEABLE) if (flags & BUS_SPACE_MAP_CACHEABLE)
cache = PMAP_CACHE_WB; cache = PMAP_CACHE_WB;
if (flags & BUS_SPACE_MAP_PREFETCHABLE)
cache = PMAP_CACHE_CI;
if (flags & BUS_SPACE_MAP_POSTED) if (flags & BUS_SPACE_MAP_POSTED)
cache = PMAP_CACHE_DEV_NGNRE; cache = PMAP_CACHE_DEV_NGNRE;

View file

@ -1,4 +1,4 @@
/* $OpenBSD: efiboot.c,v 1.53 2024/06/20 21:52:08 kettenis Exp $ */ /* $OpenBSD: efiboot.c,v 1.55 2024/07/03 22:29:37 kettenis Exp $ */
/* /*
* Copyright (c) 2015 YASUOKA Masahiko <yasuoka@yasuoka.net> * Copyright (c) 2015 YASUOKA Masahiko <yasuoka@yasuoka.net>
@ -1109,10 +1109,26 @@ mdrandom(char *buf, size_t buflen)
#define FW_PATH "/etc/firmware/dtb/" #define FW_PATH "/etc/firmware/dtb/"
struct smbios_dtb {
const char *vendor;
const char *prod;
const char *dtb;
} smbios_dtb[] = {
{ "ASUS", "ASUS Vivobook S 15 S5507",
"qcom/x1e80100-asus-vivobook-s15.dtb" },
{ "LENOVO", "21BX",
"qcom/sc8280xp-lenovo-thinkpad-x13s.dtb" },
{ "LENOVO", "21BY",
"qcom/sc8280xp-lenovo-thinkpad-x13s.dtb" },
};
void * void *
efi_fdt(void) efi_fdt(void)
{ {
extern char *hw_vendor, *hw_prod; extern char *hw_vendor, *hw_prod;
size_t vendorlen, prodlen;
char dtb[256];
int i;
/* 'mach dtb' has precedence */ /* 'mach dtb' has precedence */
if (fdt_override != NULL) if (fdt_override != NULL)
@ -1122,11 +1138,14 @@ efi_fdt(void)
if (hw_vendor == NULL || hw_prod == NULL) if (hw_vendor == NULL || hw_prod == NULL)
return fdt_sys; return fdt_sys;
if (strcmp(hw_vendor, "LENOVO") == 0) { for (i = 0; i < nitems(smbios_dtb); i++) {
if (strncmp(hw_prod, "21BX", 4) == 0 || vendorlen = strlen(smbios_dtb[i].vendor);
strncmp(hw_prod, "21BY", 4) == 0) { prodlen = strlen(smbios_dtb[i].prod);
fdt_load_override(FW_PATH if (strncmp(hw_vendor, smbios_dtb[i].vendor, vendorlen) == 0 &&
"qcom/sc8280xp-lenovo-thinkpad-x13s.dtb"); strncmp(hw_prod, smbios_dtb[i].prod, prodlen) == 0) {
snprintf(dtb, sizeof(dtb), "%s%s", FW_PATH,
smbios_dtb[i].dtb);
fdt_load_override(dtb);
/* TODO: find a better mechanism */ /* TODO: find a better mechanism */
cnset(ttydev("fb0")); cnset(ttydev("fb0"));
} }

View file

@ -1,4 +1,4 @@
/* $OpenBSD: kern_lock.c,v 1.74 2024/05/29 18:55:45 claudio Exp $ */ /* $OpenBSD: kern_lock.c,v 1.75 2024/07/03 01:36:50 jsg Exp $ */
/* /*
* Copyright (c) 2017 Visa Hankala * Copyright (c) 2017 Visa Hankala
@ -194,30 +194,6 @@ __mp_release_all(struct __mp_lock *mpl)
return (rv); return (rv);
} }
int
__mp_release_all_but_one(struct __mp_lock *mpl)
{
struct __mp_lock_cpu *cpu = &mpl->mpl_cpus[cpu_number()];
int rv = cpu->mplc_depth - 1;
#ifdef WITNESS
int i;
for (i = 0; i < rv; i++)
WITNESS_UNLOCK(&mpl->mpl_lock_obj, LOP_EXCLUSIVE);
#endif
#ifdef MP_LOCKDEBUG
if (!__mp_lock_held(mpl, curcpu())) {
db_printf("__mp_release_all_but_one(%p): not held lock\n", mpl);
db_enter();
}
#endif
cpu->mplc_depth = 1;
return (rv);
}
void void
__mp_acquire_count(struct __mp_lock *mpl, int count) __mp_acquire_count(struct __mp_lock *mpl, int count)
{ {

View file

@ -1,4 +1,4 @@
/* $OpenBSD: mplock.h,v 1.13 2019/04/23 13:35:12 visa Exp $ */ /* $OpenBSD: mplock.h,v 1.14 2024/07/03 01:36:50 jsg Exp $ */
/* /*
* Copyright (c) 2004 Niklas Hallqvist. All rights reserved. * Copyright (c) 2004 Niklas Hallqvist. All rights reserved.
@ -51,7 +51,6 @@ void ___mp_lock_init(struct __mp_lock *, const struct lock_type *);
void __mp_lock(struct __mp_lock *); void __mp_lock(struct __mp_lock *);
void __mp_unlock(struct __mp_lock *); void __mp_unlock(struct __mp_lock *);
int __mp_release_all(struct __mp_lock *); int __mp_release_all(struct __mp_lock *);
int __mp_release_all_but_one(struct __mp_lock *);
void __mp_acquire_count(struct __mp_lock *, int); void __mp_acquire_count(struct __mp_lock *, int);
int __mp_lock_held(struct __mp_lock *, struct cpu_info *); int __mp_lock_held(struct __mp_lock *, struct cpu_info *);

View file

@ -1,4 +1,4 @@
/* $OpenBSD: util.c,v 1.86 2024/05/29 10:34:07 claudio Exp $ */ /* $OpenBSD: util.c,v 1.87 2024/07/03 08:39:43 job Exp $ */
/* /*
* Copyright (c) 2006 Claudio Jeker <claudio@openbsd.org> * Copyright (c) 2006 Claudio Jeker <claudio@openbsd.org>
@ -263,7 +263,7 @@ log_aspath_error(int error)
switch (error) { switch (error) {
case AS_ERR_LEN: case AS_ERR_LEN:
return "inconsitent lenght"; return "inconsistent length";
case AS_ERR_TYPE: case AS_ERR_TYPE:
return "unknown segment type"; return "unknown segment type";
case AS_ERR_BAD: case AS_ERR_BAD:

View file

@ -1,4 +1,4 @@
.\" $OpenBSD: radiusd.conf.5,v 1.23 2024/07/02 06:01:22 jmc Exp $ .\" $OpenBSD: radiusd.conf.5,v 1.24 2024/07/03 06:09:13 yasuoka Exp $
.\" .\"
.\" Copyright (c) 2014 Esdenera Networks GmbH .\" Copyright (c) 2014 Esdenera Networks GmbH
.\" Copyright (c) 2014, 2023 Internet Initiative Japan Inc. .\" Copyright (c) 2014, 2023 Internet Initiative Japan Inc.
@ -15,7 +15,7 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" .\"
.Dd $Mdocdate: July 2 2024 $ .Dd $Mdocdate: July 3 2024 $
.Dt RADIUSD.CONF 5 .Dt RADIUSD.CONF 5
.Os .Os
.Sh NAME .Sh NAME
@ -189,6 +189,8 @@ module radius {
set server "127.0.0.1" set server "127.0.0.1"
} }
module standard
module strip-realm "/usr/libexec/radiusd/radiusd_standard" { module strip-realm "/usr/libexec/radiusd/radiusd_standard" {
set strip-atmark-realm true set strip-atmark-realm true
} }