From owner-svn-src-stable-11@freebsd.org Sun Dec 22 05:43:14 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 5FC591C8F23; Sun, 22 Dec 2019 05:43:14 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47gWc21rXXz441j; Sun, 22 Dec 2019 05:43:14 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3A39122FC1; Sun, 22 Dec 2019 05:43:14 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBM5hEFs045349; Sun, 22 Dec 2019 05:43:14 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBM5hDxX045347; Sun, 22 Dec 2019 05:43:13 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201912220543.xBM5hDxX045347@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Sun, 22 Dec 2019 05:43:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r355999 - stable/11/sbin/newfs_msdos X-SVN-Group: stable-11 X-SVN-Commit-Author: delphij X-SVN-Commit-Paths: stable/11/sbin/newfs_msdos X-SVN-Commit-Revision: 355999 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2019 05:43:14 -0000 Author: delphij Date: Sun Dec 22 05:43:13 2019 New Revision: 355999 URL: https://svnweb.freebsd.org/changeset/base/355999 Log: MFC r355318, r355513 r355318: Explicitly exit() instead of return in main(). r355513: Fix a couple of minor issues with newfs_msdos: - Do not unnecessarily strdup(). - Check return value of getdiskinfo(), if it failed, bail out. Modified: stable/11/sbin/newfs_msdos/mkfs_msdos.c stable/11/sbin/newfs_msdos/newfs_msdos.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sbin/newfs_msdos/mkfs_msdos.c ============================================================================== --- stable/11/sbin/newfs_msdos/mkfs_msdos.c Sun Dec 22 05:39:26 2019 (r355998) +++ stable/11/sbin/newfs_msdos/mkfs_msdos.c Sun Dec 22 05:43:13 2019 (r355999) @@ -316,7 +316,8 @@ mkfs_msdos(const char *fname, const char *dtype, const bpb.bpbHiddenSecs = o.hidden_sectors; if (!(o.floppy || (o.drive_heads && o.sectors_per_track && o.bytes_per_sector && o.size && o.hidden_sectors_set))) { - getdiskinfo(fd, fname, dtype, o.hidden_sectors_set, &bpb); + if (getdiskinfo(fd, fname, dtype, o.hidden_sectors_set, &bpb) == -1) + goto done; bpb.bpbHugeSectors -= (o.offset / bpb.bpbBytesPerSec); if (bpb.bpbSecPerClust == 0) { /* set defaults */ if (bpb.bpbHugeSectors <= 6000) /* about 3MB -> 512 bytes */ @@ -421,10 +422,7 @@ mkfs_msdos(const char *fname, const char *dtype, const bname = o.bootstrap; if (!strchr(bname, '/')) { snprintf(buf, sizeof(buf), "/boot/%s", bname); - if (!(bname = strdup(buf))) { - warn(NULL); - goto done; - } + bname = buf; } if ((fd1 = open(bname, O_RDONLY)) == -1 || fstat(fd1, &sb)) { warn("%s", bname); Modified: stable/11/sbin/newfs_msdos/newfs_msdos.c ============================================================================== --- stable/11/sbin/newfs_msdos/newfs_msdos.c Sun Dec 22 05:39:26 2019 (r355998) +++ stable/11/sbin/newfs_msdos/newfs_msdos.c Sun Dec 22 05:43:13 2019 (r355999) @@ -185,11 +185,10 @@ main(int argc, char *argv[]) fname = *argv++; if (!o.create_size && !strchr(fname, '/')) { snprintf(buf, sizeof(buf), "%s%s", _PATH_DEV, fname); - if (!(fname = strdup(buf))) - err(1, NULL); + fname = buf; } dtype = *argv; - return !!mkfs_msdos(fname, dtype, &o); + exit(!!mkfs_msdos(fname, dtype, &o)); } /* From owner-svn-src-stable-11@freebsd.org Sun Dec 22 16:04:13 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8D6C21D65F2; Sun, 22 Dec 2019 16:04:13 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47gnNY2Knhz4XHX; Sun, 22 Dec 2019 16:04:13 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4B4C91E6A; Sun, 22 Dec 2019 16:04:13 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBMG4DpW012408; Sun, 22 Dec 2019 16:04:13 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBMG4CAU012404; Sun, 22 Dec 2019 16:04:12 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201912221604.xBMG4CAU012404@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sun, 22 Dec 2019 16:04:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356007 - in stable: 11/sys/dev/adb 11/sys/dev/atkbdc 11/sys/dev/hyperv/input 11/sys/dev/uart 12/sys/dev/adb 12/sys/dev/atkbdc 12/sys/dev/hyperv/input 12/sys/dev/uart X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/dev/adb 11/sys/dev/atkbdc 11/sys/dev/hyperv/input 11/sys/dev/uart 12/sys/dev/adb 12/sys/dev/atkbdc 12/sys/dev/hyperv/input 12/sys/dev/uart X-SVN-Commit-Revision: 356007 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2019 16:04:13 -0000 Author: kevans Date: Sun Dec 22 16:04:12 2019 New Revision: 356007 URL: https://svnweb.freebsd.org/changeset/base/356007 Log: MFC r355794: keyboard switch definitions: standardize on c99 initializers Modified: stable/11/sys/dev/adb/adb_kbd.c stable/11/sys/dev/atkbdc/atkbd.c stable/11/sys/dev/hyperv/input/hv_kbd.c stable/11/sys/dev/uart/uart_kbd_sun.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/dev/adb/adb_kbd.c stable/12/sys/dev/atkbdc/atkbd.c stable/12/sys/dev/hyperv/input/hv_kbd.c stable/12/sys/dev/uart/uart_kbd_sun.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/dev/adb/adb_kbd.c ============================================================================== --- stable/11/sys/dev/adb/adb_kbd.c Sun Dec 22 15:55:52 2019 (r356006) +++ stable/11/sys/dev/adb/adb_kbd.c Sun Dec 22 16:04:12 2019 (r356007) @@ -194,25 +194,25 @@ static kbd_set_state_t akbd_set_state; static kbd_poll_mode_t akbd_poll; keyboard_switch_t akbdsw = { - akbd_probe, - akbd_init, - akbd_term, - akbd_interrupt, - akbd_test_if, - akbd_enable, - akbd_disable, - akbd_read, - akbd_check, - akbd_read_char, - akbd_check_char, - akbd_ioctl, - akbd_lock, - akbd_clear_state, - akbd_get_state, - akbd_set_state, - genkbd_get_fkeystr, - akbd_poll, - genkbd_diag, + .probe = akbd_probe, + .init = akbd_init, + .term = akbd_term, + .intr = akbd_interrupt, + .test_if = akbd_test_if, + .enable = akbd_enable, + .disable = akbd_disable, + .read = akbd_read, + .check = akbd_check, + .read_char = akbd_read_char, + .check_char = akbd_check_char, + .ioctl = akbd_ioctl, + .lock = akbd_lock, + .clear_state = akbd_clear_state, + .get_state = akbd_get_state, + .set_state = akbd_set_state, + .get_fkeystr = genkbd_get_fkeystr, + .poll = akbd_poll, + .diag = genkbd_diag, }; KEYBOARD_DRIVER(akbd, akbdsw, akbd_configure); Modified: stable/11/sys/dev/atkbdc/atkbd.c ============================================================================== --- stable/11/sys/dev/atkbdc/atkbd.c Sun Dec 22 15:55:52 2019 (r356006) +++ stable/11/sys/dev/atkbdc/atkbd.c Sun Dec 22 16:04:12 2019 (r356007) @@ -230,25 +230,25 @@ static kbd_set_state_t atkbd_set_state; static kbd_poll_mode_t atkbd_poll; static keyboard_switch_t atkbdsw = { - atkbd_probe, - atkbd_init, - atkbd_term, - atkbd_intr, - atkbd_test_if, - atkbd_enable, - atkbd_disable, - atkbd_read, - atkbd_check, - atkbd_read_char, - atkbd_check_char, - atkbd_ioctl, - atkbd_lock, - atkbd_clear_state, - atkbd_get_state, - atkbd_set_state, - genkbd_get_fkeystr, - atkbd_poll, - genkbd_diag, + .probe = atkbd_probe, + .init = atkbd_init, + .term = atkbd_term, + .intr = atkbd_intr, + .test_if = atkbd_test_if, + .enable = atkbd_enable, + .disable = atkbd_disable, + .read = atkbd_read, + .check = atkbd_check, + .read_char = atkbd_read_char, + .check_char = atkbd_check_char, + .ioctl = atkbd_ioctl, + .lock = atkbd_lock, + .clear_state = atkbd_clear_state, + .get_state = atkbd_get_state, + .set_state = atkbd_set_state, + .get_fkeystr = genkbd_get_fkeystr, + .poll = atkbd_poll, + .diag = genkbd_diag, }; KEYBOARD_DRIVER(atkbd, atkbdsw, atkbd_configure); Modified: stable/11/sys/dev/hyperv/input/hv_kbd.c ============================================================================== --- stable/11/sys/dev/hyperv/input/hv_kbd.c Sun Dec 22 15:55:52 2019 (r356006) +++ stable/11/sys/dev/hyperv/input/hv_kbd.c Sun Dec 22 16:04:12 2019 (r356007) @@ -446,25 +446,25 @@ hvkbd_read(keyboard_t *kbd, int wait) } static keyboard_switch_t hvkbdsw = { - hvkbd_probe, /* not used */ - hvkbd_init, - hvkbd_term, /* not used */ - hvkbd_intr, /* not used */ - hvkbd_test_if, /* not used */ - hvkbd_enable, - hvkbd_disable, - hvkbd_read, - hvkbd_check, - hvkbd_read_char, - hvkbd_check_char, - hvkbd_ioctl, - hvkbd_lock, /* not used */ - hvkbd_clear_state, - hvkbd_get_state, /* not used */ - hvkbd_set_state, /* not used */ - genkbd_get_fkeystr, - hvkbd_poll, - genkbd_diag, + .probe = hvkbd_probe, /* not used */ + .init = hvkbd_init, + .term = hvkbd_term, /* not used */ + .intr = hvkbd_intr, /* not used */ + .test_if = hvkbd_test_if, /* not used */ + .enable = hvkbd_enable, + .disable = hvkbd_disable, + .read = hvkbd_read, + .check = hvkbd_check, + .read_char = hvkbd_read_char, + .check_char = hvkbd_check_char, + .ioctl = hvkbd_ioctl, + .lock = hvkbd_lock, /* not used */ + .clear_state = hvkbd_clear_state, + .get_state = hvkbd_get_state, /* not used */ + .set_state = hvkbd_set_state, /* not used */ + .get_fkeystr = genkbd_get_fkeystr, + .poll = hvkbd_poll, + .diag = genkbd_diag, }; KEYBOARD_DRIVER(hvkbd, hvkbdsw, hvkbd_configure); Modified: stable/11/sys/dev/uart/uart_kbd_sun.c ============================================================================== --- stable/11/sys/dev/uart/uart_kbd_sun.c Sun Dec 22 15:55:52 2019 (r356006) +++ stable/11/sys/dev/uart/uart_kbd_sun.c Sun Dec 22 16:04:12 2019 (r356007) @@ -117,25 +117,25 @@ static int keycode2scancode(int keycode, int shift, in #endif static keyboard_switch_t sunkbdsw = { - sunkbd_probe, - sunkbd_init, - sunkbd_term, - sunkbd_intr, - sunkbd_test_if, - sunkbd_enable, - sunkbd_disable, - sunkbd_read, - sunkbd_check, - sunkbd_read_char, - sunkbd_check_char, - sunkbd_ioctl, - sunkbd_lock, - sunkbd_clear_state, - sunkbd_get_state, - sunkbd_set_state, - genkbd_get_fkeystr, - sunkbd_poll_mode, - sunkbd_diag + .probe = sunkbd_probe, + .init = sunkbd_init, + .term = sunkbd_term, + .intr = sunkbd_intr, + .test_if = sunkbd_test_if, + .enable = sunkbd_enable, + .disable = sunkbd_disable, + .read = sunkbd_read, + .check = sunkbd_check, + .read_char = sunkbd_read_char, + .check_char = sunkbd_check_char, + .ioctl = sunkbd_ioctl, + .lock = sunkbd_lock, + .clear_state = sunkbd_clear_state, + .get_state = sunkbd_get_state, + .set_state = sunkbd_set_state, + .get_fkeystr = genkbd_get_fkeystr, + .poll = sunkbd_poll_mode, + .diag = sunkbd_diag }; KEYBOARD_DRIVER(sunkbd, sunkbdsw, sunkbd_configure); From owner-svn-src-stable-11@freebsd.org Sun Dec 22 16:57:19 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E875E1D7417; Sun, 22 Dec 2019 16:57:19 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47gpYq5pdFz4Z4X; Sun, 22 Dec 2019 16:57:19 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C23C62732; Sun, 22 Dec 2019 16:57:19 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBMGvJ60042822; Sun, 22 Dec 2019 16:57:19 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBMGvJDl042821; Sun, 22 Dec 2019 16:57:19 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201912221657.xBMGvJDl042821@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sun, 22 Dec 2019 16:57:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356008 - in stable: 11/sys/dev/kbd 12/sys/dev/kbd X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/dev/kbd 12/sys/dev/kbd X-SVN-Commit-Revision: 356008 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2019 16:57:20 -0000 Author: kevans Date: Sun Dec 22 16:57:19 2019 New Revision: 356008 URL: https://svnweb.freebsd.org/changeset/base/356008 Log: MFC r355842: kbd: const'ify a couple of keyboard_driver fields Modified: stable/11/sys/dev/kbd/kbdreg.h Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/dev/kbd/kbdreg.h Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/dev/kbd/kbdreg.h ============================================================================== --- stable/11/sys/dev/kbd/kbdreg.h Sun Dec 22 16:04:12 2019 (r356007) +++ stable/11/sys/dev/kbd/kbdreg.h Sun Dec 22 16:57:19 2019 (r356008) @@ -205,12 +205,17 @@ typedef struct keyboard_switch { #define kbdd_diag(kbd, level) \ (*kbdsw[(kbd)->kb_index]->diag)((kbd), (leve)) -/* keyboard driver */ +/* + * Keyboard driver definition. Some of these be immutable after definition + * time, e.g. one shouldn't be able to rename a driver or use a different kbdsw + * entirely, but patching individual methods is acceptable. + */ typedef struct keyboard_driver { SLIST_ENTRY(keyboard_driver) link; - char *name; - keyboard_switch_t *kbdsw; - int (*configure)(int); /* backdoor for the console driver */ + const char * const name; + keyboard_switch_t * const kbdsw; + /* backdoor for the console driver */ + int (* const configure)(int); } keyboard_driver_t; #ifdef _KERNEL From owner-svn-src-stable-11@freebsd.org Sun Dec 22 17:01:45 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 020AF1D77FB; Sun, 22 Dec 2019 17:01:45 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47gpfw6M8Fz4Zc0; Sun, 22 Dec 2019 17:01:44 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B9C3528A2; Sun, 22 Dec 2019 17:01:44 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBMH1inK043995; Sun, 22 Dec 2019 17:01:44 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBMH1i8D043994; Sun, 22 Dec 2019 17:01:44 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201912221701.xBMH1i8D043994@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sun, 22 Dec 2019 17:01:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356010 - stable/11/sbin/camcontrol X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sbin/camcontrol X-SVN-Commit-Revision: 356010 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2019 17:01:45 -0000 Author: mav Date: Sun Dec 22 17:01:44 2019 New Revision: 356010 URL: https://svnweb.freebsd.org/changeset/base/356010 Log: MFC r355788: Properly detect ATA sanitize errors. It seems I read specifications not careful enough. There are devices not setting successful completion bit, causing previous code report false error. Modified: stable/11/sbin/camcontrol/camcontrol.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sbin/camcontrol/camcontrol.c ============================================================================== --- stable/11/sbin/camcontrol/camcontrol.c Sun Dec 22 17:00:53 2019 (r356009) +++ stable/11/sbin/camcontrol/camcontrol.c Sun Dec 22 17:01:44 2019 (r356010) @@ -6490,6 +6490,25 @@ sanitize_wait_ata(struct cam_device *device, union ccb return (retval); } if (status & ATA_STATUS_ERROR) { + if (error & ATA_ERROR_ABORT) { + switch (lba & 0xff) { + case 0x00: + warnx("Reason not reported or sanitize failed."); + return (1); + case 0x01: + warnx("Sanitize command unsuccessful. "); + return (1); + case 0x02: + warnx("Unsupported sanitize device command. "); + return (1); + case 0x03: + warnx("Device is in sanitize frozen state. "); + return (1); + case 0x04: + warnx("Sanitize antifreeze lock is enabled. "); + return (1); + } + } warnx("SANITIZE STATUS EXT failed, " "sanitize may still run."); return (1); @@ -6506,9 +6525,6 @@ sanitize_wait_ata(struct cam_device *device, union ccb fflush(stdout); } sleep(1); - } else if ((count & 0x8000) == 0) { - warnx("Sanitize complete with an error. "); - return (1); } else break; } while (1); From owner-svn-src-stable-11@freebsd.org Sun Dec 22 17:04:16 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 99DB71D79BB; Sun, 22 Dec 2019 17:04:16 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47gpjr3T3rz4ZwZ; Sun, 22 Dec 2019 17:04:16 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 725B428F6; Sun, 22 Dec 2019 17:04:16 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBMH4GGn049126; Sun, 22 Dec 2019 17:04:16 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBMH4Gue049125; Sun, 22 Dec 2019 17:04:16 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201912221704.xBMH4Gue049125@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sun, 22 Dec 2019 17:04:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356011 - in stable: 11/sys/dev/kbd 12/sys/dev/kbd X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/dev/kbd 12/sys/dev/kbd X-SVN-Commit-Revision: 356011 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2019 17:04:16 -0000 Author: kevans Date: Sun Dec 22 17:04:16 2019 New Revision: 356011 URL: https://svnweb.freebsd.org/changeset/base/356011 Log: Fix kbdd_diag definition This is a direct commit to stable branches as these have been converted to inline functions in head, which will likely not get MFC'd due to limited utility -- follow up locking assertions likely cannot be done in stable branches. The use of 'level' in the macro definition was truncated to 'leve', which makes the macro unusable. Modified: stable/11/sys/dev/kbd/kbdreg.h Changes in other areas also in this revision: Modified: stable/12/sys/dev/kbd/kbdreg.h Modified: stable/11/sys/dev/kbd/kbdreg.h ============================================================================== --- stable/11/sys/dev/kbd/kbdreg.h Sun Dec 22 17:01:44 2019 (r356010) +++ stable/11/sys/dev/kbd/kbdreg.h Sun Dec 22 17:04:16 2019 (r356011) @@ -203,7 +203,7 @@ typedef struct keyboard_switch { #define kbdd_poll(kbd, on) \ (*kbdsw[(kbd)->kb_index]->poll)((kbd), (on)) #define kbdd_diag(kbd, level) \ - (*kbdsw[(kbd)->kb_index]->diag)((kbd), (leve)) + (*kbdsw[(kbd)->kb_index]->diag)((kbd), (level)) /* * Keyboard driver definition. Some of these be immutable after definition From owner-svn-src-stable-11@freebsd.org Sun Dec 22 17:06:57 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 729F51D7B12; Sun, 22 Dec 2019 17:06:57 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47gpmx2QRPz4bB9; Sun, 22 Dec 2019 17:06:57 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4E6E728F9; Sun, 22 Dec 2019 17:06:57 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBMH6vag049388; Sun, 22 Dec 2019 17:06:57 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBMH6uhu049384; Sun, 22 Dec 2019 17:06:56 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201912221706.xBMH6uhu049384@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sun, 22 Dec 2019 17:06:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356012 - in stable: 11/sys/arm/versatile 11/sys/dev/gpio 11/sys/dev/hyperv/input 11/sys/dev/usb/input 12/sys/arm/versatile 12/sys/dev/gpio 12/sys/dev/hyperv/input 12/sys/dev/usb/input X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/arm/versatile 11/sys/dev/gpio 11/sys/dev/hyperv/input 11/sys/dev/usb/input 12/sys/arm/versatile 12/sys/dev/gpio 12/sys/dev/hyperv/input 12/sys/dev/usb/input X-SVN-Commit-Revision: 356012 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2019 17:06:57 -0000 Author: kevans Date: Sun Dec 22 17:06:56 2019 New Revision: 356012 URL: https://svnweb.freebsd.org/changeset/base/356012 Log: MFC r355793: kbd drivers: use kbdd_* indirection for diag invocation Modified: stable/11/sys/arm/versatile/pl050.c stable/11/sys/dev/gpio/gpiokeys.c stable/11/sys/dev/hyperv/input/hv_kbd.c stable/11/sys/dev/usb/input/ukbd.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/arm/versatile/pl050.c stable/12/sys/dev/gpio/gpiokeys.c stable/12/sys/dev/hyperv/input/hv_kbd.c stable/12/sys/dev/usb/input/ukbd.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/arm/versatile/pl050.c ============================================================================== --- stable/11/sys/arm/versatile/pl050.c Sun Dec 22 17:04:16 2019 (r356011) +++ stable/11/sys/arm/versatile/pl050.c Sun Dec 22 17:06:56 2019 (r356012) @@ -717,7 +717,7 @@ pl050_kmi_attach(device_t dev) #endif if (bootverbose) { - genkbd_diag(kbd, bootverbose); + kbdd_diag(kbd, bootverbose); } kmi_attached = 1; return (0); Modified: stable/11/sys/dev/gpio/gpiokeys.c ============================================================================== --- stable/11/sys/dev/gpio/gpiokeys.c Sun Dec 22 17:04:16 2019 (r356011) +++ stable/11/sys/dev/gpio/gpiokeys.c Sun Dec 22 17:06:56 2019 (r356012) @@ -433,7 +433,7 @@ gpiokeys_attach(device_t dev) #endif if (bootverbose) { - genkbd_diag(kbd, 1); + kbdd_diag(kbd, 1); } total_keys = 0; Modified: stable/11/sys/dev/hyperv/input/hv_kbd.c ============================================================================== --- stable/11/sys/dev/hyperv/input/hv_kbd.c Sun Dec 22 17:04:16 2019 (r356011) +++ stable/11/sys/dev/hyperv/input/hv_kbd.c Sun Dec 22 17:06:56 2019 (r356012) @@ -535,7 +535,7 @@ hv_kbd_drv_attach(device_t dev) } #endif if (bootverbose) { - genkbd_diag(kbd, bootverbose); + kbdd_diag(kbd, bootverbose); } return (0); detach: Modified: stable/11/sys/dev/usb/input/ukbd.c ============================================================================== --- stable/11/sys/dev/usb/input/ukbd.c Sun Dec 22 17:04:16 2019 (r356011) +++ stable/11/sys/dev/usb/input/ukbd.c Sun Dec 22 17:06:56 2019 (r356012) @@ -1373,7 +1373,7 @@ ukbd_attach(device_t dev) sc->sc_flags |= UKBD_FLAG_ATTACHED; if (bootverbose) { - genkbd_diag(kbd, bootverbose); + kbdd_diag(kbd, bootverbose); } #ifdef USB_DEBUG From owner-svn-src-stable-11@freebsd.org Sun Dec 22 17:15:51 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 999261D7E96; Sun, 22 Dec 2019 17:15:51 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47gpzC3HLnz4bj0; Sun, 22 Dec 2019 17:15:51 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 678E42ACA; Sun, 22 Dec 2019 17:15:51 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBMHFpQV055315; Sun, 22 Dec 2019 17:15:51 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBMHFnHq055305; Sun, 22 Dec 2019 17:15:49 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201912221715.xBMHFnHq055305@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sun, 22 Dec 2019 17:15:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356013 - in stable: 11/sys/arm/samsung/exynos 11/sys/dev/adb 11/sys/dev/atkbdc 11/sys/dev/gpio 11/sys/dev/hyperv/input 11/sys/dev/kbd 11/sys/dev/kbdmux 11/sys/dev/uart 11/sys/dev/usb/i... X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/arm/samsung/exynos 11/sys/dev/adb 11/sys/dev/atkbdc 11/sys/dev/gpio 11/sys/dev/hyperv/input 11/sys/dev/kbd 11/sys/dev/kbdmux 11/sys/dev/uart 11/sys/dev/usb/input 11/sys/dev/vkbd 12/s... X-SVN-Commit-Revision: 356013 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2019 17:15:51 -0000 Author: kevans Date: Sun Dec 22 17:15:48 2019 New Revision: 356013 URL: https://svnweb.freebsd.org/changeset/base/356013 Log: MFC r355796-r355797, r355799: kbd: defaults for get_fkeystr/diag The genkbd version of these remains exposed for stable branches, but keyboard drivers that just want to use the defaults can simply not provide their own. There shouldn't be any unset in the wild. r355796: kbd: provide default implementations of get_fkeystr/diag Most keyboard drivers are using the genkbd implementations as it is; formally use them for any that aren't set. r355797: chrome_kb: remove default get_fkeystr/diag implementations This file was missed in r355796, but no harm would have come from this. r355799: kbd: patch linker set methods, too This is needed after r355796. Some double-registration of kbd drivers needs to be sorted out, then this sysinit will simply add these drivers into the normal list and kill off any other bits in the driver that are aware of the linker set, for simplicity. Modified: stable/11/sys/arm/samsung/exynos/chrome_kb.c stable/11/sys/dev/adb/adb_kbd.c stable/11/sys/dev/atkbdc/atkbd.c stable/11/sys/dev/gpio/gpiokeys.c stable/11/sys/dev/hyperv/input/hv_kbd.c stable/11/sys/dev/kbd/kbd.c stable/11/sys/dev/kbdmux/kbdmux.c stable/11/sys/dev/uart/uart_kbd_sun.c stable/11/sys/dev/usb/input/ukbd.c stable/11/sys/dev/vkbd/vkbd.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/arm/samsung/exynos/chrome_kb.c stable/12/sys/dev/adb/adb_kbd.c stable/12/sys/dev/atkbdc/atkbd.c stable/12/sys/dev/gpio/gpiokeys.c stable/12/sys/dev/hyperv/input/hv_kbd.c stable/12/sys/dev/kbd/kbd.c stable/12/sys/dev/kbdmux/kbdmux.c stable/12/sys/dev/uart/uart_kbd_sun.c stable/12/sys/dev/usb/input/ukbd.c stable/12/sys/dev/vkbd/vkbd.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/arm/samsung/exynos/chrome_kb.c ============================================================================== --- stable/11/sys/arm/samsung/exynos/chrome_kb.c Sun Dec 22 17:06:56 2019 (r356012) +++ stable/11/sys/arm/samsung/exynos/chrome_kb.c Sun Dec 22 17:15:48 2019 (r356013) @@ -663,9 +663,7 @@ keyboard_switch_t ckbdsw = { .clear_state = &ckb_clear_state, .get_state = &ckb_get_state, .set_state = &ckb_set_state, - .get_fkeystr = &genkbd_get_fkeystr, .poll = &ckb_poll, - .diag = &genkbd_diag, }; static int Modified: stable/11/sys/dev/adb/adb_kbd.c ============================================================================== --- stable/11/sys/dev/adb/adb_kbd.c Sun Dec 22 17:06:56 2019 (r356012) +++ stable/11/sys/dev/adb/adb_kbd.c Sun Dec 22 17:15:48 2019 (r356013) @@ -210,9 +210,7 @@ keyboard_switch_t akbdsw = { .clear_state = akbd_clear_state, .get_state = akbd_get_state, .set_state = akbd_set_state, - .get_fkeystr = genkbd_get_fkeystr, .poll = akbd_poll, - .diag = genkbd_diag, }; KEYBOARD_DRIVER(akbd, akbdsw, akbd_configure); Modified: stable/11/sys/dev/atkbdc/atkbd.c ============================================================================== --- stable/11/sys/dev/atkbdc/atkbd.c Sun Dec 22 17:06:56 2019 (r356012) +++ stable/11/sys/dev/atkbdc/atkbd.c Sun Dec 22 17:15:48 2019 (r356013) @@ -246,9 +246,7 @@ static keyboard_switch_t atkbdsw = { .clear_state = atkbd_clear_state, .get_state = atkbd_get_state, .set_state = atkbd_set_state, - .get_fkeystr = genkbd_get_fkeystr, .poll = atkbd_poll, - .diag = genkbd_diag, }; KEYBOARD_DRIVER(atkbd, atkbdsw, atkbd_configure); Modified: stable/11/sys/dev/gpio/gpiokeys.c ============================================================================== --- stable/11/sys/dev/gpio/gpiokeys.c Sun Dec 22 17:06:56 2019 (r356012) +++ stable/11/sys/dev/gpio/gpiokeys.c Sun Dec 22 17:15:48 2019 (r356013) @@ -976,9 +976,7 @@ static keyboard_switch_t gpiokeyssw = { .clear_state = &gpiokeys_clear_state, .get_state = &gpiokeys_get_state, .set_state = &gpiokeys_set_state, - .get_fkeystr = &genkbd_get_fkeystr, .poll = &gpiokeys_poll, - .diag = &genkbd_diag, }; KEYBOARD_DRIVER(gpiokeys, gpiokeyssw, gpiokeys_configure); Modified: stable/11/sys/dev/hyperv/input/hv_kbd.c ============================================================================== --- stable/11/sys/dev/hyperv/input/hv_kbd.c Sun Dec 22 17:06:56 2019 (r356012) +++ stable/11/sys/dev/hyperv/input/hv_kbd.c Sun Dec 22 17:15:48 2019 (r356013) @@ -462,9 +462,7 @@ static keyboard_switch_t hvkbdsw = { .clear_state = hvkbd_clear_state, .get_state = hvkbd_get_state, /* not used */ .set_state = hvkbd_set_state, /* not used */ - .get_fkeystr = genkbd_get_fkeystr, .poll = hvkbd_poll, - .diag = genkbd_diag, }; KEYBOARD_DRIVER(hvkbd, hvkbdsw, hvkbd_configure); Modified: stable/11/sys/dev/kbd/kbd.c ============================================================================== --- stable/11/sys/dev/kbd/kbd.c Sun Dec 22 17:06:56 2019 (r356012) +++ stable/11/sys/dev/kbd/kbd.c Sun Dec 22 17:15:48 2019 (r356013) @@ -173,6 +173,10 @@ kbd_add_driver(keyboard_driver_t *driver) { if (SLIST_NEXT(driver, link)) return (EINVAL); + if (driver->kbdsw->get_fkeystr == NULL) + driver->kbdsw->get_fkeystr = genkbd_get_fkeystr; + if (driver->kbdsw->diag == NULL) + driver->kbdsw->diag = genkbd_diag; SLIST_INSERT_HEAD(&keyboard_drivers, driver, link); return (0); } @@ -1485,3 +1489,20 @@ genkbd_keyaction(keyboard_t *kbd, int keycode, int up, } /* NOT REACHED */ } + +static void +kbd_drv_init(void) +{ + const keyboard_driver_t **list; + const keyboard_driver_t *p; + + SET_FOREACH(list, kbddriver_set) { + p = *list; + if (p->kbdsw->get_fkeystr == NULL) + p->kbdsw->get_fkeystr = genkbd_get_fkeystr; + if (p->kbdsw->diag == NULL) + p->kbdsw->diag = genkbd_diag; + } +} + +SYSINIT(kbd_drv_init, SI_SUB_DRIVERS, SI_ORDER_FIRST, kbd_drv_init, NULL); Modified: stable/11/sys/dev/kbdmux/kbdmux.c ============================================================================== --- stable/11/sys/dev/kbdmux/kbdmux.c Sun Dec 22 17:06:56 2019 (r356012) +++ stable/11/sys/dev/kbdmux/kbdmux.c Sun Dec 22 17:15:48 2019 (r356013) @@ -377,9 +377,7 @@ static keyboard_switch_t kbdmuxsw = { .clear_state = kbdmux_clear_state, .get_state = kbdmux_get_state, .set_state = kbdmux_set_state, - .get_fkeystr = genkbd_get_fkeystr, .poll = kbdmux_poll, - .diag = genkbd_diag, }; #ifdef EVDEV_SUPPORT Modified: stable/11/sys/dev/uart/uart_kbd_sun.c ============================================================================== --- stable/11/sys/dev/uart/uart_kbd_sun.c Sun Dec 22 17:06:56 2019 (r356012) +++ stable/11/sys/dev/uart/uart_kbd_sun.c Sun Dec 22 17:15:48 2019 (r356013) @@ -133,7 +133,6 @@ static keyboard_switch_t sunkbdsw = { .clear_state = sunkbd_clear_state, .get_state = sunkbd_get_state, .set_state = sunkbd_set_state, - .get_fkeystr = genkbd_get_fkeystr, .poll = sunkbd_poll_mode, .diag = sunkbd_diag }; Modified: stable/11/sys/dev/usb/input/ukbd.c ============================================================================== --- stable/11/sys/dev/usb/input/ukbd.c Sun Dec 22 17:06:56 2019 (r356012) +++ stable/11/sys/dev/usb/input/ukbd.c Sun Dec 22 17:15:48 2019 (r356013) @@ -2257,9 +2257,7 @@ static keyboard_switch_t ukbdsw = { .clear_state = &ukbd_clear_state, .get_state = &ukbd_get_state, .set_state = &ukbd_set_state, - .get_fkeystr = &genkbd_get_fkeystr, .poll = &ukbd_poll, - .diag = &genkbd_diag, }; KEYBOARD_DRIVER(ukbd, ukbdsw, ukbd_configure); Modified: stable/11/sys/dev/vkbd/vkbd.c ============================================================================== --- stable/11/sys/dev/vkbd/vkbd.c Sun Dec 22 17:06:56 2019 (r356012) +++ stable/11/sys/dev/vkbd/vkbd.c Sun Dec 22 17:15:48 2019 (r356013) @@ -577,9 +577,7 @@ static keyboard_switch_t vkbdsw = { .clear_state = vkbd_clear_state, .get_state = vkbd_get_state, .set_state = vkbd_set_state, - .get_fkeystr = genkbd_get_fkeystr, .poll = vkbd_poll, - .diag = genkbd_diag, }; static int typematic(int delay, int rate); From owner-svn-src-stable-11@freebsd.org Sun Dec 22 19:06:49 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id F1EE21DA13E; Sun, 22 Dec 2019 19:06:48 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47gsRD5zzLz3DHG; Sun, 22 Dec 2019 19:06:48 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C447C40E6; Sun, 22 Dec 2019 19:06:48 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBMJ6m52023201; Sun, 22 Dec 2019 19:06:48 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBMJ6kN0023186; Sun, 22 Dec 2019 19:06:46 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201912221906.xBMJ6kN0023186@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sun, 22 Dec 2019 19:06:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356020 - in stable: 11/sys/arm/samsung/exynos 11/sys/arm/versatile 11/sys/arm/xilinx 11/sys/dev/gpio 11/sys/dev/quicc 11/sys/dev/rp 11/sys/dev/usb/input 11/sys/kern 11/sys/powerpc/psim... X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/arm/samsung/exynos 11/sys/arm/versatile 11/sys/arm/xilinx 11/sys/dev/gpio 11/sys/dev/quicc 11/sys/dev/rp 11/sys/dev/usb/input 11/sys/kern 11/sys/powerpc/psim 12/sys/arm/samsung/exyno... X-SVN-Commit-Revision: 356020 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2019 19:06:49 -0000 Author: kevans Date: Sun Dec 22 19:06:45 2019 New Revision: 356020 URL: https://svnweb.freebsd.org/changeset/base/356020 Log: MFC r355206, r355212, r355257, r355271: tty nits r355206: tty_pts: don't rely on tty header pollution for sys/mutex.h r355212: tty_rel_gone: add locking assertion r355257: usb: remove some extraneous tty.h includes r355271: Remove more needless includes Modified: stable/11/sys/arm/samsung/exynos/chrome_kb.c stable/11/sys/arm/samsung/exynos/exynos_uart.c stable/11/sys/arm/versatile/pl050.c stable/11/sys/arm/xilinx/uart_dev_cdnc.c stable/11/sys/dev/gpio/gpiokeys.c stable/11/sys/dev/quicc/quicc_bfe_fdt.c stable/11/sys/dev/rp/rp_isa.c stable/11/sys/dev/rp/rp_pci.c stable/11/sys/dev/usb/input/uep.c stable/11/sys/dev/usb/input/ukbd.c stable/11/sys/dev/usb/input/ums.c stable/11/sys/kern/tty.c stable/11/sys/kern/tty_pts.c stable/11/sys/powerpc/psim/uart_iobus.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/arm/samsung/exynos/chrome_kb.c stable/12/sys/arm/samsung/exynos/exynos_uart.c stable/12/sys/arm/versatile/pl050.c stable/12/sys/arm/xilinx/uart_dev_cdnc.c stable/12/sys/dev/gpio/gpiokeys.c stable/12/sys/dev/quicc/quicc_bfe_fdt.c stable/12/sys/dev/rp/rp_isa.c stable/12/sys/dev/rp/rp_pci.c stable/12/sys/dev/usb/input/uep.c stable/12/sys/dev/usb/input/ukbd.c stable/12/sys/dev/usb/input/ums.c stable/12/sys/kern/tty.c stable/12/sys/kern/tty_pts.c stable/12/sys/powerpc/psim/uart_iobus.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/arm/samsung/exynos/chrome_kb.c ============================================================================== --- stable/11/sys/arm/samsung/exynos/chrome_kb.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/arm/samsung/exynos/chrome_kb.c Sun Dec 22 19:06:45 2019 (r356020) @@ -52,7 +52,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include Modified: stable/11/sys/arm/samsung/exynos/exynos_uart.c ============================================================================== --- stable/11/sys/arm/samsung/exynos/exynos_uart.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/arm/samsung/exynos/exynos_uart.c Sun Dec 22 19:06:45 2019 (r356020) @@ -34,7 +34,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include Modified: stable/11/sys/arm/versatile/pl050.c ============================================================================== --- stable/11/sys/arm/versatile/pl050.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/arm/versatile/pl050.c Sun Dec 22 19:06:45 2019 (r356020) @@ -35,8 +35,10 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include +#include #include #include #include @@ -53,7 +55,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include Modified: stable/11/sys/arm/xilinx/uart_dev_cdnc.c ============================================================================== --- stable/11/sys/arm/xilinx/uart_dev_cdnc.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/arm/xilinx/uart_dev_cdnc.c Sun Dec 22 19:06:45 2019 (r356020) @@ -43,7 +43,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include Modified: stable/11/sys/dev/gpio/gpiokeys.c ============================================================================== --- stable/11/sys/dev/gpio/gpiokeys.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/dev/gpio/gpiokeys.c Sun Dec 22 19:06:45 2019 (r356020) @@ -44,7 +44,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include Modified: stable/11/sys/dev/quicc/quicc_bfe_fdt.c ============================================================================== --- stable/11/sys/dev/quicc/quicc_bfe_fdt.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/dev/quicc/quicc_bfe_fdt.c Sun Dec 22 19:06:45 2019 (r356020) @@ -38,7 +38,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include Modified: stable/11/sys/dev/rp/rp_isa.c ============================================================================== --- stable/11/sys/dev/rp/rp_isa.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/dev/rp/rp_isa.c Sun Dec 22 19:06:45 2019 (r356020) @@ -41,10 +41,11 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include +#include #include +#include #include #include #include Modified: stable/11/sys/dev/rp/rp_pci.c ============================================================================== --- stable/11/sys/dev/rp/rp_pci.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/dev/rp/rp_pci.c Sun Dec 22 19:06:45 2019 (r356020) @@ -40,10 +40,11 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include +#include #include +#include #include #include #include Modified: stable/11/sys/dev/usb/input/uep.c ============================================================================== --- stable/11/sys/dev/usb/input/uep.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/dev/usb/input/uep.c Sun Dec 22 19:06:45 2019 (r356020) @@ -49,7 +49,6 @@ #include #include -#include #define USB_DEBUG_VAR uep_debug #include Modified: stable/11/sys/dev/usb/input/ukbd.c ============================================================================== --- stable/11/sys/dev/usb/input/ukbd.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/dev/usb/input/ukbd.c Sun Dec 22 19:06:45 2019 (r356020) @@ -81,7 +81,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include Modified: stable/11/sys/dev/usb/input/ums.c ============================================================================== --- stable/11/sys/dev/usb/input/ums.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/dev/usb/input/ums.c Sun Dec 22 19:06:45 2019 (r356020) @@ -77,7 +77,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #ifdef USB_DEBUG Modified: stable/11/sys/kern/tty.c ============================================================================== --- stable/11/sys/kern/tty.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/kern/tty.c Sun Dec 22 19:06:45 2019 (r356020) @@ -1169,6 +1169,7 @@ void tty_rel_gone(struct tty *tp) { + tty_lock_assert(tp, MA_OWNED); MPASS(!tty_gone(tp)); /* Simulate carrier removal. */ Modified: stable/11/sys/kern/tty_pts.c ============================================================================== --- stable/11/sys/kern/tty_pts.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/kern/tty_pts.c Sun Dec 22 19:06:45 2019 (r356020) @@ -48,6 +48,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include Modified: stable/11/sys/powerpc/psim/uart_iobus.c ============================================================================== --- stable/11/sys/powerpc/psim/uart_iobus.c Sun Dec 22 18:55:09 2019 (r356019) +++ stable/11/sys/powerpc/psim/uart_iobus.c Sun Dec 22 19:06:45 2019 (r356020) @@ -40,7 +40,6 @@ #include #include #include -#include #include #include From owner-svn-src-stable-11@freebsd.org Sun Dec 22 19:14:34 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 10BBE1DA412; Sun, 22 Dec 2019 19:14:34 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47gsc96TY7z3Dy8; Sun, 22 Dec 2019 19:14:33 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D9B2E42A9; Sun, 22 Dec 2019 19:14:33 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBMJEXqv028892; Sun, 22 Dec 2019 19:14:33 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBMJEX0C028891; Sun, 22 Dec 2019 19:14:33 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201912221914.xBMJEX0C028891@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sun, 22 Dec 2019 19:14:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356021 - in stable: 11/sys/arm/versatile 12/sys/arm/versatile X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/arm/versatile 12/sys/arm/versatile X-SVN-Commit-Revision: 356021 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2019 19:14:34 -0000 Author: kevans Date: Sun Dec 22 19:14:33 2019 New Revision: 356021 URL: https://svnweb.freebsd.org/changeset/base/356021 Log: MFC r355932: VERSATILEPB: also use default get_fkeystr/diag In head/, this config was broken from the defaulting commits, but in stable branches we left the genkbd_* defaults exposed. Do this anyways. Modified: stable/11/sys/arm/versatile/pl050.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/arm/versatile/pl050.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/arm/versatile/pl050.c ============================================================================== --- stable/11/sys/arm/versatile/pl050.c Sun Dec 22 19:06:45 2019 (r356020) +++ stable/11/sys/arm/versatile/pl050.c Sun Dec 22 19:14:33 2019 (r356021) @@ -579,9 +579,7 @@ static keyboard_switch_t kmisw = { .clear_state = &kmi_clear_state, .get_state = &kmi_get_state, .set_state = &kmi_set_state, - .get_fkeystr = &genkbd_get_fkeystr, .poll = &kmi_poll, - .diag = &genkbd_diag, }; KEYBOARD_DRIVER(kmi, kmisw, kmi_configure); From owner-svn-src-stable-11@freebsd.org Mon Dec 23 10:06:33 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 668D51EB93D; Mon, 23 Dec 2019 10:06:33 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47hFPP28gsz4Ssm; Mon, 23 Dec 2019 10:06:33 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4532EE37A; Mon, 23 Dec 2019 10:06:33 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBNA6X35057402; Mon, 23 Dec 2019 10:06:33 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBNA6XJd057401; Mon, 23 Dec 2019 10:06:33 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201912231006.xBNA6XJd057401@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Mon, 23 Dec 2019 10:06:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356036 - stable/11/sys/netpfil/ipfw X-SVN-Group: stable-11 X-SVN-Commit-Author: ae X-SVN-Commit-Paths: stable/11/sys/netpfil/ipfw X-SVN-Commit-Revision: 356036 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Dec 2019 10:06:33 -0000 Author: ae Date: Mon Dec 23 10:06:32 2019 New Revision: 356036 URL: https://svnweb.freebsd.org/changeset/base/356036 Log: MFC r355712: Make TCP options parsing stricter. Rework tcpopts_parse() to be more strict. Use const pointer. Add length checks for specific TCP options. The main purpose of the change is avoiding of possible out of mbuf's data access. Reported by: Maxime Villard Modified: stable/11/sys/netpfil/ipfw/ip_fw2.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/netpfil/ipfw/ip_fw2.c ============================================================================== --- stable/11/sys/netpfil/ipfw/ip_fw2.c Mon Dec 23 10:02:55 2019 (r356035) +++ stable/11/sys/netpfil/ipfw/ip_fw2.c Mon Dec 23 10:06:32 2019 (r356036) @@ -328,22 +328,27 @@ ipopts_match(struct ip *ip, ipfw_insn *cmd) return (flags_match(cmd, bits)); } +/* + * Parse TCP options. The logic copied from tcp_dooptions(). + */ static int -tcpopts_parse(struct tcphdr *tcp, uint16_t *mss) +tcpopts_parse(const struct tcphdr *tcp, uint16_t *mss) { - u_char *cp = (u_char *)(tcp + 1); + const u_char *cp = (const u_char *)(tcp + 1); int optlen, bits = 0; - int x = (tcp->th_off << 2) - sizeof(struct tcphdr); + int cnt = (tcp->th_off << 2) - sizeof(struct tcphdr); - for (; x > 0; x -= optlen, cp += optlen) { + for (; cnt > 0; cnt -= optlen, cp += optlen) { int opt = cp[0]; if (opt == TCPOPT_EOL) break; if (opt == TCPOPT_NOP) optlen = 1; else { + if (cnt < 2) + break; optlen = cp[1]; - if (optlen <= 0) + if (optlen < 2 || optlen > cnt) break; } @@ -352,22 +357,31 @@ tcpopts_parse(struct tcphdr *tcp, uint16_t *mss) break; case TCPOPT_MAXSEG: + if (optlen != TCPOLEN_MAXSEG) + break; bits |= IP_FW_TCPOPT_MSS; if (mss != NULL) *mss = be16dec(cp + 2); break; case TCPOPT_WINDOW: - bits |= IP_FW_TCPOPT_WINDOW; + if (optlen == TCPOLEN_WINDOW) + bits |= IP_FW_TCPOPT_WINDOW; break; case TCPOPT_SACK_PERMITTED: + if (optlen == TCPOLEN_SACK_PERMITTED) + bits |= IP_FW_TCPOPT_SACK; + break; + case TCPOPT_SACK: - bits |= IP_FW_TCPOPT_SACK; + if (optlen > 2 && (optlen - 2) % TCPOLEN_SACK == 0) + bits |= IP_FW_TCPOPT_SACK; break; case TCPOPT_TIMESTAMP: - bits |= IP_FW_TCPOPT_TS; + if (optlen == TCPOLEN_TIMESTAMP) + bits |= IP_FW_TCPOPT_TS; break; } } From owner-svn-src-stable-11@freebsd.org Mon Dec 23 20:19:23 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D523A1CF7F9; Mon, 23 Dec 2019 20:19:23 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47hW0W5DXGz41Rj; Mon, 23 Dec 2019 20:19:23 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AE6F71D085; Mon, 23 Dec 2019 20:19:23 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBNKJN7D020397; Mon, 23 Dec 2019 20:19:23 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBNKJNpM020396; Mon, 23 Dec 2019 20:19:23 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201912232019.xBNKJNpM020396@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 23 Dec 2019 20:19:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356040 - in stable: 11/sys/dev/vt 12/sys/dev/vt X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/dev/vt 12/sys/dev/vt X-SVN-Commit-Revision: 356040 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Dec 2019 20:19:23 -0000 Author: kevans Date: Mon Dec 23 20:19:23 2019 New Revision: 356040 URL: https://svnweb.freebsd.org/changeset/base/356040 Log: MFC r355935: vt: fix post-boot keyboard attachment With absolutely no keyboards attached and no kbdmux in kernel, we descend down this error path. 0 is a valid keyboard index, so leaving vd->vd_keyboard at 0 when there's no keyboard found is objectively wrong as later attachment of a keyboard will fail -- it gets index 0, and vt thinks it's already using that keyboard. This is decidedly the corniest of corner cases, but it's easy enough to get correct that we should do so. Tested in a kernel without atkbdc, atkbd, psm, kbdmux, ukbd, hyperv then loading ukbd post-boot and attaching a usb keyboard. Modified: stable/11/sys/dev/vt/vt_core.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/dev/vt/vt_core.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/dev/vt/vt_core.c ============================================================================== --- stable/11/sys/dev/vt/vt_core.c Mon Dec 23 20:18:05 2019 (r356039) +++ stable/11/sys/dev/vt/vt_core.c Mon Dec 23 20:19:23 2019 (r356040) @@ -999,6 +999,13 @@ vt_allocate_keyboard(struct vt_device *vd) DPRINTF(20, "%s: no kbdmux allocated\n", __func__); idx0 = kbd_allocate("*", -1, vd, vt_kbdevent, vd); if (idx0 < 0) { + /* + * We don't have a keyboard yet, so we must invalidate + * vd->vd_keyboard so that later keyboard attachment can + * succeed. Any value >= 0 can accidentally match a + * keyboard. + */ + vd->vd_keyboard = -1; DPRINTF(10, "%s: No keyboard found.\n", __func__); return (-1); } From owner-svn-src-stable-11@freebsd.org Tue Dec 24 23:20:18 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C29411CB828; Tue, 24 Dec 2019 23:20:18 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47jByp4knlz4JVG; Tue, 24 Dec 2019 23:20:18 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9DE2577EF; Tue, 24 Dec 2019 23:20:18 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBONKIuc080019; Tue, 24 Dec 2019 23:20:18 GMT (envelope-from loos@FreeBSD.org) Received: (from loos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBONKICg080018; Tue, 24 Dec 2019 23:20:18 GMT (envelope-from loos@FreeBSD.org) Message-Id: <201912242320.xBONKICg080018@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: loos set sender to loos@FreeBSD.org using -f From: Luiz Otavio O Souza Date: Tue, 24 Dec 2019 23:20:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356064 - stable/11/sys/arm/arm X-SVN-Group: stable-11 X-SVN-Commit-Author: loos X-SVN-Commit-Paths: stable/11/sys/arm/arm X-SVN-Commit-Revision: 356064 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Dec 2019 23:20:18 -0000 Author: loos Date: Tue Dec 24 23:20:18 2019 New Revision: 356064 URL: https://svnweb.freebsd.org/changeset/base/356064 Log: MFC r320001 by zbb: Fix typo in "Marvell" string Change Marwell to Marvell Pointed out by: Ravi Pokala Sponsored by: Rubicon Communications, LLC (Netgate) Modified: stable/11/sys/arm/arm/identcpu-v6.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/arm/arm/identcpu-v6.c ============================================================================== --- stable/11/sys/arm/arm/identcpu-v6.c Tue Dec 24 23:03:12 2019 (r356063) +++ stable/11/sys/arm/arm/identcpu-v6.c Tue Dec 24 23:20:18 2019 (r356064) @@ -83,8 +83,8 @@ static struct { {CPU_IMPLEMENTER_ARM, CPU_ARCH_CORTEX_A72, "ARM", "Cortex-A72"}, {CPU_IMPLEMENTER_ARM, CPU_ARCH_CORTEX_A73, "ARM", "Cortex-A73"}, - {CPU_IMPLEMENTER_MRVL, CPU_ARCH_SHEEVA_581, "Marwell", "PJ4 v7"}, - {CPU_IMPLEMENTER_MRVL, CPU_ARCH_SHEEVA_584, "Marwell", "PJ4MP v7"}, + {CPU_IMPLEMENTER_MRVL, CPU_ARCH_SHEEVA_581, "Marvell", "PJ4 v7"}, + {CPU_IMPLEMENTER_MRVL, CPU_ARCH_SHEEVA_584, "Marvell", "PJ4MP v7"}, {CPU_IMPLEMENTER_QCOM, CPU_ARCH_KRAIT_300, "Qualcomm", "Krait 300"}, }; From owner-svn-src-stable-11@freebsd.org Wed Dec 25 09:30:11 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 25BBF1D7C43; Wed, 25 Dec 2019 09:30:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47jSVW0BkDz3DjC; Wed, 25 Dec 2019 09:30:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 01C0EE627; Wed, 25 Dec 2019 09:30:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBP9UANr039803; Wed, 25 Dec 2019 09:30:10 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBP9UAk4039802; Wed, 25 Dec 2019 09:30:10 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201912250930.xBP9UAk4039802@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Wed, 25 Dec 2019 09:30:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356071 - stable/11/lib/libpcap X-SVN-Group: stable-11 X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: stable/11/lib/libpcap X-SVN-Commit-Revision: 356071 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Dec 2019 09:30:11 -0000 Author: hselasky Date: Wed Dec 25 09:30:10 2019 New Revision: 356071 URL: https://svnweb.freebsd.org/changeset/base/356071 Log: MFC r355800: Install missing pcap(3) manual pages and add missing manpage section substitutions. Submitted by: Martin Beran PR: 237893 Sponsored by: Mellanox Technologies Modified: stable/11/lib/libpcap/Makefile Directory Properties: stable/11/ (props changed) Modified: stable/11/lib/libpcap/Makefile ============================================================================== --- stable/11/lib/libpcap/Makefile Wed Dec 25 09:28:06 2019 (r356070) +++ stable/11/lib/libpcap/Makefile Wed Dec 25 09:30:10 2019 (r356071) @@ -110,7 +110,11 @@ MAN= pcap.3 \ pcap_statustostr.3 \ pcap_strerror.3 \ pcap_tstamp_type_name_to_val.3 \ - pcap_tstamp_type_val_to_name.3 + pcap_tstamp_type_val_to_name.3 \ + pcap-savefile.5 \ + pcap-filter.7 \ + pcap-linktype.7 \ + pcap-tstamp.7 MLINKS= \ pcap_datalink_val_to_name.3 pcap_datalink_val_to_description.3 \ @@ -174,7 +178,7 @@ tokdefs.h: grammar.h .NOMETA ${_page}: if [ -f ${PCAP_DISTDIR}/${_page:S/3$/3pcap/} ]; then \ F=${_page:S/3$/3pcap/}; \ - elif [ -f ${PCAP_DISTDIR}/${_page:S/3$/3pcap.in/} ]; then \ + elif [ -f ${PCAP_DISTDIR}/${_page:S/3$/3pcap.in/} ]; then \ F=${_page:S/3$/3pcap.in/}; \ elif [ -f ${PCAP_DISTDIR}/${_page:S/5$/manfile.in/} ]; then \ F=${_page:S/5$/manfile.in/}; \ @@ -183,7 +187,12 @@ ${_page}: else \ F=${_page:S/7$/manmisc.in/}; \ fi; \ - sed -e 's/3PCAP/3/g' ${PCAP_DISTDIR}/$$F > ${_page} + sed \ + -e 's/3PCAP/3/g' \ + -e 's/@MAN_FILE_FORMATS@/5/g' \ + -e 's/@MAN_MISC_INFO@/7/g' \ + -e 's/@MAN_ADMIN_COMMANDS@/8/g' \ + ${PCAP_DISTDIR}/$$F > ${_page} .endfor .include From owner-svn-src-stable-11@freebsd.org Wed Dec 25 09:33:37 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id EB1B01D82FB; Wed, 25 Dec 2019 09:33:37 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47jSZT61l4z3FRc; Wed, 25 Dec 2019 09:33:37 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C9735E7E5; Wed, 25 Dec 2019 09:33:37 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBP9Xbuc045318; Wed, 25 Dec 2019 09:33:37 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBP9XbqS045317; Wed, 25 Dec 2019 09:33:37 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201912250933.xBP9XbqS045317@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Wed, 25 Dec 2019 09:33:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356073 - stable/11/sys/dev/mlx5 X-SVN-Group: stable-11 X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: stable/11/sys/dev/mlx5 X-SVN-Commit-Revision: 356073 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Dec 2019 09:33:38 -0000 Author: hselasky Date: Wed Dec 25 09:33:37 2019 New Revision: 356073 URL: https://svnweb.freebsd.org/changeset/base/356073 Log: MFC r355447: Fix compilation issue with mlx5core and sparc64 (gcc48): sys/dev/mlx5/mlx5_en/mlx5_en_tx.c:335: error: requested alignment is not a constant Sponsored by: Mellanox Technologies Modified: stable/11/sys/dev/mlx5/qp.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/mlx5/qp.h ============================================================================== --- stable/11/sys/dev/mlx5/qp.h Wed Dec 25 09:32:55 2019 (r356072) +++ stable/11/sys/dev/mlx5/qp.h Wed Dec 25 09:33:37 2019 (r356073) @@ -143,11 +143,8 @@ enum { MLX5_WQE_CTRL_SOLICITED = 1 << 1, }; -enum { - MLX5_SEND_WQE_DS = 16, - MLX5_SEND_WQE_BB = 64, -}; - +#define MLX5_SEND_WQE_DS 16 +#define MLX5_SEND_WQE_BB 64 #define MLX5_SEND_WQEBB_NUM_DS (MLX5_SEND_WQE_BB / MLX5_SEND_WQE_DS) enum { From owner-svn-src-stable-11@freebsd.org Thu Dec 26 16:58:12 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id EBAF01D4BEE; Thu, 26 Dec 2019 16:58:12 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47kGP02Kg0z47RX; Thu, 26 Dec 2019 16:58:12 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4B07F3AB9; Thu, 26 Dec 2019 16:58:12 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBQGwC6O058398; Thu, 26 Dec 2019 16:58:12 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBQGwBiu058397; Thu, 26 Dec 2019 16:58:11 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201912261658.xBQGwBiu058397@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Thu, 26 Dec 2019 16:58:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356090 - stable/11/sys/dev/oce X-SVN-Group: stable-11 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/11/sys/dev/oce X-SVN-Commit-Revision: 356090 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Dec 2019 16:58:13 -0000 Author: markj Date: Thu Dec 26 16:58:11 2019 New Revision: 356090 URL: https://svnweb.freebsd.org/changeset/base/356090 Log: MFC r356047: oce: Disallow the passthrough ioctl for unprivileged users. Modified: stable/11/sys/dev/oce/oce_if.c stable/11/sys/dev/oce/oce_if.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/oce/oce_if.c ============================================================================== --- stable/11/sys/dev/oce/oce_if.c Thu Dec 26 16:56:42 2019 (r356089) +++ stable/11/sys/dev/oce/oce_if.c Thu Dec 26 16:58:11 2019 (r356090) @@ -616,6 +616,9 @@ oce_ioctl(struct ifnet *ifp, u_long command, caddr_t d break; case SIOCGPRIVATE_0: + rc = priv_check(curthread, PRIV_DRIVER); + if (rc != 0) + break; rc = oce_handle_passthrough(ifp, data); break; default: Modified: stable/11/sys/dev/oce/oce_if.h ============================================================================== --- stable/11/sys/dev/oce/oce_if.h Thu Dec 26 16:56:42 2019 (r356089) +++ stable/11/sys/dev/oce/oce_if.h Thu Dec 26 16:58:11 2019 (r356090) @@ -46,6 +46,7 @@ #include #include #include +#include #include #include #include From owner-svn-src-stable-11@freebsd.org Thu Dec 26 18:59:44 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4FFBC1D6E2C; Thu, 26 Dec 2019 18:59:44 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47kK5D1BRJz4DJM; Thu, 26 Dec 2019 18:59:44 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1FC5F50D3; Thu, 26 Dec 2019 18:59:44 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBQIxhAs029634; Thu, 26 Dec 2019 18:59:43 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBQIxhVT029633; Thu, 26 Dec 2019 18:59:43 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201912261859.xBQIxhVT029633@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Thu, 26 Dec 2019 18:59:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356095 - in stable: 11 12 X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11 12 X-SVN-Commit-Revision: 356095 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Dec 2019 18:59:44 -0000 Author: kevans Date: Thu Dec 26 18:59:43 2019 New Revision: 356095 URL: https://svnweb.freebsd.org/changeset/base/356095 Log: MFC r355806, r356091: double-registration of kbd drivers + revert This is a NOP, being recorded to reduce noise when reviewing follow-up in the affected drviers for MFC. Modified: Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: Directory Properties: stable/12/ (props changed) From owner-svn-src-stable-11@freebsd.org Fri Dec 27 03:00:20 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9EAA61E0621; Fri, 27 Dec 2019 03:00:20 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47kWlm3ccWz4bsp; Fri, 27 Dec 2019 03:00:20 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7748DA635; Fri, 27 Dec 2019 03:00:20 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBR30KTd012567; Fri, 27 Dec 2019 03:00:20 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBR30J6F012560; Fri, 27 Dec 2019 03:00:19 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201912270300.xBR30J6F012560@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Fri, 27 Dec 2019 03:00:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356110 - in stable: 11/sys/arm/broadcom/bcm2835 11/sys/arm/freescale/imx 11/sys/arm/ti/am335x 11/sys/arm/versatile 11/sys/dev/terasic/mtl 11/sys/powerpc/ofw 12/sys/arm/broadcom/bcm2835... X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/arm/broadcom/bcm2835 11/sys/arm/freescale/imx 11/sys/arm/ti/am335x 11/sys/arm/versatile 11/sys/dev/terasic/mtl 11/sys/powerpc/ofw 12/sys/arm/broadcom/bcm2835 12/sys/arm/freescale/imx... X-SVN-Commit-Revision: 356110 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Dec 2019 03:00:20 -0000 Author: kevans Date: Fri Dec 27 03:00:18 2019 New Revision: 356110 URL: https://svnweb.freebsd.org/changeset/base/356110 Log: MFC r355936, r356045: remove unused kbd drivers r355936: Kill off dummy kbd drivers As far as I can tell, these are an artifact of times when linker sets couldn't be empty, otherwise the kernel build would fail due to unresolved symbols. hselasky fixed this in r268138, and I've audited the kbd portions to make sure nothing would blow up due to the empty linker set and successfully compiled+ran a kernel with no keyboard support at all. Kill them off now since they're no longer required. r356045: terasic_mtl: kill off final dummy keyboard driver The rest were removed in r355936, which speculated that the cause of this phenomenon was due to an inability to have an empty linker set. The comment included with this one shows that this was, in fact, not the reason. Regardless, syscons no longer seems to have an issue with not having any keyboard drivers and in-fact ignores the keyboard probe anyways. Modified: stable/11/sys/arm/broadcom/bcm2835/bcm2835_fb.c stable/11/sys/arm/freescale/imx/imx51_ipuv3.c stable/11/sys/arm/ti/am335x/am335x_lcd_syscons.c stable/11/sys/arm/versatile/versatile_clcd.c stable/11/sys/dev/terasic/mtl/terasic_mtl_syscons.c stable/11/sys/powerpc/ofw/ofw_syscons.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/arm/broadcom/bcm2835/bcm2835_fb.c stable/12/sys/arm/freescale/imx/imx51_ipuv3.c stable/12/sys/arm/ti/am335x/am335x_lcd_syscons.c stable/12/sys/arm/versatile/versatile_clcd.c stable/12/sys/dev/terasic/mtl/terasic_mtl_syscons.c stable/12/sys/powerpc/ofw/ofw_syscons.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/arm/broadcom/bcm2835/bcm2835_fb.c ============================================================================== --- stable/11/sys/arm/broadcom/bcm2835/bcm2835_fb.c Fri Dec 27 01:50:16 2019 (r356109) +++ stable/11/sys/arm/broadcom/bcm2835/bcm2835_fb.c Fri Dec 27 03:00:18 2019 (r356110) @@ -849,22 +849,3 @@ bcmfb_putm(video_adapter_t *adp, int x, int y, uint8_t return (0); } - -/* - * Define a stub keyboard driver in case one hasn't been - * compiled into the kernel - */ -#include -#include - -static int dummy_kbd_configure(int flags); - -keyboard_switch_t bcmdummysw; - -static int -dummy_kbd_configure(int flags) -{ - - return (0); -} -KEYBOARD_DRIVER(bcmdummy, bcmdummysw, dummy_kbd_configure); Modified: stable/11/sys/arm/freescale/imx/imx51_ipuv3.c ============================================================================== --- stable/11/sys/arm/freescale/imx/imx51_ipuv3.c Fri Dec 27 01:50:16 2019 (r356109) +++ stable/11/sys/arm/freescale/imx/imx51_ipuv3.c Fri Dec 27 03:00:18 2019 (r356110) @@ -876,22 +876,3 @@ ipu3fb_putm(video_adapter_t *adp, int x, int y, uint8_ return (0); } - -/* - * Define a stub keyboard driver in case one hasn't been - * compiled into the kernel - */ -#include -#include - -static int dummy_kbd_configure(int flags); - -keyboard_switch_t ipu3dummysw; - -static int -dummy_kbd_configure(int flags) -{ - - return (0); -} -KEYBOARD_DRIVER(ipu3dummy, ipu3dummysw, dummy_kbd_configure); Modified: stable/11/sys/arm/ti/am335x/am335x_lcd_syscons.c ============================================================================== --- stable/11/sys/arm/ti/am335x/am335x_lcd_syscons.c Fri Dec 27 01:50:16 2019 (r356109) +++ stable/11/sys/arm/ti/am335x/am335x_lcd_syscons.c Fri Dec 27 03:00:18 2019 (r356110) @@ -769,22 +769,3 @@ int am335x_lcd_syscons_setup(vm_offset_t vaddr, vm_pad return (0); } - -/* - * Define a stub keyboard driver in case one hasn't been - * compiled into the kernel - */ -#include -#include - -static int dummy_kbd_configure(int flags); - -keyboard_switch_t am335x_dummysw; - -static int -dummy_kbd_configure(int flags) -{ - - return (0); -} -KEYBOARD_DRIVER(am335x_dummy, am335x_dummysw, dummy_kbd_configure); Modified: stable/11/sys/arm/versatile/versatile_clcd.c ============================================================================== --- stable/11/sys/arm/versatile/versatile_clcd.c Fri Dec 27 01:50:16 2019 (r356109) +++ stable/11/sys/arm/versatile/versatile_clcd.c Fri Dec 27 03:00:18 2019 (r356110) @@ -921,22 +921,3 @@ versatilefb_putm(video_adapter_t *adp, int x, int y, u return (0); } - -/* - * Define a stub keyboard driver in case one hasn't been - * compiled into the kernel - */ -#include -#include - -static int dummy_kbd_configure(int flags); - -keyboard_switch_t bcmdummysw; - -static int -dummy_kbd_configure(int flags) -{ - - return (0); -} -KEYBOARD_DRIVER(bcmdummy, bcmdummysw, dummy_kbd_configure); Modified: stable/11/sys/dev/terasic/mtl/terasic_mtl_syscons.c ============================================================================== --- stable/11/sys/dev/terasic/mtl/terasic_mtl_syscons.c Fri Dec 27 01:50:16 2019 (r356109) +++ stable/11/sys/dev/terasic/mtl/terasic_mtl_syscons.c Fri Dec 27 03:00:18 2019 (r356110) @@ -404,22 +404,6 @@ terasic_mtl_vidsw_putm(video_adapter_t *adp, int x, in return (ENODEV); } -/* - * XXXRW: For historical reasons, syscons can't register video consoles - * without a keyboard implementation. Provide a dummy. - */ -static keyboard_switch_t terasic_mtl_keyboard_switch; - -static int -terasic_mtl_kbd_configure(int flags) -{ - - return (0); -} - -KEYBOARD_DRIVER(mtl_kbd, terasic_mtl_keyboard_switch, - terasic_mtl_kbd_configure); - int terasic_mtl_syscons_attach(struct terasic_mtl_softc *sc) { Modified: stable/11/sys/powerpc/ofw/ofw_syscons.c ============================================================================== --- stable/11/sys/powerpc/ofw/ofw_syscons.c Fri Dec 27 01:50:16 2019 (r356109) +++ stable/11/sys/powerpc/ofw/ofw_syscons.c Fri Dec 27 03:00:18 2019 (r356110) @@ -1047,25 +1047,6 @@ static devclass_t sc_devclass; DRIVER_MODULE(ofwfb, nexus, ofwfb_sc_driver, sc_devclass, 0, 0); /* - * Define a stub keyboard driver in case one hasn't been - * compiled into the kernel - */ -#include -#include - -static int dummy_kbd_configure(int flags); - -keyboard_switch_t dummysw; - -static int -dummy_kbd_configure(int flags) -{ - - return (0); -} -KEYBOARD_DRIVER(dummy, dummysw, dummy_kbd_configure); - -/* * Utility routines from */ void From owner-svn-src-stable-11@freebsd.org Fri Dec 27 17:55:57 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8D8311CAC63; Fri, 27 Dec 2019 17:55:57 +0000 (UTC) (envelope-from dougm@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47kvd93C48z4NBk; Fri, 27 Dec 2019 17:55:57 +0000 (UTC) (envelope-from dougm@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 64B7B1C7E9; Fri, 27 Dec 2019 17:55:57 +0000 (UTC) (envelope-from dougm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBRHtvjI046972; Fri, 27 Dec 2019 17:55:57 GMT (envelope-from dougm@FreeBSD.org) Received: (from dougm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBRHtvLW046971; Fri, 27 Dec 2019 17:55:57 GMT (envelope-from dougm@FreeBSD.org) Message-Id: <201912271755.xBRHtvLW046971@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dougm set sender to dougm@FreeBSD.org using -f From: Doug Moore Date: Fri, 27 Dec 2019 17:55:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356131 - stable/11/sys/fs/tmpfs X-SVN-Group: stable-11 X-SVN-Commit-Author: dougm X-SVN-Commit-Paths: stable/11/sys/fs/tmpfs X-SVN-Commit-Revision: 356131 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Dec 2019 17:55:57 -0000 Author: dougm Date: Fri Dec 27 17:55:56 2019 New Revision: 356131 URL: https://svnweb.freebsd.org/changeset/base/356131 Log: MFC r355913 Allow #include to compile when _KERNEL is not #defined. Modified: stable/11/sys/fs/tmpfs/tmpfs.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/fs/tmpfs/tmpfs.h ============================================================================== --- stable/11/sys/fs/tmpfs/tmpfs.h Fri Dec 27 17:41:41 2019 (r356130) +++ stable/11/sys/fs/tmpfs/tmpfs.h Fri Dec 27 17:55:56 2019 (r356131) @@ -499,8 +499,6 @@ size_t tmpfs_mem_avail(void); size_t tmpfs_pages_used(struct tmpfs_mount *tmp); -#endif - /* * Macros/functions to convert from generic data structures to tmpfs * specific ones. @@ -542,5 +540,6 @@ tmpfs_use_nc(struct vnode *vp) return (!(VFS_TO_TMPFS(vp->v_mount)->tm_nonc)); } +#endif /* _KERNEL */ #endif /* _FS_TMPFS_TMPFS_H_ */ From owner-svn-src-stable-11@freebsd.org Fri Dec 27 18:53:08 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 27E1D1CC015; Fri, 27 Dec 2019 18:53:08 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47kwv809z9z4RHb; Fri, 27 Dec 2019 18:53:08 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 016571D290; Fri, 27 Dec 2019 18:53:08 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBRIr7MW082906; Fri, 27 Dec 2019 18:53:07 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBRIr7kD082905; Fri, 27 Dec 2019 18:53:07 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201912271853.xBRIr7kD082905@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 27 Dec 2019 18:53:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356133 - stable/11/sbin/devd X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sbin/devd X-SVN-Commit-Revision: 356133 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Dec 2019 18:53:08 -0000 Author: mav Date: Fri Dec 27 18:53:07 2019 New Revision: 356133 URL: https://svnweb.freebsd.org/changeset/base/356133 Log: MFC r355718: Fix $() handling, broken since the beginning at r108014. Due to off-by-one error in brackets counting it consumed the rest of the string, preventing later variables expansions. Modified: stable/11/sbin/devd/devd.cc Directory Properties: stable/11/ (props changed) Modified: stable/11/sbin/devd/devd.cc ============================================================================== --- stable/11/sbin/devd/devd.cc Fri Dec 27 18:52:43 2019 (r356132) +++ stable/11/sbin/devd/devd.cc Fri Dec 27 18:53:07 2019 (r356133) @@ -637,15 +637,15 @@ config::expand_one(const char *&src, string &dst) // it through. if (*src == '(') { dst += '$'; - count = 1; + count = 0; /* If the string ends before ) is matched , return. */ - while (count > 0 && *src) { + do { if (*src == ')') count--; else if (*src == '(') count++; dst += *src++; - } + } while (count > 0 && *src); return; } From owner-svn-src-stable-11@freebsd.org Sat Dec 28 22:32:15 2019 Return-Path: Delivered-To: svn-src-stable-11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8F8951CA4C7; Sat, 28 Dec 2019 22:32:15 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47ldjW3LQTz3KWg; Sat, 28 Dec 2019 22:32:15 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6DF187FF1; Sat, 28 Dec 2019 22:32:15 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xBSMWFOP088591; Sat, 28 Dec 2019 22:32:15 GMT (envelope-from rmacklem@FreeBSD.org) Received: (from rmacklem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xBSMWErK088587; Sat, 28 Dec 2019 22:32:14 GMT (envelope-from rmacklem@FreeBSD.org) Message-Id: <201912282232.xBSMWErK088587@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rmacklem set sender to rmacklem@FreeBSD.org using -f From: Rick Macklem Date: Sat, 28 Dec 2019 22:32:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r356161 - stable/11/sys/fs/nfs X-SVN-Group: stable-11 X-SVN-Commit-Author: rmacklem X-SVN-Commit-Paths: stable/11/sys/fs/nfs X-SVN-Commit-Revision: 356161 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 11-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Dec 2019 22:32:15 -0000 Author: rmacklem Date: Sat Dec 28 22:32:14 2019 New Revision: 356161 URL: https://svnweb.freebsd.org/changeset/base/356161 Log: MFC: r355194 Fix two races while handling nfsuserd daemon start/stop. A crash was reported where the nr_client field was NULL during an upcall to the nfsuserd daemon. Since nr_client == NULL only occurs when the nfsuserd daemon is being shut down, it appeared to be caused by a race between doing an upcall and the daemon shutting down. By inspection two races were identified: 1 - The nfsrv_nfsuserd variable is used to indicate whether or not the daemon is running. However it did not handle the intermediate phase where the daemon is starting or stopping. This was fixed by making nfsrv_nfsuserd tri-state and having the functions that are called during start/stop to obey the intermediate state. 2 - nfsrv_nfsuserd was checked to see that the daemon was running at the beginning of an upcall, but nothing prevented the daemon from being shut down while an upcall was still in progress. This race probably caused the crash. The patch fixes this by adding a count of upcalls in progress and having the shut down function delay until this count goes to zero before getting rid of nr_client and related data used by an upcall. Modified: stable/11/sys/fs/nfs/nfs.h stable/11/sys/fs/nfs/nfs_commonport.c stable/11/sys/fs/nfs/nfs_commonsubs.c stable/11/sys/fs/nfs/nfsport.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/fs/nfs/nfs.h ============================================================================== --- stable/11/sys/fs/nfs/nfs.h Sat Dec 28 22:24:16 2019 (r356160) +++ stable/11/sys/fs/nfs/nfs.h Sat Dec 28 22:32:14 2019 (r356161) @@ -751,6 +751,9 @@ struct nfsslot { struct mbuf *nfssl_reply; }; +/* Enumerated type for nfsuserd state. */ +typedef enum { NOTRUNNING=0, STARTSTOP=1, RUNNING=2 } nfsuserd_state; + #endif /* _KERNEL */ #endif /* _NFS_NFS_H */ Modified: stable/11/sys/fs/nfs/nfs_commonport.c ============================================================================== --- stable/11/sys/fs/nfs/nfs_commonport.c Sat Dec 28 22:24:16 2019 (r356160) +++ stable/11/sys/fs/nfs/nfs_commonport.c Sat Dec 28 22:32:14 2019 (r356161) @@ -51,7 +51,7 @@ __FBSDID("$FreeBSD$"); #include extern int nfscl_ticks; -extern int nfsrv_nfsuserd; +extern nfsuserd_state nfsrv_nfsuserd; extern struct nfssockreq nfsrv_nfsuserdsock; extern void (*nfsd_call_recall)(struct vnode *, int, struct ucred *, struct thread *); @@ -713,7 +713,7 @@ nfscommon_modevent(module_t mod, int type, void *data) break; case MOD_UNLOAD: - if (newnfs_numnfsd != 0 || nfsrv_nfsuserd != 0 || + if (newnfs_numnfsd != 0 || nfsrv_nfsuserd != NOTRUNNING || nfs_numnfscbd != 0) { error = EBUSY; break; Modified: stable/11/sys/fs/nfs/nfs_commonsubs.c ============================================================================== --- stable/11/sys/fs/nfs/nfs_commonsubs.c Sat Dec 28 22:24:16 2019 (r356160) +++ stable/11/sys/fs/nfs/nfs_commonsubs.c Sat Dec 28 22:32:14 2019 (r356161) @@ -62,7 +62,8 @@ struct timeval nfsboottime; /* Copy boottime once, so int nfscl_ticks; int nfsrv_useacl = 1; struct nfssockreq nfsrv_nfsuserdsock; -int nfsrv_nfsuserd = 0; +nfsuserd_state nfsrv_nfsuserd = NOTRUNNING; +static int nfsrv_userdupcalls = 0; struct nfsreqhead nfsd_reqq; uid_t nfsrv_defaultuid = UID_NOBODY; gid_t nfsrv_defaultgid = GID_NOGROUP; @@ -3105,18 +3106,22 @@ nfsrv_nfsuserdport(struct nfsuserd_args *nargs, NFSPRO int error; NFSLOCKNAMEID(); - if (nfsrv_nfsuserd) { + if (nfsrv_nfsuserd != NOTRUNNING) { NFSUNLOCKNAMEID(); error = EPERM; goto out; } - nfsrv_nfsuserd = 1; - NFSUNLOCKNAMEID(); + nfsrv_nfsuserd = STARTSTOP; /* * Set up the socket record and connect. + * Set nr_client NULL before unlocking, just to ensure that no other + * process/thread/core will use a bogus old value. This could only + * occur if the use of the nameid lock to protect nfsrv_nfsuserd is + * broken. */ rp = &nfsrv_nfsuserdsock; rp->nr_client = NULL; + NFSUNLOCKNAMEID(); rp->nr_sotype = SOCK_DGRAM; rp->nr_soproto = IPPROTO_UDP; rp->nr_lock = (NFSR_RESERVEDPORT | NFSR_LOCALHOST); @@ -3152,9 +3157,15 @@ nfsrv_nfsuserdport(struct nfsuserd_args *nargs, NFSPRO rp->nr_vers = RPCNFSUSERD_VERS; if (error == 0) error = newnfs_connect(NULL, rp, NFSPROCCRED(p), p, 0); - if (error) { + if (error == 0) { + NFSLOCKNAMEID(); + nfsrv_nfsuserd = RUNNING; + NFSUNLOCKNAMEID(); + } else { free(rp->nr_nam, M_SONAME); - nfsrv_nfsuserd = 0; + NFSLOCKNAMEID(); + nfsrv_nfsuserd = NOTRUNNING; + NFSUNLOCKNAMEID(); } out: NFSEXITCODE(error); @@ -3169,14 +3180,21 @@ nfsrv_nfsuserddelport(void) { NFSLOCKNAMEID(); - if (nfsrv_nfsuserd == 0) { + if (nfsrv_nfsuserd != RUNNING) { NFSUNLOCKNAMEID(); return; } - nfsrv_nfsuserd = 0; + nfsrv_nfsuserd = STARTSTOP; + /* Wait for all upcalls to complete. */ + while (nfsrv_userdupcalls > 0) + msleep(&nfsrv_userdupcalls, NFSNAMEIDMUTEXPTR, PVFS, + "nfsupcalls", 0); NFSUNLOCKNAMEID(); newnfs_disconnect(&nfsrv_nfsuserdsock); NFSSOCKADDRFREE(nfsrv_nfsuserdsock.nr_nam); + NFSLOCKNAMEID(); + nfsrv_nfsuserd = NOTRUNNING; + NFSUNLOCKNAMEID(); } /* @@ -3195,12 +3213,19 @@ nfsrv_getuser(int procnum, uid_t uid, gid_t gid, char int error; NFSLOCKNAMEID(); - if (nfsrv_nfsuserd == 0) { + if (nfsrv_nfsuserd != RUNNING) { NFSUNLOCKNAMEID(); error = EPERM; goto out; } + /* + * Maintain a count of upcalls in progress, so that nfsrv_X() + * can wait until no upcalls are in progress. + */ + nfsrv_userdupcalls++; NFSUNLOCKNAMEID(); + KASSERT(nfsrv_userdupcalls > 0, + ("nfsrv_getuser: non-positive upcalls")); nd = &nfsd; cred = newnfs_getcred(); nd->nd_flag = ND_GSSINITREPLY; @@ -3219,6 +3244,10 @@ nfsrv_getuser(int procnum, uid_t uid, gid_t gid, char } error = newnfs_request(nd, NULL, NULL, &nfsrv_nfsuserdsock, NULL, NULL, cred, RPCPROG_NFSUSERD, RPCNFSUSERD_VERS, NULL, 0, NULL, NULL); + NFSLOCKNAMEID(); + if (--nfsrv_userdupcalls == 0 && nfsrv_nfsuserd == STARTSTOP) + wakeup(&nfsrv_userdupcalls); + NFSUNLOCKNAMEID(); NFSFREECRED(cred); if (!error) { mbuf_freem(nd->nd_mrep); Modified: stable/11/sys/fs/nfs/nfsport.h ============================================================================== --- stable/11/sys/fs/nfs/nfsport.h Sat Dec 28 22:24:16 2019 (r356160) +++ stable/11/sys/fs/nfs/nfsport.h Sat Dec 28 22:32:14 2019 (r356161) @@ -678,6 +678,7 @@ void nfsrvd_rcv(struct socket *, void *, int); #define NFSLOCKSOCK() mtx_lock(&nfs_slock_mutex) #define NFSUNLOCKSOCK() mtx_unlock(&nfs_slock_mutex) #define NFSNAMEIDMUTEX extern struct mtx nfs_nameid_mutex +#define NFSNAMEIDMUTEXPTR (&nfs_nameid_mutex) #define NFSLOCKNAMEID() mtx_lock(&nfs_nameid_mutex) #define NFSUNLOCKNAMEID() mtx_unlock(&nfs_nameid_mutex) #define NFSNAMEIDREQUIRED() mtx_assert(&nfs_nameid_mutex, MA_OWNED)