CVS commit: src/tests/lib/libc/locale

2023-10-14 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Oct 14 20:19:31 UTC 2023

Modified Files:
src/tests/lib/libc/locale: t_strfmon.c

Log Message:
PR/57633: Jose Luis Duran: Add strfmon tests from FreeBSD


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/tests/lib/libc/locale/t_strfmon.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/lib/libc/locale/t_strfmon.c
diff -u src/tests/lib/libc/locale/t_strfmon.c:1.4 src/tests/lib/libc/locale/t_strfmon.c:1.5
--- src/tests/lib/libc/locale/t_strfmon.c:1.4	Thu Sep 28 09:31:11 2023
+++ src/tests/lib/libc/locale/t_strfmon.c	Sat Oct 14 16:19:31 2023
@@ -1,7 +1,8 @@
-/* $NetBSD: t_strfmon.c,v 1.4 2023/09/28 13:31:11 christos Exp $ */
+/* $NetBSD: t_strfmon.c,v 1.5 2023/10/14 20:19:31 christos Exp $ */
 
 /*-
  * Copyright (c) 2017 The NetBSD Foundation, Inc.
+ * Copyright (C) 2018 Conrad Meyer 
  * All rights reserved.
  *
  * This code is derived from software contributed to The NetBSD Foundation
@@ -30,9 +31,10 @@
  */
 
 #include 
-__RCSID("$NetBSD: t_strfmon.c,v 1.4 2023/09/28 13:31:11 christos Exp $");
+__RCSID("$NetBSD: t_strfmon.c,v 1.5 2023/10/14 20:19:31 christos Exp $");
 
 #include 
+#include 
 #include 
 #include 
 
@@ -83,11 +85,215 @@ ATF_TC_BODY(strfmon_pad, tc)
 ATF_REQUIRE_STREQ(string, "[ $123.45] [ $123.45]"); 
 }
 
+ATF_TC(strfmon_locale_thousands);
+
+ATF_TC_HEAD(strfmon_locale_thousands, tc)
+{
+	atf_tc_set_md_var(tc, "descr",
+	"Checks strfmon locale thousands separator");
+}
+
+ATF_TC_BODY(strfmon_locale_thousands, tc)
+{
+	char actual[40], expected[40];
+	struct lconv *lc;
+	const char *ts;
+	double n;
+
+	setlocale(LC_MONETARY, "sv_SE.UTF-8");
+
+	lc = localeconv();
+
+	ts = lc->mon_thousands_sep;
+	if (strlen(ts) == 0)
+		ts = lc->thousands_sep;
+
+	if (strlen(ts) < 2)
+		atf_tc_skip("multi-byte thousands-separator not found");
+
+	n = 1234.56;
+	strfmon(actual, sizeof(actual) - 1, "%i", n);
+
+	strcpy(expected, "1");
+	strlcat(expected, ts, sizeof(expected));
+	strlcat(expected, "234", sizeof(expected));
+
+	/* We're just testing the thousands separator, not all of strfmon. */
+	actual[strlen(expected)] = '\0';
+	ATF_CHECK_STREQ(expected, actual);
+}
+
+ATF_TC(strfmon_examples);
+ATF_TC_HEAD(strfmon_examples, tc) {
+	atf_tc_set_md_var(tc, "descr",
+	"Checks strfmon field formats");
+}
+
+ATF_TC_BODY(strfmon_examples, tc)
+{
+	const struct {
+		const char *format;
+		const char *expected;
+	} tests[] = {
+	{ "%n", "[$123.45] [-$123.45] [$3,456.78]" },
+	{ "%11n", "[$123.45] [   -$123.45] [  $3,456.78]" },
+	{ "%#5n", "[ $   123.45] [-$   123.45] [ $ 3,456.78]" },
+	{ "%=*#5n", "[ $***123.45] [-$***123.45] [ $*3,456.78]" },
+	{ "%=0#5n", "[ $000123.45] [-$000123.45] [ $03,456.78]" },
+	{ "%^#5n", "[ $  123.45] [-$  123.45] [ $ 3456.78]" },
+	{ "%^#5.0n", "[ $  123] [-$  123] [ $ 3457]" },
+	{ "%^#5.4n", "[ $  123.4500] [-$  123.4500] [ $ 3456.7810]" },
+	{ "%(#5n", "[ $   123.45 ] [($   123.45)] [ $ 3,456.78 ]" },
+	{ "%!(#5n", "[123.45 ] [(   123.45)] [  3,456.78 ]" },
+	{ "%-14#5.4n", "[ $   123.4500 ] [-$   123.4500 ] [ $ 3,456.7810 ]" },
+	{ "%14#5.4n", "[  $   123.4500] [ -$   123.4500] [  $ 3,456.7810]" },
+	};
+	size_t i;
+	char actual[100], format[50];
+
+	if (setlocale(LC_MONETARY, "en_US.UTF-8") == NULL)
+		atf_tc_skip("unable to setlocale()");
+
+	for (i = 0; i < __arraycount(tests); ++i) {
+		snprintf(format, sizeof(format), "[%s] [%s] [%s]",
+		tests[i].format, tests[i].format, tests[i].format);
+		strfmon(actual, sizeof(actual) - 1,
+		fmtcheck(format, "%n %n %n"),
+		123.45, -123.45, 3456.781);
+		ATF_CHECK_STREQ_MSG(tests[i].expected, actual,
+		"[%s]", tests[i].format);
+	}
+}
+
+ATF_TC(strfmon_cs_precedes_0);
+
+ATF_TC_HEAD(strfmon_cs_precedes_0, tc)
+{
+	atf_tc_set_md_var(tc, "descr",
+	"sep_by_space x sign_posn when cs_precedes = 0");
+}
+
+ATF_TC_BODY(strfmon_cs_precedes_0, tc)
+{
+	const struct {
+		const char *expected;
+	} tests[] = {
+	/* sep_by_space x sign_posn */
+	{ "[(123.00$)] [-123.00$] [123.00$-] [123.00-$] [123.00$-]" },
+	{ "[(123.00 $)] [-123.00 $] [123.00 $-] [123.00 -$] [123.00 $-]" },
+	{ "[(123.00$)] [- 123.00$] [123.00$ -] [123.00- $] [123.00$ -]" },
+	};
+	size_t i, j;
+	struct lconv *lc;
+	char actual[100], buf[100];
+
+	if (setlocale(LC_MONETARY, "en_US.UTF-8") == NULL)
+		atf_tc_skip("unable to setlocale()");
+
+	lc = localeconv();
+	lc->n_cs_precedes = 0;
+
+	for (i = 0; i < __arraycount(tests); ++i) {
+		actual[0] = '\0';
+		lc->n_sep_by_space = i;
+
+		for (j = 0; j < 5; ++j) {
+			lc->n_sign_posn = j;
+
+			strfmon(buf, sizeof(buf) - 1, "[%n] ", -123.0);
+			strlcat(actual, buf, sizeof(actual));
+		}
+
+		actual[strlen(actual) - 1] = '\0';
+		ATF_CHECK_STREQ_MSG(tests[i].expected, actual,
+		"sep_by_space = %zu", i);
+	}
+}
+

CVS commit: src/tests/lib/libc/locale

2023-10-14 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Oct 14 20:19:31 UTC 2023

Modified Files:
src/tests/lib/libc/locale: t_strfmon.c

Log Message:
PR/57633: Jose Luis Duran: Add strfmon tests from FreeBSD


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/tests/lib/libc/locale/t_strfmon.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/lib/libc/stdlib

2023-10-14 Thread Andrew Doran
Module Name:src
Committed By:   ad
Date:   Sat Oct 14 19:39:34 UTC 2023

Modified Files:
src/lib/libc/stdlib: jemalloc.c

Log Message:
A few more branch hints.


To generate a diff of this commit:
cvs rdiff -u -r1.62 -r1.63 src/lib/libc/stdlib/jemalloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libc/stdlib/jemalloc.c
diff -u src/lib/libc/stdlib/jemalloc.c:1.62 src/lib/libc/stdlib/jemalloc.c:1.63
--- src/lib/libc/stdlib/jemalloc.c:1.62	Sat Oct 14 19:38:51 2023
+++ src/lib/libc/stdlib/jemalloc.c	Sat Oct 14 19:39:33 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: jemalloc.c,v 1.62 2023/10/14 19:38:51 ad Exp $	*/
+/*	$NetBSD: jemalloc.c,v 1.63 2023/10/14 19:39:33 ad Exp $	*/
 
 /*-
  * Copyright (C) 2006,2007 Jason Evans .
@@ -111,7 +111,7 @@
 
 #include 
 /* __FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.147 2007/06/15 22:00:16 jasone Exp $"); */
-__RCSID("$NetBSD: jemalloc.c,v 1.62 2023/10/14 19:38:51 ad Exp $");
+__RCSID("$NetBSD: jemalloc.c,v 1.63 2023/10/14 19:39:33 ad Exp $");
 
 #include "namespace.h"
 #include 
@@ -3699,7 +3699,7 @@ calloc(size_t num, size_t size)
 	ret = icalloc(num_size);
 
 RETURN:
-	if (ret == NULL) {
+	if (__predict_false(ret == NULL)) {
 		if (OPT(xmalloc)) {
 			_malloc_message(getprogname(),
 			": (malloc) Error in calloc(): out of memory\n", "",
@@ -3734,7 +3734,7 @@ realloc(void *ptr, size_t size)
 
 		ret = iralloc(ptr, size);
 
-		if (ret == NULL) {
+		if (__predict_false(ret == NULL)) {
 			if (OPT(xmalloc)) {
 _malloc_message(getprogname(),
 ": (malloc) Error in realloc(): out of "
@@ -3749,7 +3749,7 @@ realloc(void *ptr, size_t size)
 		else
 			ret = imalloc(size);
 
-		if (ret == NULL) {
+		if (__predict_false(ret == NULL)) {
 			if (OPT(xmalloc)) {
 _malloc_message(getprogname(),
 ": (malloc) Error in realloc(): out of "
@@ -3770,7 +3770,7 @@ free(void *ptr)
 {
 
 	UTRACE(ptr, 0, 0);
-	if (ptr != NULL) {
+	if (__predict_true(ptr != NULL)) {
 		assert(malloc_initialized);
 
 		idalloc(ptr);



CVS commit: src/lib/libc/stdlib

2023-10-14 Thread Andrew Doran
Module Name:src
Committed By:   ad
Date:   Sat Oct 14 19:39:34 UTC 2023

Modified Files:
src/lib/libc/stdlib: jemalloc.c

Log Message:
A few more branch hints.


To generate a diff of this commit:
cvs rdiff -u -r1.62 -r1.63 src/lib/libc/stdlib/jemalloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/lib/libc/stdlib

2023-10-14 Thread Andrew Doran
Module Name:src
Committed By:   ad
Date:   Sat Oct 14 19:38:51 UTC 2023

Modified Files:
src/lib/libc/stdlib: jemalloc.c

Log Message:
Cherry pick a fix from FreeBSD:

commit 80bc871bdd4a8254ce19a65a54c8c918dd3ddd11
Author: Konstantin Belousov 
Date:   Sat Sep 12 18:16:46 2009 +

MFC r196861:
Handle zero size for posix_memalign. Return NULL or unique address
according to the 'V' option.


To generate a diff of this commit:
cvs rdiff -u -r1.61 -r1.62 src/lib/libc/stdlib/jemalloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libc/stdlib/jemalloc.c
diff -u src/lib/libc/stdlib/jemalloc.c:1.61 src/lib/libc/stdlib/jemalloc.c:1.62
--- src/lib/libc/stdlib/jemalloc.c:1.61	Sat Oct 14 19:37:24 2023
+++ src/lib/libc/stdlib/jemalloc.c	Sat Oct 14 19:38:51 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: jemalloc.c,v 1.61 2023/10/14 19:37:24 ad Exp $	*/
+/*	$NetBSD: jemalloc.c,v 1.62 2023/10/14 19:38:51 ad Exp $	*/
 
 /*-
  * Copyright (C) 2006,2007 Jason Evans .
@@ -111,7 +111,7 @@
 
 #include 
 /* __FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.147 2007/06/15 22:00:16 jasone Exp $"); */
-__RCSID("$NetBSD: jemalloc.c,v 1.61 2023/10/14 19:37:24 ad Exp $");
+__RCSID("$NetBSD: jemalloc.c,v 1.62 2023/10/14 19:38:51 ad Exp $");
 
 #include "namespace.h"
 #include 
@@ -3632,6 +3632,15 @@ posix_memalign(void **memptr, size_t ali
 			goto RETURN;
 		}
 
+		if (size == 0) {
+			if (NOT_OPT(sysv))
+size = 1;
+			else {
+result = NULL;
+ret = 0;
+goto RETURN;
+			}
+		}
 		result = ipalloc(alignment, size);
 	}
 



CVS commit: src/lib/libc/stdlib

2023-10-14 Thread Andrew Doran
Module Name:src
Committed By:   ad
Date:   Sat Oct 14 19:38:51 UTC 2023

Modified Files:
src/lib/libc/stdlib: jemalloc.c

Log Message:
Cherry pick a fix from FreeBSD:

commit 80bc871bdd4a8254ce19a65a54c8c918dd3ddd11
Author: Konstantin Belousov 
Date:   Sat Sep 12 18:16:46 2009 +

MFC r196861:
Handle zero size for posix_memalign. Return NULL or unique address
according to the 'V' option.


To generate a diff of this commit:
cvs rdiff -u -r1.61 -r1.62 src/lib/libc/stdlib/jemalloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/lib/libc/stdlib

2023-10-14 Thread Andrew Doran
Module Name:src
Committed By:   ad
Date:   Sat Oct 14 19:37:24 UTC 2023

Modified Files:
src/lib/libc/stdlib: jemalloc.c

Log Message:
Cherry pick a fix from FreeBSD:

commit 52d7a117c0fe8bd0226d964f4272131700035f12
Author: Jason Evans 
Date:   Thu Aug 14 17:03:29 2008 +

Re-order the terms of an expression in arena_run_reg_dalloc() to correctly
detect whether the integer division table is large enough to handle the
divisor.  Before this change, the last two table elements were never used,
thus causing the slow path to be used for those divisors.


To generate a diff of this commit:
cvs rdiff -u -r1.60 -r1.61 src/lib/libc/stdlib/jemalloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libc/stdlib/jemalloc.c
diff -u src/lib/libc/stdlib/jemalloc.c:1.60 src/lib/libc/stdlib/jemalloc.c:1.61
--- src/lib/libc/stdlib/jemalloc.c:1.60	Sat Oct 14 19:36:17 2023
+++ src/lib/libc/stdlib/jemalloc.c	Sat Oct 14 19:37:24 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: jemalloc.c,v 1.60 2023/10/14 19:36:17 ad Exp $	*/
+/*	$NetBSD: jemalloc.c,v 1.61 2023/10/14 19:37:24 ad Exp $	*/
 
 /*-
  * Copyright (C) 2006,2007 Jason Evans .
@@ -111,7 +111,7 @@
 
 #include 
 /* __FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.147 2007/06/15 22:00:16 jasone Exp $"); */
-__RCSID("$NetBSD: jemalloc.c,v 1.60 2023/10/14 19:36:17 ad Exp $");
+__RCSID("$NetBSD: jemalloc.c,v 1.61 2023/10/14 19:37:24 ad Exp $");
 
 #include "namespace.h"
 #include 
@@ -1685,8 +1685,8 @@ arena_run_reg_dalloc(arena_run_t *run, a
 			 */
 			regind = (unsigned)(diff / size);
 		}
-	} else if (size <= ((sizeof(size_invs) / sizeof(unsigned))
-	<< QUANTUM_2POW_MIN) + 2) {
+	} else if (size <= (((sizeof(size_invs) / sizeof(unsigned)) + 2)
+	<< QUANTUM_2POW_MIN)) {
 		regind = size_invs[(size >> QUANTUM_2POW_MIN) - 3] * diff;
 		regind >>= SIZE_INV_SHIFT;
 	} else {



CVS commit: src/lib/libc/stdlib

2023-10-14 Thread Andrew Doran
Module Name:src
Committed By:   ad
Date:   Sat Oct 14 19:37:24 UTC 2023

Modified Files:
src/lib/libc/stdlib: jemalloc.c

Log Message:
Cherry pick a fix from FreeBSD:

commit 52d7a117c0fe8bd0226d964f4272131700035f12
Author: Jason Evans 
Date:   Thu Aug 14 17:03:29 2008 +

Re-order the terms of an expression in arena_run_reg_dalloc() to correctly
detect whether the integer division table is large enough to handle the
divisor.  Before this change, the last two table elements were never used,
thus causing the slow path to be used for those divisors.


To generate a diff of this commit:
cvs rdiff -u -r1.60 -r1.61 src/lib/libc/stdlib/jemalloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/lib/libc/stdlib

2023-10-14 Thread Andrew Doran
Module Name:src
Committed By:   ad
Date:   Sat Oct 14 19:36:17 UTC 2023

Modified Files:
src/lib/libc/stdlib: jemalloc.c

Log Message:
Fix a bug in the rbtree conversion.


To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.60 src/lib/libc/stdlib/jemalloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libc/stdlib/jemalloc.c
diff -u src/lib/libc/stdlib/jemalloc.c:1.59 src/lib/libc/stdlib/jemalloc.c:1.60
--- src/lib/libc/stdlib/jemalloc.c:1.59	Sat Oct 14 06:29:10 2023
+++ src/lib/libc/stdlib/jemalloc.c	Sat Oct 14 19:36:17 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: jemalloc.c,v 1.59 2023/10/14 06:29:10 mrg Exp $	*/
+/*	$NetBSD: jemalloc.c,v 1.60 2023/10/14 19:36:17 ad Exp $	*/
 
 /*-
  * Copyright (C) 2006,2007 Jason Evans .
@@ -111,7 +111,7 @@
 
 #include 
 /* __FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.147 2007/06/15 22:00:16 jasone Exp $"); */
-__RCSID("$NetBSD: jemalloc.c,v 1.59 2023/10/14 06:29:10 mrg Exp $");
+__RCSID("$NetBSD: jemalloc.c,v 1.60 2023/10/14 19:36:17 ad Exp $");
 
 #include "namespace.h"
 #include 
@@ -174,10 +174,10 @@ static inline int
 ptrcmp(const void *pa, const void *pb)
 {
 #ifdef _LP64
-	const intptr_t a = (intptr_t)pa, b = (intptr_t)pb;
-	const intptr_t diff = a - b;
+	const uintptr_t a = (uintptr_t)pa, b = (uintptr_t)pb;
+	const uintptr_t diff = a - b;
 	assert(((a | b) & 1) == 0);
-	return (int)(diff >> 32) | ((int)diff >> 1);
+	return (int)(diff >> 32) | ((unsigned)diff >> 1);
 #else
 	return (intptr_t)pa - (intptr_t)pb;
 #endif



CVS commit: src/lib/libc/stdlib

2023-10-14 Thread Andrew Doran
Module Name:src
Committed By:   ad
Date:   Sat Oct 14 19:36:17 UTC 2023

Modified Files:
src/lib/libc/stdlib: jemalloc.c

Log Message:
Fix a bug in the rbtree conversion.


To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.60 src/lib/libc/stdlib/jemalloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/hp300/hp300

2023-10-14 Thread Izumi Tsutsui
Module Name:src
Committed By:   tsutsui
Date:   Sat Oct 14 15:31:36 UTC 2023

Modified Files:
src/sys/arch/hp300/hp300: locore.s

Log Message:
Remove ancient and obsolete #if blocks.


To generate a diff of this commit:
cvs rdiff -u -r1.173 -r1.174 src/sys/arch/hp300/hp300/locore.s

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/hp300/hp300/locore.s
diff -u src/sys/arch/hp300/hp300/locore.s:1.173 src/sys/arch/hp300/hp300/locore.s:1.174
--- src/sys/arch/hp300/hp300/locore.s:1.173	Mon May 30 09:56:03 2022
+++ src/sys/arch/hp300/hp300/locore.s	Sat Oct 14 15:31:36 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: locore.s,v 1.173 2022/05/30 09:56:03 andvar Exp $	*/
+/*	$NetBSD: locore.s,v 1.174 2023/10/14 15:31:36 tsutsui Exp $	*/
 
 /*
  * Copyright (c) 1980, 1990, 1993
@@ -133,16 +133,10 @@ ASLOCAL(tmpstk)
 /*
  * Macro to relocate a symbol, used before MMU is enabled.
  */
-#ifdef __STDC__
 #define	IMMEDIATE		#
 #define	_RELOC(var, ar)			\
 	movel	IMMEDIATE var,ar;	\
 	addl	%a5,ar
-#else
-#define	_RELOC(var, ar)			\
-	movel	#var,ar;		\
-	addl	%a5,ar
-#endif /* __STDC__ */
 
 #define	RELOC(var, ar)		_RELOC(_C_LABEL(var), ar)
 #define	ASRELOC(var, ar)	_RELOC(_ASM_LABEL(var), ar)
@@ -176,11 +170,7 @@ ASENTRY_NOPROFILE(start)
 	ASRELOC(tmpstk, %a0)
 	movl	%a0,%sp			| give ourselves a temporary stack
 	RELOC(esym, %a0)
-#if 1
 	movl	%a4,%a0@		| store end of symbol table
-#else
-	clrl	%a0@			| no symbol table, yet
-#endif
 	RELOC(lowram, %a0)
 	movl	%a5,%a0@		| store start of physical memory
 	movl	#CACHE_OFF,%d0
@@ -388,13 +378,8 @@ Lstart1:
 	 *	vectab+12	address error
 	 */
 	RELOC(cputype, %a0)
-#if 0
-	/* XXX assembler/linker feature/bug */
-	RELOC(vectab, %a2)
-#else
 	movl	#_C_LABEL(vectab),%a2
 	addl	%a5,%a2
-#endif
 #if defined(M68040)
 	cmpl	#CPU_68040,%a0@		| 68040?
 	jne	1f			| no, skip



CVS commit: src/sys/arch/hp300/hp300

2023-10-14 Thread Izumi Tsutsui
Module Name:src
Committed By:   tsutsui
Date:   Sat Oct 14 15:31:36 UTC 2023

Modified Files:
src/sys/arch/hp300/hp300: locore.s

Log Message:
Remove ancient and obsolete #if blocks.


To generate a diff of this commit:
cvs rdiff -u -r1.173 -r1.174 src/sys/arch/hp300/hp300/locore.s

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



Re: CVS commit: src/sys

2023-10-14 Thread Taylor R Campbell
> Date: Fri, 13 Oct 2023 19:03:35 +
> From: Andrew Doran 
> 
> On Thu, Oct 12, 2023 at 11:55:46AM +0200, J. Hannken-Illjes wrote:
> > This is not true for RUMP.  Hero you added sleepq_remove() as
> > "sleepq_unsleep(l, true)".  This will unlock l_mutex without changing.
> > 
> > Just poking around and using sleepq_unsleep(l, false) here makes the
> > NFS tests using rump_server pass.
> 
> Ah, now I see, thank you.  I committed a fix and will do a test run once my
> build completes.

Thanks, testbed looks much better now!


CVS commit: src/sys

2023-10-14 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sat Oct 14 08:05:26 UTC 2023

Modified Files:
src/sys/arch/amiga/amiga: autoconf.c
src/sys/arch/amiga/dev: fd.c
src/sys/arch/amigappc/amigappc: autoconf.c
src/sys/dev/dm/doc: locking.txt

Log Message:
fix various typos in comments and documentation, mainly in word "between".


To generate a diff of this commit:
cvs rdiff -u -r1.121 -r1.122 src/sys/arch/amiga/amiga/autoconf.c
cvs rdiff -u -r1.103 -r1.104 src/sys/arch/amiga/dev/fd.c
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/amigappc/amigappc/autoconf.c
cvs rdiff -u -r1.4 -r1.5 src/sys/dev/dm/doc/locking.txt

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/amiga/amiga/autoconf.c
diff -u src/sys/arch/amiga/amiga/autoconf.c:1.121 src/sys/arch/amiga/amiga/autoconf.c:1.122
--- src/sys/arch/amiga/amiga/autoconf.c:1.121	Mon Mar 28 12:38:57 2022
+++ src/sys/arch/amiga/amiga/autoconf.c	Sat Oct 14 08:05:25 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: autoconf.c,v 1.121 2022/03/28 12:38:57 riastradh Exp $	*/
+/*	$NetBSD: autoconf.c,v 1.122 2023/10/14 08:05:25 andvar Exp $	*/
 
 /*
  * Copyright (c) 1994 Christian E. Hopps
@@ -31,7 +31,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.121 2022/03/28 12:38:57 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.122 2023/10/14 08:05:25 andvar Exp $");
 
 #include 
 #include 
@@ -159,7 +159,7 @@ matchname(const char *fp, const char *sp
 /*
  * use config_search_ia to find appropriate device, then call that device
  * directly with NULL device variable storage.  A device can then
- * always tell the difference betwean the real and console init
+ * always tell the difference between the real and console init
  * by checking for NULL.
  */
 int

Index: src/sys/arch/amiga/dev/fd.c
diff -u src/sys/arch/amiga/dev/fd.c:1.103 src/sys/arch/amiga/dev/fd.c:1.104
--- src/sys/arch/amiga/dev/fd.c:1.103	Fri Oct 13 22:20:46 2023
+++ src/sys/arch/amiga/dev/fd.c	Sat Oct 14 08:05:26 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: fd.c,v 1.103 2023/10/13 22:20:46 andvar Exp $ */
+/*	$NetBSD: fd.c,v 1.104 2023/10/14 08:05:26 andvar Exp $ */
 
 /*
  * Copyright (c) 1994 Christian E. Hopps
@@ -33,7 +33,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: fd.c,v 1.103 2023/10/13 22:20:46 andvar Exp $");
+__KERNEL_RCSID(0, "$NetBSD: fd.c,v 1.104 2023/10/14 08:05:26 andvar Exp $");
 
 #include 
 #include 
@@ -159,7 +159,7 @@ struct fd_softc {
 	int curcyl;		/* current curcyl head positioned on */
 	int flags;		/* misc flags */
 	int wlabel;
-	int stepdelay;		/* useq to delay after seek user setable */
+	int stepdelay;		/* useq to delay after seek user settable */
 	int nsectors;		/* number of sectors per track */
 	int openpart;		/* which partition [ab] == [12] is open */
 	short retries;		/* number of times to retry failed io */
@@ -2142,7 +2142,7 @@ msblkencode(u_short *rp, u_char *cp, int
 		td = (msencode[*cp >> 4] << 8) | msencode[*cp & 0x0f];
 
 		/* Check for zeros in top bit of encode and bottom
-		 * bit of previous encode.  if so, slap a one in betweem
+		 * bit of previous encode.  if so, slap a one in between
 		 * them.
 		 */
 		if ((td & 0x140) == 0)

Index: src/sys/arch/amigappc/amigappc/autoconf.c
diff -u src/sys/arch/amigappc/amigappc/autoconf.c:1.10 src/sys/arch/amigappc/amigappc/autoconf.c:1.11
--- src/sys/arch/amigappc/amigappc/autoconf.c:1.10	Mon Mar 28 12:38:57 2022
+++ src/sys/arch/amigappc/amigappc/autoconf.c	Sat Oct 14 08:05:25 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: autoconf.c,v 1.10 2022/03/28 12:38:57 riastradh Exp $	*/
+/*	$NetBSD: autoconf.c,v 1.11 2023/10/14 08:05:25 andvar Exp $	*/
 
 /*
  * Copyright (c) 1994 Christian E. Hopps
@@ -31,7 +31,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.10 2022/03/28 12:38:57 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.11 2023/10/14 08:05:25 andvar Exp $");
 
 #include 
 #include 
@@ -119,7 +119,7 @@ matchname(const char *fp, const char *sp
 /*
  * use config_search_ia to find appropriate device, then call that device
  * directly with NULL device variable storage.  A device can then
- * always tell the difference betwean the real and console init
+ * always tell the difference between the real and console init
  * by checking for NULL.
  */
 int

Index: src/sys/dev/dm/doc/locking.txt
diff -u src/sys/dev/dm/doc/locking.txt:1.4 src/sys/dev/dm/doc/locking.txt:1.5
--- src/sys/dev/dm/doc/locking.txt:1.4	Sat Aug 21 22:23:33 2021
+++ src/sys/dev/dm/doc/locking.txt	Sat Oct 14 08:05:25 2023
@@ -214,7 +214,7 @@ dm_table_unbusy(dm_table_head_t *head)
 mutex_exit(>table_mtx);
 }
 
-Device-mapper betwwen ioctl device synchronisation 
+Device-mapper between ioctl device synchronisation 
 
 
 Every ioctl user have to find dm_device with name, uuid, minor number. 



CVS commit: src/sys

2023-10-14 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sat Oct 14 08:05:26 UTC 2023

Modified Files:
src/sys/arch/amiga/amiga: autoconf.c
src/sys/arch/amiga/dev: fd.c
src/sys/arch/amigappc/amigappc: autoconf.c
src/sys/dev/dm/doc: locking.txt

Log Message:
fix various typos in comments and documentation, mainly in word "between".


To generate a diff of this commit:
cvs rdiff -u -r1.121 -r1.122 src/sys/arch/amiga/amiga/autoconf.c
cvs rdiff -u -r1.103 -r1.104 src/sys/arch/amiga/dev/fd.c
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/amigappc/amigappc/autoconf.c
cvs rdiff -u -r1.4 -r1.5 src/sys/dev/dm/doc/locking.txt

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-10] src/doc

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 07:07:10 UTC 2023

Modified Files:
src/doc [netbsd-10]: CHANGES-10.0

Log Message:
Tickets #408 - #416


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.138 -r1.1.2.139 src/doc/CHANGES-10.0

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/doc/CHANGES-10.0
diff -u src/doc/CHANGES-10.0:1.1.2.138 src/doc/CHANGES-10.0:1.1.2.139
--- src/doc/CHANGES-10.0:1.1.2.138	Fri Oct 13 18:57:25 2023
+++ src/doc/CHANGES-10.0	Sat Oct 14 07:07:10 2023
@@ -1,4 +1,4 @@
-# $NetBSD: CHANGES-10.0,v 1.1.2.138 2023/10/13 18:57:25 martin Exp $
+# $NetBSD: CHANGES-10.0,v 1.1.2.139 2023/10/14 07:07:10 martin Exp $
 
 A complete list of changes from the initial NetBSD 10.0 branch on 2022-12-16
 until the 10.0 release:
@@ -12425,3 +12425,87 @@ sys/dev/pci/ixgbe/ixv.c1.187-1.189
 - Cleanup the code.
 	[msaitoh, ticket #407]
 
+share/man/man4/agr.41.10-1.12
+
+	agr(4): mark the driver as obsolete.
+	[yamaguchi, ticket #408]
+
+sys/arch/evbarm/conf/GENERIC64			1.214
+sys/dev/pci/if_ixl.c1.90-1.93
+
+	ixl(4):
+	- move link status updates to workqueue.
+	- print device info on attach
+	- add to aarch64 GENERIC kernel
+	[yamaguchi, ticket #409]
+
+sys/dev/pci/igc/if_igc.c			1.4-1.6
+
+	igc(4):
+	- fix half duplex setting.
+	- fix clang build
+	- enable interrupt after everything is set up
+	[rin, ticket #410]
+
+sys/arch/arm/arm32/pmap.c			1.440
+sys/arch/arm/include/arm32/pmap.h		1.177
+sys/arch/evbarm/adi_brh/brh_machdep.c		1.53
+sys/arch/evbarm/g42xxeb/g42xxeb_machdep.c	1.41
+sys/arch/evbarm/gumstix/gumstix_machdep.c	1.75
+sys/arch/evbarm/hdl_g/hdlg_machdep.c		1.35
+sys/arch/evbarm/iq80310/iq80310_machdep.c	1.96
+sys/arch/evbarm/iq80321/iq80321_machdep.c	1.66
+sys/arch/evbarm/ixdp425/ixdp425_machdep.c	1.47
+sys/arch/evbarm/iyonix/iyonix_machdep.c		1.5
+sys/arch/evbarm/lubbock/lubbock_machdep.c	1.45
+sys/arch/evbarm/npwr_fc/npwr_fc_machdep.c	1.30
+sys/arch/evbarm/nslu2/nslu2_machdep.c		1.41
+sys/arch/evbarm/viper/viper_machdep.c		1.34
+sys/arch/hpcarm/hpcarm/pxa2x0_hpc_machdep.c	1.33
+sys/arch/iyonix/iyonix/iyonix_machdep.c		1.34
+sys/arch/zaurus/zaurus/machdep.c		1.52
+
+	Fix non-DIAGNOSTIC builds.
+	[skrll, ticket #411]
+
+crypto/external/bsd/heimdal/Makefile.inc	1.9-1.11
+crypto/external/bsd/heimdal/include/config.h	1.12
+crypto/external/bsd/heimdal/lib/libhdb/Makefile	1.6
+crypto/external/bsd/heimdal/lib/libkrb5/Makefile 1.16
+crypto/external/bsd/heimdal/libexec/digest-service/Makefile 1.6
+crypto/external/bsd/heimdal/libexec/hpropd/Makefile 1.6
+crypto/external/bsd/heimdal/libexec/ipropd-master/Makefile 1.6
+crypto/external/bsd/heimdal/libexec/ipropd-slave/Makefile 1.6
+crypto/external/bsd/heimdal/libexec/kadmind/Makefile 1.8
+crypto/external/bsd/heimdal/libexec/kpasswdd/Makefile 1.6
+crypto/external/bsd/heimdal/sbin/hprop/Makefile	1.6
+crypto/external/bsd/heimdal/sbin/iprop-log/Makefile 1.6
+crypto/external/bsd/heimdal/sbin/kadmin/Makefile 1.7
+crypto/external/bsd/heimdal/sbin/kdc/Makefile	1.6
+crypto/external/bsd/heimdal/sbin/kstash/Makefile 1.6
+share/mk/bsd.prog.mk1.346,1.347
+
+	heimdal: Disable sqlite3 credential cache (SCC).
+	[riastradh, ticket #412]
+
+sys/dev/usb/if_ure.c1.59
+
+	ure(4): fix multicast filter hash for promisc mode.
+	[riastradh, ticket #413]
+
+sys/dev/pci/if_rge.c1.27
+
+	rge(4): correctly halt periodic timer on interface down.
+	[riastradh, ticket #414]
+
+sys/dev/usb/usbnet.c1.115-1.118
+
+	usbnet(9): PR 57645: fix management of interface flags changes.
+	[riastradh, ticket #415]
+
+sys/dev/usb/if_urndis.c1.49
+
+	urndis(4): PR 55273: handle devices which do not provide a
+	CDC union descriptor.
+	[abs, ticket #416]
+



CVS commit: [netbsd-10] src/doc

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 07:07:10 UTC 2023

Modified Files:
src/doc [netbsd-10]: CHANGES-10.0

Log Message:
Tickets #408 - #416


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.138 -r1.1.2.139 src/doc/CHANGES-10.0

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-10] src/sys/dev/usb

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 07:05:39 UTC 2023

Modified Files:
src/sys/dev/usb [netbsd-10]: if_urndis.c

Log Message:
Pull up following revision(s) (requested by abs in ticket #416):

sys/dev/usb/if_urndis.c: revision 1.49

Apply the new diff from
kern/55273 urndis(4) error "could not find data bulk in/out" without
CDC union descriptor

Fallback to the interface association descriptor if  no CDC Union
Descriptor is found.


To generate a diff of this commit:
cvs rdiff -u -r1.47.4.1 -r1.47.4.2 src/sys/dev/usb/if_urndis.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/usb/if_urndis.c
diff -u src/sys/dev/usb/if_urndis.c:1.47.4.1 src/sys/dev/usb/if_urndis.c:1.47.4.2
--- src/sys/dev/usb/if_urndis.c:1.47.4.1	Fri Feb 17 17:36:26 2023
+++ src/sys/dev/usb/if_urndis.c	Sat Oct 14 07:05:39 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_urndis.c,v 1.47.4.1 2023/02/17 17:36:26 martin Exp $ */
+/*	$NetBSD: if_urndis.c,v 1.47.4.2 2023/10/14 07:05:39 martin Exp $ */
 /*	$OpenBSD: if_urndis.c,v 1.31 2011/07/03 15:47:17 matthew Exp $ */
 
 /*
@@ -21,7 +21,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_urndis.c,v 1.47.4.1 2023/02/17 17:36:26 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_urndis.c,v 1.47.4.2 2023/10/14 07:05:39 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -901,8 +901,9 @@ urndis_attach(device_t parent, device_t 
 	struct usbd_interface		*iface_ctl;
 	const usb_cdc_union_descriptor_t *ud;
 	const usb_cdc_header_descriptor_t *desc;
+	const usb_interface_assoc_descriptor_t *ad;
 	usbd_desc_iter_t		 iter;
-	int if_ctl, if_data;
+	int if_ctl, if_data, if_data_ia;
 	int i, j, altcnt;
 	void*buf;
 	size_t bufsz;
@@ -934,10 +935,23 @@ urndis_attach(device_t parent, device_t 
 	if_ctl = id->bInterfaceNumber;
 	sc->sc_ifaceno_ctl = if_ctl;
 	if_data = -1;
+	if_data_ia = -1;
 
+	/*
+	 * Use a matching Interface Association Descriptor
+	 * as a fallback if no CDC Union Descriptor is found.
+	 */
 	usb_desc_iter_init(un->un_udev, );
 	while ((desc = (const void *)usb_desc_iter_next()) != NULL) {
-
+		if (desc->bDescriptorType == UDESC_INTERFACE_ASSOC) {
+			if (desc->bLength < sizeof(*ad))
+continue;
+			ad = (const usb_interface_assoc_descriptor_t *)desc;
+			if (ad->bFirstInterface == if_ctl &&
+			ad->bInterfaceCount > 1)
+if_data_ia = if_ctl + 1;
+			continue;
+		}
 		if (desc->bDescriptorType != UDESC_CS_INTERFACE) {
 			continue;
 		}
@@ -950,6 +964,8 @@ urndis_attach(device_t parent, device_t 
 			break;
 		}
 	}
+	if (if_data == -1 && if_data_ia != -1)
+		if_data = if_data_ia;
 
 	if (if_data == -1) {
 		DPRINTF(("urndis_attach: no union interface\n"));



CVS commit: [netbsd-10] src/sys/dev/usb

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 07:05:39 UTC 2023

Modified Files:
src/sys/dev/usb [netbsd-10]: if_urndis.c

Log Message:
Pull up following revision(s) (requested by abs in ticket #416):

sys/dev/usb/if_urndis.c: revision 1.49

Apply the new diff from
kern/55273 urndis(4) error "could not find data bulk in/out" without
CDC union descriptor

Fallback to the interface association descriptor if  no CDC Union
Descriptor is found.


To generate a diff of this commit:
cvs rdiff -u -r1.47.4.1 -r1.47.4.2 src/sys/dev/usb/if_urndis.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-10] src/sys/dev/usb

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 07:03:10 UTC 2023

Modified Files:
src/sys/dev/usb [netbsd-10]: usbnet.c

Log Message:
Pull up following revision(s) (requested by riastradh in ticket #415):

sys/dev/usb/usbnet.c: revision 1.115
sys/dev/usb/usbnet.c: revision 1.116
sys/dev/usb/usbnet.c: revision 1.117
sys/dev/usb/usbnet.c: revision 1.118

usbnet(9): Make sure unp->unp_if_flags is initialized on init.
usbnet_ifflags_cb is only called if the flags change while up and
running.  (XXX Maybe it should be called in other circumstances too
so there's only one path here?)
Out of paranoia, clear the cache on stop.
PR kern/57645

usbnet(9): Fix sense of conditional in usbnet_ifflags_cb.
This appears to have been mistranscribed in revision 1.1 of usbnet.c.
PR kern/57645

usbnet(9): On if_init, stop/init if IFF_RUNNING -- not noop.
ether_ioctl(9) relies on this to reinitialize an interface when a
flags change returns ENETRESET.  We can't just reprogram the hardware
multicast filter because some drivers have logic in if_init that's
conditional on IFF_PROMISC; perhaps we can reduce the cost of this if
we can change those drivers to do it in uno_mcast but that requires
some analysis to determine.
PR kern/57645

usbnet(9): Fix typo in comment.
No functional change intended.
PR kern/57645


To generate a diff of this commit:
cvs rdiff -u -r1.113 -r1.113.4.1 src/sys/dev/usb/usbnet.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/usb/usbnet.c
diff -u src/sys/dev/usb/usbnet.c:1.113 src/sys/dev/usb/usbnet.c:1.113.4.1
--- src/sys/dev/usb/usbnet.c:1.113	Thu Sep 22 07:02:21 2022
+++ src/sys/dev/usb/usbnet.c	Sat Oct 14 07:03:10 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: usbnet.c,v 1.113 2022/09/22 07:02:21 riastradh Exp $	*/
+/*	$NetBSD: usbnet.c,v 1.113.4.1 2023/10/14 07:03:10 martin Exp $	*/
 
 /*
  * Copyright (c) 2019 Matthew R. Green
@@ -31,7 +31,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: usbnet.c,v 1.113 2022/09/22 07:02:21 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: usbnet.c,v 1.113.4.1 2023/10/14 07:03:10 martin Exp $");
 
 #include 
 #include 
@@ -867,6 +867,8 @@ usbnet_init_rx_tx(struct usbnet * const 
 	 */
 	if (un->un_ops->uno_mcast) {
 		mutex_enter(>unp_mcastlock);
+		KASSERTMSG(!unp->unp_mcastactive, "%s", ifp->if_xname);
+		unp->unp_if_flags = ifp->if_flags;
 		(*un->un_ops->uno_mcast)(ifp);
 		unp->unp_mcastactive = true;
 		mutex_exit(>unp_mcastlock);
@@ -1000,6 +1002,13 @@ usbnet_media_upd(struct ifnet *ifp)
 
 /* ioctl */
 
+/*
+ * usbnet_ifflags_cb(ec)
+ *
+ *	Called by if_ethersubr when interface flags change
+ *	(SIOCSIFFLAGS), or ethernet capabilities change
+ *	(SIOCSETHERCAP), on a running interface.
+ */
 static int
 usbnet_ifflags_cb(struct ethercom *ec)
 {
@@ -1007,34 +1016,43 @@ usbnet_ifflags_cb(struct ethercom *ec)
 	struct ifnet *ifp = >ec_if;
 	struct usbnet *un = ifp->if_softc;
 	struct usbnet_private * const unp = un->un_pri;
-	int rv = 0;
 
 	KASSERTMSG(IFNET_LOCKED(ifp), "%s", ifp->if_xname);
 
 	const u_short changed = ifp->if_flags ^ unp->unp_if_flags;
-	if ((changed & ~(IFF_CANTCHANGE | IFF_DEBUG)) == 0) {
-		mutex_enter(>unp_mcastlock);
-		unp->unp_if_flags = ifp->if_flags;
-		mutex_exit(>unp_mcastlock);
-		/*
-		 * XXX Can we just do uno_mcast synchronously here
-		 * instead of resetting the whole interface?
-		 *
-		 * Not yet, because some usbnet drivers (e.g., aue(4))
-		 * initialize the hardware differently in uno_init
-		 * depending on IFF_PROMISC.  But some (again, aue(4))
-		 * _also_ need to know whether IFF_PROMISC is set in
-		 * uno_mcast and do something different with it there.
-		 * Maybe the logic can be unified, but it will require
-		 * an audit and testing of all the usbnet drivers.
-		 */
-		if (changed & IFF_PROMISC)
-			rv = ENETRESET;
-	} else {
-		rv = ENETRESET;
-	}
 
-	return rv;
+	/*
+	 * If any user-settable flags have changed other than
+	 * IFF_DEBUG, just reset the interface.
+	 */
+	if ((changed & ~(IFF_CANTCHANGE | IFF_DEBUG)) != 0)
+		return ENETRESET;
+
+	/*
+	 * Otherwise, cache the flags change so we can read the flags
+	 * under unp_mcastlock for multicast updates in SIOCADDMULTI or
+	 * SIOCDELMULTI without IFNET_LOCK.
+	 */
+	mutex_enter(>unp_mcastlock);
+	unp->unp_if_flags = ifp->if_flags;
+	mutex_exit(>unp_mcastlock);
+
+	/*
+	 * If we're switching on or off promiscuous mode, reprogram the
+	 * hardware multicast filter now.
+	 *
+	 * XXX Actually, reset the interface, because some usbnet
+	 * drivers (e.g., aue(4)) initialize the hardware differently
+	 * in uno_init depending on IFF_PROMISC.  But some (again,
+	 * aue(4)) _also_ need to know whether IFF_PROMISC is set in
+	 * uno_mcast and do something different with it there.  Maybe
+	 * the logic can be unified, but it will require an audit and
+	 * testing of all the usbnet drivers.
+	 */
+	if (changed & 

CVS commit: [netbsd-10] src/sys/dev/usb

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 07:03:10 UTC 2023

Modified Files:
src/sys/dev/usb [netbsd-10]: usbnet.c

Log Message:
Pull up following revision(s) (requested by riastradh in ticket #415):

sys/dev/usb/usbnet.c: revision 1.115
sys/dev/usb/usbnet.c: revision 1.116
sys/dev/usb/usbnet.c: revision 1.117
sys/dev/usb/usbnet.c: revision 1.118

usbnet(9): Make sure unp->unp_if_flags is initialized on init.
usbnet_ifflags_cb is only called if the flags change while up and
running.  (XXX Maybe it should be called in other circumstances too
so there's only one path here?)
Out of paranoia, clear the cache on stop.
PR kern/57645

usbnet(9): Fix sense of conditional in usbnet_ifflags_cb.
This appears to have been mistranscribed in revision 1.1 of usbnet.c.
PR kern/57645

usbnet(9): On if_init, stop/init if IFF_RUNNING -- not noop.
ether_ioctl(9) relies on this to reinitialize an interface when a
flags change returns ENETRESET.  We can't just reprogram the hardware
multicast filter because some drivers have logic in if_init that's
conditional on IFF_PROMISC; perhaps we can reduce the cost of this if
we can change those drivers to do it in uno_mcast but that requires
some analysis to determine.
PR kern/57645

usbnet(9): Fix typo in comment.
No functional change intended.
PR kern/57645


To generate a diff of this commit:
cvs rdiff -u -r1.113 -r1.113.4.1 src/sys/dev/usb/usbnet.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-10] src/sys/dev/pci

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:59:43 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-10]: if_rge.c

Log Message:
Pull up following revision(s) (requested by riastradh in ticket #414):

sys/dev/pci/if_rge.c: revision 1.27

rge(4): callout_stop can't be right here; just do callout_halt.


To generate a diff of this commit:
cvs rdiff -u -r1.24.4.1 -r1.24.4.2 src/sys/dev/pci/if_rge.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-10] src/sys/dev/pci

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:59:43 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-10]: if_rge.c

Log Message:
Pull up following revision(s) (requested by riastradh in ticket #414):

sys/dev/pci/if_rge.c: revision 1.27

rge(4): callout_stop can't be right here; just do callout_halt.


To generate a diff of this commit:
cvs rdiff -u -r1.24.4.1 -r1.24.4.2 src/sys/dev/pci/if_rge.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pci/if_rge.c
diff -u src/sys/dev/pci/if_rge.c:1.24.4.1 src/sys/dev/pci/if_rge.c:1.24.4.2
--- src/sys/dev/pci/if_rge.c:1.24.4.1	Wed Dec 21 09:36:42 2022
+++ src/sys/dev/pci/if_rge.c	Sat Oct 14 06:59:43 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_rge.c,v 1.24.4.1 2022/12/21 09:36:42 martin Exp $	*/
+/*	$NetBSD: if_rge.c,v 1.24.4.2 2023/10/14 06:59:43 martin Exp $	*/
 /*	$OpenBSD: if_rge.c,v 1.9 2020/12/12 11:48:53 jan Exp $	*/
 
 /*
@@ -18,7 +18,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_rge.c,v 1.24.4.1 2022/12/21 09:36:42 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_rge.c,v 1.24.4.2 2023/10/14 06:59:43 martin Exp $");
 
 #include 
 
@@ -838,10 +838,7 @@ rge_stop(struct ifnet *ifp, int disable)
 	struct rge_softc *sc = ifp->if_softc;
 	int i;
 
-	if (disable) {
-		callout_halt(>sc_timeout, NULL);
-	} else
-		callout_stop(>sc_timeout);
+	callout_halt(>sc_timeout, NULL);
 
 	ifp->if_timer = 0;
 	ifp->if_flags &= ~IFF_RUNNING;



CVS commit: [netbsd-10] src/sys/dev/usb

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:58:19 UTC 2023

Modified Files:
src/sys/dev/usb [netbsd-10]: if_ure.c

Log Message:
Pull up following revision(s) (requested by riastradh in ticket #413):

sys/dev/usb/if_ure.c: revision 1.59

ure(4): Set all bits, not no bits, in multicast filter for promisc.
This was lost in revision 1.40.
PR kern/57648


To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.58.4.1 src/sys/dev/usb/if_ure.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/usb/if_ure.c
diff -u src/sys/dev/usb/if_ure.c:1.58 src/sys/dev/usb/if_ure.c:1.58.4.1
--- src/sys/dev/usb/if_ure.c:1.58	Fri Sep 16 07:34:36 2022
+++ src/sys/dev/usb/if_ure.c	Sat Oct 14 06:58:19 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_ure.c,v 1.58 2022/09/16 07:34:36 msaitoh Exp $	*/
+/*	$NetBSD: if_ure.c,v 1.58.4.1 2023/10/14 06:58:19 martin Exp $	*/
 /*	$OpenBSD: if_ure.c,v 1.10 2018/11/02 21:32:30 jcs Exp $	*/
 
 /*-
@@ -30,7 +30,7 @@
 /* RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_ure.c,v 1.58 2022/09/16 07:34:36 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ure.c,v 1.58.4.1 2023/10/14 06:58:19 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -358,6 +358,7 @@ ure_uno_mcast(struct ifnet *ifp)
 		/* run promisc. mode */
 		rxmode |= URE_RCR_AM;	/* ??? */
 		rxmode |= URE_RCR_AAP;
+		mchash[0] = mchash[1] = 0x;
 		goto update;
 	}
 	ec->ec_flags &= ~ETHER_F_ALLMULTI;



CVS commit: [netbsd-10] src/sys/dev/usb

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:58:19 UTC 2023

Modified Files:
src/sys/dev/usb [netbsd-10]: if_ure.c

Log Message:
Pull up following revision(s) (requested by riastradh in ticket #413):

sys/dev/usb/if_ure.c: revision 1.59

ure(4): Set all bits, not no bits, in multicast filter for promisc.
This was lost in revision 1.40.
PR kern/57648


To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.58.4.1 src/sys/dev/usb/if_ure.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-10] src

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:56:36 UTC 2023

Modified Files:
src/crypto/external/bsd/heimdal [netbsd-10]: Makefile.inc
src/crypto/external/bsd/heimdal/include [netbsd-10]: config.h
src/crypto/external/bsd/heimdal/lib/libhdb [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/lib/libkrb5 [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/libexec/digest-service [netbsd-10]:
Makefile
src/crypto/external/bsd/heimdal/libexec/hpropd [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/libexec/ipropd-master [netbsd-10]:
Makefile
src/crypto/external/bsd/heimdal/libexec/ipropd-slave [netbsd-10]:
Makefile
src/crypto/external/bsd/heimdal/libexec/kadmind [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/libexec/kpasswdd [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/sbin/hprop [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/sbin/iprop-log [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/sbin/kadmin [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/sbin/kdc [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/sbin/kstash [netbsd-10]: Makefile
src/share/mk [netbsd-10]: bsd.prog.mk

Log Message:
Pull up following revision(s) (requested by riastradh in ticket #412):

share/mk/bsd.prog.mk: revision 1.346
crypto/external/bsd/heimdal/sbin/kstash/Makefile: revision 1.6
share/mk/bsd.prog.mk: revision 1.347
crypto/external/bsd/heimdal/sbin/hprop/Makefile: revision 1.6
crypto/external/bsd/heimdal/sbin/kdc/Makefile: revision 1.6
crypto/external/bsd/heimdal/sbin/iprop-log/Makefile: revision 1.6
crypto/external/bsd/heimdal/lib/libkrb5/Makefile: revision 1.16
crypto/external/bsd/heimdal/libexec/digest-service/Makefile: revision 
1.6
crypto/external/bsd/heimdal/Makefile.inc: revision 1.10
crypto/external/bsd/heimdal/Makefile.inc: revision 1.11
crypto/external/bsd/heimdal/Makefile.inc: revision 1.9
crypto/external/bsd/heimdal/libexec/kadmind/Makefile: revision 1.8
crypto/external/bsd/heimdal/lib/libhdb/Makefile: revision 1.6
crypto/external/bsd/heimdal/include/config.h: revision 1.12
crypto/external/bsd/heimdal/libexec/hpropd/Makefile: revision 1.6
crypto/external/bsd/heimdal/libexec/ipropd-slave/Makefile: revision 1.6
crypto/external/bsd/heimdal/libexec/ipropd-master/Makefile: revision 1.6
crypto/external/bsd/heimdal/libexec/kpasswdd/Makefile: revision 1.6
crypto/external/bsd/heimdal/sbin/kadmin/Makefile: revision 1.7

heimdal: Disable sqlite3 credential cache (SCC).
SCC is not usable in Heimdal 7.8.0, and this brings a dependency on
libsqlite3 into libkrb5 and therefore libgssapi, which is problematic
downstream applications that have sqlite3 from pkgsrc or statically
built in.
SCC will undergo substantial revision in the next Heimdal version
https://github.com/heimdal/heimdal/pull/1143.  We can revisit later
how to deal with this -- perhaps by symbol-renaming a copy of sqlite3
in Heimdal as it looks like upstream intends to do.
PR lib/57406

bsd.prog.mk: krb5 stuff no longer needs to link against sqlite3.
(Why is this here?  Seems like it should be a .mk fragment under
crypto/external/bsd/heimdal -- that way I would have found it for the
previous commit.)
PR lib/57406

heimdal: No need for -lm, was only added for -lsqlite3.
PR lib/57406

heimdal: Make sure whatever uses libhdb also gets libsqlite3 & libm.
Loose ends for static builds in the fix for PR lib/57406.


To generate a diff of this commit:
cvs rdiff -u -r1.6.6.1 -r1.6.6.2 src/crypto/external/bsd/heimdal/Makefile.inc
cvs rdiff -u -r1.10.8.1 -r1.10.8.2 \
src/crypto/external/bsd/heimdal/include/config.h
cvs rdiff -u -r1.4.22.1 -r1.4.22.2 \
src/crypto/external/bsd/heimdal/lib/libhdb/Makefile
cvs rdiff -u -r1.11.22.1 -r1.11.22.2 \
src/crypto/external/bsd/heimdal/lib/libkrb5/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/digest-service/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/hpropd/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/ipropd-master/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/ipropd-slave/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/kadmind/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/kpasswdd/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/sbin/hprop/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/sbin/iprop-log/Makefile
cvs rdiff -u -r1.3.22.1 -r1.3.22.2 \
src/crypto/external/bsd/heimdal/sbin/kadmin/Makefile
cvs rdiff -u -r1.2.56.1 

CVS commit: [netbsd-10] src

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:56:36 UTC 2023

Modified Files:
src/crypto/external/bsd/heimdal [netbsd-10]: Makefile.inc
src/crypto/external/bsd/heimdal/include [netbsd-10]: config.h
src/crypto/external/bsd/heimdal/lib/libhdb [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/lib/libkrb5 [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/libexec/digest-service [netbsd-10]:
Makefile
src/crypto/external/bsd/heimdal/libexec/hpropd [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/libexec/ipropd-master [netbsd-10]:
Makefile
src/crypto/external/bsd/heimdal/libexec/ipropd-slave [netbsd-10]:
Makefile
src/crypto/external/bsd/heimdal/libexec/kadmind [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/libexec/kpasswdd [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/sbin/hprop [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/sbin/iprop-log [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/sbin/kadmin [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/sbin/kdc [netbsd-10]: Makefile
src/crypto/external/bsd/heimdal/sbin/kstash [netbsd-10]: Makefile
src/share/mk [netbsd-10]: bsd.prog.mk

Log Message:
Pull up following revision(s) (requested by riastradh in ticket #412):

share/mk/bsd.prog.mk: revision 1.346
crypto/external/bsd/heimdal/sbin/kstash/Makefile: revision 1.6
share/mk/bsd.prog.mk: revision 1.347
crypto/external/bsd/heimdal/sbin/hprop/Makefile: revision 1.6
crypto/external/bsd/heimdal/sbin/kdc/Makefile: revision 1.6
crypto/external/bsd/heimdal/sbin/iprop-log/Makefile: revision 1.6
crypto/external/bsd/heimdal/lib/libkrb5/Makefile: revision 1.16
crypto/external/bsd/heimdal/libexec/digest-service/Makefile: revision 
1.6
crypto/external/bsd/heimdal/Makefile.inc: revision 1.10
crypto/external/bsd/heimdal/Makefile.inc: revision 1.11
crypto/external/bsd/heimdal/Makefile.inc: revision 1.9
crypto/external/bsd/heimdal/libexec/kadmind/Makefile: revision 1.8
crypto/external/bsd/heimdal/lib/libhdb/Makefile: revision 1.6
crypto/external/bsd/heimdal/include/config.h: revision 1.12
crypto/external/bsd/heimdal/libexec/hpropd/Makefile: revision 1.6
crypto/external/bsd/heimdal/libexec/ipropd-slave/Makefile: revision 1.6
crypto/external/bsd/heimdal/libexec/ipropd-master/Makefile: revision 1.6
crypto/external/bsd/heimdal/libexec/kpasswdd/Makefile: revision 1.6
crypto/external/bsd/heimdal/sbin/kadmin/Makefile: revision 1.7

heimdal: Disable sqlite3 credential cache (SCC).
SCC is not usable in Heimdal 7.8.0, and this brings a dependency on
libsqlite3 into libkrb5 and therefore libgssapi, which is problematic
downstream applications that have sqlite3 from pkgsrc or statically
built in.
SCC will undergo substantial revision in the next Heimdal version
https://github.com/heimdal/heimdal/pull/1143.  We can revisit later
how to deal with this -- perhaps by symbol-renaming a copy of sqlite3
in Heimdal as it looks like upstream intends to do.
PR lib/57406

bsd.prog.mk: krb5 stuff no longer needs to link against sqlite3.
(Why is this here?  Seems like it should be a .mk fragment under
crypto/external/bsd/heimdal -- that way I would have found it for the
previous commit.)
PR lib/57406

heimdal: No need for -lm, was only added for -lsqlite3.
PR lib/57406

heimdal: Make sure whatever uses libhdb also gets libsqlite3 & libm.
Loose ends for static builds in the fix for PR lib/57406.


To generate a diff of this commit:
cvs rdiff -u -r1.6.6.1 -r1.6.6.2 src/crypto/external/bsd/heimdal/Makefile.inc
cvs rdiff -u -r1.10.8.1 -r1.10.8.2 \
src/crypto/external/bsd/heimdal/include/config.h
cvs rdiff -u -r1.4.22.1 -r1.4.22.2 \
src/crypto/external/bsd/heimdal/lib/libhdb/Makefile
cvs rdiff -u -r1.11.22.1 -r1.11.22.2 \
src/crypto/external/bsd/heimdal/lib/libkrb5/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/digest-service/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/hpropd/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/ipropd-master/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/ipropd-slave/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/kadmind/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/libexec/kpasswdd/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/sbin/hprop/Makefile
cvs rdiff -u -r1.2.56.1 -r1.2.56.2 \
src/crypto/external/bsd/heimdal/sbin/iprop-log/Makefile
cvs rdiff -u -r1.3.22.1 -r1.3.22.2 \
src/crypto/external/bsd/heimdal/sbin/kadmin/Makefile
cvs rdiff -u -r1.2.56.1 

CVS commit: src/bin/sh

2023-10-14 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Oct 14 06:53:56 UTC 2023

Modified Files:
src/bin/sh: Makefile

Log Message:
the parser.c longjmp vs gcc12 issue affects a few ports,
make the workaround global.


To generate a diff of this commit:
cvs rdiff -u -r1.121 -r1.122 src/bin/sh/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/bin/sh

2023-10-14 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Oct 14 06:53:56 UTC 2023

Modified Files:
src/bin/sh: Makefile

Log Message:
the parser.c longjmp vs gcc12 issue affects a few ports,
make the workaround global.


To generate a diff of this commit:
cvs rdiff -u -r1.121 -r1.122 src/bin/sh/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/bin/sh/Makefile
diff -u src/bin/sh/Makefile:1.121 src/bin/sh/Makefile:1.122
--- src/bin/sh/Makefile:1.121	Mon Aug 14 03:18:14 2023
+++ src/bin/sh/Makefile	Sat Oct 14 06:53:56 2023
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile,v 1.121 2023/08/14 03:18:14 mrg Exp $
+#	$NetBSD: Makefile,v 1.122 2023/10/14 06:53:56 mrg Exp $
 #	@(#)Makefile	8.4 (Berkeley) 5/5/95
 
 .include 
@@ -94,9 +94,7 @@ COPTS.jobs.c = -Wno-format-nonliteral
 COPTS.var.c = -Wno-format-nonliteral
 
 # XXXGCC12 - only on some targets
-.if ${MACHINE_CPU} == "sh3"
 COPTS.parser.c+=	${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 12:? -O1 :}
-.endif
 
 .include 
 .include 



CVS commit: [netbsd-10] src/sys/arch

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:52:18 UTC 2023

Modified Files:
src/sys/arch/arm/arm32 [netbsd-10]: pmap.c
src/sys/arch/arm/include/arm32 [netbsd-10]: pmap.h
src/sys/arch/evbarm/adi_brh [netbsd-10]: brh_machdep.c
src/sys/arch/evbarm/g42xxeb [netbsd-10]: g42xxeb_machdep.c
src/sys/arch/evbarm/gumstix [netbsd-10]: gumstix_machdep.c
src/sys/arch/evbarm/hdl_g [netbsd-10]: hdlg_machdep.c
src/sys/arch/evbarm/iq80310 [netbsd-10]: iq80310_machdep.c
src/sys/arch/evbarm/iq80321 [netbsd-10]: iq80321_machdep.c
src/sys/arch/evbarm/ixdp425 [netbsd-10]: ixdp425_machdep.c
src/sys/arch/evbarm/iyonix [netbsd-10]: iyonix_machdep.c
src/sys/arch/evbarm/lubbock [netbsd-10]: lubbock_machdep.c
src/sys/arch/evbarm/npwr_fc [netbsd-10]: npwr_fc_machdep.c
src/sys/arch/evbarm/nslu2 [netbsd-10]: nslu2_machdep.c
src/sys/arch/evbarm/viper [netbsd-10]: viper_machdep.c
src/sys/arch/hpcarm/hpcarm [netbsd-10]: pxa2x0_hpc_machdep.c
src/sys/arch/iyonix/iyonix [netbsd-10]: iyonix_machdep.c
src/sys/arch/zaurus/zaurus [netbsd-10]: machdep.c

Log Message:
Pull up following revision(s) (requested by skrll in ticket #411):

sys/arch/evbarm/nslu2/nslu2_machdep.c: revision 1.41
sys/arch/evbarm/gumstix/gumstix_machdep.c: revision 1.75
sys/arch/evbarm/iq80321/iq80321_machdep.c: revision 1.66
sys/arch/iyonix/iyonix/iyonix_machdep.c: revision 1.34
sys/arch/zaurus/zaurus/machdep.c: revision 1.52
sys/arch/evbarm/g42xxeb/g42xxeb_machdep.c: revision 1.41
sys/arch/hpcarm/hpcarm/pxa2x0_hpc_machdep.c: revision 1.33
sys/arch/evbarm/iq80310/iq80310_machdep.c: revision 1.96
sys/arch/evbarm/adi_brh/brh_machdep.c: revision 1.53
sys/arch/arm/include/arm32/pmap.h: revision 1.177
sys/arch/evbarm/viper/viper_machdep.c: revision 1.34
sys/arch/evbarm/iyonix/iyonix_machdep.c: revision 1.5
sys/arch/evbarm/npwr_fc/npwr_fc_machdep.c: revision 1.30
sys/arch/evbarm/hdl_g/hdlg_machdep.c: revision 1.35
sys/arch/arm/arm32/pmap.c: revision 1.440
sys/arch/evbarm/lubbock/lubbock_machdep.c: revision 1.45
sys/arch/evbarm/ixdp425/ixdp425_machdep.c: revision 1.47

Fix non-DIAGNOSTIC builds


To generate a diff of this commit:
cvs rdiff -u -r1.437.4.1 -r1.437.4.2 src/sys/arch/arm/arm32/pmap.c
cvs rdiff -u -r1.173 -r1.173.4.1 src/sys/arch/arm/include/arm32/pmap.h
cvs rdiff -u -r1.51 -r1.51.4.1 src/sys/arch/evbarm/adi_brh/brh_machdep.c
cvs rdiff -u -r1.39 -r1.39.4.1 src/sys/arch/evbarm/g42xxeb/g42xxeb_machdep.c
cvs rdiff -u -r1.72 -r1.72.2.1 src/sys/arch/evbarm/gumstix/gumstix_machdep.c
cvs rdiff -u -r1.33 -r1.33.4.1 src/sys/arch/evbarm/hdl_g/hdlg_machdep.c
cvs rdiff -u -r1.94 -r1.94.4.1 src/sys/arch/evbarm/iq80310/iq80310_machdep.c
cvs rdiff -u -r1.64 -r1.64.4.1 src/sys/arch/evbarm/iq80321/iq80321_machdep.c
cvs rdiff -u -r1.46 -r1.46.4.1 src/sys/arch/evbarm/ixdp425/ixdp425_machdep.c
cvs rdiff -u -r1.4 -r1.4.20.1 src/sys/arch/evbarm/iyonix/iyonix_machdep.c
cvs rdiff -u -r1.42 -r1.42.4.1 src/sys/arch/evbarm/lubbock/lubbock_machdep.c
cvs rdiff -u -r1.29 -r1.29.4.1 src/sys/arch/evbarm/npwr_fc/npwr_fc_machdep.c
cvs rdiff -u -r1.35 -r1.35.4.1 src/sys/arch/evbarm/nslu2/nslu2_machdep.c
cvs rdiff -u -r1.33 -r1.33.4.1 src/sys/arch/evbarm/viper/viper_machdep.c
cvs rdiff -u -r1.30 -r1.30.4.1 \
src/sys/arch/hpcarm/hpcarm/pxa2x0_hpc_machdep.c
cvs rdiff -u -r1.31 -r1.31.4.1 src/sys/arch/iyonix/iyonix/iyonix_machdep.c
cvs rdiff -u -r1.50 -r1.50.4.1 src/sys/arch/zaurus/zaurus/machdep.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/arm32/pmap.c
diff -u src/sys/arch/arm/arm32/pmap.c:1.437.4.1 src/sys/arch/arm/arm32/pmap.c:1.437.4.2
--- src/sys/arch/arm/arm32/pmap.c:1.437.4.1	Mon Dec 19 11:44:29 2022
+++ src/sys/arch/arm/arm32/pmap.c	Sat Oct 14 06:52:17 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.c,v 1.437.4.1 2022/12/19 11:44:29 martin Exp $	*/
+/*	$NetBSD: pmap.c,v 1.437.4.2 2023/10/14 06:52:17 martin Exp $	*/
 
 /*
  * Copyright 2003 Wasabi Systems, Inc.
@@ -193,7 +193,7 @@
 #endif
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.437.4.1 2022/12/19 11:44:29 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.437.4.2 2023/10/14 06:52:17 martin Exp $");
 
 #include 
 #include 
@@ -7654,8 +7654,6 @@ pmap_pte_init_xscale(void)
 void
 xscale_setup_minidata(vaddr_t l1pt, vaddr_t va, paddr_t pa)
 {
-	extern vaddr_t xscale_minidata_clean_addr;
-	extern vsize_t xscale_minidata_clean_size; /* already initialized */
 	pd_entry_t *pde = (pd_entry_t *) l1pt;
 	vsize_t size;
 	uint32_t auxctl;

Index: src/sys/arch/arm/include/arm32/pmap.h
diff -u src/sys/arch/arm/include/arm32/pmap.h:1.173 src/sys/arch/arm/include/arm32/pmap.h:1.173.4.1
--- src/sys/arch/arm/include/arm32/pmap.h:1.173	Sat Apr  2 

CVS commit: [netbsd-10] src/sys/arch

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:52:18 UTC 2023

Modified Files:
src/sys/arch/arm/arm32 [netbsd-10]: pmap.c
src/sys/arch/arm/include/arm32 [netbsd-10]: pmap.h
src/sys/arch/evbarm/adi_brh [netbsd-10]: brh_machdep.c
src/sys/arch/evbarm/g42xxeb [netbsd-10]: g42xxeb_machdep.c
src/sys/arch/evbarm/gumstix [netbsd-10]: gumstix_machdep.c
src/sys/arch/evbarm/hdl_g [netbsd-10]: hdlg_machdep.c
src/sys/arch/evbarm/iq80310 [netbsd-10]: iq80310_machdep.c
src/sys/arch/evbarm/iq80321 [netbsd-10]: iq80321_machdep.c
src/sys/arch/evbarm/ixdp425 [netbsd-10]: ixdp425_machdep.c
src/sys/arch/evbarm/iyonix [netbsd-10]: iyonix_machdep.c
src/sys/arch/evbarm/lubbock [netbsd-10]: lubbock_machdep.c
src/sys/arch/evbarm/npwr_fc [netbsd-10]: npwr_fc_machdep.c
src/sys/arch/evbarm/nslu2 [netbsd-10]: nslu2_machdep.c
src/sys/arch/evbarm/viper [netbsd-10]: viper_machdep.c
src/sys/arch/hpcarm/hpcarm [netbsd-10]: pxa2x0_hpc_machdep.c
src/sys/arch/iyonix/iyonix [netbsd-10]: iyonix_machdep.c
src/sys/arch/zaurus/zaurus [netbsd-10]: machdep.c

Log Message:
Pull up following revision(s) (requested by skrll in ticket #411):

sys/arch/evbarm/nslu2/nslu2_machdep.c: revision 1.41
sys/arch/evbarm/gumstix/gumstix_machdep.c: revision 1.75
sys/arch/evbarm/iq80321/iq80321_machdep.c: revision 1.66
sys/arch/iyonix/iyonix/iyonix_machdep.c: revision 1.34
sys/arch/zaurus/zaurus/machdep.c: revision 1.52
sys/arch/evbarm/g42xxeb/g42xxeb_machdep.c: revision 1.41
sys/arch/hpcarm/hpcarm/pxa2x0_hpc_machdep.c: revision 1.33
sys/arch/evbarm/iq80310/iq80310_machdep.c: revision 1.96
sys/arch/evbarm/adi_brh/brh_machdep.c: revision 1.53
sys/arch/arm/include/arm32/pmap.h: revision 1.177
sys/arch/evbarm/viper/viper_machdep.c: revision 1.34
sys/arch/evbarm/iyonix/iyonix_machdep.c: revision 1.5
sys/arch/evbarm/npwr_fc/npwr_fc_machdep.c: revision 1.30
sys/arch/evbarm/hdl_g/hdlg_machdep.c: revision 1.35
sys/arch/arm/arm32/pmap.c: revision 1.440
sys/arch/evbarm/lubbock/lubbock_machdep.c: revision 1.45
sys/arch/evbarm/ixdp425/ixdp425_machdep.c: revision 1.47

Fix non-DIAGNOSTIC builds


To generate a diff of this commit:
cvs rdiff -u -r1.437.4.1 -r1.437.4.2 src/sys/arch/arm/arm32/pmap.c
cvs rdiff -u -r1.173 -r1.173.4.1 src/sys/arch/arm/include/arm32/pmap.h
cvs rdiff -u -r1.51 -r1.51.4.1 src/sys/arch/evbarm/adi_brh/brh_machdep.c
cvs rdiff -u -r1.39 -r1.39.4.1 src/sys/arch/evbarm/g42xxeb/g42xxeb_machdep.c
cvs rdiff -u -r1.72 -r1.72.2.1 src/sys/arch/evbarm/gumstix/gumstix_machdep.c
cvs rdiff -u -r1.33 -r1.33.4.1 src/sys/arch/evbarm/hdl_g/hdlg_machdep.c
cvs rdiff -u -r1.94 -r1.94.4.1 src/sys/arch/evbarm/iq80310/iq80310_machdep.c
cvs rdiff -u -r1.64 -r1.64.4.1 src/sys/arch/evbarm/iq80321/iq80321_machdep.c
cvs rdiff -u -r1.46 -r1.46.4.1 src/sys/arch/evbarm/ixdp425/ixdp425_machdep.c
cvs rdiff -u -r1.4 -r1.4.20.1 src/sys/arch/evbarm/iyonix/iyonix_machdep.c
cvs rdiff -u -r1.42 -r1.42.4.1 src/sys/arch/evbarm/lubbock/lubbock_machdep.c
cvs rdiff -u -r1.29 -r1.29.4.1 src/sys/arch/evbarm/npwr_fc/npwr_fc_machdep.c
cvs rdiff -u -r1.35 -r1.35.4.1 src/sys/arch/evbarm/nslu2/nslu2_machdep.c
cvs rdiff -u -r1.33 -r1.33.4.1 src/sys/arch/evbarm/viper/viper_machdep.c
cvs rdiff -u -r1.30 -r1.30.4.1 \
src/sys/arch/hpcarm/hpcarm/pxa2x0_hpc_machdep.c
cvs rdiff -u -r1.31 -r1.31.4.1 src/sys/arch/iyonix/iyonix/iyonix_machdep.c
cvs rdiff -u -r1.50 -r1.50.4.1 src/sys/arch/zaurus/zaurus/machdep.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-10] src/sys/dev/pci/igc

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:49:37 UTC 2023

Modified Files:
src/sys/dev/pci/igc [netbsd-10]: if_igc.c

Log Message:
Pull up following revision(s) (requested by rin in ticket #410):

sys/dev/pci/igc/if_igc.c: revision 1.4
sys/dev/pci/igc/if_igc.c: revision 1.5
sys/dev/pci/igc/if_igc.c: revision 1.6

igc(4): Fix half duplex setting
 From FreeBSD: 3b8d04f845b416d29a258658b8a48d1afb4a2e81

igc(4): `nvm_ver & ...' has type int, so use %x, not %hx.
This happens even though nvm_ver is unsigned short (uint16_t),
because of the integer promotions.
Should fix clang build.

igc(4): igc_init: Enable interrupt after everything is set up
Inspired by "ixgbe: Enable interrupt after setting IFF_RUNNING.":
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/dev/pci/ixgbe/ixgbe.c#rev1.337

Just for sure, callout_schedule(9) for igc_tick() is also postponed.
This is NFC for now, although.


To generate a diff of this commit:
cvs rdiff -u -r1.3.2.2 -r1.3.2.3 src/sys/dev/pci/igc/if_igc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pci/igc/if_igc.c
diff -u src/sys/dev/pci/igc/if_igc.c:1.3.2.2 src/sys/dev/pci/igc/if_igc.c:1.3.2.3
--- src/sys/dev/pci/igc/if_igc.c:1.3.2.2	Sun Oct  8 13:19:34 2023
+++ src/sys/dev/pci/igc/if_igc.c	Sat Oct 14 06:49:37 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_igc.c,v 1.3.2.2 2023/10/08 13:19:34 martin Exp $	*/
+/*	$NetBSD: if_igc.c,v 1.3.2.3 2023/10/14 06:49:37 martin Exp $	*/
 /*	$OpenBSD: if_igc.c,v 1.13 2023/04/28 10:18:57 bluhm Exp $	*/
 /*-
  * SPDX-License-Identifier: BSD-2-Clause
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_igc.c,v 1.3.2.2 2023/10/08 13:19:34 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_igc.c,v 1.3.2.3 2023/10/14 06:49:37 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -1541,17 +1541,17 @@ igc_init_locked(struct igc_softc *sc)
 		mutex_exit(>rxr_lock);
 	}
 
-	igc_enable_intr(sc);
-
 	sc->sc_core_stopping = false;
 
-	callout_schedule(>sc_tick_ch, hz);
-
 	ifp->if_flags |= IFF_RUNNING;
 
 	/* Save last flags for the callback */
 	sc->sc_if_flags = ifp->if_flags;
 
+	callout_schedule(>sc_tick_ch, hz);
+
+	igc_enable_intr(sc);
+
 	return 0;
 }
 
@@ -2378,16 +2378,16 @@ igc_media_change(struct ifnet *ifp)
 		sc->hw.phy.autoneg_advertised = ADVERTISE_1000_FULL;
 		break;
 	case IFM_100_TX:
-		if ((ifm->ifm_media & IFM_GMASK) == IFM_HDX)
-			sc->hw.phy.autoneg_advertised = ADVERTISE_100_HALF;
-		else
+		if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX)
 			sc->hw.phy.autoneg_advertised = ADVERTISE_100_FULL;
+		else
+			sc->hw.phy.autoneg_advertised = ADVERTISE_100_HALF;
 		break;
 	case IFM_10_T:
-		if ((ifm->ifm_media & IFM_GMASK) == IFM_HDX)
-			sc->hw.phy.autoneg_advertised = ADVERTISE_10_HALF;
-		else
+		if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX)
 			sc->hw.phy.autoneg_advertised = ADVERTISE_10_FULL;
+		else
+			sc->hw.phy.autoneg_advertised = ADVERTISE_10_HALF;
 		break;
 	default:
 		return EINVAL;
@@ -3842,7 +3842,7 @@ igc_print_devinfo(struct igc_softc *sc)
 	/* Get PHY FW version */
 	phy->ops.read_reg(hw, 0x1e, _ver);
 
-	aprint_normal_dev(dev, "ROM image version %x.%02hx",
+	aprint_normal_dev(dev, "ROM image version %x.%02x",
 	(nvm_ver & NVM_VERSION_MAJOR) >> NVM_VERSION_MAJOR_SHIFT,
 	(nvm_ver & NVM_VERSION_MINOR));
 	aprint_debug("(0x%04hx)", nvm_ver);



CVS commit: [netbsd-10] src/sys/dev/pci/igc

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:49:37 UTC 2023

Modified Files:
src/sys/dev/pci/igc [netbsd-10]: if_igc.c

Log Message:
Pull up following revision(s) (requested by rin in ticket #410):

sys/dev/pci/igc/if_igc.c: revision 1.4
sys/dev/pci/igc/if_igc.c: revision 1.5
sys/dev/pci/igc/if_igc.c: revision 1.6

igc(4): Fix half duplex setting
 From FreeBSD: 3b8d04f845b416d29a258658b8a48d1afb4a2e81

igc(4): `nvm_ver & ...' has type int, so use %x, not %hx.
This happens even though nvm_ver is unsigned short (uint16_t),
because of the integer promotions.
Should fix clang build.

igc(4): igc_init: Enable interrupt after everything is set up
Inspired by "ixgbe: Enable interrupt after setting IFF_RUNNING.":
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/dev/pci/ixgbe/ixgbe.c#rev1.337

Just for sure, callout_schedule(9) for igc_tick() is also postponed.
This is NFC for now, although.


To generate a diff of this commit:
cvs rdiff -u -r1.3.2.2 -r1.3.2.3 src/sys/dev/pci/igc/if_igc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-10] src/sys

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:43:06 UTC 2023

Modified Files:
src/sys/arch/evbarm/conf [netbsd-10]: GENERIC64
src/sys/dev/pci [netbsd-10]: if_ixl.c

Log Message:
Pull up following revision(s) (requested by yamaguchi in ticket #409):

sys/dev/pci/if_ixl.c: revision 1.90
sys/dev/pci/if_ixl.c: revision 1.91
sys/dev/pci/if_ixl.c: revision 1.92
sys/dev/pci/if_ixl.c: revision 1.93
sys/arch/evbarm/conf/GENERIC64: revision 1.214

ixl(4): skip getting link status if the last command is running

ixl(4): use cv_broadcast to wakeup ioctl and workqueue context.
Commands may be issued at the same time from the both context.

ixl(4): update link status in workqueue

ixl(4): Print device info on attach
Without PCIVERBOSE option:
ixl0 at pci1 dev 0 function 0: vendor 8086 product 1572 (rev. 0x01)
With PCIVERBOSE option:
ixl0 at pci1 dev 0 function 0: Intel XL710 SFP+ Ethernet (SFI) (rev. 0x01)
OK yamaguchi@

aarch64/GENERIC64: Add ixl(4)
Works just fine for little-endian on LX2K with UEFI firmware.
Not tested for big-endian yet; attach fails on ROCKPro64 due to
host controller problem.
OK yamaguchi@


To generate a diff of this commit:
cvs rdiff -u -r1.206.2.2 -r1.206.2.3 src/sys/arch/evbarm/conf/GENERIC64
cvs rdiff -u -r1.88 -r1.88.4.1 src/sys/dev/pci/if_ixl.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-10] src/sys

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:43:06 UTC 2023

Modified Files:
src/sys/arch/evbarm/conf [netbsd-10]: GENERIC64
src/sys/dev/pci [netbsd-10]: if_ixl.c

Log Message:
Pull up following revision(s) (requested by yamaguchi in ticket #409):

sys/dev/pci/if_ixl.c: revision 1.90
sys/dev/pci/if_ixl.c: revision 1.91
sys/dev/pci/if_ixl.c: revision 1.92
sys/dev/pci/if_ixl.c: revision 1.93
sys/arch/evbarm/conf/GENERIC64: revision 1.214

ixl(4): skip getting link status if the last command is running

ixl(4): use cv_broadcast to wakeup ioctl and workqueue context.
Commands may be issued at the same time from the both context.

ixl(4): update link status in workqueue

ixl(4): Print device info on attach
Without PCIVERBOSE option:
ixl0 at pci1 dev 0 function 0: vendor 8086 product 1572 (rev. 0x01)
With PCIVERBOSE option:
ixl0 at pci1 dev 0 function 0: Intel XL710 SFP+ Ethernet (SFI) (rev. 0x01)
OK yamaguchi@

aarch64/GENERIC64: Add ixl(4)
Works just fine for little-endian on LX2K with UEFI firmware.
Not tested for big-endian yet; attach fails on ROCKPro64 due to
host controller problem.
OK yamaguchi@


To generate a diff of this commit:
cvs rdiff -u -r1.206.2.2 -r1.206.2.3 src/sys/arch/evbarm/conf/GENERIC64
cvs rdiff -u -r1.88 -r1.88.4.1 src/sys/dev/pci/if_ixl.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/evbarm/conf/GENERIC64
diff -u src/sys/arch/evbarm/conf/GENERIC64:1.206.2.2 src/sys/arch/evbarm/conf/GENERIC64:1.206.2.3
--- src/sys/arch/evbarm/conf/GENERIC64:1.206.2.2	Sun Oct  8 13:19:33 2023
+++ src/sys/arch/evbarm/conf/GENERIC64	Sat Oct 14 06:43:06 2023
@@ -1,5 +1,5 @@
 #
-#	$NetBSD: GENERIC64,v 1.206.2.2 2023/10/08 13:19:33 martin Exp $
+#	$NetBSD: GENERIC64,v 1.206.2.3 2023/10/14 06:43:06 martin Exp $
 #
 #	GENERIC ARM (aarch64) kernel
 #
@@ -279,6 +279,7 @@ bge*		at pci? dev ? function ?	# Broadco
 ena*		at pci? dev ? function ?	# Amazon.com Elastic Network Adapter
 igc*		at pci? dev ? function ?	# Intel 22x 2.5 gigabit
 ixg* 		at pci? dev ? function ?	# Intel 8259x 10 gigabit
+ixl* 		at pci? dev ? function ?	# Intel Ethernet 700 series
 ixv* 		at pci? dev ? function ?	# Intel 8259x 10G virtual function
 mcx*		at pci? dev ? function ?	# Mellanox 5th generation Ethernet
 mskc*		at pci? dev ? function ?	# Marvell Yukon 2 Gigabit Ethernet

Index: src/sys/dev/pci/if_ixl.c
diff -u src/sys/dev/pci/if_ixl.c:1.88 src/sys/dev/pci/if_ixl.c:1.88.4.1
--- src/sys/dev/pci/if_ixl.c:1.88	Fri Sep 16 03:12:03 2022
+++ src/sys/dev/pci/if_ixl.c	Sat Oct 14 06:43:06 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_ixl.c,v 1.88 2022/09/16 03:12:03 knakahara Exp $	*/
+/*	$NetBSD: if_ixl.c,v 1.88.4.1 2023/10/14 06:43:06 martin Exp $	*/
 
 /*
  * Copyright (c) 2013-2015, Intel Corporation
@@ -74,7 +74,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_ixl.c,v 1.88 2022/09/16 03:12:03 knakahara Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ixl.c,v 1.88.4.1 2023/10/14 06:43:06 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -446,6 +446,7 @@ struct ixl_atq {
 	struct ixl_aq_desc	 iatq_desc;
 	void			(*iatq_fn)(struct ixl_softc *,
 const struct ixl_aq_desc *);
+	bool			 iatq_inuse;
 };
 SIMPLEQ_HEAD(ixl_atq_list, ixl_atq);
 
@@ -650,6 +651,7 @@ struct ixl_softc {
 	unsigned int		 sc_arq_cons;
 
 	struct ixl_work		 sc_link_state_task;
+	struct ixl_work		 sc_link_state_done_task;
 	struct ixl_atq		 sc_link_state_atq;
 
 	struct ixl_dmamem	 sc_hmc_sd;
@@ -714,6 +716,11 @@ do {			\
 #define IXL_QUEUE_NUM		0
 #endif
 
+enum ixl_link_flags {
+	IXL_LINK_NOFLAGS	= 0,
+	IXL_LINK_FLAG_WAITDONE	= __BIT(0),
+};
+
 static bool		 ixl_param_nomsix = false;
 static int		 ixl_param_stats_interval = IXL_STATS_INTERVAL_MSEC;
 static int		 ixl_param_nqps_limit = IXL_QUEUE_NUM;
@@ -737,6 +744,7 @@ static int	ixl_atq_poll(struct ixl_softc
 		unsigned int);
 static void	ixl_atq_set(struct ixl_atq *,
 		void (*)(struct ixl_softc *, const struct ixl_aq_desc *));
+static void	ixl_wakeup(struct ixl_softc *, const struct ixl_aq_desc *);
 static int	ixl_atq_post_locked(struct ixl_softc *, struct ixl_atq *);
 static void	ixl_atq_done(struct ixl_softc *);
 static int	ixl_atq_exec(struct ixl_softc *, struct ixl_atq *);
@@ -758,10 +766,12 @@ static void	ixl_hmc_free(struct ixl_soft
 static int	ixl_get_vsi(struct ixl_softc *);
 static int	ixl_set_vsi(struct ixl_softc *);
 static void	ixl_set_filter_control(struct ixl_softc *);
-static void	ixl_get_link_status(void *);
+static int	ixl_get_link_status(struct ixl_softc *, enum ixl_link_flags);
+static void	ixl_get_link_status_work(void *);
 static int	ixl_get_link_status_poll(struct ixl_softc *, int *);
 static void	ixl_get_link_status_done(struct ixl_softc *,
 		const struct ixl_aq_desc *);
+static void	ixl_get_link_status_done_work(void *);
 static int	ixl_set_link_status_locked(struct ixl_softc 

CVS commit: [netbsd-10] src/share/man/man4

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:38:57 UTC 2023

Modified Files:
src/share/man/man4 [netbsd-10]: agr.4

Log Message:
Pull up following revision(s) (requested by yamaguchi in ticket #408):

share/man/man4/agr.4: revision 1.10
share/man/man4/agr.4: revision 1.11
share/man/man4/agr.4: revision 1.12

Update agr(4) manual page
The driver is marked as obsolete.
update history of agr(4)

I proposed to make agr(4) deprecated in NetBSD 10,
and there was not any disagreements.
https://mail-index.netbsd.org/tech-net/2022/06/08/msg008265.html

agr(4): minor cleanups


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.9.38.1 src/share/man/man4/agr.4

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/share/man/man4/agr.4
diff -u src/share/man/man4/agr.4:1.9 src/share/man/man4/agr.4:1.9.38.1
--- src/share/man/man4/agr.4:1.9	Sat Jul 13 10:54:00 2013
+++ src/share/man/man4/agr.4	Sat Oct 14 06:38:57 2023
@@ -1,4 +1,4 @@
-.\"	$NetBSD: agr.4,v 1.9 2013/07/13 10:54:00 njoly Exp $
+.\"	$NetBSD: agr.4,v 1.9.38.1 2023/10/14 06:38:57 martin Exp $
 .\"
 .\" Copyright (c)2005, 2007 YAMAMOTO Takashi,
 .\" All rights reserved.
@@ -37,6 +37,12 @@
 .Cd pseudo-device agr
 .\" 
 .Sh DESCRIPTION
+.Em The driver described in this manual page is obsolete
+.Em and will be removed from a future version of the system.
+.Pp
+.Xr lagg 4
+.Em should be used instead.
+.Pp
 The
 .Nm
 driver provides link aggregation functionality (a.k.a. L2 trunking
@@ -105,6 +111,7 @@ Destroy an interface created in the abov
 .Ed
 .\" 
 .Sh SEE ALSO
+.Xr lagg 4 ,
 .Xr ifconfig 8
 .\" 
 .Sh STANDARDS
@@ -114,7 +121,14 @@ IEEE 802.3ad Aggregation of Multiple Lin
 The
 .Nm
 driver first appeared in
-.Nx 4.0 .
+.Nx 4.0
+and was obsoleted in
+.Nx 10.0 .
+.Pp
+The
+.Nm
+driver will be removed from
+.Nx 11.0 .
 .\" 
 .Sh AUTHORS
 The



CVS commit: [netbsd-10] src/share/man/man4

2023-10-14 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Oct 14 06:38:57 UTC 2023

Modified Files:
src/share/man/man4 [netbsd-10]: agr.4

Log Message:
Pull up following revision(s) (requested by yamaguchi in ticket #408):

share/man/man4/agr.4: revision 1.10
share/man/man4/agr.4: revision 1.11
share/man/man4/agr.4: revision 1.12

Update agr(4) manual page
The driver is marked as obsolete.
update history of agr(4)

I proposed to make agr(4) deprecated in NetBSD 10,
and there was not any disagreements.
https://mail-index.netbsd.org/tech-net/2022/06/08/msg008265.html

agr(4): minor cleanups


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.9.38.1 src/share/man/man4/agr.4

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/lib/libc/stdlib

2023-10-14 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Oct 14 06:29:10 UTC 2023

Modified Files:
src/lib/libc/stdlib: jemalloc.c

Log Message:
fix compile error on 32-bit platforms.


To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.59 src/lib/libc/stdlib/jemalloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/lib/libc/stdlib

2023-10-14 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Oct 14 06:29:10 UTC 2023

Modified Files:
src/lib/libc/stdlib: jemalloc.c

Log Message:
fix compile error on 32-bit platforms.


To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.59 src/lib/libc/stdlib/jemalloc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libc/stdlib/jemalloc.c
diff -u src/lib/libc/stdlib/jemalloc.c:1.58 src/lib/libc/stdlib/jemalloc.c:1.59
--- src/lib/libc/stdlib/jemalloc.c:1.58	Fri Oct 13 20:57:30 2023
+++ src/lib/libc/stdlib/jemalloc.c	Sat Oct 14 06:29:10 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: jemalloc.c,v 1.58 2023/10/13 20:57:30 ad Exp $	*/
+/*	$NetBSD: jemalloc.c,v 1.59 2023/10/14 06:29:10 mrg Exp $	*/
 
 /*-
  * Copyright (C) 2006,2007 Jason Evans .
@@ -111,7 +111,7 @@
 
 #include 
 /* __FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.147 2007/06/15 22:00:16 jasone Exp $"); */
-__RCSID("$NetBSD: jemalloc.c,v 1.58 2023/10/13 20:57:30 ad Exp $");
+__RCSID("$NetBSD: jemalloc.c,v 1.59 2023/10/14 06:29:10 mrg Exp $");
 
 #include "namespace.h"
 #include 
@@ -179,7 +179,7 @@ ptrcmp(const void *pa, const void *pb)
 	assert(((a | b) & 1) == 0);
 	return (int)(diff >> 32) | ((int)diff >> 1);
 #else
-	return (intptr_t)a - (intptr_t)b;
+	return (intptr_t)pa - (intptr_t)pb;
 #endif
 }