CVS commit: src/bin/sh

2023-10-18 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Oct 19 04:27:24 UTC 2023

Modified Files:
src/bin/sh: Makefile

Log Message:
convert gcc12 -O1 into -Wno-error=clobbered.

parser.c wants all the optimisation, and this is very likely a
false positive.


To generate a diff of this commit:
cvs rdiff -u -r1.122 -r1.123 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.122 src/bin/sh/Makefile:1.123
--- src/bin/sh/Makefile:1.122	Sat Oct 14 06:53:56 2023
+++ src/bin/sh/Makefile	Thu Oct 19 04:27:24 2023
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile,v 1.122 2023/10/14 06:53:56 mrg Exp $
+#	$NetBSD: Makefile,v 1.123 2023/10/19 04:27:24 mrg Exp $
 #	@(#)Makefile	8.4 (Berkeley) 5/5/95
 
 .include 
@@ -94,7 +94,7 @@ COPTS.jobs.c = -Wno-format-nonliteral
 COPTS.var.c = -Wno-format-nonliteral
 
 # XXXGCC12 - only on some targets
-COPTS.parser.c+=	${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 12:? -O1 :}
+COPTS.parser.c+=	${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 12:? -Wno-error=clobbered :}
 
 .include 
 .include 



CVS commit: src/bin/sh

2023-10-18 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Oct 19 04:27:24 UTC 2023

Modified Files:
src/bin/sh: Makefile

Log Message:
convert gcc12 -O1 into -Wno-error=clobbered.

parser.c wants all the optimisation, and this is very likely a
false positive.


To generate a diff of this commit:
cvs rdiff -u -r1.122 -r1.123 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: [netbsd-10] src/sys

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 16:53:04 UTC 2023

Modified Files:
src/sys/arch/amd64/conf [netbsd-10]: XEN3_DOM0
src/sys/arch/i386/conf [netbsd-10]: XEN3PAE_DOM0
src/sys/arch/x86/include [netbsd-10]: genfb_machdep.h
src/sys/arch/x86/pci [netbsd-10]: pci_machdep.c
src/sys/arch/x86/x86 [netbsd-10]: consinit.c genfb_machdep.c
src/sys/arch/xen/conf [netbsd-10]: files.xen
src/sys/arch/xen/include [netbsd-10]: hypervisor.h
src/sys/arch/xen/x86 [netbsd-10]: autoconf.c consinit.c pvh_consinit.c
src/sys/arch/xen/xen [netbsd-10]: xen_machdep.c
src/sys/external/mit/xen-include-public/dist/xen/include/public 
[netbsd-10]:
platform.h xen.h
Added Files:
src/sys/arch/xen/xen [netbsd-10]: genfb_xen.c

Log Message:
Pull up following revision(s) (requested by bouyer in ticket #428):

sys/arch/xen/xen/xen_machdep.c: revision 1.28
sys/arch/x86/pci/pci_machdep.c: revision 1.97
sys/arch/xen/xen/genfb_xen.c: revision 1.1
sys/arch/xen/xen/genfb_xen.c: revision 1.2
sys/arch/xen/include/hypervisor.h: revision 1.59
sys/arch/i386/conf/XEN3PAE_DOM0: revision 1.41 (patch)
sys/arch/x86/x86/genfb_machdep.c: revision 1.22
sys/arch/xen/x86/consinit.c: revision 1.18
sys/arch/xen/x86/autoconf.c: revision 1.26
sys/external/mit/xen-include-public/dist/xen/include/public/platform.h: 
revision 1.2
sys/arch/xen/conf/files.xen: revision 1.188
sys/arch/x86/x86/consinit.c: revision 1.37
sys/arch/xen/conf/files.xen: revision 1.189
sys/arch/x86/x86/consinit.c: revision 1.38
sys/external/mit/xen-include-public/dist/xen/include/public/xen.h: 
revision 1.2
sys/arch/x86/include/genfb_machdep.h: revision 1.7
sys/arch/xen/x86/pvh_consinit.c: revision 1.5
sys/arch/xen/x86/pvh_consinit.c: revision 1.6
sys/arch/amd64/conf/XEN3_DOM0: revision 1.201

Move the pvh_xencons so xen_machdep.c as early_xencons, so it can be
used in the future as early ouput for plain PV guests too.

Support non-VGA framebuffers for Xen dom0. This is mandatory for graphic
console on EFI-only hardware.

Add a xen_genfb_getbtinfo() function which will return a btinfo_framebuffer
structure, filled in with parameters provided by Xen

when runing as a Xen dom0, call xen_genfb_getbtinfo() instead of
lookup_bootinfo(BTINFO_FRAMEBUFFER) when adding properties to the
PCI graphic device (when genfb is attached) and in x86_genfb_init()
when genfb is used as console.

x86/x86/consinit.c: If running as a Xen dom0, use xen_genfb_getbtinfo()
to check if we have a genfb console

xen/x86/consinit.c: support genfb as possible console

xen/x86/consinit.c: use the hypervior IO as console until a better one
is found. If the hypervisor is using a serial port for boot messages,
we'll get NetBSD's boot message on the serial port too until
the real console takes over.

xen/x86/autoconf.c: rework device_register() to be closer to the x86 version.
Especially make sure that device_pci_register() is called.

Make sure to always fall back to xen_early_console, even for dom0

Enable genfb in DOM0 kernels

Add ext_lfb_base to dom0_vga_console_info, from recent Xen. We know if it's
present or not by checking dom0.info_size

Add XENPF_get_dom0_console, which gets a dom0_vga_console_info stucture
from the hypervisor. To be used by PVH dom0 kernels.

XENPVH option is not used. Fix consinit.c to use XENPVHVM as intended
and XENPVH from defflag
for a dom0 PVH, the dom0_vga_console_info structure has to be retrieved
using a platform hypercall; do so in the XENPVHVM case.

Now genfb works in a PVH dom0 running on Xen 4.18 (Xen 4.15 doesn't support
this platoform op, so no way to make it work here).


To generate a diff of this commit:
cvs rdiff -u -r1.197.4.2 -r1.197.4.3 src/sys/arch/amd64/conf/XEN3_DOM0
cvs rdiff -u -r1.36.4.1 -r1.36.4.2 src/sys/arch/i386/conf/XEN3PAE_DOM0
cvs rdiff -u -r1.5.18.1 -r1.5.18.2 src/sys/arch/x86/include/genfb_machdep.h
cvs rdiff -u -r1.93.4.2 -r1.93.4.3 src/sys/arch/x86/pci/pci_machdep.c
cvs rdiff -u -r1.35.4.1 -r1.35.4.2 src/sys/arch/x86/x86/consinit.c
cvs rdiff -u -r1.19.4.1 -r1.19.4.2 src/sys/arch/x86/x86/genfb_machdep.c
cvs rdiff -u -r1.187 -r1.187.4.1 src/sys/arch/xen/conf/files.xen
cvs rdiff -u -r1.55.4.2 -r1.55.4.3 src/sys/arch/xen/include/hypervisor.h
cvs rdiff -u -r1.25 -r1.25.20.1 src/sys/arch/xen/x86/autoconf.c
cvs rdiff -u -r1.16 -r1.16.68.1 src/sys/arch/xen/x86/consinit.c
cvs rdiff -u -r1.2.20.1 -r1.2.20.2 src/sys/arch/xen/x86/pvh_consinit.c
cvs rdiff -u -r0 -r1.2.2.2 src/sys/arch/xen/xen/genfb_xen.c
cvs rdiff -u -r1.27 -r1.27.4.1 src/sys/arch/xen/xen/xen_machdep.c
cvs rdiff -u -r1.1.1.1 -r1.1.1.1.32.1 \
src/sys/external/mit/xen-include-public/dist/xen/include/public/platform.h \
src/sys/external/mit/xen-include-public/dist/xen/include/public/xen.h


CVS commit: [netbsd-10] src/sys

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 16:53:04 UTC 2023

Modified Files:
src/sys/arch/amd64/conf [netbsd-10]: XEN3_DOM0
src/sys/arch/i386/conf [netbsd-10]: XEN3PAE_DOM0
src/sys/arch/x86/include [netbsd-10]: genfb_machdep.h
src/sys/arch/x86/pci [netbsd-10]: pci_machdep.c
src/sys/arch/x86/x86 [netbsd-10]: consinit.c genfb_machdep.c
src/sys/arch/xen/conf [netbsd-10]: files.xen
src/sys/arch/xen/include [netbsd-10]: hypervisor.h
src/sys/arch/xen/x86 [netbsd-10]: autoconf.c consinit.c pvh_consinit.c
src/sys/arch/xen/xen [netbsd-10]: xen_machdep.c
src/sys/external/mit/xen-include-public/dist/xen/include/public 
[netbsd-10]:
platform.h xen.h
Added Files:
src/sys/arch/xen/xen [netbsd-10]: genfb_xen.c

Log Message:
Pull up following revision(s) (requested by bouyer in ticket #428):

sys/arch/xen/xen/xen_machdep.c: revision 1.28
sys/arch/x86/pci/pci_machdep.c: revision 1.97
sys/arch/xen/xen/genfb_xen.c: revision 1.1
sys/arch/xen/xen/genfb_xen.c: revision 1.2
sys/arch/xen/include/hypervisor.h: revision 1.59
sys/arch/i386/conf/XEN3PAE_DOM0: revision 1.41 (patch)
sys/arch/x86/x86/genfb_machdep.c: revision 1.22
sys/arch/xen/x86/consinit.c: revision 1.18
sys/arch/xen/x86/autoconf.c: revision 1.26
sys/external/mit/xen-include-public/dist/xen/include/public/platform.h: 
revision 1.2
sys/arch/xen/conf/files.xen: revision 1.188
sys/arch/x86/x86/consinit.c: revision 1.37
sys/arch/xen/conf/files.xen: revision 1.189
sys/arch/x86/x86/consinit.c: revision 1.38
sys/external/mit/xen-include-public/dist/xen/include/public/xen.h: 
revision 1.2
sys/arch/x86/include/genfb_machdep.h: revision 1.7
sys/arch/xen/x86/pvh_consinit.c: revision 1.5
sys/arch/xen/x86/pvh_consinit.c: revision 1.6
sys/arch/amd64/conf/XEN3_DOM0: revision 1.201

Move the pvh_xencons so xen_machdep.c as early_xencons, so it can be
used in the future as early ouput for plain PV guests too.

Support non-VGA framebuffers for Xen dom0. This is mandatory for graphic
console on EFI-only hardware.

Add a xen_genfb_getbtinfo() function which will return a btinfo_framebuffer
structure, filled in with parameters provided by Xen

when runing as a Xen dom0, call xen_genfb_getbtinfo() instead of
lookup_bootinfo(BTINFO_FRAMEBUFFER) when adding properties to the
PCI graphic device (when genfb is attached) and in x86_genfb_init()
when genfb is used as console.

x86/x86/consinit.c: If running as a Xen dom0, use xen_genfb_getbtinfo()
to check if we have a genfb console

xen/x86/consinit.c: support genfb as possible console

xen/x86/consinit.c: use the hypervior IO as console until a better one
is found. If the hypervisor is using a serial port for boot messages,
we'll get NetBSD's boot message on the serial port too until
the real console takes over.

xen/x86/autoconf.c: rework device_register() to be closer to the x86 version.
Especially make sure that device_pci_register() is called.

Make sure to always fall back to xen_early_console, even for dom0

Enable genfb in DOM0 kernels

Add ext_lfb_base to dom0_vga_console_info, from recent Xen. We know if it's
present or not by checking dom0.info_size

Add XENPF_get_dom0_console, which gets a dom0_vga_console_info stucture
from the hypervisor. To be used by PVH dom0 kernels.

XENPVH option is not used. Fix consinit.c to use XENPVHVM as intended
and XENPVH from defflag
for a dom0 PVH, the dom0_vga_console_info structure has to be retrieved
using a platform hypercall; do so in the XENPVHVM case.

Now genfb works in a PVH dom0 running on Xen 4.18 (Xen 4.15 doesn't support
this platoform op, so no way to make it work here).


To generate a diff of this commit:
cvs rdiff -u -r1.197.4.2 -r1.197.4.3 src/sys/arch/amd64/conf/XEN3_DOM0
cvs rdiff -u -r1.36.4.1 -r1.36.4.2 src/sys/arch/i386/conf/XEN3PAE_DOM0
cvs rdiff -u -r1.5.18.1 -r1.5.18.2 src/sys/arch/x86/include/genfb_machdep.h
cvs rdiff -u -r1.93.4.2 -r1.93.4.3 src/sys/arch/x86/pci/pci_machdep.c
cvs rdiff -u -r1.35.4.1 -r1.35.4.2 src/sys/arch/x86/x86/consinit.c
cvs rdiff -u -r1.19.4.1 -r1.19.4.2 src/sys/arch/x86/x86/genfb_machdep.c
cvs rdiff -u -r1.187 -r1.187.4.1 src/sys/arch/xen/conf/files.xen
cvs rdiff -u -r1.55.4.2 -r1.55.4.3 src/sys/arch/xen/include/hypervisor.h
cvs rdiff -u -r1.25 -r1.25.20.1 src/sys/arch/xen/x86/autoconf.c
cvs rdiff -u -r1.16 -r1.16.68.1 src/sys/arch/xen/x86/consinit.c
cvs rdiff -u -r1.2.20.1 -r1.2.20.2 src/sys/arch/xen/x86/pvh_consinit.c
cvs rdiff -u -r0 -r1.2.2.2 src/sys/arch/xen/xen/genfb_xen.c
cvs rdiff -u -r1.27 -r1.27.4.1 src/sys/arch/xen/xen/xen_machdep.c
cvs rdiff -u -r1.1.1.1 -r1.1.1.1.32.1 \
src/sys/external/mit/xen-include-public/dist/xen/include/public/platform.h \
src/sys/external/mit/xen-include-public/dist/xen/include/public/xen.h


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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:19:09 UTC 2023

Modified Files:
src/sys/arch/amd64/amd64 [netbsd-10]: locore.S
src/sys/arch/i386/i386 [netbsd-10]: locore.S
src/sys/arch/xen/include [netbsd-10]: hypervisor.h

Log Message:
Pull up following revision(s) (requested by bouyer in ticket #427):

sys/arch/xen/include/hypervisor.h: revision 1.58
sys/arch/i386/i386/locore.S: revision 1.197
sys/arch/amd64/amd64/locore.S: revision 1.224

Xen's start_info_t is larger than 512 bytes these days, so bump the copy
size to a whole PAGE_SIZE, and CTASSERT() that start_info_t is smaller.

Luckily we didn't use yet the parts skipped


To generate a diff of this commit:
cvs rdiff -u -r1.214.4.1 -r1.214.4.2 src/sys/arch/amd64/amd64/locore.S
cvs rdiff -u -r1.190.4.1 -r1.190.4.2 src/sys/arch/i386/i386/locore.S
cvs rdiff -u -r1.55.4.1 -r1.55.4.2 src/sys/arch/xen/include/hypervisor.h

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/amd64/amd64/locore.S
diff -u src/sys/arch/amd64/amd64/locore.S:1.214.4.1 src/sys/arch/amd64/amd64/locore.S:1.214.4.2
--- src/sys/arch/amd64/amd64/locore.S:1.214.4.1	Sat May 13 13:26:57 2023
+++ src/sys/arch/amd64/amd64/locore.S	Wed Oct 18 15:19:09 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: locore.S,v 1.214.4.1 2023/05/13 13:26:57 martin Exp $	*/
+/*	$NetBSD: locore.S,v 1.214.4.2 2023/10/18 15:19:09 martin Exp $	*/
 
 /*
  * Copyright-o-rama!
@@ -939,7 +939,7 @@ longmode_hi:
 	/* Copy start_info to a safe place. */
 	movq	%rbx,%rsi
 	movq	$_C_LABEL(start_info_union),%rdi
-	movq	$64,%rcx
+	movq	$(PAGE_SIZE / 8),%rcx
 	rep
 	movsq
 

Index: src/sys/arch/i386/i386/locore.S
diff -u src/sys/arch/i386/i386/locore.S:1.190.4.1 src/sys/arch/i386/i386/locore.S:1.190.4.2
--- src/sys/arch/i386/i386/locore.S:1.190.4.1	Wed Feb  8 18:27:05 2023
+++ src/sys/arch/i386/i386/locore.S	Wed Oct 18 15:19:08 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: locore.S,v 1.190.4.1 2023/02/08 18:27:05 martin Exp $	*/
+/*	$NetBSD: locore.S,v 1.190.4.2 2023/10/18 15:19:08 martin Exp $	*/
 
 /*
  * Copyright-o-rama!
@@ -128,7 +128,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.190.4.1 2023/02/08 18:27:05 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.190.4.2 2023/10/18 15:19:08 martin Exp $");
 
 #include "opt_copy_symtab.h"
 #include "opt_ddb.h"
@@ -1117,7 +1117,7 @@ begin:
 	/* Copy the necessary stuff from start_info structure. */
 	/* We need to copy shared_info early, so that sti/cli work */
 	movl	$RELOC(start_info_union),%edi
-	movl	$128,%ecx
+	movl	$(PAGE_SIZE / 4),%ecx
 	rep
 	movsl
 

Index: src/sys/arch/xen/include/hypervisor.h
diff -u src/sys/arch/xen/include/hypervisor.h:1.55.4.1 src/sys/arch/xen/include/hypervisor.h:1.55.4.2
--- src/sys/arch/xen/include/hypervisor.h:1.55.4.1	Mon Jul 31 15:23:02 2023
+++ src/sys/arch/xen/include/hypervisor.h	Wed Oct 18 15:19:08 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: hypervisor.h,v 1.55.4.1 2023/07/31 15:23:02 martin Exp $	*/
+/*	$NetBSD: hypervisor.h,v 1.55.4.2 2023/10/18 15:19:08 martin Exp $	*/
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -58,6 +58,8 @@
 #include "isa.h"
 #include "pci.h"
 
+#include 
+
 struct cpu_info;
 
 int xen_hvm_init(void);
@@ -134,11 +136,13 @@ struct xen_npx_attach_args {
 union start_info_union
 {
 start_info_t start_info;
-char padding[512];
+char padding[PAGE_SIZE];
 };
 extern union start_info_union start_info_union;
 #define xen_start_info (start_info_union.start_info)
 
+CTASSERT(sizeof(start_info_t) <= PAGE_SIZE);
+
 extern struct hvm_start_info *hvm_start_info;
 
 /* For use in guest OSes. */



CVS commit: [netbsd-10] src/doc

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:31:09 UTC 2023

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

Log Message:
Fix entry for ticket #407, note Tickets #417 - #428


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.139 -r1.1.2.140 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.139 src/doc/CHANGES-10.0:1.1.2.140
--- src/doc/CHANGES-10.0:1.1.2.139	Sat Oct 14 07:07:10 2023
+++ src/doc/CHANGES-10.0	Wed Oct 18 15:31:09 2023
@@ -1,4 +1,4 @@
-# $NetBSD: CHANGES-10.0,v 1.1.2.139 2023/10/14 07:07:10 martin Exp $
+# $NetBSD: CHANGES-10.0,v 1.1.2.140 2023/10/18 15:31:09 martin Exp $
 
 A complete list of changes from the initial NetBSD 10.0 branch on 2022-12-16
 until the 10.0 release:
@@ -12415,7 +12415,8 @@ sys/dev/pci/ixgbe/ixgbe_common.h		1.18
 sys/dev/pci/ixgbe/ixgbe_dcb.c			1.14,1.15
 sys/dev/pci/ixgbe/ixgbe_dcb_82598.c		1.13
 sys/dev/pci/ixgbe/ixgbe_type.h			1.59,1.60
-sys/dev/pci/ixgbe/ixgbe_x540.c			1.24,1.28
+sys/dev/pci/ixgbe/ixgbe_x540.c			1.24
+sys/dev/pci/ixgbe/ixgbe_x550.c			1.28
 sys/dev/pci/ixgbe/ixv.c1.187-1.189
 
 - Add 82599 LS support once again.
@@ -12509,3 +12510,105 @@ sys/dev/usb/if_urndis.c1.49
 	CDC union descriptor.
 	[abs, ticket #416]
 
+sys/dev/pci/if_ixl.c1.94,1.95
+
+	ixl(4): PR 57652: add ETHERCAP_VLAN_MTU support.
+	[yamaguchi, ticket #417]
+
+sys/arch/i386/stand/lib/biosdisk.c		1.59,1.60
+sys/dev/raidframe/rf_netbsdkintf.c		1.416
+sys/rump/librump/rumpkern/emul.c		1.200
+
+	raid(4): align the behavior of different boot methods.
+	[manu, ticket #418]
+
+sys/arch/arm/ti/ti_com.c			1.12
+
+	PR 57598: fix com ports on some arm boards.
+	[gutteridge, ticket #419]
+
+sys/dev/pci/ixgbe/ix_txrx.c			1.104
+sys/dev/pci/ixgbe/ixgbe.c			1.340-1.344
+sys/dev/pci/ixgbe/ixgbe.h			1.93
+sys/dev/pci/ixgbe/ixgbe_type.h			1.61
+sys/dev/pci/ixgbe/ixv.c 			1.190-1.192
+
+	- ixg(4): Print DEVICE_CAPS register.
+	- ixg(4): Fix a bug that the number of queues is unintentionally
+	  limited to a small number or wrong error message may be printed
+	  when two devices' number of MSI-X vectors are different.
+	- Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change
+	  all devices all queues default interrupt rate.
+	- Whitespace fixes.
+	[msaitoh, ticket #420]
+
+sys/dev/pci/if_wm.c1.790,1.791
+sys/dev/pci/if_wmvar.h1.51
+sys/dev/pci/pcidevs1.1497
+sys/dev/pci/pcidevs.h(regen)
+sys/dev/pci/pcidevs_data.h			(regen)
+
+	- Add new workaround for Tiger Lake and newer to avoid
+	  packet loss.
+	- Add I219{V,LM}({22,23}) devices (Raptor Lake).
+	[msaitoh, ticket #421]
+
+tests/sbin/ifconfig/t_capabilities.sh		1.2,1.3
+
+	Skip the ifconfig/t_capabilities test by default.
+	It modifies the interface configuration on the host.
+	[rin, ticket #422]
+
+sys/kern/subr_thmap.c1.14,1.15
+
+	thmap(9): PR 57666, PR 57208: fix allocation failure issues.
+	[riastradh, ticket #423]
+
+sys/ufs/ffs/ffs_vfsops.c			1.382
+
+	ffs_sync: PR 57606: avoid unlocked access to v_numoutput/v_dirtyblkhd.
+	[riastradh, ticket #424]
+
+sys/arch/x86/acpi/acpi_machdep.c		1.36
+sys/arch/x86/acpi/acpi_wakeup.c			1.56
+sys/arch/x86/include/genfb_machdep.h		1.6
+sys/arch/x86/pci/pci_machdep.c			1.96
+sys/arch/x86/x86/genfb_machdep.c		1.21
+sys/arch/x86/x86/hyperv.c			1.16
+
+	genfb(4): move some declarations to genfb_machdep.h.
+	[bouyer, ticket #425]
+
+sys/arch/xen/xenbus/xenbus_probe.c		1.60
+
+	xenbus: if dom0 support is not compiled in, panic with a usefull
+	message instead of waiting for an event which will never happen.
+	[bouyer, ticket #426]
+
+sys/arch/amd64/amd64/locore.S			1.224
+sys/arch/i386/i386/locore.S			1.197
+sys/arch/xen/include/hypervisor.h		1.58
+
+	Adjust for Xen's start_info_t changes.
+	[bouyer, ticket #427]
+
+sys/arch/amd64/conf/XEN3_DOM0			1.201
+sys/arch/i386/conf/XEN3PAE_DOM0			1.41
+sys/arch/x86/include/genfb_machdep.h		1.7
+sys/arch/x86/pci/pci_machdep.c			1.97
+sys/arch/x86/x86/consinit.c			1.37,1.38
+sys/arch/x86/x86/genfb_machdep.c		1.22
+sys/arch/xen/conf/files.xen			1.188,1.189
+sys/arch/xen/include/hypervisor.h		1.59
+sys/arch/xen/x86/autoconf.c			1.26
+sys/arch/xen/x86/consinit.c			1.18
+sys/arch/xen/x86/pvh_consinit.c			1.5,1.6
+sys/arch/xen/xen/genfb_xen.c			1.1
+sys/arch/xen/xen/genfb_xen.c			1.2
+sys/arch/xen/xen/xen_machdep.c			1.28
+sys/external/mit/xen-include-public/dist/xen/include/public/platform.h 1.2
+sys/external/mit/xen-include-public/dist/xen/include/public/xen.h 1.2
+
+	Xen: add genfb(4) support.
+	[bouyer, ticket #428]
+



CVS commit: [netbsd-10] src/doc

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:31:09 UTC 2023

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

Log Message:
Fix entry for ticket #407, note Tickets #417 - #428


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.139 -r1.1.2.140 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/arch/xen/xenbus

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:16:09 UTC 2023

Modified Files:
src/sys/arch/xen/xenbus [netbsd-10]: xenbus_probe.c

Log Message:
Pull up following revision(s) (requested by bouyer in ticket #426):

sys/arch/xen/xenbus/xenbus_probe.c: revision 1.60

xenbus: if dom0 support is not compiled in, panic with a usefull message
instead of waiting for an event which will never happen


To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.58.6.1 src/sys/arch/xen/xenbus/xenbus_probe.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/xen/xenbus/xenbus_probe.c
diff -u src/sys/arch/xen/xenbus/xenbus_probe.c:1.58 src/sys/arch/xen/xenbus/xenbus_probe.c:1.58.6.1
--- src/sys/arch/xen/xenbus/xenbus_probe.c:1.58	Sat Aug  7 16:19:08 2021
+++ src/sys/arch/xen/xenbus/xenbus_probe.c	Wed Oct 18 15:16:09 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: xenbus_probe.c,v 1.58 2021/08/07 16:19:08 thorpej Exp $ */
+/* $NetBSD: xenbus_probe.c,v 1.58.6.1 2023/10/18 15:16:09 martin Exp $ */
 /**
  * Talks to Xen Store to figure out what devices we have.
  *
@@ -29,7 +29,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: xenbus_probe.c,v 1.58 2021/08/07 16:19:08 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xenbus_probe.c,v 1.58.6.1 2023/10/18 15:16:09 martin Exp $");
 
 #if 0
 #define DPRINTK(fmt, args...) \
@@ -723,7 +723,7 @@ xenbus_probe_init(void *unused)
 
 		DELAY(1000);
 #else /* DOM0OPS */
-		kthread_exit(0); /* can't get a working xenstore in this case */
+		panic("dom0 support not compiled in");
 #endif /* DOM0OPS */
 	}
 



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:19:09 UTC 2023

Modified Files:
src/sys/arch/amd64/amd64 [netbsd-10]: locore.S
src/sys/arch/i386/i386 [netbsd-10]: locore.S
src/sys/arch/xen/include [netbsd-10]: hypervisor.h

Log Message:
Pull up following revision(s) (requested by bouyer in ticket #427):

sys/arch/xen/include/hypervisor.h: revision 1.58
sys/arch/i386/i386/locore.S: revision 1.197
sys/arch/amd64/amd64/locore.S: revision 1.224

Xen's start_info_t is larger than 512 bytes these days, so bump the copy
size to a whole PAGE_SIZE, and CTASSERT() that start_info_t is smaller.

Luckily we didn't use yet the parts skipped


To generate a diff of this commit:
cvs rdiff -u -r1.214.4.1 -r1.214.4.2 src/sys/arch/amd64/amd64/locore.S
cvs rdiff -u -r1.190.4.1 -r1.190.4.2 src/sys/arch/i386/i386/locore.S
cvs rdiff -u -r1.55.4.1 -r1.55.4.2 src/sys/arch/xen/include/hypervisor.h

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/arch/xen/xenbus

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:16:09 UTC 2023

Modified Files:
src/sys/arch/xen/xenbus [netbsd-10]: xenbus_probe.c

Log Message:
Pull up following revision(s) (requested by bouyer in ticket #426):

sys/arch/xen/xenbus/xenbus_probe.c: revision 1.60

xenbus: if dom0 support is not compiled in, panic with a usefull message
instead of waiting for an event which will never happen


To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.58.6.1 src/sys/arch/xen/xenbus/xenbus_probe.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/arch/x86

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:14:24 UTC 2023

Modified Files:
src/sys/arch/x86/acpi [netbsd-10]: acpi_machdep.c acpi_wakeup.c
src/sys/arch/x86/include [netbsd-10]: genfb_machdep.h
src/sys/arch/x86/pci [netbsd-10]: pci_machdep.c
src/sys/arch/x86/x86 [netbsd-10]: genfb_machdep.c hyperv.c

Log Message:
Pull up following revision(s) (requested by bouyer in ticket #425):

sys/arch/x86/pci/pci_machdep.c: revision 1.96
sys/arch/x86/acpi/acpi_machdep.c: revision 1.36
sys/arch/x86/x86/hyperv.c: revision 1.16
sys/arch/x86/x86/genfb_machdep.c: revision 1.21
sys/arch/x86/acpi/acpi_wakeup.c: revision 1.56
sys/arch/x86/include/genfb_machdep.h: revision 1.6

Declare
int acpi_md_vesa_modenum;
int acpi_md_vbios_reset;
struct vcons_screen x86_genfb_console_screen;

in genfb_machdep.h instead of locally as extern in various .c files.


To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.34.2.1 src/sys/arch/x86/acpi/acpi_machdep.c
cvs rdiff -u -r1.54 -r1.54.12.1 src/sys/arch/x86/acpi/acpi_wakeup.c
cvs rdiff -u -r1.5 -r1.5.18.1 src/sys/arch/x86/include/genfb_machdep.h
cvs rdiff -u -r1.93.4.1 -r1.93.4.2 src/sys/arch/x86/pci/pci_machdep.c
cvs rdiff -u -r1.19 -r1.19.4.1 src/sys/arch/x86/x86/genfb_machdep.c
cvs rdiff -u -r1.15 -r1.15.4.1 src/sys/arch/x86/x86/hyperv.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/x86/acpi/acpi_machdep.c
diff -u src/sys/arch/x86/acpi/acpi_machdep.c:1.34 src/sys/arch/x86/acpi/acpi_machdep.c:1.34.2.1
--- src/sys/arch/x86/acpi/acpi_machdep.c:1.34	Fri Oct 28 21:58:27 2022
+++ src/sys/arch/x86/acpi/acpi_machdep.c	Wed Oct 18 15:14:24 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: acpi_machdep.c,v 1.34 2022/10/28 21:58:27 riastradh Exp $ */
+/* $NetBSD: acpi_machdep.c,v 1.34.2.1 2023/10/18 15:14:24 martin Exp $ */
 
 /*
  * Copyright 2001 Wasabi Systems, Inc.
@@ -40,7 +40,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: acpi_machdep.c,v 1.34 2022/10/28 21:58:27 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: acpi_machdep.c,v 1.34.2.1 2023/10/18 15:14:24 martin Exp $");
 
 #include 
 #include 
@@ -72,6 +72,7 @@ __KERNEL_RCSID(0, "$NetBSD: acpi_machdep
 
 #include 
 #include 
+#include 
 
 #include "ioapic.h"
 
@@ -594,6 +595,8 @@ acpi_md_callback(struct acpi_softc *sc)
 }
 
 #ifndef XENPV
+int acpi_md_vbios_reset = 0;
+
 void
 device_acpi_register(device_t dev, void *aux)
 {
@@ -609,8 +612,6 @@ device_acpi_register(device_t dev, void 
 	device_is_isa = device_is_a(parent, "isa");
 
 	if (device_is_vga && (device_is_pci || device_is_isa)) {
-		extern int acpi_md_vbios_reset;
-
 		acpi_md_vbios_reset = VBIOS_RESET_DEFAULT;
 	}
 }

Index: src/sys/arch/x86/acpi/acpi_wakeup.c
diff -u src/sys/arch/x86/acpi/acpi_wakeup.c:1.54 src/sys/arch/x86/acpi/acpi_wakeup.c:1.54.12.1
--- src/sys/arch/x86/acpi/acpi_wakeup.c:1.54	Tue Jun  1 21:29:24 2021
+++ src/sys/arch/x86/acpi/acpi_wakeup.c	Wed Oct 18 15:14:24 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: acpi_wakeup.c,v 1.54 2021/06/01 21:29:24 riastradh Exp $	*/
+/*	$NetBSD: acpi_wakeup.c,v 1.54.12.1 2023/10/18 15:14:24 martin Exp $	*/
 
 /*-
  * Copyright (c) 2002, 2011 The NetBSD Foundation, Inc.
@@ -59,7 +59,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: acpi_wakeup.c,v 1.54 2021/06/01 21:29:24 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: acpi_wakeup.c,v 1.54.12.1 2023/10/18 15:14:24 martin Exp $");
 
 #include 
 #include 
@@ -98,6 +98,7 @@ __KERNEL_RCSID(0, "$NetBSD: acpi_wakeup.
 #include 
 #include 
 #include 
+#include 
 
 #include "opt_vga.h"
 
@@ -107,8 +108,6 @@ __KERNEL_RCSID(0, "$NetBSD: acpi_wakeup.
 static paddr_t acpi_wakeup_paddr = 3 * PAGE_SIZE;
 static vaddr_t acpi_wakeup_vaddr;
 
-int acpi_md_vbios_reset = 0; /* Referenced by dev/pci/vga_pci.c */
-int acpi_md_vesa_modenum = 0; /* Referenced by arch/x86/x86/genfb_machdep.c */
 static int acpi_md_beep_on_reset = 0;
 
 static int	acpi_md_s4bios(void);

Index: src/sys/arch/x86/include/genfb_machdep.h
diff -u src/sys/arch/x86/include/genfb_machdep.h:1.5 src/sys/arch/x86/include/genfb_machdep.h:1.5.18.1
--- src/sys/arch/x86/include/genfb_machdep.h:1.5	Thu Jan 28 01:57:31 2021
+++ src/sys/arch/x86/include/genfb_machdep.h	Wed Oct 18 15:14:24 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: genfb_machdep.h,v 1.5 2021/01/28 01:57:31 jmcneill Exp $ */
+/* $NetBSD: genfb_machdep.h,v 1.5.18.1 2023/10/18 15:14:24 martin Exp $ */
 
 /*-
  * Copyright (c) 2009 Jared D. McNeill 
@@ -34,4 +34,8 @@ int	x86_genfb_cnattach(void);
 void	x86_genfb_set_console_dev(device_t);
 void	x86_genfb_ddb_trap_callback(int);
 
+extern int acpi_md_vesa_modenum;
+extern int acpi_md_vbios_reset;
+extern struct vcons_screen x86_genfb_console_screen;
+
 #endif /* !_X86_GENFB_MACHDEP_H */

Index: src/sys/arch/x86/pci/pci_machdep.c
diff -u src/sys/arch/x86/pci/pci_machdep.c:1.93.4.1 src/sys/arch/x86/pci/pci_machdep.c:1.93.4.2
--- 

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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:14:24 UTC 2023

Modified Files:
src/sys/arch/x86/acpi [netbsd-10]: acpi_machdep.c acpi_wakeup.c
src/sys/arch/x86/include [netbsd-10]: genfb_machdep.h
src/sys/arch/x86/pci [netbsd-10]: pci_machdep.c
src/sys/arch/x86/x86 [netbsd-10]: genfb_machdep.c hyperv.c

Log Message:
Pull up following revision(s) (requested by bouyer in ticket #425):

sys/arch/x86/pci/pci_machdep.c: revision 1.96
sys/arch/x86/acpi/acpi_machdep.c: revision 1.36
sys/arch/x86/x86/hyperv.c: revision 1.16
sys/arch/x86/x86/genfb_machdep.c: revision 1.21
sys/arch/x86/acpi/acpi_wakeup.c: revision 1.56
sys/arch/x86/include/genfb_machdep.h: revision 1.6

Declare
int acpi_md_vesa_modenum;
int acpi_md_vbios_reset;
struct vcons_screen x86_genfb_console_screen;

in genfb_machdep.h instead of locally as extern in various .c files.


To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.34.2.1 src/sys/arch/x86/acpi/acpi_machdep.c
cvs rdiff -u -r1.54 -r1.54.12.1 src/sys/arch/x86/acpi/acpi_wakeup.c
cvs rdiff -u -r1.5 -r1.5.18.1 src/sys/arch/x86/include/genfb_machdep.h
cvs rdiff -u -r1.93.4.1 -r1.93.4.2 src/sys/arch/x86/pci/pci_machdep.c
cvs rdiff -u -r1.19 -r1.19.4.1 src/sys/arch/x86/x86/genfb_machdep.c
cvs rdiff -u -r1.15 -r1.15.4.1 src/sys/arch/x86/x86/hyperv.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/ufs/ffs

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:10:41 UTC 2023

Modified Files:
src/sys/ufs/ffs [netbsd-10]: ffs_vfsops.c

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

sys/ufs/ffs/ffs_vfsops.c: revision 1.382

ffs_sync: Avoid unlocked access to v_numoutput/v_dirtyblkhd.

Found by lockdoc.
PR kern/57606


To generate a diff of this commit:
cvs rdiff -u -r1.378.2.2 -r1.378.2.3 src/sys/ufs/ffs/ffs_vfsops.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/ufs/ffs

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:10:41 UTC 2023

Modified Files:
src/sys/ufs/ffs [netbsd-10]: ffs_vfsops.c

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

sys/ufs/ffs/ffs_vfsops.c: revision 1.382

ffs_sync: Avoid unlocked access to v_numoutput/v_dirtyblkhd.

Found by lockdoc.
PR kern/57606


To generate a diff of this commit:
cvs rdiff -u -r1.378.2.2 -r1.378.2.3 src/sys/ufs/ffs/ffs_vfsops.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/ufs/ffs/ffs_vfsops.c
diff -u src/sys/ufs/ffs/ffs_vfsops.c:1.378.2.2 src/sys/ufs/ffs/ffs_vfsops.c:1.378.2.3
--- src/sys/ufs/ffs/ffs_vfsops.c:1.378.2.2	Wed Jun 21 16:55:02 2023
+++ src/sys/ufs/ffs/ffs_vfsops.c	Wed Oct 18 15:10:41 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: ffs_vfsops.c,v 1.378.2.2 2023/06/21 16:55:02 martin Exp $	*/
+/*	$NetBSD: ffs_vfsops.c,v 1.378.2.3 2023/10/18 15:10:41 martin Exp $	*/
 
 /*-
  * Copyright (c) 2008, 2009 The NetBSD Foundation, Inc.
@@ -61,7 +61,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: ffs_vfsops.c,v 1.378.2.2 2023/06/21 16:55:02 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ffs_vfsops.c,v 1.378.2.3 2023/10/18 15:10:41 martin Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_ffs.h"
@@ -2019,14 +2019,25 @@ ffs_sync(struct mount *mp, int waitfor, 
 	/*
 	 * Force stale file system control information to be flushed.
 	 */
-	if (waitfor != MNT_LAZY && (ump->um_devvp->v_numoutput > 0 ||
-	!LIST_EMPTY(>um_devvp->v_dirtyblkhd))) {
-		vn_lock(ump->um_devvp, LK_EXCLUSIVE | LK_RETRY);
-		if ((error = VOP_FSYNC(ump->um_devvp, cred,
-		(waitfor == MNT_WAIT ? FSYNC_WAIT : 0) | FSYNC_NOLOG,
-		0, 0)) != 0)
-			allerror = error;
-		VOP_UNLOCK(ump->um_devvp);
+	if (waitfor != MNT_LAZY)  {
+		bool need_devvp_fsync;
+
+		mutex_enter(ump->um_devvp->v_interlock);
+		need_devvp_fsync = (ump->um_devvp->v_numoutput > 0 ||
+		!LIST_EMPTY(>um_devvp->v_dirtyblkhd));
+		mutex_exit(ump->um_devvp->v_interlock);
+		if (need_devvp_fsync) {
+			int flags = FSYNC_NOLOG;
+
+			if (waitfor == MNT_WAIT)
+flags |= FSYNC_WAIT;
+
+			vn_lock(ump->um_devvp, LK_EXCLUSIVE | LK_RETRY);
+			if ((error = VOP_FSYNC(ump->um_devvp, cred, flags, 0,
+0)) != 0)
+allerror = error;
+			VOP_UNLOCK(ump->um_devvp);
+		}
 	}
 #if defined(QUOTA) || defined(QUOTA2)
 	qsync(mp);



CVS commit: [netbsd-9] src/doc

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:08:41 UTC 2023

Modified Files:
src/doc [netbsd-9]: CHANGES-9.4

Log Message:
Tickets #1751 - #1755


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.110 -r1.1.2.111 src/doc/CHANGES-9.4

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-9.4
diff -u src/doc/CHANGES-9.4:1.1.2.110 src/doc/CHANGES-9.4:1.1.2.111
--- src/doc/CHANGES-9.4:1.1.2.110	Fri Oct 13 18:58:19 2023
+++ src/doc/CHANGES-9.4	Wed Oct 18 15:08:41 2023
@@ -1,4 +1,4 @@
-# $NetBSD: CHANGES-9.4,v 1.1.2.110 2023/10/13 18:58:19 martin Exp $
+# $NetBSD: CHANGES-9.4,v 1.1.2.111 2023/10/18 15:08:41 martin Exp $
 
 A complete list of changes from the NetBSD 9.3 release to the NetBSD 9.4
 release:
@@ -2291,3 +2291,62 @@ sys/dev/pci/pcidevs_data.h			(regen)
 	Add Pericom(Diodes) PCIe switches.
 	[msaitoh, ticket #1750]
 
+sys/arch/i386/stand/lib/biosdisk.c		1.59,1.60 (patch)
+sys/dev/raidframe/rf_netbsdkintf.c		1.377-1.379,1.383,1.385,1.392
+		1.402,1.403,1.416 (patch)
+sys/rump/librump/rumpkern/emul.c		1.200 (patch)
+
+	raid(4): align the behavior of different boot methods.
+	[manu, ticket #1751]
+
+external/cddl/osnet/sys/kern/misc.c		(apply patch)
+
+	solaris.kmod: restore thread_create symbol for compatibility
+	(after removal in pullup-9 #1711).
+	[riastradh, ticket #1752]
+
+sys/dev/pci/ixgbe/ix_txrx.c			1.103-1.104
+sys/dev/pci/ixgbe/ixgbe.c			1.334-1.338,
+		1.341-1.344 via patch
+sys/dev/pci/ixgbe/ixgbe.h			1.90-1.93
+sys/dev/pci/ixgbe/ixgbe_82599.c			1.31-1.32
+sys/dev/pci/ixgbe/ixgbe_api.c			1.29
+sys/dev/pci/ixgbe/ixgbe_bypass.h		1.5
+sys/dev/pci/ixgbe/ixgbe_common.c		1.46-1.47
+sys/dev/pci/ixgbe/ixgbe_common.h		1.18
+sys/dev/pci/ixgbe/ixgbe_dcb.c			1.14-1.15
+sys/dev/pci/ixgbe/ixgbe_dcb_82598.c		1.13
+sys/dev/pci/ixgbe/ixgbe_type.h			1.59-1.61
+sys/dev/pci/ixgbe/ixgbe_x540.c			1.24
+sys/dev/pci/ixgbe/ixgbe_x550.c			1.28
+sys/dev/pci/ixgbe/ixv.c1.187-1.192
+
+	- ixg(4): Add 82599 LS support once again.
+	- ixg(4): Filter out spurious link up indication more.
+	- ixg(4): Print DEVICE_CAPS register.
+	- ixg(4): Fix a bug that the number of queues is unintentionally
+	  limited to a small number or wrong error message may be printed
+	  when two devices' number of MSI-X vectors are different.
+	- Modify error message of wrong TX/RX descriptor size.
+	- Enable interrupt after setting IFF_RUNNING.
+	- Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change
+	  all devices all queues default interrupt rate.
+	- Cleanup the code.
+	[msaitoh, ticket #1753]
+
+sys/dev/pci/if_wm.c1.790,1.791
+sys/dev/pci/if_wmvar.h1.51
+sys/dev/pci/pcidevs1.1497
+sys/dev/pci/pcidevs.h(regen)
+sys/dev/pci/pcidevs_data.h			(regen)
+
+	- Add new workaround for Tiger Lake and newer to avoid
+	  packet loss.
+	- Add I219{V,LM}({22,23}) devices (Raptor Lake).
+	[msaitoh, ticket #1754]
+
+sys/kern/subr_thmap.c1.14,1.15
+
+	thmap(9): PR 57666, PR 57208: fix allocation failure issues.
+	[riastradh, ticket #1755]
+



CVS commit: [netbsd-9] src/doc

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:08:41 UTC 2023

Modified Files:
src/doc [netbsd-9]: CHANGES-9.4

Log Message:
Tickets #1751 - #1755


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.110 -r1.1.2.111 src/doc/CHANGES-9.4

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



CVS commit: [netbsd-9] src/sys/kern

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:07:06 UTC 2023

Modified Files:
src/sys/kern [netbsd-9]: subr_thmap.c

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

sys/kern/subr_thmap.c: revision 1.14
sys/kern/subr_thmap.c: revision 1.15

thmap(9): Test alloc failure, not THMAP_GETPTR failure.
THMAP_GETPTR may return nonnull even though alloc returned zero.

Note that this failure branch is not actually appropriate;
thmap_create should not fail.  We really need to pass KM_SLEEP
through in this call site even though there are other call sites for
which KM_NOSLEEP is appropriate.

Adapted from: https://github.com/rmind/thmap/pull/14
PR kern/57666
https://github.com/rmind/thmap/issues/13

thmap(9): Preallocate GC list storage for thmap_del.
thmap_del can't fail, and it is used in places in npf where sleeping
is forbidden, so it can't rely on allocating memory either.
Instead of having thmap_del allocate memory on the fly for each
object to defer freeing until thmap_gc, arrange to have thmap(9)
preallocate the same storage when allocating all the objects in the
first place, with a GC header.

This is suboptimal for memory usage, especially on insertion- and
lookup-heavy but deletion-light workloads, but it's not clear rmind's
alternative (https://github.com/rmind/thmap/tree/thmap_del_mem_fail)
is ready to use yet, so we'll go with this for correctness.
PR kern/57208

https://github.com/rmind/npf/issues/129


To generate a diff of this commit:
cvs rdiff -u -r1.5.6.1 -r1.5.6.2 src/sys/kern/subr_thmap.c

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



CVS commit: [netbsd-9] src/sys/kern

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:07:06 UTC 2023

Modified Files:
src/sys/kern [netbsd-9]: subr_thmap.c

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

sys/kern/subr_thmap.c: revision 1.14
sys/kern/subr_thmap.c: revision 1.15

thmap(9): Test alloc failure, not THMAP_GETPTR failure.
THMAP_GETPTR may return nonnull even though alloc returned zero.

Note that this failure branch is not actually appropriate;
thmap_create should not fail.  We really need to pass KM_SLEEP
through in this call site even though there are other call sites for
which KM_NOSLEEP is appropriate.

Adapted from: https://github.com/rmind/thmap/pull/14
PR kern/57666
https://github.com/rmind/thmap/issues/13

thmap(9): Preallocate GC list storage for thmap_del.
thmap_del can't fail, and it is used in places in npf where sleeping
is forbidden, so it can't rely on allocating memory either.
Instead of having thmap_del allocate memory on the fly for each
object to defer freeing until thmap_gc, arrange to have thmap(9)
preallocate the same storage when allocating all the objects in the
first place, with a GC header.

This is suboptimal for memory usage, especially on insertion- and
lookup-heavy but deletion-light workloads, but it's not clear rmind's
alternative (https://github.com/rmind/thmap/tree/thmap_del_mem_fail)
is ready to use yet, so we'll go with this for correctness.
PR kern/57208

https://github.com/rmind/npf/issues/129


To generate a diff of this commit:
cvs rdiff -u -r1.5.6.1 -r1.5.6.2 src/sys/kern/subr_thmap.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/kern/subr_thmap.c
diff -u src/sys/kern/subr_thmap.c:1.5.6.1 src/sys/kern/subr_thmap.c:1.5.6.2
--- src/sys/kern/subr_thmap.c:1.5.6.1	Mon May 25 17:19:37 2020
+++ src/sys/kern/subr_thmap.c	Wed Oct 18 15:07:06 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: subr_thmap.c,v 1.5.6.1 2020/05/25 17:19:37 martin Exp $	*/
+/*	$NetBSD: subr_thmap.c,v 1.5.6.2 2023/10/18 15:07:06 martin Exp $	*/
 
 /*-
  * Copyright (c) 2018 Mindaugas Rasiukevicius 
@@ -111,7 +111,7 @@
 #include "utils.h"
 #endif
 
-THMAP_RCSID("$NetBSD: subr_thmap.c,v 1.5.6.1 2020/05/25 17:19:37 martin Exp $");
+THMAP_RCSID("$NetBSD: subr_thmap.c,v 1.5.6.2 2023/10/18 15:07:06 martin Exp $");
 
 /*
  * NetBSD kernel wrappers
@@ -207,11 +207,17 @@ typedef struct {
 	uint32_t	hashval;	// current hash value
 } thmap_query_t;
 
-typedef struct {
-	uintptr_t	addr;
+union thmap_align {
+	void *		p;
+	uint64_t	v;
+};
+
+typedef struct thmap_gc thmap_gc_t;
+struct thmap_gc {
 	size_t		len;
-	void *		next;
-} thmap_gc_t;
+	thmap_gc_t *	next;
+	char		data[] __aligned(sizeof(union thmap_align));
+};
 
 #define	THMAP_ROOT_LEN	(sizeof(thmap_ptr_t) * ROOT_SIZE)
 
@@ -246,6 +252,34 @@ static const thmap_ops_t thmap_default_o
 	.free = free_wrapper
 };
 
+static uintptr_t
+gc_alloc(const thmap_t *thmap, size_t len)
+{
+	const size_t alloclen = offsetof(struct thmap_gc, data[len]);
+	const uintptr_t gcaddr = thmap->ops->alloc(alloclen);
+
+	if (!gcaddr)
+		return 0;
+
+	thmap_gc_t *const gc = THMAP_GETPTR(thmap, gcaddr);
+	gc->len = len;
+	return THMAP_GETOFF(thmap, >data[0]);
+}
+
+static void
+gc_free(const thmap_t *thmap, uintptr_t addr, size_t len)
+{
+	const size_t alloclen = offsetof(struct thmap_gc, data[len]);
+	char *const ptr = THMAP_GETPTR(thmap, addr);
+	thmap_gc_t *const gc = container_of(ptr, struct thmap_gc, data[0]);
+	const uintptr_t gcaddr = THMAP_GETOFF(thmap, gc);
+
+	KASSERTMSG(gc->len == len, "thmap=%p ops=%p addr=%p len=%zu"
+	" gc=%p gc->len=%zu",
+	thmap, thmap->ops, (void *)addr, len, gc, gc->len);
+	thmap->ops->free(gcaddr, alloclen);
+}
+
 /*
  * NODE LOCKING.
  */
@@ -361,7 +395,7 @@ node_create(thmap_t *thmap, thmap_inode_
 	thmap_inode_t *node;
 	uintptr_t p;
 
-	p = thmap->ops->alloc(THMAP_INODE_LEN);
+	p = gc_alloc(thmap, THMAP_INODE_LEN);
 	if (!p) {
 		return NULL;
 	}
@@ -422,7 +456,7 @@ leaf_create(const thmap_t *thmap, const 
 	thmap_leaf_t *leaf;
 	uintptr_t leaf_off, key_off;
 
-	leaf_off = thmap->ops->alloc(sizeof(thmap_leaf_t));
+	leaf_off = gc_alloc(thmap, sizeof(thmap_leaf_t));
 	if (!leaf_off) {
 		return NULL;
 	}
@@ -433,9 +467,9 @@ leaf_create(const thmap_t *thmap, const 
 		/*
 		 * Copy the key.
 		 */
-		key_off = thmap->ops->alloc(len);
+		key_off = gc_alloc(thmap, len);
 		if (!key_off) {
-			thmap->ops->free(leaf_off, sizeof(thmap_leaf_t));
+			gc_free(thmap, leaf_off, sizeof(thmap_leaf_t));
 			return NULL;
 		}
 		memcpy(THMAP_GETPTR(thmap, key_off), key, len);
@@ -453,9 +487,9 @@ static void
 leaf_free(const thmap_t *thmap, thmap_leaf_t *leaf)
 {
 	if ((thmap->flags & THMAP_NOCOPY) == 0) {
-		thmap->ops->free(leaf->key, leaf->len);
+		gc_free(thmap, leaf->key, leaf->len);
 	}
-	thmap->ops->free(THMAP_GETOFF(thmap, leaf), sizeof(thmap_leaf_t));
+	gc_free(thmap, THMAP_GETOFF(thmap, leaf), 

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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:03:12 UTC 2023

Modified Files:
src/sys/kern [netbsd-10]: subr_thmap.c

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

sys/kern/subr_thmap.c: revision 1.14
sys/kern/subr_thmap.c: revision 1.15

thmap(9): Test alloc failure, not THMAP_GETPTR failure.
THMAP_GETPTR may return nonnull even though alloc returned zero.

Note that this failure branch is not actually appropriate;
thmap_create should not fail.  We really need to pass KM_SLEEP
through in this call site even though there are other call sites for
which KM_NOSLEEP is appropriate.

Adapted from: https://github.com/rmind/thmap/pull/14
PR kern/57666
https://github.com/rmind/thmap/issues/13

thmap(9): Preallocate GC list storage for thmap_del.
thmap_del can't fail, and it is used in places in npf where sleeping
is forbidden, so it can't rely on allocating memory either.
Instead of having thmap_del allocate memory on the fly for each
object to defer freeing until thmap_gc, arrange to have thmap(9)
preallocate the same storage when allocating all the objects in the
first place, with a GC header.

This is suboptimal for memory usage, especially on insertion- and
lookup-heavy but deletion-light workloads, but it's not clear rmind's
alternative (https://github.com/rmind/thmap/tree/thmap_del_mem_fail)
is ready to use yet, so we'll go with this for correctness.
PR kern/57208

https://github.com/rmind/npf/issues/129


To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.12.4.1 src/sys/kern/subr_thmap.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/tests/sbin/ifconfig

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:48:44 UTC 2023

Modified Files:
src/tests/sbin/ifconfig [netbsd-10]: t_capabilities.sh

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

tests/sbin/ifconfig/t_capabilities.sh: revision 1.2
tests/sbin/ifconfig/t_capabilities.sh: revision 1.3

ifconfig/t_capabilities: Skip unless run_unsafe is configured to yes

The test modifies if_capabilities for all available interfaces.
This is not a behavior we expect for normal ATF runs.

Similar tests modifying living network configurations are already
skipped by default. This is the last one remained for ifconfig(8).
Also, I'm not sure whether this is a test for ifconfig(8).

ifconfig/t_capabilities: s/if_capabilities/if_capenable/ in message


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.1.6.1 src/tests/sbin/ifconfig/t_capabilities.sh

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

Modified files:

Index: src/tests/sbin/ifconfig/t_capabilities.sh
diff -u src/tests/sbin/ifconfig/t_capabilities.sh:1.1 src/tests/sbin/ifconfig/t_capabilities.sh:1.1.6.1
--- src/tests/sbin/ifconfig/t_capabilities.sh:1.1	Sat Jun 27 06:57:44 2020
+++ src/tests/sbin/ifconfig/t_capabilities.sh	Wed Oct 18 14:48:44 2023
@@ -1,4 +1,4 @@
-# $NetBSD: t_capabilities.sh,v 1.1 2020/06/27 06:57:44 jruoho Exp $
+# $NetBSD: t_capabilities.sh,v 1.1.6.1 2023/10/18 14:48:44 martin Exp $
 #
 # Copyright (c) 2020 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -111,6 +111,10 @@ basic_head() {
 
 basic_body() {
 
+	if ! [ $(atf_config_get "run_unsafe" "no") = "yes" ]; then
+		atf_skip "modify if_capenable for real interfaces"
+	fi
+
 	for i in $(ifconfig -l); do
 
 		c=$(ifconfig $i | grep "capabilities")



CVS commit: [netbsd-10] src/tests/sbin/ifconfig

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:48:44 UTC 2023

Modified Files:
src/tests/sbin/ifconfig [netbsd-10]: t_capabilities.sh

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

tests/sbin/ifconfig/t_capabilities.sh: revision 1.2
tests/sbin/ifconfig/t_capabilities.sh: revision 1.3

ifconfig/t_capabilities: Skip unless run_unsafe is configured to yes

The test modifies if_capabilities for all available interfaces.
This is not a behavior we expect for normal ATF runs.

Similar tests modifying living network configurations are already
skipped by default. This is the last one remained for ifconfig(8).
Also, I'm not sure whether this is a test for ifconfig(8).

ifconfig/t_capabilities: s/if_capabilities/if_capenable/ in message


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.1.6.1 src/tests/sbin/ifconfig/t_capabilities.sh

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/kern

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 15:03:12 UTC 2023

Modified Files:
src/sys/kern [netbsd-10]: subr_thmap.c

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

sys/kern/subr_thmap.c: revision 1.14
sys/kern/subr_thmap.c: revision 1.15

thmap(9): Test alloc failure, not THMAP_GETPTR failure.
THMAP_GETPTR may return nonnull even though alloc returned zero.

Note that this failure branch is not actually appropriate;
thmap_create should not fail.  We really need to pass KM_SLEEP
through in this call site even though there are other call sites for
which KM_NOSLEEP is appropriate.

Adapted from: https://github.com/rmind/thmap/pull/14
PR kern/57666
https://github.com/rmind/thmap/issues/13

thmap(9): Preallocate GC list storage for thmap_del.
thmap_del can't fail, and it is used in places in npf where sleeping
is forbidden, so it can't rely on allocating memory either.
Instead of having thmap_del allocate memory on the fly for each
object to defer freeing until thmap_gc, arrange to have thmap(9)
preallocate the same storage when allocating all the objects in the
first place, with a GC header.

This is suboptimal for memory usage, especially on insertion- and
lookup-heavy but deletion-light workloads, but it's not clear rmind's
alternative (https://github.com/rmind/thmap/tree/thmap_del_mem_fail)
is ready to use yet, so we'll go with this for correctness.
PR kern/57208

https://github.com/rmind/npf/issues/129


To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.12.4.1 src/sys/kern/subr_thmap.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/kern/subr_thmap.c
diff -u src/sys/kern/subr_thmap.c:1.12 src/sys/kern/subr_thmap.c:1.12.4.1
--- src/sys/kern/subr_thmap.c:1.12	Sat Apr  9 23:51:57 2022
+++ src/sys/kern/subr_thmap.c	Wed Oct 18 15:03:12 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: subr_thmap.c,v 1.12 2022/04/09 23:51:57 riastradh Exp $	*/
+/*	$NetBSD: subr_thmap.c,v 1.12.4.1 2023/10/18 15:03:12 martin Exp $	*/
 
 /*-
  * Copyright (c) 2018 Mindaugas Rasiukevicius 
@@ -112,7 +112,7 @@
 #include "utils.h"
 #endif
 
-THMAP_RCSID("$NetBSD: subr_thmap.c,v 1.12 2022/04/09 23:51:57 riastradh Exp $");
+THMAP_RCSID("$NetBSD: subr_thmap.c,v 1.12.4.1 2023/10/18 15:03:12 martin Exp $");
 
 #include 
 
@@ -212,11 +212,17 @@ typedef struct {
 	uint32_t	hashval;	// current hash value
 } thmap_query_t;
 
-typedef struct {
-	uintptr_t	addr;
+union thmap_align {
+	void *		p;
+	uint64_t	v;
+};
+
+typedef struct thmap_gc thmap_gc_t;
+struct thmap_gc {
 	size_t		len;
-	void *		next;
-} thmap_gc_t;
+	thmap_gc_t *	next;
+	char		data[] __aligned(sizeof(union thmap_align));
+};
 
 #define	THMAP_ROOT_LEN	(sizeof(thmap_ptr_t) * ROOT_SIZE)
 
@@ -252,6 +258,34 @@ static const thmap_ops_t thmap_default_o
 	.free = free_wrapper
 };
 
+static uintptr_t
+gc_alloc(const thmap_t *thmap, size_t len)
+{
+	const size_t alloclen = offsetof(struct thmap_gc, data[len]);
+	const uintptr_t gcaddr = thmap->ops->alloc(alloclen);
+
+	if (!gcaddr)
+		return 0;
+
+	thmap_gc_t *const gc = THMAP_GETPTR(thmap, gcaddr);
+	gc->len = len;
+	return THMAP_GETOFF(thmap, >data[0]);
+}
+
+static void
+gc_free(const thmap_t *thmap, uintptr_t addr, size_t len)
+{
+	const size_t alloclen = offsetof(struct thmap_gc, data[len]);
+	char *const ptr = THMAP_GETPTR(thmap, addr);
+	thmap_gc_t *const gc = container_of(ptr, struct thmap_gc, data[0]);
+	const uintptr_t gcaddr = THMAP_GETOFF(thmap, gc);
+
+	KASSERTMSG(gc->len == len, "thmap=%p ops=%p addr=%p len=%zu"
+	" gc=%p gc->len=%zu",
+	thmap, thmap->ops, (void *)addr, len, gc, gc->len);
+	thmap->ops->free(gcaddr, alloclen);
+}
+
 /*
  * NODE LOCKING.
  */
@@ -395,7 +429,7 @@ node_create(thmap_t *thmap, thmap_inode_
 	thmap_inode_t *node;
 	uintptr_t p;
 
-	p = thmap->ops->alloc(THMAP_INODE_LEN);
+	p = gc_alloc(thmap, THMAP_INODE_LEN);
 	if (!p) {
 		return NULL;
 	}
@@ -456,7 +490,7 @@ leaf_create(const thmap_t *thmap, const 
 	thmap_leaf_t *leaf;
 	uintptr_t leaf_off, key_off;
 
-	leaf_off = thmap->ops->alloc(sizeof(thmap_leaf_t));
+	leaf_off = gc_alloc(thmap, sizeof(thmap_leaf_t));
 	if (!leaf_off) {
 		return NULL;
 	}
@@ -467,9 +501,9 @@ leaf_create(const thmap_t *thmap, const 
 		/*
 		 * Copy the key.
 		 */
-		key_off = thmap->ops->alloc(len);
+		key_off = gc_alloc(thmap, len);
 		if (!key_off) {
-			thmap->ops->free(leaf_off, sizeof(thmap_leaf_t));
+			gc_free(thmap, leaf_off, sizeof(thmap_leaf_t));
 			return NULL;
 		}
 		memcpy(THMAP_GETPTR(thmap, key_off), key, len);
@@ -487,9 +521,9 @@ static void
 leaf_free(const thmap_t *thmap, thmap_leaf_t *leaf)
 {
 	if ((thmap->flags & THMAP_NOCOPY) == 0) {
-		thmap->ops->free(leaf->key, leaf->len);
+		gc_free(thmap, leaf->key, leaf->len);
 	}
-	thmap->ops->free(THMAP_GETOFF(thmap, leaf), sizeof(thmap_leaf_t));
+	gc_free(thmap, THMAP_GETOFF(thmap, leaf), sizeof(thmap_leaf_t));
 }
 
 

CVS commit: [netbsd-8] src/doc

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:46:35 UTC 2023

Modified Files:
src/doc [netbsd-8]: CHANGES-8.3

Log Message:
Tickets #1914 and #1915


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.203 -r1.1.2.204 src/doc/CHANGES-8.3

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



CVS commit: [netbsd-8] src/doc

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:46:35 UTC 2023

Modified Files:
src/doc [netbsd-8]: CHANGES-8.3

Log Message:
Tickets #1914 and #1915


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.203 -r1.1.2.204 src/doc/CHANGES-8.3

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-8.3
diff -u src/doc/CHANGES-8.3:1.1.2.203 src/doc/CHANGES-8.3:1.1.2.204
--- src/doc/CHANGES-8.3:1.1.2.203	Fri Oct 13 18:59:15 2023
+++ src/doc/CHANGES-8.3	Wed Oct 18 14:46:35 2023
@@ -1,4 +1,4 @@
-$NetBSD: CHANGES-8.3,v 1.1.2.203 2023/10/13 18:59:15 martin Exp $
+$NetBSD: CHANGES-8.3,v 1.1.2.204 2023/10/18 14:46:35 martin Exp $
 
 A complete list of changes from the NetBSD 8.2 release to the NetBSD 8.3
 release:
@@ -4023,3 +4023,44 @@ sys/dev/pci/pcidevs_data.h			(regen)
 	Add Pericom(Diodes) PCIe switches.
 	[msaitoh, ticket #1913]
 
+sys/dev/pci/ixgbe/ix_txrx.c			1.103-1.104
+sys/dev/pci/ixgbe/ixgbe.c			1.334-1.338,
+		1.341-1.344 via patch
+sys/dev/pci/ixgbe/ixgbe.h			1.90-1.93
+sys/dev/pci/ixgbe/ixgbe_82599.c			1.31-1.32
+sys/dev/pci/ixgbe/ixgbe_api.c			1.29
+sys/dev/pci/ixgbe/ixgbe_bypass.h		1.5
+sys/dev/pci/ixgbe/ixgbe_common.c		1.46-1.47
+sys/dev/pci/ixgbe/ixgbe_common.h		1.18
+sys/dev/pci/ixgbe/ixgbe_dcb.c			1.14-1.15
+sys/dev/pci/ixgbe/ixgbe_dcb_82598.c		1.13
+sys/dev/pci/ixgbe/ixgbe_type.h			1.59-1.61
+sys/dev/pci/ixgbe/ixgbe_x540.c			1.24
+sys/dev/pci/ixgbe/ixgbe_x550.c			1.28
+sys/dev/pci/ixgbe/ixv.c 			1.187-1.192 via patch
+
+	- ixg(4): Add 82599 LS support once again.
+	- ixg(4): Filter out spurious link up indication more.
+	- ixg(4): Print DEVICE_CAPS register.
+	- ixg(4): Fix a bug that the number of queues is unintentionally
+	  limited to a small number or wrong error message may be printed
+	  when two devices' number of MSI-X vectors are different.
+	- Modify error message of wrong TX/RX descriptor size.
+	- Enable interrupt after setting IFF_RUNNING.
+	- Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change
+	  all devices all queues default interrupt rate.
+	- Cleanup the code.
+	[msaitoh, ticket #1914]
+
+sys/dev/pci/pcidevs			1.1497
+sys/dev/pci/pcidevs.h			regen
+sys/dev/pci/pcidevs_data.h		regen
+sys/dev/pci/if_wm.c			1.689,1.790-1.791 via patch
+sys/dev/pci/if_wmreg.h			1.120 via patch
+sys/dev/pci/if_wmvar.h			1.51
+
+	- Use 12K for packet buffer for jumbo frame on PCH2 and newer.
+	- Add new workaround for Tiger Lake and newer to avoid packet loss.
+	- Add I219{V,LM}({22,23}) devices (Raptor Lake).
+	[msaitoh, ticket #1915]
+



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:44:00 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-8]: pcidevs.h pcidevs_data.h

Log Message:
regen (for ticket #1915)


To generate a diff of this commit:
cvs rdiff -u -r1.1281.2.29 -r1.1281.2.30 src/sys/dev/pci/pcidevs.h
cvs rdiff -u -r1.1280.2.29 -r1.1280.2.30 src/sys/dev/pci/pcidevs_data.h

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



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:41:55 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-8]: if_wm.c if_wmreg.h if_wmvar.h pcidevs

Log Message:
Pull up the following, requested by msaitoh in ticket #1915:

sys/dev/pci/pcidevs 1.1497
sys/dev/pci/if_wm.c 1.689,1.790-1.791 via patch
sys/dev/pci/if_wmreg.h  1.120 via patch
sys/dev/pci/if_wmvar.h  1.51

- Use 12K for packet buffer for jumbo frame on PCH2 and newer.
- Add new workaround for Tiger Lake and newer to avoid packet loss.
- Add I219{V,LM}({22,23}) devices (Raptor Lake).


To generate a diff of this commit:
cvs rdiff -u -r1.508.4.52 -r1.508.4.53 src/sys/dev/pci/if_wm.c
cvs rdiff -u -r1.98.6.17 -r1.98.6.18 src/sys/dev/pci/if_wmreg.h
cvs rdiff -u -r1.33.6.11 -r1.33.6.12 src/sys/dev/pci/if_wmvar.h
cvs rdiff -u -r1.1289.2.29 -r1.1289.2.30 src/sys/dev/pci/pcidevs

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_wm.c
diff -u src/sys/dev/pci/if_wm.c:1.508.4.52 src/sys/dev/pci/if_wm.c:1.508.4.53
--- src/sys/dev/pci/if_wm.c:1.508.4.52	Sun Oct  8 15:31:17 2023
+++ src/sys/dev/pci/if_wm.c	Wed Oct 18 14:41:54 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_wm.c,v 1.508.4.52 2023/10/08 15:31:17 martin Exp $	*/
+/*	$NetBSD: if_wm.c,v 1.508.4.53 2023/10/18 14:41:54 martin Exp $	*/
 
 /*
  * Copyright (c) 2001, 2002, 2003, 2004 Wasabi Systems, Inc.
@@ -82,7 +82,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.508.4.52 2023/10/08 15:31:17 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.508.4.53 2023/10/18 14:41:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -1713,25 +1713,31 @@ static const struct wm_product {
 	  WM_T_PCH_SPT,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM13,
 	  "I219 LM (13) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM14,
 	  "I219 LM (14) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM15,
 	  "I219 LM (15) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM16,
 	  "I219 LM (16) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM17,
 	  "I219 LM (17) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM18,
 	  "I219 LM (18) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM19,
 	  "I219 LM (19) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM22,
+	  "I219 LM (22) Ethernet Connection",
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP(RPL) */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM23,
+	  "I219 LM (23) Ethernet Connection",
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP(RPL) */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V,
 	  "I219 V Ethernet Connection",
 	  WM_T_PCH_SPT,		WMP_F_COPPER },
@@ -1767,25 +1773,31 @@ static const struct wm_product {
 	  WM_T_PCH_SPT,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V13,
 	  "I219 V (13) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V14,
 	  "I219 V (14) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V15,
 	  "I219 V (15) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V16,
 	  "I219 V (16) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V17,
 	  "I219 V (17) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V18,
 	  "I219 V (18) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V19,
 	  "I219 V (19) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V22,
+	  "I219 V (22) Ethernet Connection",
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP(RPL) */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V23,
+	  "I219 V (23) Ethernet Connection",
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP(RPL) */
 	

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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:35:17 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-9]: pcidevs.h pcidevs_data.h

Log Message:
Regen for ticket #1915


To generate a diff of this commit:
cvs rdiff -u -r1.1371.2.20 -r1.1371.2.21 src/sys/dev/pci/pcidevs.h
cvs rdiff -u -r1.1370.2.20 -r1.1370.2.21 src/sys/dev/pci/pcidevs_data.h

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



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:41:55 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-8]: if_wm.c if_wmreg.h if_wmvar.h pcidevs

Log Message:
Pull up the following, requested by msaitoh in ticket #1915:

sys/dev/pci/pcidevs 1.1497
sys/dev/pci/if_wm.c 1.689,1.790-1.791 via patch
sys/dev/pci/if_wmreg.h  1.120 via patch
sys/dev/pci/if_wmvar.h  1.51

- Use 12K for packet buffer for jumbo frame on PCH2 and newer.
- Add new workaround for Tiger Lake and newer to avoid packet loss.
- Add I219{V,LM}({22,23}) devices (Raptor Lake).


To generate a diff of this commit:
cvs rdiff -u -r1.508.4.52 -r1.508.4.53 src/sys/dev/pci/if_wm.c
cvs rdiff -u -r1.98.6.17 -r1.98.6.18 src/sys/dev/pci/if_wmreg.h
cvs rdiff -u -r1.33.6.11 -r1.33.6.12 src/sys/dev/pci/if_wmvar.h
cvs rdiff -u -r1.1289.2.29 -r1.1289.2.30 src/sys/dev/pci/pcidevs

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-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:33:29 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-10]: pcidevs.h pcidevs_data.h

Log Message:
Regen for ticket #421


To generate a diff of this commit:
cvs rdiff -u -r1.1452.2.9 -r1.1452.2.10 src/sys/dev/pci/pcidevs.h
cvs rdiff -u -r1.1451.2.9 -r1.1451.2.10 src/sys/dev/pci/pcidevs_data.h

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



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:29:19 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-9]: if_wm.c if_wmvar.h pcidevs

Log Message:
Pull up following revision(s) (requested by msaitoh in ticket #1754):

sys/dev/pci/pcidevs: revision 1.1497
sys/dev/pci/if_wm.c: revision 1.790
sys/dev/pci/if_wm.c: revision 1.791
sys/dev/pci/if_wmvar.h: revision 1.51

pcidevs: Add Intel I219{V,LM}({22,23})

wm(4): Add a new workaround for Tiger Lake and newer.
 - Define new WM_T_PCH_TGP and use it for Tiger Lake and newer.
   Note that we don't define WM_T_PCH_ADP because we have no any
   Alder Lake specific workaround yet.
 - Add new workaround for Tiger Lake (and newer) in wm_init_locked()
   to avoid packet loss.

wm(4): Add I219{V,LM}({22,23}) devices (Raptor Lake).


To generate a diff of this commit:
cvs rdiff -u -r1.645.2.18 -r1.645.2.19 src/sys/dev/pci/if_wm.c
cvs rdiff -u -r1.44.4.6 -r1.44.4.7 src/sys/dev/pci/if_wmvar.h
cvs rdiff -u -r1.1383.2.20 -r1.1383.2.21 src/sys/dev/pci/pcidevs

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



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:29:19 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-9]: if_wm.c if_wmvar.h pcidevs

Log Message:
Pull up following revision(s) (requested by msaitoh in ticket #1754):

sys/dev/pci/pcidevs: revision 1.1497
sys/dev/pci/if_wm.c: revision 1.790
sys/dev/pci/if_wm.c: revision 1.791
sys/dev/pci/if_wmvar.h: revision 1.51

pcidevs: Add Intel I219{V,LM}({22,23})

wm(4): Add a new workaround for Tiger Lake and newer.
 - Define new WM_T_PCH_TGP and use it for Tiger Lake and newer.
   Note that we don't define WM_T_PCH_ADP because we have no any
   Alder Lake specific workaround yet.
 - Add new workaround for Tiger Lake (and newer) in wm_init_locked()
   to avoid packet loss.

wm(4): Add I219{V,LM}({22,23}) devices (Raptor Lake).


To generate a diff of this commit:
cvs rdiff -u -r1.645.2.18 -r1.645.2.19 src/sys/dev/pci/if_wm.c
cvs rdiff -u -r1.44.4.6 -r1.44.4.7 src/sys/dev/pci/if_wmvar.h
cvs rdiff -u -r1.1383.2.20 -r1.1383.2.21 src/sys/dev/pci/pcidevs

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_wm.c
diff -u src/sys/dev/pci/if_wm.c:1.645.2.18 src/sys/dev/pci/if_wm.c:1.645.2.19
--- src/sys/dev/pci/if_wm.c:1.645.2.18	Sun Oct  8 15:28:49 2023
+++ src/sys/dev/pci/if_wm.c	Wed Oct 18 14:29:18 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_wm.c,v 1.645.2.18 2023/10/08 15:28:49 martin Exp $	*/
+/*	$NetBSD: if_wm.c,v 1.645.2.19 2023/10/18 14:29:18 martin Exp $	*/
 
 /*
  * Copyright (c) 2001, 2002, 2003, 2004 Wasabi Systems, Inc.
@@ -82,7 +82,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.645.2.18 2023/10/08 15:28:49 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.645.2.19 2023/10/18 14:29:18 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -1742,25 +1742,31 @@ static const struct wm_product {
 	  WM_T_PCH_SPT,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM13,
 	  "I219 LM (13) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM14,
 	  "I219 LM (14) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM15,
 	  "I219 LM (15) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM16,
 	  "I219 LM (16) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM17,
 	  "I219 LM (17) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM18,
 	  "I219 LM (18) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM19,
 	  "I219 LM (19) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM22,
+	  "I219 LM (22) Ethernet Connection",
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP(RPL) */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM23,
+	  "I219 LM (23) Ethernet Connection",
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP(RPL) */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V,
 	  "I219 V Ethernet Connection",
 	  WM_T_PCH_SPT,		WMP_F_COPPER },
@@ -1796,25 +1802,31 @@ static const struct wm_product {
 	  WM_T_PCH_SPT,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V13,
 	  "I219 V (13) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V14,
 	  "I219 V (14) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V15,
 	  "I219 V (15) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V16,
 	  "I219 V (16) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V17,
 	  "I219 V (17) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V18,
 	  "I219 V (18) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V19,
 	  "I219 V (19) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V22,
+	  "I219 V (22) Ethernet Connection",
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP(RPL) */
+	{ PCI_VENDOR_INTEL,	

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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:27:38 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-10]: if_wm.c if_wmvar.h pcidevs

Log Message:
Pull up following revision(s) (requested by msaitoh in ticket #421):

sys/dev/pci/pcidevs: revision 1.1497
sys/dev/pci/if_wm.c: revision 1.790
sys/dev/pci/if_wm.c: revision 1.791
sys/dev/pci/if_wmvar.h: revision 1.51

pcidevs: Add Intel I219{V,LM}({22,23})

wm(4): Add a new workaround for Tiger Lake and newer.
 - Define new WM_T_PCH_TGP and use it for Tiger Lake and newer.
   Note that we don't define WM_T_PCH_ADP because we have no any
   Alder Lake specific workaround yet.
 - Add new workaround for Tiger Lake (and newer) in wm_init_locked()
   to avoid packet loss.

wm(4): Add I219{V,LM}({22,23}) devices (Raptor Lake).


To generate a diff of this commit:
cvs rdiff -u -r1.767.2.4 -r1.767.2.5 src/sys/dev/pci/if_wm.c
cvs rdiff -u -r1.48.4.2 -r1.48.4.3 src/sys/dev/pci/if_wmvar.h
cvs rdiff -u -r1.1471.2.8 -r1.1471.2.9 src/sys/dev/pci/pcidevs

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_wm.c
diff -u src/sys/dev/pci/if_wm.c:1.767.2.4 src/sys/dev/pci/if_wm.c:1.767.2.5
--- src/sys/dev/pci/if_wm.c:1.767.2.4	Sun Oct  8 15:23:26 2023
+++ src/sys/dev/pci/if_wm.c	Wed Oct 18 14:27:38 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_wm.c,v 1.767.2.4 2023/10/08 15:23:26 martin Exp $	*/
+/*	$NetBSD: if_wm.c,v 1.767.2.5 2023/10/18 14:27:38 martin Exp $	*/
 
 /*
  * Copyright (c) 2001, 2002, 2003, 2004 Wasabi Systems, Inc.
@@ -82,7 +82,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.767.2.4 2023/10/08 15:23:26 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.767.2.5 2023/10/18 14:27:38 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_if_wm.h"
@@ -1733,25 +1733,31 @@ static const struct wm_product {
 	  WM_T_PCH_SPT,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM13,
 	  "I219 LM (13) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM14,
 	  "I219 LM (14) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM15,
 	  "I219 LM (15) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM16,
 	  "I219 LM (16) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM17,
 	  "I219 LM (17) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM18,
 	  "I219 LM (18) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM19,
 	  "I219 LM (19) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM22,
+	  "I219 LM (22) Ethernet Connection",
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP(RPL) */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_LM23,
+	  "I219 LM (23) Ethernet Connection",
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP(RPL) */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V,
 	  "I219 V Ethernet Connection",
 	  WM_T_PCH_SPT,		WMP_F_COPPER },
@@ -1787,25 +1793,31 @@ static const struct wm_product {
 	  WM_T_PCH_SPT,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V13,
 	  "I219 V (13) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V14,
 	  "I219 V (14) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V15,
 	  "I219 V (15) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V16,
 	  "I219 V (16) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V17,
 	  "I219 V (17) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V18,
 	  "I219 V (18) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V19,
 	  "I219 V (19) Ethernet Connection",
-	  WM_T_PCH_CNP,		WMP_F_COPPER },
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* MTP */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V22,
+	  "I219 V (22) Ethernet Connection",
+	  WM_T_PCH_TGP,		WMP_F_COPPER }, /* ADP(RPL) */
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_I219_V23,
+	  "I219 V 

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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:27:38 UTC 2023

Modified Files:
src/sys/dev/pci [netbsd-10]: if_wm.c if_wmvar.h pcidevs

Log Message:
Pull up following revision(s) (requested by msaitoh in ticket #421):

sys/dev/pci/pcidevs: revision 1.1497
sys/dev/pci/if_wm.c: revision 1.790
sys/dev/pci/if_wm.c: revision 1.791
sys/dev/pci/if_wmvar.h: revision 1.51

pcidevs: Add Intel I219{V,LM}({22,23})

wm(4): Add a new workaround for Tiger Lake and newer.
 - Define new WM_T_PCH_TGP and use it for Tiger Lake and newer.
   Note that we don't define WM_T_PCH_ADP because we have no any
   Alder Lake specific workaround yet.
 - Add new workaround for Tiger Lake (and newer) in wm_init_locked()
   to avoid packet loss.

wm(4): Add I219{V,LM}({22,23}) devices (Raptor Lake).


To generate a diff of this commit:
cvs rdiff -u -r1.767.2.4 -r1.767.2.5 src/sys/dev/pci/if_wm.c
cvs rdiff -u -r1.48.4.2 -r1.48.4.3 src/sys/dev/pci/if_wmvar.h
cvs rdiff -u -r1.1471.2.8 -r1.1471.2.9 src/sys/dev/pci/pcidevs

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



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:23:15 UTC 2023

Modified Files:
src/sys/dev/pci/ixgbe [netbsd-8]: ix_txrx.c ixgbe.c ixgbe.h
ixgbe_82599.c ixgbe_api.c ixgbe_bypass.h ixgbe_common.c
ixgbe_common.h ixgbe_dcb.c ixgbe_dcb_82598.c ixgbe_type.h
ixgbe_x540.c ixgbe_x550.c ixv.c

Log Message:
Pull up the following, requested by msaitoh in ticket #1914:

sys/dev/pci/ixgbe/ix_txrx.c 1.103-1.104
sys/dev/pci/ixgbe/ixgbe.c   1.334-1.338,
1.341-1.344 via patch
sys/dev/pci/ixgbe/ixgbe.h   1.90-1.93
sys/dev/pci/ixgbe/ixgbe_82599.c 1.31-1.32
sys/dev/pci/ixgbe/ixgbe_api.c   1.29
sys/dev/pci/ixgbe/ixgbe_bypass.h1.5
sys/dev/pci/ixgbe/ixgbe_common.c1.46-1.47
sys/dev/pci/ixgbe/ixgbe_common.h1.18
sys/dev/pci/ixgbe/ixgbe_dcb.c   1.14-1.15
sys/dev/pci/ixgbe/ixgbe_dcb_82598.c 1.13
sys/dev/pci/ixgbe/ixgbe_type.h  1.59-1.61
sys/dev/pci/ixgbe/ixgbe_x540.c  1.24
sys/dev/pci/ixgbe/ixgbe_x550.c  1.28
sys/dev/pci/ixgbe/ixv.c 1.187-1.192 via patch

- ixg(4): Add 82599 LS support once again.
- ixg(4): Filter out spurious link up indication more.
- ixg(4): Print DEVICE_CAPS register.
- ixg(4): Fix a bug that the number of queues is unintentionally
  limited to a small number or wrong error message may be printed
  when two devices' number of MSI-X vectors are different.
- Modify error message of wrong TX/RX descriptor size.
- Enable interrupt after setting IFF_RUNNING.
- Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change
  all devices all queues default interrupt rate.
- Cleanup the code.


To generate a diff of this commit:
cvs rdiff -u -r1.24.2.29 -r1.24.2.30 src/sys/dev/pci/ixgbe/ix_txrx.c
cvs rdiff -u -r1.88.2.57 -r1.88.2.58 src/sys/dev/pci/ixgbe/ixgbe.c
cvs rdiff -u -r1.24.6.28 -r1.24.6.29 src/sys/dev/pci/ixgbe/ixgbe.h
cvs rdiff -u -r1.14.8.10 -r1.14.8.11 src/sys/dev/pci/ixgbe/ixgbe_82599.c
cvs rdiff -u -r1.15.8.9 -r1.15.8.10 src/sys/dev/pci/ixgbe/ixgbe_api.c
cvs rdiff -u -r1.1.4.5 -r1.1.4.6 src/sys/dev/pci/ixgbe/ixgbe_bypass.h
cvs rdiff -u -r1.13.2.15 -r1.13.2.16 src/sys/dev/pci/ixgbe/ixgbe_common.c
cvs rdiff -u -r1.7.8.7 -r1.7.8.8 src/sys/dev/pci/ixgbe/ixgbe_common.h
cvs rdiff -u -r1.4.8.4 -r1.4.8.5 src/sys/dev/pci/ixgbe/ixgbe_dcb.c
cvs rdiff -u -r1.3.8.4 -r1.3.8.5 src/sys/dev/pci/ixgbe/ixgbe_dcb_82598.c
cvs rdiff -u -r1.22.2.20 -r1.22.2.21 src/sys/dev/pci/ixgbe/ixgbe_type.h
cvs rdiff -u -r1.9.6.8 -r1.9.6.9 src/sys/dev/pci/ixgbe/ixgbe_x540.c
cvs rdiff -u -r1.5.6.13 -r1.5.6.14 src/sys/dev/pci/ixgbe/ixgbe_x550.c
cvs rdiff -u -r1.56.2.42 -r1.56.2.43 src/sys/dev/pci/ixgbe/ixv.c

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



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:23:15 UTC 2023

Modified Files:
src/sys/dev/pci/ixgbe [netbsd-8]: ix_txrx.c ixgbe.c ixgbe.h
ixgbe_82599.c ixgbe_api.c ixgbe_bypass.h ixgbe_common.c
ixgbe_common.h ixgbe_dcb.c ixgbe_dcb_82598.c ixgbe_type.h
ixgbe_x540.c ixgbe_x550.c ixv.c

Log Message:
Pull up the following, requested by msaitoh in ticket #1914:

sys/dev/pci/ixgbe/ix_txrx.c 1.103-1.104
sys/dev/pci/ixgbe/ixgbe.c   1.334-1.338,
1.341-1.344 via patch
sys/dev/pci/ixgbe/ixgbe.h   1.90-1.93
sys/dev/pci/ixgbe/ixgbe_82599.c 1.31-1.32
sys/dev/pci/ixgbe/ixgbe_api.c   1.29
sys/dev/pci/ixgbe/ixgbe_bypass.h1.5
sys/dev/pci/ixgbe/ixgbe_common.c1.46-1.47
sys/dev/pci/ixgbe/ixgbe_common.h1.18
sys/dev/pci/ixgbe/ixgbe_dcb.c   1.14-1.15
sys/dev/pci/ixgbe/ixgbe_dcb_82598.c 1.13
sys/dev/pci/ixgbe/ixgbe_type.h  1.59-1.61
sys/dev/pci/ixgbe/ixgbe_x540.c  1.24
sys/dev/pci/ixgbe/ixgbe_x550.c  1.28
sys/dev/pci/ixgbe/ixv.c 1.187-1.192 via patch

- ixg(4): Add 82599 LS support once again.
- ixg(4): Filter out spurious link up indication more.
- ixg(4): Print DEVICE_CAPS register.
- ixg(4): Fix a bug that the number of queues is unintentionally
  limited to a small number or wrong error message may be printed
  when two devices' number of MSI-X vectors are different.
- Modify error message of wrong TX/RX descriptor size.
- Enable interrupt after setting IFF_RUNNING.
- Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change
  all devices all queues default interrupt rate.
- Cleanup the code.


To generate a diff of this commit:
cvs rdiff -u -r1.24.2.29 -r1.24.2.30 src/sys/dev/pci/ixgbe/ix_txrx.c
cvs rdiff -u -r1.88.2.57 -r1.88.2.58 src/sys/dev/pci/ixgbe/ixgbe.c
cvs rdiff -u -r1.24.6.28 -r1.24.6.29 src/sys/dev/pci/ixgbe/ixgbe.h
cvs rdiff -u -r1.14.8.10 -r1.14.8.11 src/sys/dev/pci/ixgbe/ixgbe_82599.c
cvs rdiff -u -r1.15.8.9 -r1.15.8.10 src/sys/dev/pci/ixgbe/ixgbe_api.c
cvs rdiff -u -r1.1.4.5 -r1.1.4.6 src/sys/dev/pci/ixgbe/ixgbe_bypass.h
cvs rdiff -u -r1.13.2.15 -r1.13.2.16 src/sys/dev/pci/ixgbe/ixgbe_common.c
cvs rdiff -u -r1.7.8.7 -r1.7.8.8 src/sys/dev/pci/ixgbe/ixgbe_common.h
cvs rdiff -u -r1.4.8.4 -r1.4.8.5 src/sys/dev/pci/ixgbe/ixgbe_dcb.c
cvs rdiff -u -r1.3.8.4 -r1.3.8.5 src/sys/dev/pci/ixgbe/ixgbe_dcb_82598.c
cvs rdiff -u -r1.22.2.20 -r1.22.2.21 src/sys/dev/pci/ixgbe/ixgbe_type.h
cvs rdiff -u -r1.9.6.8 -r1.9.6.9 src/sys/dev/pci/ixgbe/ixgbe_x540.c
cvs rdiff -u -r1.5.6.13 -r1.5.6.14 src/sys/dev/pci/ixgbe/ixgbe_x550.c
cvs rdiff -u -r1.56.2.42 -r1.56.2.43 src/sys/dev/pci/ixgbe/ixv.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/ixgbe/ix_txrx.c
diff -u src/sys/dev/pci/ixgbe/ix_txrx.c:1.24.2.29 src/sys/dev/pci/ixgbe/ix_txrx.c:1.24.2.30
--- src/sys/dev/pci/ixgbe/ix_txrx.c:1.24.2.29	Fri Oct 13 18:32:38 2023
+++ src/sys/dev/pci/ixgbe/ix_txrx.c	Wed Oct 18 14:23:15 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ix_txrx.c,v 1.24.2.29 2023/10/13 18:32:38 martin Exp $ */
+/* $NetBSD: ix_txrx.c,v 1.24.2.30 2023/10/18 14:23:15 martin Exp $ */
 
 /**
 
@@ -64,7 +64,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: ix_txrx.c,v 1.24.2.29 2023/10/13 18:32:38 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ix_txrx.c,v 1.24.2.30 2023/10/18 14:23:15 martin Exp $");
 
 #include "opt_inet.h"
 #include "opt_inet6.h"
@@ -846,7 +846,6 @@ ixgbe_tx_ctx_setup(struct tx_ring *txr, 
 	u8   ipproto = 0;
 	char *l3d;
 
-
 	/* First check if TSO is to be used */
 	if (mp->m_pkthdr.csum_flags & (M_CSUM_TSOv4 | M_CSUM_TSOv6)) {
 		int rv = ixgbe_tso_setup(txr, mp, cmd_type_len, olinfo_status);
@@ -1282,9 +1281,9 @@ ixgbe_rsc_count(union ixgbe_adv_rx_desc 
 static void
 ixgbe_setup_hw_rsc(struct rx_ring *rxr)
 {
-	struct	ixgbe_softc *sc = rxr->sc;
-	struct	ixgbe_hw *hw = >hw;
-	u32  rscctrl, rdrxctl;
+	struct ixgbe_softc *sc = rxr->sc;
+	struct ixgbe_hw	*hw = >hw;
+	u32		rscctrl, rdrxctl;
 
 	/* If turning LRO/RSC off we need to disable it */
 	if ((sc->ifp->if_capenable & IFCAP_LRO) == 0) {
@@ -1746,9 +1745,9 @@ ixgbe_rx_input(struct rx_ring *rxr, stru
 (CSUM_DATA_VALID | CSUM_PSEUDO_HDR)) {
 /*
  * Send to the stack if:
- **  - LRO not enabled, or
- **  - no LRO resources, or
- **  - lro enqueue fails
+ *  - LRO not enabled, or
+

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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:05:28 UTC 2023

Modified Files:
src/sys/dev/pci/ixgbe [netbsd-9]: ix_txrx.c ixgbe.c ixgbe.h
ixgbe_82599.c ixgbe_api.c ixgbe_bypass.h ixgbe_common.c
ixgbe_common.h ixgbe_dcb.c ixgbe_dcb_82598.c ixgbe_type.h
ixgbe_x540.c ixgbe_x550.c ixv.c

Log Message:
Pull up the following, requested by msaitoh in ticket #1753:

sys/dev/pci/ixgbe/ix_txrx.c 1.103-1.104
sys/dev/pci/ixgbe/ixgbe.c   1.334-1.338,
1.341-1.344 via patch
sys/dev/pci/ixgbe/ixgbe.h   1.90-1.93
sys/dev/pci/ixgbe/ixgbe_82599.c 1.31-1.32
sys/dev/pci/ixgbe/ixgbe_api.c   1.29
sys/dev/pci/ixgbe/ixgbe_bypass.h1.5
sys/dev/pci/ixgbe/ixgbe_common.c1.46-1.47
sys/dev/pci/ixgbe/ixgbe_common.h1.18
sys/dev/pci/ixgbe/ixgbe_dcb.c   1.14-1.15
sys/dev/pci/ixgbe/ixgbe_dcb_82598.c 1.13
sys/dev/pci/ixgbe/ixgbe_type.h  1.59-1.61
sys/dev/pci/ixgbe/ixgbe_x540.c  1.24
sys/dev/pci/ixgbe/ixgbe_x550.c  1.28
sys/dev/pci/ixgbe/ixv.c 1.187-1.192

- ixg(4): Add 82599 LS support once again.
- ixg(4): Filter out spurious link up indication more.
- ixg(4): Print DEVICE_CAPS register.
- ixg(4): Fix a bug that the number of queues is unintentionally
  limited to a small number or wrong error message may be printed
  when two devices' number of MSI-X vectors are different.
- Modify error message of wrong TX/RX descriptor size.
- Enable interrupt after setting IFF_RUNNING.
- Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change
  all devices all queues default interrupt rate.
- Cleanup the code.


To generate a diff of this commit:
cvs rdiff -u -r1.54.2.13 -r1.54.2.14 src/sys/dev/pci/ixgbe/ix_txrx.c
cvs rdiff -u -r1.199.2.28 -r1.199.2.29 src/sys/dev/pci/ixgbe/ixgbe.c
cvs rdiff -u -r1.56.2.11 -r1.56.2.12 src/sys/dev/pci/ixgbe/ixgbe.h
cvs rdiff -u -r1.21.4.5 -r1.21.4.6 src/sys/dev/pci/ixgbe/ixgbe_82599.c
cvs rdiff -u -r1.23.2.4 -r1.23.2.5 src/sys/dev/pci/ixgbe/ixgbe_api.c
cvs rdiff -u -r1.1.14.3 -r1.1.14.4 src/sys/dev/pci/ixgbe/ixgbe_bypass.h
cvs rdiff -u -r1.25.2.8 -r1.25.2.9 src/sys/dev/pci/ixgbe/ixgbe_common.c
cvs rdiff -u -r1.14.2.2 -r1.14.2.3 src/sys/dev/pci/ixgbe/ixgbe_common.h
cvs rdiff -u -r1.9.4.2 -r1.9.4.3 src/sys/dev/pci/ixgbe/ixgbe_dcb.c
cvs rdiff -u -r1.7.8.2 -r1.7.8.3 src/sys/dev/pci/ixgbe/ixgbe_dcb_82598.c
cvs rdiff -u -r1.41.2.10 -r1.41.2.11 src/sys/dev/pci/ixgbe/ixgbe_type.h
cvs rdiff -u -r1.16.8.4 -r1.16.8.5 src/sys/dev/pci/ixgbe/ixgbe_x540.c
cvs rdiff -u -r1.15.2.7 -r1.15.2.8 src/sys/dev/pci/ixgbe/ixgbe_x550.c
cvs rdiff -u -r1.125.2.23 -r1.125.2.24 src/sys/dev/pci/ixgbe/ixv.c

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



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 14:05:28 UTC 2023

Modified Files:
src/sys/dev/pci/ixgbe [netbsd-9]: ix_txrx.c ixgbe.c ixgbe.h
ixgbe_82599.c ixgbe_api.c ixgbe_bypass.h ixgbe_common.c
ixgbe_common.h ixgbe_dcb.c ixgbe_dcb_82598.c ixgbe_type.h
ixgbe_x540.c ixgbe_x550.c ixv.c

Log Message:
Pull up the following, requested by msaitoh in ticket #1753:

sys/dev/pci/ixgbe/ix_txrx.c 1.103-1.104
sys/dev/pci/ixgbe/ixgbe.c   1.334-1.338,
1.341-1.344 via patch
sys/dev/pci/ixgbe/ixgbe.h   1.90-1.93
sys/dev/pci/ixgbe/ixgbe_82599.c 1.31-1.32
sys/dev/pci/ixgbe/ixgbe_api.c   1.29
sys/dev/pci/ixgbe/ixgbe_bypass.h1.5
sys/dev/pci/ixgbe/ixgbe_common.c1.46-1.47
sys/dev/pci/ixgbe/ixgbe_common.h1.18
sys/dev/pci/ixgbe/ixgbe_dcb.c   1.14-1.15
sys/dev/pci/ixgbe/ixgbe_dcb_82598.c 1.13
sys/dev/pci/ixgbe/ixgbe_type.h  1.59-1.61
sys/dev/pci/ixgbe/ixgbe_x540.c  1.24
sys/dev/pci/ixgbe/ixgbe_x550.c  1.28
sys/dev/pci/ixgbe/ixv.c 1.187-1.192

- ixg(4): Add 82599 LS support once again.
- ixg(4): Filter out spurious link up indication more.
- ixg(4): Print DEVICE_CAPS register.
- ixg(4): Fix a bug that the number of queues is unintentionally
  limited to a small number or wrong error message may be printed
  when two devices' number of MSI-X vectors are different.
- Modify error message of wrong TX/RX descriptor size.
- Enable interrupt after setting IFF_RUNNING.
- Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change
  all devices all queues default interrupt rate.
- Cleanup the code.


To generate a diff of this commit:
cvs rdiff -u -r1.54.2.13 -r1.54.2.14 src/sys/dev/pci/ixgbe/ix_txrx.c
cvs rdiff -u -r1.199.2.28 -r1.199.2.29 src/sys/dev/pci/ixgbe/ixgbe.c
cvs rdiff -u -r1.56.2.11 -r1.56.2.12 src/sys/dev/pci/ixgbe/ixgbe.h
cvs rdiff -u -r1.21.4.5 -r1.21.4.6 src/sys/dev/pci/ixgbe/ixgbe_82599.c
cvs rdiff -u -r1.23.2.4 -r1.23.2.5 src/sys/dev/pci/ixgbe/ixgbe_api.c
cvs rdiff -u -r1.1.14.3 -r1.1.14.4 src/sys/dev/pci/ixgbe/ixgbe_bypass.h
cvs rdiff -u -r1.25.2.8 -r1.25.2.9 src/sys/dev/pci/ixgbe/ixgbe_common.c
cvs rdiff -u -r1.14.2.2 -r1.14.2.3 src/sys/dev/pci/ixgbe/ixgbe_common.h
cvs rdiff -u -r1.9.4.2 -r1.9.4.3 src/sys/dev/pci/ixgbe/ixgbe_dcb.c
cvs rdiff -u -r1.7.8.2 -r1.7.8.3 src/sys/dev/pci/ixgbe/ixgbe_dcb_82598.c
cvs rdiff -u -r1.41.2.10 -r1.41.2.11 src/sys/dev/pci/ixgbe/ixgbe_type.h
cvs rdiff -u -r1.16.8.4 -r1.16.8.5 src/sys/dev/pci/ixgbe/ixgbe_x540.c
cvs rdiff -u -r1.15.2.7 -r1.15.2.8 src/sys/dev/pci/ixgbe/ixgbe_x550.c
cvs rdiff -u -r1.125.2.23 -r1.125.2.24 src/sys/dev/pci/ixgbe/ixv.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/ixgbe/ix_txrx.c
diff -u src/sys/dev/pci/ixgbe/ix_txrx.c:1.54.2.13 src/sys/dev/pci/ixgbe/ix_txrx.c:1.54.2.14
--- src/sys/dev/pci/ixgbe/ix_txrx.c:1.54.2.13	Fri Oct 13 18:20:30 2023
+++ src/sys/dev/pci/ixgbe/ix_txrx.c	Wed Oct 18 14:05:27 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ix_txrx.c,v 1.54.2.13 2023/10/13 18:20:30 martin Exp $ */
+/* $NetBSD: ix_txrx.c,v 1.54.2.14 2023/10/18 14:05:27 martin Exp $ */
 
 /**
 
@@ -64,7 +64,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: ix_txrx.c,v 1.54.2.13 2023/10/13 18:20:30 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ix_txrx.c,v 1.54.2.14 2023/10/18 14:05:27 martin Exp $");
 
 #include "opt_inet.h"
 #include "opt_inet6.h"
@@ -846,7 +846,6 @@ ixgbe_tx_ctx_setup(struct tx_ring *txr, 
 	u8   ipproto = 0;
 	char *l3d;
 
-
 	/* First check if TSO is to be used */
 	if (mp->m_pkthdr.csum_flags & (M_CSUM_TSOv4 | M_CSUM_TSOv6)) {
 		int rv = ixgbe_tso_setup(txr, mp, cmd_type_len, olinfo_status);
@@ -1282,9 +1281,9 @@ ixgbe_rsc_count(union ixgbe_adv_rx_desc 
 static void
 ixgbe_setup_hw_rsc(struct rx_ring *rxr)
 {
-	struct	ixgbe_softc *sc = rxr->sc;
-	struct	ixgbe_hw *hw = >hw;
-	u32  rscctrl, rdrxctl;
+	struct ixgbe_softc *sc = rxr->sc;
+	struct ixgbe_hw	*hw = >hw;
+	u32		rscctrl, rdrxctl;
 
 	/* If turning LRO/RSC off we need to disable it */
 	if ((sc->ifp->if_capenable & IFCAP_LRO) == 0) {
@@ -1746,9 +1745,9 @@ ixgbe_rx_input(struct rx_ring *rxr, stru
 (CSUM_DATA_VALID | CSUM_PSEUDO_HDR)) {
 /*
  * Send to the stack if:
- **  - LRO not enabled, or
- **  - no LRO resources, or
- **  - lro enqueue fails
+ *  - LRO not enabled, or
+ 

CVS commit: src/usr.sbin/postinstall

2023-10-18 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Wed Oct 18 13:10:34 UTC 2023

Modified Files:
src/usr.sbin/postinstall: postinstall.in

Log Message:
postinstall(8): Use /usr/sbin/certctl.

Obviates need to have /usr/sbin in PATH when running this.

XXX pullup-10


To generate a diff of this commit:
cvs rdiff -u -r1.56 -r1.57 src/usr.sbin/postinstall/postinstall.in

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



CVS commit: src/usr.sbin/postinstall

2023-10-18 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Wed Oct 18 13:10:34 UTC 2023

Modified Files:
src/usr.sbin/postinstall: postinstall.in

Log Message:
postinstall(8): Use /usr/sbin/certctl.

Obviates need to have /usr/sbin in PATH when running this.

XXX pullup-10


To generate a diff of this commit:
cvs rdiff -u -r1.56 -r1.57 src/usr.sbin/postinstall/postinstall.in

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

Modified files:

Index: src/usr.sbin/postinstall/postinstall.in
diff -u src/usr.sbin/postinstall/postinstall.in:1.56 src/usr.sbin/postinstall/postinstall.in:1.57
--- src/usr.sbin/postinstall/postinstall.in:1.56	Wed Sep  6 13:38:54 2023
+++ src/usr.sbin/postinstall/postinstall.in	Wed Oct 18 13:10:34 2023
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# $NetBSD: postinstall.in,v 1.56 2023/09/06 13:38:54 riastradh Exp $
+# $NetBSD: postinstall.in,v 1.57 2023/10/18 13:10:34 riastradh Exp $
 #
 # Copyright (c) 2002-2022 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -1763,7 +1763,7 @@ do_opensslcertsrehash()
 	check)	# Create a scratch rehash for comparison.
 		mtreekeys="type,link"
 		scratchdir="${SCRATCHDIR}/opensslcerts"
-		certctl -c "$scratchdir" rehash || return $?
+		/usr/sbin/certctl -c "$scratchdir" rehash || return $?
 
 		# This will create ${scratchdir}/.certctl unless the
 		# configuration is manual.  If the configuration is
@@ -1782,7 +1782,7 @@ do_opensslcertsrehash()
 		# that we report a failure if /etc/openssl/certs
 		# appears to be managed manually, but `manual' was not
 		# specified in /etc/openssl/certs.conf.
-		certctl -n rehash || return $?
+		/usr/sbin/certctl -n rehash || return $?
 
 		# Compare the trees with mtree(8).  Inconveniently,
 		# mtree returns status zero even if there are missing
@@ -1810,7 +1810,7 @@ do_opensslcertsrehash()
 			return 1
 			;;
 		esac
-		certctl rehash
+		/usr/sbin/certctl rehash
 		;;
 	*)	err 3 "USAGE: do_opensslcerts fix|check"
 		;;



CVS commit: [netbsd-9] src/external/cddl/osnet/sys/kern

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 12:16:40 UTC 2023

Modified Files:
src/external/cddl/osnet/sys/kern [netbsd-9]: misc.c

Log Message:
Apply patch, requested by riastradh in ticket #1752:

external/cddl/osnet/sys/kern/misc.c (apply patch)

Restore thread_create symbol for compatibility (after removal in
pullup-9 #1711).


To generate a diff of this commit:
cvs rdiff -u -r1.5.4.2 -r1.5.4.3 src/external/cddl/osnet/sys/kern/misc.c

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

Modified files:

Index: src/external/cddl/osnet/sys/kern/misc.c
diff -u src/external/cddl/osnet/sys/kern/misc.c:1.5.4.2 src/external/cddl/osnet/sys/kern/misc.c:1.5.4.3
--- src/external/cddl/osnet/sys/kern/misc.c:1.5.4.2	Wed Aug  9 17:25:00 2023
+++ src/external/cddl/osnet/sys/kern/misc.c	Wed Oct 18 12:16:40 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: misc.c,v 1.5.4.2 2023/08/09 17:25:00 martin Exp $	*/
+/*	$NetBSD: misc.c,v 1.5.4.3 2023/10/18 12:16:40 martin Exp $	*/
 
 /*-
  * Copyright (c) 2009 The NetBSD Foundation, Inc.
@@ -93,6 +93,18 @@ vn_is_readonly(vnode_t *vp)
 	return (vp->v_mount->mnt_flag & MNT_RDONLY);
 }
 
+#undef thread_create
+kthread_t *thread_create(void *, size_t, void (*)(void *), void *, size_t,
+proc_t *, int, pri_t);
+kthread_t *
+thread_create(void *stk, size_t stksize, void (*proc)(), void *arg,
+size_t len, proc_t *pp, int state, pri_t pri)
+{
+
+	return solaris__thread_create(stk, stksize, proc, arg, len, pp, state,
+	pri, "zfs");
+}
+
 kthread_t *
 solaris__thread_create(void * stk, size_t stksize, void (*proc)(), void *arg,
 size_t len, proc_t *pp, int state, pri_t pri, const char *name)



CVS commit: [netbsd-9] src/external/cddl/osnet/sys/kern

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 12:16:40 UTC 2023

Modified Files:
src/external/cddl/osnet/sys/kern [netbsd-9]: misc.c

Log Message:
Apply patch, requested by riastradh in ticket #1752:

external/cddl/osnet/sys/kern/misc.c (apply patch)

Restore thread_create symbol for compatibility (after removal in
pullup-9 #1711).


To generate a diff of this commit:
cvs rdiff -u -r1.5.4.2 -r1.5.4.3 src/external/cddl/osnet/sys/kern/misc.c

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



CVS commit: [netbsd-9] src/sys

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 12:11:53 UTC 2023

Modified Files:
src/sys/arch/i386/stand/lib [netbsd-9]: biosdisk.c
src/sys/dev/raidframe [netbsd-9]: rf_netbsdkintf.c
src/sys/rump/librump/rumpkern [netbsd-9]: emul.c

Log Message:
Pull up following revision(s) (requested by manu in ticket #1751):

sys/dev/raidframe/rf_netbsdkintf.c: revision 1.383
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.385
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.402
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.403
sys/arch/i386/stand/lib/biosdisk.c: revision 1.59
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.377
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.378
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.379
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.392
sys/rump/librump/rumpkern/emul.c: revision 1.200
sys/arch/i386/stand/lib/biosdisk.c: revision 1.60
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.416
(all via patch)

Get >sc_dksc only when we know 'rsc' is not NULL. This was actually
harmless because we didn't use the pointer then.

Gcc -Os on landisk is not smart enough to follow the conditional
initialization and warns, unconditionaly initialize dksc at declaration
with a XXX gcc comment.

Improve wording in comments in raid_dumpblock().

in many device attach paths, allocate memory with M_WAITOK instead of M_NOWAIT
and remove code to handle failures that can no longer happen.

Nix trailing whitespace.

if raidframe sets booted_device, log a debug message about it.
merge two debug lines in auto-root selection.
convert non-config-handled "DEBUG_ROOT" to aprint_debug().
now it's possible to get boot-time info about raidframe root
device selection with simple "boot -x".

Align the behavior of different boot methods in RAIDframe

We enforce the documented and paritally implemented behavior when
looking for the kernel in RAID 1 sets without a partition name given.

We search for:
- A GPT partition with bootme attribute set
- A FFS or LFS patititon
- The first partition

Fix root search in RAID 1 sets

We use the wedge information given by bootstrap, where the kernel was
found. This requires src/sys/arch/i386/stand/i386/lib/biosdisk.c 1.59
to work in all cases.

Fix build with -DNO_GPT


To generate a diff of this commit:
cvs rdiff -u -r1.49.6.4 -r1.49.6.5 src/sys/arch/i386/stand/lib/biosdisk.c
cvs rdiff -u -r1.376.4.5 -r1.376.4.6 src/sys/dev/raidframe/rf_netbsdkintf.c
cvs rdiff -u -r1.191 -r1.191.2.1 src/sys/rump/librump/rumpkern/emul.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/i386/stand/lib/biosdisk.c
diff -u src/sys/arch/i386/stand/lib/biosdisk.c:1.49.6.4 src/sys/arch/i386/stand/lib/biosdisk.c:1.49.6.5
--- src/sys/arch/i386/stand/lib/biosdisk.c:1.49.6.4	Tue Dec 17 13:01:39 2019
+++ src/sys/arch/i386/stand/lib/biosdisk.c	Wed Oct 18 12:11:53 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: biosdisk.c,v 1.49.6.4 2019/12/17 13:01:39 martin Exp $	*/
+/*	$NetBSD: biosdisk.c,v 1.49.6.5 2023/10/18 12:11:53 martin Exp $	*/
 
 /*
  * Copyright (c) 1996, 1998
@@ -105,6 +105,7 @@
 struct biosdisk {
 	struct biosdisk_ll ll;
 	daddr_t boff;
+	daddr_t size;
 	charbuf[BIOSDISK_BUFSIZE];
 #if !defined(NO_DISKLABEL) || !defined(NO_GPT)
 	struct biosdisk_partition part[BIOSDISKNPART];
@@ -326,7 +327,6 @@ guid_is_equal(const struct uuid *a, cons
 	return (memcmp(a, b, sizeof(*a)) == 0 ? true : false);
 }
 
-#ifndef NO_GPT
 static void
 part_name_utf8(const uint16_t *utf16_src, size_t utf16_srclen,
 	   char *utf8_dst, size_t utf8_dstlen)
@@ -349,7 +349,6 @@ part_name_utf8(const uint16_t *utf16_src
 
 	return;
 }
-#endif
 
 static int
 check_gpt(struct biosdisk *d, daddr_t rf_offset, daddr_t sector)
@@ -665,6 +664,7 @@ read_label(struct biosdisk *d, daddr_t o
 	dflt_lbl.d_npartitions = 8;
 
 	d->boff = 0;
+	d->size = 0;
 
 	if (d->ll.type != BIOSDISK_TYPE_HD)
 		/* No label on floppy and CD */
@@ -1206,7 +1206,7 @@ add_biosdisk_bootinfo(void)
 #endif
 
 #ifndef NO_GPT
-static daddr_t
+static void
 raidframe_part_offset(struct biosdisk *d, int part)
 {
 	struct biosdisk raidframe;
@@ -1219,8 +1219,10 @@ raidframe_part_offset(struct biosdisk *d
 
 	rf_offset = d->part[part].offset + RF_PROTECTED_SECTORS;
 	rf_size = d->part[part].size;
-	if (read_gpt(, rf_offset, rf_size) != 0)
-		return RF_PROTECTED_SECTORS;
+	if (read_gpt(, rf_offset, rf_size) != 0) {
+		d->boff += RF_PROTECTED_SECTORS;
+		return;
+	}
 
 	candidate = 0;
 	for (i = 0; i < BIOSDISKNPART; i++) {
@@ -1229,12 +1231,20 @@ raidframe_part_offset(struct biosdisk *d
 		if (raidframe.part[i].fstype == FS_UNUSED)
 			continue;
 #ifndef NO_GPT
-		if (raidframe.part[i].attr & GPT_ENT_ATTR_BOOTME)
+		if (raidframe.part[i].attr & GPT_ENT_ATTR_BOOTME) {
 			candidate = i;
+			break;
+		}
 #endif

CVS commit: [netbsd-9] src/sys

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 12:11:53 UTC 2023

Modified Files:
src/sys/arch/i386/stand/lib [netbsd-9]: biosdisk.c
src/sys/dev/raidframe [netbsd-9]: rf_netbsdkintf.c
src/sys/rump/librump/rumpkern [netbsd-9]: emul.c

Log Message:
Pull up following revision(s) (requested by manu in ticket #1751):

sys/dev/raidframe/rf_netbsdkintf.c: revision 1.383
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.385
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.402
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.403
sys/arch/i386/stand/lib/biosdisk.c: revision 1.59
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.377
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.378
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.379
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.392
sys/rump/librump/rumpkern/emul.c: revision 1.200
sys/arch/i386/stand/lib/biosdisk.c: revision 1.60
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.416
(all via patch)

Get >sc_dksc only when we know 'rsc' is not NULL. This was actually
harmless because we didn't use the pointer then.

Gcc -Os on landisk is not smart enough to follow the conditional
initialization and warns, unconditionaly initialize dksc at declaration
with a XXX gcc comment.

Improve wording in comments in raid_dumpblock().

in many device attach paths, allocate memory with M_WAITOK instead of M_NOWAIT
and remove code to handle failures that can no longer happen.

Nix trailing whitespace.

if raidframe sets booted_device, log a debug message about it.
merge two debug lines in auto-root selection.
convert non-config-handled "DEBUG_ROOT" to aprint_debug().
now it's possible to get boot-time info about raidframe root
device selection with simple "boot -x".

Align the behavior of different boot methods in RAIDframe

We enforce the documented and paritally implemented behavior when
looking for the kernel in RAID 1 sets without a partition name given.

We search for:
- A GPT partition with bootme attribute set
- A FFS or LFS patititon
- The first partition

Fix root search in RAID 1 sets

We use the wedge information given by bootstrap, where the kernel was
found. This requires src/sys/arch/i386/stand/i386/lib/biosdisk.c 1.59
to work in all cases.

Fix build with -DNO_GPT


To generate a diff of this commit:
cvs rdiff -u -r1.49.6.4 -r1.49.6.5 src/sys/arch/i386/stand/lib/biosdisk.c
cvs rdiff -u -r1.376.4.5 -r1.376.4.6 src/sys/dev/raidframe/rf_netbsdkintf.c
cvs rdiff -u -r1.191 -r1.191.2.1 src/sys/rump/librump/rumpkern/emul.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/ixgbe

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 11:53:22 UTC 2023

Modified Files:
src/sys/dev/pci/ixgbe [netbsd-10]: ix_txrx.c ixgbe.c ixgbe.h
ixgbe_type.h ixv.c

Log Message:
Pull up following revision(s) (requested by msaitoh in ticket #420):

sys/dev/pci/ixgbe/ixgbe.c: revision 1.340
sys/dev/pci/ixgbe/ixgbe.c: revision 1.341
sys/dev/pci/ixgbe/ixgbe.c: revision 1.342
sys/dev/pci/ixgbe/ixgbe.c: revision 1.343
sys/dev/pci/ixgbe/ixgbe.c: revision 1.344
sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.61
sys/dev/pci/ixgbe/ix_txrx.c: revision 1.104
sys/dev/pci/ixgbe/ixv.c: revision 1.190
sys/dev/pci/ixgbe/ixv.c: revision 1.191
sys/dev/pci/ixgbe/ixv.c: revision 1.192
sys/dev/pci/ixgbe/ixgbe.h: revision 1.93

ixg(4): Print DEVICE_CAPS register.

ixgbe: Whitespace. No functional change.

ixg(4): Don't print wrong error message about ixgbe_num_queues.
 Don't override the ixgbe_num_queues global variable. It's the default
value of the number of queues and should not override it because it
will be referenced by later device attach. For example, the number of
MSI-X vector is 64 on X540 and 18 on 82599. When both cards are inserted
to a machine that the number of CPU is 24 and X540 is probed earlier,
ixgbe_num_queues is overridden to 24 and the following error message is
printed when attaching 82599:
ixg2: autoconfiguration error: ixgbe_num_queues (24) is too large,
using reduced amount (17).

Note that the number of queues is in sc->num_queuss and referenced
by hw.ixgN.num_queues sysctl.

ixgbe: Don't override the {ixgbe,ixv}_max_interrupt_rate global variable.

 Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change all
devices all queues default interrupt rate.

ixgbe: Whitespace. No functional change.


To generate a diff of this commit:
cvs rdiff -u -r1.100.4.3 -r1.100.4.4 src/sys/dev/pci/ixgbe/ix_txrx.c
cvs rdiff -u -r1.324.2.4 -r1.324.2.5 src/sys/dev/pci/ixgbe/ixgbe.c
cvs rdiff -u -r1.86.4.3 -r1.86.4.4 src/sys/dev/pci/ixgbe/ixgbe.h
cvs rdiff -u -r1.55.4.4 -r1.55.4.5 src/sys/dev/pci/ixgbe/ixgbe_type.h
cvs rdiff -u -r1.183.4.3 -r1.183.4.4 src/sys/dev/pci/ixgbe/ixv.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/ixgbe/ix_txrx.c
diff -u src/sys/dev/pci/ixgbe/ix_txrx.c:1.100.4.3 src/sys/dev/pci/ixgbe/ix_txrx.c:1.100.4.4
--- src/sys/dev/pci/ixgbe/ix_txrx.c:1.100.4.3	Fri Oct 13 18:55:12 2023
+++ src/sys/dev/pci/ixgbe/ix_txrx.c	Wed Oct 18 11:53:22 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ix_txrx.c,v 1.100.4.3 2023/10/13 18:55:12 martin Exp $ */
+/* $NetBSD: ix_txrx.c,v 1.100.4.4 2023/10/18 11:53:22 martin Exp $ */
 
 /**
 
@@ -64,7 +64,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: ix_txrx.c,v 1.100.4.3 2023/10/13 18:55:12 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ix_txrx.c,v 1.100.4.4 2023/10/18 11:53:22 martin Exp $");
 
 #include "opt_inet.h"
 #include "opt_inet6.h"
@@ -1274,9 +1274,9 @@ ixgbe_rsc_count(union ixgbe_adv_rx_desc 
 static void
 ixgbe_setup_hw_rsc(struct rx_ring *rxr)
 {
-	struct	ixgbe_softc *sc = rxr->sc;
-	struct	ixgbe_hw *hw = >hw;
-	u32  rscctrl, rdrxctl;
+	struct ixgbe_softc *sc = rxr->sc;
+	struct ixgbe_hw	*hw = >hw;
+	u32		rscctrl, rdrxctl;
 
 	/* If turning LRO/RSC off we need to disable it */
 	if ((sc->ifp->if_capenable & IFCAP_LRO) == 0) {

Index: src/sys/dev/pci/ixgbe/ixgbe.c
diff -u src/sys/dev/pci/ixgbe/ixgbe.c:1.324.2.4 src/sys/dev/pci/ixgbe/ixgbe.c:1.324.2.5
--- src/sys/dev/pci/ixgbe/ixgbe.c:1.324.2.4	Fri Oct 13 18:55:12 2023
+++ src/sys/dev/pci/ixgbe/ixgbe.c	Wed Oct 18 11:53:21 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ixgbe.c,v 1.324.2.4 2023/10/13 18:55:12 martin Exp $ */
+/* $NetBSD: ixgbe.c,v 1.324.2.5 2023/10/18 11:53:21 martin Exp $ */
 
 /**
 
@@ -64,7 +64,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: ixgbe.c,v 1.324.2.4 2023/10/13 18:55:12 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ixgbe.c,v 1.324.2.5 2023/10/18 11:53:21 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -809,7 +809,7 @@ ixgbe_attach(device_t parent, device_t d
 	struct ixgbe_hw *hw;
 	int		error = -1;
 	u32		ctrl_ext;
-	u16		high, low, nvmreg;
+	u16		high, low, nvmreg, dev_caps;
 	pcireg_t	id, subid;
 	const ixgbe_vendor_info_t *ent;
 	struct pci_attach_args *pa = aux;
@@ -1277,10 +1277,15 @@ ixgbe_attach(device_t parent, device_t d
 	if (sc->feat_en & IXGBE_FEATURE_NETMAP)
 		ixgbe_netmap_attach(sc);
 
+	/* Print some flags */
 	snprintb(buf, sizeof(buf), IXGBE_FEATURE_FLAGS, sc->feat_cap);
 	aprint_verbose_dev(dev, "feature cap %s\n", buf);
 	snprintb(buf, sizeof(buf), IXGBE_FEATURE_FLAGS, sc->feat_en);
 	aprint_verbose_dev(dev, "feature ena %s\n", buf);
+	if 

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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 11:53:22 UTC 2023

Modified Files:
src/sys/dev/pci/ixgbe [netbsd-10]: ix_txrx.c ixgbe.c ixgbe.h
ixgbe_type.h ixv.c

Log Message:
Pull up following revision(s) (requested by msaitoh in ticket #420):

sys/dev/pci/ixgbe/ixgbe.c: revision 1.340
sys/dev/pci/ixgbe/ixgbe.c: revision 1.341
sys/dev/pci/ixgbe/ixgbe.c: revision 1.342
sys/dev/pci/ixgbe/ixgbe.c: revision 1.343
sys/dev/pci/ixgbe/ixgbe.c: revision 1.344
sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.61
sys/dev/pci/ixgbe/ix_txrx.c: revision 1.104
sys/dev/pci/ixgbe/ixv.c: revision 1.190
sys/dev/pci/ixgbe/ixv.c: revision 1.191
sys/dev/pci/ixgbe/ixv.c: revision 1.192
sys/dev/pci/ixgbe/ixgbe.h: revision 1.93

ixg(4): Print DEVICE_CAPS register.

ixgbe: Whitespace. No functional change.

ixg(4): Don't print wrong error message about ixgbe_num_queues.
 Don't override the ixgbe_num_queues global variable. It's the default
value of the number of queues and should not override it because it
will be referenced by later device attach. For example, the number of
MSI-X vector is 64 on X540 and 18 on 82599. When both cards are inserted
to a machine that the number of CPU is 24 and X540 is probed earlier,
ixgbe_num_queues is overridden to 24 and the following error message is
printed when attaching 82599:
ixg2: autoconfiguration error: ixgbe_num_queues (24) is too large,
using reduced amount (17).

Note that the number of queues is in sc->num_queuss and referenced
by hw.ixgN.num_queues sysctl.

ixgbe: Don't override the {ixgbe,ixv}_max_interrupt_rate global variable.

 Fix a bug that changing hw.ix[gv]X.qY.interrupt_rate would change all
devices all queues default interrupt rate.

ixgbe: Whitespace. No functional change.


To generate a diff of this commit:
cvs rdiff -u -r1.100.4.3 -r1.100.4.4 src/sys/dev/pci/ixgbe/ix_txrx.c
cvs rdiff -u -r1.324.2.4 -r1.324.2.5 src/sys/dev/pci/ixgbe/ixgbe.c
cvs rdiff -u -r1.86.4.3 -r1.86.4.4 src/sys/dev/pci/ixgbe/ixgbe.h
cvs rdiff -u -r1.55.4.4 -r1.55.4.5 src/sys/dev/pci/ixgbe/ixgbe_type.h
cvs rdiff -u -r1.183.4.3 -r1.183.4.4 src/sys/dev/pci/ixgbe/ixv.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/arch/arm/ti

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 11:49:09 UTC 2023

Modified Files:
src/sys/arch/arm/ti [netbsd-10]: ti_com.c

Log Message:
Pull up following revision(s) (requested by gutteridge in ticket #419):

sys/arch/arm/ti/ti_com.c: revision 1.12

ti_com.c: set sc_type to COM_TYPE_OMAP

Avoid a kernel hang reported by Brook Milligan in PR port-arm/57598.

Patch suggested by RVP, seems correct to several of us. (If this
introduces a regression with some board, sorry, mea culpa. But in
that case we should still be carrying this, just conditionalized.)


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.11.18.1 src/sys/arch/arm/ti/ti_com.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/ti/ti_com.c
diff -u src/sys/arch/arm/ti/ti_com.c:1.11 src/sys/arch/arm/ti/ti_com.c:1.11.18.1
--- src/sys/arch/arm/ti/ti_com.c:1.11	Wed Jan 27 03:10:20 2021
+++ src/sys/arch/arm/ti/ti_com.c	Wed Oct 18 11:49:09 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ti_com.c,v 1.11 2021/01/27 03:10:20 thorpej Exp $ */
+/* $NetBSD: ti_com.c,v 1.11.18.1 2023/10/18 11:49:09 martin Exp $ */
 
 /*-
  * Copyright (c) 2017 Jared McNeill 
@@ -28,7 +28,7 @@
 
 #include 
 
-__KERNEL_RCSID(1, "$NetBSD: ti_com.c,v 1.11 2021/01/27 03:10:20 thorpej Exp $");
+__KERNEL_RCSID(1, "$NetBSD: ti_com.c,v 1.11.18.1 2023/10/18 11:49:09 martin Exp $");
 
 #include 
 #include 
@@ -95,7 +95,7 @@ ti_com_attach(device_t parent, device_t 
 		return;
 	}
 
-	sc->sc_type = COM_TYPE_NORMAL;
+	sc->sc_type = COM_TYPE_OMAP;
 
 	error = bus_space_map(bst, addr, size, 0, );
 	if (error) {



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 11:49:09 UTC 2023

Modified Files:
src/sys/arch/arm/ti [netbsd-10]: ti_com.c

Log Message:
Pull up following revision(s) (requested by gutteridge in ticket #419):

sys/arch/arm/ti/ti_com.c: revision 1.12

ti_com.c: set sc_type to COM_TYPE_OMAP

Avoid a kernel hang reported by Brook Milligan in PR port-arm/57598.

Patch suggested by RVP, seems correct to several of us. (If this
introduces a regression with some board, sorry, mea culpa. But in
that case we should still be carrying this, just conditionalized.)


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.11.18.1 src/sys/arch/arm/ti/ti_com.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-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 11:44:22 UTC 2023

Modified Files:
src/sys/arch/i386/stand/lib [netbsd-10]: biosdisk.c
src/sys/dev/raidframe [netbsd-10]: rf_netbsdkintf.c
src/sys/rump/librump/rumpkern [netbsd-10]: emul.c

Log Message:
Pull up following revision(s) (requested by manu in ticket #418):

sys/arch/i386/stand/lib/biosdisk.c: revision 1.59
sys/rump/librump/rumpkern/emul.c: revision 1.200
sys/arch/i386/stand/lib/biosdisk.c: revision 1.60
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.416

Align the behavior of different boot methods in RAIDframe

We enforce the documented and paritally implemented behavior when
looking for the kernel in RAID 1 sets without a partition name given.

We search for:
- A GPT partition with bootme attribute set
- A FFS or LFS patititon
- The first partition

Fix root search in RAID 1 sets

We use the wedge information given by bootstrap, where the kernel was
found. This requires src/sys/arch/i386/stand/i386/lib/biosdisk.c 1.59
to work in all cases.

Fix build with -DNO_GPT


To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.58.4.1 src/sys/arch/i386/stand/lib/biosdisk.c
cvs rdiff -u -r1.410.4.2 -r1.410.4.3 src/sys/dev/raidframe/rf_netbsdkintf.c
cvs rdiff -u -r1.196 -r1.196.20.1 src/sys/rump/librump/rumpkern/emul.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/i386/stand/lib/biosdisk.c
diff -u src/sys/arch/i386/stand/lib/biosdisk.c:1.58 src/sys/arch/i386/stand/lib/biosdisk.c:1.58.4.1
--- src/sys/arch/i386/stand/lib/biosdisk.c:1.58	Tue May  3 10:09:40 2022
+++ src/sys/arch/i386/stand/lib/biosdisk.c	Wed Oct 18 11:44:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: biosdisk.c,v 1.58 2022/05/03 10:09:40 jmcneill Exp $	*/
+/*	$NetBSD: biosdisk.c,v 1.58.4.1 2023/10/18 11:44:22 martin Exp $	*/
 
 /*
  * Copyright (c) 1996, 1998
@@ -105,6 +105,7 @@
 struct biosdisk {
 	struct biosdisk_ll ll;
 	daddr_t boff;
+	daddr_t size;
 	charbuf[BIOSDISK_BUFSIZE];
 #if !defined(NO_DISKLABEL) || !defined(NO_GPT)
 	struct biosdisk_partition part[BIOSDISKNPART];
@@ -327,7 +328,6 @@ guid_is_equal(const struct uuid *a, cons
 	return (memcmp(a, b, sizeof(*a)) == 0 ? true : false);
 }
 
-#ifndef NO_GPT
 static void
 part_name_utf8(const uint16_t *utf16_src, size_t utf16_srclen,
 	   char *utf8_dst, size_t utf8_dstlen)
@@ -350,7 +350,6 @@ part_name_utf8(const uint16_t *utf16_src
 
 	return;
 }
-#endif
 
 static int
 check_gpt(struct biosdisk *d, daddr_t rf_offset, daddr_t sector)
@@ -666,6 +665,7 @@ read_label(struct biosdisk *d, daddr_t o
 	dflt_lbl.d_npartitions = 8;
 
 	d->boff = 0;
+	d->size = 0;
 
 	if (d->ll.type != BIOSDISK_TYPE_HD)
 		/* No label on floppy and CD */
@@ -1208,7 +1208,7 @@ add_biosdisk_bootinfo(void)
 #endif
 
 #ifndef NO_GPT
-static daddr_t
+static void
 raidframe_part_offset(struct biosdisk *d, int part)
 {
 	struct biosdisk raidframe;
@@ -1221,8 +1221,10 @@ raidframe_part_offset(struct biosdisk *d
 
 	rf_offset = d->part[part].offset + RF_PROTECTED_SECTORS;
 	rf_size = d->part[part].size;
-	if (read_gpt(, rf_offset, rf_size) != 0)
-		return RF_PROTECTED_SECTORS;
+	if (read_gpt(, rf_offset, rf_size) != 0) {
+		d->boff += RF_PROTECTED_SECTORS;
+		return;
+	}
 
 	candidate = 0;
 	for (i = 0; i < BIOSDISKNPART; i++) {
@@ -1231,12 +1233,20 @@ raidframe_part_offset(struct biosdisk *d
 		if (raidframe.part[i].fstype == FS_UNUSED)
 			continue;
 #ifndef NO_GPT
-		if (raidframe.part[i].attr & GPT_ENT_ATTR_BOOTME)
+		if (raidframe.part[i].attr & GPT_ENT_ATTR_BOOTME) {
 			candidate = i;
+			break;
+		}
 #endif
+		if (raidframe.part[i].fstype == FS_BSDFFS ||
+		raidframe.part[i].fstype == FS_BSDLFS) {
+			if (candidate == 0)
+candidate = i;
+		}
 	}
 
-	return RF_PROTECTED_SECTORS + raidframe.part[candidate].offset;
+	d->boff += RF_PROTECTED_SECTORS + raidframe.part[candidate].offset;
+	d->size = raidframe.part[candidate].size;
 }
 #endif
 
@@ -1285,17 +1295,18 @@ biosdisk_open(struct open_file *f, ...)
 	}
 
 	d->boff = d->part[partition].offset;
+	d->size = d->part[partition].size;
 
 	if (d->part[partition].fstype == FS_RAID)
 #ifndef NO_GPT
-		d->boff += raidframe_part_offset(d, partition);
+		raidframe_part_offset(d, partition);
 #else
 		d->boff += RF_PROTECTED_SECTORS;
 #endif
 
 #ifdef _STANDALONE
-	bi_wedge.startblk = d->part[partition].offset;
-	bi_wedge.nblks = d->part[partition].size;
+	bi_wedge.startblk = d->boff;
+	bi_wedge.nblks = d->size;
 #endif
 
 nolabel:
@@ -1389,6 +1400,8 @@ next_disk:
 
 #ifndef NO_RAIDFRAME
 	for (i = 0; i < raidframe_count; i++) {
+		int first_bootme = -1;
+		int first_ffs = -1;
 		int candidate = -1;
 
 		if ((d = alloc_biosdisk(raidframe[i].biosdev)) == NULL) {
@@ -1402,12 +1415,20 @@ next_disk:
 			goto next_raidframe;
 
 		for (part = 0; part < BIOSDISKNPART; part++) {
-			bool bootme = d->part[part].attr & 

CVS commit: [netbsd-10] src/sys

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 11:44:22 UTC 2023

Modified Files:
src/sys/arch/i386/stand/lib [netbsd-10]: biosdisk.c
src/sys/dev/raidframe [netbsd-10]: rf_netbsdkintf.c
src/sys/rump/librump/rumpkern [netbsd-10]: emul.c

Log Message:
Pull up following revision(s) (requested by manu in ticket #418):

sys/arch/i386/stand/lib/biosdisk.c: revision 1.59
sys/rump/librump/rumpkern/emul.c: revision 1.200
sys/arch/i386/stand/lib/biosdisk.c: revision 1.60
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.416

Align the behavior of different boot methods in RAIDframe

We enforce the documented and paritally implemented behavior when
looking for the kernel in RAID 1 sets without a partition name given.

We search for:
- A GPT partition with bootme attribute set
- A FFS or LFS patititon
- The first partition

Fix root search in RAID 1 sets

We use the wedge information given by bootstrap, where the kernel was
found. This requires src/sys/arch/i386/stand/i386/lib/biosdisk.c 1.59
to work in all cases.

Fix build with -DNO_GPT


To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.58.4.1 src/sys/arch/i386/stand/lib/biosdisk.c
cvs rdiff -u -r1.410.4.2 -r1.410.4.3 src/sys/dev/raidframe/rf_netbsdkintf.c
cvs rdiff -u -r1.196 -r1.196.20.1 src/sys/rump/librump/rumpkern/emul.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-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 11:30:30 UTC 2023

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

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

sys/dev/pci/if_ixl.c: revision 1.94
sys/dev/pci/if_ixl.c: revision 1.95

ixl(4): added ETHERCAP_VLAN_MTU support
PR kern/57652

ixl(4): limit receive frame size upto 9600 even if ETHERCAP_VLAN_MTU is enabled


To generate a diff of this commit:
cvs rdiff -u -r1.88.4.1 -r1.88.4.2 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/dev/pci/if_ixl.c
diff -u src/sys/dev/pci/if_ixl.c:1.88.4.1 src/sys/dev/pci/if_ixl.c:1.88.4.2
--- src/sys/dev/pci/if_ixl.c:1.88.4.1	Sat Oct 14 06:43:06 2023
+++ src/sys/dev/pci/if_ixl.c	Wed Oct 18 11:30:29 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_ixl.c,v 1.88.4.1 2023/10/14 06:43:06 martin Exp $	*/
+/*	$NetBSD: if_ixl.c,v 1.88.4.2 2023/10/18 11:30:29 martin Exp $	*/
 
 /*
  * Copyright (c) 2013-2015, Intel Corporation
@@ -74,7 +74,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_ixl.c,v 1.88.4.1 2023/10/14 06:43:06 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ixl.c,v 1.88.4.2 2023/10/18 11:30:29 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -166,7 +166,8 @@ struct ixl_softc; /* defined */
 
 #define IXL_MCLBYTES			(MCLBYTES - ETHER_ALIGN)
 #define IXL_MTU_ETHERLEN		ETHER_HDR_LEN		\
-	+ ETHER_CRC_LEN
+	+ ETHER_CRC_LEN		\
+	+ ETHER_VLAN_ENCAP_LEN
 #if 0
 #define IXL_MAX_MTU			(9728 - IXL_MTU_ETHERLEN)
 #else
@@ -1322,6 +1323,7 @@ ixl_attach(device_t parent, device_t sel
 #endif
 	ether_set_vlan_cb(>sc_ec, ixl_vlan_cb);
 	sc->sc_ec.ec_capabilities |= ETHERCAP_JUMBO_MTU;
+	sc->sc_ec.ec_capabilities |= ETHERCAP_VLAN_MTU;
 	sc->sc_ec.ec_capabilities |= ETHERCAP_VLAN_HWTAGGING;
 	sc->sc_ec.ec_capabilities |= ETHERCAP_VLAN_HWFILTER;
 
@@ -3066,6 +3068,8 @@ ixl_rxr_config(struct ixl_softc *sc, str
 
 	memset(, 0, sizeof(rxq));
 	rxmax = ifp->if_mtu + IXL_MTU_ETHERLEN;
+	if (!ISSET(sc->sc_ec.ec_capenable, ETHERCAP_VLAN_MTU))
+		rxmax -= ETHER_VLAN_ENCAP_LEN;
 
 	rxq.head = htole16(rxr->rxr_cons);
 	rxq.base = htole64(IXL_DMA_DVA(>rxr_mem) / IXL_HMC_RXQ_BASE_UNIT);
@@ -5671,14 +5675,14 @@ ixl_ifflags_cb(struct ethercom *ec)
 {
 	struct ifnet *ifp = >ec_if;
 	struct ixl_softc *sc = ifp->if_softc;
-	int rv, change;
+	int rv, change, reset_bits;
 
 	mutex_enter(>sc_cfg_lock);
 
 	change = ec->ec_capenable ^ sc->sc_cur_ec_capenable;
-
-	if (ISSET(change, ETHERCAP_VLAN_HWTAGGING)) {
-		sc->sc_cur_ec_capenable ^= ETHERCAP_VLAN_HWTAGGING;
+	reset_bits = change & (ETHERCAP_VLAN_HWTAGGING | ETHERCAP_VLAN_MTU);
+	if (reset_bits != 0) {
+		sc->sc_cur_ec_capenable ^= reset_bits;
 		rv = ENETRESET;
 		goto out;
 	}



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

2023-10-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Oct 18 11:30:30 UTC 2023

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

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

sys/dev/pci/if_ixl.c: revision 1.94
sys/dev/pci/if_ixl.c: revision 1.95

ixl(4): added ETHERCAP_VLAN_MTU support
PR kern/57652

ixl(4): limit receive frame size upto 9600 even if ETHERCAP_VLAN_MTU is enabled


To generate a diff of this commit:
cvs rdiff -u -r1.88.4.1 -r1.88.4.2 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: src/share/man/man4

2023-10-18 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Wed Oct 18 10:50:42 UTC 2023

Modified Files:
src/share/man/man4: drm.4

Log Message:
drm(4): Fix thinko -- display configuration, not device configuration.


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 src/share/man/man4/drm.4

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



CVS commit: src/share/man/man4

2023-10-18 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Wed Oct 18 10:50:42 UTC 2023

Modified Files:
src/share/man/man4: drm.4

Log Message:
drm(4): Fix thinko -- display configuration, not device configuration.


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 src/share/man/man4/drm.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/drm.4
diff -u src/share/man/man4/drm.4:1.19 src/share/man/man4/drm.4:1.20
--- src/share/man/man4/drm.4:1.19	Wed Oct 18 10:28:06 2023
+++ src/share/man/man4/drm.4	Wed Oct 18 10:50:42 2023
@@ -1,4 +1,4 @@
-.\"	$NetBSD: drm.4,v 1.19 2023/10/18 10:28:06 riastradh Exp $
+.\"	$NetBSD: drm.4,v 1.20 2023/10/18 10:50:42 riastradh Exp $
 .\"
 .\" Copyright (c) 2007, 2013 Thomas Klausner
 .\" All rights reserved.
@@ -55,7 +55,7 @@ processing unit
 drivers come in two generations:
 .Bl -tag -width No
 .It Kernel mode-setting Pq Tn KMS
-Modern drivers that query and control device configuration in the
+Modern drivers that query and control display configuration in the
 kernel via
 .Xr ioctl 2
 commands exposed to userland.



CVS commit: src/share/man/man4

2023-10-18 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Wed Oct 18 10:28:07 UTC 2023

Modified Files:
src/share/man/man4: drm.4

Log Message:
drm(4): Update man page over the last decade.

While here, credit contributors just to the NetBSD port.  Too many
upstream contributors to list, not even sure where I'd find them all.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/share/man/man4/drm.4

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



CVS commit: src/share/man/man4

2023-10-18 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Wed Oct 18 10:28:07 UTC 2023

Modified Files:
src/share/man/man4: drm.4

Log Message:
drm(4): Update man page over the last decade.

While here, credit contributors just to the NetBSD port.  Too many
upstream contributors to list, not even sure where I'd find them all.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/share/man/man4/drm.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/drm.4
diff -u src/share/man/man4/drm.4:1.18 src/share/man/man4/drm.4:1.19
--- src/share/man/man4/drm.4:1.18	Wed Mar 10 07:23:42 2021
+++ src/share/man/man4/drm.4	Wed Oct 18 10:28:06 2023
@@ -1,4 +1,4 @@
-.\"	$NetBSD: drm.4,v 1.18 2021/03/10 07:23:42 wiz Exp $
+.\"	$NetBSD: drm.4,v 1.19 2023/10/18 10:28:06 riastradh Exp $
 .\"
 .\" Copyright (c) 2007, 2013 Thomas Klausner
 .\" All rights reserved.
@@ -23,75 +23,112 @@
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd March 10, 2021
+.Dd October 17, 2023
 .Dt DRM 4
 .Os
 .Sh NAME
 .Nm drm
-.Nd Direct Rendering Manager (DRI kernel support)
+.Nd Direct Rendering Manager \(em display configuration and graphics rendering acceleration
 .Sh SYNOPSIS
-.Cd i915drm*   at drm?
-.Cd mach64drm* at drm?
-.Cd mgadrm*at drm?
-.Cd r128drm*   at drm?
-.Cd radeondrm* at drm?
-.Cd savagedrm* at drm?
-.Cd sisdrm*at drm?
-.Cd tdfxdrm*   at drm?
-.Pp
-.Cd optionsDRM_DEBUG
-.Cd optionsDRM_NO_AGP
-.Cd optionsDRM_MAX_RESOLUTION_HORIZONTAL=integer
-.Cd optionsDRM_MAX_RESOLUTION_VERTICAL=integer
+.Ss Kernel mode-setting drivers
+.Cd "amdgpu*at pci? dev ? function ?"
+.Cd "i915drmkms*at pci? dev ? function ?"
+.Cd "nouveau*   at pci? dev ? function ?"
+.Cd "radeon*at pci? dev ? function ?"
+.Cd "rkdrm* at fdt? pass 5"
+.Cd "sunxidrm*  at fdt? pass 5"
+.Cd "tegradrm*  at fdt? pass 5"
+.Ss Legacy user mode-setting options and drivers
+.Cd "optionsDRM_LEGACY"
+.Cd "viadrmums* at drm?"
+.Ss Options
+.Cd "optionsDRM_MAX_RESOLUTION_HORIZONTAL=integer"
+.Cd "optionsDRM_MAX_RESOLUTION_VERTICAL=integer"
 .Sh DESCRIPTION
 The Direct Rendering Manager is part of the Direct Rendering
-Infrastructure for supporting video acceleration (3d acceleration,
-mostly).
+Infrastructure for supporting display configuration and hardware
+acceleration for graphics rendering and other computation on a graphics
+processing unit
+.Pq Tn GPU .
 .Pp
-The
 .Nm
-drivers provide support for the following chipsets:
-.Bl -tag -width XsavagedrmXXX -offset indent -compact
-.It i915drm
-Intel i915, i945
-.It mach64drm
-Mach64 (3D Rage Pro, Rage)
-.It mgadrm
-Matrox G[24]00, G[45]50
-.It r128drm
-ATI Rage 128
-.It radeondrm
-ATI Radeon
-.It savagedrm
-S3 Savage
-.It sisdrm
-SiS
-.It tdfxdrm
-3dfx (Voodoo)
-.It viadrm
-VIA
-.El
+drivers come in two generations:
+.Bl -tag -width No
+.It Kernel mode-setting Pq Tn KMS
+Modern drivers that query and control device configuration in the
+kernel via
+.Xr ioctl 2
+commands exposed to userland.
 .Pp
-To make use of the driver, the kernel must include
-.Xr agp 4
-(for some drivers, using
-.Cd optionsDRM_NO_AGP
-instead may be sufficient),
-.Xr X 7
-must be compiled with DRI support, Mesa DRI drivers must be installed,
-the appropriate
+The
+.Pa /dev/dri/render*
+device nodes provide access to graphics buffers and command stream
+submission for rendering.
+The
 .Pa /dev/dri/card*
-device must exist, and DRI must be enabled in the X configuration
-file.
+device nodes additionally provide access to the display configuration.
+.Pp
+.Tn KMS
+drivers provided as modules must generally be loaded by the bootloader,
+configured in
+.Xr boot.cfg 8 ,
+and cannot be loaded dynamically.
+.It User mode-setting Pq Tn UMS
+Legacy drivers that rely on userland support code that accesses device
+registers in the
 .Xr X 7
-provided with
-.Nx
-and compiled from
-.Xr pkgsrc 7
-do so automatically where supported.
+server to query and control display configuration.
+The kernel may be unable to recover if the display server crashes, or
+the device is suspended or resumed.
+.Pp
+The kernel driver and
+.Pa /dev/dri/card*
+interfaces only manage buffers mapped in the
+.Tn GPU
+address space.
+Display configuration from userland requires the
+.Dv INSECURE
+option
+.Pq see Xr options 4
+to allow userland access to device registers.
+.Pp
+The
+.Dv DRM_LEGACY
+option allows legacy
+.Tn UMS
+drivers to be loaded as modules
+.Pq see Xr module 7 .
+.El
+.Pp
+The
+.Nm
+drivers provide support for the following graphics devices:
+.Bl -tag -width "i915drmkms" -offset indent
+.It amdgpu
+Newer
+.Tn AMD
+graphics devices.

CVS commit: src/tests/sbin/ifconfig

2023-10-18 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Wed Oct 18 08:52:46 UTC 2023

Modified Files:
src/tests/sbin/ifconfig: t_capabilities.sh

Log Message:
ifconfig/t_capabilities: s/if_capabilities/if_capenable/ in message


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/tests/sbin/ifconfig/t_capabilities.sh

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

Modified files:

Index: src/tests/sbin/ifconfig/t_capabilities.sh
diff -u src/tests/sbin/ifconfig/t_capabilities.sh:1.2 src/tests/sbin/ifconfig/t_capabilities.sh:1.3
--- src/tests/sbin/ifconfig/t_capabilities.sh:1.2	Wed Oct 18 08:25:14 2023
+++ src/tests/sbin/ifconfig/t_capabilities.sh	Wed Oct 18 08:52:46 2023
@@ -1,4 +1,4 @@
-# $NetBSD: t_capabilities.sh,v 1.2 2023/10/18 08:25:14 rin Exp $
+# $NetBSD: t_capabilities.sh,v 1.3 2023/10/18 08:52:46 rin Exp $
 #
 # Copyright (c) 2020 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -112,7 +112,7 @@ basic_head() {
 basic_body() {
 
 	if ! [ $(atf_config_get "run_unsafe" "no") = "yes" ]; then
-		atf_skip "modify if_capabilities for real interfaces"
+		atf_skip "modify if_capenable for real interfaces"
 	fi
 
 	for i in $(ifconfig -l); do



CVS commit: src/tests/sbin/ifconfig

2023-10-18 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Wed Oct 18 08:52:46 UTC 2023

Modified Files:
src/tests/sbin/ifconfig: t_capabilities.sh

Log Message:
ifconfig/t_capabilities: s/if_capabilities/if_capenable/ in message


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/tests/sbin/ifconfig/t_capabilities.sh

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



Re: CVS commit: src/tests/sbin/ifconfig

2023-10-18 Thread Rin Okuyama

On 2023/10/18 17:25, Rin Okuyama wrote:

Module Name:src
Committed By:   rin
Date:   Wed Oct 18 08:25:14 UTC 2023

Modified Files:
src/tests/sbin/ifconfig: t_capabilities.sh

Log Message:
ifconfig/t_capabilities: Skip unless run_unsafe is configured to yes

The test modifies if_capabilities for all available interfaces.
This is not a behavior we expect for normal ATF runs.


s/if_capabilities/if_capenable/ here.

Thanks,
rin


CVS commit: src/tests/sbin/ifconfig

2023-10-18 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Wed Oct 18 08:25:14 UTC 2023

Modified Files:
src/tests/sbin/ifconfig: t_capabilities.sh

Log Message:
ifconfig/t_capabilities: Skip unless run_unsafe is configured to yes

The test modifies if_capabilities for all available interfaces.
This is not a behavior we expect for normal ATF runs.

Similar tests modifying living network configurations are already
skipped by default. This is the last one remained for ifconfig(8).

Also, I'm not sure whether this is a test for ifconfig(8).

XXX
Pullup to netbsd-10 ASAP. No other branches are affected.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/tests/sbin/ifconfig/t_capabilities.sh

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

Modified files:

Index: src/tests/sbin/ifconfig/t_capabilities.sh
diff -u src/tests/sbin/ifconfig/t_capabilities.sh:1.1 src/tests/sbin/ifconfig/t_capabilities.sh:1.2
--- src/tests/sbin/ifconfig/t_capabilities.sh:1.1	Sat Jun 27 06:57:44 2020
+++ src/tests/sbin/ifconfig/t_capabilities.sh	Wed Oct 18 08:25:14 2023
@@ -1,4 +1,4 @@
-# $NetBSD: t_capabilities.sh,v 1.1 2020/06/27 06:57:44 jruoho Exp $
+# $NetBSD: t_capabilities.sh,v 1.2 2023/10/18 08:25:14 rin Exp $
 #
 # Copyright (c) 2020 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -111,6 +111,10 @@ basic_head() {
 
 basic_body() {
 
+	if ! [ $(atf_config_get "run_unsafe" "no") = "yes" ]; then
+		atf_skip "modify if_capabilities for real interfaces"
+	fi
+
 	for i in $(ifconfig -l); do
 
 		c=$(ifconfig $i | grep "capabilities")



CVS commit: src/tests/sbin/ifconfig

2023-10-18 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Wed Oct 18 08:25:14 UTC 2023

Modified Files:
src/tests/sbin/ifconfig: t_capabilities.sh

Log Message:
ifconfig/t_capabilities: Skip unless run_unsafe is configured to yes

The test modifies if_capabilities for all available interfaces.
This is not a behavior we expect for normal ATF runs.

Similar tests modifying living network configurations are already
skipped by default. This is the last one remained for ifconfig(8).

Also, I'm not sure whether this is a test for ifconfig(8).

XXX
Pullup to netbsd-10 ASAP. No other branches are affected.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/tests/sbin/ifconfig/t_capabilities.sh

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



CVS commit: src/share/man/man4

2023-10-18 Thread Shoichi YAMAGUCHI
Module Name:src
Committed By:   yamaguchi
Date:   Wed Oct 18 07:59:06 UTC 2023

Modified Files:
src/share/man/man4: lagg.4

Log Message:
Update lagg(4) manual

1. corrected the wrong example
   - lagg(4) can not add multiple port and set its priority at once
  - This is the restriction of ifconfig(8)
2. adapted to changed behavior related to MTU
   - Changed not to copy MTU of the 1st physical interface
 to lagg(4) to prevent locking against myself


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/share/man/man4/lagg.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/lagg.4
diff -u src/share/man/man4/lagg.4:1.4 src/share/man/man4/lagg.4:1.5
--- src/share/man/man4/lagg.4:1.4	Tue May 24 20:50:18 2022
+++ src/share/man/man4/lagg.4	Wed Oct 18 07:59:06 2023
@@ -1,4 +1,4 @@
-.\"	$NetBSD: lagg.4,v 1.4 2022/05/24 20:50:18 andvar Exp $
+.\"	$NetBSD: lagg.4,v 1.5 2023/10/18 07:59:06 yamaguchi Exp $
 .\"
 .\" Copyright (c) 2005, 2006 Reyk Floeter 
 .\"
@@ -150,8 +150,10 @@ most easily done with the
 .Cm create
 command.
 .Pp
-The MTU of the first interface to be added is used as the lagg MTU.
-All additional interfaces are required to have exactly the same value.
+The MTU of the
+.Xr lagg 4
+is applied to each physical interfaces.
+And the physical interfaces can not change its MTU directly.
 .Sh EXAMPLES
 Create a link aggregation using LACP with two
 .Xr wm 4
@@ -171,9 +173,10 @@ Gigabit Ethernet interfaces and set each
 # ifconfig wm0 up
 # ifconfig wm1 up
 # ifconfig lagg0 create
-# ifconfig lagg0 laggproto failover \e
-	laggport wm0 pri 1000 laggport wm1 pri 2000 \e
-	192.168.1.1 netmask 255.255.255.0
+# ifconfig lagg0 laggproto failover
+# ifconfig lagg0 laggport wm0 pri 1000
+# ifconfig lagg0 laggport wm1 pri 2000
+# ifconfig lagg0 inet 192.168.1.1 netmask 255.255.255.0
 .Ed
 .Sh SEE ALSO
 .Xr ifconfig 8



CVS commit: src/share/man/man4

2023-10-18 Thread Shoichi YAMAGUCHI
Module Name:src
Committed By:   yamaguchi
Date:   Wed Oct 18 07:59:06 UTC 2023

Modified Files:
src/share/man/man4: lagg.4

Log Message:
Update lagg(4) manual

1. corrected the wrong example
   - lagg(4) can not add multiple port and set its priority at once
  - This is the restriction of ifconfig(8)
2. adapted to changed behavior related to MTU
   - Changed not to copy MTU of the 1st physical interface
 to lagg(4) to prevent locking against myself


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

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



CVS commit: src/tests/net/if_lagg

2023-10-18 Thread Shoichi YAMAGUCHI
Module Name:src
Committed By:   yamaguchi
Date:   Wed Oct 18 06:41:00 UTC 2023

Modified Files:
src/tests/net/if_lagg: t_lagg.sh

Log Message:
Update the test case for MTU of lag to adapt new behavior


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/tests/net/if_lagg/t_lagg.sh

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

Modified files:

Index: src/tests/net/if_lagg/t_lagg.sh
diff -u src/tests/net/if_lagg/t_lagg.sh:1.9 src/tests/net/if_lagg/t_lagg.sh:1.10
--- src/tests/net/if_lagg/t_lagg.sh:1.9	Mon Oct 16 07:57:40 2023
+++ src/tests/net/if_lagg/t_lagg.sh	Wed Oct 18 06:41:00 2023
@@ -1,4 +1,4 @@
-#	$NetBSD: t_lagg.sh,v 1.9 2023/10/16 07:57:40 yamaguchi Exp $
+#	$NetBSD: t_lagg.sh,v 1.10 2023/10/18 06:41:00 yamaguchi Exp $
 #
 # Copyright (c) 2021 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -367,6 +367,7 @@ lagg_mtu_head()
 lagg_mtu_body()
 {
 	local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
+	local mtu_lagg=1500
 	local mtu_1st=1450
 	local mtu_big=1460
 	local mtu_small=1440
@@ -379,60 +380,47 @@ lagg_mtu_body()
 	rump_server_add_iface $SOCK_HOST0 shmif2 $BUS2
 	$atf_ifconfig lagg0 create
 	$atf_ifconfig lagg0 laggproto lacp
+	$atf_ifconfig lagg0 up
 
 	$atf_ifconfig shmif0 mtu $mtu_1st
 	$atf_ifconfig shmif1 mtu $mtu_big
 	$atf_ifconfig shmif2 mtu $mtu_small
 
-	atf_check -s exit:0 -o match:"mtu *1500" rump.ifconfig lagg0
+	# check initial MTU settings
+	atf_check -s exit:0 -o match:"mtu *$mtu_lagg" rump.ifconfig lagg0
 	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig shmif0
 	atf_check -s exit:0 -o match:"mtu *$mtu_big" rump.ifconfig shmif1
 	atf_check -s exit:0 -o match:"mtu *$mtu_small" rump.ifconfig shmif2
 
 	# copy MTU from 1st port
 	$atf_ifconfig lagg0 laggport shmif0
-	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig lagg0
-	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig shmif0
+	atf_check -s exit:0 -o match:"mtu *$mtu_lagg" rump.ifconfig lagg0
+	atf_check -s exit:0 -o match:"mtu *$mtu_lagg" rump.ifconfig shmif0
 
 	# copy MTU to added port
 	$atf_ifconfig lagg0 laggport shmif1
 	$atf_ifconfig lagg0 laggport shmif2
-	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig lagg0
-	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig shmif0
-	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig shmif1
-	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig shmif2
+	atf_check -s exit:0 -o match:"mtu *$mtu_lagg" rump.ifconfig lagg0
+	atf_check -s exit:0 -o match:"mtu *$mtu_lagg" rump.ifconfig shmif0
+	atf_check -s exit:0 -o match:"mtu *$mtu_lagg" rump.ifconfig shmif1
+	atf_check -s exit:0 -o match:"mtu *$mtu_lagg" rump.ifconfig shmif2
 
 	# reset MTU after detaching from lagg0
 	$atf_ifconfig lagg0 -laggport shmif2
 	atf_check -s exit:0 -o match:"mtu *$mtu_small" rump.ifconfig shmif2
 
 	# change MTU of lagg0
-	$atf_ifconfig lagg0 up
-	$atf_ifconfig lagg0 mtu 1500
-	atf_check -s exit:0 -o match:"mtu *1500" rump.ifconfig lagg0
-	atf_check -s exit:0 -o match:"mtu *1500" rump.ifconfig shmif0
-	atf_check -s exit:0 -o match:"mtu *1500" rump.ifconfig shmif1
+	mtu_lagg=1400
+	$atf_ifconfig lagg0 mtu $mtu_lagg
+	atf_check -s exit:0 -o match:"mtu *$mtu_lagg" rump.ifconfig lagg0
+	atf_check -s exit:0 -o match:"mtu *$mtu_lagg" rump.ifconfig shmif0
+	atf_check -s exit:0 -o match:"mtu *$mtu_lagg" rump.ifconfig shmif1
 
 	# reset MTU after detching from lagg0
 	$atf_ifconfig lagg0 -laggport shmif0
 	$atf_ifconfig lagg0 -laggport shmif1
 	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig shmif0
 	atf_check -s exit:0 -o match:"mtu *$mtu_big" rump.ifconfig shmif1
-
-	# MTU should not be changed
-	atf_check -s exit:0 -o match:"mtu *1500" rump.ifconfig lagg0
-
-	# copy MTU from 1st port even when MTU of lagg0 is changhed
-	$atf_ifconfig lagg0 mtu 1400
-	atf_check -s exit:0 -o match:"mtu *1400" rump.ifconfig lagg0
-	$atf_ifconfig lagg0 laggport shmif0
-	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig lagg0
-	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig shmif0
-
-	# MTU of lagg0 need not reset
-	$atf_ifconfig lagg0 -laggport shmif0
-	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig lagg0
-	atf_check -s exit:0 -o match:"mtu *$mtu_1st" rump.ifconfig shmif0
 }
 
 lagg_mtu_cleanup()



CVS commit: src/tests/net/if_lagg

2023-10-18 Thread Shoichi YAMAGUCHI
Module Name:src
Committed By:   yamaguchi
Date:   Wed Oct 18 06:41:00 UTC 2023

Modified Files:
src/tests/net/if_lagg: t_lagg.sh

Log Message:
Update the test case for MTU of lag to adapt new behavior


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/tests/net/if_lagg/t_lagg.sh

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



CVS commit: src/sys/net/lagg

2023-10-18 Thread Shoichi YAMAGUCHI
Module Name:src
Committed By:   yamaguchi
Date:   Wed Oct 18 06:37:08 UTC 2023

Modified Files:
src/sys/net/lagg: if_lagg.c

Log Message:
copy MTU of lagg to a interface added to lagg
even if the interface is the first member of the lagg

This change breaks ATF test case for lagg MTU


To generate a diff of this commit:
cvs rdiff -u -r1.50 -r1.51 src/sys/net/lagg/if_lagg.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/net/lagg/if_lagg.c
diff -u src/sys/net/lagg/if_lagg.c:1.50 src/sys/net/lagg/if_lagg.c:1.51
--- src/sys/net/lagg/if_lagg.c:1.50	Mon Oct 16 08:25:57 2023
+++ src/sys/net/lagg/if_lagg.c	Wed Oct 18 06:37:08 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_lagg.c,v 1.50 2023/10/16 08:25:57 yamaguchi Exp $	*/
+/*	$NetBSD: if_lagg.c,v 1.51 2023/10/18 06:37:08 yamaguchi Exp $	*/
 
 /*
  * Copyright (c) 2005, 2006 Reyk Floeter 
@@ -20,7 +20,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_lagg.c,v 1.50 2023/10/16 08:25:57 yamaguchi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_lagg.c,v 1.51 2023/10/18 06:37:08 yamaguchi Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -2243,11 +2243,12 @@ lagg_port_setup(struct lagg_softc *sc,
 			lagg_port_setsadl(lp, NULL);
 	} else {
 		lagg_port_setsadl(lp, CLLADDR(ifp->if_sadl));
-		error = lagg_setmtu(ifp_port, ifp->if_mtu);
-		if (error != 0)
-			goto restore_sadl;
 	}
 
+	error = lagg_setmtu(ifp_port, ifp->if_mtu);
+	if (error != 0)
+		goto restore_sadl;
+
 	error = lagg_proto_allocport(sc, lp);
 	if (error != 0)
 		goto restore_mtu;
@@ -2263,9 +2264,6 @@ lagg_port_setup(struct lagg_softc *sc,
 	IFNET_UNLOCK(ifp_port);
 
 	if (is_1st_port) {
-		error = lagg_setmtu(ifp, lp->lp_mtu);
-		if (error != 0)
-			goto restore_ifp_port;
 		if (lp->lp_iftype == IFT_ETHER &&
 		lagg_lladdr_equal(sc->sc_lladdr_rand,
 		CLLADDR(ifp->if_sadl))) {
@@ -2285,11 +2283,6 @@ lagg_port_setup(struct lagg_softc *sc,
 
 	return 0;
 
-restore_ifp_port:
-	IFNET_LOCK(ifp_port);
-	if (stopped) {
-		if_stop(ifp_port, 0);
-	}
 free_port:
 	KASSERT(IFNET_LOCKED(ifp_port));
 	lagg_proto_freeport(sc, lp);



CVS commit: src/sys/net/lagg

2023-10-18 Thread Shoichi YAMAGUCHI
Module Name:src
Committed By:   yamaguchi
Date:   Wed Oct 18 06:37:08 UTC 2023

Modified Files:
src/sys/net/lagg: if_lagg.c

Log Message:
copy MTU of lagg to a interface added to lagg
even if the interface is the first member of the lagg

This change breaks ATF test case for lagg MTU


To generate a diff of this commit:
cvs rdiff -u -r1.50 -r1.51 src/sys/net/lagg/if_lagg.c

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