Re: svn commit: r366372 - in head/sys: compat/linuxkpi/common/include/linux compat/linuxkpi/common/src conf
>> sbruno@alice:~ % pkg info |grep kmod >> drm-current-kmod-4.16.g20200320 DRM modules for the linuxkpi-based KMS >> components >> drm-kmod-g20190710 Metaport of DRM modules for the >> linuxkpi-based KMS components >> gpu-firmware-kmod-g20200503 Firmware modules for the linuxkpi-based >> KMS components > > You may want to have to update this to recent and try again; if that > still breaks I assume either Hans or I will be happy to help until manu > is back. > > I’d assume with more linuxkpi bits implemented in HEAD the conflicts in > head will stay … and port/package updates will have to happen once in a > while (*). > > https://svnweb.freebsd.org/base?view=revision&revision=366374 > https://svnweb.freebsd.org/ports?view=revision&revision=551266 > > /bz > > (*) manu is making sure that after the commit to head the new port keeps > compiling with older kernels for a while using __FreeBSD_version; I may > have a partial solution that might allow us to update the port first but > neither won’t help with old ports like in this case. > I think its fair to tell people like me who update -current every couple of months to update more frequently or pop something into the top of -current reminding them that they need to keep up. :-) For now, I'm rebuilding my poudriere jail and will update my pkg's to ports-HEAD then retry the updates. I don't think you folks should spend too much time on it. sean signature.asc Description: OpenPGP digital signature
Re: svn commit: r366372 - in head/sys: compat/linuxkpi/common/include/linux compat/linuxkpi/common/src conf
>> Same buildfailure with GENERIC-NODEBUG. > > Seems different. > > >> https://people.freebsd.org/~sbruno/backlight.txt > > HEAD with which version of the drm port/package? > > /bz sbruno@alice:~ % pkg info |grep kmod drm-current-kmod-4.16.g20200320 DRM modules for the linuxkpi-based KMS components drm-kmod-g20190710 Metaport of DRM modules for the linuxkpi-based KMS components gpu-firmware-kmod-g20200503Firmware modules for the linuxkpi-based KMS components > > signature.asc Description: OpenPGP digital signature
Re: svn commit: r366372 - in head/sys: compat/linuxkpi/common/include/linux compat/linuxkpi/common/src conf
On 2020-10-17 05:27, Alexander V. Chernikov wrote: > 02.10.2020, 19:26, "Emmanuel Vadot" : > > Author: manu > Date: Fri Oct 2 18:26:41 2020 > New Revision: 366372 > URL: https://svnweb.freebsd.org/changeset/base/366372 > > Log: > linuxkpi: Add backlight support > > Add backlight function to linuxkpi. > Graphics drivers expose the backlight of the panel directly so > allow them to use the backlight subsystem so > user can use backlight(8) to configure them. > > Reviewed by: hselasky > Relnotes: yes > Differential Revision: The FreeBSD Foundation > > Added: > head/sys/compat/linuxkpi/common/include/linux/backlight.h > (contents, props changed) > Modified: > head/sys/compat/linuxkpi/common/include/linux/device.h > head/sys/compat/linuxkpi/common/src/linux_kmod.c > head/sys/compat/linuxkpi/common/src/linux_pci.c > head/sys/conf/kmod.mk > > It breaks the build for me with > > /usr/home/melifaro/free/head/sys/compat/linuxkpi/common/src/linux_pci.c:70:10: > fatal error: 'backlight_if.h' file not found > > Same buildfailure with GENERIC-NODEBUG. sean https://people.freebsd.org/~sbruno/backlight.txt signature.asc Description: OpenPGP digital signature
svn commit: r350078 - in head: share/man/man4 sys/dev/sound/pci/hda
Author: sbruno Date: Wed Jul 17 04:13:46 2019 New Revision: 350078 URL: https://svnweb.freebsd.org/changeset/base/350078 Log: I add the ability to accept the default pin widget configuration to help with various laptops using hdaa(4) sound devices. We don't seem to know the "correct" configurations for these devices and the defaults are far superiour, e.g. they work if you don't nuke the default configs. PR: 200526 Differential Revision:https://reviews.freebsd.org/D17772 Modified: head/share/man/man4/snd_hda.4 head/sys/dev/sound/pci/hda/hdaa.c head/sys/dev/sound/pci/hda/hdaa.h Modified: head/share/man/man4/snd_hda.4 == --- head/share/man/man4/snd_hda.4 Wed Jul 17 03:19:30 2019 (r350077) +++ head/share/man/man4/snd_hda.4 Wed Jul 17 04:13:46 2019 (r350078) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 1, 2018 +.Dd July 16, 2019 .Dt SND_HDA 4 .Os .Sh NAME @@ -153,6 +153,12 @@ The and .Dq Li ovref Ns Ar X options control the voltage used to power external microphones. +.It Va dev.hdaa.%d.init_clear +Zero out the pin widget config setup by the system. +Some systems seem to have unuseable audio devices if the pin widgit +configuration is cleared. +Set this value to 0 to accept the default configuration values setup by the +BIOS. .It Va hint.hdaa.%d.gpio_config Overrides audio function GPIO pins configuration set by BIOS. May be specified as a set of space-separated Modified: head/sys/dev/sound/pci/hda/hdaa.c == --- head/sys/dev/sound/pci/hda/hdaa.c Wed Jul 17 03:19:30 2019 (r350077) +++ head/sys/dev/sound/pci/hda/hdaa.c Wed Jul 17 04:13:46 2019 (r350078) @@ -5034,11 +5034,13 @@ hdaa_audio_prepare_pin_ctrl(struct hdaa_devinfo *devin pincap = w->wclass.pin.cap; /* Disable everything. */ - w->wclass.pin.ctrl &= ~( - HDA_CMD_SET_PIN_WIDGET_CTRL_HPHN_ENABLE | - HDA_CMD_SET_PIN_WIDGET_CTRL_OUT_ENABLE | - HDA_CMD_SET_PIN_WIDGET_CTRL_IN_ENABLE | - HDA_CMD_SET_PIN_WIDGET_CTRL_VREF_ENABLE_MASK); + if (devinfo->init_clear) { + w->wclass.pin.ctrl &= ~( + HDA_CMD_SET_PIN_WIDGET_CTRL_HPHN_ENABLE | + HDA_CMD_SET_PIN_WIDGET_CTRL_OUT_ENABLE | + HDA_CMD_SET_PIN_WIDGET_CTRL_IN_ENABLE | + HDA_CMD_SET_PIN_WIDGET_CTRL_VREF_ENABLE_MASK); + } if (w->enable == 0) { /* Pin is unused so left it disabled. */ @@ -6671,6 +6673,10 @@ hdaa_attach(device_t dev) SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "reconfig", CTLTYPE_INT | CTLFLAG_RW, dev, 0, hdaa_sysctl_reconfig, "I", "Reprocess configuration"); + SYSCTL_ADD_INT(device_get_sysctl_ctx(dev), + SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, + "init_clear", CTLFLAG_RW, + &devinfo->init_clear, 1,"Clear initial pin widget configuration"); bus_generic_attach(dev); return (0); } Modified: head/sys/dev/sound/pci/hda/hdaa.h == --- head/sys/dev/sound/pci/hda/hdaa.h Wed Jul 17 03:19:30 2019 (r350077) +++ head/sys/dev/sound/pci/hda/hdaa.h Wed Jul 17 04:13:46 2019 (r350078) @@ -214,6 +214,7 @@ struct hdaa_devinfo { struct hdaa_chan*chans; struct callout poll_jack; int poll_ival; + uint32_tinit_clear; }; #define HDAA_CHN_RUNNING 0x0001 ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r341643 - head/sys/dev/mlx5
Author: sbruno Date: Thu Dec 6 18:59:33 2018 New Revision: 341643 URL: https://svnweb.freebsd.org/changeset/base/341643 Log: Change u32 to uint32_t to allow the native-xtools target to build libsysdecode. Submitted by: kib Modified: head/sys/dev/mlx5/mlx5io.h Modified: head/sys/dev/mlx5/mlx5io.h == --- head/sys/dev/mlx5/mlx5io.h Thu Dec 6 18:58:54 2018(r341642) +++ head/sys/dev/mlx5/mlx5io.h Thu Dec 6 18:59:33 2018(r341643) @@ -132,7 +132,7 @@ struct mlx5_fpga_temperature { #defineMLX5_FPGA_RESET _IO('m', 0x82) #defineMLX5_FPGA_IMAGE_SEL _IOWINT('m', 0x83) #defineMLX5_FPGA_QUERY _IOR('m', 0x84, struct mlx5_fpga_query) -#defineMLX5_FPGA_CAP _IOR('m', 0x85, u32[MLX5_FPGA_CAP_ARR_SZ]) +#defineMLX5_FPGA_CAP _IOR('m', 0x85, uint32_t[MLX5_FPGA_CAP_ARR_SZ]) #defineMLX5_FPGA_TEMPERATURE _IOWR('m', 0x86, struct mlx5_fpga_temperature) #defineMLX5_FPGA_CONNECT _IOWR('m', 0x87, enum mlx5_fpga_connect) ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r340997 - head/lib/libarchive
I have reverted this change from head. sean On 11/26/18 2:45 PM, Martin Matuska wrote: > Author: mm > Date: Mon Nov 26 21:45:27 2018 > New Revision: 340997 > URL: https://svnweb.freebsd.org/changeset/base/340997 > > Log: > libarchive configuration changes > - move HAVE_BZLIB_H, HAVE_LIBLZMA and HAVE_LZMA_H to config_freebsd.h > - activate support for multi-threaded lzma encoding [1] > > PR: 233543 [1] > Reported by:cem > MFC after: 1 week > > Modified: > head/lib/libarchive/Makefile > head/lib/libarchive/config_freebsd.h > > Modified: head/lib/libarchive/Makefile > == > --- head/lib/libarchive/Makefile Mon Nov 26 20:56:05 2018 > (r340996) > +++ head/lib/libarchive/Makefile Mon Nov 26 21:45:27 2018 > (r340997) > @@ -7,7 +7,6 @@ _LIBARCHIVEDIR= ${SRCTOP}/contrib/libarchive > LIB= archive > > LIBADD= z bz2 lzma bsdxml > -CFLAGS+= -DHAVE_BZLIB_H=1 -DHAVE_LIBLZMA=1 -DHAVE_LZMA_H=1 > > # FreeBSD SHLIB_MAJOR value is managed as part of the FreeBSD system. > # It has no real relation to the libarchive version number. > > Modified: head/lib/libarchive/config_freebsd.h > == > --- head/lib/libarchive/config_freebsd.h Mon Nov 26 20:56:05 2018 > (r340996) > +++ head/lib/libarchive/config_freebsd.h Mon Nov 26 21:45:27 2018 > (r340997) > @@ -133,14 +133,17 @@ > #define HAVE_LCHFLAGS 1 > #define HAVE_LCHMOD 1 > #define HAVE_LCHOWN 1 > +#define HAVE_LIBLZMA 1 > #define HAVE_LIBZ 1 > #define HAVE_LIMITS_H 1 > #define HAVE_LINK 1 > +#define HAVE_LZMA_H 1 > #define HAVE_LOCALE_H 1 > #define HAVE_LOCALTIME_R 1 > #define HAVE_LONG_LONG_INT 1 > #define HAVE_LSTAT 1 > #define HAVE_LUTIMES 1 > +#define HAVE_LZMA_STREAM_ENCODER_MT 1 > #define HAVE_MBRTOWC 1 > #define HAVE_MEMMOVE 1 > #define HAVE_MEMORY_H 1 > > signature.asc Description: OpenPGP digital signature
svn commit: r341453 - head/lib/libarchive
Author: sbruno Date: Tue Dec 4 03:23:14 2018 New Revision: 341453 URL: https://svnweb.freebsd.org/changeset/base/341453 Log: Revert r340997 at the request of multiple users. - breaks ports-mgmt/pkg build for mips64, powerpc64 and i386 for some users. --- pkg-static --- /usr/lib/liblzma.a(stream_encoder_mt.o): In function `mythread_cond_init': /usr/local/poudriere/jails/ppc64/usr/src/contrib/xz/src/common/mythread.h:230: undefined reference to `pthread_condattr_init' Reported by: jhibbits zeising Modified: head/lib/libarchive/Makefile head/lib/libarchive/config_freebsd.h Modified: head/lib/libarchive/Makefile == --- head/lib/libarchive/MakefileTue Dec 4 02:30:11 2018 (r341452) +++ head/lib/libarchive/MakefileTue Dec 4 03:23:14 2018 (r341453) @@ -7,6 +7,7 @@ _LIBARCHIVEDIR= ${SRCTOP}/contrib/libarchive LIB= archive LIBADD=z bz2 lzma bsdxml +CFLAGS+= -DHAVE_BZLIB_H=1 -DHAVE_LIBLZMA=1 -DHAVE_LZMA_H=1 # FreeBSD SHLIB_MAJOR value is managed as part of the FreeBSD system. # It has no real relation to the libarchive version number. Modified: head/lib/libarchive/config_freebsd.h == --- head/lib/libarchive/config_freebsd.hTue Dec 4 02:30:11 2018 (r341452) +++ head/lib/libarchive/config_freebsd.hTue Dec 4 03:23:14 2018 (r341453) @@ -133,17 +133,14 @@ #define HAVE_LCHFLAGS 1 #define HAVE_LCHMOD 1 #define HAVE_LCHOWN 1 -#define HAVE_LIBLZMA 1 #define HAVE_LIBZ 1 #define HAVE_LIMITS_H 1 #define HAVE_LINK 1 -#define HAVE_LZMA_H 1 #define HAVE_LOCALE_H 1 #define HAVE_LOCALTIME_R 1 #define HAVE_LONG_LONG_INT 1 #define HAVE_LSTAT 1 #define HAVE_LUTIMES 1 -#define HAVE_LZMA_STREAM_ENCODER_MT 1 #define HAVE_MBRTOWC 1 #define HAVE_MEMMOVE 1 #define HAVE_MEMORY_H 1 ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r340841 - in head: . share/mk sys/sys
I just had to disable this on the PowerPC64 build in the FreeBSD Cluster. It led to the following error during linking: cc -O2 -pipe -g -MD -MF.depend.enhash.o -MTenhash.o -std=gnu99 -fstack-protector-strong -c enhash.c -o enhash.o cc -O2 -pipe -g -std=gnu99 -fstack-protector-strong -o enhash.full enhash.o -lmd /usr/bin/ld: crtsavres.o: No such file: No such file or directory *** Error code 1 Stop. make: stopped in /usr/local/poudriere/data/packages/pkgsync/enhash cc -O2 -pipe -g -std=gnu99 -fstack-protector-strong -o dehash.full dehash.o /usr/bin/ld: crtsavres.o: No such file: No such file or directory *** Error code 1 Stop. make: stopped in /usr/local/poudriere/data/packages/pkgsync/dehash On 11/23/18 9:45 AM, Andrew Turner wrote: > Author: andrew > Date: Fri Nov 23 16:45:07 2018 > New Revision: 340841 > URL: https://svnweb.freebsd.org/changeset/base/340841 > > Log: > Enable the BSD crtbegin/crtend by default. > > It has passed an exp run on amd64 and i386, and has testing on arm64. On > other architectures it is expected to run, however it can be disabled by > building world with -DWITHOUT_BSD_CRTBEGIN. > > Sponsored by: DARPA, AFRL > > Modified: > head/UPDATING > head/share/mk/src.opts.mk > head/sys/sys/param.h > > Modified: head/UPDATING > == > --- head/UPDATING Fri Nov 23 16:33:03 2018(r340840) > +++ head/UPDATING Fri Nov 23 16:45:07 2018(r340841) > @@ -31,6 +31,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW: > disable the most expensive debugging functionality run > "ln -s 'abort:false,junk:false' /etc/malloc.conf".) > > +20181123: > + The BSD crtbegin and crtend code has been enabled by default. It has > + had extensive testing on amd64, arm64, and i386. It can be disabled > + by building a world with -DWITHOUT_BSD_CRTBEGIN. > + > 20181115: > The set of CTM commands (ctm, ctm_smail, ctm_rmail, ctm_dequeue) > has been converted to a port (misc/ctm) and will be removed from > > Modified: head/share/mk/src.opts.mk > == > --- head/share/mk/src.opts.mk Fri Nov 23 16:33:03 2018(r340840) > +++ head/share/mk/src.opts.mk Fri Nov 23 16:45:07 2018(r340841) > @@ -71,6 +71,7 @@ __DEFAULT_YES_OPTIONS = \ > BOOTPARAMD \ > BOOTPD \ > BSD_CPIO \ > +BSD_CRTBEGIN \ > BSDINSTALL \ > BSNMP \ > BZIP2 \ > @@ -193,7 +194,6 @@ __DEFAULT_YES_OPTIONS = \ > ZONEINFO > > __DEFAULT_NO_OPTIONS = \ > -BSD_CRTBEGIN \ > BSD_GREP \ > CLANG_EXTRAS \ > DTRACE_TESTS \ > > Modified: head/sys/sys/param.h > == > --- head/sys/sys/param.h Fri Nov 23 16:33:03 2018(r340840) > +++ head/sys/sys/param.h Fri Nov 23 16:45:07 2018(r340841) > @@ -60,7 +60,7 @@ > * in the range 5 to 9. > */ > #undef __FreeBSD_version > -#define __FreeBSD_version 133/* Master, propagated to newvers */ > +#define __FreeBSD_version 134/* Master, propagated to newvers */ > > /* > * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, > > signature.asc Description: OpenPGP digital signature
svn commit: r341140 - head/sys/mips/conf
Author: sbruno Date: Wed Nov 28 13:25:10 2018 New Revision: 341140 URL: https://svnweb.freebsd.org/changeset/base/341140 Log: Add CAPABILITIES to the ERL kernel config so that tools that have been modified with Capsicum work on this target platform. This came up after the conversion of wc(8). Modified: head/sys/mips/conf/ERL Modified: head/sys/mips/conf/ERL == --- head/sys/mips/conf/ERL Wed Nov 28 11:58:40 2018(r341139) +++ head/sys/mips/conf/ERL Wed Nov 28 13:25:10 2018(r341140) @@ -91,6 +91,8 @@ options KDTRACE_HOOKS # Kernel DTrace hooks optionsDDB_CTF # Kernel ELF linker loads CTF data optionsINCLUDE_CONFIG_FILE # Include this file in kernel optionsTMPFS # Temporary file system +optionsCAPABILITY_MODE # Capsicum capability mode +optionsCAPABILITIES# Capsicum capabilities # Debugging for use in -current #options KDB # Enable kernel debugger support. ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: a word of caution about the new default of so-reuseport on FreeBSD
On 10/10/18 11:40 AM, Harry Schmalzbauer wrote: > Am 10.10.2018 um 10:53 schrieb Dag-Erling Smørgrav: >> Author: des >> Date: Wed Oct 10 08:53:47 2018 >> New Revision: 339278 >> URL: https://svnweb.freebsd.org/changeset/base/339278 >> >> Log: >> Upgrade to 1.8.1. >> Approved by: re (kib) > > Very much appreciated! > Most likely you are aware about the "so-reuseport" topic via Unbound-users. > I didn't follow the diff/issue at all, just wanted to point it out, so > somebody from the experts team can decide if 1.8.1 is suitable (with the > 1.8.1 defaults) for shipping... > > Thanks, > -harry > > Am 08.10.2018 um 14:01 schrieb Benno Overeinder via Unbound-users: >> On 21/09/2018 20:27, nusenu via Unbound-users wrote: >>> When upgrading (and before restarting unbound) I explicitly set >>> the new defaults in the conf file to make their value explicit. >>> ( so-reuseport, harden-below-nxdomain, minimal-responses) >>> >>> After I upgraded and restarted unbound all queries were handled by >>> only a single thread >>> even though I have multiple threads enabled in the config, as a >>> result of that the number of >>> queries in the queue skyrocketed. >>> >>> I expected this to be related to so-reuseport and after setting that >>> to 'no', >>> things were back to normal (all threads handled queries again, queue >>> size back to normal). >> Thank you for bringing this to our attention. so-reuseport behaves >> indeed different for Linux and FreeBSD. We will schedule a different >> default so-reuseport config setting for FreeBSD in Unbound 1.8.2. (It >> will not appear in 1.8.1 which will released this week.) >> >> Best regards, >> >> -- Benno > > I didn't see Johnnes on this thread, so I'm tagging him in the CC. sean signature.asc Description: OpenPGP digital signature
Re: svn commit: r338330 - head/lib/libmd
On 08/26/18 11:11, Ian Lepore wrote: >> Modified: head/lib/libmd/Makefile >> == >> --- head/lib/libmd/Makefile Sun Aug 26 13:08:50 2018(r338329) >> +++ head/lib/libmd/Makefile Sun Aug 26 17:05:43 2018(r338330) >> @@ -1,11 +1,12 @@ >> # $FreeBSD$ >> >> +SHLIBDIR?= /lib >> + >> .include >> >> PACKAGE=lib${LIB} >> LIB=md >> SHLIB_MAJOR= 6 >> -SHLIBDIR?= /lib >> SRCS= md4c.c md5c.c md4hl.c md5hl.c \ >> rmd160c.c rmd160hl.c \ >> sha0c.c sha0hl.c sha1c.c sha1hl.c \ >> > I'm curious why this is the preferred solution, as opposed to just > leaving the assignment where it is and changing ?= to just =. > > -- Ian > > I'm unsure if there is or isn't a preferred solution. There appear to be multiple ways of doing this strewn about the tree. This appears to be "a way" of fixing the state of -current at the moment. I leave it to others more versed in the intricacies of Makefile dark magic to scry a solution from the aether. sean signature.asc Description: OpenPGP digital signature
svn commit: r338330 - head/lib/libmd
Author: sbruno Date: Sun Aug 26 17:05:43 2018 New Revision: 338330 URL: https://svnweb.freebsd.org/changeset/base/338330 Log: r338270 had the side effect of no longer installing libmd.so into /lib. For users who have a seperate zfs mount of /usr or /usr/lib, this will cause dynamic loading failures when attempting to execute zfs mount on bootup. E.g. the system won't boot. Including sets SHLIBDIR, so SHLIBDIR?= has no effect. The other lib/ Makefiles solve this problem by moving the SHLIBDIR assignment to before .include . Submitted by: jilles Reviewed by: allanjude Approved by: re (rgrimes) Differential Revision:https://reviews.freebsd.org/D16910 Modified: head/lib/libmd/Makefile Modified: head/lib/libmd/Makefile == --- head/lib/libmd/Makefile Sun Aug 26 13:08:50 2018(r338329) +++ head/lib/libmd/Makefile Sun Aug 26 17:05:43 2018(r338330) @@ -1,11 +1,12 @@ # $FreeBSD$ +SHLIBDIR?= /lib + .include PACKAGE=lib${LIB} LIB= md SHLIB_MAJOR= 6 -SHLIBDIR?= /lib SRCS= md4c.c md5c.c md4hl.c md5hl.c \ rmd160c.c rmd160hl.c \ sha0c.c sha0hl.c sha1c.c sha1hl.c \ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r336925 - head/sys/modules/ipmi
On 07/30/18 12:29, Justin Hibbits wrote: > Author: jhibbits > Date: Mon Jul 30 18:29:20 2018 > New Revision: 336925 > URL: https://svnweb.freebsd.org/changeset/base/336925 > > Log: > Add ofw_bus_if.h to the SRCS list for ipmi module on powerpc64 > > PR: 230194 > Reported by:sbruno > > Modified: > head/sys/modules/ipmi/Makefile > > Modified: head/sys/modules/ipmi/Makefile > == > --- head/sys/modules/ipmi/MakefileMon Jul 30 18:13:20 2018 > (r336924) > +++ head/sys/modules/ipmi/MakefileMon Jul 30 18:29:20 2018 > (r336925) > @@ -16,7 +16,7 @@ SRCS+= acpi_if.h isa_if.h pci_if.h smbus_if.h > SUBDIR+= ipmi_linux > > .elif ${MACHINE_ARCH} == "powerpc64" > -SRCS+= ipmi_opal.c > +SRCS+= ipmi_opal.c ofw_bus_if.h > .endif > > .include > > Gracias! sean signature.asc Description: OpenPGP digital signature
svn commit: r336298 - head/sys/netinet
Author: sbruno Date: Sat Jul 14 23:53:51 2018 New Revision: 336298 URL: https://svnweb.freebsd.org/changeset/base/336298 Log: There was quite a bit of feedback on r336282 that has led to the submitter to want to revert it. Modified: head/sys/netinet/ip_output.c Modified: head/sys/netinet/ip_output.c == --- head/sys/netinet/ip_output.cSat Jul 14 21:32:32 2018 (r336297) +++ head/sys/netinet/ip_output.cSat Jul 14 23:53:51 2018 (r336298) @@ -1256,18 +1256,12 @@ ip_ctloutput(struct socket *so, struct sockopt *sopt) switch (sopt->sopt_name) { case IP_OPTIONS: case IP_RETOPTS: - if (inp->inp_options) { - unsigned long len = ulmin(inp->inp_options->m_len, sopt->sopt_valsize); - struct mbuf *options = malloc(len, M_TEMP, M_WAITOK); - INP_RLOCK(inp); - bcopy(inp->inp_options, options, len); - INP_RUNLOCK(inp); + if (inp->inp_options) error = sooptcopyout(sopt, -mtod(options, +mtod(inp->inp_options, char *), -len); - free(options, M_TEMP); - } else +inp->inp_options->m_len); + else sopt->sopt_valsize = 0; break; ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r336282 - head/sys/netinet
On 07/14/18 10:37, John Baldwin wrote: > On 7/14/18 9:19 AM, Sean Bruno wrote: >> Author: sbruno >> Date: Sat Jul 14 16:19:46 2018 >> New Revision: 336282 >> URL: https://svnweb.freebsd.org/changeset/base/336282 >> >> Log: >> Fixup memory management for fetching options in ip_ctloutput() >> >> Submitted by: Jason Eggleston >> Sponsored by: Limelight Networks >> Differential Revision: https://reviews.freebsd.org/D14621 >> >> Modified: >> head/sys/netinet/ip_output.c >> >> Modified: head/sys/netinet/ip_output.c >> == >> --- head/sys/netinet/ip_output.c Sat Jul 14 16:06:53 2018 >> (r336281) >> +++ head/sys/netinet/ip_output.c Sat Jul 14 16:19:46 2018 >> (r336282) >> @@ -1256,12 +1256,18 @@ ip_ctloutput(struct socket *so, struct sockopt *sopt) >> switch (sopt->sopt_name) { >> case IP_OPTIONS: >> case IP_RETOPTS: >> -if (inp->inp_options) >> +if (inp->inp_options) { >> +unsigned long len = >> ulmin(inp->inp_options->m_len, sopt->sopt_valsize); >> +struct mbuf *options = malloc(len, M_TEMP, >> M_WAITOK); >> +INP_RLOCK(inp); >> +bcopy(inp->inp_options, options, len); >> +INP_RUNLOCK(inp); >> error = sooptcopyout(sopt, >> - mtod(inp->inp_options, >> + mtod(options, >>char *), >> - inp->inp_options->m_len); >> -else >> + len); >> +free(options, M_TEMP); >> +} else >> sopt->sopt_valsize = 0; >> break; > > You can't malloc an mbuf, and you don't really want an mbuf here anyway. > Also, style(9) doesn't normally assign values when a variable is created. > I would perhaps have done something like this: > > if (inp->inp_options) { > void *options; > u_long len; > > INP_RLOCK(inp); > len = ulmin(inp->inp_options->m_len, sopt->sopt_valsize); > INP_RUNLOCK(inp); > options = malloc(len, M_TEMP, M_WAITOK); > INP_RLOCK(inp); > len = ulmin(inp->inp_options->m_len, len); > m_copydata(inp->inp_options, 0, len, options); > INP_RUNLOCK(inp); > error = sooptcopyout(sopt, options, len); > free(options, M_TEMP); > } > > The current code isn't doing what you think it is doing since the bcopy() > copies the m_data pointer from 'inp_options' into 'options' so that > 'options->m_data' points at the m_data buffer in the 'inp_options' mbuf. > Thus, the mtod() returns a pointer into 'inp_options' just like the old > code, so this commit doesn't change anything in terms of the previous > race (it is still just as broken). > > Also, while INP_RLOCK isn't helpful in my version above for reading the > 'm_len' member (it's racy to read and then malloc no matter what), you > still need the lock to ensure the inp_options pointer itself is valid > when you dereference it. Without the lock another thread might have > freed inp_options out from under you and the unlocked dereference could > panic (though it probably just reads garbage on most of our architectures > rather than panicking since we don't tend to invalidate KVA if you lose > that race). > Shall I revert and rethink? sean signature.asc Description: OpenPGP digital signature
svn commit: r336282 - head/sys/netinet
Author: sbruno Date: Sat Jul 14 16:19:46 2018 New Revision: 336282 URL: https://svnweb.freebsd.org/changeset/base/336282 Log: Fixup memory management for fetching options in ip_ctloutput() Submitted by: Jason Eggleston Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D14621 Modified: head/sys/netinet/ip_output.c Modified: head/sys/netinet/ip_output.c == --- head/sys/netinet/ip_output.cSat Jul 14 16:06:53 2018 (r336281) +++ head/sys/netinet/ip_output.cSat Jul 14 16:19:46 2018 (r336282) @@ -1256,12 +1256,18 @@ ip_ctloutput(struct socket *so, struct sockopt *sopt) switch (sopt->sopt_name) { case IP_OPTIONS: case IP_RETOPTS: - if (inp->inp_options) + if (inp->inp_options) { + unsigned long len = ulmin(inp->inp_options->m_len, sopt->sopt_valsize); + struct mbuf *options = malloc(len, M_TEMP, M_WAITOK); + INP_RLOCK(inp); + bcopy(inp->inp_options, options, len); + INP_RUNLOCK(inp); error = sooptcopyout(sopt, -mtod(inp->inp_options, +mtod(options, char *), -inp->inp_options->m_len); - else +len); + free(options, M_TEMP); + } else sopt->sopt_valsize = 0; break; ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r336201 - head/sys/dev/smartpqi
Author: sbruno Date: Wed Jul 11 16:44:14 2018 New Revision: 336201 URL: https://svnweb.freebsd.org/changeset/base/336201 Log: smartpqi(4): - Update to release "3" Submitted by: Deepak Ukey Reviewed by: mav MFC after:2 weeks Differential Revision:https://reviews.freebsd.org/D16060 Modified: head/sys/dev/smartpqi/smartpqi_cam.c head/sys/dev/smartpqi/smartpqi_defines.h head/sys/dev/smartpqi/smartpqi_discovery.c head/sys/dev/smartpqi/smartpqi_event.c head/sys/dev/smartpqi/smartpqi_helper.c head/sys/dev/smartpqi/smartpqi_init.c head/sys/dev/smartpqi/smartpqi_intr.c head/sys/dev/smartpqi/smartpqi_ioctl.c head/sys/dev/smartpqi/smartpqi_main.c head/sys/dev/smartpqi/smartpqi_mem.c head/sys/dev/smartpqi/smartpqi_prototypes.h head/sys/dev/smartpqi/smartpqi_queue.c head/sys/dev/smartpqi/smartpqi_request.c head/sys/dev/smartpqi/smartpqi_sis.c head/sys/dev/smartpqi/smartpqi_structures.h Modified: head/sys/dev/smartpqi/smartpqi_cam.c == --- head/sys/dev/smartpqi/smartpqi_cam.cWed Jul 11 14:56:38 2018 (r336200) +++ head/sys/dev/smartpqi/smartpqi_cam.cWed Jul 11 16:44:14 2018 (r336201) @@ -137,7 +137,6 @@ void os_remove_device(pqisrc_softstate_t *softs, xpt_async(AC_LOST_DEVICE, tmppath, NULL); xpt_free_path(tmppath); pqisrc_free_device(softs, device); - OS_SLEEP(1); } DBG_FUNC("OUT\n"); @@ -1199,3 +1198,7 @@ void deregister_sim(struct pqisrc_softstate *softs) DBG_FUNC("OUT\n"); } + +static void smartpqi_cam_action(struct cam_sim *, union ccb *); +static void smartpqi_poll(struct cam_sim *); + Modified: head/sys/dev/smartpqi/smartpqi_defines.h == --- head/sys/dev/smartpqi/smartpqi_defines.hWed Jul 11 14:56:38 2018 (r336200) +++ head/sys/dev/smartpqi/smartpqi_defines.hWed Jul 11 16:44:14 2018 (r336201) @@ -35,9 +35,8 @@ #define PQI_STATUS_SUCCESS 0 #define PQISRC_CMD_TIMEOUT_CNT 120 /* 500usec * 120 = 5 min */ +#define PQI_CMND_COMPLETE_TMO 1000 /* in millisecond */ -/* #define SHARE_EVENT_QUEUE_FOR_IO1 */ - #defineINVALID_ELEM0x #ifndef MIN #define MIN(a,b)((a) < (b) ? (a) : (b)) @@ -94,10 +93,13 @@ enum INTR_TYPE { #define LOCKNAME_SIZE 32 +#define INTR_TYPE_NONE 0x0 #define INTR_TYPE_FIXED0x1 #define INTR_TYPE_MSI 0x2 #define INTR_TYPE_MSIX 0x4 #define SIS_ENABLE_MSIX0x40 +#define SIS_ENABLE_INTX0x80 +#define PQISRC_LEGACY_INTX_MASK0x1 #define DMA_TO_VIRT(mem) ((mem)->virt_addr) #define DMA_PHYS_LOW(mem) (((mem)->dma_addr) & 0x) @@ -120,7 +122,9 @@ typedef enum device_type DISK_DEVICE, TAPE_DEVICE, ROM_DEVICE = 5, - MEDIUM_CHANGER_DEVICE = 8, + SES_DEVICE, + CONTROLLER_DEVICE, + MEDIUM_CHANGER_DEVICE, RAID_DEVICE = 0x0c, ENCLOSURE_DEVICE, ZBC_DEVICE = 0x14 @@ -549,8 +553,8 @@ enum pqisrc_ctrl_mode{ #define PQI_MAX_LOGICALS 64 #define PQI_MAX_PHYSICALS 1024 #definePQI_MAX_DEVICES (PQI_MAX_LOGICALS + PQI_MAX_PHYSICALS + 1) /* 1 for controller device entry */ +#define PQI_MAX_EXT_TARGETS32 - #define PQI_CTLR_INDEX (PQI_MAX_DEVICES - 1) #define PQI_PD_INDEX(t)(t + PQI_MAX_LOGICALS) @@ -700,8 +704,8 @@ typedef uint8_t *passthru_buf_type_t; #define PQISRC_DRIVER_MAJOR1 #define PQISRC_DRIVER_MINOR0 -#define PQISRC_DRIVER_RELEASE 1 -# define PQISRC_DRIVER_REVISION 239 +#define PQISRC_DRIVER_RELEASE 3 +#define PQISRC_DRIVER_REVISION 239 #define STR(s) # s #define PQISRC_VERSION(a, b, c, d) STR(a.b.c-d) @@ -892,15 +896,17 @@ typedef volatile uint64_t OS_ATOMIC64_T; typedef struct mtx OS_LOCK_T; typedef struct sema OS_SEMA_LOCK_T; +#defineOS_PQILOCK_T OS_LOCK_T + #define OS_ACQUIRE_SPINLOCK(_lock) mtx_lock_spin(_lock) #define OS_RELEASE_SPINLOCK(_lock) mtx_unlock_spin(_lock) -#define PQI_LOCK(_lock) OS_ACQUIRE_SPINLOCK(_lock) -#define PQI_UNLOCK(_lock) OS_RELEASE_SPINLOCK(_lock) - #define OS_INIT_PQILOCK(_softs,_lock,_lockname) os_init_spinlock(_softs,_lock,_lockname) #define OS_UNINIT_PQILOCK(_lock) os_uninit_spinlock(_lock) +#define PQI_LOCK(_lock) OS_ACQUIRE_SPINLOCK(_lock) +#define PQI_UNLOCK(_lock) OS_RELEASE_SPINLOCK(_lock) + #define OS_GET_CDBP(rcb) ((rcb->cm_ccb->ccb_h.flags & CAM_CDB_POINTER) ? rcb->cm_ccb->csio.cdb_io.cdb_ptr : rcb->cm_ccb->csio.cdb_io.cdb_bytes) #define GET_SCSI_BUFFLEN(rcb) (rcb->cm_ccb->csio.dxfer_len) @@ -
Re: svn commit: r334880 - head/sys/dev/vnic
> > ofwdump isn't very useful, you'll get much nicer output with: > > sysctl -b hw.fdt.dtb | dtc -I dtb -O dts >somefile.dts > > BTW, the whole idea of searching for a phy by walking the node > hierarchy doing string comparisons on node names sounds pretty > antithetical to the whole design of fdt data. Are these nodes not > properly cross-linked with phandles? > > -- Ian > Hrm ... this seems broken on these thundex machines. # sysctl -b hw.fdt.dtb | dtc -I dtb -O dts Error: property check failed, while checking node: / /soc @0 /pci @8480, [-Wtype-compatible] I dropped the output of the sysctl -b to: https://people.freebsd.org/~sbruno/thunderx_dtb.bin sean signature.asc Description: OpenPGP digital signature
Re: svn commit: r334880 - head/sys/dev/vnic
On 07/08/18 09:26, Mark Johnston wrote: > On Sun, Jul 08, 2018 at 09:10:27AM -0600, Sean Bruno wrote: >> >> >> On 07/07/18 11:43, Mark Johnston wrote: >>> On Sat, Jun 09, 2018 at 02:47:49PM +, Andrew Turner wrote: >>>> Author: andrew >>>> Date: Sat Jun 9 14:47:49 2018 >>>> New Revision: 334880 >>>> URL: https://svnweb.freebsd.org/changeset/base/334880 >>>> >>>> Log: >>>> In the ThunderX BGX network driver we were skipping the NULL terminator >>>> when parsing the phy type, however this is included in the length >>>> returned >>>> by OF_getprop. To fix this stop ignoring the terminator. >>>> >>>> PR: 228828 >>>> Reported by: sbruno >>>> Sponsored by:DARPA, AFRL >>> >>> This seems to break vnic on packet.net ThunderXs. In particular, VF >>> creation fails. It seems the problem in my case is that there are >>> multiple PHY devices in the device tree, e.g., xfi@0, xfi@1. With this >>> change, bgx_fdt_phy_name_match() fails to match against any device >>> containing a unit address in the node name. >>> >> >> >> Huh ... this was *required* to get the ThunderXs we have in the FreeBSD >> cluster to work at all. o.0 >> >> I guess "someone" needs to contact "someone" to figure out which is >> correct or we need to replace our FreeBSD cluster machines with ones >> that work like the packet.net machines? > > I think the current code works fine if there's only one PHY device, so > my problem is probably just the result of having a different hardware > setup. We can probably fix the code to handle both cases. Could you > mail me the output of "ofwdump -ap" from the cluster machine? > > I dropped the output here: https://people.freebsd.org/~sbruno/ofwdump.txt sean signature.asc Description: OpenPGP digital signature
Re: svn commit: r334880 - head/sys/dev/vnic
On 07/07/18 11:43, Mark Johnston wrote: > On Sat, Jun 09, 2018 at 02:47:49PM +, Andrew Turner wrote: >> Author: andrew >> Date: Sat Jun 9 14:47:49 2018 >> New Revision: 334880 >> URL: https://svnweb.freebsd.org/changeset/base/334880 >> >> Log: >> In the ThunderX BGX network driver we were skipping the NULL terminator >> when parsing the phy type, however this is included in the length returned >> by OF_getprop. To fix this stop ignoring the terminator. >> >> PR:228828 >> Reported by: sbruno >> Sponsored by: DARPA, AFRL > > This seems to break vnic on packet.net ThunderXs. In particular, VF > creation fails. It seems the problem in my case is that there are > multiple PHY devices in the device tree, e.g., xfi@0, xfi@1. With this > change, bgx_fdt_phy_name_match() fails to match against any device > containing a unit address in the node name. > Huh ... this was *required* to get the ThunderXs we have in the FreeBSD cluster to work at all. o.0 I guess "someone" needs to contact "someone" to figure out which is correct or we need to replace our FreeBSD cluster machines with ones that work like the packet.net machines? sean signature.asc Description: OpenPGP digital signature
svn commit: r336063 - head/sys/vm
Author: sbruno Date: Sat Jul 7 13:37:44 2018 New Revision: 336063 URL: https://svnweb.freebsd.org/changeset/base/336063 Log: Wrap the declaration and assignment of "stripe" with #ifdef NUMA declarations as not all targets are NUMA aware. Found with gcc. Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D16113 Modified: head/sys/vm/uma_core.c Modified: head/sys/vm/uma_core.c == --- head/sys/vm/uma_core.c Sat Jul 7 13:35:06 2018(r336062) +++ head/sys/vm/uma_core.c Sat Jul 7 13:37:44 2018(r336063) @@ -2860,7 +2860,9 @@ zone_import(uma_zone_t zone, void **bucket, int max, i { uma_slab_t slab; uma_keg_t keg; +#ifdef NUMA int stripe; +#endif int i; slab = NULL; @@ -2870,7 +2872,9 @@ zone_import(uma_zone_t zone, void **bucket, int max, i if ((slab = zone->uz_slab(zone, keg, domain, flags)) == NULL) break; keg = slab->us_keg; +#ifdef NUMA stripe = howmany(max, vm_ndomains); +#endif while (slab->us_freecount && i < max) { bucket[i++] = slab_alloc_item(keg, slab); if (keg->uk_free <= keg->uk_reserve) ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r336062 - head/sys/net
Author: sbruno Date: Sat Jul 7 13:35:06 2018 New Revision: 336062 URL: https://svnweb.freebsd.org/changeset/base/336062 Log: struct ifmediareq *ifmrp is only used in the COMPAT_FREEBSD32 parts of ifioctl(). Move it inside the proper #ifdef. This was throwing a valid "Assigned but unused" warning with gcc. Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D16063 Modified: head/sys/net/if.c Modified: head/sys/net/if.c == --- head/sys/net/if.c Sat Jul 7 12:28:16 2018(r336061) +++ head/sys/net/if.c Sat Jul 7 13:35:06 2018(r336062) @@ -2969,8 +2969,8 @@ ifioctl(struct socket *so, u_long cmd, caddr_t data, s #ifdef COMPAT_FREEBSD32 caddr_t saved_data = NULL; struct ifmediareq ifmr; -#endif struct ifmediareq *ifmrp; +#endif struct ifnet *ifp; struct ifreq *ifr; int error; @@ -3016,8 +3016,8 @@ ifioctl(struct socket *so, u_long cmd, caddr_t data, s #endif } - ifmrp = NULL; #ifdef COMPAT_FREEBSD32 + ifmrp = NULL; switch (cmd) { case SIOCGIFMEDIA32: case SIOCGIFXMEDIA32: ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r336031 - head/usr.bin/top
On 07/06/18 08:49, Ian Lepore wrote: > On Fri, 2018-07-06 at 13:22 +0000, Sean Bruno wrote: >> Author: sbruno >> Date: Fri Jul 6 13:22:44 2018 >> New Revision: 336031 >> URL: https://svnweb.freebsd.org/changeset/base/336031 >> >> Log: >> r336028 changed next_msg to a char * from char [] of fixed size. Change >> 2nd argument of vsnprintf() to get the strlen of next_msg so that the >> appropriate size is used. >> >> Found with gcc. >> >> /usr.bin/top/display.c: In function 'new_message': >> /usr.bin/top/display.c:963:31: error: >> argument to 'sizeof' in 'vsnprintf' call is the same expression as the >> destination; did you mean to provide an explicit length? >> [-Werror=sizeof-pointer-memaccess] >> vsnprintf(next_msg, sizeof(next_msg), msgfmt, args); >> >> Reviewed by: daichi >> >> Modified: >> head/usr.bin/top/display.c >> >> Modified: head/usr.bin/top/display.c >> == >> --- head/usr.bin/top/display.c Fri Jul 6 12:44:48 2018 >> (r336030) >> +++ head/usr.bin/top/display.c Fri Jul 6 13:22:44 2018 >> (r336031) >> @@ -960,7 +960,7 @@ new_message(int type, const char *msgfmt, ...) >> va_start(args, msgfmt); >> >> /* first, format the message */ >> -vsnprintf(next_msg, sizeof(next_msg), msgfmt, args); >> +vsnprintf(next_msg, strlen(next_msg), msgfmt, args); >> >> va_end(args); >> >> > > This fix is incorrect. The original commit that changed next_msg to a > pointer is probably flawed enough to revert and redevelop rather than > try a rolling set of bandaid fixes. > > Whenever setup_buffer() creates a new buffer it will need to store the > size it allocated for use in this vsnprintf() call (and maybe other > places that write directly into next_msg without calling setup_buffer > to reallocate it first, I didn't look). The setup_buffer_bufsiz > variable isn't quite right as-is, because it doesn't include the > 'addlen' value passed to setup_buffer(). > > -- Ian > > Yeah, this isn't going well. I've been poking around in it and I can't see an quick way to do this correctly. sean signature.asc Description: OpenPGP digital signature
svn commit: r336032 - head/sys/mips/conf
Author: sbruno Date: Fri Jul 6 13:31:06 2018 New Revision: 336032 URL: https://svnweb.freebsd.org/changeset/base/336032 Log: Remove duplicate configuration values as they are already defined in std.AR_MIPS_BASE Modified: head/sys/mips/conf/DIR-825B1 Modified: head/sys/mips/conf/DIR-825B1 == --- head/sys/mips/conf/DIR-825B1Fri Jul 6 13:22:44 2018 (r336031) +++ head/sys/mips/conf/DIR-825B1Fri Jul 6 13:31:06 2018 (r336032) @@ -45,13 +45,6 @@ nodevice ath_rate_sample nooptions INET6 -# Don't include the SCSI/CAM strings in the default build -optionsSCSI_NO_SENSE_STRINGS -optionsSCSI_NO_OP_STRINGS - -# .. And no sysctl strings -optionsNO_SYSCTL_DESCR - # GEOM modules device geom_map# to get access to the SPI flash partitions device geom_uzip # compressed in-memory filesystem hackery! ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r336031 - head/usr.bin/top
Author: sbruno Date: Fri Jul 6 13:22:44 2018 New Revision: 336031 URL: https://svnweb.freebsd.org/changeset/base/336031 Log: r336028 changed next_msg to a char * from char [] of fixed size. Change 2nd argument of vsnprintf() to get the strlen of next_msg so that the appropriate size is used. Found with gcc. /usr.bin/top/display.c: In function 'new_message': /usr.bin/top/display.c:963:31: error: argument to 'sizeof' in 'vsnprintf' call is the same expression as the destination; did you mean to provide an explicit length? [-Werror=sizeof-pointer-memaccess] vsnprintf(next_msg, sizeof(next_msg), msgfmt, args); Reviewed by: daichi Modified: head/usr.bin/top/display.c Modified: head/usr.bin/top/display.c == --- head/usr.bin/top/display.c Fri Jul 6 12:44:48 2018(r336030) +++ head/usr.bin/top/display.c Fri Jul 6 13:22:44 2018(r336031) @@ -960,7 +960,7 @@ new_message(int type, const char *msgfmt, ...) va_start(args, msgfmt); /* first, format the message */ -vsnprintf(next_msg, sizeof(next_msg), msgfmt, args); +vsnprintf(next_msg, strlen(next_msg), msgfmt, args); va_end(args); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r336028 - head/usr.bin/top
On 07/06/18 06:07, Daichi GOTO wrote: > -static char next_msg[MAX_COLS + 5]; > +static char *next_msg = NULL; > static int msglen = 0; > /* Invariant: msglen is always the length of the message currently displayed > on the screen (even when next_msg doesn't contain that message). */ gcc noticed that a later call to vsnprintf() now has some problems. /home/sbruno/bsd/wifi/fbsd_head/usr.bin/top/display.c: In function 'new_message': /home/sbruno/bsd/wifi/fbsd_head/usr.bin/top/display.c:963:31: error: argument to 'sizeof' in 'vsnprintf' call is the same expression as the destination; did you mean to provide an explicit length? [-Werror=sizeof-pointer-memaccess] vsnprintf(next_msg, sizeof(next_msg), msgfmt, args); I think this needs to be changed Index: usr.bin/top/display.c === --- usr.bin/top/display.c (revision 336029) +++ usr.bin/top/display.c (working copy) @@ -960,7 +960,7 @@ va_start(args, msgfmt); /* first, format the message */ -vsnprintf(next_msg, sizeof(next_msg), msgfmt, args); +vsnprintf(next_msg, strlen(next_msg), msgfmt, args); va_end(args); signature.asc Description: OpenPGP digital signature
svn commit: r336009 - head/sys/riscv/riscv
Author: sbruno Date: Thu Jul 5 17:26:44 2018 New Revision: 336009 URL: https://svnweb.freebsd.org/changeset/base/336009 Log: riscv: Remove unused variable "code" gcc found that the variabl "code", while being assigned a value, isn't be used for anything. Reviewed by: br Differential Revision:https://reviews.freebsd.org/D16114 Modified: head/sys/riscv/riscv/machdep.c Modified: head/sys/riscv/riscv/machdep.c == --- head/sys/riscv/riscv/machdep.c Thu Jul 5 17:26:13 2018 (r336008) +++ head/sys/riscv/riscv/machdep.c Thu Jul 5 17:26:44 2018 (r336009) @@ -548,7 +548,6 @@ sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask struct thread *td; struct proc *p; int onstack; - int code; int sig; td = curthread; @@ -556,7 +555,6 @@ sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask PROC_LOCK_ASSERT(p, MA_OWNED); sig = ksi->ksi_signo; - code = ksi->ksi_code; psp = p->p_sigacts; mtx_assert(&psp->ps_mtx, MA_OWNED); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r336005 - head/sys/mips/conf
Author: sbruno Date: Thu Jul 5 17:09:46 2018 New Revision: 336005 URL: https://svnweb.freebsd.org/changeset/base/336005 Log: Remove redundant AH_DEBUG_ALQ. Modified: head/sys/mips/conf/std.AR_MIPS_BASE Modified: head/sys/mips/conf/std.AR_MIPS_BASE == --- head/sys/mips/conf/std.AR_MIPS_BASE Thu Jul 5 17:07:23 2018 (r336004) +++ head/sys/mips/conf/std.AR_MIPS_BASE Thu Jul 5 17:09:46 2018 (r336005) @@ -55,7 +55,6 @@ options ATH_ENABLE_DFS optionsAH_DEBUG_ALQ optionsAH_DEBUG -optionsAH_DEBUG_ALQ optionsAH_SUPPORT_AR5416 optionsAH_AR5416_INTERRUPT_MITIGATION optionsAH_RXCFG_SDMAMW_4BYTES ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r336006 - head/sys/mips/conf
Author: sbruno Date: Thu Jul 5 17:11:55 2018 New Revision: 336006 URL: https://svnweb.freebsd.org/changeset/base/336006 Log: Remove redundant device ar71xx_wdog which is now included from std.AR_MIPS_BASE Modified: head/sys/mips/conf/AR71XX_BASE Modified: head/sys/mips/conf/AR71XX_BASE == --- head/sys/mips/conf/AR71XX_BASE Thu Jul 5 17:09:46 2018 (r336005) +++ head/sys/mips/conf/AR71XX_BASE Thu Jul 5 17:11:55 2018 (r336006) @@ -63,6 +63,5 @@ devicescbus device umass device da -device ar71xx_wdog device uart_ar71xx device ar71xx_apb ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r336004 - in head/sys: conf mips/conf riscv/conf
Author: sbruno Date: Thu Jul 5 17:07:23 2018 New Revision: 336004 URL: https://svnweb.freebsd.org/changeset/base/336004 Log: Make ZSTD a real option via ZSTDIO. It looks like the intent was to allow ZSTD support to be compiled into the kernel with options ZSTDIO. But it doesn't look like that was ever implemented or I'm missing how to do it. I did a cursory audit of kernel config files and made a decision to enable ZSTDIO in riscv GENERIC and mips MALTA configurations. All other kernel configurations already had this option in their kernel configs but they didn't do anything useful as the feature was declared as "standard" prior to this. Reviewed by: cem allanjude Differential Revision:https://reviews.freebsd.org/D16007 Modified: head/sys/conf/files head/sys/conf/files.mips head/sys/conf/files.riscv head/sys/mips/conf/std.MALTA head/sys/riscv/conf/GENERIC Modified: head/sys/conf/files == --- head/sys/conf/files Thu Jul 5 17:06:54 2018(r336003) +++ head/sys/conf/files Thu Jul 5 17:07:23 2018(r336004) @@ -635,22 +635,22 @@ contrib/ngatm/netnatm/sig/sig_unimsgcpy.c optional nga contrib/ngatm/netnatm/sig/sig_verify.c optional ngatm_uni \ compile-with "${NORMAL_C} -I$S/contrib/ngatm" # Zstd -contrib/zstd/lib/freebsd/zstd_kmalloc.cstandard compile-with ${ZSTD_C} -contrib/zstd/lib/common/zstd_common.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/common/fse_decompress.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/common/entropy_common.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/common/error_private.cstandard compile-with ${ZSTD_C} -contrib/zstd/lib/common/xxhash.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/compress/zstd_compress.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/compress/fse_compress.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/compress/huf_compress.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/compress/zstd_double_fast.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/compress/zstd_fast.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/compress/zstd_lazy.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/compress/zstd_ldm.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/compress/zstd_opt.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/decompress/zstd_decompress.c standard compile-with ${ZSTD_C} -contrib/zstd/lib/decompress/huf_decompress.c standard compile-with ${ZSTD_C} +contrib/zstd/lib/freebsd/zstd_kmalloc.coptional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/common/zstd_common.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/common/fse_decompress.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/common/entropy_common.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/common/error_private.coptional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/common/xxhash.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/compress/zstd_compress.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/compress/fse_compress.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/compress/huf_compress.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/compress/zstd_double_fast.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/compress/zstd_fast.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/compress/zstd_lazy.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/compress/zstd_ldm.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/compress/zstd_opt.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/decompress/zstd_decompress.c optional zstdio compile-with ${ZSTD_C} +contrib/zstd/lib/decompress/huf_decompress.c optional zstdio compile-with ${ZSTD_C} # Blake 2 contrib/libb2/blake2b-ref.coptional crypto | ipsec | ipsec_support \ compile-with "${NORMAL_C} -I$S/crypto/blake2 -Wno-cast-qual -DSUFFIX=_ref -Wno-unused-function" Modified: head/sys/conf/files.mips == --- head/sys/conf/files.mipsThu Jul 5 17:06:54 2018(r336003) +++ head/sys/conf/files.mipsThu Jul 5 17:07:23 2018(r336004) @@ -113,4 +113,4 @@ cddl/dev/dtrace/mips/dtrace_subr.c optional dtrace c cddl/dev/fbt/mips/fbt_isa.coptional dtrace_fbt | dtraceall compile-with "${FBT_C}" # Zstd -contrib/zstd/lib/freebsd/zstd_kfreebsd.c standard compile-with ${ZSTD_C} +contrib/zstd/lib/freebsd/zstd_kfreebsd.c optional zstdio compile-with ${ZSTD_C} Modified: head/sys/conf/files.riscv
Re: svn commit: r335963 - in head: etc share/mk tools/build/mk tools/build/options
On 07/04/18 11:48, Rodney W. Grimes wrote: > [ Charset UTF-8 unsupported, converting... ] >> Author: sbruno >> Date: Wed Jul 4 17:18:35 2018 >> New Revision: 335963 >> URL: https://svnweb.freebsd.org/changeset/base/335963 >> >> Log: >> WITHOUT_SERVICESDB: >> >> Add src.conf knob to disable the installation of /var/db/services.db >> >> Default to leaving services.db in place, but allow the removal of the >> file and its creation with a src.conf knob. >> >> This file ends up being 2MB in size. For small systems this is a waste >> of space but its a tradeoff. > > THANK YOU! I can now remove an ugly local hack :-) > > Was it "rm -rf /var/db/services.db" ? :-P sean signature.asc Description: OpenPGP digital signature
svn commit: r335963 - in head: etc share/mk tools/build/mk tools/build/options
Author: sbruno Date: Wed Jul 4 17:18:35 2018 New Revision: 335963 URL: https://svnweb.freebsd.org/changeset/base/335963 Log: WITHOUT_SERVICESDB: Add src.conf knob to disable the installation of /var/db/services.db Default to leaving services.db in place, but allow the removal of the file and its creation with a src.conf knob. This file ends up being 2MB in size. For small systems this is a waste of space but its a tradeoff. Reviewed by: bdrewery Differential Revision:https://reviews.freebsd.org/D9655 Added: head/tools/build/options/WITHOUT_SERVICESDB (contents, props changed) Modified: head/etc/Makefile head/share/mk/src.opts.mk head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/etc/Makefile == --- head/etc/Makefile Wed Jul 4 17:10:07 2018(r335962) +++ head/etc/Makefile Wed Jul 4 17:18:35 2018(r335963) @@ -192,12 +192,17 @@ distribution: ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ ${BIN1} ${DESTDIR}/etc; \ cap_mkdb ${CAP_MKDB_ENDIAN} ${DESTDIR}/etc/login.conf; \ - services_mkdb ${CAP_MKDB_ENDIAN} -q -o ${DESTDIR}/var/db/services.db \ - ${DESTDIR}/etc/services; \ ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 755 \ ${BIN2} ${DESTDIR}/etc; \ ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 600 \ master.passwd nsmb.conf opieaccess ${DESTDIR}/etc; + +.if ${MK_SERVICESDB} != "no" + cd ${.CURDIR}; \ + services_mkdb ${CAP_MKDB_ENDIAN} -q -o ${DESTDIR}/var/db/services.db \ + ${DESTDIR}/etc/services; +.endif + .if ${MK_BSNMP} != "no" cd ${.CURDIR}; \ ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 600 \ Modified: head/share/mk/src.opts.mk == --- head/share/mk/src.opts.mk Wed Jul 4 17:10:07 2018(r335962) +++ head/share/mk/src.opts.mk Wed Jul 4 17:18:35 2018(r335963) @@ -160,6 +160,7 @@ __DEFAULT_YES_OPTIONS = \ RESCUE \ ROUTED \ SENDMAIL \ +SERVICESDB \ SETUID_LOGIN \ SHAREDOCS \ SOURCELESS \ Modified: head/tools/build/mk/OptionalObsoleteFiles.inc == --- head/tools/build/mk/OptionalObsoleteFiles.inc Wed Jul 4 17:10:07 2018(r335962) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Wed Jul 4 17:18:35 2018(r335963) @@ -7527,6 +7527,10 @@ OLD_DIRS+=usr/share/sendmail/cf OLD_DIRS+=usr/share/sendmail .endif +.if ${MK_SERVICESDB} == no +OLD_FILES+=var/db/services.db +.endif + .if ${MK_SHAREDOCS} == no OLD_FILES+=usr/share/doc/pjdfstest/README OLD_DIRS+=usr/share/doc/pjdfstest Added: head/tools/build/options/WITHOUT_SERVICESDB == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/build/options/WITHOUT_SERVICESDB Wed Jul 4 17:18:35 2018 (r335963) @@ -0,0 +1,3 @@ +.\" $FreeBSD$ +Set to not install +.Pa /var/db/services.db . ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r335962 - head/sys/netipsec
Author: sbruno Date: Wed Jul 4 17:10:07 2018 New Revision: 335962 URL: https://svnweb.freebsd.org/changeset/base/335962 Log: fix locking within tcp_ipsec_pcbctl() to match ipsec4_pcbctl(), ipsec4_pcbctl() IPSEC_PCBCTL() functions, which include tcp_ipsec_pcbctl(), ipsec4_pcbctl(), and ipsec6_pcbctl(), should all have matching locking semantics. ipsec4_pcbctl() and ipsec6_pcbctl() expect the inp to be unlocked on entry and exit and appear to be correctly implemented as such. But tcp_ipsec_pcbctl() had other semantics. This patch fixes the semantics for tcp_ipsec_pcbctl(). Submitted by: Jason Eggleston MFH: 2 weeks Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D14623 Modified: head/sys/netipsec/xform_tcp.c Modified: head/sys/netipsec/xform_tcp.c == --- head/sys/netipsec/xform_tcp.c Wed Jul 4 17:06:51 2018 (r335961) +++ head/sys/netipsec/xform_tcp.c Wed Jul 4 17:10:07 2018 (r335962) @@ -80,23 +80,24 @@ tcp_ipsec_pcbctl(struct inpcb *inp, struct sockopt *so struct tcpcb *tp; int error, optval; - INP_WLOCK_ASSERT(inp); if (sopt->sopt_name != TCP_MD5SIG) { - INP_WUNLOCK(inp); return (ENOPROTOOPT); } - tp = intotcpcb(inp); if (sopt->sopt_dir == SOPT_GET) { + INP_RLOCK(inp); + if (inp->inp_flags & (INP_TIMEWAIT | INP_DROPPED)) { + INP_RUNLOCK(inp); + return (ECONNRESET); + } + tp = intotcpcb(inp); optval = (tp->t_flags & TF_SIGNATURE) ? 1 : 0; - INP_WUNLOCK(inp); + INP_RUNLOCK(inp); /* On success return with released INP_WLOCK */ return (sooptcopyout(sopt, &optval, sizeof(optval))); } - INP_WUNLOCK(inp); - error = sooptcopyin(sopt, &optval, sizeof(optval), sizeof(optval)); if (error != 0) return (error); @@ -107,12 +108,13 @@ tcp_ipsec_pcbctl(struct inpcb *inp, struct sockopt *so INP_WUNLOCK(inp); return (ECONNRESET); } + tp = intotcpcb(inp); if (optval > 0) tp->t_flags |= TF_SIGNATURE; else tp->t_flags &= ~TF_SIGNATURE; - /* On success return with acquired INP_WLOCK */ + INP_WUNLOCK(inp); return (error); } ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r335896 - head/sys/dev/ata
Author: sbruno Date: Tue Jul 3 16:17:59 2018 New Revision: 335896 URL: https://svnweb.freebsd.org/changeset/base/335896 Log: Reset indentiation of ata_suspend() such that its clear we fall through this function and that we aren't supposed to be controlled by the first if() conditional. Found with gcc. No functional change is intended with this commit. Modified: head/sys/dev/ata/ata-all.c Modified: head/sys/dev/ata/ata-all.c == --- head/sys/dev/ata/ata-all.c Tue Jul 3 16:07:04 2018(r335895) +++ head/sys/dev/ata/ata-all.c Tue Jul 3 16:17:59 2018(r335896) @@ -316,13 +316,13 @@ ata_suspend(device_t dev) if (!dev || !(ch = device_get_softc(dev))) return ENXIO; - if (ch->flags & ATA_PERIODIC_POLL) - callout_drain(&ch->poll_callout); - mtx_lock(&ch->state_mtx); - xpt_freeze_simq(ch->sim, 1); - while (ch->state != ATA_IDLE) - msleep(ch, &ch->state_mtx, PRIBIO, "atasusp", hz/100); - mtx_unlock(&ch->state_mtx); +if (ch->flags & ATA_PERIODIC_POLL) + callout_drain(&ch->poll_callout); +mtx_lock(&ch->state_mtx); +xpt_freeze_simq(ch->sim, 1); +while (ch->state != ATA_IDLE) + msleep(ch, &ch->state_mtx, PRIBIO, "atasusp", hz/100); +mtx_unlock(&ch->state_mtx); return(0); } ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r335894 - head/sys/dev/ata/chipsets
Author: sbruno Date: Tue Jul 3 15:56:22 2018 New Revision: 335894 URL: https://svnweb.freebsd.org/changeset/base/335894 Log: Reset indentation of this flag. No functional change intended. Found with gcc. sys/dev/ata/chipsets/ata-siliconimage.c: In function 'ata_cmd_ch_attach': sys/dev/ata/chipsets/ata-siliconimage.c:187:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if (ctlr->chip->cfg2 & SII_INTR) ^~ sys/dev/ata/chipsets/ata-siliconimage.c:190:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' ch->flags |= ATA_NO_ATAPI_DMA; Modified: head/sys/dev/ata/chipsets/ata-siliconimage.c Modified: head/sys/dev/ata/chipsets/ata-siliconimage.c == --- head/sys/dev/ata/chipsets/ata-siliconimage.cTue Jul 3 15:48:34 2018(r335893) +++ head/sys/dev/ata/chipsets/ata-siliconimage.cTue Jul 3 15:56:22 2018(r335894) @@ -187,7 +187,7 @@ ata_cmd_ch_attach(device_t dev) if (ctlr->chip->cfg2 & SII_INTR) ch->hw.status = ata_cmd_status; - ch->flags |= ATA_NO_ATAPI_DMA; +ch->flags |= ATA_NO_ATAPI_DMA; return 0; } ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: head -r335795 broke the builds for ci.freebsd.org 's FreeBSD-head-{amd64,i386,powerpc,risc64,sparc64}-build
On 06/29/18 08:50, Mark Millard wrote: > Side note: > > All I get for the lists that I normally look at is: > > Error 503 Backend fetch failed > > Backend status: Backend fetch failed > > Transaction ID: . . . I think I fixed that about an hour ago. Try again. sean signature.asc Description: OpenPGP digital signature
svn commit: r335610 - head/sys/netinet
Author: sbruno Date: Sun Jun 24 21:46:29 2018 New Revision: 335610 URL: https://svnweb.freebsd.org/changeset/base/335610 Log: Enable TCP_FASTOPEN by default for FreeBSD 12. Submitted by: kbowling Reviewed by: tuexen Differential Revision:https://reviews.freebsd.org/D15959 Modified: head/sys/netinet/tcp_fastopen.c Modified: head/sys/netinet/tcp_fastopen.c == --- head/sys/netinet/tcp_fastopen.c Sun Jun 24 21:36:37 2018 (r335609) +++ head/sys/netinet/tcp_fastopen.c Sun Jun 24 21:46:29 2018 (r335610) @@ -278,7 +278,7 @@ SYSCTL_UINT(_net_inet_tcp_fastopen, OID_AUTO, ccache_b CTLFLAG_VNET | CTLFLAG_RDTUN, &VNET_NAME(tcp_fastopen_ccache_buckets), 0, "Client cookie cache number of buckets (power of 2)"); -VNET_DEFINE(unsigned int, tcp_fastopen_client_enable) = 0; +VNET_DEFINE(unsigned int, tcp_fastopen_client_enable) = 1; static int sysctl_net_inet_tcp_fastopen_client_enable(SYSCTL_HANDLER_ARGS); SYSCTL_PROC(_net_inet_tcp_fastopen, OID_AUTO, client_enable, CTLFLAG_VNET | CTLTYPE_UINT | CTLFLAG_RW, NULL, 0, ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r335609 - head/sys/netinet
Author: sbruno Date: Sun Jun 24 21:36:37 2018 New Revision: 335609 URL: https://svnweb.freebsd.org/changeset/base/335609 Log: Reap unused variable and assignment that had no effect. Noted by cross compiling with gcc on mips. Reviewed by: mmacy Modified: head/sys/netinet/in_pcb.c Modified: head/sys/netinet/in_pcb.c == --- head/sys/netinet/in_pcb.c Sun Jun 24 21:19:08 2018(r335608) +++ head/sys/netinet/in_pcb.c Sun Jun 24 21:36:37 2018(r335609) @@ -1582,11 +1582,9 @@ static void in_pcbfree_deferred(epoch_context_t ctx) { struct inpcb *inp; - struct inpcbinfo *pcbinfo; int released __unused; inp = __containerof(ctx, struct inpcb, inp_epoch_ctx); - pcbinfo = inp->inp_pcbinfo; INP_WLOCK(inp); #ifdef INET ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r335608 - head/sbin/pfctl
Author: sbruno Date: Sun Jun 24 21:19:08 2018 New Revision: 335608 URL: https://svnweb.freebsd.org/changeset/base/335608 Log: Assuming that the intent (from the white space) is that the fprintf() be executed in the if() conditional. If its not supposed to be printed inside the conditional, then the braces should be removed and the extra tabs on the fprintf() should be removed. Noted by cross compilation with gcc-mips. Modified: head/sbin/pfctl/pfctl_altq.c Modified: head/sbin/pfctl/pfctl_altq.c == --- head/sbin/pfctl/pfctl_altq.cSun Jun 24 19:29:29 2018 (r335607) +++ head/sbin/pfctl/pfctl_altq.cSun Jun 24 21:19:08 2018 (r335608) @@ -497,12 +497,13 @@ cbq_compute_idletime(struct pfctl *pf, struct pf_altq * this causes integer overflow in kernel! * (bandwidth < 6Kbps when max_pkt_size=1500) */ - if (pa->bandwidth != 0 && (pf->opts & PF_OPT_QUIET) == 0) + if (pa->bandwidth != 0 && (pf->opts & PF_OPT_QUIET) == 0) { warnx("queue bandwidth must be larger than %s", rate2str(ifnsPerByte * (double)opts->maxpktsize / (double)INT_MAX * (double)pa->ifbandwidth)); fprintf(stderr, "cbq: queue %s is too slow!\n", pa->qname); + } nsPerByte = (double)(INT_MAX / opts->maxpktsize); } ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r335386 - in head: share/examples tools/build/mk usr.sbin
Author: sbruno Date: Tue Jun 19 21:07:25 2018 New Revision: 335386 URL: https://svnweb.freebsd.org/changeset/base/335386 Log: MK_EFI - Add uefisign and friends to this knob and ensure that we don't try to build them if MK_OPENSSL is unset. Reviewed by: emaste imp kevans Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D15211 Modified: head/share/examples/Makefile head/tools/build/mk/OptionalObsoleteFiles.inc head/usr.sbin/Makefile Modified: head/share/examples/Makefile == --- head/share/examples/MakefileTue Jun 19 20:32:43 2018 (r335385) +++ head/share/examples/MakefileTue Jun 19 21:07:25 2018 (r335386) @@ -31,7 +31,6 @@ LDIRS=BSD_daemon \ ses \ scsi_target \ sunrpc \ - uefisign \ ypldap @@ -343,8 +342,11 @@ SE_SUNRPC_SORT= \ sort.x \ sort_proc.c +.if ${MK_EFI} != "no" +LDIRS+=uefisign SE_DIRS+= uefisign SE_UEFISIGN= uefikeys +.endif SE_DIRS+= ypldap SE_YPLDAP= ypldap.conf Modified: head/tools/build/mk/OptionalObsoleteFiles.inc == --- head/tools/build/mk/OptionalObsoleteFiles.inc Tue Jun 19 20:32:43 2018(r335385) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Tue Jun 19 21:07:25 2018(r335386) @@ -1614,6 +1614,14 @@ OLD_DIRS+=usr/share/bsdconfig/timezone OLD_DIRS+=usr/share/bsdconfig/usermgmt .endif +.if ${MK_EFI} == no +OLD_FILES+=usr/sbin/efibootmgr +OLD_FILES+=usr/sbin/efidp +OLD_FILES+=usr/sbin/efivar +OLD_FILES+=usr/sbin/uefisign +OLD_FILES+=usr/share/examples/uefisign/uefikeys +.endif + .if ${MK_FMTREE} == no OLD_FILES+=usr/sbin/fmtree OLD_FILES+=usr/share/man/man8/fmtree.8.gz Modified: head/usr.sbin/Makefile == --- head/usr.sbin/Makefile Tue Jun 19 20:32:43 2018(r335385) +++ head/usr.sbin/Makefile Tue Jun 19 21:07:25 2018(r335386) @@ -92,7 +92,6 @@ SUBDIR= adduser \ traceroute \ trpt \ tzsetup \ - uefisign \ ugidfw \ vigr \ vipw \ @@ -126,6 +125,9 @@ SUBDIR.${MK_CTM}+= ctm SUBDIR.${MK_CXGBETOOL}+= cxgbetool SUBDIR.${MK_DIALOG}+= bsdconfig SUBDIR.${MK_EFI}+= efivar efidp efibootmgr +.if ${MK_OPENSSL} != "no" +SUBDIR.${MK_EFI}+= uefisign +.endif SUBDIR.${MK_FLOPPY}+= fdcontrol SUBDIR.${MK_FLOPPY}+= fdformat SUBDIR.${MK_FLOPPY}+= fdread ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r335379 - head/sys/contrib/libnv
Author: sbruno Date: Tue Jun 19 18:09:15 2018 New Revision: 335379 URL: https://svnweb.freebsd.org/changeset/base/335379 Log: Set prev to NULL so its garaunteed to have a value of some kind and gcc doesn't explode. Feel free to fix this correctly or whatever for gcc builds. This *should* quiesce tinderbox after r335347 for the gcc builds. Modified: head/sys/contrib/libnv/nvpair.c Modified: head/sys/contrib/libnv/nvpair.c == --- head/sys/contrib/libnv/nvpair.c Tue Jun 19 17:41:46 2018 (r335378) +++ head/sys/contrib/libnv/nvpair.c Tue Jun 19 18:09:15 2018 (r335379) @@ -1979,7 +1979,7 @@ int nvpair_append_nvlist_array(nvpair_t *nvp, const nvlist_t *value) { nvpair_t *tmpnvp; - nvlist_t *nvl, *prev; + nvlist_t *nvl, *prev = NULL; int flags; NVPAIR_ASSERT(nvp); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r335372 - head/sys/dev/ixl
Author: sbruno Date: Tue Jun 19 15:55:21 2018 New Revision: 335372 URL: https://svnweb.freebsd.org/changeset/base/335372 Log: Remove "diff" line indicator. Next to see if this code works or not. Submitted by: mmacy Sponsored by: Limelight Networks Modified: head/sys/dev/ixl/ixlvc.c Modified: head/sys/dev/ixl/ixlvc.c == --- head/sys/dev/ixl/ixlvc.cTue Jun 19 15:05:31 2018(r335371) +++ head/sys/dev/ixl/ixlvc.cTue Jun 19 15:55:21 2018(r335372) @@ -386,9 +386,9 @@ ixlv_configure_queues(struct ixlv_sc *sc) { device_tdev = sc->dev; struct ixl_vsi *vsi = &sc->vsi; -+ if_softc_ctx_t scctx = iflib_get_softc_ctx(vsi->ctx); -+ struct ixl_tx_queue *tx_que = vsi->tx_queues; -+ struct ixl_rx_queue *rx_que = vsi->rx_queues; + if_softc_ctx_t scctx = iflib_get_softc_ctx(vsi->ctx); + struct ixl_tx_queue *tx_que = vsi->tx_queues; + struct ixl_rx_queue *rx_que = vsi->rx_queues; struct tx_ring *txr; struct rx_ring *rxr; int len, pairs; @@ -396,9 +396,9 @@ ixlv_configure_queues(struct ixlv_sc *sc) struct virtchnl_vsi_queue_config_info *vqci; struct virtchnl_queue_pair_info *vqpi; -+ /* XXX: Linux PF driver wants matching ids in each tx/rx struct, so both TX/RX -+ * queues of a pair need to be configured */ -+ pairs = max(vsi->num_tx_queues, vsi->num_rx_queues); + /* XXX: Linux PF driver wants matching ids in each tx/rx struct, so both TX/RX +* queues of a pair need to be configured */ + pairs = max(vsi->num_tx_queues, vsi->num_rx_queues); len = sizeof(struct virtchnl_vsi_queue_config_info) + (sizeof(struct virtchnl_queue_pair_info) * pairs); vqci = malloc(len, M_DEVBUF, M_NOWAIT | M_ZERO); @@ -413,24 +413,24 @@ ixlv_configure_queues(struct ixlv_sc *sc) /* Size check is not needed here - HW max is 16 queue pairs, and we * can fit info for 31 of them into the AQ buffer before it overflows. */ -+ for (int i = 0; i < pairs; i++, tx_que++, rx_que++, vqpi++) { -+ txr = &tx_que->txr; -+ rxr = &rx_que->rxr; -+ + for (int i = 0; i < pairs; i++, tx_que++, rx_que++, vqpi++) { + txr = &tx_que->txr; + rxr = &rx_que->rxr; + vqpi->txq.vsi_id = vqci->vsi_id; vqpi->txq.queue_id = i; -+ vqpi->txq.ring_len = scctx->isc_ntxd[0]; -+ vqpi->txq.dma_ring_addr = txr->tx_paddr; + vqpi->txq.ring_len = scctx->isc_ntxd[0]; + vqpi->txq.dma_ring_addr = txr->tx_paddr; /* Enable Head writeback */ vqpi->txq.headwb_enabled = 0; vqpi->txq.dma_headwb_addr = 0; vqpi->rxq.vsi_id = vqci->vsi_id; vqpi->rxq.queue_id = i; -+ vqpi->rxq.ring_len = scctx->isc_nrxd[0]; -+ vqpi->rxq.dma_ring_addr = rxr->rx_paddr; -+ vqpi->rxq.max_pkt_size = scctx->isc_max_frame_size; -+ // TODO: Get this value from iflib, somehow + vqpi->rxq.ring_len = scctx->isc_nrxd[0]; + vqpi->rxq.dma_ring_addr = rxr->rx_paddr; + vqpi->rxq.max_pkt_size = scctx->isc_max_frame_size; + // TODO: Get this value from iflib, somehow vqpi->rxq.databuffer_size = rxr->mbuf_sz; vqpi->rxq.splithdr_enabled = 0; } @@ -451,8 +451,8 @@ ixlv_enable_queues(struct ixlv_sc *sc) struct virtchnl_queue_select vqs; vqs.vsi_id = sc->vsi_res->vsi_id; -+ /* XXX: In Linux PF, as long as neither of these is 0, -+ * every queue in VF VSI is enabled. */ + /* XXX: In Linux PF, as long as neither of these is 0, +* every queue in VF VSI is enabled. */ vqs.tx_queues = (1 << sc->vsi_res->num_queue_pairs) - 1; vqs.rx_queues = vqs.tx_queues; ixlv_send_pf_msg(sc, VIRTCHNL_OP_ENABLE_QUEUES, @@ -470,8 +470,8 @@ ixlv_disable_queues(struct ixlv_sc *sc) struct virtchnl_queue_select vqs; vqs.vsi_id = sc->vsi_res->vsi_id; -+ /* XXX: In Linux PF, as long as neither of these is 0, -+ * every queue in VF VSI is disabled. */ + /* XXX: In Linux PF, as long as neither of these is 0, +* every queue in VF VSI is disabled. */ vqs.tx_queues = (1 << sc->vsi_res->num_queue_pairs) - 1; vqs.rx_queues = vqs.tx_queues; ixlv_send_pf_msg(sc, VIRTCHNL_OP_DISABLE_QUEUES, @@ -490,29 +490,29 @@ ixlv_map_queues(struct ixlv_sc *sc) struct virtchnl_irq_map_info *vm; int i, q, len; struct ixl_vsi *vsi = &sc->vsi; -+ struct ixl_rx_queue *rx_que = vsi->rx_queues; -+ if_softc_ctx_t scctx = vsi->share
Re: svn commit: r334046 - head/tools/tools/intel-ucode-split
On 06/12/18 16:05, Oliver Pinter wrote: > On 5/22/18, Ed Maste wrote: >> Author: emaste >> Date: Tue May 22 14:35:33 2018 >> New Revision: 334046 >> URL: https://svnweb.freebsd.org/changeset/base/334046 >> >> Log: >> intel-ucode-split: add -n flag to skip creating output files >> >> Sponsored by: The FreeBSD Foundation >> >> Modified: >> head/tools/tools/intel-ucode-split/intel-ucode-split.c > > Hi! > > Could you please MFC the intel-ucode-split related commits to 11-STABLE? > > > Thanks, > op > Do you need it in base for some reason? This code is already in the devcpu-data port and is used when the port is built. Its not needed for anything AFAIK. sean >> >> Modified: head/tools/tools/intel-ucode-split/intel-ucode-split.c >> == >> --- head/tools/tools/intel-ucode-split/intel-ucode-split.c Tue May 22 >> 14:26:58 2018(r334045) >> +++ head/tools/tools/intel-ucode-split/intel-ucode-split.c Tue May 22 >> 14:35:33 2018(r334046) >> @@ -112,7 +112,7 @@ static void >> usage(void) >> { >> >> -printf("ucode-split [-v] microcode_file\n"); >> +printf("ucode-split [-nv] microcode_file\n"); >> exit(1); >> } >> >> @@ -124,11 +124,14 @@ main(int argc, char *argv[]) >> size_t len, resid; >> ssize_t rv; >> int c, ifd, ofd; >> -bool vflag; >> +bool nflag, vflag; >> >> -vflag = false; >> -while ((c = getopt(argc, argv, "v")) != -1) { >> +nflag = vflag = false; >> +while ((c = getopt(argc, argv, "nv")) != -1) { >> switch (c) { >> +case 'n': >> +nflag = true; >> +break; >> case 'v': >> vflag = true; >> break; >> @@ -166,40 +169,48 @@ main(int argc, char *argv[]) >> if (vflag) >> dump_header(&hdr); >> >> -sig_str = format_signature(hdr.processor_signature); >> -asprintf(&output_file, "%s.%02x", sig_str, >> -hdr.processor_flags & 0xff); >> -free(sig_str); >> -if (output_file == NULL) >> -err(1, "asprintf"); >> -ofd = open(output_file, O_WRONLY | O_CREAT | O_TRUNC, 0600); >> -if (ofd < 0) >> -err(1, "open"); >> - >> -/* Write header. */ >> -rv = write(ofd, &hdr, sizeof(hdr)); >> -if (rv < (ssize_t)sizeof(hdr)) >> -err(1, "write"); >> - >> -/* Copy data. */ >> resid = (hdr.total_size != 0 ? hdr.total_size : 2048) - >> sizeof(hdr); >> if (resid > 1 << 24) /* Arbitrary chosen maximum size. */ >> errx(1, "header total_size too large"); >> -while (resid > 0) { >> -len = resid < bufsize ? resid : bufsize; >> -rv = read(ifd, buf, len); >> -if (rv < 0) >> -err(1, "read"); >> -else if (rv < (ssize_t)len) >> -errx(1, "truncated microcode data"); >> -if (write(ofd, buf, len) < (ssize_t)len) >> + >> +if (nflag) { >> +if (lseek(ifd, resid, SEEK_CUR) == -1) >> +err(1, "lseek"); >> +printf("\n"); >> +} else { >> +sig_str = format_signature(hdr.processor_signature); >> +asprintf(&output_file, "%s.%02x", sig_str, >> +hdr.processor_flags & 0xff); >> +free(sig_str); >> +if (output_file == NULL) >> +err(1, "asprintf"); >> +ofd = open(output_file, O_WRONLY | O_CREAT | O_TRUNC, >> +0600); >> +if (ofd < 0) >> +err(1, "open"); >> + >> +/* Write header. */ >> +rv = write(ofd, &hdr, sizeof(hdr)); >> +if (rv < (ssize_t)sizeof(hdr)) >> err(1, "write"); >> -resid -= len; >> + >> +/* Copy data. */ >> +while (resid > 0) { >> +len = resid < bufsize ? resid : bufsize; >> +rv = read(ifd, buf, len); >> +if (rv < 0) >> +err(1, "read"); >> +else if (rv < (ssize_t)len) >> +errx(1, "truncated microcode data"); >> +if (write(ofd, buf, len) < (ssize_t)len) >> +err(1, "write"); >> +resid -= len; >> +} >> +if (vflag) >> +printf(
svn commit: r335011 - head/tools/build/mk
Author: sbruno Date: Tue Jun 12 19:26:25 2018 New Revision: 335011 URL: https://svnweb.freebsd.org/changeset/base/335011 Log: WITHOUT_NLS cleanup of more empty dirs. Reviewed by: emaste Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D15626 Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc == --- head/tools/build/mk/OptionalObsoleteFiles.inc Tue Jun 12 18:58:56 2018(r335010) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Tue Jun 12 19:26:25 2018(r335011) @@ -6253,104 +6253,262 @@ OLD_FILES+=var/yp/Makefile.dist .endif .if ${MK_NLS} == no +OLD_DIRS+=usr/share/nls/ +OLD_DIRS+=usr/share/nls/C +OLD_FILES+=usr/share/mk/bsd.nls.mk OLD_FILES+=usr/share/nls/C/ee.cat +OLD_DIRS+=usr/share/nls/af_ZA.ISO8859-1 +OLD_DIRS+=usr/share/nls/af_ZA.ISO8859-15 +OLD_DIRS+=usr/share/nls/af_ZA.UTF-8 +OLD_DIRS+=usr/share/nls/am_ET.UTF-8 +OLD_DIRS+=usr/share/nls/be_BY.CP1131 +OLD_DIRS+=usr/share/nls/be_BY.CP1251 +OLD_DIRS+=usr/share/nls/be_BY.ISO8859-5 +OLD_DIRS+=usr/share/nls/be_BY.UTF-8 OLD_FILES+=usr/share/nls/be_BY.UTF-8/libc.cat +OLD_DIRS+=usr/share/nls/bg_BG.CP1251 +OLD_DIRS+=usr/share/nls/bg_BG.UTF-8 +OLD_DIRS+=usr/share/nls/ca_ES.ISO8859-1 OLD_FILES+=usr/share/nls/ca_ES.ISO8859-1/libc.cat +OLD_DIRS+=usr/share/nls/ca_ES.ISO8859-15 +OLD_DIRS+=usr/share/nls/ca_ES.UTF-8 +OLD_DIRS+=usr/share/nls/cs_CZ.ISO8859-2 +OLD_DIRS+=usr/share/nls/cs_CZ.UTF-8 +OLD_DIRS+=usr/share/nls/da_DK.ISO8859-1 +OLD_DIRS+=usr/share/nls/da_DK.ISO8859-15 +OLD_DIRS+=usr/share/nls/da_DK.UTF-8 +OLD_DIRS+=usr/share/nls/de_AT.ISO8859-1 OLD_FILES+=usr/share/nls/de_AT.ISO8859-1/ee.cat OLD_FILES+=usr/share/nls/de_AT.ISO8859-1/tcsh.cat +OLD_DIRS+=usr/share/nls/de_AT.ISO8859-15 OLD_FILES+=usr/share/nls/de_AT.ISO8859-15/ee.cat OLD_FILES+=usr/share/nls/de_AT.ISO8859-15/tcsh.cat +OLD_DIRS+=usr/share/nls/de_AT.UTF-8 OLD_FILES+=usr/share/nls/de_AT.UTF-8/tcsh.cat +OLD_DIRS+=usr/share/nls/de_CH.ISO8859-1 OLD_FILES+=usr/share/nls/de_CH.ISO8859-1/ee.cat OLD_FILES+=usr/share/nls/de_CH.ISO8859-1/tcsh.cat +OLD_DIRS+=usr/share/nls/de_CH.ISO8859-15 OLD_FILES+=usr/share/nls/de_CH.ISO8859-15/ee.cat OLD_FILES+=usr/share/nls/de_CH.ISO8859-15/tcsh.cat +OLD_DIRS+=usr/share/nls/de_CH.UTF-8 OLD_FILES+=usr/share/nls/de_CH.UTF-8/tcsh.cat +OLD_DIRS+=usr/share/nls/de_DE.ISO8859-1 OLD_FILES+=usr/share/nls/de_DE.ISO8859-1/ee.cat OLD_FILES+=usr/share/nls/de_DE.ISO8859-1/libc.cat OLD_FILES+=usr/share/nls/de_DE.ISO8859-1/tcsh.cat +OLD_DIRS+=usr/share/nls/de_DE.ISO8859-15 OLD_FILES+=usr/share/nls/de_DE.ISO8859-15/ee.cat OLD_FILES+=usr/share/nls/de_DE.ISO8859-15/tcsh.cat +OLD_DIRS+=usr/share/nls/de_DE.UTF-8 OLD_FILES+=usr/share/nls/de_DE.UTF-8/tcsh.cat +OLD_DIRS+=usr/share/nls/el_GR.ISO8859-7 OLD_FILES+=usr/share/nls/el_GR.ISO8859-7/libc.cat OLD_FILES+=usr/share/nls/el_GR.ISO8859-7/tcsh.cat +OLD_DIRS+=usr/share/nls/el_GR.UTF-8 OLD_FILES+=usr/share/nls/el_GR.UTF-8/tcsh.cat +OLD_DIRS+=usr/share/nls/en_AU.ISO8859-1 +OLD_DIRS+=usr/share/nls/en_AU.ISO8859-15 +OLD_DIRS+=usr/share/nls/en_AU.US-ASCII +OLD_DIRS+=usr/share/nls/en_AU.UTF-8 +OLD_DIRS+=usr/share/nls/en_CA.ISO8859-1 OLD_FILES+=usr/share/nls/en_US.ISO8859-1/ee.cat +OLD_DIRS+=usr/share/nls/en_CA.ISO8859-15 +OLD_DIRS+=usr/share/nls/en_CA.US-ASCII +OLD_DIRS+=usr/share/nls/en_CA.UTF-8 +OLD_DIRS+=usr/share/nls/en_GB.ISO8859-1 +OLD_DIRS+=usr/share/nls/en_GB.ISO8859-15 +OLD_DIRS+=usr/share/nls/en_GB.US-ASCII +OLD_DIRS+=usr/share/nls/en_GB.UTF-8 +OLD_DIRS+=usr/share/nls/en_IE.UTF-8 +OLD_DIRS+=usr/share/nls/en_NZ.ISO8859-1 +OLD_DIRS+=usr/share/nls/en_NZ.ISO8859-15 +OLD_DIRS+=usr/share/nls/en_NZ.US-ASCII +OLD_DIRS+=usr/share/nls/en_NZ.UTF-8 +OLD_DIRS+=usr/share/nls/en_US.ISO8859-1 +OLD_DIRS+=usr/share/nls/en_US.ISO8859-15 OLD_FILES+=usr/share/nls/en_US.ISO8859-15/ee.cat +OLD_DIRS+=usr/share/nls/en_US.UTF-8 +OLD_DIRS+=usr/share/nls/es_ES.UTF-8 +OLD_FILES+=usr/share/nls/es_ES.ISO8859-1/grep.cat OLD_FILES+=usr/share/nls/es_ES.ISO8859-1/libc.cat OLD_FILES+=usr/share/nls/es_ES.ISO8859-1/tcsh.cat +OLD_DIRS+=usr/share/nls/es_ES.ISO8859-1 +OLD_DIRS+=usr/share/nls/es_ES.ISO8859-15 OLD_FILES+=usr/share/nls/es_ES.ISO8859-15/tcsh.cat OLD_FILES+=usr/share/nls/es_ES.UTF-8/tcsh.cat +OLD_DIRS+=usr/share/nls/et_EE.ISO8859-15 OLD_FILES+=usr/share/nls/et_EE.ISO8859-15/tcsh.cat +OLD_DIRS+=usr/share/nls/et_EE.UTF-8 OLD_FILES+=usr/share/nls/et_EE.UTF-8/tcsh.cat +OLD_DIRS+=usr/share/nls/fi_FI.ISO8859-1 OLD_FILES+=usr/share/nls/fi_FI.ISO8859-1/libc.cat OLD_FILES+=usr/share/nls/fi_FI.ISO8859-1/tcsh.cat +OLD_DIRS+=usr/share/nls/fi_FI.ISO8859-15 OLD_FILES+=usr/share/nls/fi_FI.ISO8859-15/tcsh.cat +OLD_DIRS+=usr/share/nls/fi_FI.UTF-8 OLD_FILES+=usr/share/nls/fi_FI.UTF-8/tcsh.cat +OLD_DIRS+=usr/share/nls/fr_BE.ISO8859-1 OLD_FILES+=usr/share/nls/fr_BE.ISO8859-1/ee.cat OLD_FILES+=usr/share/nls/fr_BE.ISO8859-1/tcsh.cat +
svn commit: r335010 - head/usr.sbin/cpucontrol
Author: sbruno Date: Tue Jun 12 18:58:56 2018 New Revision: 335010 URL: https://svnweb.freebsd.org/changeset/base/335010 Log: cpucontrol: - fix debugging for family on AMD cpus and add useful debugging for which file is being selected for update. Reviewed by: cem Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D15574 Modified: head/usr.sbin/cpucontrol/amd10h.c Modified: head/usr.sbin/cpucontrol/amd10h.c == --- head/usr.sbin/cpucontrol/amd10h.c Tue Jun 12 18:42:41 2018 (r335009) +++ head/usr.sbin/cpucontrol/amd10h.c Tue Jun 12 18:58:56 2018 (r335010) @@ -139,7 +139,8 @@ amd10h_update(const char *dev, const char *path) WARNX(1, "found cpu family %#x model %#x " "stepping %#x extfamily %#x extmodel %#x.", - (signature >> 8) & 0x0f, (signature >> 4) & 0x0f, + ((signature >> 8) & 0x0f) + ((signature >> 20) & 0xff), + (signature >> 4) & 0x0f, (signature >> 0) & 0x0f, (signature >> 20) & 0xff, (signature >> 16) & 0x0f); WARNX(1, "microcode revision %#x", revision); @@ -147,6 +148,7 @@ amd10h_update(const char *dev, const char *path) /* * Open the firmware file. */ + WARNX(1, "checking %s for update.", path); fd = open(path, O_RDONLY, 0); if (fd < 0) { WARN(0, "open(%s)", path); @@ -215,7 +217,9 @@ amd10h_update(const char *dev, const char *path) for (i = 0; equiv_cpu_table[i].installed_cpu != 0; i++) { if (signature == equiv_cpu_table[i].installed_cpu) { equiv_id = equiv_cpu_table[i].equiv_cpu; - WARNX(3, "equiv_id: %x", equiv_id); + WARNX(3, "equiv_id: %x, signature %8x," + " equiv_cpu_table[%d] %8x", equiv_id, signature, + i, equiv_cpu_table[i].installed_cpu); break; } } @@ -249,10 +253,16 @@ amd10h_update(const char *dev, const char *path) fw_data += section_header->size; fw_size -= section_header->size; - if (fw_header->processor_rev_id != equiv_id) + if (fw_header->processor_rev_id != equiv_id) { + WARNX(1, "firmware processort_rev_id %x, equiv_id %x", + fw_header->processor_rev_id, equiv_id); continue; /* different cpu */ - if (fw_header->patch_id <= revision) + } + if (fw_header->patch_id <= revision) { + WARNX(1, "patch_id %x, revision %x", + fw_header->patch_id, revision); continue; /* not newer revision */ + } if (fw_header->nb_dev_id != 0 || fw_header->sb_dev_id != 0) { WARNX(2, "Chipset-specific microcode is not supported"); } ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r334788 - head/cddl/lib/libdtrace
Author: sbruno Date: Thu Jun 7 15:27:07 2018 New Revision: 334788 URL: https://svnweb.freebsd.org/changeset/base/334788 Log: Unbreak dtrace runtime for udp after svn r334719 SO_REUSEPORT commit. Submitted by: Johannes Lundberg Sponsored by: Limeligght Networks Modified: head/cddl/lib/libdtrace/udp.d Modified: head/cddl/lib/libdtrace/udp.d == --- head/cddl/lib/libdtrace/udp.d Thu Jun 7 15:03:47 2018 (r334787) +++ head/cddl/lib/libdtrace/udp.d Thu Jun 7 15:27:07 2018 (r334788) @@ -58,12 +58,12 @@ translator udpsinfo_t < struct inpcb *p > { udps_rport =p == NULL ? 0 : ntohs(p->inp_inc.inc_ie.ie_fport); udps_laddr =p == NULL ? "" : p->inp_vflag == INP_IPV4 ? - inet_ntoa(&p->inp_inc.inc_ie.ie_dependladdr.ie46_local.ia46_addr4.s_addr) : - inet_ntoa6(&p->inp_inc.inc_ie.ie_dependladdr.ie6_local); + inet_ntoa(&p->inp_inc.inc_ie.ie_dependladdr.id46_addr.ia46_addr4.s_addr) : + inet_ntoa6(&p->inp_inc.inc_ie.ie_dependladdr.id6_addr); udps_raddr =p == NULL ? "" : p->inp_vflag == INP_IPV4 ? - inet_ntoa(&p->inp_inc.inc_ie.ie_dependfaddr.ie46_foreign.ia46_addr4.s_addr) : - inet_ntoa6(&p->inp_inc.inc_ie.ie_dependfaddr.ie6_foreign); + inet_ntoa(&p->inp_inc.inc_ie.ie_dependfaddr.id46_addr.ia46_addr4.s_addr) : + inet_ntoa6(&p->inp_inc.inc_ie.ie_dependfaddr.id6_addr); }; #pragma D binding "1.6.3" translator ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r334719 - in head: cddl/lib/libdtrace lib/libc/sys sys/kern sys/netinet sys/netinet6 sys/sys
Author: sbruno Date: Wed Jun 6 15:45:57 2018 New Revision: 334719 URL: https://svnweb.freebsd.org/changeset/base/334719 Log: Load balance sockets with new SO_REUSEPORT_LB option. This patch adds a new socket option, SO_REUSEPORT_LB, which allow multiple programs or threads to bind to the same port and incoming connections will be load balanced using a hash function. Most of the code was copied from a similar patch for DragonflyBSD. However, in DragonflyBSD, load balancing is a global on/off setting and can not be set per socket. This patch allows for simultaneous use of both the current SO_REUSEPORT and the new SO_REUSEPORT_LB options on the same system. Required changes to structures: Globally change so_options from 16 to 32 bit value to allow for more options. Add hashtable in pcbinfo to hold all SO_REUSEPORT_LB sockets. Limitations: As DragonflyBSD, a load balance group is limited to 256 pcbs (256 programs or threads sharing the same socket). This is a substantially different contribution as compared to its original incarnation at svn r332894 and reverted at svn r332967. Thanks to rwatson@ for the substantive feedback that is included in this commit. Submitted by: Johannes Lundberg Obtained from:DragonflyBSD Relnotes: Yes Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D11003 Modified: head/cddl/lib/libdtrace/tcp.d head/lib/libc/sys/getsockopt.2 head/sys/kern/uipc_debug.c head/sys/kern/uipc_socket.c head/sys/netinet/in_pcb.c head/sys/netinet/in_pcb.h head/sys/netinet/ip_output.c head/sys/netinet/udp_usrreq.c head/sys/netinet6/in6_pcb.c head/sys/netinet6/in6_src.c head/sys/netinet6/ip6_output.c head/sys/netinet6/udp6_usrreq.c head/sys/sys/socket.h head/sys/sys/socketvar.h Modified: head/cddl/lib/libdtrace/tcp.d == --- head/cddl/lib/libdtrace/tcp.d Wed Jun 6 15:31:47 2018 (r334718) +++ head/cddl/lib/libdtrace/tcp.d Wed Jun 6 15:45:57 2018 (r334719) @@ -192,12 +192,12 @@ translator tcpsinfo_t < struct tcpcb *p > { tcps_rport =p == NULL ? 0 : ntohs(p->t_inpcb->inp_inc.inc_ie.ie_fport); tcps_laddr =p == NULL ? 0 : p->t_inpcb->inp_vflag == INP_IPV4 ? - inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.ie46_local.ia46_addr4.s_addr) : - inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.ie6_local); + inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.id46_addr.ia46_addr4.s_addr) : + inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.id6_addr); tcps_raddr =p == NULL ? 0 : p->t_inpcb->inp_vflag == INP_IPV4 ? - inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.ie46_foreign.ia46_addr4.s_addr) : - inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.ie6_foreign); + inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.id46_addr.ia46_addr4.s_addr) : + inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.id6_addr); tcps_state =p == NULL ? -1 : p->t_state; tcps_iss = p == NULL ? 0 : p->iss; tcps_irs = p == NULL ? 0 : p->irs; Modified: head/lib/libc/sys/getsockopt.2 == --- head/lib/libc/sys/getsockopt.2 Wed Jun 6 15:31:47 2018 (r334718) +++ head/lib/libc/sys/getsockopt.2 Wed Jun 6 15:45:57 2018 (r334719) @@ -152,6 +152,7 @@ and set with .It Dv SO_DEBUG Ta "enables recording of debugging information" .It Dv SO_REUSEADDR Ta "enables local address reuse" .It Dv SO_REUSEPORT Ta "enables duplicate address and port bindings" +.It Dv SO_REUSEPORT_LB Ta "enables duplicate address and port bindings with load balancing" .It Dv SO_KEEPALIVE Ta "enables keep connections alive" .It Dv SO_DONTROUTE Ta "enables routing bypass for outgoing messages" .It Dv SO_LINGER Ta "linger on close if data present" @@ -207,6 +208,15 @@ if they all set before binding the port. This option permits multiple instances of a program to each receive UDP/IP multicast or broadcast datagrams destined for the bound port. +.Pp +.Dv SO_REUSEPORT_LB +allows completely duplicate bindings by multiple processes +if they all set +.Dv SO_REUSEPORT_LB +before binding the port. +Incoming TCP and UDP connections are distributed among the sharing +processes based on a hash function of local port number, foreign IP +address and port number. A maximum of 256 processes can share one socket. .Pp .Dv SO_KEEPALIVE enables the Modified: head/sys/kern/uipc_debug.c == --- head/sys/kern/uipc_debug.c Wed Jun 6 15:31:47 2018(r334718) +++ head/sys/kern/uipc_debug.c Wed Jun 6 1
svn commit: r334357 - head/sbin/dumpon
Author: sbruno Date: Tue May 29 21:52:13 2018 New Revision: 334357 URL: https://svnweb.freebsd.org/changeset/base/334357 Log: dumpon(8) - fix the WITHOUT_CRYPTO buildworld case. Its rare, but some of us do build this way. Sponsored by: Limelight Networks Modified: head/sbin/dumpon/dumpon.c Modified: head/sbin/dumpon/dumpon.c == --- head/sbin/dumpon/dumpon.c Tue May 29 21:45:15 2018(r334356) +++ head/sbin/dumpon/dumpon.c Tue May 29 21:52:13 2018(r334357) @@ -393,7 +393,8 @@ main(int argc, char *argv[]) #ifndef HAVE_CRYPTO if (pubkeyfile != NULL) - errx("Unable to use the public key. Recompile dumpon with OpenSSL support."); + errx(EX_UNAVAILABLE,"Unable to use the public key." + " Recompile dumpon with OpenSSL support."); #endif if (server != NULL && client != NULL) { ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r334215 - head/usr.sbin/pmcstat
Author: sbruno Date: Fri May 25 18:11:13 2018 New Revision: 334215 URL: https://svnweb.freebsd.org/changeset/base/334215 Log: pmcstat(8) - Document per thread filtering. Submitted by: kbowling Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D15549 Modified: head/usr.sbin/pmcstat/pmcstat.8 head/usr.sbin/pmcstat/pmcstat.c Modified: head/usr.sbin/pmcstat/pmcstat.8 == --- head/usr.sbin/pmcstat/pmcstat.8 Fri May 25 18:07:20 2018 (r334214) +++ head/usr.sbin/pmcstat/pmcstat.8 Fri May 25 18:11:13 2018 (r334215) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 18, 2015 +.Dd May 25, 2018 .Dt PMCSTAT 8 .Os .Sh NAME @@ -38,6 +38,8 @@ .Op Fl E .Op Fl F Ar pathname .Op Fl G Ar pathname +.Op Fl I +.Op Fl L Ar lwp .Op Fl M Ar mapfilename .Op Fl N .Op Fl O Ar logfilename @@ -155,6 +157,15 @@ is a this information is sent to the output file specified by the .Fl o option. +.It Fl I +Skip symbol lookup and display address instead. +.It Fl L Ar lwp +Filter on thread ID +.Ar lwp , +which you can get from +.Xr ps 1 +.Fl o +.Li lwp . .It Fl M Ar mapfilename Write the mapping between executable objects encountered in the event log and the abbreviated pathnames used for Modified: head/usr.sbin/pmcstat/pmcstat.c == --- head/usr.sbin/pmcstat/pmcstat.c Fri May 25 18:07:20 2018 (r334214) +++ head/usr.sbin/pmcstat/pmcstat.c Fri May 25 18:11:13 2018 (r334215) @@ -365,8 +365,8 @@ pmcstat_show_usage(void) "\t -F file\t write a system-wide callgraph (Kcachegrind format)" " to \"file\"\n" "\t -G file\t write a system-wide callgraph to \"file\"\n" - "\t -I don't resolve leaf function but show address instead" - "\t -L \"tid\" filter on thread id in post-processing" + "\t -I don't resolve leaf function name, show address instead\n" + "\t -L lwp\t filter on thread id \"lwp\" in post-processing\n" "\t -M file\t print executable/gmon file map to \"file\"\n" "\t -N\t\t (toggle) capture callchains\n" "\t -O file\t send log output to \"file\"\n" ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r333801 - head/sys/contrib/dev/ath/ath_hal/ar9300
On 05/18/18 11:29, Ian Lepore wrote: > On Fri, 2018-05-18 at 17:23 +0000, Sean Bruno wrote: >> Author: sbruno >> Date: Fri May 18 17:23:23 2018 >> New Revision: 333801 >> URL: https://svnweb.freebsd.org/changeset/base/333801 >> >> Log: >> Quiesce a couple pages of clang warnings with a cast. Duplicates >> linux maintainer commit: >> >> >> https://github.com/torvalds/linux/commit/627871b71c89a6ec12fbed75063f238e0c7127b2#diff-8c6ddb4c3ad69a6fb9f289475821db56 >> >> ar9300template_aphrodite.h:575:40: warning: implicit conversion from 'int' >> to 'u_int8_t' (aka 'unsigned char') changes value from 3495 to 167 >> [-Wconstant-conversion] >> /* Data[8].ctl_edges[7].bChannel*/FREQ2FBIN(5795, 0)} >> ^~ >> ar9300eep.h:142:41: note: expanded from macro 'FREQ2FBIN' >> (((y) == HAL_FREQ_BAND_2GHZ) ? ((x) - 2300) : (((x) - 4800) / 5)) >> >> Reviewed by: imp >> MFC after: 1 week >> Differential Revision: https://reviews.freebsd.org/D15476 >> >> Modified: >> head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300eep.h >> >> Modified: head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300eep.h >> == >> --- head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300eep.h Fri May 18 >> 17:07:59 2018(r333800) >> +++ head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300eep.h Fri May 18 >> 17:23:23 2018(r333801) >> @@ -139,7 +139,7 @@ enum Ar9300EepromTemplate >> #define OSPREY_CUSTOMER_DATA_SIZE20 >> >> #define FREQ2FBIN(x,y) \ >> -(((y) == HAL_FREQ_BAND_2GHZ) ? ((x) - 2300) : (((x) - 4800) / 5)) >> +(u_int8_t)(((y) == HAL_FREQ_BAND_2GHZ) ? ((x) - 2300) : (((x) - 4800) / >> 5)) >> #define FBIN2FREQ(x,y) \ >> (((y) == HAL_FREQ_BAND_2GHZ) ? (2300 + x) : (4800 + 5 * x)) >> #define OSPREY_MAX_CHAINS3 >> > > How can this change possibly be correct? All the values involved are > compile-time constants, the compiler did the math and tells you the > result is 3495. Cast or not, that value is never going to fit into a > uint8_t. Sure this supresses the warning, but what about actually > fixing the overflow? > > -- Ian > > An excellent question all around. It appears that the maintainer at Qualcom acked the linux commit, so I'm not sure how to interpret all of this. sean signature.asc Description: OpenPGP digital signature
svn commit: r333801 - head/sys/contrib/dev/ath/ath_hal/ar9300
Author: sbruno Date: Fri May 18 17:23:23 2018 New Revision: 333801 URL: https://svnweb.freebsd.org/changeset/base/333801 Log: Quiesce a couple pages of clang warnings with a cast. Duplicates linux maintainer commit: https://github.com/torvalds/linux/commit/627871b71c89a6ec12fbed75063f238e0c7127b2#diff-8c6ddb4c3ad69a6fb9f289475821db56 ar9300template_aphrodite.h:575:40: warning: implicit conversion from 'int' to 'u_int8_t' (aka 'unsigned char') changes value from 3495 to 167 [-Wconstant-conversion] /* Data[8].ctl_edges[7].bChannel*/FREQ2FBIN(5795, 0)} ^~ ar9300eep.h:142:41: note: expanded from macro 'FREQ2FBIN' (((y) == HAL_FREQ_BAND_2GHZ) ? ((x) - 2300) : (((x) - 4800) / 5)) Reviewed by: imp MFC after:1 week Differential Revision:https://reviews.freebsd.org/D15476 Modified: head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300eep.h Modified: head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300eep.h == --- head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300eep.h Fri May 18 17:07:59 2018(r333800) +++ head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300eep.h Fri May 18 17:23:23 2018(r333801) @@ -139,7 +139,7 @@ enum Ar9300EepromTemplate #define OSPREY_CUSTOMER_DATA_SIZE20 #define FREQ2FBIN(x,y) \ -(((y) == HAL_FREQ_BAND_2GHZ) ? ((x) - 2300) : (((x) - 4800) / 5)) +(u_int8_t)(((y) == HAL_FREQ_BAND_2GHZ) ? ((x) - 2300) : (((x) - 4800) / 5)) #define FBIN2FREQ(x,y) \ (((y) == HAL_FREQ_BAND_2GHZ) ? (2300 + x) : (4800 + 5 * x)) #define OSPREY_MAX_CHAINS3 ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r333792 - head/sys/dev/bnxt
Author: sbruno Date: Fri May 18 13:49:12 2018 New Revision: 333792 URL: https://svnweb.freebsd.org/changeset/base/333792 Log: bnxt(4) - Fix HWRM warning message during HW LRO configuration. Submitted by: bhargava.marre...@broadcom.com MFC after:1 week Sponsored by: Broadcom Limited Differential Revision:https://reviews.freebsd.org/D15466 Modified: head/sys/dev/bnxt/bnxt_hwrm.c Modified: head/sys/dev/bnxt/bnxt_hwrm.c == --- head/sys/dev/bnxt/bnxt_hwrm.c Fri May 18 13:28:02 2018 (r333791) +++ head/sys/dev/bnxt/bnxt_hwrm.c Fri May 18 13:49:12 2018 (r333792) @@ -1017,6 +1017,10 @@ bnxt_hwrm_vnic_tpa_cfg(struct bnxt_softc *softc) struct hwrm_vnic_tpa_cfg_input req = {0}; uint32_t flags; + if (softc->vnic_info.id == (uint16_t) HWRM_NA_SIGNATURE) { + return 0; + } + bnxt_hwrm_cmd_hdr_init(softc, &req, HWRM_VNIC_TPA_CFG); if (softc->hw_lro.enable) { ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r333717 - in head: . share/man/man4 sys/conf sys/dev/vxge sys/modules sys/modules/vxge tools/kerneldoc/subsys tools/tools tools/tools/vxge
On 05/17/18 09:11, Rodney W. Grimes wrote: >> Author: sbruno >> Date: Thu May 17 14:55:41 2018 >> New Revision: 333717 >> URL: https://svnweb.freebsd.org/changeset/base/333717 >> >> Log: >> Retire vxge(4). >> >> This driver was merged to HEAD one week prior to Exar publicly announcing >> they >> had left the Ethernet market. It is not known to be used and has various >> code >> quality issues spotted by Brooks and Hiren. Retire it in preparation for >> FreeBSD 12.0. > > Did some form of deprecation notice make it into stable/11? > I took a quick look at sys/dev/vxge/vxge.c and do not see any, > nor did I find anything in the man page vxge.4. > > > Thanks, > Bah ... I sure didn't. 0.o Let me do the right thing here and send an MFC request for the deprecation notice. sean signature.asc Description: OpenPGP digital signature
svn commit: r333717 - in head: . share/man/man4 sys/conf sys/dev/vxge sys/modules sys/modules/vxge tools/kerneldoc/subsys tools/tools tools/tools/vxge
Author: sbruno Date: Thu May 17 14:55:41 2018 New Revision: 333717 URL: https://svnweb.freebsd.org/changeset/base/333717 Log: Retire vxge(4). This driver was merged to HEAD one week prior to Exar publicly announcing they had left the Ethernet market. It is not known to be used and has various code quality issues spotted by Brooks and Hiren. Retire it in preparation for FreeBSD 12.0. Submitted by: kbowling Reviewed by: brooks imp Relnotes: yes Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D15442 Deleted: head/share/man/man4/vxge.4 head/sys/dev/vxge/ head/sys/modules/vxge/Makefile head/tools/kerneldoc/subsys/Doxyfile-dev_vxge head/tools/tools/vxge/ Modified: head/ObsoleteFiles.inc head/UPDATING head/share/man/man4/Makefile head/sys/conf/NOTES head/sys/conf/files head/sys/conf/makeLINT.mk head/sys/modules/Makefile head/tools/tools/README Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Thu May 17 14:51:22 2018(r333716) +++ head/ObsoleteFiles.inc Thu May 17 14:55:41 2018(r333717) @@ -38,6 +38,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20180517: retire vxge +OLD_FILES+=usr/share/man/man4/if_vxge.4.gz +OLD_FILES+=usr/share/man/man4/vxge.4.gz # 20180512: Rename Unbound tools OLD_FILES+=usr/sbin/unbound OLD_FILES+=usr/sbin/unbound-anchor Modified: head/UPDATING == --- head/UPDATING Thu May 17 14:51:22 2018(r333716) +++ head/UPDATING Thu May 17 14:55:41 2018(r333717) @@ -51,6 +51,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW: ** SPECIAL WARNING: ** +20180517: + The vxge(4) driver has been removed. This driver was introduced into + HEAD one week before the Exar left the Ethernet market and is not + known to be used. If you have device vxge in your kernel config file + it must be removed. + 20180510: The amd64 kernel now requires a ld that supports ifunc to produce a working kernel, either lld or a newer binutils. lld is built by default Modified: head/share/man/man4/Makefile == --- head/share/man/man4/MakefileThu May 17 14:51:22 2018 (r333716) +++ head/share/man/man4/MakefileThu May 17 14:55:41 2018 (r333717) @@ -570,7 +570,6 @@ MAN=aac.4 \ vt.4 \ vte.4 \ ${_vtnet.4} \ - ${_vxge.4} \ watchdog.4 \ wb.4 \ ${_wbwd.4} \ @@ -754,7 +753,6 @@ MLINKS+=vpo.4 imm.4 MLINKS+=vr.4 if_vr.4 MLINKS+=vte.4 if_vte.4 MLINKS+=${_vtnet.4} ${_if_vtnet.4} -MLINKS+=${_vxge.4} ${_if_vxge.4} MLINKS+=watchdog.4 SW_WATCHDOG.4 MLINKS+=wb.4 if_wb.4 MLINKS+=wi.4 if_wi.4 @@ -826,7 +824,6 @@ _if_nfe.4= if_nfe.4 _if_urtw.4=if_urtw.4 _if_vmx.4= if_vmx.4 _if_vtnet.4= if_vtnet.4 -_if_vxge.4=if_vxge.4 _if_wpi.4= if_wpi.4 _imcsmb.4= imcsmb.4 _ipmi.4= ipmi.4 @@ -847,7 +844,6 @@ _virtio_random.4= virtio_random.4 _virtio_scsi.4= virtio_scsi.4 _vmx.4=vmx.4 _vtnet.4= vtnet.4 -_vxge.4= vxge.4 _padlock.4=padlock.4 _rr232x.4= rr232x.4 _speaker.4=speaker.4 Modified: head/sys/conf/NOTES == --- head/sys/conf/NOTES Thu May 17 14:51:22 2018(r333716) +++ head/sys/conf/NOTES Thu May 17 14:55:41 2018(r333717) @@ -2135,7 +2135,6 @@ deviceoce # Emulex 10 GbE (OneConnect Ethernet) device ti # Alteon Networks Tigon I/II gigabit Ethernet device txp # 3Com 3cR990 (``Typhoon'') device vx # 3Com 3c590, 3c595 (``Vortex'') -device vxge# Exar/Neterion XFrame 3100 10GbE # PCI IEEE 802.11 Wireless NICs device ath # Atheros pci/cardbus NIC's Modified: head/sys/conf/files == --- head/sys/conf/files Thu May 17 14:51:22 2018(r333716) +++ head/sys/conf/files Thu May 17 14:55:41 2018(r333717) @@ -3455,24 +3455,6 @@ dev/vt/vt_sysmouse.c optional vt dev/vte/if_vte.c optional vte pci dev/vx/if_vx.c optional vx dev/vx/if_vx_pci.c optional vx pci -dev/vxge/vxge.coptional vxge -dev/vxge/vxgehal/vxgehal-ifmsg.c optional vxge -dev/vxge/vxgehal/vxgehal-mrpcim.c optional vxge -dev/vxge/vxgehal/vxge-queue.c optional vxge -dev/vxge/vxgehal/vxgehal-ring.coptional vxge -dev/vxge/vxgehal/vxgehal-swapper.c optional vxge -dev/vxge/vxgehal/vxgehal-mgmt.co
svn commit: r333631 - head/sys/dev/e1000
Author: sbruno Date: Tue May 15 13:30:59 2018 New Revision: 333631 URL: https://svnweb.freebsd.org/changeset/base/333631 Log: igb(4): I210 restore functionality if pxeboot rom is enabled on this device. r45 attempted to determine if this code was needed or it was some kind of work around for a problem. Turns out, its definitely a work around for hardware locking and synchronization that manifests itself if the option Rom is enabled and is selected as a boot device (there was a PXE attempt). Reviewed by: mmacy Differential Revision:https://reviews.freebsd.org/D15439 Modified: head/sys/dev/e1000/e1000_mac.c Modified: head/sys/dev/e1000/e1000_mac.c == --- head/sys/dev/e1000/e1000_mac.c Tue May 15 13:27:29 2018 (r333630) +++ head/sys/dev/e1000/e1000_mac.c Tue May 15 13:30:59 2018 (r333631) @@ -2192,11 +2192,12 @@ s32 e1000_write_8bit_ctrl_reg_generic(struct e1000_hw s32 e1000_get_hw_semaphore(struct e1000_hw *hw) { u32 swsm; - s32 timeout = hw->nvm.word_size + 1; + s32 fw_timeout = hw->nvm.word_size + 1; + s32 sw_timeout = hw->nvm.word_size + 1; s32 i = 0; DEBUGFUNC("e1000_get_hw_semaphore"); -#ifdef notyet + /* _82571 */ /* If we have timedout 3 times on trying to acquire * the inter-port SMBI semaphore, there is old code @@ -2208,9 +2209,9 @@ s32 e1000_get_hw_semaphore(struct e1000_hw *hw) if (hw->dev_spec._82571.smb_counter > 2) sw_timeout = 1; -#endif + /* Get the SW semaphore */ - while (i < timeout) { + while (i < sw_timeout) { swsm = E1000_READ_REG(hw, E1000_SWSM); if (!(swsm & E1000_SWSM_SMBI)) break; @@ -2219,34 +2220,28 @@ s32 e1000_get_hw_semaphore(struct e1000_hw *hw) i++; } - if (i == timeout) { -#ifdef notyet - /* -* XXX This sounds more like a driver bug whereby we either -* recursed accidentally or missed clearing it previously -*/ - /* In rare circumstances, the SW semaphore may already be held -* unintentionally. Clear the semaphore once before giving up. -*/ - if (hw->dev_spec._82575.clear_semaphore_once) { - hw->dev_spec._82575.clear_semaphore_once = FALSE; - e1000_put_hw_semaphore_generic(hw); - for (i = 0; i < timeout; i++) { - swsm = E1000_READ_REG(hw, E1000_SWSM); - if (!(swsm & E1000_SWSM_SMBI)) - break; - - usec_delay(50); - } - } -#endif - + if (i == sw_timeout) { DEBUGOUT("Driver can't access device - SMBI bit is set.\n"); - return -E1000_ERR_NVM; + hw->dev_spec._82571.smb_counter++; } + /* In rare circumstances, the SW semaphore may already be held +* unintentionally. Clear the semaphore once before giving up. +*/ + if (hw->dev_spec._82575.clear_semaphore_once) { + hw->dev_spec._82575.clear_semaphore_once = FALSE; + e1000_put_hw_semaphore(hw); + for (i = 0; i < fw_timeout; i++) { + swsm = E1000_READ_REG(hw, E1000_SWSM); + if (!(swsm & E1000_SWSM_SMBI)) + break; + + usec_delay(50); + } + } + /* Get the FW semaphore. */ - for (i = 0; i < timeout; i++) { + for (i = 0; i < fw_timeout; i++) { swsm = E1000_READ_REG(hw, E1000_SWSM); E1000_WRITE_REG(hw, E1000_SWSM, swsm | E1000_SWSM_SWESMBI); @@ -2257,7 +2252,7 @@ s32 e1000_get_hw_semaphore(struct e1000_hw *hw) usec_delay(50); } - if (i == timeout) { + if (i == fw_timeout) { /* Release semaphores */ e1000_put_hw_semaphore(hw); DEBUGOUT("Driver can't access the NVM\n"); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r333499 - in head: share/man/man4 sys/dev/vxge
Author: sbruno Date: Fri May 11 17:26:59 2018 New Revision: 333499 URL: https://svnweb.freebsd.org/changeset/base/333499 Log: vxge(4): deprecation notice This hardware isn't totally ancient, about equal to a mxge(4) or mlx4en(4), but the company was sold to Exar which then promptly exited the Ethernet business so the card was commercially available for under 2 years. On deep search, the only usage of these cards I found was by the importing of the driver. There are code quality issues identified by Brooks and Hiren and no visible use nor maintainership that warrant removal from FreeBSD 12.0. Submitted by: kbowling Reviewed by: gnn brooks Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D15363 Modified: head/share/man/man4/vxge.4 head/sys/dev/vxge/vxge.c Modified: head/share/man/man4/vxge.4 == --- head/share/man/man4/vxge.4 Fri May 11 17:24:04 2018(r333498) +++ head/share/man/man4/vxge.4 Fri May 11 17:26:59 2018(r333499) @@ -44,6 +44,12 @@ module at boot time, place the following line in .Bd -literal -offset indent if_vxge_load="YES" .Ed +.Sh DEPRECATION NOTICE +The +.Nm +driver is not present in +.Fx 12.0 +and later. .Sh DESCRIPTION The .Nm Modified: head/sys/dev/vxge/vxge.c == --- head/sys/dev/vxge/vxge.cFri May 11 17:24:04 2018(r333498) +++ head/sys/dev/vxge/vxge.cFri May 11 17:26:59 2018(r333499) @@ -236,6 +236,7 @@ _exit0: err = ENXIO; } + gone_in_dev(ndev, 12, "vxge(4) driver"); return (err); } ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r333388 - in head: . share/man/man4 sys/conf sys/dev/nxge sys/modules sys/modules/nxge tools/kerneldoc/subsys tools/tools tools/tools/nxge usr.sbin/bsdconfig/share
https://reviews.freebsd.org/D15292 *shakes fist at self* sean On 05/08/18 15:14, Sean Bruno wrote: > Author: sbruno > Date: Tue May 8 21:14:29 2018 > New Revision: 88 > URL: https://svnweb.freebsd.org/changeset/base/88 > > Log: > nxge(4): > Remove nxge(4) and associated man page and tools in FreeBSD 12.0. > > Submitted by: kbowling > Reviewed by:brooks > Relnotes: yes > Sponsored by: Limelight Networks > Differential Revision: https://reviews.freebsd.org/D1529 > > Deleted: > head/share/man/man4/nxge.4 > head/sys/dev/nxge/ > head/sys/modules/nxge/ > head/tools/kerneldoc/subsys/Doxyfile-dev_nxge > head/tools/tools/nxge/ > Modified: > head/ObsoleteFiles.inc > head/UPDATING > head/share/man/man4/Makefile > head/share/man/man4/vlan.4 > head/sys/conf/NOTES > head/sys/conf/files > head/sys/modules/Makefile > head/tools/tools/README > head/usr.sbin/bsdconfig/share/device.subr > > Modified: head/ObsoleteFiles.inc > == > --- head/ObsoleteFiles.incTue May 8 21:01:04 2018(r87) > +++ head/ObsoleteFiles.incTue May 8 21:14:29 2018(r88) > @@ -38,6 +38,9 @@ > # xargs -n1 | sort | uniq -d; > # done > > +# 20180508: retire nxge > +OLD_FILES+=usr/share/man/man4/if_nxge.4.gz > +OLD_FILES+=usr/share/man/man4/nxge.4.gz > # 20180505: rhosts > OLD_FILES+=usr/share/skel/dot.rhosts > # 20180502: retire ixgb > > Modified: head/UPDATING > == > --- head/UPDATING Tue May 8 21:01:04 2018(r87) > +++ head/UPDATING Tue May 8 21:14:29 2018(r88) > @@ -51,6 +51,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW: > > ** SPECIAL WARNING: > ** > > +20180508: > + The nxge(4) driver has been removed. This driver was for PCI-X 10g > + cards made by s2io/Neterion. The company was aquired by Exar and > + no longer sells or supports Ethernet products. If you have device > + nxge in your kernel config file it must be removed. > + > 20180504: > The tz database (tzdb) has been updated to 2018e. This version more > correctly models time stamps in time zones with negative DST such as > > Modified: head/share/man/man4/Makefile > == > --- head/share/man/man4/Makefile Tue May 8 21:01:04 2018 > (r87) > +++ head/share/man/man4/Makefile Tue May 8 21:14:29 2018 > (r88) > @@ -397,7 +397,6 @@ MAN= aac.4 \ > ${_nvme.4} \ > ${_nvram.4} \ > ${_nvram2env.4} \ > - ${_nxge.4} \ > oce.4 \ > ocs_fc.4\ > ohci.4 \ > @@ -706,7 +705,6 @@ MLINKS+=netintro.4 net.4 \ > netintro.4 networking.4 > MLINKS+=${_nfe.4} ${_if_nfe.4} > MLINKS+=nge.4 if_nge.4 > -MLINKS+=${_nxge.4} ${_if_nxge.4} > MLINKS+=ow.4 onewire.4 > MLINKS+=pccbb.4 cbb.4 > MLINKS+=pcm.4 snd.4 \ > @@ -823,7 +821,6 @@ _ichwd.4= ichwd.4 > _if_bxe.4= if_bxe.4 > _if_ndis.4= if_ndis.4 > _if_nfe.4= if_nfe.4 > -_if_nxge.4= if_nxge.4 > _if_urtw.4= if_urtw.4 > _if_vmx.4= if_vmx.4 > _if_vtnet.4= if_vtnet.4 > @@ -840,7 +837,6 @@ _nfsmb.4= nfsmb.4 > _nvd.4= nvd.4 > _nvme.4= nvme.4 > _nvram.4=nvram.4 > -_nxge.4= nxge.4 > _virtio.4= virtio.4 > _virtio_balloon.4=virtio_balloon.4 > _virtio_blk.4= virtio_blk.4 > > Modified: head/share/man/man4/vlan.4 > == > --- head/share/man/man4/vlan.4Tue May 8 21:01:04 2018 > (r87) > +++ head/share/man/man4/vlan.4Tue May 8 21:14:29 2018 > (r88) > @@ -25,7 +25,7 @@ > .\" > .\" $FreeBSD$ > .\" > -.Dd August 28, 2017 > +.Dd May 8, 2018 > .Dt VLAN 4 > .Os > .Sh NAME > @@ -137,7 +137,6 @@ in hardware: > .Xr liquidio 4 , > .Xr msk 4 , > .Xr mxge 4 , > -.Xr nxge 4 , > .Xr nge 4 , > .Xr re 4 , > .Xr sge 4 , > > Modified: head/sys/conf/NOTES > == > --- head/sys/conf/NOTES Tue May 8 21:01:04 2018(r87) > +++ head/sys/conf/NOTES Tue May 8 21:14:29 2018(r88) > @@ -2131,7 +2131,6 @@ device ix # Intel Pro/10Gbe PCIE > Ethernet > device ixv # Intel Pro/10Gbe PCIE Et
svn commit: r333388 - in head: . share/man/man4 sys/conf sys/dev/nxge sys/modules sys/modules/nxge tools/kerneldoc/subsys tools/tools tools/tools/nxge usr.sbin/bsdconfig/share
Author: sbruno Date: Tue May 8 21:14:29 2018 New Revision: 88 URL: https://svnweb.freebsd.org/changeset/base/88 Log: nxge(4): Remove nxge(4) and associated man page and tools in FreeBSD 12.0. Submitted by: kbowling Reviewed by: brooks Relnotes: yes Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D1529 Deleted: head/share/man/man4/nxge.4 head/sys/dev/nxge/ head/sys/modules/nxge/ head/tools/kerneldoc/subsys/Doxyfile-dev_nxge head/tools/tools/nxge/ Modified: head/ObsoleteFiles.inc head/UPDATING head/share/man/man4/Makefile head/share/man/man4/vlan.4 head/sys/conf/NOTES head/sys/conf/files head/sys/modules/Makefile head/tools/tools/README head/usr.sbin/bsdconfig/share/device.subr Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Tue May 8 21:01:04 2018(r87) +++ head/ObsoleteFiles.inc Tue May 8 21:14:29 2018(r88) @@ -38,6 +38,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20180508: retire nxge +OLD_FILES+=usr/share/man/man4/if_nxge.4.gz +OLD_FILES+=usr/share/man/man4/nxge.4.gz # 20180505: rhosts OLD_FILES+=usr/share/skel/dot.rhosts # 20180502: retire ixgb Modified: head/UPDATING == --- head/UPDATING Tue May 8 21:01:04 2018(r87) +++ head/UPDATING Tue May 8 21:14:29 2018(r88) @@ -51,6 +51,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW: ** SPECIAL WARNING: ** +20180508: + The nxge(4) driver has been removed. This driver was for PCI-X 10g + cards made by s2io/Neterion. The company was aquired by Exar and + no longer sells or supports Ethernet products. If you have device + nxge in your kernel config file it must be removed. + 20180504: The tz database (tzdb) has been updated to 2018e. This version more correctly models time stamps in time zones with negative DST such as Modified: head/share/man/man4/Makefile == --- head/share/man/man4/MakefileTue May 8 21:01:04 2018 (r87) +++ head/share/man/man4/MakefileTue May 8 21:14:29 2018 (r88) @@ -397,7 +397,6 @@ MAN=aac.4 \ ${_nvme.4} \ ${_nvram.4} \ ${_nvram2env.4} \ - ${_nxge.4} \ oce.4 \ ocs_fc.4\ ohci.4 \ @@ -706,7 +705,6 @@ MLINKS+=netintro.4 net.4 \ netintro.4 networking.4 MLINKS+=${_nfe.4} ${_if_nfe.4} MLINKS+=nge.4 if_nge.4 -MLINKS+=${_nxge.4} ${_if_nxge.4} MLINKS+=ow.4 onewire.4 MLINKS+=pccbb.4 cbb.4 MLINKS+=pcm.4 snd.4 \ @@ -823,7 +821,6 @@ _ichwd.4= ichwd.4 _if_bxe.4= if_bxe.4 _if_ndis.4=if_ndis.4 _if_nfe.4= if_nfe.4 -_if_nxge.4=if_nxge.4 _if_urtw.4=if_urtw.4 _if_vmx.4= if_vmx.4 _if_vtnet.4= if_vtnet.4 @@ -840,7 +837,6 @@ _nfsmb.4= nfsmb.4 _nvd.4=nvd.4 _nvme.4= nvme.4 _nvram.4= nvram.4 -_nxge.4= nxge.4 _virtio.4= virtio.4 _virtio_balloon.4=virtio_balloon.4 _virtio_blk.4= virtio_blk.4 Modified: head/share/man/man4/vlan.4 == --- head/share/man/man4/vlan.4 Tue May 8 21:01:04 2018(r87) +++ head/share/man/man4/vlan.4 Tue May 8 21:14:29 2018(r88) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd August 28, 2017 +.Dd May 8, 2018 .Dt VLAN 4 .Os .Sh NAME @@ -137,7 +137,6 @@ in hardware: .Xr liquidio 4 , .Xr msk 4 , .Xr mxge 4 , -.Xr nxge 4 , .Xr nge 4 , .Xr re 4 , .Xr sge 4 , Modified: head/sys/conf/NOTES == --- head/sys/conf/NOTES Tue May 8 21:01:04 2018(r87) +++ head/sys/conf/NOTES Tue May 8 21:14:29 2018(r88) @@ -2131,7 +2131,6 @@ deviceix # Intel Pro/10Gbe PCIE Ethernet device ixv # Intel Pro/10Gbe PCIE Ethernet VF device le # AMD Am7900 LANCE and Am79C9xx PCnet device mxge# Myricom Myri-10G 10GbE NIC -device nxge# Neterion Xframe 10GbE Server/Storage Adapter device oce # Emulex 10 GbE (OneConnect Ethernet) device ti # Alteon Networks Tigon I/II gigabit Ethernet device txp # 3Com 3cR990 (``Typhoon'') Modified: head/sys/conf/files == --- head/sys/conf/files Tue May 8 21:01:04 2018(r87) +++ head/sys/conf/files Tue May 8 21:14:29 2018(r88) @@ -2541,25 +2541,6 @@ dev/netmap/netmap_legacy.c optional netmap # compile-with "${NORMAL_C} -Wconversion -Wextra" d
svn commit: r333307 - head/cddl/contrib/opensolaris/lib/libzfs/common
Author: sbruno Date: Sun May 6 16:22:02 2018 New Revision: 07 URL: https://svnweb.freebsd.org/changeset/base/07 Log: Cleanup sundry clang warnings for code that is not upstream in illumos. https://github.com/illumos/illumos-gate/edit/master/usr/src/lib/libzfs/common/libzfs_sendrecv.c Patch our version of it to quiesce warnings until someone decides to sync up our code: libzfs_sendrecv.c:2555:30: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat] sprintf(guidname, "%lu", thisguid); ~~~ ^~~~ %llu libzfs_sendrecv.c:2612:29: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat] sprintf(guidname, "%lu", parent_fromsnap_guid); ~~~ ^~~~ %llu libzfs_sendrecv.c:2645:29: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat] sprintf(guidname, "%lu", parent_fromsnap_guid); ~~~ ^~~~ %llu Reviewed by: allanjude Differential Revision:https://reviews.freebsd.org/D15325 Modified: head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c Modified: head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c == --- head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c Sun May 6 15:59:03 2018(r06) +++ head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c Sun May 6 16:22:02 2018(r07) @@ -2552,7 +2552,7 @@ again: needagain = B_TRUE; else progress = B_TRUE; - sprintf(guidname, "%lu", thisguid); + sprintf(guidname, "%" PRIu64, thisguid); nvlist_add_boolean(deleted, guidname); continue; } @@ -2609,7 +2609,7 @@ again: needagain = B_TRUE; else progress = B_TRUE; - sprintf(guidname, "%lu", parent_fromsnap_guid); + sprintf(guidname, "%" PRIu64, parent_fromsnap_guid); nvlist_add_boolean(deleted, guidname); continue; } @@ -2642,7 +2642,7 @@ again: if (stream_parent_fromsnap_guid != 0 && parent_fromsnap_guid != 0 && stream_parent_fromsnap_guid != parent_fromsnap_guid) { - sprintf(guidname, "%lu", parent_fromsnap_guid); + sprintf(guidname, "%" PRIu64, parent_fromsnap_guid); if (nvlist_exists(deleted, guidname)) { progress = B_TRUE; needagain = B_TRUE; ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r333274 - head/share/mk
Author: sbruno Date: Sat May 5 18:39:54 2018 New Revision: 333274 URL: https://svnweb.freebsd.org/changeset/base/333274 Log: Remove accidentally committed debug statement that induced the following warning: make[3]: "/usr/src/share/mk/bsd.prog.mk" line 274: warning: duplicate script for target "_scriptsinstall" ignored make[3]: "/usr/src/share/mk/bsd.prog.mk" line 274: warning: using previous script for "_scriptsinstall" defined here Reviewed by: kevans Modified: head/share/mk/bsd.prog.mk Modified: head/share/mk/bsd.prog.mk == --- head/share/mk/bsd.prog.mk Sat May 5 16:00:02 2018(r333273) +++ head/share/mk/bsd.prog.mk Sat May 5 18:39:54 2018(r333274) @@ -271,7 +271,6 @@ SCRIPTSGRP_${script:T}?=${SCRIPTSGRP} SCRIPTSMODE_${script:T}?= ${SCRIPTSMODE} STAGE_AS_${script:T}= ${SCRIPTSDIR_${script:T}}/${SCRIPTSNAME_${script:T}} _scriptsinstall: _SCRIPTSINS_${script:T} - echo ">SFD>F>DF YES" _SCRIPTSINS_${script:T}: ${script} ${INSTALL} ${TAG_ARGS} -o ${SCRIPTSOWN_${.ALLSRC:T}} \ -g ${SCRIPTSGRP_${.ALLSRC:T}} -m ${SCRIPTSMODE_${.ALLSRC:T}} \ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r333242 - head/sys/kern
For the "official" record: Approved-by: sbruno :-) sean p.s. silly svn didn't stop this commit, I wonder why. On 05/04/18 10:20, K. Macy wrote: > Yes. Good catch. Thanks. > > -M > >> >> Missing Approved by: sbruno? >> >> >>> Modified: >>> head/sys/kern/kern_descrip.c >>> >>> Modified: head/sys/kern/kern_descrip.c >>> == >>> --- head/sys/kern/kern_descrip.c Fri May 4 04:05:07 2018 >>> (r333241) >>> +++ head/sys/kern/kern_descrip.c Fri May 4 06:51:01 2018 >>> (r333242) >>> @@ -1503,7 +1503,7 @@ filecaps_copy(const struct filecaps *src, struct filec >>> >>> if (src->fc_ioctls != NULL && !locked) >>> return (false); >>> - *dst = *src; >>> + memcpy(dst, src, sizeof(*src)); >>> if (src->fc_ioctls == NULL) >>> return (true); >>> >>> @@ -1512,7 +1512,7 @@ filecaps_copy(const struct filecaps *src, struct filec >>> >>> size = sizeof(src->fc_ioctls[0]) * src->fc_nioctls; >>> dst->fc_ioctls = malloc(size, M_FILECAPS, M_WAITOK); >>> - bcopy(src->fc_ioctls, dst->fc_ioctls, size); >>> + memcpy(dst->fc_ioctls, src->fc_ioctls, size); >>> return (true); >>> } >>> >>> >>> >> >> -- >> Rod Grimes >> rgri...@freebsd.org >> ___ >> svn-src-head@freebsd.org mailing list >> https://lists.freebsd.org/mailman/listinfo/svn-src-head >> To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org" > > signature.asc Description: OpenPGP digital signature
svn commit: r333211 - head/sys/netinet/cc
Author: sbruno Date: Thu May 3 15:01:27 2018 New Revision: 333211 URL: https://svnweb.freebsd.org/changeset/base/333211 Log: cc_cubic: - Update cubic parameters to draft-ietf-tcpm-cubic-04 Submitted by: Matt Macy Reviewed by: lstewart Differential Revision:https://reviews.freebsd.org/D10556 Modified: head/sys/netinet/cc/cc_cubic.h Modified: head/sys/netinet/cc/cc_cubic.h == --- head/sys/netinet/cc/cc_cubic.h Thu May 3 14:48:42 2018 (r333210) +++ head/sys/netinet/cc/cc_cubic.h Thu May 3 15:01:27 2018 (r333211) @@ -51,23 +51,23 @@ /* 0.5 << CUBIC_SHIFT. */ #defineRENO_BETA 128 -/* ~0.8 << CUBIC_SHIFT. */ -#defineCUBIC_BETA 204 +/* ~0.7 << CUBIC_SHIFT. */ +#defineCUBIC_BETA 179 -/* ~0.2 << CUBIC_SHIFT. */ -#defineONE_SUB_CUBIC_BETA 51 +/* ~0.3 << CUBIC_SHIFT. */ +#defineONE_SUB_CUBIC_BETA 77 /* 3 * ONE_SUB_CUBIC_BETA. */ -#defineTHREE_X_PT2 153 +#defineTHREE_X_PT3 231 /* (2 << CUBIC_SHIFT) - ONE_SUB_CUBIC_BETA. */ -#defineTWO_SUB_PT2 461 +#defineTWO_SUB_PT3 435 /* ~0.4 << CUBIC_SHIFT. */ #defineCUBIC_C_FACTOR 102 -/* CUBIC fast convergence factor: ~0.9 << CUBIC_SHIFT. */ -#defineCUBIC_FC_FACTOR 230 +/* CUBIC fast convergence factor: (1+beta_cubic)/2. */ +#defineCUBIC_FC_FACTOR 217 /* Don't trust s_rtt until this many rtt samples have been taken. */ #defineCUBIC_MIN_RTT_SAMPLES 8 @@ -79,9 +79,8 @@ extern int hz; /* * Implementation based on the formulae found in the CUBIC Internet Draft - * "draft-rhee-tcpm-cubic-02". + * "draft-ietf-tcpm-cubic-04". * - * Note BETA used in cc_cubic is equal to (1-beta) in the I-D */ static __inline float @@ -91,7 +90,7 @@ theoretical_cubic_k(double wmax_pkts) C = 0.4; - return (pow((wmax_pkts * 0.2) / C, (1.0 / 3.0)) * pow(2, CUBIC_SHIFT)); + return (pow((wmax_pkts * 0.3) / C, (1.0 / 3.0)) * pow(2, CUBIC_SHIFT)); } static __inline unsigned long @@ -120,7 +119,7 @@ theoretical_tf_cwnd(int ticks_since_cong, int rtt_tick uint32_t smss) { - return ((wmax * 0.8) + ((3 * 0.2) / (2 - 0.2) * + return ((wmax * 0.7) + ((3 * 0.3) / (2 - 0.3) * (ticks_since_cong / (float)rtt_ticks) * smss)); } @@ -232,7 +231,7 @@ reno_cwnd(int ticks_since_cong, int rtt_ticks, unsigne /* * Compute an approximation of the "TCP friendly" cwnd some number of ticks * after a congestion event that is designed to yield the same average cwnd as - * NewReno while using CUBIC's beta of 0.8. RTT should be the average RTT + * NewReno while using CUBIC's beta of 0.7. RTT should be the average RTT * estimate for the path measured over the previous congestion epoch and wmax is * the value of cwnd at the last congestion event. */ @@ -242,8 +241,8 @@ tf_cwnd(int ticks_since_cong, int rtt_ticks, unsigned { /* Equation 4 of I-D. */ - return (((wmax * CUBIC_BETA) + (((THREE_X_PT2 * ticks_since_cong * - smss) << CUBIC_SHIFT) / TWO_SUB_PT2 / rtt_ticks)) >> CUBIC_SHIFT); + return (((wmax * CUBIC_BETA) + (((THREE_X_PT3 * ticks_since_cong * + smss) << CUBIC_SHIFT) / TWO_SUB_PT3 / rtt_ticks)) >> CUBIC_SHIFT); } #endif /* _NETINET_CC_CUBIC_H_ */ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r333210 - in head: share/man/man4 sys/dev/nxge
Author: sbruno Date: Thu May 3 14:48:42 2018 New Revision: 333210 URL: https://svnweb.freebsd.org/changeset/base/333210 Log: nxge(4) deprecation notice Submitted by: kbowling Reviewed by: brooks Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D15277 Modified: head/share/man/man4/nxge.4 head/sys/dev/nxge/if_nxge.c Modified: head/share/man/man4/nxge.4 == --- head/share/man/man4/nxge.4 Thu May 3 13:14:31 2018(r333209) +++ head/share/man/man4/nxge.4 Thu May 3 14:48:42 2018(r333210) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd October 16, 2007 +.Dd May 3, 2018 .Dt NXGE 4 .Os .Sh NAME @@ -44,6 +44,12 @@ module at boot time, place the following line in .Bd -literal -offset indent if_nxge_load="YES" .Ed +.Sh DEPRECATION NOTICE +The +.Nm +driver is not present in +.Fx 12.0 +and later. .Sh DESCRIPTION The .Nm Modified: head/sys/dev/nxge/if_nxge.c == --- head/sys/dev/nxge/if_nxge.c Thu May 3 13:14:31 2018(r333209) +++ head/sys/dev/nxge/if_nxge.c Thu May 3 14:48:42 2018(r333210) @@ -1006,6 +1006,7 @@ xge_attach(device_t dev) attach_out: xge_os_free(NULL, device_config, sizeof(xge_hal_device_config_t)); attach_out_config: + gone_in_dev(dev, 12, "nxge(4) driver"); return status; } ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r333185 - in head: . sys/modules/ixgb
Author: sbruno Date: Wed May 2 21:32:20 2018 New Revision: 333185 URL: https://svnweb.freebsd.org/changeset/base/333185 Log: Follow up to r333173, Retire ixgb(4) Remove sys/modules/ixgb and add the linked man page for if_ixgb via ObsoleteFiles. Submitted by: kbowling Relnotes: yes Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D15273 Deleted: head/sys/modules/ixgb/ Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Wed May 2 21:29:42 2018(r333184) +++ head/ObsoleteFiles.inc Wed May 2 21:32:20 2018(r333185) @@ -39,6 +39,7 @@ # done # 20180502: retire ixgb +OLD_FILES+=usr/share/man/man4/if_ixgb.4.gz OLD_FILES+=usr/share/man/man4/ixgb.4.gz # 20180501: retire lmc OLD_FILES+=usr/include/dev/lmc/if_lmc.h ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r333173 - in head: . share/man/man4 sys/conf sys/dev/ixgb sys/i386/conf sys/modules sys/modules/ixgb sys/netpfil/pf sys/sparc64/conf tools/kerneldoc/subsys tools/tools/tinybsd/conf/brid...
Author: sbruno Date: Wed May 2 15:59:15 2018 New Revision: 333173 URL: https://svnweb.freebsd.org/changeset/base/333173 Log: Retire ixgb(4) This driver was for an early and uncommon legacy PCI 10GbE for a single ASIC, Intel 82597EX. Intel quickly shifted to the long lived ixgbe family. Submitted by: kbowling Reviewed by: brooks imp jeffrey.e.pie...@intel.com Relnotes: yes Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D15234 Deleted: head/share/man/man4/ixgb.4 head/sys/dev/ixgb/ head/sys/modules/ixgb/Makefile head/tools/kerneldoc/subsys/Doxyfile-dev_ixgb Modified: head/ObsoleteFiles.inc head/UPDATING head/share/man/man4/Makefile head/share/man/man4/polling.4 head/share/man/man4/vlan.4 head/sys/conf/NOTES head/sys/conf/files head/sys/i386/conf/GENERIC head/sys/modules/Makefile head/sys/netpfil/pf/pf.c head/sys/sparc64/conf/GENERIC head/tools/tools/tinybsd/conf/bridge/TINYBSD head/tools/tools/tinybsd/conf/default/TINYBSD head/tools/tools/tinybsd/conf/firewall/TINYBSD head/tools/tools/tinybsd/conf/vpn/TINYBSD head/tools/tools/tinybsd/conf/wireless/TINYBSD head/tools/tools/tinybsd/conf/wrap/TINYBSD head/usr.sbin/bsdconfig/share/device.subr Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Wed May 2 15:45:31 2018(r333172) +++ head/ObsoleteFiles.inc Wed May 2 15:59:15 2018(r333173) @@ -38,6 +38,8 @@ # xargs -n1 | sort | uniq -d; # done +# 20180502: retire ixgb +OLD_FILES+=usr/share/man/man4/ixgb.4.gz # 20180501: retire lmc OLD_FILES+=usr/include/dev/lmc/if_lmc.h OLD_DIRS+=usr/include/dev/lmc Modified: head/UPDATING == --- head/UPDATING Wed May 2 15:45:31 2018(r333172) +++ head/UPDATING Wed May 2 15:59:15 2018(r333173) @@ -51,6 +51,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW: ** SPECIAL WARNING: ** +20180502: + The ixgb(4) driver has been removed. This driver was for an early and + uncommon legacy PCI 10GbE for a single ASIC, Intel 82597EX. Intel + quickly shifted to the long lived ixgbe family. If you have device + ixgb in your kernel config file it must be removed. + 20180501: The lmc(4) driver has been removed. This was a WAN interface card that was already reportedly rare in 2003, and had an ambiguous Modified: head/share/man/man4/Makefile == --- head/share/man/man4/MakefileWed May 2 15:45:31 2018 (r333172) +++ head/share/man/man4/MakefileWed May 2 15:59:15 2018 (r333173) @@ -244,7 +244,6 @@ MAN=aac.4 \ iwmfw.4 \ iwn.4 \ iwnfw.4 \ - ixgb.4 \ ixgbe.4 \ ixl.4 \ ixlv.4 \ @@ -675,7 +674,6 @@ MLINKS+=ipw.4 if_ipw.4 MLINKS+=iwi.4 if_iwi.4 MLINKS+=iwm.4 if_iwm.4 MLINKS+=iwn.4 if_iwn.4 -MLINKS+=ixgb.4 if_ixgb.4 MLINKS+=ixgbe.4 ix.4 MLINKS+=ixgbe.4 if_ix.4 MLINKS+=ixgbe.4 if_ixgbe.4 Modified: head/share/man/man4/polling.4 == --- head/share/man/man4/polling.4 Wed May 2 15:45:31 2018 (r333172) +++ head/share/man/man4/polling.4 Wed May 2 15:59:15 2018 (r333173) @@ -185,7 +185,6 @@ As of this writing, the .Xr fwip 4 , .Xr fxp 4 , .Xr igb 4 , -.Xr ixgb 4 , .Xr nfe 4 , .Xr nge 4 , .Xr re 4 , Modified: head/share/man/man4/vlan.4 == --- head/share/man/man4/vlan.4 Wed May 2 15:45:31 2018(r333172) +++ head/share/man/man4/vlan.4 Wed May 2 15:59:15 2018(r333173) @@ -132,7 +132,6 @@ in hardware: .Xr cxgbe 4 , .Xr em 4 , .Xr igb 4 , -.Xr ixgb 4 , .Xr ixgbe 4 , .Xr jme 4 , .Xr liquidio 4 , Modified: head/sys/conf/NOTES == --- head/sys/conf/NOTES Wed May 2 15:45:31 2018(r333172) +++ head/sys/conf/NOTES Wed May 2 15:59:15 2018(r333173) @@ -2123,7 +2123,6 @@ devicecxgbe # Chelsio T4-T6 1/10/25/40/100 Gigabit device cxgbev # Chelsio T4-T6 Virtual Functions device de # DEC/Intel DC21x4x (``Tulip'') device em # Intel Pro/1000 Gigabit Ethernet -device ixgb# Intel Pro/10Gbe PCI-X Ethernet device ix # Intel Pro/10Gbe PCIE Ethernet device ixv # Intel Pro/10Gbe PCIE Ethernet VF device le # AMD Am7900 LANCE and Am79C9xx PCnet Modified: head/sys/conf/files == -
svn commit: r333137 - in head: share/man/man4 sys/dev/ixgb
Author: sbruno Date: Tue May 1 12:58:01 2018 New Revision: 333137 URL: https://svnweb.freebsd.org/changeset/base/333137 Log: ixgb(4): Add deprecation notice for this old and busted 10GE adapter. This is a prequisite before we remove the driver from -current. Reviewed by: emaste kbowling imp Relnotes: yes Differential Revision:https://reviews.freebsd.org/D15244 Modified: head/share/man/man4/ixgb.4 head/sys/dev/ixgb/if_ixgb.c Modified: head/share/man/man4/ixgb.4 == --- head/share/man/man4/ixgb.4 Tue May 1 08:03:12 2018(r333136) +++ head/share/man/man4/ixgb.4 Tue May 1 12:58:01 2018(r333137) @@ -31,7 +31,7 @@ .\" .\" $FreeBSD$ .\" -.Dd August 18, 2006 +.Dd April 30, 2018 .Dt IXGB 4 .Os .Sh NAME @@ -51,6 +51,12 @@ module at boot time, place the following line in .Bd -literal -offset indent if_ixgb_load="YES" .Ed +.Sh DEPRECATION NOTICE +The +.Nm +driver is not present in +.Fx 12.0 +and later. .Sh DESCRIPTION The .Nm Modified: head/sys/dev/ixgb/if_ixgb.c == --- head/sys/dev/ixgb/if_ixgb.c Tue May 1 08:03:12 2018(r333136) +++ head/sys/dev/ixgb/if_ixgb.c Tue May 1 12:58:01 2018(r333137) @@ -350,6 +350,7 @@ ixgb_attach(device_t dev) ixgb_clear_hw_cntrs(&adapter->hw); ixgb_update_stats_counters(adapter); + gone_in_dev(dev, 12, "ixgb(4) driver"); INIT_DEBUGOUT("ixgb_attach: end"); return (0); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r333046 - in head/sys: amd64/conf conf
Author: sbruno Date: Thu Apr 26 22:43:25 2018 New Revision: 333046 URL: https://svnweb.freebsd.org/changeset/base/333046 Log: move smartpqi(4) controller out of NOTES and into sys/amd64/NOTES to appease LINT Submitted by: rpokala Reported by: npn Modified: head/sys/amd64/conf/NOTES head/sys/conf/NOTES Modified: head/sys/amd64/conf/NOTES == --- head/sys/amd64/conf/NOTES Thu Apr 26 22:15:09 2018(r333045) +++ head/sys/amd64/conf/NOTES Thu Apr 26 22:43:25 2018(r333046) @@ -415,6 +415,13 @@ device ntb_hw_plx # PLX NTB hardware driver device arcmsr # Areca SATA II RAID # +# Microsemi smartpqi controllers. +# These controllers have a SCSI-like interface, and require the +# CAM infrastructure. +# +device smartpqi + +# # 3ware 9000 series PATA/SATA RAID controller driver and options. # The driver is implemented as a SIM, and so, needs the CAM infrastructure. # Modified: head/sys/conf/NOTES == --- head/sys/conf/NOTES Thu Apr 26 22:15:09 2018(r333045) +++ head/sys/conf/NOTES Thu Apr 26 22:43:25 2018(r333046) @@ -1717,13 +1717,6 @@ options MFI_DEBUG device mrsas # LSI/Avago MegaRAID SAS/SATA, 6Gb/s and 12Gb/s # -# Microsemi smartpqi controllers. -# These controllers have a SCSI-like interface, and require the -# CAM infrastructure. -# -device smartpqi - -# # 3ware ATA RAID # device twe # 3ware ATA RAID ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r333021 - head/sys/sys
Author: sbruno Date: Thu Apr 26 17:32:35 2018 New Revision: 333021 URL: https://svnweb.freebsd.org/changeset/base/333021 Log: Tigthen up kern_prefetch.h includes. The DMAP check was not committed in here with HPTS so these includes aren't necessary. Comments from rrs: Yeah I had those in there in our version so I could validate the range in amd64 with the DMAP_VM but for some reason those don't work in head anymore.. Forgot to purge the headers :) Submitted by: Kevin Bowling Reviewed by: rrs Differential Revision:https://reviews.freebsd.org/D15164 Modified: head/sys/sys/kern_prefetch.h Modified: head/sys/sys/kern_prefetch.h == --- head/sys/sys/kern_prefetch.hThu Apr 26 17:13:58 2018 (r333020) +++ head/sys/sys/kern_prefetch.hThu Apr 26 17:32:35 2018 (r333021) @@ -28,13 +28,6 @@ */ #define __kern_prefetch_h__ #ifdef _KERNEL -#if defined(__amd64__) -#include -#include -#include -#include -#include -#endif static __inline void kern_prefetch(const volatile void *addr, void* before) ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r333019 - in head: share/man/man4 sys/amd64/conf sys/conf sys/dev/smartpqi sys/modules sys/modules/smartpqi
Author: sbruno Date: Thu Apr 26 16:59:06 2018 New Revision: 333019 URL: https://svnweb.freebsd.org/changeset/base/333019 Log: martpqi(4): - Microsemi SCSI driver for PQI controllers. - Found on newer model HP servers. - Restrict to AMD64 only as per developer request. The driver provides support for the new generation of PQI controllers from Microsemi. This driver is the first SCSI driver to implement the PQI queuing model and it will replace the aacraid driver for Adaptec Series 9 controllers. HARDWARE Controllers supported by the driver include: HPE Gen10 Smart Array Controller Family OEM Controllers based on the Microsemi Chipset. Submitted by: deepak.u...@microsemi.com Relnotes: yes Sponsored by: Microsemi Differential Revision: https://reviews.freebsd.org/D14514 > Description of fields to fill in above: 76 columns --| > PR: If and which Problem Report is related. > Submitted by: If someone else sent in the change. > Reported by: If someone else reported the issue. > Reviewed by: If someone else reviewed your modification. > Approved by: If you needed approval for this commit. > Obtained from:If the change is from a third party. > MFC after:N [day[s]|week[s]|month[s]]. Request a reminder email. > MFH: Ports tree branch name. Request approval for merge. > Relnotes: Set to 'yes' for mention in release notes. > Security: Vulnerability reference (one per line) or description. > Sponsored by: If the change was sponsored by an organization. > Pull Request: https://github.com/freebsd/freebsd/pull/### (*full* GitHub URL needed). > Differential Revision:https://reviews.freebsd.org/D### (*full* phabric URL needed). > Empty fields above will be automatically removed. Mshare/man/man4/Makefile AM share/man/man4/smartpqi.4 Msys/amd64/conf/GENERIC Msys/conf/NOTES Msys/conf/files.amd64 Asys/dev/smartpqi AM sys/dev/smartpqi/smartpqi_cam.c AM sys/dev/smartpqi/smartpqi_cmd.c AM sys/dev/smartpqi/smartpqi_defines.h AM sys/dev/smartpqi/smartpqi_discovery.c AM sys/dev/smartpqi/smartpqi_event.c AM sys/dev/smartpqi/smartpqi_helper.c AM sys/dev/smartpqi/smartpqi_includes.h AM sys/dev/smartpqi/smartpqi_init.c AM sys/dev/smartpqi/smartpqi_intr.c AM sys/dev/smartpqi/smartpqi_ioctl.c AM sys/dev/smartpqi/smartpqi_ioctl.h AM sys/dev/smartpqi/smartpqi_main.c AM sys/dev/smartpqi/smartpqi_mem.c AM sys/dev/smartpqi/smartpqi_misc.c AM sys/dev/smartpqi/smartpqi_prototypes.h AM sys/dev/smartpqi/smartpqi_queue.c AM sys/dev/smartpqi/smartpqi_request.c AM sys/dev/smartpqi/smartpqi_response.c AM sys/dev/smartpqi/smartpqi_sis.c AM sys/dev/smartpqi/smartpqi_structures.h AM sys/dev/smartpqi/smartpqi_tag.c Msys/modules/Makefile Asys/modules/smartpqi AM sys/modules/smartpqi/Makefile Added: head/share/man/man4/smartpqi.4 (contents, props changed) head/sys/dev/smartpqi/ head/sys/dev/smartpqi/smartpqi_cam.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_cmd.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_defines.h (contents, props changed) head/sys/dev/smartpqi/smartpqi_discovery.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_event.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_helper.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_includes.h (contents, props changed) head/sys/dev/smartpqi/smartpqi_init.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_intr.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_ioctl.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_ioctl.h (contents, props changed) head/sys/dev/smartpqi/smartpqi_main.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_mem.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_misc.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_prototypes.h (contents, props changed) head/sys/dev/smartpqi/smartpqi_queue.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_request.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_response.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_sis.c (contents, props changed) head/sys/dev/smartpqi/smartpqi_structures.h (contents, props changed) head/sys/dev/smartpqi/smartpqi_tag.c (contents, props changed) head/sys/modules/smartpqi/ head/sys/modules/smartpqi/Makefile (contents, props changed) Modified: head/share/man/man4/Makefile head/sys/amd64/conf/GENERIC head/sys/conf/NOTES head/sys/conf/files.amd64 head/sys/modules/Makefile Modified: head/share/man/man4/Makefile ===
svn commit: r332967 - in head: cddl/lib/libdtrace sys/kern sys/netinet sys/netinet6 sys/sys
Author: sbruno Date: Tue Apr 24 19:55:12 2018 New Revision: 332967 URL: https://svnweb.freebsd.org/changeset/base/332967 Log: Revert r332894 at the request of the submitter. Submitted by: Johannes Lundberg Sponsored by: Limelight Networks Modified: head/cddl/lib/libdtrace/tcp.d head/sys/kern/uipc_debug.c head/sys/kern/uipc_socket.c head/sys/netinet/in_pcb.c head/sys/netinet/in_pcb.h head/sys/netinet/ip_output.c head/sys/netinet/tcp_subr.c head/sys/netinet/udp_usrreq.c head/sys/netinet6/in6_pcb.c head/sys/netinet6/in6_src.c head/sys/netinet6/ip6_output.c head/sys/netinet6/udp6_usrreq.c head/sys/sys/socket.h head/sys/sys/socketvar.h Modified: head/cddl/lib/libdtrace/tcp.d == --- head/cddl/lib/libdtrace/tcp.d Tue Apr 24 19:51:05 2018 (r332966) +++ head/cddl/lib/libdtrace/tcp.d Tue Apr 24 19:55:12 2018 (r332967) @@ -192,12 +192,12 @@ translator tcpsinfo_t < struct tcpcb *p > { tcps_rport =p == NULL ? 0 : ntohs(p->t_inpcb->inp_inc.inc_ie.ie_fport); tcps_laddr =p == NULL ? 0 : p->t_inpcb->inp_vflag == INP_IPV4 ? - inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.id46_addr.ia46_addr4.s_addr) : - inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.id6_addr); + inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.ie46_local.ia46_addr4.s_addr) : + inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.ie6_local); tcps_raddr =p == NULL ? 0 : p->t_inpcb->inp_vflag == INP_IPV4 ? - inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.id46_addr.ia46_addr4.s_addr) : - inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.id6_addr); + inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.ie46_foreign.ia46_addr4.s_addr) : + inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.ie6_foreign); tcps_state =p == NULL ? -1 : p->t_state; tcps_iss = p == NULL ? 0 : p->iss; tcps_irs = p == NULL ? 0 : p->irs; Modified: head/sys/kern/uipc_debug.c == --- head/sys/kern/uipc_debug.c Tue Apr 24 19:51:05 2018(r332966) +++ head/sys/kern/uipc_debug.c Tue Apr 24 19:55:12 2018(r332967) @@ -77,7 +77,7 @@ db_print_sotype(short so_type) } static void -db_print_sooptions(int so_options) +db_print_sooptions(short so_options) { int comma; @@ -120,10 +120,6 @@ db_print_sooptions(int so_options) } if (so_options & SO_REUSEPORT) { db_printf("%sSO_REUSEPORT", comma ? ", " : ""); - comma = 1; - } - if (so_options & SO_REUSEPORT_LB) { - db_printf("%sSO_REUSEPORT_LB", comma ? ", " : ""); comma = 1; } if (so_options & SO_TIMESTAMP) { Modified: head/sys/kern/uipc_socket.c == --- head/sys/kern/uipc_socket.c Tue Apr 24 19:51:05 2018(r332966) +++ head/sys/kern/uipc_socket.c Tue Apr 24 19:55:12 2018(r332967) @@ -1057,100 +1057,6 @@ sofree(struct socket *so) } /* - * Let socket in same load balance group (same port and address) - * inherit pending sockets of the closing socket. - * - * "so_inh" will inherit sockets from "so" - */ -void -soinherit(struct socket *so, struct socket *so_inh) -{ - TAILQ_HEAD(, socket) comp, incomp; - struct socket *sp, *head, *head_inh; - int qlen, incqlen; - - KASSERT(so->so_options & SO_ACCEPTCONN, - ("so does not accept connection")); - KASSERT(so_inh->so_options & SO_ACCEPTCONN, - ("so_inh does not accept connection")); - - -restart: - SOCK_LOCK(so); - if ((head = so->so_listen) != NULL && - __predict_false(SOLISTEN_TRYLOCK(head) == 0)) { - SOCK_UNLOCK(so); - goto restart; - } - -restart_inh: - SOCK_LOCK(so_inh); - if ((head_inh = so_inh->so_listen) != NULL && - __predict_false(SOLISTEN_TRYLOCK(head_inh) == 0)) { - SOCK_UNLOCK(so_inh); - goto restart_inh; - } - - TAILQ_INIT(&comp); - TAILQ_INIT(&incomp); - - /* -* Save completed queue and incompleted queue -*/ - TAILQ_CONCAT(&comp, &so->sol_comp, so_list); - qlen = so->sol_qlen; - so->sol_qlen = 0; - - TAILQ_CONCAT(&incomp, &so->sol_incomp, so_list); - incqlen = so->sol_incqlen; - so->sol_incqlen = 0; - - /* -* Append the saved completed queue and incompleted -* queue to the socket inherits them. -* -* XXX -* This may temporarily break the inheriting socket's -* so_qlimit. -*/ - TAILQ_FOREACH(sp, &comp,
svn commit: r332894 - in head: cddl/lib/libdtrace sys/kern sys/netinet sys/netinet6 sys/sys
Author: sbruno Date: Mon Apr 23 19:51:00 2018 New Revision: 332894 URL: https://svnweb.freebsd.org/changeset/base/332894 Log: Load balance sockets with new SO_REUSEPORT_LB option This patch adds a new socket option, SO_REUSEPORT_LB, which allow multiple programs or threads to bind to the same port and incoming connections will be load balanced using a hash function. Most of the code was copied from a similar patch for DragonflyBSD. However, in DragonflyBSD, load balancing is a global on/off setting and can not be set per socket. This patch allows for simultaneous use of both the current SO_REUSEPORT and the new SO_REUSEPORT_LB options on the same system. Required changes to structures Globally change so_options from 16 to 32 bit value to allow for more options. Add hashtable in pcbinfo to hold all SO_REUSEPORT_LB sockets. Limitations As DragonflyBSD, a load balance group is limited to 256 pcbs (256 programs or threads sharing the same socket). Submitted by: Johannes Lundberg Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D11003 Modified: head/cddl/lib/libdtrace/tcp.d head/sys/kern/uipc_debug.c head/sys/kern/uipc_socket.c head/sys/netinet/in_pcb.c head/sys/netinet/in_pcb.h head/sys/netinet/ip_output.c head/sys/netinet/tcp_subr.c head/sys/netinet/udp_usrreq.c head/sys/netinet6/in6_pcb.c head/sys/netinet6/in6_src.c head/sys/netinet6/ip6_output.c head/sys/netinet6/udp6_usrreq.c head/sys/sys/socket.h head/sys/sys/socketvar.h Modified: head/cddl/lib/libdtrace/tcp.d == --- head/cddl/lib/libdtrace/tcp.d Mon Apr 23 18:33:26 2018 (r332893) +++ head/cddl/lib/libdtrace/tcp.d Mon Apr 23 19:51:00 2018 (r332894) @@ -192,12 +192,12 @@ translator tcpsinfo_t < struct tcpcb *p > { tcps_rport =p == NULL ? 0 : ntohs(p->t_inpcb->inp_inc.inc_ie.ie_fport); tcps_laddr =p == NULL ? 0 : p->t_inpcb->inp_vflag == INP_IPV4 ? - inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.ie46_local.ia46_addr4.s_addr) : - inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.ie6_local); + inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.id46_addr.ia46_addr4.s_addr) : + inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependladdr.id6_addr); tcps_raddr =p == NULL ? 0 : p->t_inpcb->inp_vflag == INP_IPV4 ? - inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.ie46_foreign.ia46_addr4.s_addr) : - inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.ie6_foreign); + inet_ntoa(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.id46_addr.ia46_addr4.s_addr) : + inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.id6_addr); tcps_state =p == NULL ? -1 : p->t_state; tcps_iss = p == NULL ? 0 : p->iss; tcps_irs = p == NULL ? 0 : p->irs; Modified: head/sys/kern/uipc_debug.c == --- head/sys/kern/uipc_debug.c Mon Apr 23 18:33:26 2018(r332893) +++ head/sys/kern/uipc_debug.c Mon Apr 23 19:51:00 2018(r332894) @@ -77,7 +77,7 @@ db_print_sotype(short so_type) } static void -db_print_sooptions(short so_options) +db_print_sooptions(int so_options) { int comma; @@ -120,6 +120,10 @@ db_print_sooptions(short so_options) } if (so_options & SO_REUSEPORT) { db_printf("%sSO_REUSEPORT", comma ? ", " : ""); + comma = 1; + } + if (so_options & SO_REUSEPORT_LB) { + db_printf("%sSO_REUSEPORT_LB", comma ? ", " : ""); comma = 1; } if (so_options & SO_TIMESTAMP) { Modified: head/sys/kern/uipc_socket.c == --- head/sys/kern/uipc_socket.c Mon Apr 23 18:33:26 2018(r332893) +++ head/sys/kern/uipc_socket.c Mon Apr 23 19:51:00 2018(r332894) @@ -1057,6 +1057,100 @@ sofree(struct socket *so) } /* + * Let socket in same load balance group (same port and address) + * inherit pending sockets of the closing socket. + * + * "so_inh" will inherit sockets from "so" + */ +void +soinherit(struct socket *so, struct socket *so_inh) +{ + TAILQ_HEAD(, socket) comp, incomp; + struct socket *sp, *head, *head_inh; + int qlen, incqlen; + + KASSERT(so->so_options & SO_ACCEPTCONN, + ("so does not accept connection")); + KASSERT(so_inh->so_options & SO_ACCEPTCONN, + ("so_inh does not accept connection")); + + +restart: + SOCK_LOCK(so); + if ((head = so->so_listen) != NULL && + __predict_false(SOLISTEN_TRYLOCK(head) == 0)) { + SOCK_UNLOCK(so); + goto restart
svn commit: r332890 - head/sys/dev/sound/pci/hda
Author: sbruno Date: Mon Apr 23 16:38:27 2018 New Revision: 332890 URL: https://svnweb.freebsd.org/changeset/base/332890 Log: hda(4) - add quirk for Dell XPS9560 audio gleaned and massages from linux https://github.com/freebsd/freebsd/pull/137 Submitted by: K Staring MFC after:3 days Relnotes: yes Modified: head/sys/dev/sound/pci/hda/hdaa_patches.c head/sys/dev/sound/pci/hda/hdac.h Modified: head/sys/dev/sound/pci/hda/hdaa_patches.c == --- head/sys/dev/sound/pci/hda/hdaa_patches.c Mon Apr 23 14:22:16 2018 (r332889) +++ head/sys/dev/sound/pci/hda/hdaa_patches.c Mon Apr 23 16:38:27 2018 (r332890) @@ -410,6 +410,15 @@ hdac_pin_patch(struct hdaa_widget *w) patch = "as=1 seq=15"; break; } + } else if (id == HDA_CODEC_ALC298 && subid == DELL_XPS9560_SUBVENDOR) { + switch (nid) { + case 24: + config = 0x01a1913c; + break; + case 26: + config = 0x01a1913d; + break; + } } if (patch != NULL) Modified: head/sys/dev/sound/pci/hda/hdac.h == --- head/sys/dev/sound/pci/hda/hdac.h Mon Apr 23 14:22:16 2018 (r332889) +++ head/sys/dev/sound/pci/hda/hdac.h Mon Apr 23 16:38:27 2018 (r332890) @@ -201,6 +201,7 @@ #define DELL_I1300_SUBVENDOR HDA_MODEL_CONSTRUCT(DELL, 0x01c9) #define DELL_XPSM1210_SUBVENDORHDA_MODEL_CONSTRUCT(DELL, 0x01d7) #define DELL_OPLX745_SUBVENDOR HDA_MODEL_CONSTRUCT(DELL, 0x01da) +#define DELL_XPS9560_SUBVENDOR HDA_MODEL_CONSTRUCT(DELL, 0x07be) #define DELL_ALL_SUBVENDOR HDA_MODEL_CONSTRUCT(DELL, 0x) /* Clevo */ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r332432 - head/sys/net
Author: sbruno Date: Thu Apr 12 14:35:37 2018 New Revision: 332432 URL: https://svnweb.freebsd.org/changeset/base/332432 Log: Restore r332389 after resolution of locking fixes. Add one extra lock initialization to iflib_register() that was missed in the git<->phab conversion. Split out flag manipulation from general context manipulation in iflib To avoid blocking on the context lock in the swi thread and risk potential deadlocks, this change protects lighter weight updates that only need to be consistent with each other with their own lock. Submitted by: Matthew Macy Reviewed by:shurd Sponsored by: Limelight Networks Differential Revision: https://reviews.freebsd.org/D14967 Modified: head/sys/net/iflib.c Modified: head/sys/net/iflib.c == --- head/sys/net/iflib.cThu Apr 12 14:32:26 2018(r332431) +++ head/sys/net/iflib.cThu Apr 12 14:35:37 2018(r332432) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2014-2017, Matthew Macy + * Copyright (c) 2014-2018, Matthew Macy * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -163,7 +163,8 @@ struct iflib_ctx { if_shared_ctx_t ifc_sctx; struct if_softc_ctx ifc_softc_ctx; - struct mtx ifc_mtx; + struct mtx ifc_ctx_mtx; + struct mtx ifc_state_mtx; uint16_t ifc_nhwtxqs; @@ -317,8 +318,10 @@ typedef struct iflib_sw_tx_desc_array { #defineIFC_INIT_DONE 0x020 #defineIFC_PREFETCH0x040 #defineIFC_DO_RESET0x080 -#defineIFC_CHECK_HUNG 0x100 +#defineIFC_DO_WATCHDOG 0x100 +#defineIFC_CHECK_HUNG 0x200 + #define CSUM_OFFLOAD (CSUM_IP_TSO|CSUM_IP6_TSO|CSUM_IP| \ CSUM_IP_UDP|CSUM_IP_TCP|CSUM_IP_SCTP| \ CSUM_IP6_UDP|CSUM_IP6_TCP|CSUM_IP6_SCTP) @@ -534,13 +537,19 @@ rxd_info_zero(if_rxd_info_t ri) #define CTX_ACTIVE(ctx) ((if_getdrvflags((ctx)->ifc_ifp) & IFF_DRV_RUNNING)) -#define CTX_LOCK_INIT(_sc, _name) mtx_init(&(_sc)->ifc_mtx, _name, "iflib ctx lock", MTX_DEF) +#define CTX_LOCK_INIT(_sc, _name) mtx_init(&(_sc)->ifc_ctx_mtx, _name, "iflib ctx lock", MTX_DEF) +#define CTX_LOCK(ctx) mtx_lock(&(ctx)->ifc_ctx_mtx) +#define CTX_UNLOCK(ctx) mtx_unlock(&(ctx)->ifc_ctx_mtx) +#define CTX_LOCK_DESTROY(ctx) mtx_destroy(&(ctx)->ifc_ctx_mtx) -#define CTX_LOCK(ctx) mtx_lock(&(ctx)->ifc_mtx) -#define CTX_UNLOCK(ctx) mtx_unlock(&(ctx)->ifc_mtx) -#define CTX_LOCK_DESTROY(ctx) mtx_destroy(&(ctx)->ifc_mtx) +#define STATE_LOCK_INIT(_sc, _name) mtx_init(&(_sc)->ifc_state_mtx, _name, "iflib state lock", MTX_DEF) +#define STATE_LOCK(ctx) mtx_lock(&(ctx)->ifc_state_mtx) +#define STATE_UNLOCK(ctx) mtx_unlock(&(ctx)->ifc_state_mtx) +#define STATE_LOCK_DESTROY(ctx) mtx_destroy(&(ctx)->ifc_state_mtx) + + #define CALLOUT_LOCK(txq) mtx_lock(&txq->ift_mtx) #define CALLOUT_UNLOCK(txq)mtx_unlock(&txq->ift_mtx) @@ -2143,18 +2152,14 @@ iflib_timer(void *arg) if (if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING) callout_reset_on(&txq->ift_timer, hz/2, iflib_timer, txq, txq->ift_timer.c_cpu); return; -hung: - CTX_LOCK(ctx); - if_setdrvflagbits(ctx->ifc_ifp, IFF_DRV_OACTIVE, IFF_DRV_RUNNING); + hung: device_printf(ctx->ifc_dev, "TX(%d) desc avail = %d, pidx = %d\n", txq->ift_id, TXQ_AVAIL(txq), txq->ift_pidx); - - IFDI_WATCHDOG_RESET(ctx); - ctx->ifc_watchdog_events++; - - ctx->ifc_flags |= IFC_DO_RESET; + STATE_LOCK(ctx); + if_setdrvflagbits(ctx->ifc_ifp, IFF_DRV_OACTIVE, IFF_DRV_RUNNING); + ctx->ifc_flags |= (IFC_DO_WATCHDOG|IFC_DO_RESET); iflib_admin_intr_deferred(ctx); - CTX_UNLOCK(ctx); + STATE_UNLOCK(ctx); } static void @@ -2672,10 +2677,10 @@ iflib_rxeof(iflib_rxq_t rxq, qidx_t budget) return true; return (iflib_rxd_avail(ctx, rxq, *cidxp, 1)); err: - CTX_LOCK(ctx); + STATE_LOCK(ctx); ctx->ifc_flags |= IFC_DO_RESET; iflib_admin_intr_deferred(ctx); - CTX_UNLOCK(ctx); + STATE_UNLOCK(ctx); return (false); } @@ -3705,27 +3710,35 @@ _task_fn_admin(void *context) if_softc_ctx_t sctx = &ctx->ifc_softc_ctx; iflib_txq_t txq; int i; + bool oactive, running, do_reset, do_watchdog; - if (!(if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING)) { - if (!(if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_OACTIVE)) { - return; - } - } + STATE_LOCK(ctx); + running = (if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING); + oactive = (if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_OACTIVE); + do_reset = (ctx->ifc_flags & IFC_DO_RESET); + do_watchdog = (ctx->
svn commit: r332411 - head/sys/net
Author: sbruno Date: Wed Apr 11 17:26:53 2018 New Revision: 332411 URL: https://svnweb.freebsd.org/changeset/base/332411 Log: Revert r332389 as it is causing panics for various users and we need to add some more test cases. Modified: head/sys/net/iflib.c Modified: head/sys/net/iflib.c == --- head/sys/net/iflib.cWed Apr 11 17:18:54 2018(r332410) +++ head/sys/net/iflib.cWed Apr 11 17:26:53 2018(r332411) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2014-2018, Matthew Macy + * Copyright (c) 2014-2017, Matthew Macy * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -163,8 +163,7 @@ struct iflib_ctx { if_shared_ctx_t ifc_sctx; struct if_softc_ctx ifc_softc_ctx; - struct mtx ifc_ctx_mtx; - struct mtx ifc_state_mtx; + struct mtx ifc_mtx; uint16_t ifc_nhwtxqs; uint16_t ifc_nhwrxqs; @@ -319,10 +318,8 @@ typedef struct iflib_sw_tx_desc_array { #defineIFC_INIT_DONE 0x020 #defineIFC_PREFETCH0x040 #defineIFC_DO_RESET0x080 -#defineIFC_DO_WATCHDOG 0x100 -#defineIFC_CHECK_HUNG 0x200 +#defineIFC_CHECK_HUNG 0x100 - #define CSUM_OFFLOAD (CSUM_IP_TSO|CSUM_IP6_TSO|CSUM_IP| \ CSUM_IP_UDP|CSUM_IP_TCP|CSUM_IP_SCTP| \ CSUM_IP6_UDP|CSUM_IP6_TCP|CSUM_IP6_SCTP) @@ -538,19 +535,13 @@ rxd_info_zero(if_rxd_info_t ri) #define CTX_ACTIVE(ctx) ((if_getdrvflags((ctx)->ifc_ifp) & IFF_DRV_RUNNING)) -#define CTX_LOCK_INIT(_sc, _name) mtx_init(&(_sc)->ifc_ctx_mtx, _name, "iflib ctx lock", MTX_DEF) -#define CTX_LOCK(ctx) mtx_lock(&(ctx)->ifc_ctx_mtx) -#define CTX_UNLOCK(ctx) mtx_unlock(&(ctx)->ifc_ctx_mtx) -#define CTX_LOCK_DESTROY(ctx) mtx_destroy(&(ctx)->ifc_ctx_mtx) +#define CTX_LOCK_INIT(_sc, _name) mtx_init(&(_sc)->ifc_mtx, _name, "iflib ctx lock", MTX_DEF) +#define CTX_LOCK(ctx) mtx_lock(&(ctx)->ifc_mtx) +#define CTX_UNLOCK(ctx) mtx_unlock(&(ctx)->ifc_mtx) +#define CTX_LOCK_DESTROY(ctx) mtx_destroy(&(ctx)->ifc_mtx) -#define STATE_LOCK_INIT(_sc, _name) mtx_init(&(_sc)->ifc_state_mtx, _name, "iflib state lock", MTX_DEF) -#define STATE_LOCK(ctx) mtx_lock(&(ctx)->ifc_state_mtx) -#define STATE_UNLOCK(ctx) mtx_unlock(&(ctx)->ifc_state_mtx) -#define STATE_LOCK_DESTROY(ctx) mtx_destroy(&(ctx)->ifc_state_mtx) - - #define CALLOUT_LOCK(txq) mtx_lock(&txq->ift_mtx) #define CALLOUT_UNLOCK(txq)mtx_unlock(&txq->ift_mtx) @@ -2153,14 +2144,18 @@ iflib_timer(void *arg) if (if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING) callout_reset_on(&txq->ift_timer, hz/2, iflib_timer, txq, txq->ift_timer.c_cpu); return; - hung: +hung: + CTX_LOCK(ctx); + if_setdrvflagbits(ctx->ifc_ifp, IFF_DRV_OACTIVE, IFF_DRV_RUNNING); device_printf(ctx->ifc_dev, "TX(%d) desc avail = %d, pidx = %d\n", txq->ift_id, TXQ_AVAIL(txq), txq->ift_pidx); - STATE_LOCK(ctx); - if_setdrvflagbits(ctx->ifc_ifp, IFF_DRV_OACTIVE, IFF_DRV_RUNNING); - ctx->ifc_flags |= (IFC_DO_WATCHDOG|IFC_DO_RESET); + + IFDI_WATCHDOG_RESET(ctx); + ctx->ifc_watchdog_events++; + + ctx->ifc_flags |= IFC_DO_RESET; iflib_admin_intr_deferred(ctx); - STATE_UNLOCK(ctx); + CTX_UNLOCK(ctx); } static void @@ -2678,10 +2673,10 @@ iflib_rxeof(iflib_rxq_t rxq, qidx_t budget) return true; return (iflib_rxd_avail(ctx, rxq, *cidxp, 1)); err: - STATE_LOCK(ctx); + CTX_LOCK(ctx); ctx->ifc_flags |= IFC_DO_RESET; iflib_admin_intr_deferred(ctx); - STATE_UNLOCK(ctx); + CTX_UNLOCK(ctx); return (false); } @@ -3711,35 +3706,27 @@ _task_fn_admin(void *context) if_softc_ctx_t sctx = &ctx->ifc_softc_ctx; iflib_txq_t txq; int i; - bool oactive, running, do_reset, do_watchdog; - STATE_LOCK(ctx); - running = (if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING); - oactive = (if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_OACTIVE); - do_reset = (ctx->ifc_flags & IFC_DO_RESET); - do_watchdog = (ctx->ifc_flags & IFC_DO_WATCHDOG); - ctx->ifc_flags &= ~(IFC_DO_RESET|IFC_DO_WATCHDOG); - STATE_UNLOCK(ctx); + if (!(if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING)) { + if (!(if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_OACTIVE)) { + return; + } + } - if (!running & !oactive) - return; - CTX_LOCK(ctx); for (txq = ctx->ifc_txqs, i = 0; i < sctx->isc_ntxqsets; i++, txq++) { CALLOUT_LOCK(txq); callout_stop(&txq->ift_timer); CALLOUT_UNLOCK(txq); } - if (do_watchdog) { - ctx->ifc_watchdog_ev
svn commit: r332070 - in head/sys/geom: . label raid
Author: sbruno Date: Thu Apr 5 13:56:40 2018 New Revision: 332070 URL: https://svnweb.freebsd.org/changeset/base/332070 Log: Squash error from geom by sizing ident strings to DISK_IDENT_SIZE. Display attribute in future error strings and differentiate g_handleattr() error messages for ease of debugging in the future. "g_handleattr: md1 bio_length 24 strlen 31 -> EFAULT" Reported by: swills Reviewed by: imp cem avg Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D14962 Modified: head/sys/geom/geom_subr.c head/sys/geom/label/g_label_disk_ident.c head/sys/geom/raid/md_ddf.c head/sys/geom/raid/md_intel.c Modified: head/sys/geom/geom_subr.c == --- head/sys/geom/geom_subr.c Thu Apr 5 13:39:53 2018(r332069) +++ head/sys/geom/geom_subr.c Thu Apr 5 13:56:40 2018(r332070) @@ -1050,16 +1050,16 @@ g_handleattr(struct bio *bp, const char *attribute, co bzero(bp->bio_data, bp->bio_length); if (strlcpy(bp->bio_data, val, bp->bio_length) >= bp->bio_length) { - printf("%s: %s bio_length %jd len %zu -> EFAULT\n", - __func__, bp->bio_to->name, + printf("%s: %s %s bio_length %jd strlen %zu -> EFAULT\n", + __func__, bp->bio_to->name, attribute, (intmax_t)bp->bio_length, strlen(val)); error = EFAULT; } } else if (bp->bio_length == len) { bcopy(val, bp->bio_data, len); } else { - printf("%s: %s bio_length %jd len %d -> EFAULT\n", __func__, - bp->bio_to->name, (intmax_t)bp->bio_length, len); + printf("%s: %s %s bio_length %jd len %d -> EFAULT\n", __func__, + bp->bio_to->name, attribute, (intmax_t)bp->bio_length, len); error = EFAULT; } if (error == 0) Modified: head/sys/geom/label/g_label_disk_ident.c == --- head/sys/geom/label/g_label_disk_ident.cThu Apr 5 13:39:53 2018 (r332069) +++ head/sys/geom/label/g_label_disk_ident.cThu Apr 5 13:56:40 2018 (r332070) @@ -49,7 +49,7 @@ static void g_label_disk_ident_taste(struct g_consumer *cp, char *label, size_t size) { struct g_class *cls; - char ident[100]; + char ident[DISK_IDENT_SIZE]; int ident_len, found, i; g_topology_assert_not(); Modified: head/sys/geom/raid/md_ddf.c == --- head/sys/geom/raid/md_ddf.c Thu Apr 5 13:39:53 2018(r332069) +++ head/sys/geom/raid/md_ddf.c Thu Apr 5 13:56:40 2018(r332070) @@ -41,6 +41,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include "geom/raid/g_raid.h" #include "geom/raid/md_ddf.h" @@ -572,7 +573,7 @@ ddf_meta_create(struct g_raid_disk *disk, struct ddf_m off_t anchorlba; u_int ss, pos, size; int len, error; - char serial_buffer[24]; + char serial_buffer[DISK_IDENT_SIZE]; if (sample->hdr == NULL) sample = NULL; Modified: head/sys/geom/raid/md_intel.c == --- head/sys/geom/raid/md_intel.c Thu Apr 5 13:39:53 2018 (r332069) +++ head/sys/geom/raid/md_intel.c Thu Apr 5 13:56:40 2018 (r332070) @@ -41,6 +41,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include "geom/raid/g_raid.h" #include "g_raid_md_if.h" @@ -1450,7 +1451,7 @@ g_raid_md_create_intel(struct g_raid_md_object *md, st static int g_raid_md_get_label(struct g_consumer *cp, char *serial, int serlen) { - char serial_buffer[24]; + char serial_buffer[DISK_IDENT_SIZE]; int len, error; len = sizeof(serial_buffer); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r331567 - head/sys/netinet/cc
Author: sbruno Date: Mon Mar 26 19:53:36 2018 New Revision: 331567 URL: https://svnweb.freebsd.org/changeset/base/331567 Log: CC Cubic: fix underflow for cubic_cwnd() Singed calculations in cubic_cwnd() can result in negative cwnd value which is then cast to an unsigned value. Values less than 1 mss are generally bad for other parts of the code, also fixed. Submitted by: Jason Eggleston Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D14141 Modified: head/sys/netinet/cc/cc.h head/sys/netinet/cc/cc_cubic.c head/sys/netinet/cc/cc_cubic.h Modified: head/sys/netinet/cc/cc.h == --- head/sys/netinet/cc/cc.hMon Mar 26 19:53:02 2018(r331566) +++ head/sys/netinet/cc/cc.hMon Mar 26 19:53:36 2018(r331567) @@ -102,6 +102,8 @@ struct cc_var { #defineCCF_ACKNOW 0x0008 /* Will this ack be sent now? */ #defineCCF_IPHDR_CE0x0010 /* Does this packet set CE bit? */ #defineCCF_TCPHDR_CWR 0x0020 /* Does this packet set CWR bit? */ +#defineCCF_MAX_CWND0x0040 /* Have we reached maximum cwnd? */ +#defineCCF_CHG_MAX_CWND0x0080 /* Cubic max_cwnd changed, for K */ /* ACK types passed to the ack_received() hook. */ #defineCC_ACK 0x0001 /* Regular in sequence ACK. */ Modified: head/sys/netinet/cc/cc_cubic.c == --- head/sys/netinet/cc/cc_cubic.c Mon Mar 26 19:53:02 2018 (r331566) +++ head/sys/netinet/cc/cc_cubic.c Mon Mar 26 19:53:36 2018 (r331567) @@ -88,6 +88,8 @@ struct cubic { unsigned long max_cwnd; /* cwnd at the previous congestion event. */ unsigned long prev_max_cwnd; + /* Cached value for t_maxseg when K was computed */ + uint32_tk_maxseg; /* Number of congestion events. */ uint32_tnum_cong_events; /* Minimum observed rtt in ticks. */ @@ -124,6 +126,9 @@ cubic_ack_received(struct cc_var *ccv, uint16_t type) cubic_data = ccv->cc_data; cubic_record_rtt(ccv); + if (ccv->flags & CCF_MAX_CWND) + return; + /* * Regular ACK and we're not in cong/fast recovery and we're cwnd * limited and we're either not doing ABC or are slow starting or are @@ -151,6 +156,12 @@ cubic_ack_received(struct cc_var *ccv, uint16_t type) cubic_data->mean_rtt_ticks, cubic_data->max_cwnd, CCV(ccv, t_maxseg)); + if (ccv->flags & CCF_CHG_MAX_CWND || cubic_data->k_maxseg != CCV(ccv, t_maxseg)) { + cubic_data->K = cubic_k(cubic_data->max_cwnd / CCV(ccv, t_maxseg)); + cubic_data->k_maxseg = CCV(ccv, t_maxseg); + ccv->flags &= ~(CCF_MAX_CWND|CCF_CHG_MAX_CWND); + } + w_cubic_next = cubic_cwnd(ticks_since_cong + cubic_data->mean_rtt_ticks, cubic_data->max_cwnd, CCV(ccv, t_maxseg), cubic_data->K); @@ -162,13 +173,18 @@ cubic_ack_received(struct cc_var *ccv, uint16_t type) * TCP-friendly region, follow tf * cwnd growth. */ - CCV(ccv, snd_cwnd) = w_tf; + CCV(ccv, snd_cwnd) = ulmin(w_tf, TCP_MAXWIN << CCV(ccv, snd_scale)); else if (CCV(ccv, snd_cwnd) < w_cubic_next) { /* * Concave or convex region, follow CUBIC * cwnd growth. */ + if (w_cubic_next >= TCP_MAXWIN << CCV(ccv, snd_scale)) { + w_cubic_next = TCP_MAXWIN << CCV(ccv, snd_scale); + ccv->flags |= CCF_MAX_CWND; + } + w_cubic_next = ulmin(w_cubic_next, TCP_MAXWIN << CCV(ccv, snd_scale)); if (V_tcp_do_rfc3465) CCV(ccv, snd_cwnd) = w_cubic_next; else @@ -186,8 +202,10 @@ cubic_ack_received(struct cc_var *ccv, uint16_t type) * max_cwnd. */ if (cubic_data->num_cong_events == 0 && - cubic_data->max_cwnd < CCV(ccv, snd_cwnd)) + cubic_data->max_cwnd < CCV(ccv, snd_cwnd)) { cubic_data->max_cwnd = CCV(ccv, snd_cwnd); + ccv->flags |= CCF_CHG_MAX_CWND; +
svn commit: r331454 - in head/sys: netinet netinet6
Author: sbruno Date: Fri Mar 23 18:34:38 2018 New Revision: 331454 URL: https://svnweb.freebsd.org/changeset/base/331454 Log: Revert r331379 as the "simple" lock changes have revealed a deeper problem and need for a rethink. Submitted by: Jason Eggleston Sponsored by: Limelight Networks Modified: head/sys/netinet/ip_output.c head/sys/netinet/raw_ip.c head/sys/netinet6/ip6_output.c Modified: head/sys/netinet/ip_output.c == --- head/sys/netinet/ip_output.cFri Mar 23 18:34:35 2018 (r331453) +++ head/sys/netinet/ip_output.cFri Mar 23 18:34:38 2018 (r331454) @@ -1314,14 +1314,12 @@ ip_ctloutput(struct socket *so, struct sockopt *sopt) break; case IP_PORTRANGE: - INP_RLOCK(inp); if (inp->inp_flags & INP_HIGHPORT) optval = IP_PORTRANGE_HIGH; else if (inp->inp_flags & INP_LOWPORT) optval = IP_PORTRANGE_LOW; else optval = 0; - INP_RUNLOCK(inp); break; case IP_ONESBCAST: @@ -1347,11 +1345,9 @@ ip_ctloutput(struct socket *so, struct sockopt *sopt) break; #ifdef RSS case IP_RSSBUCKETID: - INP_RLOCK(inp); retval = rss_hash2bucket(inp->inp_flowid, inp->inp_flowtype, &rss_bucket); - INP_RUNLOCK(inp); if (retval == 0) optval = rss_bucket; else Modified: head/sys/netinet/raw_ip.c == --- head/sys/netinet/raw_ip.c Fri Mar 23 18:34:35 2018(r331453) +++ head/sys/netinet/raw_ip.c Fri Mar 23 18:34:38 2018(r331454) @@ -639,12 +639,10 @@ rip_ctloutput(struct socket *so, struct sockopt *sopt) sizeof optval); if (error) break; - INP_WLOCK(inp); if (optval) inp->inp_flags |= INP_HDRINCL; else inp->inp_flags &= ~INP_HDRINCL; - INP_WUNLOCK(inp); break; case IP_FW3:/* generic ipfw v.3 functions */ Modified: head/sys/netinet6/ip6_output.c == --- head/sys/netinet6/ip6_output.c Fri Mar 23 18:34:35 2018 (r331453) +++ head/sys/netinet6/ip6_output.c Fri Mar 23 18:34:38 2018 (r331454) @@ -1498,10 +1498,8 @@ ip6_ctloutput(struct socket *so, struct sockopt *sopt) error = soopt_mcopyin(sopt, m); /* XXX */ if (error != 0) break; - INP_WLOCK(in6p); error = ip6_pcbopts(&in6p->in6p_outputopts, m, so, sopt); - INP_WUNLOCK(in6p); m_freem(m); /* XXX */ break; } @@ -1637,13 +1635,11 @@ do { \ error = EINVAL; break; } - INP_WLOCK(in6p); optp = &in6p->in6p_outputopts; error = ip6_pcbopt(IPV6_HOPLIMIT, (u_char *)&optval, sizeof(optval), optp, (td != NULL) ? td->td_ucred : NULL, uproto); - INP_WUNLOCK(in6p); break; } @@ -1694,10 +1690,8 @@ do { \ * available only prior to bind(2). * see ipng mailing list, Jun 22 2001. */ - INP_WLOCK(in6p); if (in6p->inp_lport ||
svn commit: r331380 - head/sys/netinet6
Author: sbruno Date: Thu Mar 22 23:34:48 2018 New Revision: 331380 URL: https://svnweb.freebsd.org/changeset/base/331380 Log: Refactor ip6_getpcbopt() for better locking and memory management Created GET_PKTOPT_EXT_HDR() and GET_PKTOPT_SOCKADDR() macros to handle safely fetching options from in6p_outputopts, including properly dealing with in6p locking and preparing memory for sooptcopyout(). Changed the function signature of ip6_getpcbopt() to allow the function to acquire and release locks on in6p as needed. Submitted by: Jason Eggleston Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D14619 Modified: head/sys/netinet6/ip6_output.c Modified: head/sys/netinet6/ip6_output.c == --- head/sys/netinet6/ip6_output.c Thu Mar 22 22:29:32 2018 (r331379) +++ head/sys/netinet6/ip6_output.c Thu Mar 22 23:34:48 2018 (r331380) @@ -135,7 +135,7 @@ static int ip6_pcbopt(int, u_char *, int, struct ip6_p struct ucred *, int); static int ip6_pcbopts(struct ip6_pktopts **, struct mbuf *, struct socket *, struct sockopt *); -static int ip6_getpcbopt(struct ip6_pktopts *, int, struct sockopt *); +static int ip6_getpcbopt(struct inpcb *, int, struct sockopt *); static int ip6_setpktopt(int, u_char *, int, struct ip6_pktopts *, struct ucred *, int, int, int); @@ -2132,8 +2132,7 @@ do { \ case IPV6_DONTFRAG: case IPV6_USE_MIN_MTU: case IPV6_PREFER_TEMPADDR: - error = ip6_getpcbopt(in6p->in6p_outputopts, - optname, sopt); + error = ip6_getpcbopt(in6p, optname, sopt); break; case IPV6_MULTICAST_IF: @@ -2310,18 +2309,51 @@ ip6_pcbopt(int optname, u_char *buf, int len, struct i return (ip6_setpktopt(optname, buf, len, opt, cred, 1, 0, uproto)); } +#define GET_PKTOPT_VAR(field, lenexpr) do { \ + if (pktopt && pktopt->field) { \ + INP_RUNLOCK(in6p); \ + optdata = malloc(sopt->sopt_valsize, M_TEMP, M_WAITOK); \ + malloc_optdata = true; \ + INP_RLOCK(in6p); \ + if (in6p->inp_flags & (INP_TIMEWAIT | INP_DROPPED)) { \ + INP_RUNLOCK(in6p); \ + free(optdata, M_TEMP); \ + return (ECONNRESET); \ + } \ + pktopt = in6p->in6p_outputopts; \ + if (pktopt && pktopt->field) { \ + optdatalen = min(lenexpr, sopt->sopt_valsize); \ + bcopy(&pktopt->field, optdata, optdatalen); \ + } else { \ + free(optdata, M_TEMP); \ + optdata = NULL; \ + malloc_optdata = false; \ + } \ + } \ +} while(0) + +#define GET_PKTOPT_EXT_HDR(field) GET_PKTOPT_VAR(field, \ + (((struct ip6_ext *)pktopt->field)->ip6e_len + 1) << 3) + +#define GET_PKTOPT_SOCKADDR(field) GET_PKTOPT_VAR(field, \ + pktopt->field->sa_len) + static int -ip6_getpcbopt(struct ip6_pktopts *pktopt, int optname, struct sockopt *sopt) +ip6_getpcbopt(struct inpcb *in6p, int optname, struct sockopt *sopt) { void *optdata = NULL; + bool malloc_optdata = false; int optdatalen = 0; - struct ip6_ext *ip6e; int error = 0; struct in6_pktinfo null_pktinfo; int deftclass = 0, on; int defminmtu = IP6PO_MINMTU_MCASTONLY; int defpreftemp = IP6PO_TEMPADDR_SYSTEM; + struct ip6_pktopts *pktopt; + INP_RLOCK(in6p); + pktopt = in6p->in6p_outputopts; + switch (optname) { case IPV6_PKTINFO: optdata = (void *)&null_pktinfo; @@ -2337,50 +2369,29 @@ ip6_getpcbopt(struct ip6_pktopts *pktopt, int optname, break;
svn commit: r331379 - in head/sys: netinet netinet6
Author: sbruno Date: Thu Mar 22 22:29:32 2018 New Revision: 331379 URL: https://svnweb.freebsd.org/changeset/base/331379 Log: Simple locking fixes in ip_ctloutput, ip6_ctloutput, rip_ctloutput. Submitted by: Jason Eggleston Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D14624 Modified: head/sys/netinet/ip_output.c head/sys/netinet/raw_ip.c head/sys/netinet6/ip6_output.c Modified: head/sys/netinet/ip_output.c == --- head/sys/netinet/ip_output.cThu Mar 22 22:13:46 2018 (r331378) +++ head/sys/netinet/ip_output.cThu Mar 22 22:29:32 2018 (r331379) @@ -1314,12 +1314,14 @@ ip_ctloutput(struct socket *so, struct sockopt *sopt) break; case IP_PORTRANGE: + INP_RLOCK(inp); if (inp->inp_flags & INP_HIGHPORT) optval = IP_PORTRANGE_HIGH; else if (inp->inp_flags & INP_LOWPORT) optval = IP_PORTRANGE_LOW; else optval = 0; + INP_RUNLOCK(inp); break; case IP_ONESBCAST: @@ -1345,9 +1347,11 @@ ip_ctloutput(struct socket *so, struct sockopt *sopt) break; #ifdef RSS case IP_RSSBUCKETID: + INP_RLOCK(inp); retval = rss_hash2bucket(inp->inp_flowid, inp->inp_flowtype, &rss_bucket); + INP_RUNLOCK(inp); if (retval == 0) optval = rss_bucket; else Modified: head/sys/netinet/raw_ip.c == --- head/sys/netinet/raw_ip.c Thu Mar 22 22:13:46 2018(r331378) +++ head/sys/netinet/raw_ip.c Thu Mar 22 22:29:32 2018(r331379) @@ -639,10 +639,12 @@ rip_ctloutput(struct socket *so, struct sockopt *sopt) sizeof optval); if (error) break; + INP_WLOCK(inp); if (optval) inp->inp_flags |= INP_HDRINCL; else inp->inp_flags &= ~INP_HDRINCL; + INP_WUNLOCK(inp); break; case IP_FW3:/* generic ipfw v.3 functions */ Modified: head/sys/netinet6/ip6_output.c == --- head/sys/netinet6/ip6_output.c Thu Mar 22 22:13:46 2018 (r331378) +++ head/sys/netinet6/ip6_output.c Thu Mar 22 22:29:32 2018 (r331379) @@ -1498,8 +1498,10 @@ ip6_ctloutput(struct socket *so, struct sockopt *sopt) error = soopt_mcopyin(sopt, m); /* XXX */ if (error != 0) break; + INP_WLOCK(in6p); error = ip6_pcbopts(&in6p->in6p_outputopts, m, so, sopt); + INP_WUNLOCK(in6p); m_freem(m); /* XXX */ break; } @@ -1635,11 +1637,13 @@ do { \ error = EINVAL; break; } + INP_WLOCK(in6p); optp = &in6p->in6p_outputopts; error = ip6_pcbopt(IPV6_HOPLIMIT, (u_char *)&optval, sizeof(optval), optp, (td != NULL) ? td->td_ucred : NULL, uproto); + INP_WUNLOCK(in6p); break; } @@ -1690,8 +1694,10 @@ do { \ * available only prior to bind(2). * see ipng mailing list, Jun 22 2001. */ + INP_WLOCK(in6p); if (in6p->inp_
svn commit: r331376 - head/sys/netinet6
Author: sbruno Date: Thu Mar 22 21:18:34 2018 New Revision: 331376 URL: https://svnweb.freebsd.org/changeset/base/331376 Log: Handle locking and memory safety for IPV6_PATHMTU in ip6_ctloutput(). Submitted by: Jason Eggleston Reviewed by: ae Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D14622 Modified: head/sys/netinet6/ip6_output.c Modified: head/sys/netinet6/ip6_output.c == --- head/sys/netinet6/ip6_output.c Thu Mar 22 20:47:25 2018 (r331375) +++ head/sys/netinet6/ip6_output.c Thu Mar 22 21:18:34 2018 (r331376) @@ -2053,6 +2053,7 @@ do { \ { u_long pmtu = 0; struct ip6_mtuinfo mtuinfo; + struct in6_addr addr; if (!(so->so_state & SS_ISCONNECTED)) return (ENOTCONN); @@ -2060,9 +2061,14 @@ do { \ * XXX: we dot not consider the case of source * routing, or optional information to specify * the outgoing interface. +* Copy faddr out of in6p to avoid holding lock +* on inp during route lookup. */ + INP_RLOCK(in6p); + bcopy(&in6p->in6p_faddr, &addr, sizeof(addr)); + INP_RUNLOCK(in6p); error = ip6_getpmtu_ctl(so->so_fibnum, - &in6p->in6p_faddr, &pmtu); + &addr, &pmtu); if (error) break; if (pmtu > IPV6_MAXPACKET) ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r331373 - head/sys/netinet6
Author: sbruno Date: Thu Mar 22 20:21:05 2018 New Revision: 331373 URL: https://svnweb.freebsd.org/changeset/base/331373 Log: Improve write locking in ip6_ctloutput() with macros. Submitted by: Jason Eggleston Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D14620 Modified: head/sys/netinet6/ip6_output.c Modified: head/sys/netinet6/ip6_output.c == --- head/sys/netinet6/ip6_output.c Thu Mar 22 19:49:37 2018 (r331372) +++ head/sys/netinet6/ip6_output.c Thu Mar 22 20:21:05 2018 (r331373) @@ -1596,23 +1596,34 @@ do { \ } while (/*CONSTCOND*/ 0) #define OPTBIT(bit) (in6p->inp_flags & (bit) ? 1 : 0) -#define OPTSET2(bit, val) do { \ - INP_WLOCK(in6p);\ +#define OPTSET2_N(bit, val) do { \ if (val)\ in6p->inp_flags2 |= bit;\ else\ in6p->inp_flags2 &= ~bit; \ +} while (0) +#define OPTSET2(bit, val) do { \ + INP_WLOCK(in6p);\ + OPTSET2_N(bit, val);\ INP_WUNLOCK(in6p); \ } while (0) #define OPTBIT2(bit) (in6p->inp_flags2 & (bit) ? 1 : 0) +#define OPTSET2292_EXCLUSIVE(bit) \ +do { \ + INP_WLOCK(in6p);\ + if (OPTBIT(IN6P_RFC2292)) { \ + error = EINVAL; \ + } else {\ + if (optval) \ + in6p->inp_flags |= (bit); \ + else\ + in6p->inp_flags &= ~(bit); \ + } \ + INP_WUNLOCK(in6p); \ +} while (/*CONSTCOND*/ 0) case IPV6_RECVPKTINFO: - /* cannot mix with RFC2292 */ - if (OPTBIT(IN6P_RFC2292)) { - error = EINVAL; - break; - } - OPTSET(IN6P_PKTINFO); + OPTSET2292_EXCLUSIVE(IN6P_PKTINFO); break; case IPV6_HOPLIMIT: @@ -1633,48 +1644,23 @@ do { \ } case IPV6_RECVHOPLIMIT: - /* cannot mix with RFC2292 */ - if (OPTBIT(IN6P_RFC2292)) { - error = EINVAL; - break; - } - OPTSET(IN6P_HOPLIMIT); + OPTSET2292_EXCLUSIVE(IN6P_HOPLIMIT); break; case IPV6_RECVHOPOPTS: - /* cannot mix with RFC2292 */ - if (OPTBIT(IN6P_RFC2292)) { - error = EINVAL; - break; - } - OPTSET(IN6P_HOPOPTS); + OPTSET2292_EXCLUSIVE(IN6P_HOPOPTS); break; case IPV6_RECVDSTOPTS: - /* cannot mix with RFC2292 */ - if (OPTBIT(IN6P_RFC2292)) { - error = EINVAL; - break; - } - OPTSET(IN6P_DSTOPTS); + OPTSET2292_EXCLUSIVE(IN6P_DSTOPTS); break; case IPV6_RECVRTHDRDSTOPTS: - /* cannot mix with RFC2292 */ -
svn commit: r330675 - head/sys/netinet
Author: sbruno Date: Fri Mar 9 00:08:43 2018 New Revision: 330675 URL: https://svnweb.freebsd.org/changeset/base/330675 Log: Update tcp_lro with tested bugfixes from Netflix and LLNW: rrs - Lets make the LRO code look for true dup-acks and window update acks fly on through and combine. rrs - Make the LRO engine a bit more aware of ack-only seq space. Lets not have it incorrectly wipe out newer acks for older acks when we have out-of-order acks (common in wifi environments). jeggleston - LRO eating window updates Based on all of the above I think we are RFC compliant doing it this way: https://tools.ietf.org/html/rfc1122 section 4.2.2.16 "Note that TCP has a heuristic to select the latest window update despite possible datagram reordering; as a result, it may ignore a window update with a smaller window than previously offered if neither the sequence number nor the acknowledgment number is increased." Submitted by: Kevin Bowling Reviewed by: rstone gallatin Sponsored by: NetFlix and Limelight Networks Differential Revision:https://reviews.freebsd.org/D14540 Modified: head/sys/netinet/tcp_lro.c head/sys/netinet/tcp_seq.h Modified: head/sys/netinet/tcp_lro.c == --- head/sys/netinet/tcp_lro.c Thu Mar 8 22:54:50 2018(r330674) +++ head/sys/netinet/tcp_lro.c Fri Mar 9 00:08:43 2018(r330675) @@ -57,6 +57,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -794,7 +795,9 @@ tcp_lro_rx2(struct lro_ctrl *lc, struct mbuf *m, uint3 /* Try to append the new segment. */ if (__predict_false(seq != le->next_seq || - (tcp_data_len == 0 && le->ack_seq == th->th_ack))) { + (tcp_data_len == 0 && + le->ack_seq == th->th_ack && + le->window == th->th_win))) { /* Out of order packet or duplicate ACK. */ tcp_lro_active_remove(le); tcp_lro_flush(lc, le); @@ -811,12 +814,20 @@ tcp_lro_rx2(struct lro_ctrl *lc, struct mbuf *m, uint3 le->tsval = tsval; le->tsecr = *(ts_ptr + 2); } - - le->next_seq += tcp_data_len; - le->ack_seq = th->th_ack; - le->window = th->th_win; - le->append_cnt++; - + if (tcp_data_len || SEQ_GT(ntohl(th->th_ack), ntohl(le->ack_seq))) { + le->next_seq += tcp_data_len; + le->ack_seq = th->th_ack; + le->window = th->th_win; + le->append_cnt++; + } else if (th->th_ack == le->ack_seq) { + le->window = WIN_MAX(le->window, th->th_win); + le->append_cnt++; + } else { + /* no data and old ack */ + le->append_cnt++; + m_freem(m); + return (0); + } #ifdef TCP_LRO_UPDATE_CSUM le->ulp_csum += tcp_lro_rx_csum_fixup(le, l3hdr, th, tcp_data_len, ~csum); Modified: head/sys/netinet/tcp_seq.h == --- head/sys/netinet/tcp_seq.h Thu Mar 8 22:54:50 2018(r330674) +++ head/sys/netinet/tcp_seq.h Fri Mar 9 00:08:43 2018(r330675) @@ -47,6 +47,14 @@ #defineSEQ_MIN(a, b) ((SEQ_LT(a, b)) ? (a) : (b)) #defineSEQ_MAX(a, b) ((SEQ_GT(a, b)) ? (a) : (b)) +#defineWIN_LT(a,b) ((short)(ntohs(a)-ntohs(b)) < 0) +#defineWIN_LEQ(a,b)((short)(ntohs(a)-ntohs(b)) <= 0) +#defineWIN_GT(a,b) ((short)(ntohs(a)-ntohs(b)) > 0) +#defineWIN_GEQ(a,b)((short)(ntohs(a)-ntohs(b)) >= 0) + +#defineWIN_MIN(a, b) ((WIN_LT(a, b)) ? (a) : (b)) +#defineWIN_MAX(a, b) ((WIN_GT(a, b)) ? (a) : (b)) + /* for modulo comparisons of timestamps */ #define TSTMP_LT(a,b) ((int)((a)-(b)) < 0) #define TSTMP_GT(a,b) ((int)((a)-(b)) > 0) ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r328603 - head/stand/common
Author: sbruno Date: Tue Jan 30 20:00:12 2018 New Revision: 328603 URL: https://svnweb.freebsd.org/changeset/base/328603 Log: Add missing non-POWERPC case to give the scr value something non-zero. This fixes the instant reboot of netbooting after r328536 on x86 systems. Reviewed by: peter Sponsored by: Limelight Networks Modified: head/stand/common/load_elf.c Modified: head/stand/common/load_elf.c == --- head/stand/common/load_elf.cTue Jan 30 19:34:58 2018 (r328602) +++ head/stand/common/load_elf.cTue Jan 30 20:00:12 2018 (r328603) @@ -716,6 +716,8 @@ __elfN(loadimage)(struct preloaded_file *fp, elf_file_ #else scr = htobe32(size); #endif +#else + scr = size; #endif archsw.arch_copyin(&scr, lastaddr, sizeof(scr)); lastaddr += sizeof(scr); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r327606 - head/stand/i386/libi386
Author: sbruno Date: Fri Jan 5 23:50:50 2018 New Revision: 327606 URL: https://svnweb.freebsd.org/changeset/base/327606 Log: Handle misconfigured/nonexistent pcidev for comconsole instead of BTX panic. PR: 203319 Reviewed by: imp jhb MFC after:2 weeks Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D13776 Modified: head/stand/i386/libi386/comconsole.c Modified: head/stand/i386/libi386/comconsole.c == --- head/stand/i386/libi386/comconsole.cFri Jan 5 23:21:47 2018 (r327605) +++ head/stand/i386/libi386/comconsole.cFri Jan 5 23:50:50 2018 (r327606) @@ -267,6 +267,16 @@ comc_pcidev_handle(uint32_t locator) printf("Cannot read bar at 0x%x\n", locator); return (CMD_ERROR); } + + /* +* biospci_read_config() sets port == 0x if the pcidev +* isn't found on the bus. Check for 0x and return to not +* panic in BTX. +*/ + if (port == 0x) { + printf("Cannot find specified pcidev\n"); + return (CMD_ERROR); + } if (!PCI_BAR_IO(port)) { printf("Memory bar at 0x%x\n", locator); return (CMD_ERROR); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r327312 - head/sys/dev/e1000
Author: sbruno Date: Thu Dec 28 21:26:40 2017 New Revision: 327312 URL: https://svnweb.freebsd.org/changeset/base/327312 Log: e1000: Add support for Ice Lake and Cannon Lake Ths add initial support for Ice Lake and Cannon Lake ethernet devices. This also addressed errata 1.5.4.4 for Sky Lake and Kabby Lake devices: https://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/i218-i219-ethernet-connection-spec-update.pdf?asset=9561 Submitted by: Kevin Bowling Relnotes: Yes Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D13660 Modified: head/sys/dev/e1000/e1000_api.c head/sys/dev/e1000/e1000_hw.h head/sys/dev/e1000/e1000_ich8lan.c head/sys/dev/e1000/e1000_ich8lan.h head/sys/dev/e1000/if_em.c Modified: head/sys/dev/e1000/e1000_api.c == --- head/sys/dev/e1000/e1000_api.c Thu Dec 28 21:23:39 2017 (r327311) +++ head/sys/dev/e1000/e1000_api.c Thu Dec 28 21:26:40 2017 (r327312) @@ -311,6 +311,16 @@ s32 e1000_set_mac_type(struct e1000_hw *hw) case E1000_DEV_ID_PCH_SPT_I219_V5: mac->type = e1000_pch_spt; break; + case E1000_DEV_ID_PCH_CNP_I219_LM6: + case E1000_DEV_ID_PCH_CNP_I219_V6: + case E1000_DEV_ID_PCH_CNP_I219_LM7: + case E1000_DEV_ID_PCH_CNP_I219_V7: + case E1000_DEV_ID_PCH_ICP_I219_LM8: + case E1000_DEV_ID_PCH_ICP_I219_V8: + case E1000_DEV_ID_PCH_ICP_I219_LM9: + case E1000_DEV_ID_PCH_ICP_I219_V9: + mac->type = e1000_pch_cnp; + break; case E1000_DEV_ID_82575EB_COPPER: case E1000_DEV_ID_82575EB_FIBER_SERDES: case E1000_DEV_ID_82575GB_QUAD_COPPER: @@ -462,6 +472,7 @@ s32 e1000_setup_init_funcs(struct e1000_hw *hw, bool i case e1000_pch2lan: case e1000_pch_lpt: case e1000_pch_spt: + case e1000_pch_cnp: e1000_init_function_pointers_ich8lan(hw); break; case e1000_82575: Modified: head/sys/dev/e1000/e1000_hw.h == --- head/sys/dev/e1000/e1000_hw.h Thu Dec 28 21:23:39 2017 (r327311) +++ head/sys/dev/e1000/e1000_hw.h Thu Dec 28 21:26:40 2017 (r327312) @@ -147,6 +147,14 @@ struct e1000_hw; #define E1000_DEV_ID_PCH_SPT_I219_V4 0x15D8 #define E1000_DEV_ID_PCH_SPT_I219_LM5 0x15E3 #define E1000_DEV_ID_PCH_SPT_I219_V5 0x15D6 +#define E1000_DEV_ID_PCH_CNP_I219_LM6 0x15BD +#define E1000_DEV_ID_PCH_CNP_I219_V6 0x15BE +#define E1000_DEV_ID_PCH_CNP_I219_LM7 0x15BB +#define E1000_DEV_ID_PCH_CNP_I219_V7 0x15BC +#define E1000_DEV_ID_PCH_ICP_I219_LM8 0x15DF +#define E1000_DEV_ID_PCH_ICP_I219_V8 0x15E0 +#define E1000_DEV_ID_PCH_ICP_I219_LM9 0x15E1 +#define E1000_DEV_ID_PCH_ICP_I219_V9 0x15E2 #define E1000_DEV_ID_82576 0x10C9 #define E1000_DEV_ID_82576_FIBER 0x10E6 #define E1000_DEV_ID_82576_SERDES 0x10E7 @@ -233,6 +241,7 @@ enum e1000_mac_type { e1000_pch2lan, e1000_pch_lpt, e1000_pch_spt, + e1000_pch_cnp, e1000_82575, e1000_82576, e1000_82580, Modified: head/sys/dev/e1000/e1000_ich8lan.c == --- head/sys/dev/e1000/e1000_ich8lan.c Thu Dec 28 21:23:39 2017 (r327311) +++ head/sys/dev/e1000/e1000_ich8lan.c Thu Dec 28 21:26:40 2017 (r327312) @@ -345,6 +345,7 @@ static s32 e1000_init_phy_workarounds_pchlan(struct e1 switch (hw->mac.type) { case e1000_pch_lpt: case e1000_pch_spt: + case e1000_pch_cnp: if (e1000_phy_is_accessible_pchlan(hw)) break; @@ -493,6 +494,7 @@ static s32 e1000_init_phy_params_pchlan(struct e1000_h case e1000_pch2lan: case e1000_pch_lpt: case e1000_pch_spt: + case e1000_pch_cnp: /* In case the PHY needs to be in mdio slow mode, * set slow mode and try to get the PHY id again. */ @@ -794,6 +796,7 @@ static s32 e1000_init_mac_params_ich8lan(struct e1000_ /* fall-through */ case e1000_pch_lpt: case e1000_pch_spt: + case e1000_pch_cnp: /* multicast address update for pch2 */ mac->ops.update_mc_addr_list = e1000_update_mc_addr_list_pch2lan; @@ -1831,6 +1834,7 @@ void e1000_init_function_pointers_ich8lan(struct e1000 case e1000_pch2lan: case e1000_pch_lpt: case e1000_pch_spt: + case e1000_pch_cnp: hw->phy.ops.init_params = e1000_init_phy_params_pchlan;
svn commit: r326281 - head/share/man/man4
Author: sbruno Date: Mon Nov 27 16:28:28 2017 New Revision: 326281 URL: https://svnweb.freebsd.org/changeset/base/326281 Log: Add vmm(4) man page PR: 205705 184046 Submitted by: Matt Macy Reviewed by: grehan Differential Revision:https://reviews.freebsd.org/D13062 Added: head/share/man/man4/vmm.4 (contents, props changed) Added: head/share/man/man4/vmm.4 == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/share/man/man4/vmm.4 Mon Nov 27 16:28:28 2017(r326281) @@ -0,0 +1,105 @@ +.\" Copyright (c) 2013 Peter Grehan +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\"notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\"notice, this list of conditions and the following disclaimer in the +.\"documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd December 19, 2013 +.Dt VMM 4 +.Os +.Sh NAME +.Nm vmm.ko +.Nd "bhyve virtual machine monitor" +.Sh SYNOPSIS +.Pp +To load the driver as a module at boot, add this line to +.Xr loader.conf 5 : +.Bd -literal -offset indent +.Cd vmm_load="YES" +.Ed +.Pp +The module can also be loaded manually with +.Xr kldload 8 : +.Bd -literal -offset indent +kldload vmm +.Ed +.Sh DESCRIPTION +.Nm +provides the kernel portion of the +.Xr bhyve 4 +hypervisor. +.Pp +An Intel CPU with VT-x/EPT or AMD CPU with SVM support is required. +.Pp +PCI device passthrough to a virtual machine requires +hardware with VT-d support. +.Sh PCI PASSTHROUGH +When the hardware supports VT-d, and +.Nm +has been loaded at boot time, +PCI devices can be reserved for use by the hypervisor. +Entries consisting of the PCI +.Ar bus Ns / Ns Ar slot Ns / Ns Ar function +are added to the +.Va pptdevs +.Xr loader.conf 5 +variable. +Additional entries are separated by spaces. +Host PCI devices that match an entry will be assigned to the hypervisor +and will not be probed by +.Fx +device drivers. +See the +.Sx EXAMPLES +section below for sample usage. +.Pp +A large number of PCI device entries may require a string longer than the +128-character limit of +.Xr loader.conf 5 +variables. +The +.Va pptdevs2 +and +.Va pptdevs3 +variables can be used for additional entries. +.Sh EXAMPLES +Reserve three PCI devices for use by the hypervisor: bus 10 slot 0 function 0, +bus 6 slot 5 function 0, and bus 6 slot 5 function 1. +.Bd -literal -offset indent +pptdevs="10/0/0 6/5/0 6/5/1" +.Ed +.Sh SEE ALSO +.Xr bhyve 4 , +.Xr loader.conf 5 , +.Xr bhyve 8 , +.Xr bhyveload 8 , +.Xr kldload 8 +.Sh HISTORY +.Nm vmm.ko +first appeared in +.Fx 10.0 . +.Sh AUTHORS +.An Neel Natu Aq n...@freebsd.org +.An Peter Grehan Aq gre...@freebsd.org + + ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r325620 - head/sys/dev/bnxt
Author: sbruno Date: Thu Nov 9 22:26:49 2017 New Revision: 325620 URL: https://svnweb.freebsd.org/changeset/base/325620 Log: Fix issue with VXLAN-ecapsulated rx h/w checksumming. Submitted by: grehan Reviewed by: bhargava.marre...@broadcom.com Differential Revision:https://reviews.freebsd.org/D12976 Modified: head/sys/dev/bnxt/bnxt_txrx.c Modified: head/sys/dev/bnxt/bnxt_txrx.c == --- head/sys/dev/bnxt/bnxt_txrx.c Thu Nov 9 22:08:07 2017 (r325619) +++ head/sys/dev/bnxt/bnxt_txrx.c Thu Nov 9 22:26:49 2017 (r325620) @@ -501,9 +501,11 @@ bnxt_pkt_get_l2(struct bnxt_softc *softc, if_rxd_info_ if (!(errors & RX_PKT_CMPL_ERRORS_IP_CS_ERROR)) ri->iri_csum_flags |= CSUM_IP_VALID; } - if (flags2 & RX_PKT_CMPL_FLAGS2_L4_CS_CALC) { + if (flags2 & (RX_PKT_CMPL_FLAGS2_L4_CS_CALC | + RX_PKT_CMPL_FLAGS2_T_L4_CS_CALC)) { ri->iri_csum_flags |= CSUM_L4_CALC; - if (!(errors & RX_PKT_CMPL_ERRORS_L4_CS_ERROR)) { + if (!(errors & (RX_PKT_CMPL_ERRORS_L4_CS_ERROR | + RX_PKT_CMPL_ERRORS_T_L4_CS_ERROR))) { ri->iri_csum_flags |= CSUM_L4_VALID; ri->iri_csum_data = 0x; } ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r325494 - head/sys/net
Author: sbruno Date: Mon Nov 6 19:54:25 2017 New Revision: 325494 URL: https://svnweb.freebsd.org/changeset/base/325494 Log: Fix NOINET/NOINET6 build during compilation of iflib. Reported by: kib Modified: head/sys/net/iflib.c Modified: head/sys/net/iflib.c == --- head/sys/net/iflib.cMon Nov 6 19:33:50 2017(r325493) +++ head/sys/net/iflib.cMon Nov 6 19:54:25 2017(r325494) @@ -2481,6 +2481,7 @@ iflib_check_lro_possible(struct lro_ctrl *lc, struct m eh = mtod(m, struct ether_header *); eh_type = ntohs(eh->ether_type); switch (eh_type) { +#if defined(INET6) case ETHERTYPE_IPV6: { CURVNET_SET(lc->ifp->if_vnet); @@ -2491,6 +2492,8 @@ iflib_check_lro_possible(struct lro_ctrl *lc, struct m CURVNET_RESTORE(); break; } +#endif +#if defined (INET) case ETHERTYPE_IP: { CURVNET_SET(lc->ifp->if_vnet); @@ -2501,6 +2504,7 @@ iflib_check_lro_possible(struct lro_ctrl *lc, struct m CURVNET_RESTORE(); break; } +#endif } return false; ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r325492 - head/sys/dev/ixgbe
Author: sbruno Date: Mon Nov 6 18:08:59 2017 New Revision: 325492 URL: https://svnweb.freebsd.org/changeset/base/325492 Log: Fix ixgbe(4) support for ifconfig's vlanhwtag flag. Disabling this flag will now prevent the driver from stripping vlan tags from packets. PR: 219390 Submitted by: Piotr Pietruszewski Reported by: Charles Goncalves Obtained from:1 week Sponsored by: Intel Corporation Differential Revision:https://reviews.freebsd.org/D12795 Modified: head/sys/dev/ixgbe/if_ix.c Modified: head/sys/dev/ixgbe/if_ix.c == --- head/sys/dev/ixgbe/if_ix.c Mon Nov 6 18:07:23 2017(r325491) +++ head/sys/dev/ixgbe/if_ix.c Mon Nov 6 18:08:59 2017(r325492) @@ -1754,15 +1754,17 @@ ixgbe_setup_vlan_hw_support(struct adapter *adapter) return; /* Setup the queues for vlans */ - for (i = 0; i < adapter->num_queues; i++) { - rxr = &adapter->rx_rings[i]; - /* On 82599 the VLAN enable is per/queue in RXDCTL */ - if (hw->mac.type != ixgbe_mac_82598EB) { - ctrl = IXGBE_READ_REG(hw, IXGBE_RXDCTL(rxr->me)); - ctrl |= IXGBE_RXDCTL_VME; - IXGBE_WRITE_REG(hw, IXGBE_RXDCTL(rxr->me), ctrl); + if (ifp->if_capenable & IFCAP_VLAN_HWTAGGING) { + for (i = 0; i < adapter->num_queues; i++) { + rxr = &adapter->rx_rings[i]; + /* On 82599 the VLAN enable is per/queue in RXDCTL */ + if (hw->mac.type != ixgbe_mac_82598EB) { + ctrl = IXGBE_READ_REG(hw, IXGBE_RXDCTL(rxr->me)); + ctrl |= IXGBE_RXDCTL_VME; + IXGBE_WRITE_REG(hw, IXGBE_RXDCTL(rxr->me), ctrl); + } + rxr->vtag_strip = TRUE; } - rxr->vtag_strip = TRUE; } if ((ifp->if_capenable & IFCAP_VLAN_HWFILTER) == 0) ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r324994 - in head/sys: dev/liquidio dev/liquidio/base modules
Author: sbruno Date: Wed Oct 25 17:49:17 2017 New Revision: 324994 URL: https://svnweb.freebsd.org/changeset/base/324994 Log: Enable i386 build of the Cavium LiquidIO driver (lio) module. Submitted by: pkannega...@cavium.com (Prasad V Kanneganti) MFC after:1 week Sponsored by: Cavium Networks Differential Revision:https://reviews.freebsd.org/D12415 Modified: head/sys/dev/liquidio/base/cn23xx_pf_device.c head/sys/dev/liquidio/base/lio_device.c head/sys/dev/liquidio/base/lio_device.h head/sys/dev/liquidio/base/lio_droq.c head/sys/dev/liquidio/base/lio_mem_ops.c head/sys/dev/liquidio/base/lio_request_manager.c head/sys/dev/liquidio/lio_main.c head/sys/dev/liquidio/lio_main.h head/sys/dev/liquidio/lio_rxtx.c head/sys/dev/liquidio/lio_sysctl.c head/sys/modules/Makefile Modified: head/sys/dev/liquidio/base/cn23xx_pf_device.c == --- head/sys/dev/liquidio/base/cn23xx_pf_device.c Wed Oct 25 17:23:33 2017(r324993) +++ head/sys/dev/liquidio/base/cn23xx_pf_device.c Wed Oct 25 17:49:17 2017(r324994) @@ -162,11 +162,11 @@ lio_cn23xx_pf_setup_global_mac_regs(struct octeon_devi lio_write_csr64(oct, LIO_CN23XX_SLI_PKT_MAC_RINFO64(mac_no, pf_num), reg_val); - lio_dev_dbg(oct, "SLI_PKT_MAC(%d)_PF(%d)_RINFO : 0x%016lx\n", mac_no, + lio_dev_dbg(oct, "SLI_PKT_MAC(%d)_PF(%d)_RINFO : 0x%016llx\n", mac_no, pf_num, - lio_read_csr64(oct, + LIO_CAST64(lio_read_csr64(oct, LIO_CN23XX_SLI_PKT_MAC_RINFO64(mac_no, - pf_num))); + pf_num; } static int Modified: head/sys/dev/liquidio/base/lio_device.c == --- head/sys/dev/liquidio/base/lio_device.c Wed Oct 25 17:23:33 2017 (r324993) +++ head/sys/dev/liquidio/base/lio_device.c Wed Oct 25 17:49:17 2017 (r324994) @@ -817,8 +817,8 @@ lio_core_drv_init(struct lio_recv_info *recv_info, voi cs = &core_setup[oct->octeon_id]; if (recv_pkt->buffer_size[0] != (sizeof(*cs) + LIO_DROQ_INFO_SIZE)) { - lio_dev_dbg(oct, "Core setup bytes expected %lu found %d\n", - (uint32_t)sizeof(*cs) + LIO_DROQ_INFO_SIZE, + lio_dev_dbg(oct, "Core setup bytes expected %llu found %d\n", + LIO_CAST64(sizeof(*cs) + LIO_DROQ_INFO_SIZE), recv_pkt->buffer_size[0]); } Modified: head/sys/dev/liquidio/base/lio_device.h == --- head/sys/dev/liquidio/base/lio_device.h Wed Oct 25 17:23:33 2017 (r324993) +++ head/sys/dev/liquidio/base/lio_device.h Wed Oct 25 17:49:17 2017 (r324994) @@ -873,16 +873,26 @@ static inline uint64_t lio_read_csr64(struct octeon_device *oct, uint32_t reg) { +#ifdef __i386__ + return (lio_read_csr32(oct, reg) | + ((uint64_t)lio_read_csr32(oct, reg + 4) << 32)); +#else return (bus_space_read_8(oct->mem_bus_space[0].tag, oct->mem_bus_space[0].handle, reg)); +#endif } static inline void lio_write_csr64(struct octeon_device *oct, uint32_t reg, uint64_t val) { +#ifdef __i386__ + lio_write_csr32(oct, reg, (uint32_t)val); + lio_write_csr32(oct, reg + 4, val >> 32); +#else bus_space_write_8(oct->mem_bus_space[0].tag, oct->mem_bus_space[0].handle, reg, val); +#endif } #endif /* _LIO_DEVICE_H_ */ Modified: head/sys/dev/liquidio/base/lio_droq.c == --- head/sys/dev/liquidio/base/lio_droq.c Wed Oct 25 17:23:33 2017 (r324993) +++ head/sys/dev/liquidio/base/lio_droq.c Wed Oct 25 17:49:17 2017 (r324994) @@ -294,8 +294,8 @@ lio_init_droq(struct octeon_device *oct, uint32_t q_no return (1); } - lio_dev_dbg(oct, "droq[%d]: desc_ring: virt: 0x%p, dma: %lx\n", q_no, - droq->desc_ring, droq->desc_ring_dma); + lio_dev_dbg(oct, "droq[%d]: desc_ring: virt: 0x%p, dma: %llx\n", q_no, + droq->desc_ring, LIO_CAST64(droq->desc_ring_dma)); lio_dev_dbg(oct, "droq[%d]: num_desc: %d\n", q_no, droq->max_count); size = droq->max_count * LIO_DROQ_RECVBUF_SIZE; Modified: head/sys/dev/liquidio/base/lio_mem_ops.c == --- head/sys/dev/liquidio/base/lio_mem_ops.cWed Oct 25 17:23:33 2017 (r324993) +++ head/sys/dev/liquidio/base/lio_mem_ops.cWed Oct 25 17:49:17 2017 (r324994) @@ -65,
svn commit: r324508 - head/sys/kern
Author: sbruno Date: Tue Oct 10 22:21:05 2017 New Revision: 324508 URL: https://svnweb.freebsd.org/changeset/base/324508 Log: match sendfile() error handling to send(). Sendfile() should match the error checking order of send() which is currently: SBS_CANTSENDMORE so_error SS_ISCONNECTED Submitted by: Jason Eggleston Reviewed by: glebius MFC after:2 weeks Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D12633 Modified: head/sys/kern/kern_sendfile.c Modified: head/sys/kern/kern_sendfile.c == --- head/sys/kern/kern_sendfile.c Tue Oct 10 21:16:07 2017 (r324507) +++ head/sys/kern/kern_sendfile.c Tue Oct 10 22:21:05 2017 (r324508) @@ -507,8 +507,6 @@ sendfile_getsock(struct thread *td, int s, struct file *so = (*sock_fp)->f_data; if ((*so)->so_type != SOCK_STREAM) return (EINVAL); - if (((*so)->so_state & SS_ISCONNECTED) == 0) - return (ENOTCONN); return (0); } @@ -617,6 +615,12 @@ retry_space: SOCKBUF_UNLOCK(&so->so_snd); goto done; } + if ((so->so_state & SS_ISCONNECTED) == 0) { + SOCKBUF_UNLOCK(&so->so_snd); + error = ENOTCONN; + goto done; + } + space = sbspace(&so->so_snd); if (space < rem && (space <= 0 || ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r324500 - head/sys/modules/em
Author: sbruno Date: Tue Oct 10 19:14:40 2017 New Revision: 324500 URL: https://svnweb.freebsd.org/changeset/base/324500 Log: Hard link if_igb.ko to if_em.ko. Use a LINK directive to ensure that this is more friendly to the tree. Tested this with loader.conf:if_igb_load="YES" and it does the right thing. Submitted by: Ian Lepore Modified: head/sys/modules/em/Makefile Modified: head/sys/modules/em/Makefile == --- head/sys/modules/em/MakefileTue Oct 10 16:17:03 2017 (r324499) +++ head/sys/modules/em/MakefileTue Oct 10 19:14:40 2017 (r324500) @@ -22,7 +22,6 @@ CFLAGS += -I${SRCTOP}/sys/dev/e1000 # DEVICE_POLLING for a non-interrupt-driven method #CFLAGS += -DDEVICE_POLLING -afterinstall: - cd ${DESTDIR}${KMODDIR} && ln -sf if_em.ko if_igb.ko +LINKS= ${KMODDIR}/${KMOD}.ko ${KMODDIR}/if_igb.ko .include ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r324459 - head/sys/kern
Author: sbruno Date: Tue Oct 10 00:32:21 2017 New Revision: 324459 URL: https://svnweb.freebsd.org/changeset/base/324459 Log: Revert r324405 at the request of the submitter pending better solution. Submitted by: Jason Eggleston Sponsored by: Limelight Networks Modified: head/sys/kern/kern_sendfile.c Modified: head/sys/kern/kern_sendfile.c == --- head/sys/kern/kern_sendfile.c Tue Oct 10 00:26:44 2017 (r324458) +++ head/sys/kern/kern_sendfile.c Tue Oct 10 00:32:21 2017 (r324459) @@ -507,11 +507,6 @@ sendfile_getsock(struct thread *td, int s, struct file *so = (*sock_fp)->f_data; if ((*so)->so_type != SOCK_STREAM) return (EINVAL); - if ((*so)->so_error) { - error = (*so)->so_error; - (*so)->so_error = 0; - return (error); - } if (((*so)->so_state & SS_ISCONNECTED) == 0) return (ENOTCONN); return (0); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r324406 - head/sys/modules/em
On 10/09/17 14:33, Brooks Davis wrote: > On Sun, Oct 08, 2017 at 08:42:35AM -0700, Rodney W. Grimes wrote: >>> >>>> On Oct 7, 2017, at 16:33, Sean Bruno wrote: >>>> >>>> Author: sbruno >>>> Date: Sat Oct 7 23:33:14 2017 >>>> New Revision: 324406 >>>> URL: https://svnweb.freebsd.org/changeset/base/324406 >>>> >>>> Log: >>>> Fix symlink if_igb.ko in -current such that its relative and doesn't >>>> end up with non-standard DESTDIR information in its symlink. This >>>> can happen very trivially if the release scripts are used. >>>> >>>> Sponsored by:Limelight Networks >>>> >>>> Modified: >>>> head/sys/modules/em/Makefile >>>> >>>> Modified: head/sys/modules/em/Makefile >>>> == >>>> --- head/sys/modules/em/MakefileSat Oct 7 23:30:57 2017(r324405) >>>> +++ head/sys/modules/em/MakefileSat Oct 7 23:33:14 2017(r324406) >>>> @@ -23,6 +23,6 @@ CFLAGS += -I${SRCTOP}/sys/dev/e1000 >>>> #CFLAGS += -DDEVICE_POLLING >>>> >>>> afterinstall: >>>> -ln -sf ${DESTDIR}${KMODDIR}/${KMOD}.ko ${DESTDIR}${KMODDIR}/if_igb.ko >>>> +cd ${DESTDIR}${KMODDIR} && ln -sf if_em.ko if_igb.ko >>> >>> While this is definitely better, the same thing could be achieved via: >>> >>> ln -sf if_em.ko ${DESTDIR}/.../if_igb.ko >> >> Should this be using SYMLINK+= as I thought using ln -sf was a breakage >> for meta mode stuff? > > At the very least it should use INSTALL_LIBSYMLINK or INSTALL_RLIBSYMLINK. > Direct use of ln(1) is always a bug in install targets and ideally we > would make it fail. (It breaks NO_ROOT installs by failing to add an > entry to the METALOG file). > > -- Brooks > I'm more than happy to make changes here. The closest example I can see in the tree from a Makefile is some of the things in etc: ${INSTALL_SYMLINK} ../var/unbound ${DESTDIR}/etc/unbound Is that, more or less, something y'all would like to see? sean signature.asc Description: OpenPGP digital signature
svn commit: r324406 - head/sys/modules/em
Author: sbruno Date: Sat Oct 7 23:33:14 2017 New Revision: 324406 URL: https://svnweb.freebsd.org/changeset/base/324406 Log: Fix symlink if_igb.ko in -current such that its relative and doesn't end up with non-standard DESTDIR information in its symlink. This can happen very trivially if the release scripts are used. Sponsored by: Limelight Networks Modified: head/sys/modules/em/Makefile Modified: head/sys/modules/em/Makefile == --- head/sys/modules/em/MakefileSat Oct 7 23:30:57 2017 (r324405) +++ head/sys/modules/em/MakefileSat Oct 7 23:33:14 2017 (r324406) @@ -23,6 +23,6 @@ CFLAGS += -I${SRCTOP}/sys/dev/e1000 #CFLAGS += -DDEVICE_POLLING afterinstall: - ln -sf ${DESTDIR}${KMODDIR}/${KMOD}.ko ${DESTDIR}${KMODDIR}/if_igb.ko + cd ${DESTDIR}${KMODDIR} && ln -sf if_em.ko if_igb.ko .include ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r324405 - head/sys/kern
Author: sbruno Date: Sat Oct 7 23:30:57 2017 New Revision: 324405 URL: https://svnweb.freebsd.org/changeset/base/324405 Log: Check so_error early in sendfile() call. Prior to this patch, if a connection was reset by the remote end, sendfile() would just report ENOTCONN instead of ECONNRESET. Submitted by: Jason Eggleston Reviewed by: glebius Sponsored by: Limelight Networks Differential Revision:https://reviews.freebsd.org/D12575 Modified: head/sys/kern/kern_sendfile.c Modified: head/sys/kern/kern_sendfile.c == --- head/sys/kern/kern_sendfile.c Sat Oct 7 23:10:16 2017 (r324404) +++ head/sys/kern/kern_sendfile.c Sat Oct 7 23:30:57 2017 (r324405) @@ -514,6 +514,11 @@ sendfile_getsock(struct thread *td, int s, struct file *so = (*sock_fp)->f_data; if ((*so)->so_type != SOCK_STREAM) return (EINVAL); + if ((*so)->so_error) { + error = (*so)->so_error; + (*so)->so_error = 0; + return (error); + } if (((*so)->so_state & SS_ISCONNECTED) == 0) return (ENOTCONN); return (0); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r323543 - head/sys/modules
Author: sbruno Date: Wed Sep 13 15:17:35 2017 New Revision: 323543 URL: https://svnweb.freebsd.org/changeset/base/323543 Log: Don't (try to) build lio(4) if the SOURCELESS_UCODE is set. Submitted by: Fabien Keil Modified: head/sys/modules/Makefile Modified: head/sys/modules/Makefile == --- head/sys/modules/Makefile Wed Sep 13 14:30:30 2017(r323542) +++ head/sys/modules/Makefile Wed Sep 13 15:17:35 2017(r323543) @@ -711,7 +711,9 @@ _ixl= ixl _ixlv= ixlv _linux64= linux64 _linux_common= linux_common +.if ${MK_SOURCELESS_UCODE} != "no" _lio= lio +.endif _ntb= ntb _pms= pms _qlxge=qlxge ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r323516 - in head/sys: dev/bnxt dev/e1000 kern net sys
>>> #blamebruno >>> >>> Reviewed by:sbruno >>> Approved by:sbruno (mentor) >>> Sponsored by:Limelight Networks >>> Differential Revision:https://reviews.freebsd.org/D12235 >> >> *gasps at the LoC count and number of changed drivers* >> >> Could someone please better break this up in the future..? > > Agreed. Down the road parsing out individual commits in this jumbo commit > will be difficult to parse. IMO this may as well have simply been, import > from https://github.com/mattmacy/networking/, just like Mr. Torvalds does > at kernel.org. I expect to see a commit like this there but not here. Can > we break this down to its functional commits? > > This ridiculous loc was due to the amount of restructuring needed to get us back to being in sync with our development. The future will not have this big of a commit/change and should be more bite/fun sized. The #blamebruno tag in the commit log was to indicate that this was not something Stephen was doing on his own, but was something that I had induced over the last few months during testing. sean signature.asc Description: OpenPGP digital signature
Re: svn commit: r323518 - head/sys/conf
On 09/13/17 08:35, John Baldwin wrote: > On Wednesday, September 13, 2017 03:56:04 AM Sean Bruno wrote: >> Author: sbruno >> Date: Wed Sep 13 03:56:03 2017 >> New Revision: 323518 >> URL: https://svnweb.freebsd.org/changeset/base/323518 >> >> Log: >> Jenkins i386 LINT build uses NOTES to generate its LINT kernel config. >> >> ixl(4) isn't in here either, so I'll remove lio(4) too. > > ixl missing is a bug, please put it in sys/amd64/conf/NOTES (or better yet, > just fix the build on !amd64) > In the case of lio(4), Cavium is explicitly not compiling for 32 bit architectures. I'm inquiring to find out if they want to build on the other 64bit architectures we have. In the case of ixl(4), Intel has said that this is not supported on 32bit architectures. I'm unsure what the best course of action is. sean signature.asc Description: OpenPGP digital signature
svn commit: r323518 - head/sys/conf
Author: sbruno Date: Wed Sep 13 03:56:03 2017 New Revision: 323518 URL: https://svnweb.freebsd.org/changeset/base/323518 Log: Jenkins i386 LINT build uses NOTES to generate its LINT kernel config. ixl(4) isn't in here either, so I'll remove lio(4) too. Modified: head/sys/conf/NOTES Modified: head/sys/conf/NOTES == --- head/sys/conf/NOTES Wed Sep 13 02:44:50 2017(r323517) +++ head/sys/conf/NOTES Wed Sep 13 03:56:03 2017(r323518) @@ -2144,7 +2144,6 @@ deviceixgb# Intel Pro/10Gbe PCI-X Ethernet device ix # Intel Pro/10Gbe PCIE Ethernet device ixv # Intel Pro/10Gbe PCIE Ethernet VF device le # AMD Am7900 LANCE and Am79C9xx PCnet -device lio # Cavium 23XX Ethernet device mxge# Myricom Myri-10G 10GbE NIC device nxge# Neterion Xframe 10GbE Server/Storage Adapter device oce # Emulex 10 GbE (OneConnect Ethernet) ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"