From owner-svn-src-all@freebsd.org Sun Apr 7 08:58:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EDDB0157BF2F; Sun, 7 Apr 2019 08:58:09 +0000 (UTC) (envelope-from kib@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 94C6388C7E; Sun, 7 Apr 2019 08:58:09 +0000 (UTC) (envelope-from kib@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 832B59D8E; Sun, 7 Apr 2019 08:58:09 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x378w95J095056; Sun, 7 Apr 2019 08:58:09 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x378w9b3095055; Sun, 7 Apr 2019 08:58:09 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904070858.x378w9b3095055@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 7 Apr 2019 08:58:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r345997 - head/sys/dev/pci X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/dev/pci X-SVN-Commit-Revision: 345997 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 94C6388C7E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 08:58:10 -0000 Author: kib Date: Sun Apr 7 08:58:09 2019 New Revision: 345997 URL: https://svnweb.freebsd.org/changeset/base/345997 Log: Give new home to the comment from ppt_pci_reset(), explaining a nuance of power reset. Noted by: soralx@cydem.org Sponsored by: Mellanox Technologies MFC after: 12 days Modified: head/sys/dev/pci/pci.c Modified: head/sys/dev/pci/pci.c ============================================================================== --- head/sys/dev/pci/pci.c Sat Apr 6 23:35:23 2019 (r345996) +++ head/sys/dev/pci/pci.c Sun Apr 7 08:58:09 2019 (r345997) @@ -6394,6 +6394,11 @@ pcie_flr(device_t dev, u_int max_delay, bool force) return (true); } +/* + * Attempt a power-management reset by cycling the device in/out of D3 + * state. PCI spec says we can only go into D3 state from D0 state. + * Transition from D[12] into D0 before going to D3 state. + */ int pci_power_reset(device_t dev) { From owner-svn-src-all@freebsd.org Sun Apr 7 11:48:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 26B11157E4F4; Sun, 7 Apr 2019 11:48:42 +0000 (UTC) (envelope-from tsoome@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 AADD58CF2A; Sun, 7 Apr 2019 11:48:41 +0000 (UTC) (envelope-from tsoome@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 98184B9F9; Sun, 7 Apr 2019 11:48:41 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37BmfPg084573; Sun, 7 Apr 2019 11:48:41 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37BmfId084572; Sun, 7 Apr 2019 11:48:41 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <201904071148.x37BmfId084572@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Sun, 7 Apr 2019 11:48:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r345998 - head/stand/common X-SVN-Group: head X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: head/stand/common X-SVN-Commit-Revision: 345998 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AADD58CF2A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 11:48:42 -0000 Author: tsoome Date: Sun Apr 7 11:48:41 2019 New Revision: 345998 URL: https://svnweb.freebsd.org/changeset/base/345998 Log: loader: malloc+bzero is calloc Replace malloc+bzero in module.c with calloc. MFC after: 1w Modified: head/stand/common/module.c Modified: head/stand/common/module.c ============================================================================== --- head/stand/common/module.c Sun Apr 7 08:58:09 2019 (r345997) +++ head/stand/common/module.c Sun Apr 7 11:48:41 2019 (r345998) @@ -926,10 +926,9 @@ file_addmodule(struct preloaded_file *fp, char *modnam mp = file_findmodule(fp, modname, &mdepend); if (mp) return (EEXIST); - mp = malloc(sizeof(struct kernel_module)); + mp = calloc(1, sizeof(struct kernel_module)); if (mp == NULL) return (ENOMEM); - bzero(mp, sizeof(struct kernel_module)); mp->m_name = strdup(modname); mp->m_version = version; mp->m_fp = fp; @@ -980,12 +979,8 @@ file_discard(struct preloaded_file *fp) struct preloaded_file * file_alloc(void) { - struct preloaded_file *fp; - if ((fp = malloc(sizeof(struct preloaded_file))) != NULL) { - bzero(fp, sizeof(struct preloaded_file)); - } - return (fp); + return (calloc(1, sizeof(struct preloaded_file))); } /* From owner-svn-src-all@freebsd.org Sun Apr 7 11:50:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A118F157E578; Sun, 7 Apr 2019 11:50:42 +0000 (UTC) (envelope-from tsoome@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 486DF8D097; Sun, 7 Apr 2019 11:50:42 +0000 (UTC) (envelope-from tsoome@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 23EE0BCCB; Sun, 7 Apr 2019 11:50:42 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37BogGI084728; Sun, 7 Apr 2019 11:50:42 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37BogKs084727; Sun, 7 Apr 2019 11:50:42 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <201904071150.x37BogKs084727@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Sun, 7 Apr 2019 11:50:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r345999 - head/stand/common X-SVN-Group: head X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: head/stand/common X-SVN-Commit-Revision: 345999 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 486DF8D097 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 11:50:42 -0000 Author: tsoome Date: Sun Apr 7 11:50:41 2019 New Revision: 345999 URL: https://svnweb.freebsd.org/changeset/base/345999 Log: loader: file_addmodule should check for memory allocation strdup() can return NULL. MFC after: 1w Modified: head/stand/common/module.c Modified: head/stand/common/module.c ============================================================================== --- head/stand/common/module.c Sun Apr 7 11:48:41 2019 (r345998) +++ head/stand/common/module.c Sun Apr 7 11:50:41 2019 (r345999) @@ -930,6 +930,10 @@ file_addmodule(struct preloaded_file *fp, char *modnam if (mp == NULL) return (ENOMEM); mp->m_name = strdup(modname); + if (mp->m_name == NULL) { + free(mp); + return (ENOMEM); + } mp->m_version = version; mp->m_fp = fp; mp->m_next = fp->f_modules; From owner-svn-src-all@freebsd.org Sun Apr 7 11:55:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 904FD157E747; Sun, 7 Apr 2019 11:55:12 +0000 (UTC) (envelope-from tsoome@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 3879C8D491; Sun, 7 Apr 2019 11:55:12 +0000 (UTC) (envelope-from tsoome@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 12E81BD5D; Sun, 7 Apr 2019 11:55:12 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37BtB9Z089710; Sun, 7 Apr 2019 11:55:11 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37BtBQL089709; Sun, 7 Apr 2019 11:55:11 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <201904071155.x37BtBQL089709@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Sun, 7 Apr 2019 11:55:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346000 - head/stand/common X-SVN-Group: head X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: head/stand/common X-SVN-Commit-Revision: 346000 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3879C8D491 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 11:55:12 -0000 Author: tsoome Date: Sun Apr 7 11:55:11 2019 New Revision: 346000 URL: https://svnweb.freebsd.org/changeset/base/346000 Log: loader: remove pointer checks before free() in module.c free() does check for NULL argument, remove duplicate checks. MFC after: 1w Modified: head/stand/common/module.c Modified: head/stand/common/module.c ============================================================================== --- head/stand/common/module.c Sun Apr 7 11:50:41 2019 (r345999) +++ head/stand/common/module.c Sun Apr 7 11:55:11 2019 (r346000) @@ -534,8 +534,7 @@ mod_load(char *modname, struct mod_depend *verinfo, in mp = file_findmodule(NULL, modname, verinfo); if (mp) { #ifdef moduleargs - if (mp->m_args) - free(mp->m_args); + free(mp->m_args); mp->m_args = unargv(argc, argv); #endif snprintf(command_errbuf, sizeof(command_errbuf), @@ -961,18 +960,14 @@ file_discard(struct preloaded_file *fp) } mp = fp->f_modules; while (mp) { - if (mp->m_name) - free(mp->m_name); + free(mp->m_name); mp1 = mp; mp = mp->m_next; free(mp1); } - if (fp->f_name != NULL) - free(fp->f_name); - if (fp->f_type != NULL) - free(fp->f_type); - if (fp->f_args != NULL) - free(fp->f_args); + free(fp->f_name); + free(fp->f_type); + free(fp->f_args); free(fp); } @@ -1055,10 +1050,8 @@ moduledir_readhints(struct moduledir *mdp) return; bad: close(fd); - if (mdp->d_hints) { - free(mdp->d_hints); - mdp->d_hints = NULL; - } + free(mdp->d_hints); + mdp->d_hints = NULL; mdp->d_flags |= MDIR_NOHINTS; return; } @@ -1119,8 +1112,7 @@ moduledir_rebuild(void) if ((mdp->d_flags & MDIR_REMOVED) == 0) { mdp = STAILQ_NEXT(mdp, d_link); } else { - if (mdp->d_hints) - free(mdp->d_hints); + free(mdp->d_hints); mtmp = mdp; mdp = STAILQ_NEXT(mdp, d_link); STAILQ_REMOVE(&moduledir_list, mtmp, moduledir, d_link); From owner-svn-src-all@freebsd.org Sun Apr 7 12:10:20 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 90CB115314B1; Sun, 7 Apr 2019 12:10:20 +0000 (UTC) (envelope-from tsoome@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 2ACFE8DF1F; Sun, 7 Apr 2019 12:10:20 +0000 (UTC) (envelope-from tsoome@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 B6C2ABF07; Sun, 7 Apr 2019 12:10:19 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37CAJod095540; Sun, 7 Apr 2019 12:10:19 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37CAJHE095539; Sun, 7 Apr 2019 12:10:19 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <201904071210.x37CAJHE095539@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Sun, 7 Apr 2019 12:10:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346001 - head/stand/common X-SVN-Group: head X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: head/stand/common X-SVN-Commit-Revision: 346001 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2ACFE8DF1F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 12:10:20 -0000 Author: tsoome Date: Sun Apr 7 12:10:19 2019 New Revision: 346001 URL: https://svnweb.freebsd.org/changeset/base/346001 Log: loader: file_addmetadata() should check for memory allocation malloc() can return NULL. MFC after: 1w Modified: head/stand/common/module.c Modified: head/stand/common/module.c ============================================================================== --- head/stand/common/module.c Sun Apr 7 11:55:11 2019 (r346000) +++ head/stand/common/module.c Sun Apr 7 12:10:19 2019 (r346001) @@ -677,10 +677,12 @@ file_addmetadata(struct preloaded_file *fp, int type, struct file_metadata *md; md = malloc(sizeof(struct file_metadata) - sizeof(md->md_data) + size); - md->md_size = size; - md->md_type = type; - bcopy(p, md->md_data, size); - md->md_next = fp->f_metadata; + if (md != NULL) { + md->md_size = size; + md->md_type = type; + bcopy(p, md->md_data, size); + md->md_next = fp->f_metadata; + } fp->f_metadata = md; } From owner-svn-src-all@freebsd.org Sun Apr 7 12:20:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 339F015317A7; Sun, 7 Apr 2019 12:20:18 +0000 (UTC) (envelope-from tsoome@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 C58A08E350; Sun, 7 Apr 2019 12:20:17 +0000 (UTC) (envelope-from tsoome@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 98F90C0AA; Sun, 7 Apr 2019 12:20:17 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37CKHcg001204; Sun, 7 Apr 2019 12:20:17 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37CKHeP001203; Sun, 7 Apr 2019 12:20:17 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <201904071220.x37CKHeP001203@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Sun, 7 Apr 2019 12:20:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346002 - head/stand/common X-SVN-Group: head X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: head/stand/common X-SVN-Commit-Revision: 346002 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C58A08E350 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 12:20:18 -0000 Author: tsoome Date: Sun Apr 7 12:20:17 2019 New Revision: 346002 URL: https://svnweb.freebsd.org/changeset/base/346002 Log: loader: mod_loadkld() error: we previously assumed 'last_file' could be null The last_file variable is used to reset the loadaddr variable back to original value; however, it is possible the last_file is NULL, so we can not blindly trust it. But then again, we can just save the original loadaddr and use the saved value for recovery. MFC after: 1w Modified: head/stand/common/module.c Modified: head/stand/common/module.c ============================================================================== --- head/stand/common/module.c Sun Apr 7 12:10:19 2019 (r346001) +++ head/stand/common/module.c Sun Apr 7 12:20:17 2019 (r346002) @@ -559,9 +559,10 @@ mod_load(char *modname, struct mod_depend *verinfo, in int mod_loadkld(const char *kldname, int argc, char *argv[]) { - struct preloaded_file *fp, *last_file; - int err; + struct preloaded_file *fp; + int err; char *filename; + vm_offset_t loadaddr_saved; /* * Get fully qualified KLD name @@ -582,22 +583,19 @@ mod_loadkld(const char *kldname, int argc, char *argv[ free(filename); return (0); } - for (last_file = preloaded_files; - last_file != NULL && last_file->f_next != NULL; - last_file = last_file->f_next) - ; do { err = file_load(filename, loadaddr, &fp); if (err) break; fp->f_args = unargv(argc, argv); + loadaddr_saved = loadaddr; loadaddr = fp->f_addr + fp->f_size; file_insert_tail(fp); /* Add to the list of loaded files */ if (file_load_dependencies(fp) != 0) { err = ENOENT; last_file->f_next = NULL; - loadaddr = last_file->f_addr + last_file->f_size; + loadaddr = loadaddr_saved; fp = NULL; break; } From owner-svn-src-all@freebsd.org Sun Apr 7 12:57:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A612E155185E; Sun, 7 Apr 2019 12:57:39 +0000 (UTC) (envelope-from avos@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 47B248F57B; Sun, 7 Apr 2019 12:57:39 +0000 (UTC) (envelope-from avos@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 1F342C756; Sun, 7 Apr 2019 12:57:39 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37Cvcn4022012; Sun, 7 Apr 2019 12:57:38 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37CvcKL022010; Sun, 7 Apr 2019 12:57:38 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201904071257.x37CvcKL022010@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 7 Apr 2019 12:57:38 +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: r346003 - in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Commit-Revision: 346003 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 47B248F57B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 12:57:39 -0000 Author: avos Date: Sun Apr 7 12:57:38 2019 New Revision: 346003 URL: https://svnweb.freebsd.org/changeset/base/346003 Log: MFC r345729: urtw(4): export TSF timestamp for received frames via radiotap Was tested with Netgear WG111 v3 (RTL8187B), STA mode. Modified: stable/11/sys/dev/usb/wlan/if_urtw.c stable/11/sys/dev/usb/wlan/if_urtwvar.h Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/dev/usb/wlan/if_urtw.c stable/12/sys/dev/usb/wlan/if_urtwvar.h Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/dev/usb/wlan/if_urtw.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_urtw.c Sun Apr 7 12:20:17 2019 (r346002) +++ stable/11/sys/dev/usb/wlan/if_urtw.c Sun Apr 7 12:57:38 2019 (r346003) @@ -3937,6 +3937,7 @@ urtw_rxeof(struct usb_xfer *xfer, struct urtw_data *da struct urtw_softc *sc = data->sc; struct ieee80211com *ic = &sc->sc_ic; uint8_t noise = 0, rate; + uint64_t mactime; usbd_xfer_status(xfer, &actlen, NULL, NULL, NULL); @@ -3956,6 +3957,9 @@ urtw_rxeof(struct usb_xfer *xfer, struct urtw_data *da /* XXX correct? */ rssi = rx->rssi & URTW_RX_RSSI_MASK; noise = rx->noise; + + if (ieee80211_radiotap_active(ic)) + mactime = rx->mactime; } else { struct urtw_8187l_rxhdr *rx; @@ -3972,6 +3976,9 @@ urtw_rxeof(struct usb_xfer *xfer, struct urtw_data *da /* XXX correct? */ rssi = rx->rssi & URTW_RX_8187L_RSSI_MASK; noise = rx->noise; + + if (ieee80211_radiotap_active(ic)) + mactime = rx->mactime; } if (flen < IEEE80211_ACK_LEN) @@ -3991,6 +3998,7 @@ urtw_rxeof(struct usb_xfer *xfer, struct urtw_data *da if (ieee80211_radiotap_active(ic)) { struct urtw_rx_radiotap_header *tap = &sc->sc_rxtap; + tap->wr_tsf = mactime; tap->wr_flags = 0; tap->wr_dbm_antsignal = (int8_t)rssi; } Modified: stable/11/sys/dev/usb/wlan/if_urtwvar.h ============================================================================== --- stable/11/sys/dev/usb/wlan/if_urtwvar.h Sun Apr 7 12:20:17 2019 (r346002) +++ stable/11/sys/dev/usb/wlan/if_urtwvar.h Sun Apr 7 12:57:38 2019 (r346003) @@ -55,6 +55,7 @@ typedef STAILQ_HEAD(, urtw_data) urtw_datahead; struct urtw_rx_radiotap_header { struct ieee80211_radiotap_header wr_ihdr; + uint64_t wr_tsf; uint8_t wr_flags; uint8_t wr_pad; uint16_t wr_chan_freq; @@ -63,7 +64,8 @@ struct urtw_rx_radiotap_header { } __packed __aligned(8); #define URTW_RX_RADIOTAP_PRESENT \ - ((1 << IEEE80211_RADIOTAP_FLAGS) | \ + ((1 << IEEE80211_RADIOTAP_TSFT) | \ + (1 << IEEE80211_RADIOTAP_FLAGS) | \ (1 << IEEE80211_RADIOTAP_CHANNEL) | \ (1 << IEEE80211_RADIOTAP_DBM_ANTSIGNAL)) From owner-svn-src-all@freebsd.org Sun Apr 7 12:57:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 68B1C1551862; Sun, 7 Apr 2019 12:57:40 +0000 (UTC) (envelope-from avos@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 067838F57C; Sun, 7 Apr 2019 12:57:40 +0000 (UTC) (envelope-from avos@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 BBFEDC757; Sun, 7 Apr 2019 12:57:39 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37Cvdub022019; Sun, 7 Apr 2019 12:57:39 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37CvdSD022017; Sun, 7 Apr 2019 12:57:39 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201904071257.x37CvdSD022017@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 7 Apr 2019 12:57:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346003 - in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Commit-Revision: 346003 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 067838F57C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 12:57:40 -0000 Author: avos Date: Sun Apr 7 12:57:38 2019 New Revision: 346003 URL: https://svnweb.freebsd.org/changeset/base/346003 Log: MFC r345729: urtw(4): export TSF timestamp for received frames via radiotap Was tested with Netgear WG111 v3 (RTL8187B), STA mode. Modified: stable/12/sys/dev/usb/wlan/if_urtw.c stable/12/sys/dev/usb/wlan/if_urtwvar.h Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sys/dev/usb/wlan/if_urtw.c stable/11/sys/dev/usb/wlan/if_urtwvar.h Directory Properties: stable/11/ (props changed) Modified: stable/12/sys/dev/usb/wlan/if_urtw.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_urtw.c Sun Apr 7 12:20:17 2019 (r346002) +++ stable/12/sys/dev/usb/wlan/if_urtw.c Sun Apr 7 12:57:38 2019 (r346003) @@ -3932,6 +3932,7 @@ urtw_rxeof(struct usb_xfer *xfer, struct urtw_data *da struct urtw_softc *sc = data->sc; struct ieee80211com *ic = &sc->sc_ic; uint8_t noise = 0, rate; + uint64_t mactime; usbd_xfer_status(xfer, &actlen, NULL, NULL, NULL); @@ -3951,6 +3952,9 @@ urtw_rxeof(struct usb_xfer *xfer, struct urtw_data *da /* XXX correct? */ rssi = rx->rssi & URTW_RX_RSSI_MASK; noise = rx->noise; + + if (ieee80211_radiotap_active(ic)) + mactime = rx->mactime; } else { struct urtw_8187l_rxhdr *rx; @@ -3967,6 +3971,9 @@ urtw_rxeof(struct usb_xfer *xfer, struct urtw_data *da /* XXX correct? */ rssi = rx->rssi & URTW_RX_8187L_RSSI_MASK; noise = rx->noise; + + if (ieee80211_radiotap_active(ic)) + mactime = rx->mactime; } if (flen < IEEE80211_ACK_LEN) @@ -3986,6 +3993,7 @@ urtw_rxeof(struct usb_xfer *xfer, struct urtw_data *da if (ieee80211_radiotap_active(ic)) { struct urtw_rx_radiotap_header *tap = &sc->sc_rxtap; + tap->wr_tsf = mactime; tap->wr_flags = 0; tap->wr_dbm_antsignal = (int8_t)rssi; } Modified: stable/12/sys/dev/usb/wlan/if_urtwvar.h ============================================================================== --- stable/12/sys/dev/usb/wlan/if_urtwvar.h Sun Apr 7 12:20:17 2019 (r346002) +++ stable/12/sys/dev/usb/wlan/if_urtwvar.h Sun Apr 7 12:57:38 2019 (r346003) @@ -55,6 +55,7 @@ typedef STAILQ_HEAD(, urtw_data) urtw_datahead; struct urtw_rx_radiotap_header { struct ieee80211_radiotap_header wr_ihdr; + uint64_t wr_tsf; uint8_t wr_flags; uint8_t wr_pad; uint16_t wr_chan_freq; @@ -63,7 +64,8 @@ struct urtw_rx_radiotap_header { } __packed __aligned(8); #define URTW_RX_RADIOTAP_PRESENT \ - ((1 << IEEE80211_RADIOTAP_FLAGS) | \ + ((1 << IEEE80211_RADIOTAP_TSFT) | \ + (1 << IEEE80211_RADIOTAP_FLAGS) | \ (1 << IEEE80211_RADIOTAP_CHANNEL) | \ (1 << IEEE80211_RADIOTAP_DBM_ANTSIGNAL)) From owner-svn-src-all@freebsd.org Sun Apr 7 13:04:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D7F101551B45; Sun, 7 Apr 2019 13:04:26 +0000 (UTC) (envelope-from avos@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 7767A8FAB1; Sun, 7 Apr 2019 13:04:26 +0000 (UTC) (envelope-from avos@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 4ACE1C910; Sun, 7 Apr 2019 13:04:26 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37D4Qgv026904; Sun, 7 Apr 2019 13:04:26 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37D4QmL026903; Sun, 7 Apr 2019 13:04:26 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201904071304.x37D4QmL026903@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 7 Apr 2019 13:04:26 +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: r346004 - in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Commit-Revision: 346004 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7767A8FAB1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 13:04:27 -0000 Author: avos Date: Sun Apr 7 13:04:25 2019 New Revision: 346004 URL: https://svnweb.freebsd.org/changeset/base/346004 Log: MFC r345753: run(4): do not clear PROTECTED bit if frame was not decrypted by NIC. Was tested with D-Link DWA-140 rev B3, STA / MONITOR modes. Modified: stable/11/sys/dev/usb/wlan/if_run.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/dev/usb/wlan/if_run.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/dev/usb/wlan/if_run.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_run.c Sun Apr 7 12:57:38 2019 (r346003) +++ stable/11/sys/dev/usb/wlan/if_run.c Sun Apr 7 13:04:25 2019 (r346004) @@ -2796,8 +2796,8 @@ run_rx_frame(struct run_softc *sc, struct mbuf *m, uin wh = mtod(m, struct ieee80211_frame *); - /* XXX wrong for monitor mode */ - if (wh->i_fc[1] & IEEE80211_FC1_PROTECTED) { + if ((wh->i_fc[1] & IEEE80211_FC1_PROTECTED) != 0 && + (flags & RT2860_RX_DEC) != 0) { wh->i_fc[1] &= ~IEEE80211_FC1_PROTECTED; m->m_flags |= M_WEP; } From owner-svn-src-all@freebsd.org Sun Apr 7 13:04:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 282BC1551B4A; Sun, 7 Apr 2019 13:04:27 +0000 (UTC) (envelope-from avos@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 C0AA28FAB2; Sun, 7 Apr 2019 13:04:26 +0000 (UTC) (envelope-from avos@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 99B1BC911; Sun, 7 Apr 2019 13:04:26 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37D4QxH026910; Sun, 7 Apr 2019 13:04:26 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37D4Q0C026909; Sun, 7 Apr 2019 13:04:26 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201904071304.x37D4Q0C026909@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 7 Apr 2019 13:04:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346004 - in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Commit-Revision: 346004 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C0AA28FAB2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 13:04:27 -0000 Author: avos Date: Sun Apr 7 13:04:25 2019 New Revision: 346004 URL: https://svnweb.freebsd.org/changeset/base/346004 Log: MFC r345753: run(4): do not clear PROTECTED bit if frame was not decrypted by NIC. Was tested with D-Link DWA-140 rev B3, STA / MONITOR modes. Modified: stable/12/sys/dev/usb/wlan/if_run.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sys/dev/usb/wlan/if_run.c Directory Properties: stable/11/ (props changed) Modified: stable/12/sys/dev/usb/wlan/if_run.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_run.c Sun Apr 7 12:57:38 2019 (r346003) +++ stable/12/sys/dev/usb/wlan/if_run.c Sun Apr 7 13:04:25 2019 (r346004) @@ -2865,8 +2865,8 @@ run_rx_frame(struct run_softc *sc, struct mbuf *m, uin wh = mtod(m, struct ieee80211_frame *); - /* XXX wrong for monitor mode */ - if (wh->i_fc[1] & IEEE80211_FC1_PROTECTED) { + if ((wh->i_fc[1] & IEEE80211_FC1_PROTECTED) != 0 && + (flags & RT2860_RX_DEC) != 0) { wh->i_fc[1] &= ~IEEE80211_FC1_PROTECTED; m->m_flags |= M_WEP; } From owner-svn-src-all@freebsd.org Sun Apr 7 13:11:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 032031551EFF; Sun, 7 Apr 2019 13:11:42 +0000 (UTC) (envelope-from avos@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 9B5A18FFC4; Sun, 7 Apr 2019 13:11:41 +0000 (UTC) (envelope-from avos@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 7636AC964; Sun, 7 Apr 2019 13:11:41 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37DBf8b031126; Sun, 7 Apr 2019 13:11:41 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37DBfnx031124; Sun, 7 Apr 2019 13:11:41 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201904071311.x37DBfnx031124@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 7 Apr 2019 13:11:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346005 - in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Commit-Revision: 346005 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9B5A18FFC4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.983,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 13:11:42 -0000 Author: avos Date: Sun Apr 7 13:11:40 2019 New Revision: 346005 URL: https://svnweb.freebsd.org/changeset/base/346005 Log: MFC r345751: uath(4), urtw(4): restart driver if device does not respond after Tx request Modified: stable/12/sys/dev/usb/wlan/if_uath.c stable/12/sys/dev/usb/wlan/if_urtw.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sys/dev/usb/wlan/if_uath.c stable/11/sys/dev/usb/wlan/if_urtw.c Directory Properties: stable/11/ (props changed) Modified: stable/12/sys/dev/usb/wlan/if_uath.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_uath.c Sun Apr 7 13:04:25 2019 (r346004) +++ stable/12/sys/dev/usb/wlan/if_uath.c Sun Apr 7 13:11:40 2019 (r346005) @@ -1276,8 +1276,8 @@ uath_watchdog(void *arg) if (sc->sc_tx_timer > 0) { if (--sc->sc_tx_timer == 0) { device_printf(sc->sc_dev, "device timeout\n"); - /*uath_init(sc); XXX needs a process context! */ counter_u64_add(ic->ic_oerrors, 1); + ieee80211_restart_all(ic); return; } callout_reset(&sc->watchdog_ch, hz, uath_watchdog, sc); Modified: stable/12/sys/dev/usb/wlan/if_urtw.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_urtw.c Sun Apr 7 13:04:25 2019 (r346004) +++ stable/12/sys/dev/usb/wlan/if_urtw.c Sun Apr 7 13:11:40 2019 (r346005) @@ -1891,11 +1891,13 @@ static void urtw_watchdog(void *arg) { struct urtw_softc *sc = arg; + struct ieee80211com *ic = &sc->sc_ic; if (sc->sc_txtimer > 0) { if (--sc->sc_txtimer == 0) { device_printf(sc->sc_dev, "device timeout\n"); - counter_u64_add(sc->sc_ic.ic_oerrors, 1); + counter_u64_add(ic->ic_oerrors, 1); + ieee80211_restart_all(ic); return; } callout_reset(&sc->sc_watchdog_ch, hz, urtw_watchdog, sc); From owner-svn-src-all@freebsd.org Sun Apr 7 13:11:41 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6CF731551EF7; Sun, 7 Apr 2019 13:11:41 +0000 (UTC) (envelope-from avos@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 1299D8FFC2; Sun, 7 Apr 2019 13:11:41 +0000 (UTC) (envelope-from avos@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 DD301C963; Sun, 7 Apr 2019 13:11:40 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37DBeGw031119; Sun, 7 Apr 2019 13:11:40 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37DBeFT031117; Sun, 7 Apr 2019 13:11:40 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201904071311.x37DBeFT031117@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 7 Apr 2019 13:11:40 +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: r346005 - in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Commit-Revision: 346005 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1299D8FFC2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.983,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 13:11:41 -0000 Author: avos Date: Sun Apr 7 13:11:40 2019 New Revision: 346005 URL: https://svnweb.freebsd.org/changeset/base/346005 Log: MFC r345751: uath(4), urtw(4): restart driver if device does not respond after Tx request Modified: stable/11/sys/dev/usb/wlan/if_uath.c stable/11/sys/dev/usb/wlan/if_urtw.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/dev/usb/wlan/if_uath.c stable/12/sys/dev/usb/wlan/if_urtw.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/dev/usb/wlan/if_uath.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_uath.c Sun Apr 7 13:04:25 2019 (r346004) +++ stable/11/sys/dev/usb/wlan/if_uath.c Sun Apr 7 13:11:40 2019 (r346005) @@ -1271,8 +1271,8 @@ uath_watchdog(void *arg) if (sc->sc_tx_timer > 0) { if (--sc->sc_tx_timer == 0) { device_printf(sc->sc_dev, "device timeout\n"); - /*uath_init(sc); XXX needs a process context! */ counter_u64_add(ic->ic_oerrors, 1); + ieee80211_restart_all(ic); return; } callout_reset(&sc->watchdog_ch, hz, uath_watchdog, sc); Modified: stable/11/sys/dev/usb/wlan/if_urtw.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_urtw.c Sun Apr 7 13:04:25 2019 (r346004) +++ stable/11/sys/dev/usb/wlan/if_urtw.c Sun Apr 7 13:11:40 2019 (r346005) @@ -1883,11 +1883,13 @@ static void urtw_watchdog(void *arg) { struct urtw_softc *sc = arg; + struct ieee80211com *ic = &sc->sc_ic; if (sc->sc_txtimer > 0) { if (--sc->sc_txtimer == 0) { device_printf(sc->sc_dev, "device timeout\n"); - counter_u64_add(sc->sc_ic.ic_oerrors, 1); + counter_u64_add(ic->ic_oerrors, 1); + ieee80211_restart_all(ic); return; } callout_reset(&sc->sc_watchdog_ch, hz, urtw_watchdog, sc); From owner-svn-src-all@freebsd.org Sun Apr 7 13:26:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B2901552646; Sun, 7 Apr 2019 13:26:48 +0000 (UTC) (envelope-from avos@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 A6854905E1; Sun, 7 Apr 2019 13:26:46 +0000 (UTC) (envelope-from avos@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 7A933CC5E; Sun, 7 Apr 2019 13:26:46 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37DQkuD037604; Sun, 7 Apr 2019 13:26:46 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37DQk5w037603; Sun, 7 Apr 2019 13:26:46 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201904071326.x37DQk5w037603@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 7 Apr 2019 13:26:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346006 - in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Commit-Revision: 346006 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A6854905E1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.983,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 13:26:48 -0000 Author: avos Date: Sun Apr 7 13:26:45 2019 New Revision: 346006 URL: https://svnweb.freebsd.org/changeset/base/346006 Log: MFC r345754: run(4): properly set F_DATAPAD radiotap flag if frame has padding between frame header and data. This will fix 'Mysterious OLPC stuff' for received frames and wrong CCMP / TKIP / data decoding for transmitted frames in net/wireshark dissector. While here, drop unneeded comment - net80211 handles padding requirements for Tx & Rx without driver adjustment. Was tested with D-Link DWA-140 rev B3, STA mode. Modified: stable/12/sys/dev/usb/wlan/if_run.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sys/dev/usb/wlan/if_run.c Directory Properties: stable/11/ (props changed) Modified: stable/12/sys/dev/usb/wlan/if_run.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_run.c Sun Apr 7 13:11:40 2019 (r346005) +++ stable/12/sys/dev/usb/wlan/if_run.c Sun Apr 7 13:26:45 2019 (r346006) @@ -2851,10 +2851,6 @@ run_rx_frame(struct run_softc *sc, struct mbuf *m, uin } if (flags & RT2860_RX_L2PAD) { - /* - * XXX OpenBSD removes padding between header - * and payload here... - */ RUN_DPRINTF(sc, RUN_DEBUG_RECV, "received RT2860_RX_L2PAD frame\n"); len += 2; @@ -2896,6 +2892,8 @@ run_rx_frame(struct run_softc *sc, struct mbuf *m, uin uint16_t phy; tap->wr_flags = 0; + if (flags & RT2860_RX_L2PAD) + tap->wr_flags |= IEEE80211_RADIOTAP_F_DATAPAD; tap->wr_antsignal = rssi; tap->wr_antenna = ant; tap->wr_dbm_antsignal = run_rssi2dbm(sc, rssi, ant); @@ -3162,14 +3160,23 @@ tr_setup: vap = data->ni->ni_vap; if (ieee80211_radiotap_active_vap(vap)) { + const struct ieee80211_frame *wh; struct run_tx_radiotap_header *tap = &sc->sc_txtap; struct rt2860_txwi *txwi = (struct rt2860_txwi *)(&data->desc + sizeof(struct rt2870_txd)); + int has_l2pad; + + wh = mtod(m, struct ieee80211_frame *); + has_l2pad = IEEE80211_HAS_ADDR4(wh) != + IEEE80211_QOS_HAS_SEQ(wh); + tap->wt_flags = 0; tap->wt_rate = rt2860_rates[data->ridx].rate; tap->wt_hwqueue = index; if (le16toh(txwi->phy) & RT2860_PHY_SHPRE) tap->wt_flags |= IEEE80211_RADIOTAP_F_SHORTPRE; + if (has_l2pad) + tap->wt_flags |= IEEE80211_RADIOTAP_F_DATAPAD; ieee80211_radiotap_tx(vap, m); } From owner-svn-src-all@freebsd.org Sun Apr 7 13:26:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 27B111552649; Sun, 7 Apr 2019 13:26:48 +0000 (UTC) (envelope-from avos@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 5CC4C905E0; Sun, 7 Apr 2019 13:26:46 +0000 (UTC) (envelope-from avos@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 31B13CC5D; Sun, 7 Apr 2019 13:26:46 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37DQkhP037598; Sun, 7 Apr 2019 13:26:46 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37DQklu037597; Sun, 7 Apr 2019 13:26:46 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201904071326.x37DQklu037597@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 7 Apr 2019 13:26: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: r346006 - in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 11/sys/dev/usb/wlan 12/sys/dev/usb/wlan X-SVN-Commit-Revision: 346006 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5CC4C905E0 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.983,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 13:26:48 -0000 Author: avos Date: Sun Apr 7 13:26:45 2019 New Revision: 346006 URL: https://svnweb.freebsd.org/changeset/base/346006 Log: MFC r345754: run(4): properly set F_DATAPAD radiotap flag if frame has padding between frame header and data. This will fix 'Mysterious OLPC stuff' for received frames and wrong CCMP / TKIP / data decoding for transmitted frames in net/wireshark dissector. While here, drop unneeded comment - net80211 handles padding requirements for Tx & Rx without driver adjustment. Was tested with D-Link DWA-140 rev B3, STA mode. Modified: stable/11/sys/dev/usb/wlan/if_run.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/dev/usb/wlan/if_run.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/dev/usb/wlan/if_run.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_run.c Sun Apr 7 13:11:40 2019 (r346005) +++ stable/11/sys/dev/usb/wlan/if_run.c Sun Apr 7 13:26:45 2019 (r346006) @@ -2783,10 +2783,6 @@ run_rx_frame(struct run_softc *sc, struct mbuf *m, uin } if (flags & RT2860_RX_L2PAD) { - /* - * XXX OpenBSD removes padding between header - * and payload here... - */ DPRINTFN(8, "received RT2860_RX_L2PAD frame\n"); len += 2; } @@ -2826,6 +2822,8 @@ run_rx_frame(struct run_softc *sc, struct mbuf *m, uin uint16_t phy; tap->wr_flags = 0; + if (flags & RT2860_RX_L2PAD) + tap->wr_flags |= IEEE80211_RADIOTAP_F_DATAPAD; tap->wr_antsignal = rssi; tap->wr_antenna = ant; tap->wr_dbm_antsignal = run_rssi2dbm(sc, rssi, ant); @@ -3085,14 +3083,23 @@ tr_setup: vap = data->ni->ni_vap; if (ieee80211_radiotap_active_vap(vap)) { + const struct ieee80211_frame *wh; struct run_tx_radiotap_header *tap = &sc->sc_txtap; struct rt2860_txwi *txwi = (struct rt2860_txwi *)(&data->desc + sizeof(struct rt2870_txd)); + int has_l2pad; + + wh = mtod(m, struct ieee80211_frame *); + has_l2pad = IEEE80211_HAS_ADDR4(wh) != + IEEE80211_QOS_HAS_SEQ(wh); + tap->wt_flags = 0; tap->wt_rate = rt2860_rates[data->ridx].rate; tap->wt_hwqueue = index; if (le16toh(txwi->phy) & RT2860_PHY_SHPRE) tap->wt_flags |= IEEE80211_RADIOTAP_F_SHORTPRE; + if (has_l2pad) + tap->wt_flags |= IEEE80211_RADIOTAP_F_DATAPAD; ieee80211_radiotap_tx(vap, m); } From owner-svn-src-all@freebsd.org Sun Apr 7 13:36:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0AB7F1552BFC; Sun, 7 Apr 2019 13:36:18 +0000 (UTC) (envelope-from tsoome@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 A036A90C2E; Sun, 7 Apr 2019 13:36:17 +0000 (UTC) (envelope-from tsoome@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 75BDACE0A; Sun, 7 Apr 2019 13:36:17 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37DaHEB042794; Sun, 7 Apr 2019 13:36:17 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37DaHhT042793; Sun, 7 Apr 2019 13:36:17 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <201904071336.x37DaHhT042793@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Sun, 7 Apr 2019 13:36:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346007 - head/stand/common X-SVN-Group: head X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: head/stand/common X-SVN-Commit-Revision: 346007 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A036A90C2E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.99)[-0.986,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 13:36:18 -0000 Author: tsoome Date: Sun Apr 7 13:36:17 2019 New Revision: 346007 URL: https://svnweb.freebsd.org/changeset/base/346007 Log: loader: add file_remove() function to undo file_insert_tail(). 346002 did miss the fact that we do not only undo the loadaddr, but also we need to remove the inserted module. Implement file_remove() to do the job. MFC after: 1w Modified: head/stand/common/module.c Modified: head/stand/common/module.c ============================================================================== --- head/stand/common/module.c Sun Apr 7 13:26:45 2019 (r346006) +++ head/stand/common/module.c Sun Apr 7 13:36:17 2019 (r346007) @@ -52,16 +52,18 @@ struct moduledir { STAILQ_ENTRY(moduledir) d_link; }; -static int file_load(char *filename, vm_offset_t dest, struct preloaded_file **result); -static int file_load_dependencies(struct preloaded_file *base_mod); -static char * file_search(const char *name, char **extlist); -static struct kernel_module * file_findmodule(struct preloaded_file *fp, char *modname, struct mod_depend *verinfo); -static int file_havepath(const char *name); -static char *mod_searchmodule(char *name, struct mod_depend *verinfo); -static void file_insert_tail(struct preloaded_file *mp); -struct file_metadata* metadata_next(struct file_metadata *base_mp, int type); -static void moduledir_readhints(struct moduledir *mdp); -static void moduledir_rebuild(void); +static int file_load(char *, vm_offset_t, struct preloaded_file **); +static int file_load_dependencies(struct preloaded_file *); +static char * file_search(const char *, char **); +static struct kernel_module *file_findmodule(struct preloaded_file *, char *, + struct mod_depend *); +static int file_havepath(const char *); +static char *mod_searchmodule(char *, struct mod_depend *); +static void file_insert_tail(struct preloaded_file *); +static void file_remove(struct preloaded_file *); +struct file_metadata *metadata_next(struct file_metadata *, int); +static void moduledir_readhints(struct moduledir *); +static void moduledir_rebuild(void); /* load address should be tweaked by first module loaded (kernel) */ static vm_offset_t loadaddr = 0; @@ -70,10 +72,11 @@ static vm_offset_t loadaddr = 0; static const char *default_searchpath = "/boot/kernel;/boot/modules;/boot/dtb"; #else -static const char *default_searchpath ="/boot/kernel;/boot/modules"; +static const char *default_searchpath = "/boot/kernel;/boot/modules"; #endif -static STAILQ_HEAD(, moduledir) moduledir_list = STAILQ_HEAD_INITIALIZER(moduledir_list); +static STAILQ_HEAD(, moduledir) moduledir_list = + STAILQ_HEAD_INITIALIZER(moduledir_list); struct preloaded_file *preloaded_files = NULL; @@ -591,10 +594,10 @@ mod_loadkld(const char *kldname, int argc, char *argv[ fp->f_args = unargv(argc, argv); loadaddr_saved = loadaddr; loadaddr = fp->f_addr + fp->f_size; - file_insert_tail(fp); /* Add to the list of loaded files */ + file_insert_tail(fp); /* Add to the list of loaded files */ if (file_load_dependencies(fp) != 0) { err = ENOENT; - last_file->f_next = NULL; + file_remove(fp); loadaddr = loadaddr_saved; fp = NULL; break; @@ -998,6 +1001,29 @@ file_insert_tail(struct preloaded_file *fp) for (cm = preloaded_files; cm->f_next != NULL; cm = cm->f_next) ; cm->f_next = fp; + } +} + +/* + * Remove module from the chain + */ +static void +file_remove(struct preloaded_file *fp) +{ + struct preloaded_file *cm; + + if (preloaded_files == NULL) + return; + + if (preloaded_files == fp) { + preloaded_files = fp->f_next; + return; + } + for (cm = preloaded_files; cm->f_next != NULL; cm = cm->f_next) { + if (cm->f_next == fp) { + cm->f_next = fp->f_next; + return; + } } } From owner-svn-src-all@freebsd.org Sun Apr 7 14:07:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 454DC1553523; Sun, 7 Apr 2019 14:07:29 +0000 (UTC) (envelope-from tsoome@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 D41A8916FF; Sun, 7 Apr 2019 14:07:28 +0000 (UTC) (envelope-from tsoome@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 A375AD30D; Sun, 7 Apr 2019 14:07:28 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37E7Sbj058470; Sun, 7 Apr 2019 14:07:28 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37E7SvN058469; Sun, 7 Apr 2019 14:07:28 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <201904071407.x37E7SvN058469@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Sun, 7 Apr 2019 14:07:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346008 - head/stand/efi/loader X-SVN-Group: head X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: head/stand/efi/loader X-SVN-Commit-Revision: 346008 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D41A8916FF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_SHORT(-0.99)[-0.986,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 14:07:29 -0000 Author: tsoome Date: Sun Apr 7 14:07:28 2019 New Revision: 346008 URL: https://svnweb.freebsd.org/changeset/base/346008 Log: loader: command_lsefi: ret can be used uninitialized MFC after: 1w Modified: head/stand/efi/loader/main.c Modified: head/stand/efi/loader/main.c ============================================================================== --- head/stand/efi/loader/main.c Sun Apr 7 13:36:17 2019 (r346007) +++ head/stand/efi/loader/main.c Sun Apr 7 14:07:28 2019 (r346008) @@ -1217,7 +1217,7 @@ command_lsefi(int argc __unused, char *argv[] __unused EFI_HANDLE handle; UINTN bufsz = 0, i, j; EFI_STATUS status; - int ret; + int ret = 0; status = BS->LocateHandle(AllHandles, NULL, NULL, &bufsz, buffer); if (status != EFI_BUFFER_TOO_SMALL) { From owner-svn-src-all@freebsd.org Sun Apr 7 14:12:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A721515537A8 for ; Sun, 7 Apr 2019 14:12:47 +0000 (UTC) (envelope-from shawn.webb@hardenedbsd.org) Received: from mail-qt1-x833.google.com (mail-qt1-x833.google.com [IPv6:2607:f8b0:4864:20::833]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6F12791AF6 for ; Sun, 7 Apr 2019 14:12:46 +0000 (UTC) (envelope-from shawn.webb@hardenedbsd.org) Received: by mail-qt1-x833.google.com with SMTP id v32so12520732qtc.10 for ; Sun, 07 Apr 2019 07:12:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hardenedbsd.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=TgPhBcD3zwJHRSLGyuk19Clndj5w8XL3cIJzR9UppKE=; b=GEdNsvbOGkl4pSFUXgfWB259tYqmOYU8+5dCkMs1TlPpg43XWu1/PwDf611tu5pvx2 yJWxKGVEjv5s31CyrHPohydb4CtAAlf0qaMAmMqPTFwrmVvuewN0gK8twY0YQJEbO7h2 YAkXprybZlSqqS/gefLkVwiaAH8kLcRg6/FOiSn/+5cvqT8/CZPzxqzJQ53IcR85ps1Q 1XB1dzHo5ytA369In8MHO1kKhQecrZK77ZouFVWqVYR8fq9TbX0y2h6c+IeOBECt+aG6 G6mLRj/Ewk/l5bLT8ZJFJwoMTMwt5riGOZPWWRHhPS3K4u4XJ+6dF5HNVaro+xyuAGMW qOzg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=TgPhBcD3zwJHRSLGyuk19Clndj5w8XL3cIJzR9UppKE=; b=U4EhPBJFo9UAXlFtbMO+Tqv4VJFJ6GEnW+Zm7ceJf0B/PhHCt93YOxxY9mZHhCNygH +yGRTWWjzd5ZAHFcBArFPrx6WeIRq9h4FC7SLW+QQaqDzLxKyMI3xtPA/ifcr9s8Ngs+ ++cGpQ9mvTyuL+6TzhkkXLnzEuJaAhTiyr0ZeFv7mf/vJYRtSNWcplM91VKzPP2sdnS6 X32aYqINvwrp2bjYrDzS5lh2kNcohX7d5ZRsm/zXgruXMT+WGkm6m7pc3eo62/s5mDWg nQdXWHd3yzk5nnOp8jSmMZXN1yqGJkl0eRlI6RlGNM7tpN3rl9YIJMtzWf2B3ahs5v4l tcZQ== X-Gm-Message-State: APjAAAVv4dC3VEC2zVqudvqvXghhfapZwHab/qvxXku0/hkhK7Hjti1B UuvKcmcmN58RiC1KpmhQgnPmgA== X-Google-Smtp-Source: APXvYqwAEzWOoSAxmtj3rSdHHq3st4lg/Ryi5gJbBLduBSXbaly/jWTmEcliIZvfWOw7WnLnbtnU/Q== X-Received: by 2002:aed:3b09:: with SMTP id p9mr20695421qte.152.1554646365754; Sun, 07 Apr 2019 07:12:45 -0700 (PDT) Received: from mutt-hbsd ([151.196.118.239]) by smtp.gmail.com with ESMTPSA id s12sm14342642qtj.1.2019.04.07.07.12.44 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 07 Apr 2019 07:12:44 -0700 (PDT) Date: Sun, 7 Apr 2019 10:11:52 -0400 From: Shawn Webb To: Mariusz Zaborski Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r345982 - in head: include lib/libc/sys sys/cddl/compat/opensolaris/sys sys/compat/cloudabi sys/compat/freebsd32 sys/compat/linux sys/kern sys/sys sys/ufs/ffs Message-ID: <20190407141152.oyf35rgomoa2qoki@mutt-hbsd> References: <201904060934.x369YQn9043498@repo.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="xs5qggpndjt5h2y5" Content-Disposition: inline In-Reply-To: <201904060934.x369YQn9043498@repo.freebsd.org> X-Operating-System: FreeBSD mutt-hbsd 13.0-CURRENT-HBSD FreeBSD 13.0-CURRENT-HBSD r345948+db88569731b7(hardened/current/master) HARDENEDBSD-13-CURRENT amd64 X-PGP-Key: http://pgp.mit.edu/pks/lookup?op=vindex&search=0xFF2E67A277F8E1FA User-Agent: NeoMutt/20180716 X-Rspamd-Queue-Id: 6F12791AF6 X-Spamd-Bar: ------- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=hardenedbsd.org header.s=google header.b=GEdNsvbO; spf=pass (mx1.freebsd.org: domain of shawn.webb@hardenedbsd.org designates 2607:f8b0:4864:20::833 as permitted sender) smtp.mailfrom=shawn.webb@hardenedbsd.org X-Spamd-Result: default: False [-7.91 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[hardenedbsd.org:+]; MX_GOOD(-0.01)[alt1.aspmx.l.google.com,aspmx.l.google.com,aspmx2.googlemail.com,alt2.aspmx.l.google.com,aspmx3.googlemail.com]; NEURAL_HAM_SHORT(-0.99)[-0.995,0]; SIGNED_PGP(-2.00)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; IP_SCORE(-2.80)[ip: (-8.84), ipnet: 2607:f8b0::/32(-2.94), asn: 15169(-2.17), country: US(-0.06)]; RECEIVED_SPAMHAUS_PBL(0.00)[239.118.196.151.zen.spamhaus.org : 127.0.0.10]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[hardenedbsd.org:s=google]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; PREVIOUSLY_DELIVERED(0.00)[svn-src-all@freebsd.org]; DMARC_NA(0.00)[hardenedbsd.org]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[3.3.8.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0]; MID_RHS_NOT_FQDN(0.50)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 14:12:47 -0000 --xs5qggpndjt5h2y5 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Apr 06, 2019 at 09:34:26AM +0000, Mariusz Zaborski wrote: > Author: oshogbo > Date: Sat Apr 6 09:34:26 2019 > New Revision: 345982 > URL: https://svnweb.freebsd.org/changeset/base/345982 >=20 > Log: > Introduce funlinkat syscall that always us to check if we are removing > the file associated with the given file descriptor. > =20 > Reviewed by: kib, asomers > Reviewed by: cem, jilles, brooks (they reviewed previous version) > Discussed with: pjd, and many others > Differential Revision: https://reviews.freebsd.org/D14567 Hey Mariusz, Is __FreeBSD_version supposed to be bumped after adding new syscalls? I can't remember off-hand. Thanks, --=20 Shawn Webb Cofounder / Security Engineer HardenedBSD Tor-ified Signal: +1 443-546-8752 Tor+XMPP+OTR: lattera@is.a.hacker.sx GPG Key ID: 0x6A84658F52456EEE GPG Key Fingerprint: D206 BB45 15E0 9C49 0CF9 3633 C85B 0AF8 AB23 0FB2 --xs5qggpndjt5h2y5 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEA6TL67gupaZ9nzhT/y5nonf44foFAlyqBSMACgkQ/y5nonf4 4frJLw//ejcyubdA9Uqy5Z1aRLOeJjb9rNk/eF9wyheoIsUhPo5B2JEobeUUDnHr HHTUJ5RNtG1jHfpQLQ6tfxB+QjrmHc7UUwe6zjJ9PJSxzN7+yx+SPj/7S7uwhKxE xciEaIp3CroYheGGcqiqOvLwTibeEb3mgK3ljOqTXUbnjimUQImRrcwC814dzLil P7cvZvhMogwjAIa72ZiMsB9xQZ39PJRjKSt19nWQaNfETD+/SutPytQbrht4mYAe CsyvGIYGGG6X12Fnkcxf1L0FKEXoYk65V3SF93FcaDkfT55ubJA4Q9rCRvRYU4XO Ib+12lrikWcWHkJCXZ7SYPhvv3nJJZZKlcP/mWVDRgoguP7+lY7tOI6hBGL+vwvS Pl9nm1P4+hjtY3lLU/ow74YL67a4OYt3SvZ8fPSjIvaUZzslvcKzrOWXeB+j94/P dA1m/0JwbrNx2Bh4T2d/XNTM93lKWvwBhuaFlgpQElJM7SvWuPkMzy80oUHKTN2V J6v+iph/lLeAudd1kqMRvAW+DThr3yKh71y4TjsFf1MlQwavbMwhao7G2Mz3oX8n zKGAXxQevEPKTJYucu+cm62obMNQnEVDolCMK81OFmDB9hUtnnuJ4ieuFv9hPWU1 lM4+qPfZq/JZWUZ3XgW6at8Q1HK73Qiez1q8pWIQ7CdTabvRygo= =A+Ux -----END PGP SIGNATURE----- --xs5qggpndjt5h2y5-- From owner-svn-src-all@freebsd.org Sun Apr 7 14:26:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 260071553B1C; Sun, 7 Apr 2019 14:26:16 +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 BFC8891FFE; Sun, 7 Apr 2019 14:26:15 +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 6D395D667; Sun, 7 Apr 2019 14:26:15 +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 x37EQFYc068640; Sun, 7 Apr 2019 14:26:15 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37EQFVB068638; Sun, 7 Apr 2019 14:26:15 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201904071426.x37EQFVB068638@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Sun, 7 Apr 2019 14:26:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346009 - in head: sys/kern tests/sys/kern X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: in head: sys/kern tests/sys/kern X-SVN-Commit-Revision: 346009 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BFC8891FFE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.99)[-0.986,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 14:26:16 -0000 Author: markj Date: Sun Apr 7 14:26:14 2019 New Revision: 346009 URL: https://svnweb.freebsd.org/changeset/base/346009 Log: Set the p_oppid field of orphans when exiting. Such processes will be reparented to the reaper when the current parent is done with them (i.e., ptrace detached), so p_oppid must be updated accordingly. Add a regression test to exercise this code path. Previously it would not be possible to reap an orphan with a stale oppid. Reviewed by: kib, mjg Tested by: pho MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19825 Modified: head/sys/kern/kern_exit.c head/tests/sys/kern/ptrace_test.c Modified: head/sys/kern/kern_exit.c ============================================================================== --- head/sys/kern/kern_exit.c Sun Apr 7 14:07:28 2019 (r346008) +++ head/sys/kern/kern_exit.c Sun Apr 7 14:26:14 2019 (r346009) @@ -543,6 +543,11 @@ exit1(struct thread *td, int rval, int signo) */ while ((q = LIST_FIRST(&p->p_orphans)) != NULL) { PROC_LOCK(q); + KASSERT(q->p_oppid == p->p_pid, + ("orphan %p of %p has unexpected oppid %d", q, p, + q->p_oppid)); + q->p_oppid = q->p_reaper->p_pid; + /* * If we are the real parent of this process * but it has been reparented to a debugger, then Modified: head/tests/sys/kern/ptrace_test.c ============================================================================== --- head/tests/sys/kern/ptrace_test.c Sun Apr 7 14:07:28 2019 (r346008) +++ head/tests/sys/kern/ptrace_test.c Sun Apr 7 14:26:14 2019 (r346009) @@ -452,6 +452,67 @@ ATF_TC_BODY(ptrace__parent_sees_exit_after_unrelated_d } /* + * Make sure that we can collect the exit status of an orphaned process. + */ +ATF_TC_WITHOUT_HEAD(ptrace__parent_exits_before_child); +ATF_TC_BODY(ptrace__parent_exits_before_child, tc) +{ + ssize_t n; + int cpipe1[2], cpipe2[2], gcpipe[2], status; + pid_t child, gchild; + + ATF_REQUIRE(pipe(cpipe1) == 0); + ATF_REQUIRE(pipe(cpipe2) == 0); + ATF_REQUIRE(pipe(gcpipe) == 0); + + ATF_REQUIRE(procctl(P_PID, getpid(), PROC_REAP_ACQUIRE, NULL) == 0); + + ATF_REQUIRE((child = fork()) != -1); + if (child == 0) { + CHILD_REQUIRE((gchild = fork()) != -1); + if (gchild == 0) { + status = 1; + do { + n = read(gcpipe[0], &status, sizeof(status)); + } while (n == -1 && errno == EINTR); + _exit(status); + } + + CHILD_REQUIRE(write(cpipe1[1], &gchild, sizeof(gchild)) == + sizeof(gchild)); + CHILD_REQUIRE(read(cpipe2[0], &status, sizeof(status)) == + sizeof(status)); + _exit(status); + } + + ATF_REQUIRE(read(cpipe1[0], &gchild, sizeof(gchild)) == sizeof(gchild)); + + ATF_REQUIRE(ptrace(PT_ATTACH, gchild, NULL, 0) == 0); + + status = 0; + ATF_REQUIRE(write(cpipe2[1], &status, sizeof(status)) == + sizeof(status)); + ATF_REQUIRE(waitpid(child, &status, 0) == child); + ATF_REQUIRE(WIFEXITED(status) && WEXITSTATUS(status) == 0); + + status = 0; + ATF_REQUIRE(write(gcpipe[1], &status, sizeof(status)) == + sizeof(status)); + ATF_REQUIRE(waitpid(gchild, &status, 0) == gchild); + ATF_REQUIRE(WIFSTOPPED(status)); + ATF_REQUIRE(ptrace(PT_DETACH, gchild, (caddr_t)1, 0) == 0); + ATF_REQUIRE(waitpid(gchild, &status, 0) == gchild); + ATF_REQUIRE(WIFEXITED(status) && WEXITSTATUS(status) == 0); + + ATF_REQUIRE(close(cpipe1[0]) == 0); + ATF_REQUIRE(close(cpipe1[1]) == 0); + ATF_REQUIRE(close(cpipe2[0]) == 0); + ATF_REQUIRE(close(cpipe2[1]) == 0); + ATF_REQUIRE(close(gcpipe[0]) == 0); + ATF_REQUIRE(close(gcpipe[1]) == 0); +} + +/* * The parent process should always act the same regardless of how the * debugger is attached to it. */ @@ -3850,6 +3911,7 @@ ATF_TP_ADD_TCS(tp) ATF_TP_ADD_TC(tp, ptrace__parent_wait_after_attach); ATF_TP_ADD_TC(tp, ptrace__parent_sees_exit_after_child_debugger); ATF_TP_ADD_TC(tp, ptrace__parent_sees_exit_after_unrelated_debugger); + ATF_TP_ADD_TC(tp, ptrace__parent_exits_before_child); ATF_TP_ADD_TC(tp, ptrace__follow_fork_both_attached); ATF_TP_ADD_TC(tp, ptrace__follow_fork_child_detached); ATF_TP_ADD_TC(tp, ptrace__follow_fork_parent_detached); From owner-svn-src-all@freebsd.org Sun Apr 7 14:28:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9985C1553BC4; Sun, 7 Apr 2019 14:28:03 +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 3E61E9215F; Sun, 7 Apr 2019 14:28:03 +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 17C06D66C; Sun, 7 Apr 2019 14:28:03 +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 x37ES2cf068753; Sun, 7 Apr 2019 14:28:02 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37ES2XS068752; Sun, 7 Apr 2019 14:28:02 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201904071428.x37ES2XS068752@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Sun, 7 Apr 2019 14:28:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346010 - head/usr.sbin/bhyve X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/usr.sbin/bhyve X-SVN-Commit-Revision: 346010 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3E61E9215F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.99)[-0.986,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 14:28:03 -0000 Author: markj Date: Sun Apr 7 14:28:02 2019 New Revision: 346010 URL: https://svnweb.freebsd.org/changeset/base/346010 Log: Fix indentation. No functional change intended. Reviewed by: bcran, jhb, rgrimes MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19786 Modified: head/usr.sbin/bhyve/uart_emul.c Modified: head/usr.sbin/bhyve/uart_emul.c ============================================================================== --- head/usr.sbin/bhyve/uart_emul.c Sun Apr 7 14:26:14 2019 (r346009) +++ head/usr.sbin/bhyve/uart_emul.c Sun Apr 7 14:28:02 2019 (r346010) @@ -440,75 +440,75 @@ uart_write(struct uart_softc *sc, int offset, uint8_t */ sc->ier = value & 0x0F; break; - case REG_FCR: - /* - * When moving from FIFO and 16450 mode and vice versa, - * the FIFO contents are reset. - */ - if ((sc->fcr & FCR_ENABLE) ^ (value & FCR_ENABLE)) { - fifosz = (value & FCR_ENABLE) ? FIFOSZ : 1; - rxfifo_reset(sc, fifosz); - } + case REG_FCR: + /* + * When moving from FIFO and 16450 mode and vice versa, + * the FIFO contents are reset. + */ + if ((sc->fcr & FCR_ENABLE) ^ (value & FCR_ENABLE)) { + fifosz = (value & FCR_ENABLE) ? FIFOSZ : 1; + rxfifo_reset(sc, fifosz); + } - /* - * The FCR_ENABLE bit must be '1' for the programming - * of other FCR bits to be effective. - */ - if ((value & FCR_ENABLE) == 0) { - sc->fcr = 0; - } else { - if ((value & FCR_RCV_RST) != 0) - rxfifo_reset(sc, FIFOSZ); + /* + * The FCR_ENABLE bit must be '1' for the programming + * of other FCR bits to be effective. + */ + if ((value & FCR_ENABLE) == 0) { + sc->fcr = 0; + } else { + if ((value & FCR_RCV_RST) != 0) + rxfifo_reset(sc, FIFOSZ); - sc->fcr = value & - (FCR_ENABLE | FCR_DMA | FCR_RX_MASK); - } - break; - case REG_LCR: - sc->lcr = value; - break; - case REG_MCR: - /* Apply mask so that bits 5-7 are 0 */ - sc->mcr = value & 0x1F; - msr = modem_status(sc->mcr); + sc->fcr = value & + (FCR_ENABLE | FCR_DMA | FCR_RX_MASK); + } + break; + case REG_LCR: + sc->lcr = value; + break; + case REG_MCR: + /* Apply mask so that bits 5-7 are 0 */ + sc->mcr = value & 0x1F; + msr = modem_status(sc->mcr); - /* - * Detect if there has been any change between the - * previous and the new value of MSR. If there is - * then assert the appropriate MSR delta bit. - */ - if ((msr & MSR_CTS) ^ (sc->msr & MSR_CTS)) - sc->msr |= MSR_DCTS; - if ((msr & MSR_DSR) ^ (sc->msr & MSR_DSR)) - sc->msr |= MSR_DDSR; - if ((msr & MSR_DCD) ^ (sc->msr & MSR_DCD)) - sc->msr |= MSR_DDCD; - if ((sc->msr & MSR_RI) != 0 && (msr & MSR_RI) == 0) - sc->msr |= MSR_TERI; + /* + * Detect if there has been any change between the + * previous and the new value of MSR. If there is + * then assert the appropriate MSR delta bit. + */ + if ((msr & MSR_CTS) ^ (sc->msr & MSR_CTS)) + sc->msr |= MSR_DCTS; + if ((msr & MSR_DSR) ^ (sc->msr & MSR_DSR)) + sc->msr |= MSR_DDSR; + if ((msr & MSR_DCD) ^ (sc->msr & MSR_DCD)) + sc->msr |= MSR_DDCD; + if ((sc->msr & MSR_RI) != 0 && (msr & MSR_RI) == 0) + sc->msr |= MSR_TERI; - /* - * Update the value of MSR while retaining the delta - * bits. - */ - sc->msr &= MSR_DELTA_MASK; - sc->msr |= msr; - break; - case REG_LSR: - /* - * Line status register is not meant to be written to - * during normal operation. - */ - break; - case REG_MSR: - /* - * As far as I can tell MSR is a read-only register. - */ - break; - case REG_SCR: - sc->scr = value; - break; - default: - break; + /* + * Update the value of MSR while retaining the delta + * bits. + */ + sc->msr &= MSR_DELTA_MASK; + sc->msr |= msr; + break; + case REG_LSR: + /* + * Line status register is not meant to be written to + * during normal operation. + */ + break; + case REG_MSR: + /* + * As far as I can tell MSR is a read-only register. + */ + break; + case REG_SCR: + sc->scr = value; + break; + default: + break; } done: From owner-svn-src-all@freebsd.org Sun Apr 7 14:30:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 76A561553C87; Sun, 7 Apr 2019 14:30:18 +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 1B58A922DC; Sun, 7 Apr 2019 14:30:18 +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 E5F18D681; Sun, 7 Apr 2019 14:30:17 +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 x37EUHo9068919; Sun, 7 Apr 2019 14:30:17 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37EUHxV068918; Sun, 7 Apr 2019 14:30:17 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201904071430.x37EUHxV068918@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Sun, 7 Apr 2019 14:30:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346011 - head/usr.sbin/bhyve X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/usr.sbin/bhyve X-SVN-Commit-Revision: 346011 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1B58A922DC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.99)[-0.986,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 14:30:18 -0000 Author: markj Date: Sun Apr 7 14:30:17 2019 New Revision: 346011 URL: https://svnweb.freebsd.org/changeset/base/346011 Log: Stop compiling bhyve(8) with -O0. DEBUG_FLAGS is always added to CFLAGS. This setting appears to be accidental and came in with r243327. Reviewed by: anish, emaste, jhb, rgrimes MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19787 Modified: head/usr.sbin/bhyve/Makefile Modified: head/usr.sbin/bhyve/Makefile ============================================================================== --- head/usr.sbin/bhyve/Makefile Sun Apr 7 14:28:02 2019 (r346010) +++ head/usr.sbin/bhyve/Makefile Sun Apr 7 14:30:17 2019 (r346011) @@ -9,8 +9,6 @@ CFLAGS+=-I${SRCTOP}/sys PROG= bhyve PACKAGE= bhyve -DEBUG_FLAGS= -g -O0 - MAN= bhyve.8 BHYVE_SYSDIR?=${SRCTOP} From owner-svn-src-all@freebsd.org Sun Apr 7 15:04:51 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3A4A61558396; Sun, 7 Apr 2019 15:04:51 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 78DEA938E2; Sun, 7 Apr 2019 15:04:50 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA id D9IzhAeW3sAGkD9J0hj18o; Sun, 07 Apr 2019 09:01:59 -0600 X-Authority-Analysis: v=2.3 cv=WeVylHpX c=1 sm=1 tr=0 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=IkcTkHD0fZMA:10 a=oexKYjalfGEA:10 a=ypVJL4-jAAAA:8 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=XXoiANQANLpcMMperh8A:9 a=QEXdDO2ut3YA:10 a=khIbc0fXALFIcTpOSxgJ:22 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from [192.168.0.103] (S0106002401cb186f.gv.shawcable.net [70.67.125.17]) by spqr.komquats.com (Postfix) with ESMTPSA id BAAA5A58; Sun, 7 Apr 2019 08:01:55 -0700 (PDT) Date: Sun, 07 Apr 2019 08:01:54 -0700 User-Agent: K-9 Mail for Android In-Reply-To: <20190407141152.oyf35rgomoa2qoki@mutt-hbsd> References: <201904060934.x369YQn9043498@repo.freebsd.org> <20190407141152.oyf35rgomoa2qoki@mutt-hbsd> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: svn commit: r345982 - in head: include lib/libc/sys sys/cddl/compat/opensolaris/sys sys/compat/cloudabi sys/compat/freebsd32 sys/compat/linux sys/kern sys/sys sys/ufs/ffs To: Shawn Webb , Mariusz Zaborski CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Cy Schubert Message-ID: X-CMAE-Envelope: MS4wfLxt9wiwN8v+dmkcWyWQGUJiWVuAvkfekJiH7EZ5IyAo/DM25X9jkLBZd11G6G3bpdEa33Y8pEO/UFlyJzWFPBzmatzxcj0hQbQhCXKocp5GRUJm6zfL H+mKdB2Gpwa8dL5wg7MwVFoVYxt7kY7FvmsUBP3bh9SOfLhhUgKp2tBV2LXy7ISHx0+1ZojxdtMa+ZPDsbWkWfhooL7QB0ABo8YKBOKfGhJgGRmxc1u5oNpT LfWuXWYICHIsjEJseEVPfV5EDyml4NnVWrZXOeOFoK7GNthGaixvPHCAs5gLW7zxOOua1CZx6+z6cAoWqoZhbQH9fSTKZiyephaZte3ihWw= X-Rspamd-Queue-Id: 78DEA938E2 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-7.00 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-1.00)[-0.997,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 15:04:51 -0000 On April 7, 2019 7:11:52 AM PDT, Shawn Webb wrote: >On Sat, Apr 06, 2019 at 09:34:26AM +0000, Mariusz Zaborski wrote: >> Author: oshogbo >> Date: Sat Apr 6 09:34:26 2019 >> New Revision: 345982 >> URL: https://svnweb=2Efreebsd=2Eorg/changeset/base/345982 >>=20 >> Log: >> Introduce funlinkat syscall that always us to check if we are >removing >> the file associated with the given file descriptor=2E >> =20 >> Reviewed by: kib, asomers >> Reviewed by: cem, jilles, brooks (they reviewed previous version) >> Discussed with: pjd, and many others >> Differential Revision: https://reviews=2Efreebsd=2Eorg/D14567 > >Hey Mariusz, > >Is __FreeBSD_version supposed to be bumped after adding new syscalls? >I can't remember off-hand=2E > >Thanks, I don't think so=2E Why force the rebuild of all ports through poudriere o= ver something that would never affect any of them? --=20 Pardon the typos and autocorrect, small keyboard in use=2E Cheers, Cy Schubert FreeBSD UNIX: Web: http://www=2EFreeBSD=2Eorg The need of the many outweighs the greed of the few=2E From owner-svn-src-all@freebsd.org Sun Apr 7 15:10:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0EDB115584E2; Sun, 7 Apr 2019 15:10:14 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8192393A89; Sun, 7 Apr 2019 15:10:13 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x37FA7lL050627; Sun, 7 Apr 2019 08:10:07 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x37FA7tm050626; Sun, 7 Apr 2019 08:10:07 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904071510.x37FA7tm050626@gndrsh.dnsmgr.net> Subject: Re: svn commit: r345982 - in head: include lib/libc/sys sys/cddl/compat/opensolaris/sys sys/compat/cloudabi sys/compat/freebsd32 sys/compat/linux sys/kern sys/sys sys/ufs/ffs In-Reply-To: To: Cy Schubert Date: Sun, 7 Apr 2019 08:10:07 -0700 (PDT) CC: Shawn Webb , Mariusz Zaborski , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 8192393A89 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.98)[-0.979,0]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 15:10:14 -0000 > On April 7, 2019 7:11:52 AM PDT, Shawn Webb wrote: > >On Sat, Apr 06, 2019 at 09:34:26AM +0000, Mariusz Zaborski wrote: > >> Author: oshogbo > >> Date: Sat Apr 6 09:34:26 2019 > >> New Revision: 345982 > >> URL: https://svnweb.freebsd.org/changeset/base/345982 > >> > >> Log: > >> Introduce funlinkat syscall that always us to check if we are > >removing > >> the file associated with the given file descriptor. > >> > >> Reviewed by: kib, asomers > >> Reviewed by: cem, jilles, brooks (they reviewed previous version) > >> Discussed with: pjd, and many others > >> Differential Revision: https://reviews.freebsd.org/D14567 > > > >Hey Mariusz, > > > >Is __FreeBSD_version supposed to be bumped after adding new syscalls? > >I can't remember off-hand. > > > >Thanks, > > I don't think so. Why force the rebuild of all ports through poudriere over something that would never affect any of them? So that you can if version >= foo to know it is safe to use the new syscal? Or if version < foo you must use the old way. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Sun Apr 7 15:35:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 58C161558E45; Sun, 7 Apr 2019 15:35:17 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.9]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 5DDCA947EB; Sun, 7 Apr 2019 15:35:15 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA id D9p9hArldsAGkD9pBhj6ZO; Sun, 07 Apr 2019 09:35:13 -0600 X-Authority-Analysis: v=2.3 cv=WeVylHpX c=1 sm=1 tr=0 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=kj9zAlcOel0A:10 a=oexKYjalfGEA:10 a=iKhvJSA4AAAA:8 a=ypVJL4-jAAAA:8 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=tOixRJis2aQXTnQbcsUA:9 a=CjuIK1q_8ugA:10 a=odh9cflL3HIXMm4fY7Wr:22 a=khIbc0fXALFIcTpOSxgJ:22 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id 53635A97; Sun, 7 Apr 2019 08:35:11 -0700 (PDT) Received: from slippy.cwsent.com (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x37FZ9UY073863; Sun, 7 Apr 2019 08:35:10 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Received: from slippy (cy@localhost) by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x37FZ7bk073860; Sun, 7 Apr 2019 08:35:08 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201904071535.x37FZ7bk073860@slippy.cwsent.com> X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: rgrimes@freebsd.org cc: Cy Schubert , Shawn Webb , Mariusz Zaborski , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r345982 - in head: include lib/libc/sys sys/cddl/compat/opensolaris/sys sys/compat/cloudabi sys/compat/freebsd32 sys/compat/linux sys/kern sys/sys sys/ufs/ffs In-Reply-To: Message from "Rodney W. Grimes" of "Sun, 07 Apr 2019 08:10:07 -0700." <201904071510.x37FA7tm050626@gndrsh.dnsmgr.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sun, 07 Apr 2019 08:35:07 -0700 X-CMAE-Envelope: MS4wfG3rgtUpQn8xKpViiuqfymRbiV8C2340SHr8zNNRlD3i2RN3MakARtkOJJ5BPbXZErpRt/Kfdl5xUeZyxi9jtxmX/ZFyjE9X/oy8Oh5449svOgjbPhTT cmBOSdL1B7+wSyzXdw6DTtmF6cFtJ92EQ8/wlL+1SuA1exqfeekuBCzFo0ETwnRfQvE9yjTJQNc+2YptT6pVsIJOrqmdglmgtgy7rGtROO+gF1J2uNDskE6c u0zfMhKTLQsGjhp8qTImp/fQktESOLLNhLKDMRyPA6Sz6D6zT8JSFmigF0ZDxsss9KwgrJX6hgiw0aRgnR7/zmAS6ZJ9fndd5to+yYnFY6tFkhEiJZNHkGxO H74ExKwB X-Rspamd-Queue-Id: 5DDCA947EB X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-4.99 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; HAS_XAW(0.00)[]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; REPLYTO_EQ_FROM(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MX_GOOD(-0.01)[cached: spqr.komquats.com]; NEURAL_HAM_SHORT(-0.93)[-0.932,0]; RCPT_COUNT_SEVEN(0.00)[7]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_SPF_NA(0.00)[]; RCVD_IN_DNSWL_LOW(-0.10)[9.134.59.64.list.dnswl.org : 127.0.5.1]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA]; RCVD_TLS_LAST(0.00)[]; IP_SCORE(-2.35)[ip: (-6.20), ipnet: 64.59.128.0/20(-3.08), asn: 6327(-2.38), country: CA(-0.09)]; FROM_EQ_ENVFROM(0.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 15:35:17 -0000 In message <201904071510.x37FA7tm050626@gndrsh.dnsmgr.net>, "Rodney W. Grimes" writes: > > On April 7, 2019 7:11:52 AM PDT, Shawn Webb wr > ote: > > >On Sat, Apr 06, 2019 at 09:34:26AM +0000, Mariusz Zaborski wrote: > > >> Author: oshogbo > > >> Date: Sat Apr 6 09:34:26 2019 > > >> New Revision: 345982 > > >> URL: https://svnweb.freebsd.org/changeset/base/345982 > > >> > > >> Log: > > >> Introduce funlinkat syscall that always us to check if we are > > >removing > > >> the file associated with the given file descriptor. > > >> > > >> Reviewed by: kib, asomers > > >> Reviewed by: cem, jilles, brooks (they reviewed previous version) > > >> Discussed with: pjd, and many others > > >> Differential Revision: https://reviews.freebsd.org/D14567 > > > > > >Hey Mariusz, > > > > > >Is __FreeBSD_version supposed to be bumped after adding new syscalls? > > >I can't remember off-hand. > > > > > >Thanks, > > > > I don't think so. Why force the rebuild of all ports through poudriere over > something that would never affect any of them? > > So that you can if version >= foo to know it is safe to use the new syscal? > Or if version < foo you must use the old way. Granted. However we do need something to avoid gratuitous rebuilds of ports. Personally, my poudriere script adjusts the pkg version ($JAILPATH/data/packages/${JAIL}-${PORTS}/.building/.jailversion) with that of the jail version (reported by poudriere jail -i -j $JAIL), rebuilding all ports when I (the human) determines when the machine should rebuild all ports with -c. In that regard FreeBSD version bumps occasionally seem a little gratuitous. Using the same indicator to tell whether software should be able to use a new feature and when ports build infrastructure should summarily delete all packages forcing a rebuild of absolutely everything is probably not the best. Just throwing out an idea, what if poudriere considers the first N bytes of __FreeBSD_version significant? Having said that, looking at __FreeBSD_version, I don't think we have enough digits to do what I was planning on suggesting. But, you get the idea of what I'm driving at. Maybe a new macro such as __FreeBSD_ports that is incremented every time a change that affects ports? Anyhow, I'm not too terribly concerned as what I have (selfishly speaking) works. But we may as a group might want to consider this at some point to build some efficiency into the ports part of the equation. -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Sun Apr 7 16:07:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2BA081563136; Sun, 7 Apr 2019 16:07:42 +0000 (UTC) (envelope-from oshogbo@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 AA4FD957EC; Sun, 7 Apr 2019 16:07:41 +0000 (UTC) (envelope-from oshogbo@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 9713BE715; Sun, 7 Apr 2019 16:07:41 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37G7fof021280; Sun, 7 Apr 2019 16:07:41 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37G7fFP021279; Sun, 7 Apr 2019 16:07:41 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201904071607.x37G7fFP021279@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Sun, 7 Apr 2019 16:07:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346012 - head/sys/sys X-SVN-Group: head X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: head/sys/sys X-SVN-Commit-Revision: 346012 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AA4FD957EC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 16:07:42 -0000 Author: oshogbo Date: Sun Apr 7 16:07:41 2019 New Revision: 346012 URL: https://svnweb.freebsd.org/changeset/base/346012 Log: Bump FreeBSD version after r345982. Reported by: Shawn Webb Discussed with: imp, cy, rgrimes Modified: head/sys/sys/param.h Modified: head/sys/sys/param.h ============================================================================== --- head/sys/sys/param.h Sun Apr 7 14:30:17 2019 (r346011) +++ head/sys/sys/param.h Sun Apr 7 16:07:41 2019 (r346012) @@ -60,7 +60,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1300017 /* Master, propagated to newvers */ +#define __FreeBSD_version 1300018 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From owner-svn-src-all@freebsd.org Sun Apr 7 16:10:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D20811563214 for ; Sun, 7 Apr 2019 16:10:46 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qt1-x835.google.com (mail-qt1-x835.google.com [IPv6:2607:f8b0:4864:20::835]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6D26C95AA6 for ; Sun, 7 Apr 2019 16:10:46 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qt1-x835.google.com with SMTP id x12so12734251qts.7 for ; Sun, 07 Apr 2019 09:10:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=6C15y/EwF8qjdlIzpTk8WM25tFfyF7RydrDG/QHuW4E=; b=guXqcWnfUsBcCnUDnEZ+gdzlMuUui/8LS9qB5Bf3pMXRXmoJoPZvC3hPNHLqBzu/9Z //sCRTpDB/C6hHnCo1DTUY/LowFmsGjS5wpAjlENKPUjqbYRj3eI6mWxwi6lFVx8wBqK rsuT3PxvRPhRpBIo5TbjEP03ozKyapVbNecYKRjr+xBnQWj/toAFU3M5HoxudkZnqShf W5URaq6fTR9Jc9tgOUrP+kq9bcGNa9Ne5GJJDzN630QFR/8nt0o9Ertlf/mA2b9nhMyX zy4QVgAu4lrmlx/ABUntkUUQaYmHE8IcSDa0XbXl6S0vZ9b6lN5LZSaWhtTD7MPBmkq0 O4dQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=6C15y/EwF8qjdlIzpTk8WM25tFfyF7RydrDG/QHuW4E=; b=tK+uK7XlahklXpUAjyBUl1BwScPrgP6wM/Xu23TouAScFy5+jakiFZT3taY5wRAAa7 mWbVYNX4dil1WjSpWTQmSv6Ud4/JZ/NBG2KpYQxck+xo1wkR/7rnlzJf9Ov0s11WjQu0 VTL0BT/OhjX09eu0P3dqEoOxBhJdJH7q+cTmen7RmlXUw67y/Be8ng/RZA84465YBYY5 znFQM0AGFCi6ExNTFnm7aOCjs/9YfRNESwThZzg7zHrMBO8itb98e9aS6NSX3xcaU77L vL6tRiTahBteEw4F3lgxmjYJXyw/OfzAz4nlZVT72cdnN8nHUspIHR0+QQ1n0AkaxlzO WhkQ== X-Gm-Message-State: APjAAAXLtvK1At0K17L8JqNC2Q9np44jbyjlrx4UrSno7CwnKl+QH0ZX dyiIoh/zv50RX7IuyG8A/K3tHMVoOYuH6NUV8xizew== X-Google-Smtp-Source: APXvYqyoYa3wYbmqt5Wnxtxtk1NUVaLxe2VS5+mURa6Sf6HC70Pxnz/8Evmhf0qD1marEfb+XrZOYdrkI67QqDK//G8= X-Received: by 2002:a0c:9922:: with SMTP id h31mr19336547qvd.137.1554653445352; Sun, 07 Apr 2019 09:10:45 -0700 (PDT) MIME-Version: 1.0 References: <201904071510.x37FA7tm050626@gndrsh.dnsmgr.net> <201904071535.x37FZ7bk073860@slippy.cwsent.com> In-Reply-To: <201904071535.x37FZ7bk073860@slippy.cwsent.com> From: Warner Losh Date: Sun, 7 Apr 2019 10:10:34 -0600 Message-ID: Subject: Re: svn commit: r345982 - in head: include lib/libc/sys sys/cddl/compat/opensolaris/sys sys/compat/cloudabi sys/compat/freebsd32 sys/compat/linux sys/kern sys/sys sys/ufs/ffs To: Cy Schubert Cc: "Rodney W. Grimes" , Shawn Webb , Mariusz Zaborski , src-committers , svn-src-all , svn-src-head X-Rspamd-Queue-Id: 6D26C95AA6 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 16:10:47 -0000 On Sun, Apr 7, 2019 at 9:35 AM Cy Schubert wrote: > In message <201904071510.x37FA7tm050626@gndrsh.dnsmgr.net>, "Rodney W. > Grimes" > writes: > > > On April 7, 2019 7:11:52 AM PDT, Shawn Webb < > shawn.webb@hardenedbsd.org> wr > > ote: > > > >On Sat, Apr 06, 2019 at 09:34:26AM +0000, Mariusz Zaborski wrote: > > > >> Author: oshogbo > > > >> Date: Sat Apr 6 09:34:26 2019 > > > >> New Revision: 345982 > > > >> URL: https://svnweb.freebsd.org/changeset/base/345982 > > > >> > > > >> Log: > > > >> Introduce funlinkat syscall that always us to check if we are > > > >removing > > > >> the file associated with the given file descriptor. > > > >> > > > >> Reviewed by: kib, asomers > > > >> Reviewed by: cem, jilles, brooks (they reviewed previous > version) > > > >> Discussed with: pjd, and many others > > > >> Differential Revision: https://reviews.freebsd.org/D14567 > > > > > > > >Hey Mariusz, > > > > > > > >Is __FreeBSD_version supposed to be bumped after adding new syscalls? > > > >I can't remember off-hand. > > > > > > > >Thanks, > > > > > > I don't think so. Why force the rebuild of all ports through poudriere > over > > something that would never affect any of them? > > > > So that you can if version >= foo to know it is safe to use the new > syscal? > > Or if version < foo you must use the old way. > > Granted. However we do need something to avoid gratuitous rebuilds of > ports. > > Personally, my poudriere script adjusts the pkg version > ($JAILPATH/data/packages/${JAIL}-${PORTS}/.building/.jailversion) with > that of the jail version (reported by poudriere jail -i -j $JAIL), > rebuilding all ports when I (the human) determines when the machine > should rebuild all ports with -c. > > In that regard FreeBSD version bumps occasionally seem a little > gratuitous. Using the same indicator to tell whether software should be > able to use a new feature and when ports build infrastructure should > summarily delete all packages forcing a rebuild of absolutely > everything is probably not the best. > > Just throwing out an idea, what if poudriere considers the first N > bytes of __FreeBSD_version significant? Having said that, looking at > __FreeBSD_version, I don't think we have enough digits to do what I was > planning on suggesting. But, you get the idea of what I'm driving at. > Maybe a new macro such as __FreeBSD_ports that is incremented every > time a change that affects ports? > > Anyhow, I'm not too terribly concerned as what I have (selfishly > speaking) works. But we may as a group might want to consider this at > some point to build some efficiency into the ports part of the equation. > We generally bump the version around the time we add a syscall. This allows any wrappers to call it or not based on the kernel version and avoid a SIGSYS when we're doing forward compatibility hacks for whatever reason. The current overloading of __FreeBSD_version is unfortunate. We've been quite liberal over the past 2 decades at bumping it because it's free to do so. Or so the thinking has been. I personally think we should continue to do so, but maybe look at piggy-backing those changes we can if someone else bumped it in the last few days. To give some perspective, in the ~120 days since we branched, we've bumped it 17 times. This is more or less weekly, which suggests we don't have a problem that we need to optimize too much here. If Poudriere wants to optimize building, I'd suggest that you have a command line argument / config file thing that sets the maximum skew. Normally, you could set it up to be pretty tolerant, but if you knew something was a big deal, you could then crank down to intolerant. The current setting of '1' for this skew should be the default. I'm not sure a FreeBSD_ports would scale. How do you know a port won't need to know about the new syscall? It's from Linux, and there may be some ports that use it if available. As a src committer, I've not easy way to know (and no hard way to know that's not a full exprun). Warner From owner-svn-src-all@freebsd.org Sun Apr 7 16:12:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2271715633FC; Sun, 7 Apr 2019 16:12:03 +0000 (UTC) (envelope-from oshogbo.vx@gmail.com) Received: from mail-lj1-x241.google.com (mail-lj1-x241.google.com [IPv6:2a00:1450:4864:20::241]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 850FE95CCA; Sun, 7 Apr 2019 16:12:02 +0000 (UTC) (envelope-from oshogbo.vx@gmail.com) Received: by mail-lj1-x241.google.com with SMTP id q66so9080855ljq.7; Sun, 07 Apr 2019 09:12:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=zKBJgPPpYeE2fRAQDfKtArFbxuSMFkoVrGfEkJcwdc0=; b=VfL0w7uChzynMtA3D/Bnq4+ixUfJfp5PEw4SRoQvIGpZp+I0DfA9/dpxfAS+Xku9T/ NTBdiD/4HfAbF3JUTtgCgtnPdANj8scoTQwRLWe0bKWPDUJabY+/6fHc0bclLxlgXDpZ h5PMYIO047f5oVdm6UlixE5qhRzhmBfDTBFf4w/kbmk/hZB6dxVYEW8U2gEybazszQSL I6fXTyJ3p/TDCNdPHKO9yodD1+IoXhxqHLiVH3EPOI+QCtY11V9IMjT4f/KZQZHkxmUk M+GRghOtdtVnyAGm5pxrXvn2Yvv5BZ/b9V83hYPXceBXm6MCEsZyIixRaJb8o0S5T/eJ 9sTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to:user-agent; bh=zKBJgPPpYeE2fRAQDfKtArFbxuSMFkoVrGfEkJcwdc0=; b=I+lbAUD7O5DNJDSpOmg8dWhwmDi3NKiYdf2tEgzPTQhcD4DuEACV8ekRQM0yVSlk6H kD/j6NQFry21eo7lcrIhVdQ/NXBIXy5l1vjgIp/RVK+aJJTyqsFQGIhKH6DH0pl4ZEF7 +8aUWU1BaMgSoWjWSOhRqat773X2fn5F4qf7kkHag0WAz7Djgp2tYtiqECQRSBDudQwh e5aRQNvCyBgPbnXpVieiJu6EWinRYJeJQWvAWJvQ1vwJXJ/0wgUQGTC7+4JlswjE57Kn lr9u29wW3Aos0x6utRD2wV1H8pvZXFybfzkiF8pEoYy6hrCk8E6W8NsXdQKo7zjnSfQQ pZHQ== X-Gm-Message-State: APjAAAXmgi8wyzatqlcGPNcgn97z8ZPBxtwhvTQ0p+ATY8CadGaPG7rB lAcK/4sUqWP1qXoBSlRQ6ts4aEZvM+z+dw== X-Google-Smtp-Source: APXvYqzezo02ZEqWOpPWnzwwO4+Fi6b4EN0dTH0Q5iudLC/rKitWd36K3QMZlwwOCUTUNaxfp5UOoA== X-Received: by 2002:a2e:9010:: with SMTP id h16mr13001040ljg.16.1554653521216; Sun, 07 Apr 2019 09:12:01 -0700 (PDT) Received: from x-wing (87-206-170-77.dynamic.chello.pl. [87.206.170.77]) by smtp.gmail.com with ESMTPSA id t14sm5575298lfl.38.2019.04.07.09.11.59 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 07 Apr 2019 09:11:59 -0700 (PDT) Sender: Mariusz Zaborski Date: Sun, 7 Apr 2019 18:11:58 +0200 From: Mariusz Zaborski To: Cy Schubert Cc: rgrimes@freebsd.org, Shawn Webb , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r345982 - in head: include lib/libc/sys sys/cddl/compat/opensolaris/sys sys/compat/cloudabi sys/compat/freebsd32 sys/compat/linux sys/kern sys/sys sys/ufs/ffs Message-ID: <20190407161158.GA40247@x-wing> References: <201904071510.x37FA7tm050626@gndrsh.dnsmgr.net> <201904071535.x37FZ7bk073860@slippy.cwsent.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="ibTvN161/egqYuK8" Content-Disposition: inline In-Reply-To: <201904071535.x37FZ7bk073860@slippy.cwsent.com> User-Agent: Mutt/1.11.2 (2019-01-07) X-Rspamd-Queue-Id: 850FE95CCA X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 16:12:03 -0000 --ibTvN161/egqYuK8 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable In the https://wiki.freebsd.org/AddingSyscalls we mentions that we need to = bump __FreeBSD_version. I confirmed that with Warner. So this was my mistake. Thanks Shawn. --=20 Mariusz Zaborski oshogbo//vx | http://oshogbo.vexillium.org FreeBSD committer | https://freebsd.org Software developer | http://wheelsystems.com If it's not broken, let's fix it till it is!!1 On Sun, Apr 07, 2019 at 08:35:07AM -0700, Cy Schubert wrote: > In message <201904071510.x37FA7tm050626@gndrsh.dnsmgr.net>, "Rodney W.=20 > Grimes" > writes: > > > On April 7, 2019 7:11:52 AM PDT, Shawn Webb wr > > ote: > > > >On Sat, Apr 06, 2019 at 09:34:26AM +0000, Mariusz Zaborski wrote: > > > >> Author: oshogbo > > > >> Date: Sat Apr 6 09:34:26 2019 > > > >> New Revision: 345982 > > > >> URL: https://svnweb.freebsd.org/changeset/base/345982 > > > >>=20 > > > >> Log: > > > >> Introduce funlinkat syscall that always us to check if we are > > > >removing > > > >> the file associated with the given file descriptor. > > > >> =20 > > > >> Reviewed by: kib, asomers > > > >> Reviewed by: cem, jilles, brooks (they reviewed previous version) > > > >> Discussed with: pjd, and many others > > > >> Differential Revision: https://reviews.freebsd.org/D14567 > > > > > > > >Hey Mariusz, > > > > > > > >Is __FreeBSD_version supposed to be bumped after adding new syscalls? > > > >I can't remember off-hand. > > > > > > > >Thanks, > > >=20 > > > I don't think so. Why force the rebuild of all ports through poudrier= e over > > something that would never affect any of them? > > > > So that you can if version >=3D foo to know it is safe to use the new s= yscal? > > Or if version < foo you must use the old way. >=20 > Granted. However we do need something to avoid gratuitous rebuilds of=20 > ports. >=20 > Personally, my poudriere script adjusts the pkg version=20 > ($JAILPATH/data/packages/${JAIL}-${PORTS}/.building/.jailversion) with=20 > that of the jail version (reported by poudriere jail -i -j $JAIL),=20 > rebuilding all ports when I (the human) determines when the machine=20 > should rebuild all ports with -c. >=20 > In that regard FreeBSD version bumps occasionally seem a little=20 > gratuitous. Using the same indicator to tell whether software should be= =20 > able to use a new feature and when ports build infrastructure should=20 > summarily delete all packages forcing a rebuild of absolutely=20 > everything is probably not the best. >=20 > Just throwing out an idea, what if poudriere considers the first N=20 > bytes of __FreeBSD_version significant? Having said that, looking at=20 > __FreeBSD_version, I don't think we have enough digits to do what I was= =20 > planning on suggesting. But, you get the idea of what I'm driving at.=20 > Maybe a new macro such as __FreeBSD_ports that is incremented every=20 > time a change that affects ports? >=20 > Anyhow, I'm not too terribly concerned as what I have (selfishly=20 > speaking) works. But we may as a group might want to consider this at=20 > some point to build some efficiency into the ports part of the equation. >=20 >=20 > --=20 > Cheers, > Cy Schubert > FreeBSD UNIX: Web: http://www.FreeBSD.org >=20 > The need of the many outweighs the greed of the few. > =20 >=20 --ibTvN161/egqYuK8 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEkD1x0xkJXVVY1Gwf38KEGuLGxWQFAlyqIUoACgkQ38KEGuLG xWRSaQ/+K9Xb1fcdDZ5U+5bVEfQKBJJGnMjla+sGEDqTzTN24NWqs9KETAtyqXjY c7PLJxlWCaEtWZPsFMNikBm0k6OA4WaqgNS4EIdwgS2oGW9uKRv3dv1iuFzD6Ovl qt7DQd+Bb9AX/3tFamQHc6ZgDyFwWq2GzbH0g1F9XXLEdXAbK5W/itU54RxBP795 iIOwg66KcppvHZ/UytgV90+nuK8VbQqL4pFYqPCNk7vADwqWQF02GRrqWaKimmlt CA3D2q+gDWA81mb+hxc6CrhZTJxws8i/rA7qEodUjmBqlsZulLyw19/B+hVSjy/2 tx1rvvk8eIjuM/lDOQftvmjN3jLreld4Q3zZewOCYPR4CwqzaiwIwF+t5M/TLy99 jRoZXZmzeNCpvo6bDcHs5RUU1xL8Ma6diOGbMnqHLl3hptOcODEFyaxrd/frrIZ4 WmmG4RwjkVkcmsvOlB4k6PAEH3p1OeSPnMclQb8OYdZy965CaGB2M/wbUTeOtxIZ IV1zWgd2/rwSPPJRGryXAikaNNEtkHVjNxC0Y56MPr4vbwxuO1pUbkWVQAdKzvPJ L8ITyDZUIieVrsbQSwMlNq814MNoO0eXO9oaLpbZP1ArXE+eDfSobablyDVPcNxz VCFCwalaiel9p71pTPb5kxSIDdwbfYadzIbcTtxufSSlUgsatkA= =OXw0 -----END PGP SIGNATURE----- --ibTvN161/egqYuK8-- From owner-svn-src-all@freebsd.org Sun Apr 7 16:33:23 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BD3891563D2D; Sun, 7 Apr 2019 16:33:23 +0000 (UTC) (envelope-from ian@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 5D80496AD3; Sun, 7 Apr 2019 16:33:23 +0000 (UTC) (envelope-from ian@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 EA015EC33; Sun, 7 Apr 2019 16:33:22 +0000 (UTC) (envelope-from ian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37GXMBD037457; Sun, 7 Apr 2019 16:33:22 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37GXMni037456; Sun, 7 Apr 2019 16:33:22 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201904071633.x37GXMni037456@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sun, 7 Apr 2019 16:33:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346013 - head/sys/modules/geom/geom_label X-SVN-Group: head X-SVN-Commit-Author: ian X-SVN-Commit-Paths: head/sys/modules/geom/geom_label X-SVN-Commit-Revision: 346013 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5D80496AD3 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 16:33:23 -0000 Author: ian Date: Sun Apr 7 16:33:22 2019 New Revision: 346013 URL: https://svnweb.freebsd.org/changeset/base/346013 Log: Add g_label_flashmap.c to the module, should have been part of r345480. Reported by: Jia-Shiun Li Modified: head/sys/modules/geom/geom_label/Makefile Modified: head/sys/modules/geom/geom_label/Makefile ============================================================================== --- head/sys/modules/geom/geom_label/Makefile Sun Apr 7 16:07:41 2019 (r346012) +++ head/sys/modules/geom/geom_label/Makefile Sun Apr 7 16:33:22 2019 (r346013) @@ -6,6 +6,7 @@ KMOD= geom_label SRCS= g_label.c SRCS+= g_label_disk_ident.c SRCS+= g_label_ext2fs.c +SRCS+= g_label_flashmap.c SRCS+= g_label_gpt.c SRCS+= g_label_iso9660.c SRCS+= g_label_msdosfs.c From owner-svn-src-all@freebsd.org Sun Apr 7 16:52:45 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 341D51564831; Sun, 7 Apr 2019 16:52:45 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-so.shaw.ca (smtp-out-so.shaw.ca [64.59.136.137]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 3CC8497BF5; Sun, 7 Apr 2019 16:52:42 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA id DB26hu2mYo7SQDB27hSY0o; Sun, 07 Apr 2019 10:52:41 -0600 X-Authority-Analysis: v=2.3 cv=Go88BX9C c=1 sm=1 tr=0 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=kj9zAlcOel0A:10 a=oexKYjalfGEA:10 a=xfDLHkLGAAAA:8 a=YxBL1-UpAAAA:8 a=iKhvJSA4AAAA:8 a=ypVJL4-jAAAA:8 a=6I5d2MoRAAAA:8 a=FeRXxS_nJQ1RsfFfj7UA:9 a=CjuIK1q_8ugA:10 a=IfaqVvZgccqrtc8gcwf2:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=odh9cflL3HIXMm4fY7Wr:22 a=khIbc0fXALFIcTpOSxgJ:22 a=IjZwj45LgO3ly-622nXo:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id 060A0B56; Sun, 7 Apr 2019 09:52:36 -0700 (PDT) Received: from slippy.cwsent.com (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x37Gqawe075828; Sun, 7 Apr 2019 09:52:36 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Received: from slippy (cy@localhost) by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x37GqYU9075823; Sun, 7 Apr 2019 09:52:34 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201904071652.x37GqYU9075823@slippy.cwsent.com> X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Warner Losh cc: Cy Schubert , "Rodney W. Grimes" , Shawn Webb , Mariusz Zaborski , src-committers , svn-src-all , svn-src-head Subject: Re: svn commit: r345982 - in head: include lib/libc/sys sys/cddl/compat/opensolaris/sys sys/compat/cloudabi sys/compat/freebsd32 sys/compat/linux sys/kern sys/sys sys/ufs/ffs In-Reply-To: Message from Warner Losh of "Sun, 07 Apr 2019 10:10:34 -0600." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sun, 07 Apr 2019 09:52:34 -0700 X-CMAE-Envelope: MS4wfGsk4elrxU6Bw1ajaiU74lmu1w5cgLMMEBUcyaZphA25sDdM/lGb/MxSpvCN0R5HTkHs+LniMvyD78mcN2wrBEXt7qh7+bf4H99sMRQz9gHCBaSzYSCQ 3PTNA1FPofL8+LtPv0coiSrNeu1+tLwtEFXxfUDGJFCSDFpXjNhaLnZFE2fEHrtrGiefAVwOP42NFU4oq6JZMQH7EYvF701o4V34jH2gxRgIGPw5twVUIa1o 75KeZa/MB3r88BS1k0S4h5iodjZuv8ZRBO62WHl3Tiv5M+1PP5ETNoMIlKEVp7kDLvv1JRMLH3bVE5/yTGeAbqFHFbmgemrj/iBi6gmzeIlw5y5R4n3vPt7V 4nAh4bG3olctqlL/RYAbnPT/xpZmidfIdgXkopUASdBfEGFrIsE= X-Rspamd-Queue-Id: 3CC8497BF5 X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-4.76 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; FROM_HAS_DN(0.00)[]; MV_CASE(0.50)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; HAS_XAW(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; REPLYTO_EQ_FROM(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11]; TO_MATCH_ENVRCPT_SOME(0.00)[]; TO_DN_ALL(0.00)[]; MX_GOOD(-0.01)[cached: spqr.komquats.com]; NEURAL_HAM_SHORT(-0.76)[-0.759,0]; RCPT_COUNT_SEVEN(0.00)[8]; R_SPF_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA]; RCVD_TLS_LAST(0.00)[]; IP_SCORE(-2.29)[ip: (-5.93), ipnet: 64.59.128.0/20(-3.07), asn: 6327(-2.38), country: CA(-0.09)]; RCVD_IN_DNSWL_LOW(-0.10)[137.136.59.64.list.dnswl.org : 127.0.5.1] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 16:52:45 -0000 In message , Warner Losh writes: > --0000000000005c05ef0585f2f684 > Content-Type: text/plain; charset="UTF-8" > > On Sun, Apr 7, 2019 at 9:35 AM Cy Schubert > wrote: > > > In message <201904071510.x37FA7tm050626@gndrsh.dnsmgr.net>, "Rodney W. > > Grimes" > > writes: > > > > On April 7, 2019 7:11:52 AM PDT, Shawn Webb < > > shawn.webb@hardenedbsd.org> wr > > > ote: > > > > >On Sat, Apr 06, 2019 at 09:34:26AM +0000, Mariusz Zaborski wrote: > > > > >> Author: oshogbo > > > > >> Date: Sat Apr 6 09:34:26 2019 > > > > >> New Revision: 345982 > > > > >> URL: https://svnweb.freebsd.org/changeset/base/345982 > > > > >> > > > > >> Log: > > > > >> Introduce funlinkat syscall that always us to check if we are > > > > >removing > > > > >> the file associated with the given file descriptor. > > > > >> > > > > >> Reviewed by: kib, asomers > > > > >> Reviewed by: cem, jilles, brooks (they reviewed previous > > version) > > > > >> Discussed with: pjd, and many others > > > > >> Differential Revision: https://reviews.freebsd.org/D14567 > > > > > > > > > >Hey Mariusz, > > > > > > > > > >Is __FreeBSD_version supposed to be bumped after adding new syscalls? > > > > >I can't remember off-hand. > > > > > > > > > >Thanks, > > > > > > > > I don't think so. Why force the rebuild of all ports through poudriere > > over > > > something that would never affect any of them? > > > > > > So that you can if version >= foo to know it is safe to use the new > > syscal? > > > Or if version < foo you must use the old way. > > > > Granted. However we do need something to avoid gratuitous rebuilds of > > ports. > > > > Personally, my poudriere script adjusts the pkg version > > ($JAILPATH/data/packages/${JAIL}-${PORTS}/.building/.jailversion) with > > that of the jail version (reported by poudriere jail -i -j $JAIL), > > rebuilding all ports when I (the human) determines when the machine > > should rebuild all ports with -c. > > > > In that regard FreeBSD version bumps occasionally seem a little > > gratuitous. Using the same indicator to tell whether software should be > > able to use a new feature and when ports build infrastructure should > > summarily delete all packages forcing a rebuild of absolutely > > everything is probably not the best. > > > > Just throwing out an idea, what if poudriere considers the first N > > bytes of __FreeBSD_version significant? Having said that, looking at > > __FreeBSD_version, I don't think we have enough digits to do what I was > > planning on suggesting. But, you get the idea of what I'm driving at. > > Maybe a new macro such as __FreeBSD_ports that is incremented every > > time a change that affects ports? > > > > Anyhow, I'm not too terribly concerned as what I have (selfishly > > speaking) works. But we may as a group might want to consider this at > > some point to build some efficiency into the ports part of the equation. > > > > We generally bump the version around the time we add a syscall. This allows > any wrappers to call it or not based on the kernel version and avoid a > SIGSYS when we're doing forward compatibility hacks for whatever reason. > > The current overloading of __FreeBSD_version is unfortunate. We've been > quite liberal over the past 2 decades at bumping it because it's free to do > so. Or so the thinking has been. I personally think we should continue to > do so, but maybe look at piggy-backing those changes we can if someone else > bumped it in the last few days. To give some perspective, in the ~120 days > since we branched, we've bumped it 17 times. This is more or less weekly, > which suggests we don't have a problem that we need to optimize too much > here. > > If Poudriere wants to optimize building, I'd suggest that you have a > command line argument / config file thing that sets the maximum skew. > Normally, you could set it up to be pretty tolerant, but if you knew > something was a big deal, you could then crank down to intolerant. The > current setting of '1' for this skew should be the default. It's not that simple. A skew may miss an important change to base that will affect ports. Having resulting packages that segfault could be unacceptable outcome. An argument to ignore the jail/pkg version comparison or arbitrarily update it (like my script does) would solve this. However someone not monitoring base commit log commits, an arbitrary argument to poudriere could result in unnecessary mailing list noise or bugzilla tickets, both of which are time wasters. > > I'm not sure a FreeBSD_ports would scale. How do you know a port won't need > to know about the new syscall? It's from Linux, and there may be some ports > that use it if available. As a src committer, I've not easy way to know > (and no hard way to know that's not a full exprun). That's the other problem. Not everyone will know how a change may affect applications. I suppose the best might be a poudriere flag or config option to ignore jail and pkg version differences and let the human decide. Not all changes affect all ports and those that do should have have a portrevision bump anyway, which BTW is sometimes done. My making kerberos private in base is one such example. There are quite a few ports affected. The exp-run only identified a few who's options don't need kerberos in their default configuration. The more I look the more I discover. The base part of the project was easy (and pretty much ready to commit might I add). Ports OTOH tedious and still much to do. In the very worst case a version bump hardly scratches the surface ... unfortunately. I don't think we can answer this here. Maybe this rises to the level of a developer summit topic one year. -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Sun Apr 7 17:28:30 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5B8431565984; Sun, 7 Apr 2019 17:28:30 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C717D6A6B5; Sun, 7 Apr 2019 17:28:29 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x37HSRIf051226; Sun, 7 Apr 2019 10:28:27 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x37HSR2A051225; Sun, 7 Apr 2019 10:28:27 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904071728.x37HSR2A051225@gndrsh.dnsmgr.net> Subject: Re: svn commit: r346012 - head/sys/sys In-Reply-To: <201904071607.x37G7fFP021279@repo.freebsd.org> To: Mariusz Zaborski Date: Sun, 7 Apr 2019 10:28:27 -0700 (PDT) CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: C717D6A6B5 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.91 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.91)[-0.914,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 17:28:30 -0000 > Author: oshogbo > Date: Sun Apr 7 16:07:41 2019 > New Revision: 346012 > URL: https://svnweb.freebsd.org/changeset/base/346012 > > Log: > Bump FreeBSD version after r345982. > > Reported by: Shawn Webb > Discussed with: imp, cy, rgrimes This is just a note for future reference. Though there was some email exchange on the list, I am not sure that quantifies as what we call "discussed with", for one I never sent to, nor responded to, any email from/to you directly. Regards, Rod > Modified: > head/sys/sys/param.h > > Modified: head/sys/sys/param.h > ============================================================================== > --- head/sys/sys/param.h Sun Apr 7 14:30:17 2019 (r346011) > +++ head/sys/sys/param.h Sun Apr 7 16:07:41 2019 (r346012) > @@ -60,7 +60,7 @@ > * in the range 5 to 9. > */ > #undef __FreeBSD_version > -#define __FreeBSD_version 1300017 /* Master, propagated to newvers */ > +#define __FreeBSD_version 1300018 /* Master, propagated to newvers */ > > /* > * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, > > -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Sun Apr 7 17:34:54 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 892DA1565CAC for ; Sun, 7 Apr 2019 17:34:54 +0000 (UTC) (envelope-from shawn.webb@hardenedbsd.org) Received: from mail-qt1-x841.google.com (mail-qt1-x841.google.com [IPv6:2607:f8b0:4864:20::841]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1D7466AB67 for ; Sun, 7 Apr 2019 17:34:54 +0000 (UTC) (envelope-from shawn.webb@hardenedbsd.org) Received: by mail-qt1-x841.google.com with SMTP id p20so12846682qtc.9 for ; Sun, 07 Apr 2019 10:34:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hardenedbsd.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=UAbBekVDhxJT5CSdvsfCRbrg25l68MYS2PLzE7bYqYs=; b=P4kVY65Fod6ExxQrPEL8b6rY6Khu8pb4sKHM9Ry4S9CGSNgH6O+psfRNNOykDUsBsl pblCu9BxQMxmHE5yuy0KOg7y3MTWy08MNUKZya+Pg1U7PWV3zTU3yqS2YaC6tU7kPuvg UnBQdPxbBebgsK9unZO/5mc2s85a0cZHPeVaOrfV2pHSjVBWjcv23OLDp3++pnJo6/HB usbC0cUOHgpyPkRxeg/fpErqnErWM6LgnMHvXGw1fNar49W80bbtEIk3AFhyfbc5pjiQ Fa65kh/van6zZaVIZwI+S1Wl+yTX58JmZZCUXebntWtjX7kf9HtfuEKWgWshDhepatJR p1pQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=UAbBekVDhxJT5CSdvsfCRbrg25l68MYS2PLzE7bYqYs=; b=BnBYF4EugY23T7faE5Fuvml1Jw+AdvCdGVbbhpVxUiPy9cbOvObS23EwDvY6R5WdM/ c9qwwr/+HRHJFXNI+IvZQjE+7jqmN+LCWoNnMRzXK9IHiQlYg4qPHzuz5tzb8nx1kPlT fWAVNudYsKUdTvLgz0IyVuqe8nsZPG2OBSfGPPaNhgggA/tQ2BZ0odLyeltH7jqiTHaE dV3i22nVXKS/5z7I2/rjDrg03zzrqsSYdaffrhi7m4DUali9uL+TaHn4+ag6d4W5zPmo AFCzh3t83o7puIKi19dzK9r7+fv6n6vwRlPQJ4b2i30oLKWMDCEPZ2piglV7r2xioVqR C4sA== X-Gm-Message-State: APjAAAXYU+bjTqz86/x0HUNwmdbDqKGu2weZ0Lp2+t8+aJAi1F/dkqUA DO1KYVY5j4fNrFzp3I8KKS+2XA== X-Google-Smtp-Source: APXvYqw2Ikz4Y26A1HGK1B+HUfeskC76s4TOhgT+mj5dqAvTh0uAhOjkzkfHlQep4KT1K0yHJXvJFw== X-Received: by 2002:ac8:38f5:: with SMTP id g50mr20013847qtc.119.1554658493581; Sun, 07 Apr 2019 10:34:53 -0700 (PDT) Received: from mutt-hbsd ([151.196.118.239]) by smtp.gmail.com with ESMTPSA id x24sm4619410qtm.65.2019.04.07.10.34.52 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 07 Apr 2019 10:34:52 -0700 (PDT) Date: Sun, 7 Apr 2019 13:33:59 -0400 From: Shawn Webb To: Mariusz Zaborski Cc: Cy Schubert , rgrimes@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r345982 - in head: include lib/libc/sys sys/cddl/compat/opensolaris/sys sys/compat/cloudabi sys/compat/freebsd32 sys/compat/linux sys/kern sys/sys sys/ufs/ffs Message-ID: <20190407173359.vc2fwmnsbky7dlkj@mutt-hbsd> References: <201904071510.x37FA7tm050626@gndrsh.dnsmgr.net> <201904071535.x37FZ7bk073860@slippy.cwsent.com> <20190407161158.GA40247@x-wing> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="h5gs4klk52ndinq6" Content-Disposition: inline In-Reply-To: <20190407161158.GA40247@x-wing> X-Operating-System: FreeBSD mutt-hbsd 13.0-CURRENT-HBSD FreeBSD 13.0-CURRENT-HBSD r345948+db88569731b7(hardened/current/master) HARDENEDBSD-13-CURRENT amd64 X-PGP-Key: http://pgp.mit.edu/pks/lookup?op=vindex&search=0xFF2E67A277F8E1FA User-Agent: NeoMutt/20180716 X-Rspamd-Queue-Id: 1D7466AB67 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 17:34:54 -0000 --h5gs4klk52ndinq6 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable No worries. Thanks for the correction! --=20 Shawn Webb Cofounder / Security Engineer HardenedBSD Tor-ified Signal: +1 443-546-8752 Tor+XMPP+OTR: lattera@is.a.hacker.sx GPG Key ID: 0x6A84658F52456EEE GPG Key Fingerprint: D206 BB45 15E0 9C49 0CF9 3633 C85B 0AF8 AB23 0FB2 On Sun, Apr 07, 2019 at 06:11:58PM +0200, Mariusz Zaborski wrote: > In the https://wiki.freebsd.org/AddingSyscalls we mentions that we need t= o bump > __FreeBSD_version. I confirmed that with Warner. So this was my mistake. >=20 > Thanks Shawn. > --=20 > Mariusz Zaborski > oshogbo//vx | http://oshogbo.vexillium.org > FreeBSD committer | https://freebsd.org > Software developer | http://wheelsystems.com > If it's not broken, let's fix it till it is!!1 >=20 > On Sun, Apr 07, 2019 at 08:35:07AM -0700, Cy Schubert wrote: > > In message <201904071510.x37FA7tm050626@gndrsh.dnsmgr.net>, "Rodney W.= =20 > > Grimes" > > writes: > > > > On April 7, 2019 7:11:52 AM PDT, Shawn Webb wr > > > ote: > > > > >On Sat, Apr 06, 2019 at 09:34:26AM +0000, Mariusz Zaborski wrote: > > > > >> Author: oshogbo > > > > >> Date: Sat Apr 6 09:34:26 2019 > > > > >> New Revision: 345982 > > > > >> URL: https://svnweb.freebsd.org/changeset/base/345982 > > > > >>=20 > > > > >> Log: > > > > >> Introduce funlinkat syscall that always us to check if we are > > > > >removing > > > > >> the file associated with the given file descriptor. > > > > >> =20 > > > > >> Reviewed by: kib, asomers > > > > >> Reviewed by: cem, jilles, brooks (they reviewed previous versi= on) > > > > >> Discussed with: pjd, and many others > > > > >> Differential Revision: https://reviews.freebsd.org/D14567 > > > > > > > > > >Hey Mariusz, > > > > > > > > > >Is __FreeBSD_version supposed to be bumped after adding new syscal= ls? > > > > >I can't remember off-hand. > > > > > > > > > >Thanks, > > > >=20 > > > > I don't think so. Why force the rebuild of all ports through poudri= ere over > > > something that would never affect any of them? > > > > > > So that you can if version >=3D foo to know it is safe to use the new= syscal? > > > Or if version < foo you must use the old way. > >=20 > > Granted. However we do need something to avoid gratuitous rebuilds of= =20 > > ports. > >=20 > > Personally, my poudriere script adjusts the pkg version=20 > > ($JAILPATH/data/packages/${JAIL}-${PORTS}/.building/.jailversion) with= =20 > > that of the jail version (reported by poudriere jail -i -j $JAIL),=20 > > rebuilding all ports when I (the human) determines when the machine=20 > > should rebuild all ports with -c. > >=20 > > In that regard FreeBSD version bumps occasionally seem a little=20 > > gratuitous. Using the same indicator to tell whether software should be= =20 > > able to use a new feature and when ports build infrastructure should=20 > > summarily delete all packages forcing a rebuild of absolutely=20 > > everything is probably not the best. > >=20 > > Just throwing out an idea, what if poudriere considers the first N=20 > > bytes of __FreeBSD_version significant? Having said that, looking at=20 > > __FreeBSD_version, I don't think we have enough digits to do what I was= =20 > > planning on suggesting. But, you get the idea of what I'm driving at.= =20 > > Maybe a new macro such as __FreeBSD_ports that is incremented every=20 > > time a change that affects ports? > >=20 > > Anyhow, I'm not too terribly concerned as what I have (selfishly=20 > > speaking) works. But we may as a group might want to consider this at= =20 > > some point to build some efficiency into the ports part of the equation. > >=20 > >=20 > > --=20 > > Cheers, > > Cy Schubert > > FreeBSD UNIX: Web: http://www.FreeBSD.org > >=20 > > The need of the many outweighs the greed of the few. > > =20 > >=20 --h5gs4klk52ndinq6 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEA6TL67gupaZ9nzhT/y5nonf44foFAlyqNIAACgkQ/y5nonf4 4fr28xAAh1pFG/uwPHj1IgEn40Dm66GilPg84s02U2zbRzmV3rfCXK7jeN2yysVm eKZCzJtrdyXZeG7syqibhGvNRaIYcxXcStQFWl+G2qT/iPpLw9PdJI987TzRyKqY uXX8Stxsc7g1Nz/48HD7aXXv6wa42SXO2XNSlOR4o6S0lh2hKefYFteD2ftSoMK6 JT7+yCLzQJQU0BIvP4kT/FPMSfg/eCjR1FqGOXVkv4VygaVGoP3QUs4VAszwbh9E inBl8oQr2jZF9w09OlHf7w5vSp0vYhs34McIi4BonyaEhUz7jjNZ6BdbjOrwo85g o28/agMPeDvP25mM3Ifyn2F9U8etM2Y4WrPyIc8fYPSuCxgfTpnfiF2dN74t6Epc mzbwickapoadulnEeCIW/Z9R/FS5TTiGgkKl7u7YKL8QDZu96gjJn8PBsSDy4PaH 9j+8MEaz0J4eiAU+SEySrTU2GWW6RuzbZ6hymVXLlNzZfpG3Z9oRNgOD41dG+Y49 /3pF9ZhL2XLMTMxDZLPGSyv9AbOijTdmzZuTTj9U2/Ei2DT4Yyy0+zp1iOlpy9dg LHq5Nvztuk9yA7Ig25s6952CseuvjnscJ/5yHng2QPdGpEXcme9lY1yjZF/70tn5 MZGYo38hr6kwnLHTJ38ucw2FT+uV2cPuzKbwqxW31eOuI1T7gyM= =K2n/ -----END PGP SIGNATURE----- --h5gs4klk52ndinq6-- From owner-svn-src-all@freebsd.org Sun Apr 7 17:49:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DE0AE1566271; Sun, 7 Apr 2019 17:49:40 +0000 (UTC) (envelope-from eadler@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 7D3526B328; Sun, 7 Apr 2019 17:49:40 +0000 (UTC) (envelope-from eadler@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 579F8F878; Sun, 7 Apr 2019 17:49:40 +0000 (UTC) (envelope-from eadler@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37HneQr075853; Sun, 7 Apr 2019 17:49:40 GMT (envelope-from eadler@FreeBSD.org) Received: (from eadler@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37Hne2a075852; Sun, 7 Apr 2019 17:49:40 GMT (envelope-from eadler@FreeBSD.org) Message-Id: <201904071749.x37Hne2a075852@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: eadler set sender to eadler@FreeBSD.org using -f From: Eitan Adler Date: Sun, 7 Apr 2019 17:49:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org Subject: svn commit: r346015 - svnadmin/conf X-SVN-Group: svnadmin X-SVN-Commit-Author: eadler X-SVN-Commit-Paths: svnadmin/conf X-SVN-Commit-Revision: 346015 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7D3526B328 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 17:49:41 -0000 Author: eadler Date: Sun Apr 7 17:49:39 2019 New Revision: 346015 URL: https://svnweb.freebsd.org/changeset/base/346015 Log: Release bcran Rebecca has not actually needed mentorship in some time. Modified: svnadmin/conf/mentors Modified: svnadmin/conf/mentors ============================================================================== --- svnadmin/conf/mentors Sun Apr 7 17:22:31 2019 (r346014) +++ svnadmin/conf/mentors Sun Apr 7 17:49:39 2019 (r346015) @@ -12,7 +12,6 @@ # Mentee Mentor Optional comment achim scottl Co-mentor: emaste anish jhb -bcran eadler brd allanjude Co-mentor: bapt def pjd gordon delphij Co-mentor: emaste From owner-svn-src-all@freebsd.org Sun Apr 7 18:24:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C911915671F3; Sun, 7 Apr 2019 18:24:29 +0000 (UTC) (envelope-from mhorne@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 621176C5B3; Sun, 7 Apr 2019 18:24:29 +0000 (UTC) (envelope-from mhorne@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 3C73CFF45; Sun, 7 Apr 2019 18:24:29 +0000 (UTC) (envelope-from mhorne@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37IOTvg096350; Sun, 7 Apr 2019 18:24:29 GMT (envelope-from mhorne@FreeBSD.org) Received: (from mhorne@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37IORSh096341; Sun, 7 Apr 2019 18:24:27 GMT (envelope-from mhorne@FreeBSD.org) Message-Id: <201904071824.x37IORSh096341@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mhorne set sender to mhorne@FreeBSD.org using -f From: Mitchell Horne Date: Sun, 7 Apr 2019 18:24:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346016 - in head: lib/clang lib/clang/include/llvm/Config lib/clang/libllvm share/man/man5 share/mk tools/build/options X-SVN-Group: head X-SVN-Commit-Author: mhorne X-SVN-Commit-Paths: in head: lib/clang lib/clang/include/llvm/Config lib/clang/libllvm share/man/man5 share/mk tools/build/options X-SVN-Commit-Revision: 346016 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 621176C5B3 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 18:24:30 -0000 Author: mhorne Date: Sun Apr 7 18:24:26 2019 New Revision: 346016 URL: https://svnweb.freebsd.org/changeset/base/346016 Log: Add option to build LLVM RISC-V target Reviewed by: emaste, dim Approved by: markj (mentor) MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D19759 Added: head/tools/build/options/WITHOUT_LLVM_TARGET_RISCV (contents, props changed) head/tools/build/options/WITH_LLVM_TARGET_RISCV (contents, props changed) Modified: head/lib/clang/include/llvm/Config/AsmParsers.def head/lib/clang/include/llvm/Config/AsmPrinters.def head/lib/clang/include/llvm/Config/Disassemblers.def head/lib/clang/include/llvm/Config/Targets.def head/lib/clang/libllvm/Makefile head/lib/clang/llvm.build.mk head/share/man/man5/src.conf.5 head/share/mk/src.opts.mk Modified: head/lib/clang/include/llvm/Config/AsmParsers.def ============================================================================== --- head/lib/clang/include/llvm/Config/AsmParsers.def Sun Apr 7 17:49:39 2019 (r346015) +++ head/lib/clang/include/llvm/Config/AsmParsers.def Sun Apr 7 18:24:26 2019 (r346016) @@ -19,6 +19,9 @@ LLVM_ASM_PARSER(Mips) #ifdef LLVM_TARGET_ENABLE_POWERPC LLVM_ASM_PARSER(PowerPC) #endif +#ifdef LLVM_TARGET_ENABLE_RISCV +LLVM_ASM_PARSER(RISCV) +#endif #ifdef LLVM_TARGET_ENABLE_SPARC LLVM_ASM_PARSER(Sparc) #endif Modified: head/lib/clang/include/llvm/Config/AsmPrinters.def ============================================================================== --- head/lib/clang/include/llvm/Config/AsmPrinters.def Sun Apr 7 17:49:39 2019 (r346015) +++ head/lib/clang/include/llvm/Config/AsmPrinters.def Sun Apr 7 18:24:26 2019 (r346016) @@ -19,6 +19,9 @@ LLVM_ASM_PRINTER(Mips) #ifdef LLVM_TARGET_ENABLE_POWERPC LLVM_ASM_PRINTER(PowerPC) #endif +#ifdef LLVM_TARGET_ENABLE_RISCV +LLVM_ASM_PRINTER(RISCV) +#endif #ifdef LLVM_TARGET_ENABLE_SPARC LLVM_ASM_PRINTER(Sparc) #endif Modified: head/lib/clang/include/llvm/Config/Disassemblers.def ============================================================================== --- head/lib/clang/include/llvm/Config/Disassemblers.def Sun Apr 7 17:49:39 2019 (r346015) +++ head/lib/clang/include/llvm/Config/Disassemblers.def Sun Apr 7 18:24:26 2019 (r346016) @@ -19,6 +19,9 @@ LLVM_DISASSEMBLER(Mips) #ifdef LLVM_TARGET_ENABLE_POWERPC LLVM_DISASSEMBLER(PowerPC) #endif +#ifdef LLVM_TARGET_ENABLE_RISCV +LLVM_DISASSEMBLER(RISCV) +#endif #ifdef LLVM_TARGET_ENABLE_SPARC LLVM_DISASSEMBLER(Sparc) #endif Modified: head/lib/clang/include/llvm/Config/Targets.def ============================================================================== --- head/lib/clang/include/llvm/Config/Targets.def Sun Apr 7 17:49:39 2019 (r346015) +++ head/lib/clang/include/llvm/Config/Targets.def Sun Apr 7 18:24:26 2019 (r346016) @@ -19,6 +19,9 @@ LLVM_TARGET(Mips) #ifdef LLVM_TARGET_ENABLE_POWERPC LLVM_TARGET(PowerPC) #endif +#ifdef LLVM_TARGET_ENABLE_RISCV +LLVM_TARGET(RISCV) +#endif #ifdef LLVM_TARGET_ENABLE_SPARC LLVM_TARGET(Sparc) #endif Modified: head/lib/clang/libllvm/Makefile ============================================================================== --- head/lib/clang/libllvm/Makefile Sun Apr 7 17:49:39 2019 (r346015) +++ head/lib/clang/libllvm/Makefile Sun Apr 7 18:24:26 2019 (r346016) @@ -10,14 +10,15 @@ CFLAGS+= -I${.OBJDIR} .if ${MK_LLVM_TARGET_AARCH64} == "no" && ${MK_LLVM_TARGET_ARM} == "no" && \ ${MK_LLVM_TARGET_BPF} == "no" && ${MK_LLVM_TARGET_MIPS} == "no" && \ - ${MK_LLVM_TARGET_POWERPC} == "no" && ${MK_LLVM_TARGET_SPARC} == "no" && \ - ${MK_LLVM_TARGET_X86} == "no" + ${MK_LLVM_TARGET_POWERPC} == "no" && ${MK_LLVM_TARGET_RISCV} == "no" && \ + ${MK_LLVM_TARGET_SPARC} == "no" && ${MK_LLVM_TARGET_X86} == "no" .error Please enable at least one of: MK_LLVM_TARGET_AARCH64,\ MK_LLVM_TARGET_ARM, MK_LLVM_TARGET_BPF, MK_LLVM_TARGET_MIPS, \ - MK_LLVM_TARGET_POWERPC, MK_LLVM_TARGET_SPARC, or MK_LLVM_TARGET_X86 + MK_LLVM_TARGET_POWERPC, MK_LLVM_TARGET_RISCV, MK_LLVM_TARGET_SPARC, \ + or MK_LLVM_TARGET_X86 .endif -.for arch in AArch64 ARM BPF Mips PowerPC Sparc X86 +.for arch in AArch64 ARM BPF Mips PowerPC RISCV Sparc X86 . if ${MK_LLVM_TARGET_${arch:tu}} != "no" CFLAGS+= -I${LLVM_SRCS}/lib/Target/${arch} . endif @@ -1128,6 +1129,34 @@ SRCS_MIN+= Target/PowerPC/PPCVSXFMAMutate.cpp SRCS_MIN+= Target/PowerPC/PPCVSXSwapRemoval.cpp SRCS_MIN+= Target/PowerPC/TargetInfo/PowerPCTargetInfo.cpp .endif # MK_LLVM_TARGET_POWERPC +.if ${MK_LLVM_TARGET_RISCV} != "no" +SRCS_MIN+= Target/RISCV/AsmParser/RISCVAsmParser.cpp +SRCS_MIN+= Target/RISCV/Disassembler/RISCVDisassembler.cpp +SRCS_MIN+= Target/RISCV/InstPrinter/RISCVInstPrinter.cpp +SRCS_MIN+= Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp +SRCS_MIN+= Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp +SRCS_MIN+= Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp +SRCS_MIN+= Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp +SRCS_MIN+= Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp +SRCS_MIN+= Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp +SRCS_MIN+= Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp +SRCS_MIN+= Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp +SRCS_MIN+= Target/RISCV/RISCVAsmPrinter.cpp +SRCS_MIN+= Target/RISCV/RISCVExpandPseudoInsts.cpp +SRCS_MIN+= Target/RISCV/RISCVFrameLowering.cpp +SRCS_MIN+= Target/RISCV/RISCVInstrInfo.cpp +SRCS_MIN+= Target/RISCV/RISCVISelDAGToDAG.cpp +SRCS_MIN+= Target/RISCV/RISCVISelLowering.cpp +SRCS_MIN+= Target/RISCV/RISCVMCInstLower.cpp +SRCS_MIN+= Target/RISCV/RISCVMergeBaseOffset.cpp +SRCS_MIN+= Target/RISCV/RISCVRegisterInfo.cpp +SRCS_MIN+= Target/RISCV/RISCVSubtarget.cpp +SRCS_MIN+= Target/RISCV/RISCVTargetMachine.cpp +SRCS_MIN+= Target/RISCV/RISCVTargetObjectFile.cpp +SRCS_MIN+= Target/RISCV/TargetInfo/RISCVTargetInfo.cpp +SRCS_MIN+= Target/RISCV/Utils/RISCVBaseInfo.cpp +SRCS_MIN+= Target/RISCV/Utils/RISCVMatInt.cpp +.endif # MK_LLVM_TARGET_RISCV .if ${MK_LLVM_TARGET_SPARC} != "no" SRCS_MIN+= Target/Sparc/AsmParser/SparcAsmParser.cpp SRCS_MIN+= Target/Sparc/DelaySlotFiller.cpp @@ -1545,13 +1574,15 @@ beforebuild: # Note: some rules are superfluous, not every combination is valid. .for arch in \ - AArch64/AArch64 ARM/ARM BPF/BPF Mips/Mips PowerPC/PPC Sparc/Sparc X86/X86 + AArch64/AArch64 ARM/ARM BPF/BPF Mips/Mips PowerPC/PPC Sparc/Sparc \ + RISCV/RISCV X86/X86 . for hdr in \ AsmMatcher/-gen-asm-matcher \ AsmWriter1/-gen-asm-writer,-asmwriternum=1 \ AsmWriter/-gen-asm-writer \ CallingConv/-gen-callingconv \ CodeEmitter/-gen-emitter \ + CompressInstEmitter/-gen-compress-inst-emitter \ DAGISel/-gen-dag-isel \ DisassemblerTables/-gen-disassembler \ EVEX2VEXTables/-gen-x86-EVEX2VEX-tables \ @@ -1643,6 +1674,21 @@ TGHDRS+= PPCGenMCCodeEmitter.inc TGHDRS+= PPCGenRegisterInfo.inc TGHDRS+= PPCGenSubtargetInfo.inc .endif # MK_LLVM_TARGET_POWERPC +.if ${MK_LLVM_TARGET_RISCV} != "no" +TGHDRS+= RISCVGenAsmMatcher.inc +TGHDRS+= RISCVGenAsmWriter.inc +TGHDRS+= RISCVGenCallingConv.inc +TGHDRS+= RISCVGenCompressInstEmitter.inc +TGHDRS+= RISCVGenDAGISel.inc +TGHDRS+= RISCVGenDisassemblerTables.inc +TGHDRS+= RISCVGenDAGISel.inc +TGHDRS+= RISCVGenInstrInfo.inc +TGHDRS+= RISCVGenMCCodeEmitter.inc +TGHDRS+= RISCVGenMCPseudoLowering.inc +TGHDRS+= RISCVGenRegisterInfo.inc +TGHDRS+= RISCVGenSubtargetInfo.inc +TGHDRS+= RISCVGenSystemOperands.inc +.endif # MK_LLVM_TARGET_RISCV .if ${MK_LLVM_TARGET_SPARC} != "no" TGHDRS+= SparcGenAsmMatcher.inc TGHDRS+= SparcGenAsmWriter.inc Modified: head/lib/clang/llvm.build.mk ============================================================================== --- head/lib/clang/llvm.build.mk Sun Apr 7 17:49:39 2019 (r346015) +++ head/lib/clang/llvm.build.mk Sun Apr 7 18:24:26 2019 (r346016) @@ -69,6 +69,12 @@ CFLAGS+= -DLLVM_TARGET_ENABLE_POWERPC LLVM_NATIVE_ARCH= PowerPC . endif .endif +.if ${MK_LLVM_TARGET_RISCV} != "no" +CFLAGS+= -DLLVM_TARGET_ENABLE_RISCV +. if ${MACHINE_CPUARCH} == "riscv" +LLVM_NATIVE_ARCH= RISCV +. endif +.endif .if ${MK_LLVM_TARGET_SPARC} != "no" CFLAGS+= -DLLVM_TARGET_ENABLE_SPARC . if ${MACHINE_CPUARCH} == "sparc64" Modified: head/share/man/man5/src.conf.5 ============================================================================== --- head/share/man/man5/src.conf.5 Sun Apr 7 17:49:39 2019 (r346015) +++ head/share/man/man5/src.conf.5 Sun Apr 7 18:24:26 2019 (r346016) @@ -1,6 +1,6 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. .\" $FreeBSD$ -.Dd March 16, 2019 +.Dd March 29, 2019 .Dt SRC.CONF 5 .Os .Sh NAME @@ -399,6 +399,10 @@ is set explicitly) (unless .Va WITH_LLVM_TARGET_POWERPC is set explicitly) +.It Va WITHOUT_LLVM_TARGET_RISCV +(unless +.Va WITH_LLVM_TARGET_RISCV +is set explicitly) .It Va WITHOUT_LLVM_TARGET_SPARC (unless .Va WITH_LLVM_TARGET_SPARC @@ -1210,6 +1214,20 @@ option should be used rather than this in most cases. .Pp This is a default setting on amd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. +.It Va WITHOUT_LLVM_TARGET_RISCV +Set to not build LLVM target support for RISC-V. +The +.Va LLVM_TARGET_ALL +option should be used rather than this in most cases. +.Pp +This is a default setting on +amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, and sparc/sparc64. +.It Va WITH_LLVM_TARGET_RISCV +Set to build LLVM target support for RISC-V. +The +.Va LLVM_TARGET_ALL +option should be used rather than this in most cases. +.Pp .It Va WITHOUT_LLVM_TARGET_SPARC Set to not build LLVM target support for SPARC. The Modified: head/share/mk/src.opts.mk ============================================================================== --- head/share/mk/src.opts.mk Sun Apr 7 17:49:39 2019 (r346015) +++ head/share/mk/src.opts.mk Sun Apr 7 18:24:26 2019 (r346016) @@ -290,6 +290,7 @@ __DEFAULT_DEPENDENT_OPTIONS+= LLVM_TARGET_${__llt:${__ .endfor __DEFAULT_NO_OPTIONS+=LLVM_TARGET_BPF +__DEFAULT_NO_OPTIONS+=LLVM_TARGET_RISCV .include # If the compiler is not C++11 capable, disable Clang and use GCC instead. Added: head/tools/build/options/WITHOUT_LLVM_TARGET_RISCV ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/build/options/WITHOUT_LLVM_TARGET_RISCV Sun Apr 7 18:24:26 2019 (r346016) @@ -0,0 +1,5 @@ +.\" $FreeBSD$ +Set to not build LLVM target support for RISC-V. +The +.Va LLVM_TARGET_ALL +option should be used rather than this in most cases. Added: head/tools/build/options/WITH_LLVM_TARGET_RISCV ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/build/options/WITH_LLVM_TARGET_RISCV Sun Apr 7 18:24:26 2019 (r346016) @@ -0,0 +1,5 @@ +.\" $FreeBSD$ +Set to build LLVM target support for RISC-V. +The +.Va LLVM_TARGET_ALL +option should be used rather than this in most cases. From owner-svn-src-all@freebsd.org Sun Apr 7 18:31:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E3FB1156732D; Sun, 7 Apr 2019 18:31:47 +0000 (UTC) (envelope-from crees@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 7E9C56C90E; Sun, 7 Apr 2019 18:31:47 +0000 (UTC) (envelope-from crees@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 59C25180BF; Sun, 7 Apr 2019 18:31:47 +0000 (UTC) (envelope-from crees@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37IVlRJ096812; Sun, 7 Apr 2019 18:31:47 GMT (envelope-from crees@FreeBSD.org) Received: (from crees@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37IVj4r096803; Sun, 7 Apr 2019 18:31:45 GMT (envelope-from crees@FreeBSD.org) Message-Id: <201904071831.x37IVj4r096803@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: crees set sender to crees@FreeBSD.org using -f From: Chris Rees Date: Sun, 7 Apr 2019 18:31:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 X-SVN-Group: head X-SVN-Commit-Author: crees X-SVN-Commit-Paths: in head: libexec/rc libexec/rc/rc.d share/man/man5 X-SVN-Commit-Revision: 346017 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7E9C56C90E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 18:31:48 -0000 Author: crees (doc,ports committer) Date: Sun Apr 7 18:31:45 2019 New Revision: 346017 URL: https://svnweb.freebsd.org/changeset/base/346017 Log: Remove now unnecessary kldstat check before attempting to load modules. Since r233109, kldload has the -n option, which silently ignores options that are already loaded. https://lists.freebsd.org/pipermail/freebsd-rc/2018-December/003899.html Note that this script no longer reports if the module is already loaded, but it could be argued this wasn't particularly useful information. PR: docs/234248 Reviewed by: bcr (docs), kib, rgrimes (visual) Approved by: jilles Differential Revision: https://reviews.freebsd.org/D18670 Modified: head/libexec/rc/rc.d/abi head/libexec/rc/rc.d/bthidd head/libexec/rc/rc.d/cfumass head/libexec/rc/rc.d/kld head/libexec/rc/rc.d/mdconfig head/libexec/rc/rc.d/mdconfig2 head/libexec/rc/rc.d/mountcritremote head/libexec/rc/rc.d/syscons head/libexec/rc/rc.subr head/share/man/man5/rc.conf.5 Modified: head/libexec/rc/rc.d/abi ============================================================================== --- head/libexec/rc/rc.d/abi Sun Apr 7 18:24:26 2019 (r346016) +++ head/libexec/rc/rc.d/abi Sun Apr 7 18:31:45 2019 (r346017) @@ -27,10 +27,10 @@ linux_start() local _tmpdir echo -n ' linux' - load_kld -e 'linux(aout|elf)' linux + load_kld linux case `sysctl -n hw.machine_arch` in amd64) - load_kld -e 'linux64elf' linux64 + load_kld linux64 ;; esac if [ -x /compat/linux/sbin/ldconfigDisabled ]; then Modified: head/libexec/rc/rc.d/bthidd ============================================================================== --- head/libexec/rc/rc.d/bthidd Sun Apr 7 18:24:26 2019 (r346016) +++ head/libexec/rc/rc.d/bthidd Sun Apr 7 18:31:45 2019 (r346017) @@ -34,11 +34,11 @@ evdev_enabled() bthidd_prestart() { if evdev_enabled; then - load_kld -m uinput uinput + load_kld uinput fi - load_kld -m kbdmux kbdmux - load_kld -m vkbd vkbd - load_kld -m ng_btsocket ng_btsocket + load_kld kbdmux + load_kld vkbd + load_kld ng_btsocket return 0 } Modified: head/libexec/rc/rc.d/cfumass ============================================================================== --- head/libexec/rc/rc.d/cfumass Sun Apr 7 18:24:26 2019 (r346016) +++ head/libexec/rc/rc.d/cfumass Sun Apr 7 18:31:45 2019 (r346017) @@ -75,7 +75,7 @@ cfumass_start() return "${err}" fi - load_kld -e cfumass cfumass + load_kld cfumass # If the template is already switched to Mass Storage, then reset # it to -1 to force the host to reenumerate it; otherwise it might Modified: head/libexec/rc/rc.d/kld ============================================================================== --- head/libexec/rc/rc.d/kld Sun Apr 7 18:24:26 2019 (r346016) +++ head/libexec/rc/rc.d/kld Sun Apr 7 18:31:45 2019 (r346017) @@ -46,7 +46,7 @@ kld_start() echo 'Loading kernel modules:' for _kld in $kld_list ; do - load_kld -e ${_kld}.ko $_kld + load_kld $_kld done } Modified: head/libexec/rc/rc.d/mdconfig ============================================================================== --- head/libexec/rc/rc.d/mdconfig Sun Apr 7 18:24:26 2019 (r346016) +++ head/libexec/rc/rc.d/mdconfig Sun Apr 7 18:31:45 2019 (r346017) @@ -114,7 +114,7 @@ mdconfig_start() continue fi if [ "${_file}" != "${_file%.uzip}" ]; then - load_kld -m g_uzip geom_uzip || return 3 + load_kld geom_uzip || return 3 # sleep a bit to allow creation of /dev/mdX.uzip sleep 2 fi Modified: head/libexec/rc/rc.d/mdconfig2 ============================================================================== --- head/libexec/rc/rc.d/mdconfig2 Sun Apr 7 18:24:26 2019 (r346016) +++ head/libexec/rc/rc.d/mdconfig2 Sun Apr 7 18:31:45 2019 (r346017) @@ -123,7 +123,7 @@ mdconfig2_start() # been created. if [ "${_type}" = "vnode" -a "${_fs}" != "/" ]; then if [ "${_file}" != "${_file%.uzip}" ]; then - load_kld -m g_uzip geom_uzip || return 3 + load_kld geom_uzip || return 3 fi if is_readonly ${_fs}; then warn "${_fs} is mounted read-only, skipping ${_md}." Modified: head/libexec/rc/rc.d/mountcritremote ============================================================================== --- head/libexec/rc/rc.d/mountcritremote Sun Apr 7 18:24:26 2019 (r346016) +++ head/libexec/rc/rc.d/mountcritremote Sun Apr 7 18:31:45 2019 (r346017) @@ -27,7 +27,7 @@ mountcritremote_precmd() case "`mount -d -a -t nfs 2> /dev/null`" in *mount_nfs*) # Handle absent nfs client support - load_kld -m nfs nfscl || return 1 + load_kld nfscl || return 1 ;; esac return 0 Modified: head/libexec/rc/rc.d/syscons ============================================================================== --- head/libexec/rc/rc.d/syscons Sun Apr 7 18:24:26 2019 (r346016) +++ head/libexec/rc/rc.d/syscons Sun Apr 7 18:31:45 2019 (r346017) @@ -346,7 +346,7 @@ syscons_start() for i in `kldstat | awk '$5 ~ "_saver\.ko$" { print $5 }'`; do kldunload ${i} done - load_kld -e _saver ${saver}_saver + load_kld ${saver}_saver ;; esac Modified: head/libexec/rc/rc.subr ============================================================================== --- head/libexec/rc/rc.subr Sun Apr 7 18:24:26 2019 (r346016) +++ head/libexec/rc/rc.subr Sun Apr 7 18:31:45 2019 (r346017) @@ -1853,48 +1853,29 @@ mount_md() } # Code common to scripts that need to load a kernel module -# if it isn't in the kernel yet. Syntax: -# load_kld [-e regex] [-m module] file -# where -e or -m chooses the way to check if the module -# is already loaded: -# regex is egrep'd in the output from `kldstat -v', -# module is passed to `kldstat -m'. -# The default way is as though `-m file' were specified. +# if it isn't in the kernel yet. Syntax: +# load_kld file load_kld() { - local _loaded _mod _opt _re + local _opt + # Silently ignore legacy options; they are unnecessary while getopts "e:m:" _opt; do case "$_opt" in - e) _re="$OPTARG" ;; - m) _mod="$OPTARG" ;; - *) err 3 'USAGE: load_kld [-e regex] [-m module] file' ;; + e) ;; + m) ;; + *) err 3 'USAGE: load_kld file' ;; esac done shift $(($OPTIND - 1)) if [ $# -ne 1 ]; then - err 3 'USAGE: load_kld [-e regex] [-m module] file' + err 3 'USAGE: load_kld file' fi - _mod=${_mod:-$1} - _loaded=false - if [ -n "$_re" ]; then - if kldstat -v | egrep -q -e "$_re"; then - _loaded=true - fi + if ! kldload -n "$1"; then + warn "Unable to load kernel module $1" + return 1 else - if kldstat -q -m "$_mod"; then - _loaded=true - fi - fi - if ! $_loaded; then - if ! kldload "$1"; then - warn "Unable to load kernel module $1" - return 1 - else - info "$1 kernel module loaded." - fi - else - debug "load_kld: $1 kernel module already loaded." + info "$1 kernel module loaded." fi return 0 } Modified: head/share/man/man5/rc.conf.5 ============================================================================== --- head/share/man/man5/rc.conf.5 Sun Apr 7 18:24:26 2019 (r346016) +++ head/share/man/man5/rc.conf.5 Sun Apr 7 18:31:45 2019 (r346017) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd March 21, 2019 +.Dd April 7, 2019 .Dt RC.CONF 5 .Os .Sh NAME @@ -249,9 +249,7 @@ Default .It Va kld_list .Pq Vt str A whitespace-separated list of kernel modules to load right after -the local disks are mounted, without any -.Pa .ko -extension or path. +the local disks are mounted, with optional path. Loading modules at this point in the boot process is much faster than doing it via .Pa /boot/loader.conf From owner-svn-src-all@freebsd.org Sun Apr 7 18:39:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0B39E1567657; Sun, 7 Apr 2019 18:39:57 +0000 (UTC) (envelope-from imp@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 9764E6CD21; Sun, 7 Apr 2019 18:39:56 +0000 (UTC) (envelope-from imp@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 738BB1810D; Sun, 7 Apr 2019 18:39:56 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37IduLa002008; Sun, 7 Apr 2019 18:39:56 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37IduPO002007; Sun, 7 Apr 2019 18:39:56 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201904071839.x37IduPO002007@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Sun, 7 Apr 2019 18:39:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346018 - head/sys/conf X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/sys/conf X-SVN-Commit-Revision: 346018 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9764E6CD21 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_SHORT(-0.96)[-0.958,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 18:39:57 -0000 Author: imp Date: Sun Apr 7 18:39:55 2019 New Revision: 346018 URL: https://svnweb.freebsd.org/changeset/base/346018 Log: Use default shell assignment rather more complicated if then construct. Discussed with: emaste@, allanjude@ (changes (or not) based on their feedback) Differential Revision: https://reviews.freebsd.org/D19797 Modified: head/sys/conf/newvers.sh Modified: head/sys/conf/newvers.sh ============================================================================== --- head/sys/conf/newvers.sh Sun Apr 7 18:31:45 2019 (r346017) +++ head/sys/conf/newvers.sh Sun Apr 7 18:39:55 2019 (r346018) @@ -46,10 +46,7 @@ TYPE="FreeBSD" REVISION="13.0" -BRANCH="CURRENT" -if [ -n "${BRANCH_OVERRIDE}" ]; then - BRANCH=${BRANCH_OVERRIDE} -fi +BRANCH=${BRANCH_OVERRIDE:-CURRENT} RELEASE="${REVISION}-${BRANCH}" VERSION="${TYPE} ${RELEASE}" @@ -108,21 +105,16 @@ if [ -z "${SYSDIR}" ]; then SYSDIR=$(dirname $0)/.. fi -if [ -n "${PARAMFILE}" ]; then - RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print $3}' \ - ${PARAMFILE}) -else - RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print $3}' \ - ${SYSDIR}/sys/param.h) -fi +RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print $3}' \ + ${PARAMFILE:-${SYSDIR}/sys/param.h}) -b=share/examples/etc/bsd-style-copyright if [ -r "${SYSDIR}/../COPYRIGHT" ]; then year=$(sed -Ee '/^Copyright .* The FreeBSD Project/!d;s/^.*1992-([0-9]*) .*$/\1/g' ${SYSDIR}/../COPYRIGHT) else year=$(date +%Y) fi # look for copyright template +b=share/examples/etc/bsd-style-copyright for bsd_copyright in ../$b ../../$b ../../../$b /usr/src/$b /usr/$b do if [ -r "$bsd_copyright" ]; then @@ -150,9 +142,7 @@ COPYRIGHT="$COPYRIGHT # VARS_ONLY means no files should be generated, this is just being # included. -if [ -n "$VARS_ONLY" ]; then - return 0 -fi +[ -n "$VARS_ONLY" ] && return 0 LC_ALL=C; export LC_ALL if [ ! -r version ] From owner-svn-src-all@freebsd.org Sun Apr 7 19:02:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 10F941567E8C; Sun, 7 Apr 2019 19:02:34 +0000 (UTC) (envelope-from jah@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 9DB336D9BE; Sun, 7 Apr 2019 19:02:33 +0000 (UTC) (envelope-from jah@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 7A8C51861B; Sun, 7 Apr 2019 19:02:33 +0000 (UTC) (envelope-from jah@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37J2X0k017585; Sun, 7 Apr 2019 19:02:33 GMT (envelope-from jah@FreeBSD.org) Received: (from jah@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37J2Xmv017584; Sun, 7 Apr 2019 19:02:33 GMT (envelope-from jah@FreeBSD.org) Message-Id: <201904071902.x37J2Xmv017584@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jah set sender to jah@FreeBSD.org using -f From: "Jason A. Harmening" Date: Sun, 7 Apr 2019 19:02:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346019 - stable/12/sys/compat/freebsd32 X-SVN-Group: stable-12 X-SVN-Commit-Author: jah X-SVN-Commit-Paths: stable/12/sys/compat/freebsd32 X-SVN-Commit-Revision: 346019 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9DB336D9BE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.95)[-0.950,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 19:02:34 -0000 Author: jah Date: Sun Apr 7 19:02:33 2019 New Revision: 346019 URL: https://svnweb.freebsd.org/changeset/base/346019 Log: MFC r345741: freebsd32: fix padding of computed control message length for recvmsg() Each control message region must be aligned on a 4-byte boundary on 32-bit architectures. The 32-bit compat shim for recvmsg() gets the actual layout right, but doesn't pad the payload length when computing msg_controllen for the output message header. If a control message contains an unaligned payload, such as the 1-byte TTL field in the example attached to PR 236737, this can produce control message payload boundaries that extend beyond the boundary reported by msg_controllen. PR: 236737 Modified: stable/12/sys/compat/freebsd32/freebsd32_misc.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/compat/freebsd32/freebsd32_misc.c ============================================================================== --- stable/12/sys/compat/freebsd32/freebsd32_misc.c Sun Apr 7 18:39:55 2019 (r346018) +++ stable/12/sys/compat/freebsd32/freebsd32_misc.c Sun Apr 7 19:02:33 2019 (r346019) @@ -1183,8 +1183,8 @@ freebsd32_copy_msg_out(struct msghdr *msg, struct mbuf cm = NULL; } - msg->msg_controllen += FREEBSD32_ALIGN(sizeof(*cm)) + - datalen_out; + msg->msg_controllen += + FREEBSD32_CMSG_SPACE(datalen_out); } } if (len == 0 && m != NULL) { From owner-svn-src-all@freebsd.org Sun Apr 7 19:08:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2A2791567F24; Sun, 7 Apr 2019 19:08:08 +0000 (UTC) (envelope-from jah@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 A38966DB23; Sun, 7 Apr 2019 19:08:07 +0000 (UTC) (envelope-from jah@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 796D11861E; Sun, 7 Apr 2019 19:08:07 +0000 (UTC) (envelope-from jah@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37J87j9017882; Sun, 7 Apr 2019 19:08:07 GMT (envelope-from jah@FreeBSD.org) Received: (from jah@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37J87Hd017881; Sun, 7 Apr 2019 19:08:07 GMT (envelope-from jah@FreeBSD.org) Message-Id: <201904071908.x37J87Hd017881@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jah set sender to jah@FreeBSD.org using -f From: "Jason A. Harmening" Date: Sun, 7 Apr 2019 19:08: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: r346020 - stable/11/sys/compat/freebsd32 X-SVN-Group: stable-11 X-SVN-Commit-Author: jah X-SVN-Commit-Paths: stable/11/sys/compat/freebsd32 X-SVN-Commit-Revision: 346020 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A38966DB23 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.950,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 19:08:08 -0000 Author: jah Date: Sun Apr 7 19:08:07 2019 New Revision: 346020 URL: https://svnweb.freebsd.org/changeset/base/346020 Log: MFC r345741: freebsd32: fix padding of computed control message length for recvmsg() Each control message region must be aligned on a 4-byte boundary on 32-bit architectures. The 32-bit compat shim for recvmsg() gets the actual layout right, but doesn't pad the payload length when computing msg_controllen for the output message header. If a control message contains an unaligned payload, such as the 1-byte TTL field in the example attached to PR 236737, this can produce control message payload boundaries that extend beyond the boundary reported by msg_controllen. PR: 236737 Modified: stable/11/sys/compat/freebsd32/freebsd32_misc.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/compat/freebsd32/freebsd32_misc.c ============================================================================== --- stable/11/sys/compat/freebsd32/freebsd32_misc.c Sun Apr 7 19:02:33 2019 (r346019) +++ stable/11/sys/compat/freebsd32/freebsd32_misc.c Sun Apr 7 19:08:07 2019 (r346020) @@ -1035,8 +1035,8 @@ freebsd32_copy_msg_out(struct msghdr *msg, struct mbuf cm = NULL; } - msg->msg_controllen += FREEBSD32_ALIGN(sizeof(*cm)) + - datalen_out; + msg->msg_controllen += + FREEBSD32_CMSG_SPACE(datalen_out); } } if (len == 0 && m != NULL) { From owner-svn-src-all@freebsd.org Sun Apr 7 19:32:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 94FC01568AC9; Sun, 7 Apr 2019 19:32:48 +0000 (UTC) (envelope-from o.hartmann@walstatt.org) Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "mout.gmx.net", Issuer "TeleSec ServerPass DE-2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id F05FD6E834; Sun, 7 Apr 2019 19:32:47 +0000 (UTC) (envelope-from o.hartmann@walstatt.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1554665564; bh=1FnzX9wB3qF310c5nGrlmwXZJt1mem/l7W/iS84TQms=; h=X-UI-Sender-Class:Date:From:To:Cc:Subject:In-Reply-To:References; b=XRHfoqUe/mq4bRZVmF7CVzolA1aCiU/z/ZaeaqSI0d1eLCeNf9lGp2ZFNVp6c98Jv cmS+s6TghgjZ89j4LbDSiGKS4XO9afSEh5tU2xy84NXCz+0TurNDrlAza9N+oSQTto Q2qvACvk3xwEOgufhcG7JWOIhL3+YBqq7rCmQv1Y= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from thor.intern.walstatt.dynvpn.de ([77.13.158.167]) by mail.gmx.com (mrgmx102 [212.227.17.168]) with ESMTPSA (Nemesis) id 0MFz0E-1h9PYi3J02-00EtnF; Sun, 07 Apr 2019 21:27:30 +0200 Date: Sun, 7 Apr 2019 21:26:56 +0200 From: "O. Hartmann" To: Mariusz Zaborski Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346012 - head/sys/sys Message-ID: <20190407212723.52279631@thor.intern.walstatt.dynvpn.de> In-Reply-To: <201904071607.x37G7fFP021279@repo.freebsd.org> References: <201904071607.x37G7fFP021279@repo.freebsd.org> Organization: WALSTATT User-Agent: OutScare 3.1415926 X-Operating-System: ImNotAnOperatingSystem 3.141592527 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: base64 X-Provags-ID: V03:K1:tPxrTWo+RVHhtCC0SWJOgVSvFqdGdo5EjXI0UL20TvBD9TRO0Mx M2ES0Ox9MLOhHyJejwrwhUxvLX6PiXMGATk7zBWMAAajn0XDTbD4Q5ifsQlvdBAqIagfHCv ydLH1nGUYA2qDDhSvp1FTRYbL6Bks9Jslhu6XHAelFFvGZsvDjdnsXSvAdRlE4x29QBgjd9 8ULzyKQaz6vIAi6mU2Pbg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:y2qOhGpq66E=:Z8isNtuQmnre4Y1SGq7vW6 AIUYlmXY7Fqd6w2S4vpqURu1s8qFymBoRFUIyIBVupKBgFUOYKEL2eAylAaEDQdKfgYofmBZk KBjQqX+oZvkKDSU1deDLWhuoUh4A3UfIXHD9A/3drR+u/lN3yC40EqBO4AXxSDdwUbexCYaZx MfXO1Fpog3Q/4UggiZTyOsBz6AJqghti/el4mizNzeU0bF5PW1r04RImnxuVVFC9f9gOgCpgl QjXt6cJob/JjY7cgLqvodAxBWUYh3VgdirbzUUDrteLUqeOAJ619Rls0sKOoTiataxm8frkzY INIZ1h/bCh7Nt9XHd1JhyHUJklQxMOlSUmMuZA8JNOGKBPARCty16ndVeDOl3m28it4Z/Pte4 L7EZLMhRA8O/o8o11wPb7WxuSH9MQqy2Nv8qpCdmTDpWZLU6HW1OApn/z75biDUDdPyfrC4X6 118XEAjKMPpNsbeGow/jD2egQdhekGYBVuWk7f3X3lxzo8nKq6f/TBQvfc2flBW+NXYL/R7J2 A8lKxxystvH7nOFGfSJtGe+EW9AzTBYzpY8mkCgGVt9WMVvQQ+Q0D/X0dEkSgQNxHtHvXHJJy /PKzhXZMLokACR/+vOb8a6OK7HL0K0uTfgAxFjasF1W4hNwy6mVo2huzbuYp7WW1JTJME26gy ggAFUfkz4qDcLdvAi0RQDJeVNlAhKWserqr87g896DwmfopdhldKi51W8Ncq/LboXfupOppVH 18Dq7oHNFFtUrhEOHyOkbC+jXGbD0nLdtt4LfJXccBk8n9zFTHlJFAr1Thqh32RyKmHs0xKMd VbXirJmpjvYLx2tkHO+KsTTH8kU+FA55dYQY0tZmIqu/FlevgNhsdp/dRtfAniJtDJCf/UFBq UCtBrzzyTPfnot3FxlPoixJV1uvwdtg6YYlcXr6LPURx2d7H+QNVh8Zh1KAtRyJjDEv67uGbH aN1QBqQ3KUA== X-Rspamd-Queue-Id: F05FD6E834 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.99)[-0.989,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 19:32:48 -0000 LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQ0KSGFzaDogU0hBMjU2DQoNCkFtIFN1 biwgNyBBcHIgMjAxOSAxNjowNzo0MSArMDAwMCAoVVRDKQ0KTWFyaXVzeiBaYWJvcnNraSA8b3No b2dib0BGcmVlQlNELm9yZz4gc2NocmllYjoNCg0KPiBBdXRob3I6IG9zaG9nYm8NCj4gRGF0ZTog U3VuIEFwciAgNyAxNjowNzo0MSAyMDE5DQo+IE5ldyBSZXZpc2lvbjogMzQ2MDEyDQo+IFVSTDog aHR0cHM6Ly9zdm53ZWIuZnJlZWJzZC5vcmcvY2hhbmdlc2V0L2Jhc2UvMzQ2MDEyDQo+IA0KPiBM b2c6DQo+ICAgQnVtcCBGcmVlQlNEIHZlcnNpb24gYWZ0ZXIgcjM0NTk4Mi4NCj4gICANCj4gICBS ZXBvcnRlZCBieToJU2hhd24gV2ViYiA8c2hhd24ud2ViYkBoYXJkZW5lZGJzZC5vcmc+DQo+ICAg RGlzY3Vzc2VkIHdpdGg6IGltcCwgY3ksIHJncmltZXMNCj4gDQo+IE1vZGlmaWVkOg0KPiAgIGhl YWQvc3lzL3N5cy9wYXJhbS5oDQo+IA0KPiBNb2RpZmllZDogaGVhZC9zeXMvc3lzL3BhcmFtLmgN Cj4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09DQo+IC0tLSBoZWFkL3N5cy9zeXMvcGFyYW0uaAlTdW4g QXByICA3IDE0OjMwOjE3IDIwMTkJKHIzNDYwMTEpDQo+ICsrKyBoZWFkL3N5cy9zeXMvcGFyYW0u aAlTdW4gQXByICA3IDE2OjA3OjQxIDIwMTkJKHIzNDYwMTIpDQo+IEBAIC02MCw3ICs2MCw3IEBA DQo+ICAgKgkJaW4gdGhlIHJhbmdlIDUgdG8gOS4NCj4gICAqLw0KPiAgI3VuZGVmIF9fRnJlZUJT RF92ZXJzaW9uDQo+IC0jZGVmaW5lIF9fRnJlZUJTRF92ZXJzaW9uIDEzMDAwMTcJLyogTWFzdGVy LCBwcm9wYWdhdGVkIHRvIG5ld3ZlcnMgKi8NCj4gKyNkZWZpbmUgX19GcmVlQlNEX3ZlcnNpb24g MTMwMDAxOAkvKiBNYXN0ZXIsIHByb3BhZ2F0ZWQgdG8gbmV3dmVycyAqLw0KPiAgDQo+ICAvKg0K PiAgICogX19GcmVlQlNEX2tlcm5lbF9fIGluZGljYXRlcyB0aGF0IHRoaXMgc3lzdGVtIHVzZXMg dGhlIGtlcm5lbCBvZiBGcmVlQlNELA0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXw0KPiBzdm4tc3JjLWhlYWRAZnJlZWJzZC5vcmcgbWFpbGluZyBsaXN0 DQo+IGh0dHBzOi8vbGlzdHMuZnJlZWJzZC5vcmcvbWFpbG1hbi9saXN0aW5mby9zdm4tc3JjLWhl YWQNCj4gVG8gdW5zdWJzY3JpYmUsIHNlbmQgYW55IG1haWwgdG8gInN2bi1zcmMtaGVhZC11bnN1 YnNjcmliZUBmcmVlYnNkLm9yZyINCg0KSSBmaW5kIG15c2VsZiBidWdnZWQgYnkgdGhpcyBlcnJv ciB3aGlsZSBjb21waWxpbmcgd29ybGQgYWZ0ZXIgdGhlIHVwZGF0ZSBvZiBDVVJSRU5UIHRvDQpy MzQ2MDIwOg0KDQpbLi4uXQ0KQnVpbGRpbmcgL3Vzci9vYmovdXNyL3NyYy9hbWQ2NC5hbWQ2NC91 c3Iuc2Jpbi9ibGFja2xpc3RkL2NvbmYubw0KLSAtLS0gYWxsX3N1YmRpcl91c3Iuc2Jpbi9hbWQg LS0tDQotIC0tLSBhbWQubyAtLS0NCi91c3Ivc3JjL2NvbnRyaWIvYW1kL2FtZC9hbWQuYzoyNzU6 MTc6IGVycm9yOiB1c2Ugb2YgdW5kZWNsYXJlZCBpZGVudGlmaWVyICdIT1NUX09TX05BTUUnDQog IGdvcHQub3Bfc3lzID0gSE9TVF9PU19OQU1FOw0KICAgICAgICAgICAgICAgIF4NCi91c3Ivc3Jj L2NvbnRyaWIvYW1kL2FtZC9hbWQuYzoyNzg6MjE6IGVycm9yOiB1c2Ugb2YgdW5kZWNsYXJlZCBp ZGVudGlmaWVyICdIT1NUX09TX1ZFUlNJT04nDQogIGdvcHQub3Bfc3lzX3ZlciA9IEhPU1RfT1Nf VkVSU0lPTjsNCiAgICAgICAgICAgICAgICAgICAgXg0KL3Vzci9zcmMvY29udHJpYi9hbWQvYW1k L2FtZC5jOjI4MToyMjogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVkIGlkZW50aWZpZXIgJ0hPU1Rf T1MnDQogIGdvcHQub3Bfc3lzX2Z1bGwgPSBIT1NUX09TOw0KICAgICAgICAgICAgICAgICAgICAg Xg0KMyBlcnJvcnMgZ2VuZXJhdGVkLg0KDQpbLi4uXQ0KDQpSZWdhcmRzLA0KDQpvaA0KLSAtLSAN Ck8uIEhhcnRtYW5uDQoNCkljaCB3aWRlcnNwcmVjaGUgZGVyIE51dHp1bmcgb2RlciDDnGJlcm1p dHRsdW5nIG1laW5lciBEYXRlbiBmw7xyDQpXZXJiZXp3ZWNrZSBvZGVyIGbDvHIgZGllIE1hcmt0 LSBvZGVyIE1laW51bmdzZm9yc2NodW5nICjCpyAyOCBBYnMuIDQgQkRTRykuDQotLS0tLUJFR0lO IFBHUCBTSUdOQVRVUkUtLS0tLQ0KDQppSFVFQVJZSUFCMFdJUVN5OElCeEFQRGtxVkJhVEo0NE4x WlpQYmE1UndVQ1hLcFBIQUFLQ1JBNE4xWlpQYmE1DQpSNlBaQVA5eTJyVzl2RXFNTDVkY21rblVV eVlhd0VzOERlTWQ2MjVOMElwd2xKeHMxQUVBNUpXL1JBQitRd0VFDQp2NDdhQW5ST3FHQ01WSFJp eEdHTkxKYTB2S29vT0E4PQ0KPTFWaHQNCi0tLS0tRU5EIFBHUCBTSUdOQVRVUkUtLS0tLQ0K From owner-svn-src-all@freebsd.org Sun Apr 7 19:54:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4267D1568EDD; Sun, 7 Apr 2019 19:54:29 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-so.shaw.ca (smtp-out-so.shaw.ca [64.59.136.139]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id B22BC6EF5F; Sun, 7 Apr 2019 19:54:27 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA id DDryhtimYGusjDDrzhh79U; Sun, 07 Apr 2019 13:54:24 -0600 X-Authority-Analysis: v=2.3 cv=fOdHIqSe c=1 sm=1 tr=0 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=8nJEP1OIZ-IA:10 a=oexKYjalfGEA:10 a=6I5d2MoRAAAA:8 a=ypVJL4-jAAAA:8 a=YxBL1-UpAAAA:8 a=hkyuMYPH1GyjwF8KufwA:9 a=wPNLvfGTeEIA:10 a=IjZwj45LgO3ly-622nXo:22 a=khIbc0fXALFIcTpOSxgJ:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id B2BD0C86; Sun, 7 Apr 2019 12:54:21 -0700 (PDT) Received: from slippy.cwsent.com (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x37JsLlC019656; Sun, 7 Apr 2019 12:54:21 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Received: from slippy (cy@localhost) by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x37JsLJj019639; Sun, 7 Apr 2019 12:54:21 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201904071954.x37JsLJj019639@slippy.cwsent.com> X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: "O. Hartmann" cc: Mariusz Zaborski , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346012 - head/sys/sys In-Reply-To: Message from "O. Hartmann" of "Sun, 07 Apr 2019 21:26:56 +0200." <20190407212723.52279631@thor.intern.walstatt.dynvpn.de> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Date: Sun, 07 Apr 2019 12:54:21 -0700 X-CMAE-Envelope: MS4wfErZu2j7H9NYPsdDcpDNMX5w7oqBYlU/T/f08MOG4XhuTmB3DaNRtum3Tn2vagoLE/YkF3tRPofdsB2xrIJTcUl7rSZYLczOUE+whOCR42rEchUrAI+Z 3PoJM98Gd9LW1/DgW3sdiwsg7I90b8BQX67OofIB3kYN5MafqbuiHtA0H/oFGFPAqpmah9oDZe0YcXF3ShA8hnLeoGzRrvkgpE9NRmRnWEWIqyIyh0IZnxtl RCSKDk7RGW7nAOPapsnHgQP9BHllBFlBlkIlXKVfS6a9o15w32q1+i1pkga00BkEUOA3LJajr6QbeUdXcGZjL0JxLHAS4lqyGw+T+QU1NHk= X-Rspamd-Queue-Id: B22BC6EF5F X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-4.86 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; IP_SCORE(-2.18)[ip: (-5.36), ipnet: 64.59.128.0/20(-3.07), asn: 6327(-2.38), country: CA(-0.09)]; MIME_GOOD(-0.10)[text/plain]; HAS_XAW(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; RCPT_COUNT_FIVE(0.00)[5]; REPLYTO_EQ_FROM(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MX_GOOD(-0.01)[cached: spqr.komquats.com]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_SPF_NA(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; RCVD_IN_DNSWL_LOW(-0.10)[139.136.59.64.list.dnswl.org : 127.0.5.1] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 19:54:29 -0000 In message <20190407212723.52279631@thor.intern.walstatt.dynvpn.de>, "O. Hartma nn" writes: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA256 > > Am Sun, 7 Apr 2019 16:07:41 +0000 (UTC) > Mariusz Zaborski schrieb: > > > Author: oshogbo > > Date: Sun Apr 7 16:07:41 2019 > > New Revision: 346012 > > URL: https://svnweb.freebsd.org/changeset/base/346012 > > > > Log: > > Bump FreeBSD version after r345982. > > > > Reported by: Shawn Webb > > Discussed with: imp, cy, rgrimes > > > > Modified: > > head/sys/sys/param.h > > > > Modified: head/sys/sys/param.h > > =========================================================================== > === > > --- head/sys/sys/param.h Sun Apr 7 14:30:17 2019 (r346011) > > +++ head/sys/sys/param.h Sun Apr 7 16:07:41 2019 (r346012) > > @@ -60,7 +60,7 @@ > > * in the range 5 to 9. > > */ > > #undef __FreeBSD_version > > -#define __FreeBSD_version 1300017 /* Master, propagated to newvers */ > > +#define __FreeBSD_version 1300018 /* Master, propagated to newvers */ > > > > /* > > * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBS > D, > > _______________________________________________ > > svn-src-head@freebsd.org mailing list > > https://lists.freebsd.org/mailman/listinfo/svn-src-head > > To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org" > > I find myself bugged by this error while compiling world after the update of > CURRENT to > r346020: > > [...] > Building /usr/obj/usr/src/amd64.amd64/usr.sbin/blacklistd/conf.o > - --- all_subdir_usr.sbin/amd --- > - --- amd.o --- > /usr/src/contrib/amd/amd/amd.c:275:17: error: use of undeclared identifier 'H > OST_OS_NAME' > gopt.op_sys = HOST_OS_NAME; > ^ > /usr/src/contrib/amd/amd/amd.c:278:21: error: use of undeclared identifier 'H > OST_OS_VERSION' > gopt.op_sys_ver = HOST_OS_VERSION; > ^ > /usr/src/contrib/amd/amd/amd.c:281:22: error: use of undeclared identifier 'H > OST_OS' > gopt.op_sys_full = HOST_OS; > ^ > 3 errors generated. > > [...] Can you grep or ag HOST_OS in /usr/obj/opt/src/svn-current/amd64.amd64/u sr.sbin/amd/include/config_local.h please? -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Sun Apr 7 20:12:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DDE631569824; Sun, 7 Apr 2019 20:12:25 +0000 (UTC) (envelope-from mhorne@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 83C377078F; Sun, 7 Apr 2019 20:12:25 +0000 (UTC) (envelope-from mhorne@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 74CC7191F3; Sun, 7 Apr 2019 20:12:25 +0000 (UTC) (envelope-from mhorne@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37KCPHW056300; Sun, 7 Apr 2019 20:12:25 GMT (envelope-from mhorne@FreeBSD.org) Received: (from mhorne@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37KCPHt056299; Sun, 7 Apr 2019 20:12:25 GMT (envelope-from mhorne@FreeBSD.org) Message-Id: <201904072012.x37KCPHt056299@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mhorne set sender to mhorne@FreeBSD.org using -f From: Mitchell Horne Date: Sun, 7 Apr 2019 20:12:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346021 - in head/sys/riscv: include riscv X-SVN-Group: head X-SVN-Commit-Author: mhorne X-SVN-Commit-Paths: in head/sys/riscv: include riscv X-SVN-Commit-Revision: 346021 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 83C377078F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.979,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 20:12:26 -0000 Author: mhorne Date: Sun Apr 7 20:12:24 2019 New Revision: 346021 URL: https://svnweb.freebsd.org/changeset/base/346021 Log: RISC-V: initialize pcpu slightly earlier In certain scenarios, it is possible for PCPU data to be accessed before it has been initialized (e.g. during printf if the kernel was built with the TSLOG option). Initialize the PCPU pointer for hart 0 at the beginning of initriscv() rather than near the end. Reviewed by: markj Approved by: markj (mentor) Differential Revision: https://reviews.freebsd.org/D19726 Modified: head/sys/riscv/include/pcpu.h head/sys/riscv/riscv/machdep.c Modified: head/sys/riscv/include/pcpu.h ============================================================================== --- head/sys/riscv/include/pcpu.h Sun Apr 7 19:08:07 2019 (r346020) +++ head/sys/riscv/include/pcpu.h Sun Apr 7 20:12:24 2019 (r346021) @@ -53,7 +53,6 @@ struct pcb; struct pcpu; -extern struct pcpu *pcpup; static inline struct pcpu * get_pcpu(void) Modified: head/sys/riscv/riscv/machdep.c ============================================================================== --- head/sys/riscv/riscv/machdep.c Sun Apr 7 19:08:07 2019 (r346020) +++ head/sys/riscv/riscv/machdep.c Sun Apr 7 20:12:24 2019 (r346021) @@ -120,8 +120,6 @@ int64_t idcache_line_size; /* The minimum cache line s extern int *end; extern int *initstack_end; -struct pcpu *pcpup; - uintptr_t mcall_trap(uintptr_t mcause, uintptr_t* regs); uintptr_t @@ -627,6 +625,7 @@ sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask static void init_proc0(vm_offset_t kstack) { + struct pcpu *pcpup; pcpup = &__pcpu[0]; @@ -798,6 +797,7 @@ void initriscv(struct riscv_bootparams *rvbp) { struct mem_region mem_regions[FDT_MEM_REGIONS]; + struct pcpu *pcpup; vm_offset_t rstart, rend; vm_offset_t s, e; int mem_regions_sz; @@ -806,6 +806,15 @@ initriscv(struct riscv_bootparams *rvbp) caddr_t kmdp; int i; + /* Set the pcpu data, this is needed by pmap_bootstrap */ + pcpup = &__pcpu[0]; + pcpu_init(pcpup, 0, sizeof(struct pcpu)); + + /* Set the pcpu pointer */ + __asm __volatile("mv gp, %0" :: "r"(pcpup)); + + PCPU_SET(curthread, &thread0); + /* Set the module data location */ lastaddr = fake_preload_metadata(rvbp); @@ -848,15 +857,6 @@ initriscv(struct riscv_bootparams *rvbp) } } #endif - - /* Set the pcpu data, this is needed by pmap_bootstrap */ - pcpup = &__pcpu[0]; - pcpu_init(pcpup, 0, sizeof(struct pcpu)); - - /* Set the pcpu pointer */ - __asm __volatile("mv gp, %0" :: "r"(pcpup)); - - PCPU_SET(curthread, &thread0); /* Do basic tuning, hz etc */ init_param1(); From owner-svn-src-all@freebsd.org Sun Apr 7 21:01:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E5CB8156AA96; Sun, 7 Apr 2019 21:01:03 +0000 (UTC) (envelope-from imp@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 8594D72198; Sun, 7 Apr 2019 21:01:03 +0000 (UTC) (envelope-from imp@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 62697198EA; Sun, 7 Apr 2019 21:01:03 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37L13vr081336; Sun, 7 Apr 2019 21:01:03 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37L133n081335; Sun, 7 Apr 2019 21:01:03 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201904072101.x37L133n081335@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Sun, 7 Apr 2019 21:01:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346022 - head/sys/conf X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/sys/conf X-SVN-Commit-Revision: 346022 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8594D72198 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 21:01:04 -0000 Author: imp Date: Sun Apr 7 21:01:02 2019 New Revision: 346022 URL: https://svnweb.freebsd.org/changeset/base/346022 Log: Make RELDATE be on a single line. All variable assignments that start in column 1 have to be on a single line for amd to build due to as weird dependency there (most likely it can be fixed to use the new VARS_ONLY feature, but it isn't today). usr.sbin/amd/include/Makefile calls usr.sbin/amd/include/newvers.sh which does: eval `LC_ALL=C egrep '^[A-Z]+=' $1 | grep -v COPYRIGHT` which is where that requirement comes from. It handles COPYRIGHT since that's an exception. Rather than add additional exceptions, cope with the long line in newvers.sh instead. Note: it no longer needs to filter COPYRIGHT because the assignment doesn't start in column 1 anymore. I had done a universe when I had an earlier version of r346018 that had it as one line. When I changed it to multi-line as suggested in the review, I only built kernels on a couple of architectures to make sure it didn't break anything. Add comment to newvers.sh noting this. Obviously, this unbreaks the amd build. Modified: head/sys/conf/newvers.sh Modified: head/sys/conf/newvers.sh ============================================================================== --- head/sys/conf/newvers.sh Sun Apr 7 20:12:24 2019 (r346021) +++ head/sys/conf/newvers.sh Sun Apr 7 21:01:02 2019 (r346022) @@ -44,6 +44,9 @@ # checkout from a version control system. Metadata is # included if the tree is modified. +# Note: usr.sbin/amd/include/newvers.sh assumes all variable assignments of +# upper case variables starting in column 1 are on one line w/o continuation. + TYPE="FreeBSD" REVISION="13.0" BRANCH=${BRANCH_OVERRIDE:-CURRENT} @@ -105,8 +108,7 @@ if [ -z "${SYSDIR}" ]; then SYSDIR=$(dirname $0)/.. fi -RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print $3}' \ - ${PARAMFILE:-${SYSDIR}/sys/param.h}) +RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print $3}' ${PARAMFILE:-${SYSDIR}/sys/param.h}) if [ -r "${SYSDIR}/../COPYRIGHT" ]; then year=$(sed -Ee '/^Copyright .* The FreeBSD Project/!d;s/^.*1992-([0-9]*) .*$/\1/g' ${SYSDIR}/../COPYRIGHT) From owner-svn-src-all@freebsd.org Sun Apr 7 21:14:59 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C426F156B945 for ; Sun, 7 Apr 2019 21:14:58 +0000 (UTC) (envelope-from oliver.pinter@hardenedbsd.org) Received: from mail-yb1-xb30.google.com (mail-yb1-xb30.google.com [IPv6:2607:f8b0:4864:20::b30]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5593972F7F for ; Sun, 7 Apr 2019 21:14:58 +0000 (UTC) (envelope-from oliver.pinter@hardenedbsd.org) Received: by mail-yb1-xb30.google.com with SMTP id p134so3721459ybc.4 for ; Sun, 07 Apr 2019 14:14:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hardenedbsd.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=vK+jm5SNo/rtmKTQ9iWH74DwxEDZ1h3rQo2maF/0Zro=; b=i8JBmdQ2InQw9doHeHVjGNjppYI0RXsgQpHrvlSmyIZBhkjvF6V3NWIcW8qjE3IU4G iJ34uv3FUJSV3jLD17YTe3s+z2NoU+r64yaJnHeYqHFj8jKsZH522INlDnm6y9obxpKk kpaeiVNW9KKoULaq9XL/M/x7Emf3q71OtrUo6+hfBf9gPG9Wf3V5b86OgFruY7toby/A US38YxBMT8A9CwKw8gjxr5NdCYpZnaMwV5Xmir5+Dbjn+jo5+sF25W9x9HO2MBvm+Z9R KehFPIG2ekHTgOReQeflgis83HFCJt3kLD5LnpgUYrSSmycW8ErAo0Z2t8idLnljuv4x fqBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=vK+jm5SNo/rtmKTQ9iWH74DwxEDZ1h3rQo2maF/0Zro=; b=r3fdoOyjFfZuRxzd53lL7HdyW+wJOpMLUfpNSnHS5McWvRhia6jdBvDYg1lcd3bzO6 vOic/Ljsm2C3oVQp78Fj/tlJLI6j0V0x05Qv170Tr7Q4CCXEMOx4ixsRL6fTPD+V4UtX pHkaMVqjQtykQOVgK6FxYqkJCYtINyY9sisUEnjm7OFxiWEkFbjJdXWZPunSkBtLLSPC sQdTJQScEQgZY20GotztAl7hU54UOUNcSLBFc8fHo9k/VqRgSvQX7tXUA53l37CutJnb fo6QKu+asyyExjbapkXWtCmDMfW8OHa85/AH7IhyHWBQqskb5lkahOH9o7bCOT7P+R5v Voqg== X-Gm-Message-State: APjAAAVg2kKguIKyb4+Mqu4rVzeZ4KMDwPDDopi++PpOUqOJxa0bwk1H u62oU1gfPVNfX/62OArD1LtcjIyeRt+RF00Fjp27Og== X-Google-Smtp-Source: APXvYqxrRyXSw9+AjHYD7/UjwPKaLnOsYNBOkqpeJh6O0yYb8HlzFAqtO7b4F+LvsNCXNGR0mhZGupMN4z+KbEZKYP8= X-Received: by 2002:a25:241:: with SMTP id 62mr11706901ybc.10.1554671697487; Sun, 07 Apr 2019 14:14:57 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a25:810e:0:0:0:0:0 with HTTP; Sun, 7 Apr 2019 14:14:56 -0700 (PDT) In-Reply-To: <201904071831.x37IVj4r096803@repo.freebsd.org> References: <201904071831.x37IVj4r096803@repo.freebsd.org> From: Oliver Pinter Date: Sun, 7 Apr 2019 23:14:56 +0200 Message-ID: Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 To: Chris Rees Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" , Konstantin Belousov X-Rspamd-Queue-Id: 5593972F7F X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 21:14:59 -0000 On Sunday, April 7, 2019, Chris Rees wrote: > Author: crees (doc,ports committer) > Date: Sun Apr 7 18:31:45 2019 > New Revision: 346017 > URL: https://svnweb.freebsd.org/changeset/base/346017 > > Log: > Remove now unnecessary kldstat check before attempting to load modules. > > Since r233109, kldload has the -n option, which silently ignores options > that are already loaded. > > https://lists.freebsd.org/pipermail/freebsd-rc/2018-December/003899.html > > Note that this script no longer reports if the module is already loaded, > but it could be argued this wasn't particularly useful information. > > PR: docs/234248 This is why a docs PR? > Reviewed by: bcr (docs), kib, rgrimes (visual) I haven't seen kib on the reviewers list. > Approved by: jilles > Differential Revision: https://reviews.freebsd.org/D18670 > > Modified: > head/libexec/rc/rc.d/abi > head/libexec/rc/rc.d/bthidd > head/libexec/rc/rc.d/cfumass > head/libexec/rc/rc.d/kld > head/libexec/rc/rc.d/mdconfig > head/libexec/rc/rc.d/mdconfig2 > head/libexec/rc/rc.d/mountcritremote > head/libexec/rc/rc.d/syscons > head/libexec/rc/rc.subr > head/share/man/man5/rc.conf.5 > > Modified: head/libexec/rc/rc.d/abi > ============================================================ > ================== > --- head/libexec/rc/rc.d/abi Sun Apr 7 18:24:26 2019 (r346016) > +++ head/libexec/rc/rc.d/abi Sun Apr 7 18:31:45 2019 (r346017) > @@ -27,10 +27,10 @@ linux_start() > local _tmpdir > > echo -n ' linux' > - load_kld -e 'linux(aout|elf)' linux > + load_kld linux > case `sysctl -n hw.machine_arch` in > amd64) > - load_kld -e 'linux64elf' linux64 > + load_kld linux64 > ;; > esac > if [ -x /compat/linux/sbin/ldconfigDisabled ]; then > > Modified: head/libexec/rc/rc.d/bthidd > ============================================================ > ================== > --- head/libexec/rc/rc.d/bthidd Sun Apr 7 18:24:26 2019 (r346016) > +++ head/libexec/rc/rc.d/bthidd Sun Apr 7 18:31:45 2019 (r346017) > @@ -34,11 +34,11 @@ evdev_enabled() > bthidd_prestart() > { > if evdev_enabled; then > - load_kld -m uinput uinput > + load_kld uinput > fi > - load_kld -m kbdmux kbdmux > - load_kld -m vkbd vkbd > - load_kld -m ng_btsocket ng_btsocket > + load_kld kbdmux > + load_kld vkbd > + load_kld ng_btsocket > return 0 > } > > > Modified: head/libexec/rc/rc.d/cfumass > ============================================================ > ================== > --- head/libexec/rc/rc.d/cfumass Sun Apr 7 18:24:26 2019 > (r346016) > +++ head/libexec/rc/rc.d/cfumass Sun Apr 7 18:31:45 2019 > (r346017) > @@ -75,7 +75,7 @@ cfumass_start() > return "${err}" > fi > > - load_kld -e cfumass cfumass > + load_kld cfumass > > # If the template is already switched to Mass Storage, then reset > # it to -1 to force the host to reenumerate it; otherwise it might > > Modified: head/libexec/rc/rc.d/kld > ============================================================ > ================== > --- head/libexec/rc/rc.d/kld Sun Apr 7 18:24:26 2019 (r346016) > +++ head/libexec/rc/rc.d/kld Sun Apr 7 18:31:45 2019 (r346017) > @@ -46,7 +46,7 @@ kld_start() > > echo 'Loading kernel modules:' > for _kld in $kld_list ; do > - load_kld -e ${_kld}.ko $_kld > + load_kld $_kld > done > } > > > Modified: head/libexec/rc/rc.d/mdconfig > ============================================================ > ================== > --- head/libexec/rc/rc.d/mdconfig Sun Apr 7 18:24:26 2019 > (r346016) > +++ head/libexec/rc/rc.d/mdconfig Sun Apr 7 18:31:45 2019 > (r346017) > @@ -114,7 +114,7 @@ mdconfig_start() > continue > fi > if [ "${_file}" != "${_file%.uzip}" ]; then > - load_kld -m g_uzip geom_uzip || > return 3 > + load_kld geom_uzip || return 3 > # sleep a bit to allow creation of > /dev/mdX.uzip > sleep 2 > fi > > Modified: head/libexec/rc/rc.d/mdconfig2 > ============================================================ > ================== > --- head/libexec/rc/rc.d/mdconfig2 Sun Apr 7 18:24:26 2019 > (r346016) > +++ head/libexec/rc/rc.d/mdconfig2 Sun Apr 7 18:31:45 2019 > (r346017) > @@ -123,7 +123,7 @@ mdconfig2_start() > # been created. > if [ "${_type}" = "vnode" -a "${_fs}" != "/" ]; then > if [ "${_file}" != "${_file%.uzip}" ]; then > - load_kld -m g_uzip geom_uzip || return 3 > + load_kld geom_uzip || return 3 > fi > if is_readonly ${_fs}; then > warn "${_fs} is mounted read-only, > skipping ${_md}." > > Modified: head/libexec/rc/rc.d/mountcritremote > ============================================================ > ================== > --- head/libexec/rc/rc.d/mountcritremote Sun Apr 7 18:24:26 2019 > (r346016) > +++ head/libexec/rc/rc.d/mountcritremote Sun Apr 7 18:31:45 2019 > (r346017) > @@ -27,7 +27,7 @@ mountcritremote_precmd() > case "`mount -d -a -t nfs 2> /dev/null`" in > *mount_nfs*) > # Handle absent nfs client support > - load_kld -m nfs nfscl || return 1 > + load_kld nfscl || return 1 > ;; > esac > return 0 > > Modified: head/libexec/rc/rc.d/syscons > ============================================================ > ================== > --- head/libexec/rc/rc.d/syscons Sun Apr 7 18:24:26 2019 > (r346016) > +++ head/libexec/rc/rc.d/syscons Sun Apr 7 18:31:45 2019 > (r346017) > @@ -346,7 +346,7 @@ syscons_start() > for i in `kldstat | awk '$5 ~ "_saver\.ko$" { print $5 > }'`; do > kldunload ${i} > done > - load_kld -e _saver ${saver}_saver > + load_kld ${saver}_saver > ;; > esac > > > Modified: head/libexec/rc/rc.subr > ============================================================ > ================== > --- head/libexec/rc/rc.subr Sun Apr 7 18:24:26 2019 (r346016) > +++ head/libexec/rc/rc.subr Sun Apr 7 18:31:45 2019 (r346017) > @@ -1853,48 +1853,29 @@ mount_md() > } > > # Code common to scripts that need to load a kernel module > -# if it isn't in the kernel yet. Syntax: > -# load_kld [-e regex] [-m module] file > -# where -e or -m chooses the way to check if the module > -# is already loaded: > -# regex is egrep'd in the output from `kldstat -v', > -# module is passed to `kldstat -m'. > -# The default way is as though `-m file' were specified. > +# if it isn't in the kernel yet. Syntax: > +# load_kld file > load_kld() > { > - local _loaded _mod _opt _re > + local _opt > > + # Silently ignore legacy options; they are unnecessary > while getopts "e:m:" _opt; do > case "$_opt" in > - e) _re="$OPTARG" ;; > - m) _mod="$OPTARG" ;; > - *) err 3 'USAGE: load_kld [-e regex] [-m module] file' ;; > + e) ;; > + m) ;; > + *) err 3 'USAGE: load_kld file' ;; > esac > done > shift $(($OPTIND - 1)) > if [ $# -ne 1 ]; then > - err 3 'USAGE: load_kld [-e regex] [-m module] file' > + err 3 'USAGE: load_kld file' > fi > - _mod=${_mod:-$1} > - _loaded=false > - if [ -n "$_re" ]; then > - if kldstat -v | egrep -q -e "$_re"; then > - _loaded=true > - fi > + if ! kldload -n "$1"; then > + warn "Unable to load kernel module $1" > + return 1 > else > - if kldstat -q -m "$_mod"; then > - _loaded=true > - fi > - fi > - if ! $_loaded; then > - if ! kldload "$1"; then > - warn "Unable to load kernel module $1" > - return 1 > - else > - info "$1 kernel module loaded." > - fi > - else > - debug "load_kld: $1 kernel module already loaded." > + info "$1 kernel module loaded." > fi > return 0 > } > > Modified: head/share/man/man5/rc.conf.5 > ============================================================ > ================== > --- head/share/man/man5/rc.conf.5 Sun Apr 7 18:24:26 2019 > (r346016) > +++ head/share/man/man5/rc.conf.5 Sun Apr 7 18:31:45 2019 > (r346017) > @@ -24,7 +24,7 @@ > .\" > .\" $FreeBSD$ > .\" > -.Dd March 21, 2019 > +.Dd April 7, 2019 > .Dt RC.CONF 5 > .Os > .Sh NAME > @@ -249,9 +249,7 @@ Default > .It Va kld_list > .Pq Vt str > A whitespace-separated list of kernel modules to load right after > -the local disks are mounted, without any > -.Pa .ko > -extension or path. > +the local disks are mounted, with optional path. > Loading modules at this point in the boot process is > much faster than doing it via > .Pa /boot/loader.conf > _______________________________________________ > svn-src-head@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/svn-src-head > To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org" > From owner-svn-src-all@freebsd.org Sun Apr 7 21:16:53 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 65E3F156BA17 for ; Sun, 7 Apr 2019 21:16:53 +0000 (UTC) (envelope-from oliver.pinter@hardenedbsd.org) Received: from mail-yb1-xb35.google.com (mail-yb1-xb35.google.com [IPv6:2607:f8b0:4864:20::b35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BBD7F73105 for ; Sun, 7 Apr 2019 21:16:52 +0000 (UTC) (envelope-from oliver.pinter@hardenedbsd.org) Received: by mail-yb1-xb35.google.com with SMTP id c15so4406601ybk.8 for ; Sun, 07 Apr 2019 14:16:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hardenedbsd.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=Rtc1TVoHjK6ckspqcZvjJdJXPuRcZb9r7WnDqEe8Ix0=; b=UfhiZ2FLG89/GyQA/JavWN7h73z/hWgOuqh+4ZTdChs+OnXY0SDE8TMlMz5XyysSNQ BQ5a3142rbVouXvO3mvBMzlMyH0tXBPgkINvJl6bKKFX6tr6QtmCLd5i5OkMCZbv5uW2 gYf2OFX6MkfkyuBicwGnXhgFCsfv64GvNuXx7uecWga5fogP1SHDUL1JCrA6fAA6rRBN /5Oibh8/BQIhqSjcngfXBPZFf+D4Y8EhKW5sJpdFXHY8AZY1S5QN3hQG73DdzX/NtMHM 9wFbm1V8iW/OJtGSYBfuCgYd7e0CXUapMfzfQmxHr2y9mU6BopTTAjk+Gmjju33VOM3c oNOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=Rtc1TVoHjK6ckspqcZvjJdJXPuRcZb9r7WnDqEe8Ix0=; b=kA56a4o26JYhpws4A7mjl2oBbYggEQpVU1JSA9z7x7N6QSaNOGxW4WTPCYbOyjTUvv YPBnNduWh86eoYg1C2doyI06xUa67OQnGHDTF8D5Dl4JboNU3MIgxORybtQx/TTtaGCc eaZrYq0D++24B8jPsNevTDh6FblsC/zT3fErBqk5AFtUmaYZwKc63w27mbhHRcHvegxs YM7lCnEBtEOP43klNrymLc0HyVB/0FruuEcyZ/9T+6lSJX7i4AxAYbt38TkL3BdUd1iF Z/49gVQLEvaP0IMsDmYVJ9+I3MXSBUZeRc2jxiLyeB9C/hGu2xxOQdP8u4Kzu4IO+Kq3 ufdQ== X-Gm-Message-State: APjAAAWcdWlq4IYJWKkfFFdIlZGoCQy+2YKROewxCnu6KMa8T9ufFQZu oa0RB6T0id4tSgDPEvyHDYD7FExBHzQkojftDrFf8A== X-Google-Smtp-Source: APXvYqxKBaOZcRDoWZk+HAvh1oQm/JzuC9Ht/G2dOUDrD2JamDFwxYID0CtlrqbT9KaSJHLyJmi1Roy5KRI6crgPzSo= X-Received: by 2002:a25:4642:: with SMTP id t63mr22507328yba.116.1554671812196; Sun, 07 Apr 2019 14:16:52 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a25:810e:0:0:0:0:0 with HTTP; Sun, 7 Apr 2019 14:16:51 -0700 (PDT) In-Reply-To: <201904071839.x37IduPO002007@repo.freebsd.org> References: <201904071839.x37IduPO002007@repo.freebsd.org> From: Oliver Pinter Date: Sun, 7 Apr 2019 23:16:51 +0200 Message-ID: Subject: Re: svn commit: r346018 - head/sys/conf To: Warner Losh Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" X-Rspamd-Queue-Id: BBD7F73105 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 21:16:53 -0000 Please revert this patch. If I'm not wrong, this will break the freebsd-version command's generation or output. On Sunday, April 7, 2019, Warner Losh wrote: > Author: imp > Date: Sun Apr 7 18:39:55 2019 > New Revision: 346018 > URL: https://svnweb.freebsd.org/changeset/base/346018 > > Log: > Use default shell assignment rather more complicated if then > construct. > > Discussed with: emaste@, allanjude@ (changes (or not) based on their > feedback) > Differential Revision: https://reviews.freebsd.org/D19797 > > Modified: > head/sys/conf/newvers.sh > > Modified: head/sys/conf/newvers.sh > ============================================================ > ================== > --- head/sys/conf/newvers.sh Sun Apr 7 18:31:45 2019 (r346017) > +++ head/sys/conf/newvers.sh Sun Apr 7 18:39:55 2019 (r346018) > @@ -46,10 +46,7 @@ > > TYPE="FreeBSD" > REVISION="13.0" > -BRANCH="CURRENT" > -if [ -n "${BRANCH_OVERRIDE}" ]; then > - BRANCH=${BRANCH_OVERRIDE} > -fi > +BRANCH=${BRANCH_OVERRIDE:-CURRENT} > RELEASE="${REVISION}-${BRANCH}" > VERSION="${TYPE} ${RELEASE}" > > @@ -108,21 +105,16 @@ if [ -z "${SYSDIR}" ]; then > SYSDIR=$(dirname $0)/.. > fi > > -if [ -n "${PARAMFILE}" ]; then > - RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print > $3}' \ > - ${PARAMFILE}) > -else > - RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print > $3}' \ > - ${SYSDIR}/sys/param.h) > -fi > +RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print $3}' \ > + ${PARAMFILE:-${SYSDIR}/sys/param.h}) > > -b=share/examples/etc/bsd-style-copyright > if [ -r "${SYSDIR}/../COPYRIGHT" ]; then > year=$(sed -Ee '/^Copyright .* The FreeBSD > Project/!d;s/^.*1992-([0-9]*) .*$/\1/g' ${SYSDIR}/../COPYRIGHT) > else > year=$(date +%Y) > fi > # look for copyright template > +b=share/examples/etc/bsd-style-copyright > for bsd_copyright in ../$b ../../$b ../../../$b /usr/src/$b /usr/$b > do > if [ -r "$bsd_copyright" ]; then > @@ -150,9 +142,7 @@ COPYRIGHT="$COPYRIGHT > > # VARS_ONLY means no files should be generated, this is just being > # included. > -if [ -n "$VARS_ONLY" ]; then > - return 0 > -fi > +[ -n "$VARS_ONLY" ] && return 0 > > LC_ALL=C; export LC_ALL > if [ ! -r version ] > _______________________________________________ > svn-src-head@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/svn-src-head > To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org" > From owner-svn-src-all@freebsd.org Sun Apr 7 21:41:20 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E7712156C128; Sun, 7 Apr 2019 21:41:19 +0000 (UTC) (envelope-from crees@bayofrum.net) Received: from mail56c50.megamailservers.eu (mail168c50.megamailservers.eu [91.136.10.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A301273C1B; Sun, 7 Apr 2019 21:41:18 +0000 (UTC) (envelope-from crees@bayofrum.net) X-Authenticated-User: bayofrum@uwclub.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu; s=maildub; t=1554671973; bh=PqCXngQw4k598eox3LWp5UyLIJ6R7Gy/M9lz5lHPHi8=; h=Date:In-Reply-To:References:Subject:To:CC:From:From; b=QmPfB+6FMlU8/QOY6Xh1mXLztk9FfvjPikBJtIudSWyFd/yLGnXupz6Ypk5G858Mz EVVVPw32W8Hen5QneYJ2GzYWD41xYkP+bcGdxMVbpZKO0e12NJFJzx7uSlxUEdM7/S LwsnKlAYOI0d9vGzLt3ng+UpNR9FbANQ+HZABeLw= Feedback-ID: crees@bayofrum. Received: from pegasus.bayofrum.net (81-178-238-70.dsl.pipex.com [81.178.238.70]) (authenticated bits=0) by mail56c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id x37LJVHW010591; Sun, 7 Apr 2019 21:19:32 +0000 Received: from R.bayofrum.net (R.bayofrum.net [192.168.1.129]) by pegasus.bayofrum.net (Postfix) with ESMTPSA id CD0E4131F7; Sun, 7 Apr 2019 22:19:27 +0100 (BST) Date: Sun, 07 Apr 2019 22:19:24 +0100 User-Agent: K-9 Mail for Android In-Reply-To: References: <201904071831.x37IVj4r096803@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 To: Oliver Pinter , Chris Rees CC: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" , Konstantin Belousov From: Chris Rees Message-ID: <7C6350D0-864E-4BCE-B562-06533076D222@bayofrum.net> X-bayofrum-MailScanner-Information: Please contact the ISP for more information X-bayofrum-MailScanner-ID: CD0E4131F7.A7D73 X-bayofrum-MailScanner: Found to be clean X-bayofrum-MailScanner-From: crees@bayofrum.net X-Spam-Status: No X-CTCH-RefID: str=0001.0A0B0215.5CAA6965.0014, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-CSC: 0 X-CHA: v=2.3 cv=G6gy7es5 c=1 sm=1 tr=0 a=i0HMBnJGy7D3/NFKO8d8XA==:117 a=i0HMBnJGy7D3/NFKO8d8XA==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=IkcTkHD0fZMA:10 a=oexKYjalfGEA:10 a=ypVJL4-jAAAA:8 a=6I5d2MoRAAAA:8 a=NV2mcPfE25mr8LH4jqIA:9 a=QEXdDO2ut3YA:10 a=HOOHyrUpFT4A:10 a=khIbc0fXALFIcTpOSxgJ:22 a=IjZwj45LgO3ly-622nXo:22 X-Rspamd-Queue-Id: A301273C1B X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 21:41:20 -0000 Hey, On 7 April 2019 22:14:56 BST, Oliver Pinter = wrote: >On Sunday, April 7, 2019, Chris Rees wrote: > >> Author: crees (doc,ports committer) >> Date: Sun Apr 7 18:31:45 2019 >> New Revision: 346017 >> URL: https://svnweb.freebsd.org/changeset/base/346017 >> >> Log: >> Remove now unnecessary kldstat check before attempting to load >modules. >> >> Since r233109, kldload has the -n option, which silently ignores >options >> that are already loaded. >> >>=20=20 >https://lists.freebsd.org/pipermail/freebsd-rc/2018-December/003899.html >> >> Note that this script no longer reports if the module is already >loaded, >> but it could be argued this wasn't particularly useful information. >> >> PR: docs/234248 > > >This is why a docs PR? Followup from that PR. >> Reviewed by: bcr (docs), kib, rgrimes (visual) > > >I haven't seen kib on the reviewers list. Please refer to the conversation on freebsd-rc that I linked in the commit = message. Chris --=20 Sent from my Android device with K-9 Mail. Please excuse my brevity. --=20 This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. From owner-svn-src-all@freebsd.org Mon Apr 8 00:08:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8B044156F412 for ; Mon, 8 Apr 2019 00:08:34 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk1-x72d.google.com (mail-qk1-x72d.google.com [IPv6:2607:f8b0:4864:20::72d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 21F8B779E2 for ; Mon, 8 Apr 2019 00:08:34 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qk1-x72d.google.com with SMTP id c20so6939178qkc.10 for ; Sun, 07 Apr 2019 17:08:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=XC8Md6R4JhyuN6HSXkDxIANAOnaGVhPKM+1LvwF8NzY=; b=NeVT1xsSVZRi6utCheURa4Cl1uH9r2PJsV/tvh14b1lJL8AsAV9NQLtB6VSOBPPEXD 0vltzRoa1TUyzLhHiwglZZfbUl7copERQqZARstJbvp8PjqhIMqcH8i6J5pNbI+do/OQ j9jlXLVj3iohwfiit7EQmZWG84l5GSHtFCvw8xBfqTpXfV11X+q9dJt8xtirvdXKFMpL O/ZPDFmE8NQmXyxFDIsEYcE6vYClHqLWrUPwGqbtdPaZdOqLHtd4k+CVrkzq/1CmbbGe 23xhs5wuQPCd98ZvFObyLrGXPsWhyJRq59lOXFRYNLKO15qBUpjGJcZpgRWwylRivdw/ 1a/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=XC8Md6R4JhyuN6HSXkDxIANAOnaGVhPKM+1LvwF8NzY=; b=qHe5wLYnL4XpBgY7qnYe2nSnv3+TmWaXySPtqqi7mLqXrD5Hxk4UHVsOS48L1jhLqN Lt4D3YphHozq9tOh6xpy8SSo7tzTCbPNAN6PzL9p0kuw/yWl+XfJmaUUs/js3/IFOq/i D+vaWsxY51VzvbVKUXY/ASZ9JNImNhPDhH1/bSXyXLj0RaJ82ohgVYQ1uBcIB4jQqM0U sCryRLDhQjF7Z5tWXb4i7QMi9pRTfhiDMTZIim70xHfCGnW65z0AOk17BSANqIJCty32 FA/kgXGgJwbpf0n3iNLtj+5RVP+UjPU7FQtqKcq19TlydOAqUKV2K/xn/hJGkya42ZkW DU+w== X-Gm-Message-State: APjAAAWc7ywNhnhn4j+ySfKmY/BiNr5zEqHBoDhhONfa29NtAai7ls/m u7IWt92RdLVAgKsQoumk+KRxZEbUUU6En9A2+qt72Q== X-Google-Smtp-Source: APXvYqzeGYywS27croiMevH7Rh2ISg1V8cPM6R/jfDr7SpuWaOEFZNd/BygrnGuBcON0dFIwchKpDJoqQRsK3/X6SOM= X-Received: by 2002:a05:620a:1024:: with SMTP id a4mr21117561qkk.232.1554682113091; Sun, 07 Apr 2019 17:08:33 -0700 (PDT) MIME-Version: 1.0 References: <201904071839.x37IduPO002007@repo.freebsd.org> In-Reply-To: From: Warner Losh Date: Sun, 7 Apr 2019 18:08:21 -0600 Message-ID: Subject: Re: svn commit: r346018 - head/sys/conf To: Oliver Pinter Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" X-Rspamd-Queue-Id: 21F8B779E2 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.983,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 00:08:34 -0000 On Sun, Apr 7, 2019, 3:16 PM Oliver Pinter wrote: > Please revert this patch. If I'm not wrong, this will break the > freebsd-version command's generation or output. > You are going to need to be a lot more specific about this. It makes no sense to me at all how any of this could break that. The code is identical logically and produces the same result. Warner On Sunday, April 7, 2019, Warner Losh wrote: > >> Author: imp >> Date: Sun Apr 7 18:39:55 2019 >> New Revision: 346018 >> URL: https://svnweb.freebsd.org/changeset/base/346018 >> >> Log: >> Use default shell assignment rather more complicated if then >> construct. >> >> Discussed with: emaste@, allanjude@ (changes (or not) based on their >> feedback) >> Differential Revision: https://reviews.freebsd.org/D19797 >> >> Modified: >> head/sys/conf/newvers.sh >> >> Modified: head/sys/conf/newvers.sh >> >> ============================================================================== >> --- head/sys/conf/newvers.sh Sun Apr 7 18:31:45 2019 (r346017) >> +++ head/sys/conf/newvers.sh Sun Apr 7 18:39:55 2019 (r346018) >> @@ -46,10 +46,7 @@ >> >> TYPE="FreeBSD" >> REVISION="13.0" >> -BRANCH="CURRENT" >> -if [ -n "${BRANCH_OVERRIDE}" ]; then >> - BRANCH=${BRANCH_OVERRIDE} >> -fi >> +BRANCH=${BRANCH_OVERRIDE:-CURRENT} >> RELEASE="${REVISION}-${BRANCH}" >> VERSION="${TYPE} ${RELEASE}" >> >> @@ -108,21 +105,16 @@ if [ -z "${SYSDIR}" ]; then >> SYSDIR=$(dirname $0)/.. >> fi >> >> -if [ -n "${PARAMFILE}" ]; then >> - RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print >> $3}' \ >> - ${PARAMFILE}) >> -else >> - RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print >> $3}' \ >> - ${SYSDIR}/sys/param.h) >> -fi >> +RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print $3}' \ >> + ${PARAMFILE:-${SYSDIR}/sys/param.h}) >> >> -b=share/examples/etc/bsd-style-copyright >> if [ -r "${SYSDIR}/../COPYRIGHT" ]; then >> year=$(sed -Ee '/^Copyright .* The FreeBSD >> Project/!d;s/^.*1992-([0-9]*) .*$/\1/g' ${SYSDIR}/../COPYRIGHT) >> else >> year=$(date +%Y) >> fi >> # look for copyright template >> +b=share/examples/etc/bsd-style-copyright >> for bsd_copyright in ../$b ../../$b ../../../$b /usr/src/$b /usr/$b >> do >> if [ -r "$bsd_copyright" ]; then >> @@ -150,9 +142,7 @@ COPYRIGHT="$COPYRIGHT >> >> # VARS_ONLY means no files should be generated, this is just being >> # included. >> -if [ -n "$VARS_ONLY" ]; then >> - return 0 >> -fi >> +[ -n "$VARS_ONLY" ] && return 0 >> >> LC_ALL=C; export LC_ALL >> if [ ! -r version ] >> _______________________________________________ >> svn-src-head@freebsd.org mailing list >> https://lists.freebsd.org/mailman/listinfo/svn-src-head >> To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org" >> > From owner-svn-src-all@freebsd.org Mon Apr 8 00:17:23 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 38B98156F780 for ; Mon, 8 Apr 2019 00:17:23 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qt1-x82b.google.com (mail-qt1-x82b.google.com [IPv6:2607:f8b0:4864:20::82b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B398B77E47 for ; Mon, 8 Apr 2019 00:17:22 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qt1-x82b.google.com with SMTP id d13so13501931qth.5 for ; Sun, 07 Apr 2019 17:17:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=6+Jc9nYpEglXDiJnYkv1hCb6Si/Qp2f1ROP2YoqsguU=; b=PizH6M5u2Pi9IP2yj8Pm1N0pWfgM8M7AoIEz7bSegzz38Mt7zOOKyd1mi6UEx/orFC EzXP3uvGE34wpTBofidn659oAe9/o4Yc7lNvhuJHtTtGmnhUojv1BL1eQAurmou22/Z/ jBU3HYfSlVg5py6RmikFEisIKSc73rTwDwp7ya1RHQ4h37tOHvUUCt8GGz97HFr5Cgc4 p2itu6WDa3nUDW/xNlYkC5jSrSb7b4jfN+/QJop9W9w9CPQxwhjuhTTjj7beQiV3tfM8 SCtsEG12AUgSDyiSGRsCv6zt/TCyzeKDL8LTG2xhEF8r3sgzz+QtLkhE4fq8t+8kKZEw vo8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=6+Jc9nYpEglXDiJnYkv1hCb6Si/Qp2f1ROP2YoqsguU=; b=dzYG+Lh3r00rTponZAjmt6TUgYo8mDwRDtuNr8zis94rfTYMe6VHjKfMGrdTFlGiOS G0n6iwVwr8FgNX/eFgWgqM5B+mRBqdAPtV3cRGYmz3JiQuDo+m6eDzGtHy9ybXsA436a 1pTQjfMo0HpWEb2Jwd/QNe92OI7Yf+P8+UTUhZQ9SPukcfzCfEPe5vRYmNBqhfWTUcE8 rpkfInhJJ4TkvY8om4NubxQqnDI8MEZHZ5XNdTAoipbN6t7MQSIatsRwZkTcxp91xJPI e9YpRY88Kb9OZxuWyhKSktUvcmfuBlGnLGwes3nunfmkjhmgF4QwTlJSyiknY+thg3XD +z0w== X-Gm-Message-State: APjAAAU8/cLuaRqM/ZdsYokmJV1IdBzme+ylsYzaKiYHP7RnxI1I311Z Me22p4mPeuSBcOr3YJN5w+/PFrsIKuodzjddnMoSYQ== X-Google-Smtp-Source: APXvYqzEcC1267kGCKJXGWJyiCueuoiyl1JUFDOh4mr1+3EJpE0yp6zfm2TmjjsbRNLZZ9RWp2dQRpC8hP3nBw8s1rk= X-Received: by 2002:ac8:3328:: with SMTP id t37mr21673589qta.246.1554682641945; Sun, 07 Apr 2019 17:17:21 -0700 (PDT) MIME-Version: 1.0 References: <201904071607.x37G7fFP021279@repo.freebsd.org> <20190407212723.52279631@thor.intern.walstatt.dynvpn.de> In-Reply-To: <20190407212723.52279631@thor.intern.walstatt.dynvpn.de> From: Warner Losh Date: Sun, 7 Apr 2019 18:17:10 -0600 Message-ID: Subject: Re: svn commit: r346012 - head/sys/sys To: "O. Hartmann" Cc: Mariusz Zaborski , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: B398B77E47 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.983,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 00:17:23 -0000 On Sun, Apr 7, 2019, 1:32 PM O. Hartmann wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA256 > > Am Sun, 7 Apr 2019 16:07:41 +0000 (UTC) > Mariusz Zaborski schrieb: > > > Author: oshogbo > > Date: Sun Apr 7 16:07:41 2019 > > New Revision: 346012 > > URL: https://svnweb.freebsd.org/changeset/base/346012 > > > > Log: > > Bump FreeBSD version after r345982. > > > > Reported by: Shawn Webb > > Discussed with: imp, cy, rgrimes > > > > Modified: > > head/sys/sys/param.h > > > > Modified: head/sys/sys/param.h > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > > --- head/sys/sys/param.h Sun Apr 7 14:30:17 2019 (r346011) > > +++ head/sys/sys/param.h Sun Apr 7 16:07:41 2019 (r346012) > > @@ -60,7 +60,7 @@ > > * in the range 5 to 9. > > */ > > #undef __FreeBSD_version > > -#define __FreeBSD_version 1300017 /* Master, propagated to newvers = */ > > +#define __FreeBSD_version 1300018 /* Master, propagated to newvers = */ > > > > /* > > * __FreeBSD_kernel__ indicates that this system uses the kernel of > FreeBSD, > > _______________________________________________ > > svn-src-head@freebsd.org mailing list > > https://lists.freebsd.org/mailman/listinfo/svn-src-head > > To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org" > > I find myself bugged by this error while compiling world after the update > of CURRENT to > r346020: > > [...] > Building /usr/obj/usr/src/amd64.amd64/usr.sbin/blacklistd/conf.o > - --- all_subdir_usr.sbin/amd --- > - --- amd.o --- > /usr/src/contrib/amd/amd/amd.c:275:17: error: use of undeclared identifie= r > 'HOST_OS_NAME' > gopt.op_sys =3D HOST_OS_NAME; > ^ > /usr/src/contrib/amd/amd/amd.c:278:21: error: use of undeclared identifie= r > 'HOST_OS_VERSION' > gopt.op_sys_ver =3D HOST_OS_VERSION; > ^ > /usr/src/contrib/amd/amd/amd.c:281:22: error: use of undeclared identifie= r > 'HOST_OS' > gopt.op_sys_full =3D HOST_OS; > ^ > 3 errors generated. > That was my bad. A fix has committed as r346022. Warner [...] > > Regards, > > oh > - -- > O. Hartmann > > Ich widerspreche der Nutzung oder =C3=9Cbermittlung meiner Daten f=C3=BCr > Werbezwecke oder f=C3=BCr die Markt- oder Meinungsforschung (=C2=A7 28 Ab= s. 4 BDSG). > -----BEGIN PGP SIGNATURE----- > > iHUEARYIAB0WIQSy8IBxAPDkqVBaTJ44N1ZZPba5RwUCXKpPHAAKCRA4N1ZZPba5 > R6PZAP9y2rW9vEqML5dcmknUUyYawEs8DeMd625N0IpwlJxs1AEA5JW/RAB+QwEE > v47aAnROqGCMVHRixGGNLJa0vKooOA8=3D > =3D1Vht > -----END PGP SIGNATURE----- > From owner-svn-src-all@freebsd.org Mon Apr 8 03:35:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 061181572C7F; Mon, 8 Apr 2019 03:35:49 +0000 (UTC) (envelope-from oshogbo@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 8FC6584E92; Mon, 8 Apr 2019 03:35:48 +0000 (UTC) (envelope-from oshogbo@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 6A2671DC54; Mon, 8 Apr 2019 03:35:48 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x383ZmG9086094; Mon, 8 Apr 2019 03:35:48 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x383ZmuS086093; Mon, 8 Apr 2019 03:35:48 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201904080335.x383ZmuS086093@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Mon, 8 Apr 2019 03:35:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346023 - head/usr.bin/strings X-SVN-Group: head X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: head/usr.bin/strings X-SVN-Commit-Revision: 346023 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8FC6584E92 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.962,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 03:35:49 -0000 Author: oshogbo Date: Mon Apr 8 03:35:47 2019 New Revision: 346023 URL: https://svnweb.freebsd.org/changeset/base/346023 Log: strings: disable Casper support while building native-xtools Reported by: Charlie Li Tested by: Charlie Li Modified: head/usr.bin/strings/Makefile Modified: head/usr.bin/strings/Makefile ============================================================================== --- head/usr.bin/strings/Makefile Sun Apr 7 21:01:02 2019 (r346022) +++ head/usr.bin/strings/Makefile Mon Apr 8 03:35:47 2019 (r346023) @@ -10,7 +10,7 @@ PROG= strings LIBADD= elftc elf -.if ${MK_CASPER} != "no" && !defined(BOOTSTRAPPING) +.if ${MK_CASPER} != "no" && !defined(BOOTSTRAPPING) && !defined(NXB_TARGET) LIBADD+= casper LIBADD+= cap_fileargs CFLAGS+= -DWITH_CASPER From owner-svn-src-all@freebsd.org Mon Apr 8 04:07:38 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7C44E15732FC; Mon, 8 Apr 2019 04:07:38 +0000 (UTC) (envelope-from bde@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 21F0D85A4C; Mon, 8 Apr 2019 04:07:38 +0000 (UTC) (envelope-from bde@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 ED5221E172; Mon, 8 Apr 2019 04:07:37 +0000 (UTC) (envelope-from bde@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3847bLL001700; Mon, 8 Apr 2019 04:07:37 GMT (envelope-from bde@FreeBSD.org) Received: (from bde@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3847boA001699; Mon, 8 Apr 2019 04:07:37 GMT (envelope-from bde@FreeBSD.org) Message-Id: <201904080407.x3847boA001699@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bde set sender to bde@FreeBSD.org using -f From: Bruce Evans Date: Mon, 8 Apr 2019 04:07:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346024 - head/usr.sbin/vidcontrol X-SVN-Group: head X-SVN-Commit-Author: bde X-SVN-Commit-Paths: head/usr.sbin/vidcontrol X-SVN-Commit-Revision: 346024 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 21F0D85A4C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 04:07:38 -0000 Author: bde Date: Mon Apr 8 04:07:37 2019 New Revision: 346024 URL: https://svnweb.freebsd.org/changeset/base/346024 Log: Fix restoring the geometry when recovering from an error. Just restore the previous geometry, and don't do extra work to calculate the default geometry so as to reset to that. Modified: head/usr.sbin/vidcontrol/vidcontrol.c Modified: head/usr.sbin/vidcontrol/vidcontrol.c ============================================================================== --- head/usr.sbin/vidcontrol/vidcontrol.c Mon Apr 8 03:35:47 2019 (r346023) +++ head/usr.sbin/vidcontrol/vidcontrol.c Mon Apr 8 04:07:37 2019 (r346024) @@ -171,9 +171,8 @@ revert(void) else ioctl(0, _IO('S', cur_info.video_mode_number), NULL); if (cur_info.video_mode_info.vi_flags & V_INFO_GRAPHICS) { - size[0] = cur_info.video_mode_info.vi_width / 8; - size[1] = cur_info.video_mode_info.vi_height / - cur_info.console_info.font_size; + size[0] = cur_info.console_info.mv_csz; + size[1] = cur_info.console_info.mv_rsz; size[2] = cur_info.console_info.font_size; ioctl(0, KDRASTER, size); } From owner-svn-src-all@freebsd.org Mon Apr 8 04:54:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E2EA71573FF6; Mon, 8 Apr 2019 04:54:16 +0000 (UTC) (envelope-from bde@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 712ED86C3F; Mon, 8 Apr 2019 04:54:16 +0000 (UTC) (envelope-from bde@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 478F61E9C6; Mon, 8 Apr 2019 04:54:16 +0000 (UTC) (envelope-from bde@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x384sG1W027272; Mon, 8 Apr 2019 04:54:16 GMT (envelope-from bde@FreeBSD.org) Received: (from bde@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x384sGZ2027271; Mon, 8 Apr 2019 04:54:16 GMT (envelope-from bde@FreeBSD.org) Message-Id: <201904080454.x384sGZ2027271@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bde set sender to bde@FreeBSD.org using -f From: Bruce Evans Date: Mon, 8 Apr 2019 04:54:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346025 - head/lib/libvgl X-SVN-Group: head X-SVN-Commit-Author: bde X-SVN-Commit-Paths: head/lib/libvgl X-SVN-Commit-Revision: 346025 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 712ED86C3F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 04:54:17 -0000 Author: bde Date: Mon Apr 8 04:54:15 2019 New Revision: 346025 URL: https://svnweb.freebsd.org/changeset/base/346025 Log: Fix copying of MEMBUFs to MEMBUFs. This case was implemented by using the same code as the VIDBUF8 case, so it only worked for depths <= 8. The 2 directions for copying between VIDBUFs and MEMBUFs worked by using a Read/Write organization which makes the destination a VIDBUF so the MEMBUF case was not reached, and the VIDBUF cases have already been fixed. Fix this by removing "optimizations" for the VIDBUF8 case so that the MEMBUF case can fall through to the general (non-segmented) case. The optimizations were to duplicate code for the VIDBUF8 case so as to avoid 2 multiplications by 1 at runtime. This optimization is not useful since the multiplications are not in the inner loop. Remove the same "optimization" for the VIDBUF8S case. It was even less useful there since it duplicated more to do relatively less. Modified: head/lib/libvgl/bitmap.c Modified: head/lib/libvgl/bitmap.c ============================================================================== --- head/lib/libvgl/bitmap.c Mon Apr 8 04:07:37 2019 (r346024) +++ head/lib/libvgl/bitmap.c Mon Apr 8 04:54:15 2019 (r346025) @@ -136,16 +136,6 @@ WriteVerticalLine(VGLBitmap *dst, int x, int y, int wi } break; case VIDBUF8S: - pos = dst->VXsize * y + x; - while (width > 0) { - offset = VGLSetSegment(pos); - i = min(VGLAdpInfo.va_window_size - offset, width); - bcopy(line, dst->Bitmap + offset, i); - line += i; - pos += i; - width -= i; - } - break; case VIDBUF16S: case VIDBUF24S: case VIDBUF32S: @@ -160,11 +150,8 @@ WriteVerticalLine(VGLBitmap *dst, int x, int y, int wi width -= i; } break; - case VIDBUF8: case MEMBUF: - address = dst->Bitmap + dst->VXsize * y + x; - bcopy(line, address, width); - break; + case VIDBUF8: case VIDBUF16: case VIDBUF24: case VIDBUF32: @@ -251,16 +238,6 @@ read_planar: } break; case VIDBUF8S: - pos = src->VXsize * y + x; - while (width > 0) { - offset = VGLSetSegment(pos); - i = min(VGLAdpInfo.va_window_size - offset, width); - bcopy(src->Bitmap + offset, line, i); - line += i; - pos += i; - width -= i; - } - break; case VIDBUF16S: case VIDBUF24S: case VIDBUF32S: @@ -275,11 +252,8 @@ read_planar: width -= i; } break; - case VIDBUF8: case MEMBUF: - address = src->Bitmap + src->VXsize * y + x; - bcopy(address, line, width); - break; + case VIDBUF8: case VIDBUF16: case VIDBUF24: case VIDBUF32: From owner-svn-src-all@freebsd.org Mon Apr 8 07:57:02 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4A80E15783D5 for ; Mon, 8 Apr 2019 07:57:02 +0000 (UTC) (envelope-from oliver.pinter@hardenedbsd.org) Received: from mail-yw1-xc33.google.com (mail-yw1-xc33.google.com [IPv6:2607:f8b0:4864:20::c33]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id CE9F48CEB1 for ; Mon, 8 Apr 2019 07:57:01 +0000 (UTC) (envelope-from oliver.pinter@hardenedbsd.org) Received: by mail-yw1-xc33.google.com with SMTP id c4so4585713ywa.11 for ; Mon, 08 Apr 2019 00:57:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hardenedbsd.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=hnLKzkcVELDs/iDYXVSSD974j3hRta/POYXccSouawg=; b=P8mN9ujJQZeN2Rtv7BdlIk6kdE7gWA5jfm9NRq6NSaBAoGztNwi/4+Ylq5axxgO4Pu WkrWkr1Av/aTxQqZ+UAfUZHfQB6GUB0hHfCvvI7DoAfoYT5aL9nOrjMrP3xwh0FrQi8E RxnjsxlMNYyeiRxnf32Nu/2dhNtIx6oulAZhwgYgvAQ3ZkoY10vnZzsq4ignxREqJ4pK xixv7XD6GXeqQ1sqRw/XQUpEaMvsgCJo/cVJEYs9Cqnja/o8SeS8cuxPbkKoLrEtxzk0 X11693QtQVv/MUeh6NOSzCB85O7bE5W3+okq5iBbfGDcYyyTKY7yLyWSjE8cCSMPDkeS bVuQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=hnLKzkcVELDs/iDYXVSSD974j3hRta/POYXccSouawg=; b=iTrg+ar2nRr329a5fNQ5UvrUAvfOy3ghz58z/FTGdNWCdEpMcfRIOydR8K/Wm5wtZp hx8tituC+hfyQO1qKHSJx7whyGFtIHbKDVM+YmLjjw0q4+FzbkElGIpgYz0s2g2SvjhL 2WDwD3P9FHLgz2byTc+TrALJqasmGOtmK7YIY9c8aP0942kly/BsKoR+tosBAR9Bcrde VObkfsP+GRXt92Z/6WzMBAOm69s03svYHyW4cHWIdR2EdjAIxKKv7lrjwFVtee4Q3aFo OuYuMDw68XhaN3l3L2C7J4+HfbNVwFK0mIOq/5Tl+gxmhpAMEBnPhrZiiFP4QSFmfIfJ 59Eg== X-Gm-Message-State: APjAAAVdJpRrrwUI6L+KUyPqNuGJ9bgNZmmgBPmlcblrQyflHUOHKa3S UODKkC7pmaWn9fIleHlU5Fejbk8M6JtRWf0/nU06qA== X-Google-Smtp-Source: APXvYqyMEtHLSi+6N/7LXtmRKr9d6Bw0UJcZT6GkDLL7XkN4Oxu4RRcDGvTeO2DOaEHC9cToJydjnVqvC1dyVuIopj4= X-Received: by 2002:a81:1393:: with SMTP id 141mr21946237ywt.140.1554710221122; Mon, 08 Apr 2019 00:57:01 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a25:810e:0:0:0:0:0 with HTTP; Mon, 8 Apr 2019 00:57:00 -0700 (PDT) In-Reply-To: References: <201904071839.x37IduPO002007@repo.freebsd.org> From: Oliver Pinter Date: Mon, 8 Apr 2019 09:57:00 +0200 Message-ID: Subject: Re: svn commit: r346018 - head/sys/conf To: Warner Losh Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" X-Rspamd-Queue-Id: CE9F48CEB1 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.984,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 07:57:02 -0000 On Monday, April 8, 2019, Warner Losh wrote: > > > On Sun, Apr 7, 2019, 3:16 PM Oliver Pinter > wrote: > >> Please revert this patch. If I'm not wrong, this will break the >> freebsd-version command's generation or output. >> > > You are going to need to be a lot more specific about this. It makes no > sense to me at all how any of this could break that. The code is identical > logically and produces the same result. > Now I double checked, it may work, but I remembered to this "black magic" : https://github.com/freebsd/freebsd/blob/master/bin/freebsd-version/Makefile > > Warner > > > On Sunday, April 7, 2019, Warner Losh wrote: >> >>> Author: imp >>> Date: Sun Apr 7 18:39:55 2019 >>> New Revision: 346018 >>> URL: https://svnweb.freebsd.org/changeset/base/346018 >>> >>> Log: >>> Use default shell assignment rather more complicated if then >>> construct. >>> >>> Discussed with: emaste@, allanjude@ (changes (or not) based on their >>> feedback) >>> Differential Revision: https://reviews.freebsd.org/D19797 >>> >>> Modified: >>> head/sys/conf/newvers.sh >>> >>> Modified: head/sys/conf/newvers.sh >>> ============================================================ >>> ================== >>> --- head/sys/conf/newvers.sh Sun Apr 7 18:31:45 2019 (r346017) >>> +++ head/sys/conf/newvers.sh Sun Apr 7 18:39:55 2019 (r346018) >>> @@ -46,10 +46,7 @@ >>> >>> TYPE="FreeBSD" >>> REVISION="13.0" >>> -BRANCH="CURRENT" >>> -if [ -n "${BRANCH_OVERRIDE}" ]; then >>> - BRANCH=${BRANCH_OVERRIDE} >>> -fi >>> +BRANCH=${BRANCH_OVERRIDE:-CURRENT} >>> RELEASE="${REVISION}-${BRANCH}" >>> VERSION="${TYPE} ${RELEASE}" >>> >>> @@ -108,21 +105,16 @@ if [ -z "${SYSDIR}" ]; then >>> SYSDIR=$(dirname $0)/.. >>> fi >>> >>> -if [ -n "${PARAMFILE}" ]; then >>> - RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ >>> {print $3}' \ >>> - ${PARAMFILE}) >>> -else >>> - RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ >>> {print $3}' \ >>> - ${SYSDIR}/sys/param.h) >>> -fi >>> +RELDATE=$(awk '/__FreeBSD_version.*propagated to newvers/ {print $3}' \ >>> + ${PARAMFILE:-${SYSDIR}/sys/param.h}) >>> >>> -b=share/examples/etc/bsd-style-copyright >>> if [ -r "${SYSDIR}/../COPYRIGHT" ]; then >>> year=$(sed -Ee '/^Copyright .* The FreeBSD >>> Project/!d;s/^.*1992-([0-9]*) .*$/\1/g' ${SYSDIR}/../COPYRIGHT) >>> else >>> year=$(date +%Y) >>> fi >>> # look for copyright template >>> +b=share/examples/etc/bsd-style-copyright >>> for bsd_copyright in ../$b ../../$b ../../../$b /usr/src/$b /usr/$b >>> do >>> if [ -r "$bsd_copyright" ]; then >>> @@ -150,9 +142,7 @@ COPYRIGHT="$COPYRIGHT >>> >>> # VARS_ONLY means no files should be generated, this is just being >>> # included. >>> -if [ -n "$VARS_ONLY" ]; then >>> - return 0 >>> -fi >>> +[ -n "$VARS_ONLY" ] && return 0 >>> >>> LC_ALL=C; export LC_ALL >>> if [ ! -r version ] >>> _______________________________________________ >>> svn-src-head@freebsd.org mailing list >>> https://lists.freebsd.org/mailman/listinfo/svn-src-head >>> To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org" >>> >> From owner-svn-src-all@freebsd.org Mon Apr 8 08:35:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EA2FD15794BA; Mon, 8 Apr 2019 08:35:48 +0000 (UTC) (envelope-from crees@freebsd.org) Received: from mail37c50.megamailservers.eu (mail161c50.megamailservers.eu [91.136.10.171]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D19258E6A0; Mon, 8 Apr 2019 08:35:47 +0000 (UTC) (envelope-from crees@freebsd.org) X-Authenticated-User: bayofrum@uwclub.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu; s=maildub; t=1554712539; bh=WXF6OKlWITD5nuKjiFt640aGyRQ/M/QSxizizgrzNvM=; h=Date:From:To:CC:Subject:In-Reply-To:References:From; b=Fb0r+sB8QuGK7p81blFRcyrWZnT8tWTpb7QsejK6eTLPlxtYT15YhGnmeG39v3Fy6 DD8sGMpFVRXnHOjUfU7936DTwE0Pw/A0pe5Uuv16GVBn5Cq4Yj/mq7hkOoRey3aVb1 s9Scgmreo6hz/tLlXtk0dXzDlJk5jYF8SAMjuJTk= Feedback-ID: crees@freebsd.o Received: from pegasus.bayofrum.net (81-178-238-70.dsl.pipex.com [81.178.238.70]) (authenticated bits=0) by mail37c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id x388ZbxH026876; Mon, 8 Apr 2019 08:35:39 +0000 Received: from www.bayofrum.net (unknown [192.168.1.70]) by pegasus.bayofrum.net (Postfix) with ESMTPA id B5360144D7; Mon, 8 Apr 2019 09:28:45 +0100 (BST) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Mon, 08 Apr 2019 09:28:45 +0100 From: Chris Rees To: Oliver Pinter CC: Warner Losh , svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers , Warner Losh , owner-svn-src-all@freebsd.org Subject: Re: svn commit: r346018 - head/sys/conf In-Reply-To: References: <201904071839.x37IduPO002007@repo.freebsd.org> Message-ID: <839b79cfabfc63d0077895575f317570@FreeBSD.org> X-Sender: crees@FreeBSD.org User-Agent: Roundcube Webmail/1.3.7 X-bayofrum-MailScanner-Information: Please contact the ISP for more information X-bayofrum-MailScanner-ID: B5360144D7.A8AA5 X-bayofrum-MailScanner: Found to be clean X-bayofrum-MailScanner-From: crees@freebsd.org X-Spam-Status: No X-CTCH-RefID: str=0001.0A0B0210.5CAB07DB.007C, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-CSC: 0 X-CHA: v=2.3 cv=P4AUeBIu c=1 sm=1 tr=0 a=i0HMBnJGy7D3/NFKO8d8XA==:117 a=i0HMBnJGy7D3/NFKO8d8XA==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=kj9zAlcOel0A:10 a=oexKYjalfGEA:10 a=7Qk2ozbKAAAA:8 a=ypVJL4-jAAAA:8 a=s1G7sxBSAAAA:20 a=wW0svjmTV1EgS_fDcN4A:9 a=CjuIK1q_8ugA:10 a=1lyxoWkJIXJV6VJUPhuM:22 a=khIbc0fXALFIcTpOSxgJ:22 X-Rspamd-Queue-Id: D19258E6A0 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.98)[-0.979,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 08:35:49 -0000 On 2019-04-08 08:57, Oliver Pinter wrote: > On Monday, April 8, 2019, Warner Losh wrote: > >> >> >> On Sun, Apr 7, 2019, 3:16 PM Oliver Pinter >> >> wrote: >> >>> Please revert this patch. If I'm not wrong, this will break the >>> freebsd-version command's generation or output. >>> >> >> You are going to need to be a lot more specific about this. It makes >> no >> sense to me at all how any of this could break that. The code is >> identical >> logically and produces the same result. >> > > Now I double checked, it may work, but I remembered to this "black > magic" : > https://github.com/freebsd/freebsd/blob/master/bin/freebsd-version/Makefile > Given it will evaluate to BRANCH=${BRANCH_OVERRIDE:-CURRENT} which unless you set BRANCH_OVERRIDE, then it will still work no problem. Chris -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. From owner-svn-src-all@freebsd.org Mon Apr 8 11:53:38 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E2162157D427; Mon, 8 Apr 2019 11:53:38 +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 889086E0C0; Mon, 8 Apr 2019 11:53:38 +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 1E9B723055; Mon, 8 Apr 2019 11:53:38 +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 x38Brctm047733; Mon, 8 Apr 2019 11:53:38 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38Brb6O047732; Mon, 8 Apr 2019 11:53:37 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201904081153.x38Brb6O047732@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Mon, 8 Apr 2019 11:53:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346026 - stable/12/contrib/bsnmp/snmpd X-SVN-Group: stable-12 X-SVN-Commit-Author: ae X-SVN-Commit-Paths: stable/12/contrib/bsnmp/snmpd X-SVN-Commit-Revision: 346026 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 889086E0C0 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 11:53:39 -0000 Author: ae Date: Mon Apr 8 11:53:37 2019 New Revision: 346026 URL: https://svnweb.freebsd.org/changeset/base/346026 Log: MFC r345763: Correct a port number assignment. PR: 236930 Modified: stable/12/contrib/bsnmp/snmpd/trap.c Directory Properties: stable/12/ (props changed) Modified: stable/12/contrib/bsnmp/snmpd/trap.c ============================================================================== --- stable/12/contrib/bsnmp/snmpd/trap.c Mon Apr 8 04:54:15 2019 (r346025) +++ stable/12/contrib/bsnmp/snmpd/trap.c Mon Apr 8 11:53:37 2019 (r346026) @@ -726,8 +726,7 @@ target_activate_address(struct target_address *addrs) sa.sin_addr.s_addr = htonl((addrs->address[0] << 24) | (addrs->address[1] << 16) | (addrs->address[2] << 8) | (addrs->address[3] << 0)); - sa.sin_port = htons(addrs->address[4]) << 8 | - htons(addrs->address[5]) << 0; + sa.sin_port = htons(addrs->address[4] << 8 | addrs->address[5]); if (connect(addrs->socket, (struct sockaddr *)&sa, sa.sin_len) == -1) { syslog(LOG_ERR, "connect(%s,%u): %m", From owner-svn-src-all@freebsd.org Mon Apr 8 11:54:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2FF15157D511; Mon, 8 Apr 2019 11:54:46 +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 C39486E2B5; Mon, 8 Apr 2019 11:54:45 +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 9F88123057; Mon, 8 Apr 2019 11:54:45 +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 x38BsjHh047849; Mon, 8 Apr 2019 11:54:45 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38BsjfS047848; Mon, 8 Apr 2019 11:54:45 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201904081154.x38BsjfS047848@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Mon, 8 Apr 2019 11:54:45 +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: r346027 - stable/11/contrib/bsnmp/snmpd X-SVN-Group: stable-11 X-SVN-Commit-Author: ae X-SVN-Commit-Paths: stable/11/contrib/bsnmp/snmpd X-SVN-Commit-Revision: 346027 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C39486E2B5 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 11:54:46 -0000 Author: ae Date: Mon Apr 8 11:54:45 2019 New Revision: 346027 URL: https://svnweb.freebsd.org/changeset/base/346027 Log: MFC r345763: Correct a port number assignment. PR: 236930 Modified: stable/11/contrib/bsnmp/snmpd/trap.c Directory Properties: stable/11/ (props changed) Modified: stable/11/contrib/bsnmp/snmpd/trap.c ============================================================================== --- stable/11/contrib/bsnmp/snmpd/trap.c Mon Apr 8 11:53:37 2019 (r346026) +++ stable/11/contrib/bsnmp/snmpd/trap.c Mon Apr 8 11:54:45 2019 (r346027) @@ -724,8 +724,7 @@ target_activate_address(struct target_address *addrs) sa.sin_addr.s_addr = htonl((addrs->address[0] << 24) | (addrs->address[1] << 16) | (addrs->address[2] << 8) | (addrs->address[3] << 0)); - sa.sin_port = htons(addrs->address[4]) << 8 | - htons(addrs->address[5]) << 0; + sa.sin_port = htons(addrs->address[4] << 8 | addrs->address[5]); if (connect(addrs->socket, (struct sockaddr *)&sa, sa.sin_len) == -1) { syslog(LOG_ERR, "connect(%s,%u): %m", From owner-svn-src-all@freebsd.org Mon Apr 8 13:40:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8F6F2158059F for ; Mon, 8 Apr 2019 13:40:03 +0000 (UTC) (envelope-from shawn.webb@hardenedbsd.org) Received: from mail-qt1-x82d.google.com (mail-qt1-x82d.google.com [IPv6:2607:f8b0:4864:20::82d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2E09171F95 for ; Mon, 8 Apr 2019 13:40:03 +0000 (UTC) (envelope-from shawn.webb@hardenedbsd.org) Received: by mail-qt1-x82d.google.com with SMTP id v32so15348586qtc.10 for ; Mon, 08 Apr 2019 06:40:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hardenedbsd.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=8xWAZcpRacTQHGma9t9hBVMRLslMs1aI2E9U6RNnLXg=; b=WwY3PrzUZO82mIbxF7M6CAhP97QV4oCmYTsZZa+Db9YPw6JQA7P5ozERYdQF7oTzZj fU6CtmQ+gVjJ5Y40J++5KT0tjMeCeDJ34BeJ6Fe/mBbxp5f56smipxG1NYxKv/2ZJx9B z2lkS52XmK3tOVCZPTLcQsOALvMEXxvbbqbnQPHhonpY6G/QbfshPklXA1TTY1GOCXHi +NfaB590vLjx2QboG+ZdIbiapKkvhZJ2RfxL/5QXxyivjkIjtwXIblj2WtsmhfP3QAzU 3aPZ6Ha4NCjDEn4k8Y63wx4Rl5HlZkqUPu6Z15kUZGMfu9ZyG9jicN4DjT7ioRIyQ3NN YXQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=8xWAZcpRacTQHGma9t9hBVMRLslMs1aI2E9U6RNnLXg=; b=SlP70jgmeYjlDSdQL1YiC4MYBeQSaTEgVBVRRsSSRiHvdAJrtjySfUxttiHYbzjtAZ FLHVrTDa4Qb7p2UdyIAJ0t+gdTzx31DFYyDOu35kXFlzGBSMoBQk94b0Lp1t3UIAaQUN S5FuLMqc9CZ9NQvmubUhk+u8X07nW+gBTTDomnA+qXTb/6IyEPKT9XFj7/wMGZUGT6K+ 4SaQhmUtFnO4KKgEj0QSBzHrkLQdy54Q8OamilN9hFNnpsbOBbn++1Zg+cZQVT0sUooT /K3Mjvkyz4g8y4SGWNve11ShGdCUfAQl9ztSZqYD+03ZXXJSn0JmfVJqa8jnlvdw2eq3 pYOw== X-Gm-Message-State: APjAAAUTRKNojgrseJCsBsqzXgEh5qMKiXW3nab+f+GSDqCDxjBNXawt iNjDBRjCSoiO+lOnSqUnVjxBhg== X-Google-Smtp-Source: APXvYqzCGZ7EhTrx1WW/ppak5Zyjt3MafbkazWfsqLYF9g1s+hsPe8zQVhvFoqOOtfLk0Lkj4ns3ug== X-Received: by 2002:ac8:2aa7:: with SMTP id b36mr24484882qta.187.1554730802436; Mon, 08 Apr 2019 06:40:02 -0700 (PDT) Received: from mutt-hbsd ([63.88.83.108]) by smtp.gmail.com with ESMTPSA id o64sm11631748qkd.12.2019.04.08.06.40.01 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 08 Apr 2019 06:40:01 -0700 (PDT) Date: Mon, 8 Apr 2019 09:39:09 -0400 From: Shawn Webb To: Mariusz Zaborski Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346023 - head/usr.bin/strings Message-ID: <20190408133909.3fu7aknjoospyqfz@mutt-hbsd> References: <201904080335.x383ZmuS086093@repo.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="7477msuys5evyyx2" Content-Disposition: inline In-Reply-To: <201904080335.x383ZmuS086093@repo.freebsd.org> X-Operating-System: FreeBSD mutt-hbsd 13.0-CURRENT-HBSD FreeBSD 13.0-CURRENT-HBSD r345948+db88569731b7(hardened/current/master) HARDENEDBSD-13-CURRENT amd64 X-PGP-Key: http://pgp.mit.edu/pks/lookup?op=vindex&search=0xFF2E67A277F8E1FA User-Agent: NeoMutt/20180716 X-Rspamd-Queue-Id: 2E09171F95 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 13:40:03 -0000 --7477msuys5evyyx2 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Apr 08, 2019 at 03:35:48AM +0000, Mariusz Zaborski wrote: > Author: oshogbo > Date: Mon Apr 8 03:35:47 2019 > New Revision: 346023 > URL: https://svnweb.freebsd.org/changeset/base/346023 >=20 > Log: > strings: disable Casper support while building native-xtools Why? --=20 Shawn Webb Cofounder / Security Engineer HardenedBSD Tor-ified Signal: +1 443-546-8752 Tor+XMPP+OTR: lattera@is.a.hacker.sx GPG Key ID: 0x6A84658F52456EEE GPG Key Fingerprint: D206 BB45 15E0 9C49 0CF9 3633 C85B 0AF8 AB23 0FB2 --7477msuys5evyyx2 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEA6TL67gupaZ9nzhT/y5nonf44foFAlyrTvcACgkQ/y5nonf4 4fpKqQ/+Mbn+h29IMEXXMMU3lmnmnaSLx8WeKK30Y9UcTPlQu5kn3al7LKup4EB8 +VG1z+4ksmB8iMc1P9leLGwvUOdHdfHis0t1tHSQt9j7cGEnP+FigAQd+ELj7Xsy dxftMrDcHMi+vF2KNfOjK+8TRIsHav5OLVA/X/3dQDQdn2tuFyKvzSWIlVeKlsN8 PRT+9H2+y8IGDHxVJYWWPZd1IKqEQeAHWj5G/cLwgsKooZQtbdDCjItNGUJOu0Ln ywgQvmS9IxYD5yB/LkQVa575VF7uLBTmrsVE/8Eulma3ooOaPF2rzMuWr31uDzlw s8U/ZbxntZqMZLbTdO6okPszQ31pAPQNhDWcdB0taS4w/wID0EWVedZCJYA8Q7zA MML4Rou5xWTPwPs15Vt07qaTxCtMY/QQShXKBjLPlWLVT699zzqiR/rZi4N6pZmH Gp+U+GULyJnLlaEEozTCmjqyfjoa7hGqw2n6621yjUV9FUIqkNPTvS6/dy2rWiX7 nLBrS1FalwPE908vIBXgadXNTNT0zJGEgIlZtMddUVay4CT8dSkG5KHtoQu7qoLF lvhtcCuRmPvxBvurhUIZlPTM8pfHLpnPSIsXhQxWY9dsVI36wWJ+7VbYDS3Ci/di ZfTFDSGhqhfbUHfUEiU7GvxZ4laTLaziTZv9OjniikfnqXqd5dY= =NHDw -----END PGP SIGNATURE----- --7477msuys5evyyx2-- From owner-svn-src-all@freebsd.org Mon Apr 8 13:40:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3C092158060A; Mon, 8 Apr 2019 13:40:47 +0000 (UTC) (envelope-from ganbold@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 D3E2972108; Mon, 8 Apr 2019 13:40:46 +0000 (UTC) (envelope-from ganbold@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 AF71024136; Mon, 8 Apr 2019 13:40:46 +0000 (UTC) (envelope-from ganbold@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x38DekcB000711; Mon, 8 Apr 2019 13:40:46 GMT (envelope-from ganbold@FreeBSD.org) Received: (from ganbold@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38Dek7M000710; Mon, 8 Apr 2019 13:40:46 GMT (envelope-from ganbold@FreeBSD.org) Message-Id: <201904081340.x38Dek7M000710@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ganbold set sender to ganbold@FreeBSD.org using -f From: Ganbold Tsagaankhuu Date: Mon, 8 Apr 2019 13:40:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346028 - head/sys/dev/usb/net X-SVN-Group: head X-SVN-Commit-Author: ganbold X-SVN-Commit-Paths: head/sys/dev/usb/net X-SVN-Commit-Revision: 346028 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D3E2972108 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.946,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 13:40:47 -0000 Author: ganbold Date: Mon Apr 8 13:40:46 2019 New Revision: 346028 URL: https://svnweb.freebsd.org/changeset/base/346028 Log: Fix URE_WDT6_SET_MODE value in the register definition. Both linux and u-boot sources for RTL8152 driver has this value. RTL8152 USB ethernet is used in NanoPI R1 board as second ethernet. This fixes for me RTL8152 USB ethernet not detected problem after reboot on NanoPI R1 board. Both NetBSD and OpenBSD have a wrong value so far. Modified: head/sys/dev/usb/net/if_urereg.h Modified: head/sys/dev/usb/net/if_urereg.h ============================================================================== --- head/sys/dev/usb/net/if_urereg.h Mon Apr 8 11:54:45 2019 (r346027) +++ head/sys/dev/usb/net/if_urereg.h Mon Apr 8 13:40:46 2019 (r346028) @@ -176,7 +176,7 @@ #define URE_EEEP_CR_EEEP_TX 0x0002 /* PLA_WDT6_CTRL */ -#define URE_WDT6_SET_MODE 0x001 +#define URE_WDT6_SET_MODE 0x0010 /* PLA_TCR0 */ #define URE_TCR0_TX_EMPTY 0x0800 From owner-svn-src-all@freebsd.org Mon Apr 8 14:23:53 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C42AE1580F56; Mon, 8 Apr 2019 14:23:53 +0000 (UTC) (envelope-from oshogbo@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 669AE732DB; Mon, 8 Apr 2019 14:23:53 +0000 (UTC) (envelope-from oshogbo@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 3AC3624978; Mon, 8 Apr 2019 14:23:53 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x38ENrEo026140; Mon, 8 Apr 2019 14:23:53 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38ENrhe026139; Mon, 8 Apr 2019 14:23:53 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201904081423.x38ENrhe026139@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Mon, 8 Apr 2019 14:23:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346029 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 346029 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 669AE732DB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.946,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 14:23:53 -0000 Author: oshogbo Date: Mon Apr 8 14:23:52 2019 New Revision: 346029 URL: https://svnweb.freebsd.org/changeset/base/346029 Log: In the unlinkat syscall, the operation is performed on the directory descriptor, not the file descriptor. The file descriptor is used only for verification so do not expect any additional capabilities on it. Reported by: antoine Tested by: antoine Discussed with: kib, emaste, bapt Sponsored by: Fudo Security Modified: head/sys/kern/vfs_syscalls.c Modified: head/sys/kern/vfs_syscalls.c ============================================================================== --- head/sys/kern/vfs_syscalls.c Mon Apr 8 13:40:46 2019 (r346028) +++ head/sys/kern/vfs_syscalls.c Mon Apr 8 14:23:52 2019 (r346029) @@ -1809,13 +1809,11 @@ kern_funlinkat(struct thread *td, int dfd, const char struct vnode *vp; struct nameidata nd; struct stat sb; - cap_rights_t rights; int error; fp = NULL; if (fd != FD_NONE) { - error = getvnode(td, fd, cap_rights_init(&rights, CAP_LOOKUP), - &fp); + error = getvnode(td, fd, &cap_no_rights, &fp); if (error != 0) return (error); } From owner-svn-src-all@freebsd.org Mon Apr 8 14:27:23 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 497901581057 for ; Mon, 8 Apr 2019 14:27:23 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qt1-x830.google.com (mail-qt1-x830.google.com [IPv6:2607:f8b0:4864:20::830]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A5DAF734BF for ; Mon, 8 Apr 2019 14:27:22 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qt1-x830.google.com with SMTP id v20so15557492qtv.12 for ; Mon, 08 Apr 2019 07:27:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=iY2Dw+Hy7+xwMmaZWbydHw/SSV7seMW+eXIRCOkx+WY=; b=jOlAD3Ltruf+PVzRFkmj25E4cnJ2GSQ7hnRiZmKk3DYM2ibD87XWam0EcQqi0Garmg Ohnrnu9kpJ3rQkO2jk9LiJT8pPL2Otkpq1PPnaNXrE0KHrADrFMYZq5Rr+ZA6E2TpeUh CjrRzeTB/6BjM64BM5yTKx9ZZcwBfXN6RYCcUblMsRhDiCMCM/WhntdiYrwhdgaypLdV REvPyzAwalnBafsfmvXJQ9Iw6KBusI8QAFlvl/zQPijt8QVDGFhCfbm4QPgEsHbsMyXC hduIAeS2zv4SgyGqw9nXEHopZu41wurqFzE/2NOdQDeGMXMhyc3Et2CqCvvbtZBT5d1y tpOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=iY2Dw+Hy7+xwMmaZWbydHw/SSV7seMW+eXIRCOkx+WY=; b=dGxsvXK/scz0LJCGNThxzzWWEXAd7eNuaUwPNHiFROqF6BlwG1/XlsOijzntK96wrA SDJPKGagQxy8M55nQkc7eYCgiksA/pzAWzpNSZG1pZKMoF2oOcbozJGOaI12SUbzR9A3 hdAuwzva49+Rl8hDUTRm0NVUGGVPL5mXQqFXsE3e9rvxQdYQwrb4CFmvrONCendKzrF6 EEZv497nHFbh4ei+Fj+W4sTef/2GhFnL3x+0ywTjJSQzl4ysZJMh998C4a6uJFPMrgnK xzKM2mfP+oO8pkfkjXTojUqadZrzJz7c86npWj9FM8AqGZMGjBZZo8TalCDHjcBvozCC +t1A== X-Gm-Message-State: APjAAAXsOnHIpoyFLtd5+le/kzIc9LYCJyPPbnFpy0int7h/fgNlpRP8 LqujOhm36pZwD/8550xJfh/PCovl6xe53qZztl1Ixw== X-Google-Smtp-Source: APXvYqzfuMa5wYTYvZLY2e56xINxp8Svcd6WUo5l/HKWeAABFT9m5dZCt6C+lYqjqzNczlAIFqVrf62/t5dqX/gWrOI= X-Received: by 2002:a0c:9922:: with SMTP id h31mr23257917qvd.137.1554733641731; Mon, 08 Apr 2019 07:27:21 -0700 (PDT) MIME-Version: 1.0 References: <201904071839.x37IduPO002007@repo.freebsd.org> <839b79cfabfc63d0077895575f317570@FreeBSD.org> In-Reply-To: <839b79cfabfc63d0077895575f317570@FreeBSD.org> From: Warner Losh Date: Mon, 8 Apr 2019 08:27:09 -0600 Message-ID: Subject: Re: svn commit: r346018 - head/sys/conf To: Chris Rees Cc: Oliver Pinter , svn-src-head , svn-src-all@freebsd.org, src-committers , Warner Losh , owner-svn-src-all@freebsd.org X-Rspamd-Queue-Id: A5DAF734BF X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.92 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.92)[-0.919,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 14:27:23 -0000 On Mon, Apr 8, 2019, 2:35 AM Chris Rees wrote: > On 2019-04-08 08:57, Oliver Pinter wrote: > > On Monday, April 8, 2019, Warner Losh wrote: > > > >> > >> > >> On Sun, Apr 7, 2019, 3:16 PM Oliver Pinter > >> > >> wrote: > >> > >>> Please revert this patch. If I'm not wrong, this will break the > >>> freebsd-version command's generation or output. > >>> > >> > >> You are going to need to be a lot more specific about this. It makes > >> no > >> sense to me at all how any of this could break that. The code is > >> identical > >> logically and produces the same result. > >> > > > > Now I double checked, it may work, but I remembered to this "black > > magic" : > > > https://github.com/freebsd/freebsd/blob/master/bin/freebsd-version/Makefile > > > > Given it will evaluate to > > BRANCH=${BRANCH_OVERRIDE:-CURRENT} > > which unless you set BRANCH_OVERRIDE, then it will still work no > problem. > And if you set that, it will still work. :) However, this should be converted to VARS_ONLY. I'll do that. I've already done and, so will now grep the whole tree for similar constructs. Warner Chris > > -- > This message has been scanned for viruses and > dangerous content by MailScanner, and is > believed to be clean. > > From owner-svn-src-all@freebsd.org Mon Apr 8 14:31:09 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B6F5B1581198; Mon, 8 Apr 2019 14:31:08 +0000 (UTC) (envelope-from trasz@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 5873F73713; Mon, 8 Apr 2019 14:31:08 +0000 (UTC) (envelope-from trasz@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 3365C249AA; Mon, 8 Apr 2019 14:31:08 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x38EV8sZ027222; Mon, 8 Apr 2019 14:31:08 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38EV8Mj027221; Mon, 8 Apr 2019 14:31:08 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201904081431.x38EV8Mj027221@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Mon, 8 Apr 2019 14:31:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346030 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 346030 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5873F73713 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.949,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 14:31:09 -0000 Author: trasz Date: Mon Apr 8 14:31:07 2019 New Revision: 346030 URL: https://svnweb.freebsd.org/changeset/base/346030 Log: Refactor ELF interpreter loading into a separate function. Reviewed by: kib MFC after: 2 weeks Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D19741 Modified: head/sys/kern/imgact_elf.c Modified: head/sys/kern/imgact_elf.c ============================================================================== --- head/sys/kern/imgact_elf.c Mon Apr 8 14:23:52 2019 (r346029) +++ head/sys/kern/imgact_elf.c Mon Apr 8 14:31:07 2019 (r346030) @@ -945,6 +945,41 @@ __elfN(get_interp)(struct image_params *imgp, const El return (0); } +static int +__elfN(load_interp)(struct image_params *imgp, const Elf_Brandinfo *brand_info, + const char *interp, u_long *addr, u_long *entry) +{ + char *path; + int error; + + if (brand_info->emul_path != NULL && + brand_info->emul_path[0] != '\0') { + path = malloc(MAXPATHLEN, M_TEMP, M_WAITOK); + snprintf(path, MAXPATHLEN, "%s%s", + brand_info->emul_path, interp); + error = __elfN(load_file)(imgp->proc, path, addr, entry); + free(path, M_TEMP); + if (error == 0) + return (0); + } + + if (brand_info->interp_newpath != NULL && + (brand_info->interp_path == NULL || + strcmp(interp, brand_info->interp_path) == 0)) { + error = __elfN(load_file)(imgp->proc, + brand_info->interp_newpath, addr, entry); + if (error == 0) + return (0); + } + + error = __elfN(load_file)(imgp->proc, interp, addr, entry); + if (error == 0) + return (0); + + uprintf("ELF interpreter %s not found, error %d\n", interp, error); + return (error); +} + /* * Impossible et_dyn_addr initial value indicating that the real base * must be calculated later with some randomization applied. @@ -960,8 +995,7 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i Elf_Auxargs *elf_auxargs; struct vmspace *vmspace; vm_map_t map; - const char *newinterp; - char *interp, *path; + char *interp; Elf_Brandinfo *brand_info; struct sysentvec *sv; vm_prot_t prot; @@ -970,7 +1004,7 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i uint32_t fctl0; int32_t osrel; bool free_interp; - int error, i, n, have_interp; + int error, i, n; hdr = (const Elf_Ehdr *)imgp->image_header; @@ -1006,7 +1040,7 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i osrel = 0; fctl0 = 0; entry = proghdr = 0; - newinterp = interp = NULL; + interp = NULL; free_interp = false; td = curthread; maxalign = PAGE_SIZE; @@ -1074,8 +1108,6 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i et_dyn_addr = ET_DYN_LOAD_ADDR; } } - if (interp != NULL && brand_info->interp_newpath != NULL) - newinterp = brand_info->interp_newpath; /* * Avoid a possible deadlock if the current address space is destroyed @@ -1200,7 +1232,6 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i imgp->entry_addr = entry; if (interp != NULL) { - have_interp = FALSE; VOP_UNLOCK(imgp->vp, 0); if ((map->flags & MAP_ASLR) != 0) { /* Assume that interpeter fits into 1/4 of AS */ @@ -1209,35 +1240,11 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i addr = __CONCAT(rnd_, __elfN(base))(map, addr, maxv1, PAGE_SIZE); } - if (brand_info->emul_path != NULL && - brand_info->emul_path[0] != '\0') { - path = malloc(MAXPATHLEN, M_TEMP, M_WAITOK); - snprintf(path, MAXPATHLEN, "%s%s", - brand_info->emul_path, interp); - error = __elfN(load_file)(imgp->proc, path, &addr, - &imgp->entry_addr); - free(path, M_TEMP); - if (error == 0) - have_interp = TRUE; - } - if (!have_interp && newinterp != NULL && - (brand_info->interp_path == NULL || - strcmp(interp, brand_info->interp_path) == 0)) { - error = __elfN(load_file)(imgp->proc, newinterp, &addr, - &imgp->entry_addr); - if (error == 0) - have_interp = TRUE; - } - if (!have_interp) { - error = __elfN(load_file)(imgp->proc, interp, &addr, - &imgp->entry_addr); - } + error = __elfN(load_interp)(imgp, brand_info, interp, &addr, + &imgp->entry_addr); vn_lock(imgp->vp, LK_EXCLUSIVE | LK_RETRY); - if (error != 0) { - uprintf("ELF interpreter %s not found, error %d\n", - interp, error); + if (error != 0) goto ret; - } } else addr = et_dyn_addr; From owner-svn-src-all@freebsd.org Mon Apr 8 15:20:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BB0911531810; Mon, 8 Apr 2019 15:20:06 +0000 (UTC) (envelope-from kib@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 61DBE75947; Mon, 8 Apr 2019 15:20:06 +0000 (UTC) (envelope-from kib@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 3FA4A251FD; Mon, 8 Apr 2019 15:20:06 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x38FK6aY052743; Mon, 8 Apr 2019 15:20:06 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38FK6UA052742; Mon, 8 Apr 2019 15:20:06 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904081520.x38FK6UA052742@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Mon, 8 Apr 2019 15:20:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346031 - head/sys/ufs/ffs X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/ufs/ffs X-SVN-Commit-Revision: 346031 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 61DBE75947 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 15:20:07 -0000 Author: kib Date: Mon Apr 8 15:20:05 2019 New Revision: 346031 URL: https://svnweb.freebsd.org/changeset/base/346031 Log: Handle races when remounting UFS volume from ro to rw. In particular, ensure that writers are not unleashed before SU structures are initialized. Also, correctly handle MNT_ASYNC before this. Reported and tested by: pho Reviewed by: mckusick Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/ufs/ffs/ffs_vfsops.c Modified: head/sys/ufs/ffs/ffs_vfsops.c ============================================================================== --- head/sys/ufs/ffs/ffs_vfsops.c Mon Apr 8 14:31:07 2019 (r346030) +++ head/sys/ufs/ffs/ffs_vfsops.c Mon Apr 8 15:20:05 2019 (r346031) @@ -154,7 +154,7 @@ ffs_mount(struct mount *mp) struct fs *fs; pid_t fsckpid = 0; int error, error1, flags; - uint64_t mntorflags; + uint64_t mntorflags, saved_mnt_flag; accmode_t accmode; struct nameidata ndp; char *fspec; @@ -371,25 +371,40 @@ ffs_mount(struct mount *mp) return (error); if ((error = vn_start_write(NULL, &mp, V_WAIT)) != 0) return (error); + error = vfs_write_suspend_umnt(mp); + if (error != 0) + return (error); fs->fs_ronly = 0; MNT_ILOCK(mp); - mp->mnt_flag &= ~MNT_RDONLY; + saved_mnt_flag = MNT_RDONLY; + if (MOUNTEDSOFTDEP(mp) && (mp->mnt_flag & + MNT_ASYNC) != 0) + saved_mnt_flag |= MNT_ASYNC; + mp->mnt_flag &= ~saved_mnt_flag; MNT_IUNLOCK(mp); fs->fs_mtime = time_second; /* check to see if we need to start softdep */ if ((fs->fs_flags & FS_DOSOFTDEP) && (error = softdep_mount(devvp, mp, fs, td->td_ucred))){ - vn_finished_write(mp); + fs->fs_ronly = 1; + MNT_ILOCK(mp); + mp->mnt_flag |= saved_mnt_flag; + MNT_IUNLOCK(mp); + vfs_write_resume(mp, 0); return (error); } fs->fs_clean = 0; if ((error = ffs_sbupdate(ump, MNT_WAIT, 0)) != 0) { - vn_finished_write(mp); + fs->fs_ronly = 1; + MNT_ILOCK(mp); + mp->mnt_flag |= saved_mnt_flag; + MNT_IUNLOCK(mp); + vfs_write_resume(mp, 0); return (error); } if (fs->fs_snapinum[0] != 0) ffs_snapshot_mount(mp); - vn_finished_write(mp); + vfs_write_resume(mp, 0); } /* * Soft updates is incompatible with "async", From owner-svn-src-all@freebsd.org Mon Apr 8 15:52:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 21DF91551B44; Mon, 8 Apr 2019 15:52:15 +0000 (UTC) (envelope-from sjg@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 B78C776FD1; Mon, 8 Apr 2019 15:52:14 +0000 (UTC) (envelope-from sjg@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 8C60A258AF; Mon, 8 Apr 2019 15:52:14 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x38FqELY069892; Mon, 8 Apr 2019 15:52:14 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38FqDhN069887; Mon, 8 Apr 2019 15:52:13 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201904081552.x38FqDhN069887@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Mon, 8 Apr 2019 15:52: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: r346032 - in stable/11/sys: cddl/contrib/opensolaris/uts/common/fs/zfs fs/nandfs fs/nfsclient kern ufs/ufs X-SVN-Group: stable-11 X-SVN-Commit-Author: sjg X-SVN-Commit-Paths: in stable/11/sys: cddl/contrib/opensolaris/uts/common/fs/zfs fs/nandfs fs/nfsclient kern ufs/ufs X-SVN-Commit-Revision: 346032 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B78C776FD1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.967,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 15:52:15 -0000 Author: sjg Date: Mon Apr 8 15:52:13 2019 New Revision: 346032 URL: https://svnweb.freebsd.org/changeset/base/346032 Log: Add _PC_ACL_* to vop_stdpathconf This avoid EINVAL from tmpfs etc. Merge of r345024 Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D19512 Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c stable/11/sys/fs/nandfs/nandfs_vnops.c stable/11/sys/fs/nfsclient/nfs_clvnops.c stable/11/sys/kern/vfs_default.c stable/11/sys/ufs/ufs/ufs_vnops.c Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c Mon Apr 8 15:20:05 2019 (r346031) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c Mon Apr 8 15:52:13 2019 (r346032) @@ -755,10 +755,6 @@ zfsctl_common_pathconf(ap) *ap->a_retval = (int)SPA_MINBLOCKSIZE; return (0); - case _PC_ACL_EXTENDED: - *ap->a_retval = 0; - return (0); - case _PC_ACL_NFS4: *ap->a_retval = 1; return (0); Modified: stable/11/sys/fs/nandfs/nandfs_vnops.c ============================================================================== --- stable/11/sys/fs/nandfs/nandfs_vnops.c Mon Apr 8 15:20:05 2019 (r346031) +++ stable/11/sys/fs/nandfs/nandfs_vnops.c Mon Apr 8 15:52:13 2019 (r346032) @@ -2255,9 +2255,6 @@ nandfs_pathconf(struct vop_pathconf_args *ap) case _PC_NO_TRUNC: *ap->a_retval = 1; break; - case _PC_ACL_EXTENDED: - *ap->a_retval = 0; - break; case _PC_ALLOC_SIZE_MIN: *ap->a_retval = ap->a_vp->v_mount->mnt_stat.f_bsize; break; Modified: stable/11/sys/fs/nfsclient/nfs_clvnops.c ============================================================================== --- stable/11/sys/fs/nfsclient/nfs_clvnops.c Mon Apr 8 15:20:05 2019 (r346031) +++ stable/11/sys/fs/nfsclient/nfs_clvnops.c Mon Apr 8 15:52:13 2019 (r346032) @@ -3481,9 +3481,6 @@ nfs_pathconf(struct vop_pathconf_args *ap) case _PC_NO_TRUNC: *ap->a_retval = pc.pc_notrunc; break; - case _PC_ACL_EXTENDED: - *ap->a_retval = 0; - break; case _PC_ACL_NFS4: if (NFS_ISV4(vp) && nfsrv_useacl != 0 && attrflag != 0 && NFSISSET_ATTRBIT(&nfsva.na_suppattr, NFSATTRBIT_ACL)) @@ -3496,9 +3493,6 @@ nfs_pathconf(struct vop_pathconf_args *ap) *ap->a_retval = ACL_MAX_ENTRIES; else *ap->a_retval = 3; - break; - case _PC_MAC_PRESENT: - *ap->a_retval = 0; break; case _PC_PRIO_IO: *ap->a_retval = 0; Modified: stable/11/sys/kern/vfs_default.c ============================================================================== --- stable/11/sys/kern/vfs_default.c Mon Apr 8 15:20:05 2019 (r346031) +++ stable/11/sys/kern/vfs_default.c Mon Apr 8 15:52:13 2019 (r346032) @@ -480,6 +480,13 @@ vop_stdpathconf(ap) case _PC_PATH_MAX: *ap->a_retval = PATH_MAX; return (0); + case _PC_ACL_EXTENDED: + case _PC_ACL_NFS4: + case _PC_CAP_PRESENT: + case _PC_INF_PRESENT: + case _PC_MAC_PRESENT: + *ap->a_retval = 0; + return (0); default: return (EINVAL); } Modified: stable/11/sys/ufs/ufs/ufs_vnops.c ============================================================================== --- stable/11/sys/ufs/ufs/ufs_vnops.c Mon Apr 8 15:20:05 2019 (r346031) +++ stable/11/sys/ufs/ufs/ufs_vnops.c Mon Apr 8 15:52:13 2019 (r346032) @@ -2415,28 +2415,20 @@ ufs_pathconf(ap) case _PC_NO_TRUNC: *ap->a_retval = 1; break; - case _PC_ACL_EXTENDED: #ifdef UFS_ACL + case _PC_ACL_EXTENDED: if (ap->a_vp->v_mount->mnt_flag & MNT_ACLS) *ap->a_retval = 1; else *ap->a_retval = 0; -#else - *ap->a_retval = 0; -#endif break; - case _PC_ACL_NFS4: -#ifdef UFS_ACL if (ap->a_vp->v_mount->mnt_flag & MNT_NFS4ACLS) *ap->a_retval = 1; else *ap->a_retval = 0; -#else - *ap->a_retval = 0; -#endif break; - +#endif case _PC_ACL_PATH_MAX: #ifdef UFS_ACL if (ap->a_vp->v_mount->mnt_flag & (MNT_ACLS | MNT_NFS4ACLS)) @@ -2447,16 +2439,14 @@ ufs_pathconf(ap) *ap->a_retval = 3; #endif break; - case _PC_MAC_PRESENT: #ifdef MAC + case _PC_MAC_PRESENT: if (ap->a_vp->v_mount->mnt_flag & MNT_MULTILABEL) *ap->a_retval = 1; else *ap->a_retval = 0; -#else - *ap->a_retval = 0; -#endif break; +#endif case _PC_MIN_HOLE_SIZE: *ap->a_retval = ap->a_vp->v_mount->mnt_stat.f_iosize; break; From owner-svn-src-all@freebsd.org Mon Apr 8 17:36:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E31B21562DA1; Mon, 8 Apr 2019 17:36:25 +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 8397082FF3; Mon, 8 Apr 2019 17:36:25 +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 BF616269E6; Mon, 8 Apr 2019 17:36:24 +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 x38HaOq6027099; Mon, 8 Apr 2019 17:36:24 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38HaORe027098; Mon, 8 Apr 2019 17:36:24 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081736.x38HaORe027098@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 17:36:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346033 - stable/12/lib/libbe X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: stable/12/lib/libbe X-SVN-Commit-Revision: 346033 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8397082FF3 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 17:36:26 -0000 Author: kevans Date: Mon Apr 8 17:36:24 2019 New Revision: 346033 URL: https://svnweb.freebsd.org/changeset/base/346033 Log: MFC r345848: libbe(3): Add a serial to the generated snapshot names To use bectl in an example, when one creates a new boot environment with either `bectl create ` or `bectl create -e `, libbe will take a snapshot of the original boot environment to clone. Previously, this used %F-%T date format as the snapshot name, but this has some limitations- attempting to create multiple boot environments in quick succession may collide if done within the same second. Tack a serial onto it to reduce the chances of a collision... we could still collide if multiple processes/threads are creating boot environments at the same time, but this is likely not a big concern as this has only been reported as occurring in freebsd-ci setup. Modified: stable/12/lib/libbe/be.c Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libbe/be.c ============================================================================== --- stable/12/lib/libbe/be.c Mon Apr 8 15:52:13 2019 (r346032) +++ stable/12/lib/libbe/be.c Mon Apr 8 17:36:24 2019 (r346033) @@ -51,6 +51,9 @@ static int be_create_child_noent(libbe_handle_t *lbh, static int be_create_child_cloned(libbe_handle_t *lbh, const char *active); #endif +/* Arbitrary... should tune */ +#define BE_SNAP_SERIAL_MAX 1024 + /* * Iterator function for locating the rootfs amongst the children of the * zfs_be_root set by loader(8). data is expected to be a libbe_handle_t *. @@ -252,13 +255,32 @@ be_destroy(libbe_handle_t *lbh, const char *name, int } +static void +be_setup_snapshot_name(libbe_handle_t *lbh, char *buf, size_t buflen) +{ + time_t rawtime; + int len, serial; + + time(&rawtime); + len = strlen(buf); + len += strftime(buf + len, buflen - len, "@%F-%T", localtime(&rawtime)); + /* No room for serial... caller will do its best */ + if (buflen - len < 2) + return; + + for (serial = 0; serial < BE_SNAP_SERIAL_MAX; ++serial) { + snprintf(buf + len, buflen - len, "-%d", serial); + if (!zfs_dataset_exists(lbh->lzh, buf, ZFS_TYPE_SNAPSHOT)) + return; + } +} + int be_snapshot(libbe_handle_t *lbh, const char *source, const char *snap_name, bool recursive, char *result) { char buf[BE_MAXPATHLEN]; - time_t rawtime; - int len, err; + int err; be_root_concat(lbh, source, buf); @@ -276,10 +298,8 @@ be_snapshot(libbe_handle_t *lbh, const char *source, c snprintf(result, BE_MAXPATHLEN, "%s@%s", source, snap_name); } else { - time(&rawtime); - len = strlen(buf); - strftime(buf + len, sizeof(buf) - len, - "@%F-%T", localtime(&rawtime)); + be_setup_snapshot_name(lbh, buf, sizeof(buf)); + if (result != NULL && strlcpy(result, strrchr(buf, '/') + 1, sizeof(buf)) >= sizeof(buf)) return (set_error(lbh, BE_ERR_INVALIDNAME)); From owner-svn-src-all@freebsd.org Mon Apr 8 17:41:41 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 64B3E1562EEA; Mon, 8 Apr 2019 17:41:41 +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 13A6783261; Mon, 8 Apr 2019 17:41:41 +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 CA5EA26B5B; Mon, 8 Apr 2019 17:41:40 +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 x38Hfei6029043; Mon, 8 Apr 2019 17:41:40 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38HfdTE029036; Mon, 8 Apr 2019 17:41:39 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081741.x38HfdTE029036@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 17:41:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346034 - in stable/12: lib/libbe sbin/bectl sbin/bectl/tests X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable/12: lib/libbe sbin/bectl sbin/bectl/tests X-SVN-Commit-Revision: 346034 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 13A6783261 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.979,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 17:41:41 -0000 Author: kevans Date: Mon Apr 8 17:41:39 2019 New Revision: 346034 URL: https://svnweb.freebsd.org/changeset/base/346034 Log: MFC r343335, r343977, r343993-r343994, r344034, r344084, r345302, r345769 r343335: libbe(3): simplify import, allow replication streams Previously, we directly used libzfs_core's lzc_receive to import to a temporary snapshot, then cloned the snapshot and setup the properties. This failed when attempting to import replication streams with questionable error. libzfs's zfs_receive is a much better fit here, so we now use it instead with the destination dataset and let libzfs take care of the dirty details. be_import is greatly simplified as a result. r343977: libbe(3): Add a destroy option for removing the origin Currently origin snapshots are left behind when a BE is destroyed, whether it was an auto-created snapshot or explicitly specified via, for example, `bectl create -e be@mysnap ...`. Removing it automatically could be argued as a POLA violation in some circumstances, so provide a flag to be_destroy for it. An accompanying option will be added to bectl(8) to utilize this. Some minor style/consistency nits in the affected areas also addressed. r343993: bectl(8): Add -o flag to destroy to clean up the origin snapshot of BE We can't predict when destruction of origin is needed, and currently we have a precedent for not prompting for things. Leave the decision up to the user of bectl(8) if they want the origin snapshot to be destroyed or not. Emits a warning when -o isn't used and an origin snapshot is left to be cleaned up, for the time being. This is handy when one drops the -o flag but really did want to clean up the origin. A couple of -e ignore's have been sprinkled around the test suite for places that we don't care that the origin's not been cleaned up. -o functionality tests will be added in the future, but are omitted for now to reduce conflicts with work in flight to fix bits of the tests. r343994: bectl(8): commit missing test modifications from r343993 r344034: libbe(3): Belatedly note the BE_DESTROY_ORIGIN option added in r343977 r344084: libbe(3): Fix be_destroy behavior w.r.t. deep BE snapshots and -o be_destroy is documented to recursively destroy a boot environment. In the case of snapshots, one would take this to mean that these are also recursively destroyed. However, this was previously not the case. be_destroy would descend into the be_destroy callback and attempt to zfs_iter_children on the top-level snapshot, which is bogus. Our alternative approach is to take note of the snapshot name and iterate through all of fs children of the BE to try destruction in the children. The -o option is also fixed to work properly with deep BEs. If the BE was created with `bectl create -e otherDeepBE newDeepBE`, for instance, then a recursive snapshot of otherDeepBE would have been taken for construction of newDeepBE but a subsequent destroy with BE_DESTROY_ORIGIN set would only clean up the snapshot at the root of otherDeepBE: ${BEROOT}/otherDeepBE@... The most recent iteration instead pretends not to know how these things work, verifies that the origin is another BE and then passes that back through be_destroy to DTRT when snapshots and deep BEs may be in play. r345302: bectl(8): change jail command to execute jail(8) The jail(8) command provides a variety of jail pseudo-parameters that are useful to consumers of bectl, mount.devfs being the most-often-requested paramater by bectl users. command, exec.start, nopersist, and persist may not be specified via -o to bectl. The command/exec.start remains passed as it always has at the end of bectl, and persistence is dictated by -b/-U bectl jail arguments. r345769: libbe: Fix zfs_is_mounted check w/ snapshots 'be_destroy' can destroy a boot environment (by name) or a given snapshot. If the target to be destroyed is a dataset, check if it's mounted. We don't want to check if the origin dataset is mounted when destroying a snapshot. PR: 236043 Modified: stable/12/lib/libbe/be.c stable/12/lib/libbe/be.h stable/12/lib/libbe/be_error.c stable/12/lib/libbe/libbe.3 stable/12/sbin/bectl/bectl.8 stable/12/sbin/bectl/bectl.c stable/12/sbin/bectl/bectl_jail.c stable/12/sbin/bectl/tests/bectl_test.sh Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libbe/be.c ============================================================================== --- stable/12/lib/libbe/be.c Mon Apr 8 17:36:24 2019 (r346033) +++ stable/12/lib/libbe/be.c Mon Apr 8 17:41:39 2019 (r346034) @@ -45,6 +45,11 @@ __FBSDID("$FreeBSD$"); #include "be.h" #include "be_impl.h" +struct be_destroy_data { + libbe_handle_t *lbh; + char *snapname; +}; + #if SOON static int be_create_child_noent(libbe_handle_t *lbh, const char *active, const char *child_path); @@ -189,12 +194,38 @@ be_nicenum(uint64_t num, char *buf, size_t buflen) static int be_destroy_cb(zfs_handle_t *zfs_hdl, void *data) { + char path[BE_MAXPATHLEN]; + struct be_destroy_data *bdd; + zfs_handle_t *snap; int err; - if ((err = zfs_iter_children(zfs_hdl, be_destroy_cb, data)) != 0) + bdd = (struct be_destroy_data *)data; + if (bdd->snapname == NULL) { + err = zfs_iter_children(zfs_hdl, be_destroy_cb, data); + if (err != 0) + return (err); + return (zfs_destroy(zfs_hdl, false)); + } + /* If we're dealing with snapshots instead, delete that one alone */ + err = zfs_iter_filesystems(zfs_hdl, be_destroy_cb, data); + if (err != 0) return (err); - if ((err = zfs_destroy(zfs_hdl, false)) != 0) - return (err); + /* + * This part is intentionally glossing over any potential errors, + * because there's a lot less potential for errors when we're cleaning + * up snapshots rather than a full deep BE. The primary error case + * here being if the snapshot doesn't exist in the first place, which + * the caller will likely deem insignificant as long as it doesn't + * exist after the call. Thus, such a missing snapshot shouldn't jam + * up the destruction. + */ + snprintf(path, sizeof(path), "%s@%s", zfs_get_name(zfs_hdl), + bdd->snapname); + if (!zfs_dataset_exists(bdd->lbh->lzh, path, ZFS_TYPE_SNAPSHOT)) + return (0); + snap = zfs_open(bdd->lbh->lzh, path, ZFS_TYPE_SNAPSHOT); + if (snap != NULL) + zfs_destroy(snap, false); return (0); } @@ -202,21 +233,26 @@ be_destroy_cb(zfs_handle_t *zfs_hdl, void *data) * Destroy the boot environment or snapshot specified by the name * parameter. Options are or'd together with the possible values: * BE_DESTROY_FORCE : forces operation on mounted datasets + * BE_DESTROY_ORIGIN: destroy the origin snapshot as well */ int be_destroy(libbe_handle_t *lbh, const char *name, int options) { + struct be_destroy_data bdd; + char origin[BE_MAXPATHLEN], path[BE_MAXPATHLEN]; zfs_handle_t *fs; - char path[BE_MAXPATHLEN]; - char *p; + char *snapdelim; int err, force, mounted; + size_t rootlen; - p = path; + bdd.lbh = lbh; + bdd.snapname = NULL; force = options & BE_DESTROY_FORCE; + *origin = '\0'; be_root_concat(lbh, name, path); - if (strchr(name, '@') == NULL) { + if ((snapdelim = strchr(path, '@')) == NULL) { if (!zfs_dataset_exists(lbh->lzh, path, ZFS_TYPE_FILESYSTEM)) return (set_error(lbh, BE_ERR_NOENT)); @@ -224,37 +260,69 @@ be_destroy(libbe_handle_t *lbh, const char *name, int strcmp(path, lbh->bootfs) == 0) return (set_error(lbh, BE_ERR_DESTROYACT)); - fs = zfs_open(lbh->lzh, p, ZFS_TYPE_FILESYSTEM); - } else { + fs = zfs_open(lbh->lzh, path, ZFS_TYPE_FILESYSTEM); + if (fs == NULL) + return (set_error(lbh, BE_ERR_ZFSOPEN)); + if ((options & BE_DESTROY_ORIGIN) != 0 && + zfs_prop_get(fs, ZFS_PROP_ORIGIN, origin, sizeof(origin), + NULL, NULL, 0, 1) != 0) + return (set_error(lbh, BE_ERR_NOORIGIN)); + + /* Don't destroy a mounted dataset unless force is specified */ + if ((mounted = zfs_is_mounted(fs, NULL)) != 0) { + if (force) { + zfs_unmount(fs, NULL, 0); + } else { + free(bdd.snapname); + return (set_error(lbh, BE_ERR_DESTROYMNT)); + } + } + } else { if (!zfs_dataset_exists(lbh->lzh, path, ZFS_TYPE_SNAPSHOT)) return (set_error(lbh, BE_ERR_NOENT)); - fs = zfs_open(lbh->lzh, p, ZFS_TYPE_SNAPSHOT); + bdd.snapname = strdup(snapdelim + 1); + if (bdd.snapname == NULL) + return (set_error(lbh, BE_ERR_NOMEM)); + *snapdelim = '\0'; + fs = zfs_open(lbh->lzh, path, ZFS_TYPE_DATASET); + if (fs == NULL) { + free(bdd.snapname); + return (set_error(lbh, BE_ERR_ZFSOPEN)); + } } - if (fs == NULL) - return (set_error(lbh, BE_ERR_ZFSOPEN)); - - /* Check if mounted, unmount if force is specified */ - if ((mounted = zfs_is_mounted(fs, NULL)) != 0) { - if (force) - zfs_unmount(fs, NULL, 0); - else - return (set_error(lbh, BE_ERR_DESTROYMNT)); - } - - if ((err = be_destroy_cb(fs, NULL)) != 0) { + err = be_destroy_cb(fs, &bdd); + zfs_close(fs); + free(bdd.snapname); + if (err != 0) { /* Children are still present or the mount is referenced */ if (err == EBUSY) return (set_error(lbh, BE_ERR_DESTROYMNT)); return (set_error(lbh, BE_ERR_UNKNOWN)); } - return (0); -} + if ((options & BE_DESTROY_ORIGIN) == 0) + return (0); + /* The origin can't possibly be shorter than the BE root */ + rootlen = strlen(lbh->root); + if (*origin == '\0' || strlen(origin) <= rootlen + 1) + return (set_error(lbh, BE_ERR_INVORIGIN)); + /* + * We'll be chopping off the BE root and running this back through + * be_destroy, so that we properly handle the origin snapshot whether + * it be that of a deep BE or not. + */ + if (strncmp(origin, lbh->root, rootlen) != 0 || origin[rootlen] != '/') + return (0); + + return (be_destroy(lbh, origin + rootlen + 1, + options & ~BE_DESTROY_ORIGIN)); +} + static void be_setup_snapshot_name(libbe_handle_t *lbh, char *buf, size_t buflen) { @@ -669,32 +737,14 @@ int be_import(libbe_handle_t *lbh, const char *bootenv, int fd) { char buf[BE_MAXPATHLEN]; - time_t rawtime; nvlist_t *props; zfs_handle_t *zfs; - int err, len; - char nbuf[24]; + recvflags_t flags = { .nomount = 1 }; + int err; - /* - * We don't need this to be incredibly random, just unique enough that - * it won't conflict with an existing dataset name. Chopping time - * down to 32 bits is probably good enough for this. - */ - snprintf(nbuf, 24, "tmp%u", - (uint32_t)(time(NULL) & 0xFFFFFFFF)); - if ((err = be_root_concat(lbh, nbuf, buf)) != 0) - /* - * Technically this is our problem, but we try to use short - * enough names that we won't run into problems except in - * worst-case BE root approaching MAXPATHLEN. - */ - return (set_error(lbh, BE_ERR_PATHLEN)); + be_root_concat(lbh, bootenv, buf); - time(&rawtime); - len = strlen(buf); - strftime(buf + len, sizeof(buf) - len, "@%F-%T", localtime(&rawtime)); - - if ((err = lzc_receive(buf, NULL, NULL, false, fd)) != 0) { + if ((err = zfs_receive(lbh->lzh, buf, NULL, &flags, fd, NULL)) != 0) { switch (err) { case EINVAL: return (set_error(lbh, BE_ERR_NOORIGIN)); @@ -707,39 +757,22 @@ be_import(libbe_handle_t *lbh, const char *bootenv, in } } - if ((zfs = zfs_open(lbh->lzh, buf, ZFS_TYPE_SNAPSHOT)) == NULL) + if ((zfs = zfs_open(lbh->lzh, buf, ZFS_TYPE_FILESYSTEM)) == NULL) return (set_error(lbh, BE_ERR_ZFSOPEN)); nvlist_alloc(&props, NV_UNIQUE_NAME, KM_SLEEP); nvlist_add_string(props, "canmount", "noauto"); nvlist_add_string(props, "mountpoint", "/"); - be_root_concat(lbh, bootenv, buf); - - err = zfs_clone(zfs, buf, props); - zfs_close(zfs); + err = zfs_prop_set_list(zfs, props); nvlist_free(props); - if (err != 0) - return (set_error(lbh, BE_ERR_UNKNOWN)); - - /* - * Finally, we open up the dataset we just cloned the snapshot so that - * we may promote it. This is necessary in order to clean up the ghost - * snapshot that doesn't need to be seen after the operation is - * complete. - */ - if ((zfs = zfs_open(lbh->lzh, buf, ZFS_TYPE_DATASET)) == NULL) - return (set_error(lbh, BE_ERR_ZFSOPEN)); - - err = zfs_promote(zfs); zfs_close(zfs); if (err != 0) return (set_error(lbh, BE_ERR_UNKNOWN)); - /* Clean up the temporary snapshot */ - return (be_destroy(lbh, nbuf, 0)); + return (0); } #if SOON Modified: stable/12/lib/libbe/be.h ============================================================================== --- stable/12/lib/libbe/be.h Mon Apr 8 17:36:24 2019 (r346033) +++ stable/12/lib/libbe/be.h Mon Apr 8 17:41:39 2019 (r346034) @@ -59,6 +59,7 @@ typedef enum be_error { BE_ERR_NOPOOL, /* operation not supported on this pool */ BE_ERR_NOMEM, /* insufficient memory */ BE_ERR_UNKNOWN, /* unknown error */ + BE_ERR_INVORIGIN, /* invalid origin */ } be_error_t; @@ -93,7 +94,8 @@ int be_rename(libbe_handle_t *, const char *, const ch /* Bootenv removal functions */ typedef enum { - BE_DESTROY_FORCE = 1 << 0, + BE_DESTROY_FORCE = 1 << 0, + BE_DESTROY_ORIGIN = 1 << 1, } be_destroy_opt_t; int be_destroy(libbe_handle_t *, const char *, int); @@ -102,7 +104,7 @@ int be_destroy(libbe_handle_t *, const char *, int); typedef enum { BE_MNT_FORCE = 1 << 0, - BE_MNT_DEEP = 1 << 1, + BE_MNT_DEEP = 1 << 1, } be_mount_opt_t; int be_mount(libbe_handle_t *, char *, char *, int, char *); Modified: stable/12/lib/libbe/be_error.c ============================================================================== --- stable/12/lib/libbe/be_error.c Mon Apr 8 17:36:24 2019 (r346033) +++ stable/12/lib/libbe/be_error.c Mon Apr 8 17:41:39 2019 (r346034) @@ -105,6 +105,9 @@ libbe_error_description(libbe_handle_t *lbh) case BE_ERR_UNKNOWN: return ("unknown error"); + case BE_ERR_INVORIGIN: + return ("invalid origin"); + default: assert(lbh->error == BE_ERR_SUCCESS); return ("no error"); Modified: stable/12/lib/libbe/libbe.3 ============================================================================== --- stable/12/lib/libbe/libbe.3 Mon Apr 8 17:36:24 2019 (r346033) +++ stable/12/lib/libbe/libbe.3 Mon Apr 8 17:41:39 2019 (r346034) @@ -28,7 +28,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 21, 2018 +.Dd February 12, 2019 .Dt LIBBE 3 .Os .Sh NAME @@ -253,6 +253,13 @@ It will not destroy a mounted boot environment unless .Dv BE_DESTROY_FORCE option is set in .Fa options . +If the +.Dv BE_DESTROY_ORIGIN +option is set in +.Fa options , +the +.Fn be_destroy +function will destroy the origin snapshot to this boot environment as well. .Pp The .Fn be_nicenum @@ -482,6 +489,8 @@ BE_ERR_NOPOOL BE_ERR_NOMEM .It BE_ERR_UNKNOWN +.It +BE_ERR_INVORIGIN .El .Sh SEE ALSO .Xr bectl 8 Modified: stable/12/sbin/bectl/bectl.8 ============================================================================== --- stable/12/sbin/bectl/bectl.8 Mon Apr 8 17:36:24 2019 (r346033) +++ stable/12/sbin/bectl/bectl.8 Mon Apr 8 17:41:39 2019 (r346034) @@ -18,7 +18,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 25, 2018 +.Dd February 10, 2019 .Dt BECTL 8 .Os .Sh NAME @@ -40,7 +40,7 @@ .Ar beName@snapshot .Nm .Cm destroy -.Op Fl F +.Op Fl \&Fo .Brq Ar beName | beName@snapshot .Nm .Cm export @@ -124,7 +124,7 @@ If the flag is given, a recursive boot environment will be made. .It Xo .Cm destroy -.Op Fl F +.Op Fl \&Fo .Brq Ar beName | beName@snapshot .Xc Destroys the given @@ -136,6 +136,14 @@ snapshot without confirmation, unlike in Specifying .Fl F will automatically unmount without confirmation. +.Pp +By default, +.Nm +will warn that it is not destroying the origin of +.Ar beName . +The +.Fl o +flag may be specified to destroy the origin as well. .It Cm export Ar sourceBe Export .Ar sourceBe Modified: stable/12/sbin/bectl/bectl.c ============================================================================== --- stable/12/sbin/bectl/bectl.c Mon Apr 8 17:36:24 2019 (r346033) +++ stable/12/sbin/bectl/bectl.c Mon Apr 8 17:41:39 2019 (r346034) @@ -341,16 +341,19 @@ bectl_cmd_add(int argc, char *argv[]) static int bectl_cmd_destroy(int argc, char *argv[]) { - char *target; - int opt, err; - bool force; + nvlist_t *props; + char *origin, *target, targetds[BE_MAXPATHLEN]; + int err, flags, opt; - force = false; - while ((opt = getopt(argc, argv, "F")) != -1) { + flags = 0; + while ((opt = getopt(argc, argv, "Fo")) != -1) { switch (opt) { case 'F': - force = true; + flags |= BE_DESTROY_FORCE; break; + case 'o': + flags |= BE_DESTROY_ORIGIN; + break; default: fprintf(stderr, "bectl destroy: unknown option '-%c'\n", optopt); @@ -368,7 +371,24 @@ bectl_cmd_destroy(int argc, char *argv[]) target = argv[0]; - err = be_destroy(be, target, force); + /* We'll emit a notice if there's an origin to be cleaned up */ + if ((flags & BE_DESTROY_ORIGIN) == 0 && strchr(target, '@') == NULL) { + if (be_root_concat(be, target, targetds) != 0) + goto destroy; + if (be_prop_list_alloc(&props) != 0) + goto destroy; + if (be_get_dataset_props(be, targetds, props) != 0) { + be_prop_list_free(props); + goto destroy; + } + if (nvlist_lookup_string(props, "origin", &origin) == 0) + fprintf(stderr, "bectl destroy: leaving origin '%s' intact\n", + origin); + be_prop_list_free(props); + } + +destroy: + err = be_destroy(be, target, flags); return (err); } Modified: stable/12/sbin/bectl/bectl_jail.c ============================================================================== --- stable/12/sbin/bectl/bectl_jail.c Mon Apr 8 17:36:24 2019 (r346033) +++ stable/12/sbin/bectl/bectl_jail.c Mon Apr 8 17:41:39 2019 (r346034) @@ -40,10 +40,10 @@ __FBSDID("$FreeBSD$"); #include #include - #include "bectl.h" -static void jailparam_grow(void); +#define MNTTYPE_ZFS 222 + static void jailparam_add(const char *name, const char *val); static int jailparam_del(const char *name); static bool jailparam_addarg(char *arg); @@ -51,84 +51,28 @@ static int jailparam_delarg(char *arg); static int bectl_search_jail_paths(const char *mnt); static int bectl_locate_jail(const char *ident); +static int bectl_jail_cleanup(char *mountpoint, int jid); -/* We'll start with 8 parameters initially and grow as needed. */ -#define INIT_PARAMCOUNT 8 - -static struct jailparam *jp; -static int jpcnt; -static int jpused; static char mnt_loc[BE_MAXPATHLEN]; +static nvlist_t *jailparams; -static void -jailparam_grow(void) -{ +static const char *disabled_params[] = { + "command", "exec.start", "nopersist", "persist", NULL +}; - jpcnt *= 2; - jp = realloc(jp, jpcnt * sizeof(*jp)); - if (jp == NULL) - err(2, "realloc"); -} static void jailparam_add(const char *name, const char *val) { - int i; - for (i = 0; i < jpused; ++i) { - if (strcmp(name, jp[i].jp_name) == 0) - break; - } - - if (i < jpused) - jailparam_free(&jp[i], 1); - else if (jpused == jpcnt) - /* The next slot isn't allocated yet */ - jailparam_grow(); - - if (jailparam_init(&jp[i], name) != 0) - return; - if (jailparam_import(&jp[i], val) != 0) - return; - ++jpused; + nvlist_add_string(jailparams, name, val); } static int jailparam_del(const char *name) { - int i; - char *val; - for (i = 0; i < jpused; ++i) { - if (strcmp(name, jp[i].jp_name) == 0) - break; - } - - if (i == jpused) - return (ENOENT); - - for (; i < jpused - 1; ++i) { - val = jailparam_export(&jp[i + 1]); - - jailparam_free(&jp[i], 1); - /* - * Given the context, the following will really only fail if - * they can't allocate the copy of the name or value. - */ - if (jailparam_init(&jp[i], jp[i + 1].jp_name) != 0) { - free(val); - return (ENOMEM); - } - if (jailparam_import(&jp[i], val) != 0) { - jailparam_free(&jp[i], 1); - free(val); - return (ENOMEM); - } - free(val); - } - - jailparam_free(&jp[i], 1); - --jpused; + nvlist_remove_all(jailparams, name); return (0); } @@ -136,6 +80,7 @@ static bool jailparam_addarg(char *arg) { char *name, *val; + size_t i, len; if (arg == NULL) return (false); @@ -156,6 +101,15 @@ jailparam_addarg(char *arg) } strlcpy(mnt_loc, val, sizeof(mnt_loc)); } + + for (i = 0; disabled_params[i] != NULL; i++) { + len = strlen(disabled_params[i]); + if (strncmp(disabled_params[i], name, len) == 0) { + fprintf(stderr, "invalid jail parameter: %s\n", name); + return (false); + } + } + jailparam_add(name, val); return (true); } @@ -176,22 +130,128 @@ jailparam_delarg(char *arg) return (jailparam_del(name)); } +static int +build_jailcmd(char ***argvp, bool interactive, int argc, char *argv[]) +{ + char *cmd, **jargv, *name, *val; + nvpair_t *nvp; + size_t i, iarg, nargv; + + cmd = NULL; + nvp = NULL; + iarg = i = 0; + if (nvlist_size(jailparams, &nargv, NV_ENCODE_NATIVE) != 0) + return (1); + + /* + * Number of args + "/usr/sbin/jail", "-c", and ending NULL. + * If interactive also include command. + */ + nargv += 3; + if (interactive) { + if (argc == 0) + nargv++; + else + nargv += argc; + } + + jargv = *argvp = calloc(nargv, sizeof(jargv)); + if (jargv == NULL) + err(2, "calloc"); + + jargv[iarg++] = strdup("/usr/sbin/jail"); + jargv[iarg++] = strdup("-c"); + while ((nvp = nvlist_next_nvpair(jailparams, nvp)) != NULL) { + name = nvpair_name(nvp); + if (nvpair_value_string(nvp, &val) != 0) + continue; + + if (asprintf(&jargv[iarg++], "%s=%s", name, val) < 0) + goto error; + } + if (interactive) { + if (argc < 1) + cmd = strdup("/bin/sh"); + else { + cmd = argv[0]; + argc--; + argv++; + } + + if (asprintf(&jargv[iarg++], "command=%s", cmd) < 0) { + goto error; + } + if (argc < 1) { + free(cmd); + cmd = NULL; + } + + for (; argc > 0; argc--) { + if (asprintf(&jargv[iarg++], "%s", argv[0]) < 0) + goto error; + argv++; + } + } + + return (0); + +error: + if (interactive && argc < 1) + free(cmd); + for (; i < iarg - 1; i++) { + free(jargv[i]); + } + free(jargv); + return (1); +} + +/* Remove jail and cleanup any non zfs mounts. */ +static int +bectl_jail_cleanup(char *mountpoint, int jid) +{ + struct statfs *mntbuf; + size_t i, searchlen, mntsize; + + if (jid >= 0 && jail_remove(jid) != 0) { + fprintf(stderr, "unable to remove jail"); + return (1); + } + + searchlen = strnlen(mountpoint, MAXPATHLEN); + mntsize = getmntinfo(&mntbuf, MNT_NOWAIT); + for (i = 0; i < mntsize; i++) { + if (strncmp(mountpoint, mntbuf[i].f_mntonname, searchlen) == 0 && + mntbuf[i].f_type != MNTTYPE_ZFS) { + + if (unmount(mntbuf[i].f_mntonname, 0) != 0) { + fprintf(stderr, "bectl jail: unable to unmount filesystem %s", + mntbuf[i].f_mntonname); + return (1); + } + } + } + + return (0); +} + int bectl_cmd_jail(int argc, char *argv[]) { - char *bootenv, *mountpoint; - int jid, mntflags, opt, ret; + char *bootenv, **jargv, *mountpoint; + int i, jid, mntflags, opt, ret; bool default_hostname, interactive, unjail; pid_t pid; + /* XXX TODO: Allow shallow */ mntflags = BE_MNT_DEEP; default_hostname = interactive = unjail = true; - jpcnt = INIT_PARAMCOUNT; - jp = malloc(jpcnt * sizeof(*jp)); - if (jp == NULL) - err(2, "malloc"); + if ((nvlist_alloc(&jailparams, NV_UNIQUE_NAME, 0)) != 0) { + fprintf(stderr, "nvlist_alloc() failed\n"); + return (1); + } + jailparam_add("persist", "true"); jailparam_add("allow.mount", "true"); jailparam_add("allow.mount.devfs", "true"); @@ -210,6 +270,8 @@ bectl_cmd_jail(int argc, char *argv[]) */ if (strcmp(optarg, "host.hostname") == 0) default_hostname = false; + } else { + return (1); } break; case 'U': @@ -236,13 +298,14 @@ bectl_cmd_jail(int argc, char *argv[]) argc -= optind; argv += optind; - /* struct jail be_jail = { 0 }; */ if (argc < 1) { fprintf(stderr, "bectl jail: missing boot environment name\n"); return (usage(false)); } bootenv = argv[0]; + argc--; + argv++; /* * XXX TODO: if its already mounted, perhaps there should be a flag to @@ -264,45 +327,46 @@ bectl_cmd_jail(int argc, char *argv[]) * This is our indicator that path was not set by the user, so we'll use * the path that libbe generated for us. */ - if (mountpoint == NULL) + if (mountpoint == NULL) { jailparam_add("path", mnt_loc); - /* Create the jail for now, attach later as-needed */ - jid = jailparam_set(jp, jpused, JAIL_CREATE); - if (jid == -1) { - fprintf(stderr, "unable to create jail. error: %d\n", errno); + mountpoint = mnt_loc; + } + + if ((build_jailcmd(&jargv, interactive, argc, argv)) != 0) { + fprintf(stderr, "unable to build argument list for jail command\n"); return (1); } - jailparam_free(jp, jpused); - free(jp); - - /* We're not interactive, nothing more to do here. */ - if (!interactive) - return (0); - pid = fork(); - switch(pid) { + + switch (pid) { case -1: perror("fork"); return (1); case 0: - jail_attach(jid); - /* We're attached within the jail... good bye! */ - chdir("/"); - if (argc > 1) - execve(argv[1], &argv[1], NULL); - else - execl("/bin/sh", "/bin/sh", NULL); - fprintf(stderr, "bectl jail: failed to execute %s\n", - (argc > 1 ? argv[1] : "/bin/sh")); - _exit(1); + execv("/usr/sbin/jail", jargv); + fprintf(stderr, "bectl jail: failed to execute\n"); default: - /* Wait for the child to get back, see if we need to unjail */ waitpid(pid, NULL, 0); } + for (i = 0; jargv[i] != NULL; i++) { + free(jargv[i]); + } + free(jargv); + + if (!interactive) + return (0); + if (unjail) { - jail_remove(jid); + /* + * We're not checking the jail id result here because in the + * case of invalid param, or last command in jail was an error + * the jail will not exist upon exit. bectl_jail_cleanup will + * only jail_remove if the jid is >= 0. + */ + jid = bectl_locate_jail(bootenv); + bectl_jail_cleanup(mountpoint, jid); be_unmount(be, bootenv, 0); } @@ -319,7 +383,6 @@ bectl_search_jail_paths(const char *mnt) /* jail_getv expects name/value strings */ snprintf(lastjid, sizeof(lastjid), "%d", 0); - jid = 0; while ((jid = jail_getv(0, "lastjid", lastjid, "path", &jailpath, NULL)) != -1) { @@ -416,7 +479,7 @@ bectl_cmd_unjail(int argc, char *argv[]) return (1); } - jail_remove(jid); + bectl_jail_cleanup(path, jid); be_unmount(be, target, 0); return (0); Modified: stable/12/sbin/bectl/tests/bectl_test.sh ============================================================================== --- stable/12/sbin/bectl/tests/bectl_test.sh Mon Apr 8 17:36:24 2019 (r346033) +++ stable/12/sbin/bectl/tests/bectl_test.sh Mon Apr 8 17:41:39 2019 (r346034) @@ -123,12 +123,21 @@ bectl_destroy_body() zpool=$(make_zpool_name) disk=${cwd}/disk.img mount=${cwd}/mnt + root=${mount}/root bectl_create_setup ${zpool} ${disk} ${mount} atf_check bectl -r ${zpool}/ROOT create -e default default2 atf_check -o not-empty zfs get mountpoint ${zpool}/ROOT/default2 - atf_check bectl -r ${zpool}/ROOT destroy default2 + atf_check -e ignore bectl -r ${zpool}/ROOT destroy default2 atf_check -e not-empty -s not-exit:0 zfs get mountpoint ${zpool}/ROOT/default2 + + # Test origin snapshot deletion when the snapshot to be destroyed + # belongs to a mounted dataset, see PR 236043. + atf_check mkdir -p ${root} + atf_check -o not-empty bectl -r ${zpool}/ROOT mount default ${root} + atf_check bectl -r ${zpool}/ROOT create -e default default3 + atf_check bectl -r ${zpool}/ROOT destroy -o default3 + atf_check bectl -r ${zpool}/ROOT unmount default } bectl_destroy_cleanup() { @@ -154,7 +163,7 @@ bectl_export_import_body() atf_check -o save:exported bectl -r ${zpool}/ROOT export default atf_check -x "bectl -r ${zpool}/ROOT import default2 < exported" atf_check -o not-empty zfs get mountpoint ${zpool}/ROOT/default2 - atf_check bectl -r ${zpool}/ROOT destroy default2 + atf_check -e ignore bectl -r ${zpool}/ROOT destroy default2 atf_check -e not-empty -s not-exit:0 zfs get mountpoint \ ${zpool}/ROOT/default2 } @@ -188,7 +197,7 @@ bectl_list_body() atf_check bectl -r ${zpool}/ROOT create -e default default2 atf_check -o save:list.out bectl -r ${zpool}/ROOT list atf_check -o not-empty grep 'default2' list.out - atf_check bectl -r ${zpool}/ROOT destroy default2 + atf_check -e ignore bectl -r ${zpool}/ROOT destroy default2 atf_check -o save:list.out bectl -r ${zpool}/ROOT list atf_check -s not-exit:0 grep 'default2' list.out # XXX TODO: Formatting checks From owner-svn-src-all@freebsd.org Mon Apr 8 17:55:05 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 951441563399; Mon, 8 Apr 2019 17:55:05 +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 361E383B3B; Mon, 8 Apr 2019 17:55:05 +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 0C1A226D7F; Mon, 8 Apr 2019 17:55:05 +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 x38Ht4lb037724; Mon, 8 Apr 2019 17:55:04 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38Ht4OZ037723; Mon, 8 Apr 2019 17:55:04 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081755.x38Ht4OZ037723@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 17:55:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346035 - in stable: 11/sys/dev/iwm 12/sys/dev/iwm X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/dev/iwm 12/sys/dev/iwm X-SVN-Commit-Revision: 346035 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 361E383B3B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 17:55:05 -0000 Author: kevans Date: Mon Apr 8 17:55:04 2019 New Revision: 346035 URL: https://svnweb.freebsd.org/changeset/base/346035 Log: MFC r343240: iwm(4): Fix possible null pointer indirection Modified: stable/12/sys/dev/iwm/if_iwm.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sys/dev/iwm/if_iwm.c Directory Properties: stable/11/ (props changed) Modified: stable/12/sys/dev/iwm/if_iwm.c ============================================================================== --- stable/12/sys/dev/iwm/if_iwm.c Mon Apr 8 17:41:39 2019 (r346034) +++ stable/12/sys/dev/iwm/if_iwm.c Mon Apr 8 17:55:04 2019 (r346035) @@ -1033,7 +1033,8 @@ iwm_reset_rx_ring(struct iwm_softc *sc, struct iwm_rx_ * The hw rx ring index in shared memory must also be cleared, * otherwise the discrepancy can cause reprocessing chaos. */ - memset(sc->rxq.stat, 0, sizeof(*sc->rxq.stat)); + if (sc->rxq.stat) + memset(sc->rxq.stat, 0, sizeof(*sc->rxq.stat)); } static void From owner-svn-src-all@freebsd.org Mon Apr 8 17:55:05 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5D2A41563395; Mon, 8 Apr 2019 17:55:05 +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 F2A2883B3A; Mon, 8 Apr 2019 17:55:04 +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 B844826D7E; Mon, 8 Apr 2019 17:55:04 +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 x38Ht4BM037718; Mon, 8 Apr 2019 17:55:04 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38Ht4BD037717; Mon, 8 Apr 2019 17:55:04 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081755.x38Ht4BD037717@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 17:55:04 +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: r346035 - in stable: 11/sys/dev/iwm 12/sys/dev/iwm X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/dev/iwm 12/sys/dev/iwm X-SVN-Commit-Revision: 346035 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: F2A2883B3A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 17:55:05 -0000 Author: kevans Date: Mon Apr 8 17:55:04 2019 New Revision: 346035 URL: https://svnweb.freebsd.org/changeset/base/346035 Log: MFC r343240: iwm(4): Fix possible null pointer indirection Modified: stable/11/sys/dev/iwm/if_iwm.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/dev/iwm/if_iwm.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/dev/iwm/if_iwm.c ============================================================================== --- stable/11/sys/dev/iwm/if_iwm.c Mon Apr 8 17:41:39 2019 (r346034) +++ stable/11/sys/dev/iwm/if_iwm.c Mon Apr 8 17:55:04 2019 (r346035) @@ -1032,7 +1032,8 @@ iwm_reset_rx_ring(struct iwm_softc *sc, struct iwm_rx_ * The hw rx ring index in shared memory must also be cleared, * otherwise the discrepancy can cause reprocessing chaos. */ - memset(sc->rxq.stat, 0, sizeof(*sc->rxq.stat)); + if (sc->rxq.stat) + memset(sc->rxq.stat, 0, sizeof(*sc->rxq.stat)); } static void From owner-svn-src-all@freebsd.org Mon Apr 8 17:59:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BB207156364D; Mon, 8 Apr 2019 17:59:43 +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 619A883F2C; Mon, 8 Apr 2019 17:59:43 +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 3971026D81; Mon, 8 Apr 2019 17:59:43 +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 x38Hxh9S037958; Mon, 8 Apr 2019 17:59:43 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38Hxguv037957; Mon, 8 Apr 2019 17:59:43 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081759.x38Hxguv037957@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 17:59:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346036 - stable/12/sys/arm/allwinner X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: stable/12/sys/arm/allwinner X-SVN-Commit-Revision: 346036 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 619A883F2C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 17:59:43 -0000 Author: kevans Date: Mon Apr 8 17:59:42 2019 New Revision: 346036 URL: https://svnweb.freebsd.org/changeset/base/346036 Log: MFC r343255: awg: fix soft reset failure with no link U-Boot will leave the ephy reset de-asserted and the MAC soft reset will fail on these boards with internal PHY and no link established. Toggle reset again before proceeding to attach/init. Modified: stable/12/sys/arm/allwinner/if_awg.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/arm/allwinner/if_awg.c ============================================================================== --- stable/12/sys/arm/allwinner/if_awg.c Mon Apr 8 17:55:04 2019 (r346035) +++ stable/12/sys/arm/allwinner/if_awg.c Mon Apr 8 17:59:42 2019 (r346036) @@ -1466,6 +1466,12 @@ awg_setup_extres(device_t dev) goto fail; } if (rst_ephy != NULL) { + /* + * The ephy reset is left de-asserted by U-Boot. Assert it + * here to make sure that we're in a known good state going + * into the PHY reset. + */ + hwreset_assert(rst_ephy); error = hwreset_deassert(rst_ephy); if (error != 0) { device_printf(dev, "cannot de-assert ephy reset\n"); From owner-svn-src-all@freebsd.org Mon Apr 8 18:00:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 826D315636A7; Mon, 8 Apr 2019 18:00:17 +0000 (UTC) (envelope-from ml+freebsd@vishwin.info) Received: from varun.vishwin.info (varun.vishwin.info [46.101.93.59]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "varun.vishwin.info", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B278184057; Mon, 8 Apr 2019 18:00:16 +0000 (UTC) (envelope-from ml+freebsd@vishwin.info) Received: from varun.vishwin.info (fd35:9eae:7575::2 [IPv6:fd35:9eae:7575::2]) by varun.vishwin.info (OpenSMTPD) with ESMTP id 2b8d673f; Mon, 8 Apr 2019 14:00:11 -0400 (EDT) Received: from [IPv6:2001:470:8:6ca:cad7:19ff:fec0:a06d] (2001:470:8:6ca:cad7:19ff:fec0:a06d [IPv6:2001:470:8:6ca:cad7:19ff:fec0:a06d]) by varun.vishwin.info (OpenSMTPD) with ESMTPSA id 831f6795 TLS version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO; Mon, 8 Apr 2019 14:00:11 -0400 (EDT) Subject: Re: svn commit: r346023 - head/usr.bin/strings To: Shawn Webb Cc: Mariusz Zaborski , svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org References: <201904080335.x383ZmuS086093@repo.freebsd.org> <20190408133909.3fu7aknjoospyqfz@mutt-hbsd> From: Charlie Li Openpgp: preference=signencrypt Autocrypt: addr=ml+freebsd@vishwin.info; keydata= mQINBFt7iHUBEADCorTixbMGuHd9WYSKCELlv/TFcRtvpHUw/n9LtXzKixUUwl7iuMFMYTz3 QXePX0Twq4jCQYySfcxWbPkLsSYlPOkaGQ+XytfmIHoqG5ba4i1fp+F41is0oCtLt1+oL84j NKUd13em/JWd+PJeQbSTVnHbT2yaAi7vqWw5WKVaMExjfPGU5TArV46wSRU6Zuy1ZX66q0q5 dPzeBdeKYWJE8aGtyi3pYUpKUOX4gxiNetf6leDFZ4OsexWaRdU0n8fId5d1qwjAE3lOwV5z 0Ilt8t4iXtX3JL3DAQyLZIeXHIg9O3rrpPMXQWSp2/5g39PohNk7farbhcpIKxuDN+L5N6U9 OxNHBSCv9FGDO4R/mw3YwJCovDzsF7RSyXQDIY36yjdh2uTLZ0uD5Ci/DPmJUySFLRvpqWnQ M7V5cYhdqDfcElGpRbi8JZQVYRJjvI5Jj0byG98KeaD0YFxKqmmm+Oh+xWXE7xt/DsBoZeZJ BFP84LvFbwQqprvI+sg+1z2+JIgNbYwl8VaYzfyGnqTEXTOsQYEKTdKA9MODSAsN31MlQICe CIHZV+OwOqH1KQ/mZp59AnpXAmj4T94bnahE9yJtVW/qglX/nTeFNUdu5MyEgkeB0x7mx+t0 3hE20yp/NbyvG1T/o53NHwHiURC/8Fxd1NWPZ6n4X8npQn6iyQARAQABtC5DaGFybGllIExp IChGcmVlQlNEKSA8bWwrZnJlZWJzZEB2aXNod2luLmluZm8+iQJOBBMBCAA4FiEE/3/Cqr5a +41PbEb+jnB43vIDq2wFAlt7iwoCGyMFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AACgkQjnB4 3vIDq2zlBQ/7Boe3K9i4pxvIlBWlFDmDuclLiju/LTsc81mO607TIwUMx5p3BfnhqTwqpcuT Gilj2JKSlIw0NioJ3HnPiPyIpMmOmdeLBwvBn8iBmjs14DdDMgKusE8gKc0KRFbTM397rB7K oXj2/R8VF3Uuo8i3vlWyah6p+Osz1dAad/7COqPeM9OBMKaYAOrdKvxMC96l5k+Wc1JKOLeA BP7BtgmQB7HydHUm+dzqUB1rgMP2djIXd5Ngc749kzNQIFvC9ZXbaABw5M4JqKRbVFm08Wgw IUyhkNEtMpkBxMPwqXsk3t1KVptYQSAfW/+8mWDP2sgUOyz9O2IBfb1acCPk04/jf8SsXRaT HzJr64NseWlZUHAMYl9EC09gdE6UDCIHR68+IzutMtgT17Djuu1HRYly+RWAGkyTOeR7Sv/V 2B89Nsq5OfHYs3F2vD57/aRj5TmZJDQWxH/rDYbj8Pk6UjXcaY6QWUtNFidvCMFlBpXuncXU ZWgTsJEyZLHP5SJ7S9sRSHU5+CVUkjsbEFNuHkkGHAkSnpP+HosnH8/q9Rykn9FTamLbiQRQ UxJ6+IlqvOUtRRrMGMBF7ZIFGHcl8tcKynsPTeaHjpqPhCrZx8PmCKKoJHwW4Ua7+cdZkBJq R20qvXuLIrInjkIpA1CbacMckS5a7el6pi/nU0NG1S1K4Zu5Ag0EW3uIdQEQANdl7YHG8JOy HbEYv+7ExSrO96qBRavg1FsDG0riDmlsOSfZ2fqL6/YJF5WsfsX99+YSdIiLQfC4QOw/cA+M I65pgY4cCu42L7YIW/AR+jB1hFg+Q/cbeOwjuKPFYtZvxeDpSsaA6iIR+p+t4DXkjWl86g6W aFLC+til/rCilFHY/1/6M918F1gm/6xCIADDFu0BXLkASc5B4LuvaFEiJIuI9ZoQDIgWxnsX 0tXXE36SwK/XrowzRzsOa+2iOHAPKu7rPGHwy28vO4T5Uq7UynMZG2sK3RTbOijaxL4IJF4W MRqpuGdBSJ4sWmr5aIpgX9au5L1TNAAILJpHXnkv+k825+9VgbhFtFYBHEkgUtXb+w34JnkH okpr9A78dpWb+T+jOEP6ZUgM+4VVy+hCCpbcCVI2PEXu8w2z3+4yZWxIFmy8UYZRoeTMKzV2 zLeisoA0XA8jj548YNPiAl20Mjyoqu42WNv0P8fD9PMTcfLFCj2PlxOhuUFaIUH3ty0/bNeS jPtVK+L9x4W37R7U1tYk+tB5MlPakQiSQtdToB+8K34rnBt/3kCoAYL7Hygw9+qyZrEKZDtP 5JKekfgsy28t1z66xWCUwq9PHuUFiij3cjbwIbskI9uy2+xITcXt4ZqVfpZcdGmjfbdTPkGf PH2pjDoCJaezYdbha/3OVhmVABEBAAGJAjYEGAEIACAWIQT/f8Kqvlr7jU9sRv6OcHje8gOr bAUCW3uIdQIbDAAKCRCOcHje8gOrbExnD/9qwSL4HiorJmUEJ+5CTh8IJql4PzeQK8Dx93gi Zs5jWVlCJTmcpQNirWIZM2eRt67C/wTJjLmEVGzySVLpGiUqhXqdROgFmDwvEnmpIbtWWyvG sgSOCmZj/tz0GEtLSsjJcV/kLffkv7XEKkt9ZjIJnFYVYSovDK1o2PoO6Rfi5AWHHB7jYhjS HJvJjDx0yClO9gEYhtw7R60YOLH+cKoDou9tu+4wR3QwRsNGO6wrzLGhptxuBrDMI+HuOx+j wBTliuzuvZrry6OdKDDdq5D4vvQCj4vFnK4p7LZXhBshCMoLkWoA0I2T+YF/V5Ob5EuvsTIC re/pO/g941ipVkehvVNAsiplSaHjasB1HS6BQ95csI8E/b6PnKm+IECp2bANbLP1jrxKeBGj UkeyRxTmOV/ADUIIj8S4a2yOxTxlysN2O5wqXCJcxaYelC/Y4TUcL6ENxn2dLBdCYKQEna0u DdxZp7fS+pXN6qyK8Qz6Q42MHAxFAZdLKf6a44d4HQt6rPcWdETVlnVKnJr0b9kg5K1Q8N4k PVoTGVrkGAZhmjFYsqWulq445VU46mX7WcqsrZx8LqNTwP6i3Bf71FJ9EBxTyA8fP8k0qosP 8U8D7jhcc5x4yVW8RBBtB+a5q3odWdFnjMLEm4wtxBH/mSN/UKRcFSBvKQ8FxTgpX4Yxcw== Organization: FreeBSD Message-ID: <216f4d89-8af8-cfee-207c-afd526ca70b3@vishwin.info> Date: Mon, 8 Apr 2019 14:00:04 -0400 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <20190408133909.3fu7aknjoospyqfz@mutt-hbsd> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="e9Zgbp4O9wN5wNIhfl86O9RSNIvKI0qkG" X-Rspamd-Queue-Id: B278184057 X-Spamd-Bar: ------ X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[freebsd]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 18:00:17 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --e9Zgbp4O9wN5wNIhfl86O9RSNIvKI0qkG Content-Type: multipart/mixed; boundary="k6YiD4SNVQ7TFfkS3ic9FhzSysBIvfa9X"; protected-headers="v1" From: Charlie Li To: Shawn Webb Cc: Mariusz Zaborski , svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Message-ID: <216f4d89-8af8-cfee-207c-afd526ca70b3@vishwin.info> Subject: Re: svn commit: r346023 - head/usr.bin/strings References: <201904080335.x383ZmuS086093@repo.freebsd.org> <20190408133909.3fu7aknjoospyqfz@mutt-hbsd> In-Reply-To: <20190408133909.3fu7aknjoospyqfz@mutt-hbsd> --k6YiD4SNVQ7TFfkS3ic9FhzSysBIvfa9X Content-Type: text/plain; charset=utf-8 Content-Language: en-GB-large Content-Transfer-Encoding: quoted-printable Shawn Webb wrote: > On Mon, Apr 08, 2019 at 03:35:48AM +0000, Mariusz Zaborski wrote: >> Author: oshogbo >> Date: Mon Apr 8 03:35:47 2019 >> New Revision: 346023 >> URL: https://svnweb.freebsd.org/changeset/base/346023 >> >> Log: >> strings: disable Casper support while building native-xtools >=20 > Why? >=20 Discussed in previous thread. Capsicum is not part of the native-xtools build, so linking fails. This is regardless of both the host and target architectures. Example: --- all_subdir_usr.bin/strings --- Building /usr/obj/usr/local/poudriere/jails/aarch64-current/usr/src/amd64.amd64/nx= b/arm64.aarch64/usr.bin/strings/strings --- strings --- ld: error: unable to find library -lcasper ld: error: unable to find library -lcap_fileargs cc: error: linker command failed with exit code 1 (use -v to see invocati= on) *** [strings] Error code 1 make[4]: stopped in /usr/local/poudriere/jails/aarch64-current/usr/src/usr.bin/strings --=20 Charlie Li =E2=80=A6nope, still don't have an exit line. (This email address is for mailing list use; replace local-part with vishwin for off-list communication if possible) --k6YiD4SNVQ7TFfkS3ic9FhzSysBIvfa9X-- --e9Zgbp4O9wN5wNIhfl86O9RSNIvKI0qkG Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE/3/Cqr5a+41PbEb+jnB43vIDq2wFAlyrjCQACgkQjnB43vID q2yPCRAAghOYFQCEgB8w68T2Mt0ulJ2fSOSsIe+RQ1gSA0dG+omAVwPneTNKb5i+ +N4p4P3LzTrT+noNlOFAsZybAGP5rfyp00fRU/n4NHhV5lf2KVbAfYAlzqPAsHvv Q+gW6DPcllc8C/jCZr+nq9c0cXUdMA6U3m4bYck9MBaKT8sr0kVPx7KnkiRkEGIY a7aITfuSBZf92uXW55/ze+CltdCSJmgQG1CvaF1aT2aq0jC4Vm9hAi6XYlsKP4gf FKavTD49Em95hcRf/R3mvhHIVb38XCB7TgFJmn0ZlOn6O1rUg1J6+OAWim+RnhIa mCjnwcgxbH1LJ7KEv9UpTmiBorKOB0y3kKVxPXsrhwmCEDWDeZDBEXyPHEe3to2/ 7xHrJsU95Go3FPglxbYAUFTk7HYC1WYAhAqEzNUNxgb2V5mN6/N7gCpmvqhbgvF0 o0v+8u4fddHBywMibtUqif5KbDZ4eS/aVg0be2jIaPAeGnzM0blE/NK8E4kW9/g/ SbjNpXiw1oY14PJIIYdKVGmhGOeBZg55CsADrom29pOtpQ4R7EsGEd0TVyRIQrJX L+fIURMbSMAej7KZ+esbSE1KbMlGzdNrxoLmjWvjS1475mE88210j91NasXlQbDD 0byubi03PwXyh+LZ2SPIbQEUSrnjw7oO0Zto6+ldxQjTEn8px00= =yIKd -----END PGP SIGNATURE----- --e9Zgbp4O9wN5wNIhfl86O9RSNIvKI0qkG-- From owner-svn-src-all@freebsd.org Mon Apr 8 18:15:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CFB72156421A; Mon, 8 Apr 2019 18:15:11 +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 761BE84FF8; Mon, 8 Apr 2019 18:15:11 +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 4D67A270FF; Mon, 8 Apr 2019 18:15:11 +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 x38IFBod049175; Mon, 8 Apr 2019 18:15:11 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38IFBVv049173; Mon, 8 Apr 2019 18:15:11 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081815.x38IFBVv049173@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 18:15:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346037 - stable/12/sys/dev/iwm X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: stable/12/sys/dev/iwm X-SVN-Commit-Revision: 346037 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 761BE84FF8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.982,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 18:15:12 -0000 Author: kevans Date: Mon Apr 8 18:15:10 2019 New Revision: 346037 URL: https://svnweb.freebsd.org/changeset/base/346037 Log: MFC r343065, r343373-r343390, r343477 r343065: With the sync from Dragonfly BSD in r318216 a bug slipped in (also still present upstream it seems). The tlv variable was changed to a pointer but the advancement of the data pointer was left as sizeof(tlv). While the sizeof the (now) pointer equals the sizeof 2 x uint32_t (size of the struct) on 64bit platforms, on 32bit platforms the size of the advancement of the data pointer was wrong leading to firmware load issues. Correctly advance the data pointer by the size of the structure and not by the size of a pointer. r343373: if_iwm - Update firmware rs table, instead of indexing the table in tx cmds. * Rather than providing a non-zero index into the firmware RS table, we should always use index 0 and update the firmware RS table whenever our chosen tx rate for data-frames changes. * Send IWM_LQ_CMD updates when the tx rate gets updated by the net80211 rate control (which is after we tell the tx status to the net80211 rate-control in iwm_mvm_rx_tx_cmd_single()). * Disregard frames transferred with a different tx rate than the currently selected rate for the rate-control calculations. This way we avoid counting management frames (which are sent at a slow, and fixed rate), as well as frames we added to the tx queue just before a new IWM_LQ_CMD update took effect. r343374: if_iwm - The iwm_prepare_card_hw() in iwm_attach() is only needed on 8K hw. * Doing the iwm_prepare_card_hw() call in iwm_attach() only on Family 8000 hardware matches the code in Linux iwlwifi. * While there remove DEFAULT_MAX_TX_POWER definition which is unused, and has a value different from IWL_DEFAULT_MAX_TX_POWER in iwlwifi. r343375: if_iwm - Move iwm_read_firmware() call into iwm_attach(). * We should load the firmware exactly once before the driver really initializes the hardware the first time, and unload it at detach time. There is no need to retrieve the firmware during execution of iwm_mvm_load_ucode_wait_alive(), we should make sure we already have the firmware data at hand before that. * The existing sc_preinit_hook code fails to deal with the case where if_iwm is loaded by the loader (or is statically linked) and the firmware needs to be loaded from disk. So we can just call iwm_read_firmware() from iwm_attach() directly. * A separate solution will have to be added to properly defer the firmware loading during bootup, until the necessary filesystem is mounted. r343376: if_iwm - Check sc->sc_attached flag in suspend/resume callbacks. * There is (almost) nothing to do in suspend/resume if if_iwm has failed during initialization (e.g. because of firmware load failure) and was already uninitialized by iwm_detach_local(). r343377: iwm - Reduce gratuitous differences with Linux iwlwifi in struct naming. * Rename some structs and struct members for firmware handling. r343378: if_iwm - Update struct iwm_scan_results_notif. Remove old/unused definitions * Remove outdated notifications IWM_SCAN_ABORT_CMD, IWM_SCAN_START_NOTIFICATION and IWM_SCAN_RESULTS_NOTIFICATION. * Remove unused enum iwm_scan_complete_status. * Use the updated FW Api version 3 of struct iwm_scan_results_notif. * No functional change, since struct iwm_scan_results_notif is never accessed in iwm at the moment. Taken-From: Linux iwlwifi commits 1083fd7391e989be52022f0f338e9dadc048b063 and 75118fdb63496e4611ab50380499ddd62b9de69f. r343379: if_iwm - Configure the PCIe LTR, fix PCI express capability accesses. Taken-From: Linux iwlwifi r343380: if_iwm - Add firmware API definitions for TX power commands. * While there remove unused IWM_UCODE_TLV_CAPA_LMAC_UPLOAD definition, which isn't defined in iwlwifi. Taken-From: Linux iwlwifi r343381: iwm - Track firmware state better, and improve handling in iwm_newstate(). * This avoids firmware resets in all the cases in iwm_newstate(). Instead iwm_bring_down_firmware() is called, which tears down all the STA connection state, according to the sc->sc_firmware_state value. * Improve the behaviour of the LED blinking a bit, so it only blinks when there really is a wireless scan going on. * Print the newstate arg in debug output of iwm_newstate(), to help in debugging. This is inspired by the firmware state maintaining change in OpenBSD's iwm, by stsp@openbsd.org (OpenBSD Git 0ddb056fb7370664b1d4b84392697cb17d1a414a). r343382: iwm - Avoid Tx watchdog timeout, when dropping a connection. r343383: iwm - Improve firmware Time Event handling. * This is a mix of the OpenBSD Git 7fd9664469d1b717a307eebd74aeececbd3c41cc change, and syncing with the Linux iwlwifi code. Taken-From: Linux iwlwifi, and OpenBSD r343384: iwm - Clear Time Event active state, when receiving End Notification. * This hopefully avoids some firmware panics, I was occasionally seeing, when iwm disconnects upon losing signal to an access point at some point. * This is synchronizing the if_iwm_time_event.c file a bit more from the corresponding Linux iwlwifi/mvm/time-event.c. Taken-From: Linux iwlwifi r343385: iwm - Always clear watchdog timer, when bringing down firmware state. r343386: if_iwm - Stop iwm_watchdog callout when idle. r343387: iwm - Fix race during detach, where a callout is left after driver is gone. r343388: iwm - Update alive response handling, add v4 and remove old versions. r343389: iwm - Remove unused REPLY_MAX Taken-From: Linux git e4eb275ac5cfe71686612d929a9829345b2a4ada r343390: iwm - Remove unused TX_CMD_NEXT_FRAME_* Taken-From: Linux git b1e06c65fb69c5e3fddcd91987561e225eaa9bfa r343477: Fix logic errors in iwm_pcie_load_firmware_chunk introduced in r314065. * There's no reason to have a while() loop here, because: - if msleep returns 0, that means we were woken up by the interrupt handler, and we are going to exit immediately as sc_fw_chunk_done will now be 1 (there is nothing else that sleeps on sc_fw.) - if msleep doesn't return 0 (i.e. it returned ETIMEDOUT) then we will exit immediately because of the if-test. So, just use a single msleep() and then check sc_fw_chunk_done as before. * The comment said we were sleeping for 5 seconds, but the msleep was only for 1. Before r314065, this was 1 second and so was the comment, and in that commit the comment was changed and the function call wasn't. Possibly fixes failures to initialize uCode on certain devices. PR: 219683 Modified: stable/12/sys/dev/iwm/if_iwm.c stable/12/sys/dev/iwm/if_iwm_config.h stable/12/sys/dev/iwm/if_iwm_debug.h stable/12/sys/dev/iwm/if_iwm_fw.c stable/12/sys/dev/iwm/if_iwm_fw.h stable/12/sys/dev/iwm/if_iwm_led.c stable/12/sys/dev/iwm/if_iwm_mac_ctxt.c stable/12/sys/dev/iwm/if_iwm_pcie_trans.c stable/12/sys/dev/iwm/if_iwm_phy_db.c stable/12/sys/dev/iwm/if_iwm_scan.c stable/12/sys/dev/iwm/if_iwm_sta.c stable/12/sys/dev/iwm/if_iwm_time_event.c stable/12/sys/dev/iwm/if_iwm_time_event.h stable/12/sys/dev/iwm/if_iwmreg.h stable/12/sys/dev/iwm/if_iwmvar.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/iwm/if_iwm.c ============================================================================== --- stable/12/sys/dev/iwm/if_iwm.c Mon Apr 8 17:59:42 2019 (r346036) +++ stable/12/sys/dev/iwm/if_iwm.c Mon Apr 8 18:15:10 2019 (r346037) @@ -245,7 +245,7 @@ static int iwm_firmware_store_section(struct iwm_softc const uint8_t *, size_t); static int iwm_set_default_calib(struct iwm_softc *, const void *); static void iwm_fw_info_free(struct iwm_fw_info *); -static int iwm_read_firmware(struct iwm_softc *, enum iwm_ucode_type); +static int iwm_read_firmware(struct iwm_softc *); static int iwm_alloc_fwmem(struct iwm_softc *); static int iwm_alloc_sched(struct iwm_softc *); static int iwm_alloc_kw(struct iwm_softc *); @@ -305,21 +305,22 @@ static int iwm_pcie_load_section(struct iwm_softc *, u static int iwm_pcie_load_firmware_chunk(struct iwm_softc *, uint32_t, bus_addr_t, uint32_t); static int iwm_pcie_load_cpu_sections_8000(struct iwm_softc *sc, - const struct iwm_fw_sects *, + const struct iwm_fw_img *, int, int *); static int iwm_pcie_load_cpu_sections(struct iwm_softc *, - const struct iwm_fw_sects *, + const struct iwm_fw_img *, int, int *); static int iwm_pcie_load_given_ucode_8000(struct iwm_softc *, - const struct iwm_fw_sects *); + const struct iwm_fw_img *); static int iwm_pcie_load_given_ucode(struct iwm_softc *, - const struct iwm_fw_sects *); -static int iwm_start_fw(struct iwm_softc *, const struct iwm_fw_sects *); + const struct iwm_fw_img *); +static int iwm_start_fw(struct iwm_softc *, const struct iwm_fw_img *); static int iwm_send_tx_ant_cfg(struct iwm_softc *, uint8_t); static int iwm_send_phy_cfg_cmd(struct iwm_softc *); static int iwm_mvm_load_ucode_wait_alive(struct iwm_softc *, enum iwm_ucode_type); static int iwm_run_init_mvm_ucode(struct iwm_softc *, int); +static int iwm_mvm_config_ltr(struct iwm_softc *sc); static int iwm_rx_addbuf(struct iwm_softc *, int, int); static int iwm_mvm_get_signal_strength(struct iwm_softc *, struct iwm_rx_phy_info *); @@ -349,11 +350,12 @@ static int iwm_raw_xmit(struct ieee80211_node *, struc const struct ieee80211_bpf_params *); static int iwm_mvm_update_quotas(struct iwm_softc *, struct iwm_vap *); static int iwm_auth(struct ieee80211vap *, struct iwm_softc *); -static int iwm_release(struct iwm_softc *, struct iwm_node *); static struct ieee80211_node * iwm_node_alloc(struct ieee80211vap *, const uint8_t[IEEE80211_ADDR_LEN]); -static void iwm_setrates(struct iwm_softc *, struct iwm_node *); +static uint8_t iwm_rate_from_ucode_rate(uint32_t); +static int iwm_rate2ridx(struct iwm_softc *, uint8_t); +static void iwm_setrates(struct iwm_softc *, struct iwm_node *, int); static int iwm_media_change(struct ifnet *); static int iwm_newstate(struct ieee80211vap *, enum ieee80211_state, int); static void iwm_endscan_cb(void *, int); @@ -424,7 +426,7 @@ static int iwm_firmware_store_section(struct iwm_softc *sc, enum iwm_ucode_type type, const uint8_t *data, size_t dlen) { - struct iwm_fw_sects *fws; + struct iwm_fw_img *fws; struct iwm_fw_desc *fwone; if (type >= IWM_UCODE_TYPE_MAX) @@ -432,11 +434,11 @@ iwm_firmware_store_section(struct iwm_softc *sc, if (dlen < sizeof(uint32_t)) return EINVAL; - fws = &sc->sc_fw.fw_sects[type]; + fws = &sc->sc_fw.img[type]; if (fws->fw_count >= IWM_UCODE_SECTION_MAX) return EINVAL; - fwone = &fws->fw_sect[fws->fw_count]; + fwone = &fws->sec[fws->fw_count]; /* first 32bit are device load offset */ memcpy(&fwone->offset, data, sizeof(uint32_t)); @@ -534,17 +536,16 @@ iwm_fw_info_free(struct iwm_fw_info *fw) { firmware_put(fw->fw_fp, FIRMWARE_UNLOAD); fw->fw_fp = NULL; - /* don't touch fw->fw_status */ - memset(fw->fw_sects, 0, sizeof(fw->fw_sects)); + memset(fw->img, 0, sizeof(fw->img)); } static int -iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode_type ucode_type) +iwm_read_firmware(struct iwm_softc *sc) { struct iwm_fw_info *fw = &sc->sc_fw; const struct iwm_tlv_ucode_header *uhdr; const struct iwm_ucode_tlv *tlv; - struct iwm_ucode_capabilities *capa = &sc->ucode_capa; + struct iwm_ucode_capabilities *capa = &sc->sc_fw.ucode_capa; enum iwm_ucode_tlv_type tlv_type; const struct firmware *fwp; const uint8_t *data; @@ -556,24 +557,11 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode int error = 0; size_t len; - if (fw->fw_status == IWM_FW_STATUS_DONE && - ucode_type != IWM_UCODE_INIT) - return 0; - - while (fw->fw_status == IWM_FW_STATUS_INPROGRESS) - msleep(&sc->sc_fw, &sc->sc_mtx, 0, "iwmfwp", 0); - fw->fw_status = IWM_FW_STATUS_INPROGRESS; - - if (fw->fw_fp != NULL) - iwm_fw_info_free(fw); - /* * Load firmware into driver memory. * fw_fp will be set. */ - IWM_UNLOCK(sc); fwp = firmware_get(sc->cfg->fw_name); - IWM_LOCK(sc); if (fwp == NULL) { device_printf(sc->sc_dev, "could not read firmware %s (error %d)\n", @@ -626,15 +614,14 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode goto parse_out; } len -= roundup2(tlv_len, 4); - data += sizeof(tlv) + roundup2(tlv_len, 4); + data += sizeof(*tlv) + roundup2(tlv_len, 4); switch ((int)tlv_type) { case IWM_UCODE_TLV_PROBE_MAX_LEN: if (tlv_len != sizeof(uint32_t)) { device_printf(sc->sc_dev, - "%s: PROBE_MAX_LEN (%d) != sizeof(uint32_t)\n", - __func__, - (int) tlv_len); + "%s: PROBE_MAX_LEN (%u) != sizeof(uint32_t)\n", + __func__, tlv_len); error = EINVAL; goto parse_out; } @@ -653,9 +640,8 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode case IWM_UCODE_TLV_PAN: if (tlv_len) { device_printf(sc->sc_dev, - "%s: IWM_UCODE_TLV_PAN: tlv_len (%d) > 0\n", - __func__, - (int) tlv_len); + "%s: IWM_UCODE_TLV_PAN: tlv_len (%u) > 0\n", + __func__, tlv_len); error = EINVAL; goto parse_out; } @@ -664,17 +650,15 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode case IWM_UCODE_TLV_FLAGS: if (tlv_len < sizeof(uint32_t)) { device_printf(sc->sc_dev, - "%s: IWM_UCODE_TLV_FLAGS: tlv_len (%d) < sizeof(uint32_t)\n", - __func__, - (int) tlv_len); + "%s: IWM_UCODE_TLV_FLAGS: tlv_len (%u) < sizeof(uint32_t)\n", + __func__, tlv_len); error = EINVAL; goto parse_out; } if (tlv_len % sizeof(uint32_t)) { device_printf(sc->sc_dev, - "%s: IWM_UCODE_TLV_FLAGS: tlv_len (%d) %% sizeof(uint32_t)\n", - __func__, - (int) tlv_len); + "%s: IWM_UCODE_TLV_FLAGS: tlv_len (%u) %% sizeof(uint32_t)\n", + __func__, tlv_len); error = EINVAL; goto parse_out; } @@ -696,27 +680,25 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode tlv_data, tlv_len)) != 0) { device_printf(sc->sc_dev, "%s: iwm_store_cscheme(): returned %d\n", - __func__, - error); + __func__, error); goto parse_out; } break; case IWM_UCODE_TLV_NUM_OF_CPU: if (tlv_len != sizeof(uint32_t)) { device_printf(sc->sc_dev, - "%s: IWM_UCODE_TLV_NUM_OF_CPU: tlv_len (%d) != sizeof(uint32_t)\n", - __func__, - (int) tlv_len); + "%s: IWM_UCODE_TLV_NUM_OF_CPU: tlv_len (%u) != sizeof(uint32_t)\n", + __func__, tlv_len); error = EINVAL; goto parse_out; } num_of_cpus = le32_to_cpup((const uint32_t *)tlv_data); if (num_of_cpus == 2) { - fw->fw_sects[IWM_UCODE_REGULAR].is_dual_cpus = + fw->img[IWM_UCODE_REGULAR].is_dual_cpus = TRUE; - fw->fw_sects[IWM_UCODE_INIT].is_dual_cpus = + fw->img[IWM_UCODE_INIT].is_dual_cpus = TRUE; - fw->fw_sects[IWM_UCODE_WOWLAN].is_dual_cpus = + fw->img[IWM_UCODE_WOWLAN].is_dual_cpus = TRUE; } else if ((num_of_cpus > 2) || (num_of_cpus < 1)) { device_printf(sc->sc_dev, @@ -731,8 +713,7 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode IWM_UCODE_REGULAR, tlv_data, tlv_len)) != 0) { device_printf(sc->sc_dev, "%s: IWM_UCODE_REGULAR: iwm_firmware_store_section() failed; %d\n", - __func__, - error); + __func__, error); goto parse_out; } break; @@ -741,8 +722,7 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode IWM_UCODE_INIT, tlv_data, tlv_len)) != 0) { device_printf(sc->sc_dev, "%s: IWM_UCODE_INIT: iwm_firmware_store_section() failed; %d\n", - __func__, - error); + __func__, error); goto parse_out; } break; @@ -751,26 +731,23 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode IWM_UCODE_WOWLAN, tlv_data, tlv_len)) != 0) { device_printf(sc->sc_dev, "%s: IWM_UCODE_WOWLAN: iwm_firmware_store_section() failed; %d\n", - __func__, - error); + __func__, error); goto parse_out; } break; case IWM_UCODE_TLV_DEF_CALIB: if (tlv_len != sizeof(struct iwm_tlv_calib_data)) { device_printf(sc->sc_dev, - "%s: IWM_UCODE_TLV_DEV_CALIB: tlv_len (%d) < sizeof(iwm_tlv_calib_data) (%d)\n", - __func__, - (int) tlv_len, - (int) sizeof(struct iwm_tlv_calib_data)); + "%s: IWM_UCODE_TLV_DEV_CALIB: tlv_len (%u) < sizeof(iwm_tlv_calib_data) (%zu)\n", + __func__, tlv_len, + sizeof(struct iwm_tlv_calib_data)); error = EINVAL; goto parse_out; } if ((error = iwm_set_default_calib(sc, tlv_data)) != 0) { device_printf(sc->sc_dev, "%s: iwm_set_default_calib() failed: %d\n", - __func__, - error); + __func__, error); goto parse_out; } break; @@ -778,9 +755,8 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode if (tlv_len != sizeof(uint32_t)) { error = EINVAL; device_printf(sc->sc_dev, - "%s: IWM_UCODE_TLV_PHY_SKU: tlv_len (%d) < sizeof(uint32_t)\n", - __func__, - (int) tlv_len); + "%s: IWM_UCODE_TLV_PHY_SKU: tlv_len (%u) < sizeof(uint32_t)\n", + __func__, tlv_len); goto parse_out; } sc->sc_fw.phy_config = @@ -855,10 +831,10 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode goto out; } - sc->sc_fw.fw_sects[IWM_UCODE_REGULAR].paging_mem_size = + sc->sc_fw.img[IWM_UCODE_REGULAR].paging_mem_size = paging_mem_size; usniffer_img = IWM_UCODE_REGULAR_USNIFFER; - sc->sc_fw.fw_sects[usniffer_img].paging_mem_size = + sc->sc_fw.img[usniffer_img].paging_mem_size = paging_mem_size; break; @@ -905,12 +881,9 @@ iwm_read_firmware(struct iwm_softc *sc, enum iwm_ucode out: if (error) { - fw->fw_status = IWM_FW_STATUS_NONE; if (fw->fw_fp != NULL) iwm_fw_info_free(fw); - } else - fw->fw_status = IWM_FW_STATUS_DONE; - wakeup(&sc->sc_fw); + } return error; } @@ -1289,6 +1262,8 @@ iwm_stop_device(struct iwm_softc *sc) iv->phy_ctxt = NULL; iv->is_uploaded = 0; } + sc->sc_firmware_state = 0; + sc->sc_flags &= ~IWM_FLAG_TE_ACTIVE; /* device going down, Stop using ICT table */ sc->sc_flags &= ~IWM_FLAG_USE_ICT; @@ -1910,8 +1885,6 @@ enum nvm_sku_bits { #define IWM_NVM_RF_CFG_TX_ANT_MSK_8000(x) ((x >> 24) & 0xF) #define IWM_NVM_RF_CFG_RX_ANT_MSK_8000(x) ((x >> 28) & 0xF) -#define DEFAULT_MAX_TX_POWER 16 - /** * enum iwm_nvm_channel_flags - channel flags in NVM * @IWM_NVM_CHANNEL_VALID: channel is usable for this SKU/geo @@ -2426,8 +2399,6 @@ static int iwm_pcie_load_firmware_chunk(struct iwm_softc *sc, uint32_t dst_addr, bus_addr_t phy_addr, uint32_t byte_cnt) { - int ret; - sc->sc_fw_chunk_done = 0; if (!iwm_nic_lock(sc)) @@ -2459,14 +2430,9 @@ iwm_pcie_load_firmware_chunk(struct iwm_softc *sc, uin iwm_nic_unlock(sc); /* wait up to 5s for this segment to load */ - ret = 0; - while (!sc->sc_fw_chunk_done) { - ret = msleep(&sc->sc_fw, &sc->sc_mtx, 0, "iwmfw", hz); - if (ret) - break; - } + msleep(&sc->sc_fw, &sc->sc_mtx, 0, "iwmfw", hz * 5); - if (ret != 0) { + if (!sc->sc_fw_chunk_done) { device_printf(sc->sc_dev, "fw chunk addr 0x%x len %d failed to load\n", dst_addr, byte_cnt); @@ -2478,7 +2444,7 @@ iwm_pcie_load_firmware_chunk(struct iwm_softc *sc, uin static int iwm_pcie_load_cpu_sections_8000(struct iwm_softc *sc, - const struct iwm_fw_sects *image, int cpu, int *first_ucode_section) + const struct iwm_fw_img *image, int cpu, int *first_ucode_section) { int shift_param; int i, ret = 0, sec_num = 0x1; @@ -2501,15 +2467,15 @@ iwm_pcie_load_cpu_sections_8000(struct iwm_softc *sc, * PAGING_SEPARATOR_SECTION delimiter - separate between * CPU2 non paged to CPU2 paging sec. */ - if (!image->fw_sect[i].data || - image->fw_sect[i].offset == IWM_CPU1_CPU2_SEPARATOR_SECTION || - image->fw_sect[i].offset == IWM_PAGING_SEPARATOR_SECTION) { + if (!image->sec[i].data || + image->sec[i].offset == IWM_CPU1_CPU2_SEPARATOR_SECTION || + image->sec[i].offset == IWM_PAGING_SEPARATOR_SECTION) { IWM_DPRINTF(sc, IWM_DEBUG_RESET, "Break since Data not valid or Empty section, sec = %d\n", i); break; } - ret = iwm_pcie_load_section(sc, i, &image->fw_sect[i]); + ret = iwm_pcie_load_section(sc, i, &image->sec[i]); if (ret) return ret; @@ -2540,7 +2506,7 @@ iwm_pcie_load_cpu_sections_8000(struct iwm_softc *sc, static int iwm_pcie_load_cpu_sections(struct iwm_softc *sc, - const struct iwm_fw_sects *image, int cpu, int *first_ucode_section) + const struct iwm_fw_img *image, int cpu, int *first_ucode_section) { int shift_param; int i, ret = 0; @@ -2563,16 +2529,16 @@ iwm_pcie_load_cpu_sections(struct iwm_softc *sc, * PAGING_SEPARATOR_SECTION delimiter - separate between * CPU2 non paged to CPU2 paging sec. */ - if (!image->fw_sect[i].data || - image->fw_sect[i].offset == IWM_CPU1_CPU2_SEPARATOR_SECTION || - image->fw_sect[i].offset == IWM_PAGING_SEPARATOR_SECTION) { + if (!image->sec[i].data || + image->sec[i].offset == IWM_CPU1_CPU2_SEPARATOR_SECTION || + image->sec[i].offset == IWM_PAGING_SEPARATOR_SECTION) { IWM_DPRINTF(sc, IWM_DEBUG_RESET, "Break since Data not valid or Empty section, sec = %d\n", i); break; } - ret = iwm_pcie_load_section(sc, i, &image->fw_sect[i]); + ret = iwm_pcie_load_section(sc, i, &image->sec[i]); if (ret) return ret; } @@ -2584,8 +2550,7 @@ iwm_pcie_load_cpu_sections(struct iwm_softc *sc, } static int -iwm_pcie_load_given_ucode(struct iwm_softc *sc, - const struct iwm_fw_sects *image) +iwm_pcie_load_given_ucode(struct iwm_softc *sc, const struct iwm_fw_img *image) { int ret = 0; int first_ucode_section; @@ -2624,7 +2589,7 @@ iwm_pcie_load_given_ucode(struct iwm_softc *sc, int iwm_pcie_load_given_ucode_8000(struct iwm_softc *sc, - const struct iwm_fw_sects *image) + const struct iwm_fw_img *image) { int ret = 0; int first_ucode_section; @@ -2662,8 +2627,7 @@ iwm_enable_fw_load_int(struct iwm_softc *sc) /* XXX Add proper rfkill support code */ static int -iwm_start_fw(struct iwm_softc *sc, - const struct iwm_fw_sects *fw) +iwm_start_fw(struct iwm_softc *sc, const struct iwm_fw_img *fw) { int ret; @@ -2754,75 +2718,48 @@ static int iwm_alive_fn(struct iwm_softc *sc, struct iwm_rx_packet *pkt, void *data) { struct iwm_mvm_alive_data *alive_data = data; - struct iwm_mvm_alive_resp_ver1 *palive1; - struct iwm_mvm_alive_resp_ver2 *palive2; + struct iwm_mvm_alive_resp_v3 *palive3; struct iwm_mvm_alive_resp *palive; + struct iwm_umac_alive *umac; + struct iwm_lmac_alive *lmac1; + struct iwm_lmac_alive *lmac2 = NULL; + uint16_t status; - if (iwm_rx_packet_payload_len(pkt) == sizeof(*palive1)) { - palive1 = (void *)pkt->data; - - sc->support_umac_log = FALSE; - sc->error_event_table = - le32toh(palive1->error_event_table_ptr); - sc->log_event_table = - le32toh(palive1->log_event_table_ptr); - alive_data->scd_base_addr = le32toh(palive1->scd_base_ptr); - - alive_data->valid = le16toh(palive1->status) == - IWM_ALIVE_STATUS_OK; - IWM_DPRINTF(sc, IWM_DEBUG_RESET, - "Alive VER1 ucode status 0x%04x revision 0x%01X 0x%01X flags 0x%01X\n", - le16toh(palive1->status), palive1->ver_type, - palive1->ver_subtype, palive1->flags); - } else if (iwm_rx_packet_payload_len(pkt) == sizeof(*palive2)) { - palive2 = (void *)pkt->data; - sc->error_event_table = - le32toh(palive2->error_event_table_ptr); - sc->log_event_table = - le32toh(palive2->log_event_table_ptr); - alive_data->scd_base_addr = le32toh(palive2->scd_base_ptr); - sc->umac_error_event_table = - le32toh(palive2->error_info_addr); - - alive_data->valid = le16toh(palive2->status) == - IWM_ALIVE_STATUS_OK; - if (sc->umac_error_event_table) - sc->support_umac_log = TRUE; - - IWM_DPRINTF(sc, IWM_DEBUG_RESET, - "Alive VER2 ucode status 0x%04x revision 0x%01X 0x%01X flags 0x%01X\n", - le16toh(palive2->status), palive2->ver_type, - palive2->ver_subtype, palive2->flags); - - IWM_DPRINTF(sc, IWM_DEBUG_RESET, - "UMAC version: Major - 0x%x, Minor - 0x%x\n", - palive2->umac_major, palive2->umac_minor); - } else if (iwm_rx_packet_payload_len(pkt) == sizeof(*palive)) { + if (iwm_rx_packet_payload_len(pkt) == sizeof(*palive)) { palive = (void *)pkt->data; + umac = &palive->umac_data; + lmac1 = &palive->lmac_data[0]; + lmac2 = &palive->lmac_data[1]; + status = le16toh(palive->status); + } else { + palive3 = (void *)pkt->data; + umac = &palive3->umac_data; + lmac1 = &palive3->lmac_data; + status = le16toh(palive3->status); + } - sc->error_event_table = - le32toh(palive->error_event_table_ptr); - sc->log_event_table = - le32toh(palive->log_event_table_ptr); - alive_data->scd_base_addr = le32toh(palive->scd_base_ptr); - sc->umac_error_event_table = - le32toh(palive->error_info_addr); + sc->error_event_table[0] = le32toh(lmac1->error_event_table_ptr); + if (lmac2) + sc->error_event_table[1] = + le32toh(lmac2->error_event_table_ptr); + sc->log_event_table = le32toh(lmac1->log_event_table_ptr); + sc->umac_error_event_table = le32toh(umac->error_info_addr); + alive_data->scd_base_addr = le32toh(lmac1->scd_base_ptr); + alive_data->valid = status == IWM_ALIVE_STATUS_OK; + if (sc->umac_error_event_table) + sc->support_umac_log = TRUE; - alive_data->valid = le16toh(palive->status) == - IWM_ALIVE_STATUS_OK; - if (sc->umac_error_event_table) - sc->support_umac_log = TRUE; + IWM_DPRINTF(sc, IWM_DEBUG_FW, + "Alive ucode status 0x%04x revision 0x%01X 0x%01X\n", + status, lmac1->ver_type, lmac1->ver_subtype); - IWM_DPRINTF(sc, IWM_DEBUG_RESET, - "Alive VER3 ucode status 0x%04x revision 0x%01X 0x%01X flags 0x%01X\n", - le16toh(palive->status), palive->ver_type, - palive->ver_subtype, palive->flags); + if (lmac2) + IWM_DPRINTF(sc, IWM_DEBUG_FW, "Alive ucode CDB\n"); - IWM_DPRINTF(sc, IWM_DEBUG_RESET, - "UMAC version: Major - 0x%x, Minor - 0x%x\n", - le32toh(palive->umac_major), - le32toh(palive->umac_minor)); - } + IWM_DPRINTF(sc, IWM_DEBUG_FW, + "UMAC version: Major - 0x%x, Minor - 0x%x\n", + le32toh(umac->umac_major), + le32toh(umac->umac_minor)); return TRUE; } @@ -2855,17 +2792,12 @@ iwm_mvm_load_ucode_wait_alive(struct iwm_softc *sc, { struct iwm_notification_wait alive_wait; struct iwm_mvm_alive_data alive_data; - const struct iwm_fw_sects *fw; + const struct iwm_fw_img *fw; enum iwm_ucode_type old_type = sc->cur_ucode; int error; static const uint16_t alive_cmd[] = { IWM_MVM_ALIVE }; - if ((error = iwm_read_firmware(sc, ucode_type)) != 0) { - device_printf(sc->sc_dev, "iwm_read_firmware: failed %d\n", - error); - return error; - } - fw = &sc->sc_fw.fw_sects[ucode_type]; + fw = &sc->sc_fw.img[ucode_type]; sc->cur_ucode = ucode_type; sc->ucode_loaded = FALSE; @@ -3038,6 +2970,19 @@ out: return ret; } +static int +iwm_mvm_config_ltr(struct iwm_softc *sc) +{ + struct iwm_ltr_config_cmd cmd = { + .flags = htole32(IWM_LTR_CFG_FLAG_FEATURE_ENABLE), + }; + + if (!sc->sc_ltr_enabled) + return 0; + + return iwm_mvm_send_cmd_pdu(sc, IWM_LTR_CONFIG, 0, sizeof(cmd), &cmd); +} + /* * receive side */ @@ -3319,7 +3264,11 @@ iwm_mvm_rx_tx_cmd_single(struct iwm_softc *sc, struct struct iwm_mvm_tx_resp *tx_resp = (void *)pkt->data; struct ieee80211_ratectl_tx_status *txs = &sc->sc_txs; struct ieee80211_node *ni = &in->in_ni; + struct ieee80211vap *vap = ni->ni_vap; int status = le16toh(tx_resp->status.status) & IWM_TX_STATUS_MSK; + int new_rate, cur_rate = vap->iv_bss->ni_txrate; + boolean_t rate_matched; + uint8_t tx_resp_rate; KASSERT(tx_resp->frame_count == 1, ("too many frames")); @@ -3335,6 +3284,17 @@ iwm_mvm_rx_tx_cmd_single(struct iwm_softc *sc, struct le32toh(tx_resp->initial_rate), (int) le16toh(tx_resp->wireless_media_time)); + tx_resp_rate = iwm_rate_from_ucode_rate(le32toh(tx_resp->initial_rate)); + + /* For rate control, ignore frames sent at different initial rate */ + rate_matched = (tx_resp_rate != 0 && tx_resp_rate == cur_rate); + + if (tx_resp_rate != 0 && cur_rate != 0 && !rate_matched) { + IWM_DPRINTF(sc, IWM_DEBUG_TXRATE, + "tx_resp_rate doesn't match ni_txrate (tx_resp_rate=%u " + "ni_txrate=%d)\n", tx_resp_rate, cur_rate); + } + txs->flags = IEEE80211_RATECTL_STATUS_SHORT_RETRY | IEEE80211_RATECTL_STATUS_LONG_RETRY; txs->short_retries = tx_resp->failure_rts; @@ -3358,8 +3318,19 @@ iwm_mvm_rx_tx_cmd_single(struct iwm_softc *sc, struct } else { txs->status = IEEE80211_RATECTL_TX_SUCCESS; } - ieee80211_ratectl_tx_complete(ni, txs); + if (rate_matched) { + ieee80211_ratectl_tx_complete(ni, txs); + + int rix = ieee80211_ratectl_rate(vap->iv_bss, NULL, 0); + new_rate = vap->iv_bss->ni_txrate; + if (new_rate != 0 && new_rate != cur_rate) { + struct iwm_node *in = IWM_NODE(vap->iv_bss); + iwm_setrates(sc, in, rix); + iwm_mvm_send_lq_cmd(sc, &in->in_lq, FALSE); + } + } + return (txs->status != IEEE80211_RATECTL_TX_SUCCESS); } @@ -3484,38 +3455,7 @@ iwm_update_sched(struct iwm_softc *sc, int qid, int id } #endif -/* - * Take an 802.11 (non-n) rate, find the relevant rate - * table entry. return the index into in_ridx[]. - * - * The caller then uses that index back into in_ridx - * to figure out the rate index programmed /into/ - * the firmware for this given node. - */ static int -iwm_tx_rateidx_lookup(struct iwm_softc *sc, struct iwm_node *in, - uint8_t rate) -{ - int i; - uint8_t r; - - for (i = 0; i < nitems(in->in_ridx); i++) { - r = iwm_rates[in->in_ridx[i]].rate; - if (rate == r) - return (i); - } - - IWM_DPRINTF(sc, IWM_DEBUG_XMIT | IWM_DEBUG_TXRATE, - "%s: couldn't find an entry for rate=%d\n", - __func__, - rate); - - /* XXX Return the first */ - /* XXX TODO: have it return the /lowest/ */ - return (0); -} - -static int iwm_tx_rateidx_global_lookup(struct iwm_softc *sc, uint8_t rate) { int i; @@ -3567,22 +3507,15 @@ iwm_tx_fill_cmd(struct iwm_softc *sc, struct iwm_node IWM_DPRINTF(sc, IWM_DEBUG_TXRATE, "%s: FIXED_RATE (%d)\n", __func__, tp->ucastrate); } else { - int i; - /* for data frames, use RS table */ IWM_DPRINTF(sc, IWM_DEBUG_TXRATE, "%s: DATA\n", __func__); - /* XXX pass pktlen */ - (void) ieee80211_ratectl_rate(ni, NULL, 0); - i = iwm_tx_rateidx_lookup(sc, in, ni->ni_txrate); - ridx = in->in_ridx[i]; + ridx = iwm_rate2ridx(sc, ni->ni_txrate); + if (ridx == -1) + ridx = 0; /* This is the index into the programmed table */ - tx->initial_rate_index = i; + tx->initial_rate_index = 0; tx->tx_flags |= htole32(IWM_TX_CMD_FLG_STA_RATE); - - IWM_DPRINTF(sc, IWM_DEBUG_XMIT | IWM_DEBUG_TXRATE, - "%s: start with i=%d, txrate %d\n", - __func__, i, iwm_rates[ridx].rate); } IWM_DPRINTF(sc, IWM_DEBUG_XMIT | IWM_DEBUG_TXRATE, @@ -3849,6 +3782,8 @@ iwm_raw_xmit(struct ieee80211_node *ni, struct mbuf *m } else { error = iwm_tx(sc, m, ni, 0); } + if (sc->sc_tx_timer == 0) + callout_reset(&sc->sc_watchdog_to, hz, iwm_watchdog, sc); sc->sc_tx_timer = 5; IWM_UNLOCK(sc); @@ -3987,8 +3922,11 @@ iwm_auth(struct ieee80211vap *vap, struct iwm_softc *s __func__, vap, ni); + IWM_DPRINTF(sc, IWM_DEBUG_STATE, "%s: Current node bssid: %s\n", + __func__, ether_sprintf(ni->ni_bssid)); in->in_assoc = 0; + iv->iv_auth = 1; /* * Firmware bug - it'll crash if the beacon interval is less @@ -4040,6 +3978,7 @@ iwm_auth(struct ieee80211vap *vap, struct iwm_softc *s goto out; } } + sc->sc_firmware_state = 1; if ((error = iwm_mvm_phy_ctxt_changed(sc, &sc->sc_phyctxt[0], in->in_ni.ni_chan, 1, 1)) != 0) { @@ -4054,6 +3993,7 @@ iwm_auth(struct ieee80211vap *vap, struct iwm_softc *s "%s: binding update cmd\n", __func__); goto out; } + sc->sc_firmware_state = 2; /* * Authentication becomes unreliable when powersaving is left enabled * here. Powersaving will be activated again when association has @@ -4073,6 +4013,7 @@ iwm_auth(struct ieee80211vap *vap, struct iwm_softc *s "%s: failed to add sta\n", __func__); goto out; } + sc->sc_firmware_state = 3; /* * Prevent the FW from wandering off channel during association @@ -4080,86 +4021,16 @@ iwm_auth(struct ieee80211vap *vap, struct iwm_softc *s */ /* XXX duration is in units of TU, not MS */ duration = IWM_MVM_TE_SESSION_PROTECTION_MAX_TIME_MS; - iwm_mvm_protect_session(sc, iv, duration, 500 /* XXX magic number */); - DELAY(100); + iwm_mvm_protect_session(sc, iv, duration, 500 /* XXX magic number */, TRUE); error = 0; out: + if (error != 0) + iv->iv_auth = 0; ieee80211_free_node(ni); return (error); } -static int -iwm_release(struct iwm_softc *sc, struct iwm_node *in) -{ - uint32_t tfd_msk; - - /* - * Ok, so *technically* the proper set of calls for going - * from RUN back to SCAN is: - * - * iwm_mvm_power_mac_disable(sc, in); - * iwm_mvm_mac_ctxt_changed(sc, vap); - * iwm_mvm_rm_sta(sc, in); - * iwm_mvm_update_quotas(sc, NULL); - * iwm_mvm_mac_ctxt_changed(sc, in); - * iwm_mvm_binding_remove_vif(sc, IWM_VAP(in->in_ni.ni_vap)); - * iwm_mvm_mac_ctxt_remove(sc, in); - * - * However, that freezes the device not matter which permutations - * and modifications are attempted. Obviously, this driver is missing - * something since it works in the Linux driver, but figuring out what - * is missing is a little more complicated. Now, since we're going - * back to nothing anyway, we'll just do a complete device reset. - * Up your's, device! - */ - /* - * Just using 0xf for the queues mask is fine as long as we only - * get here from RUN state. - */ - tfd_msk = 0xf; - iwm_xmit_queue_drain(sc); - iwm_mvm_flush_tx_path(sc, tfd_msk, IWM_CMD_SYNC); - /* - * We seem to get away with just synchronously sending the - * IWM_TXPATH_FLUSH command. - */ -// iwm_trans_wait_tx_queue_empty(sc, tfd_msk); - iwm_stop_device(sc); - iwm_init_hw(sc); - if (in) - in->in_assoc = 0; - return 0; - -#if 0 - int error; - - iwm_mvm_power_mac_disable(sc, in); - - if ((error = iwm_mvm_mac_ctxt_changed(sc, vap)) != 0) { - device_printf(sc->sc_dev, "mac ctxt change fail 1 %d\n", error); - return error; - } - - if ((error = iwm_mvm_rm_sta(sc, in)) != 0) { - device_printf(sc->sc_dev, "sta remove fail %d\n", error); - return error; - } - error = iwm_mvm_rm_sta(sc, in); - in->in_assoc = 0; - iwm_mvm_update_quotas(sc, NULL); - if ((error = iwm_mvm_mac_ctxt_changed(sc, vap)) != 0) { - device_printf(sc->sc_dev, "mac ctxt change fail 2 %d\n", error); - return error; - } - iwm_mvm_binding_remove_vif(sc, IWM_VAP(in->in_ni.ni_vap)); - - iwm_mvm_mac_ctxt_remove(sc, in); - - return error; -#endif -} - static struct ieee80211_node * iwm_node_alloc(struct ieee80211vap *vap, const uint8_t mac[IEEE80211_ADDR_LEN]) { @@ -4167,6 +4038,19 @@ iwm_node_alloc(struct ieee80211vap *vap, const uint8_t M_NOWAIT | M_ZERO); } +static uint8_t +iwm_rate_from_ucode_rate(uint32_t rate_n_flags) +{ + uint8_t plcp = rate_n_flags & 0xff; + int i; + + for (i = 0; i <= IWM_RIDX_MAX; i++) { + if (iwm_rates[i].plcp == plcp) + return iwm_rates[i].rate; + } + return 0; +} + uint8_t iwm_ridx2rate(struct ieee80211_rateset *rs, int ridx) { @@ -4182,15 +4066,36 @@ iwm_ridx2rate(struct ieee80211_rateset *rs, int ridx) return 0; } +static int +iwm_rate2ridx(struct iwm_softc *sc, uint8_t rate) +{ + int i; + + for (i = 0; i <= IWM_RIDX_MAX; i++) { + if (iwm_rates[i].rate == rate) + return i; + } + + device_printf(sc->sc_dev, + "%s: WARNING: device rate for %u not found!\n", + __func__, rate); + + return -1; +} + + static void -iwm_setrates(struct iwm_softc *sc, struct iwm_node *in) +iwm_setrates(struct iwm_softc *sc, struct iwm_node *in, int rix) { struct ieee80211_node *ni = &in->in_ni; struct iwm_lq_cmd *lq = &in->in_lq; - int nrates = ni->ni_rates.rs_nrates; + struct ieee80211_rateset *rs = &ni->ni_rates; + int nrates = rs->rs_nrates; int i, ridx, tab = 0; // int txant = 0; + KASSERT(rix >= 0 && rix < nrates, ("invalid rix")); + if (nrates > nitems(lq->rs_table)) { device_printf(sc->sc_dev, "%s: node supports %d rates, driver handles " @@ -4202,45 +4107,11 @@ iwm_setrates(struct iwm_softc *sc, struct iwm_node *in "%s: node supports 0 rates, odd!\n", __func__); return; } + nrates = imin(rix + 1, nrates); - /* - * XXX .. and most of iwm_node is not initialised explicitly; - * it's all just 0x0 passed to the firmware. - */ - - /* first figure out which rates we should support */ - /* XXX TODO: this isn't 11n aware /at all/ */ - memset(&in->in_ridx, -1, sizeof(in->in_ridx)); IWM_DPRINTF(sc, IWM_DEBUG_TXRATE, "%s: nrates=%d\n", __func__, nrates); - /* - * Loop over nrates and populate in_ridx from the highest - * rate to the lowest rate. Remember, in_ridx[] has - * IEEE80211_RATE_MAXSIZE entries! - */ - for (i = 0; i < min(nrates, IEEE80211_RATE_MAXSIZE); i++) { - int rate = ni->ni_rates.rs_rates[(nrates - 1) - i] & IEEE80211_RATE_VAL; - - /* Map 802.11 rate to HW rate index. */ - for (ridx = 0; ridx <= IWM_RIDX_MAX; ridx++) - if (iwm_rates[ridx].rate == rate) - break; - if (ridx > IWM_RIDX_MAX) { - device_printf(sc->sc_dev, - "%s: WARNING: device rate for %d not found!\n", - __func__, rate); - } else { - IWM_DPRINTF(sc, IWM_DEBUG_TXRATE, - "%s: rate: i: %d, rate=%d, ridx=%d\n", - __func__, - i, - rate, - ridx); - in->in_ridx[i] = ridx; - } - } - /* then construct a lq_cmd based on those */ memset(lq, 0, sizeof(*lq)); lq->sta_id = IWM_STATION_ID; @@ -4264,13 +4135,15 @@ iwm_setrates(struct iwm_softc *sc, struct iwm_node *in * Note that we add the rates in the highest rate first * (opposite of ni_rates). */ - /* - * XXX TODO: this should be looping over the min of nrates - * and LQ_MAX_RETRY_NUM. Sigh. - */ for (i = 0; i < nrates; i++) { + int rate = rs->rs_rates[rix - i] & IEEE80211_RATE_VAL; int nextant; + /* Map 802.11 rate to HW rate index. */ + ridx = iwm_rate2ridx(sc, rate); + if (ridx == -1) + continue; + #if 0 if (txant == 0) txant = iwm_mvm_get_valid_tx_ant(sc); @@ -4279,12 +4152,6 @@ iwm_setrates(struct iwm_softc *sc, struct iwm_node *in #else nextant = iwm_mvm_get_valid_tx_ant(sc); #endif - /* - * Map the rate id into a rate index into - * our hardware table containing the - * configuration to use for this rate. - */ - ridx = in->in_ridx[i]; tab = iwm_rates[ridx].plcp; tab |= nextant << IWM_RATE_MCS_ANT_POS; if (IWM_RIDX_IS_CCK(ridx)) @@ -4322,7 +4189,101 @@ iwm_media_change(struct ifnet *ifp) return error; } +static void +iwm_bring_down_firmware(struct iwm_softc *sc, struct ieee80211vap *vap) +{ + struct iwm_vap *ivp = IWM_VAP(vap); + int error; + /* Avoid Tx watchdog triggering, when transfers get dropped here. */ + sc->sc_tx_timer = 0; + + ivp->iv_auth = 0; + if (sc->sc_firmware_state == 3) { + iwm_xmit_queue_drain(sc); +// iwm_mvm_flush_tx_path(sc, 0xf, IWM_CMD_SYNC); + error = iwm_mvm_rm_sta(sc, vap, TRUE); + if (error) { + device_printf(sc->sc_dev, + "%s: Failed to remove station: %d\n", + __func__, error); + } + } + if (sc->sc_firmware_state == 3) { *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Mon Apr 8 18:16:50 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C728515642CE; Mon, 8 Apr 2019 18:16:50 +0000 (UTC) (envelope-from kib@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 6984C85161; Mon, 8 Apr 2019 18:16:50 +0000 (UTC) (envelope-from kib@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 42BA927101; Mon, 8 Apr 2019 18:16:50 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x38IGoc0049302; Mon, 8 Apr 2019 18:16:50 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38IGopn049301; Mon, 8 Apr 2019 18:16:50 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904081816.x38IGopn049301@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Mon, 8 Apr 2019 18:16:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346038 - head/sbin/mount X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sbin/mount X-SVN-Commit-Revision: 346038 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6984C85161 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.979,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 18:16:51 -0000 Author: kib Date: Mon Apr 8 18:16:49 2019 New Revision: 346038 URL: https://svnweb.freebsd.org/changeset/base/346038 Log: Exercise some care before sending SIGHUP to mountd. Reviewed by: antoine, emaste, oshogbo Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D19847 Modified: head/sbin/mount/mount.c Modified: head/sbin/mount/mount.c ============================================================================== --- head/sbin/mount/mount.c Mon Apr 8 18:15:10 2019 (r346037) +++ head/sbin/mount/mount.c Mon Apr 8 18:16:49 2019 (r346038) @@ -227,6 +227,7 @@ restart_mountd(void) struct pidfh *pfh; pid_t mountdpid; + mountdpid = 0; pfh = pidfile_open(_PATH_MOUNTDPID, 0600, &mountdpid); if (pfh != NULL) { /* Mountd is not running. */ @@ -237,6 +238,16 @@ restart_mountd(void) /* Cannot open pidfile for some reason. */ return; } + + /* + * Refuse to send broadcast or group signals, this has + * happened due to the bugs in pidfile(3). + */ + if (mountdpid <= 0) { + warnx("mountd pid %d, refusing to send SIGHUP", mountdpid); + return; + } + /* We have mountd(8) PID in mountdpid varible, let's signal it. */ if (kill(mountdpid, SIGHUP) == -1) err(1, "signal mountd"); From owner-svn-src-all@freebsd.org Mon Apr 8 18:25:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8BA9015645B1; Mon, 8 Apr 2019 18:25:15 +0000 (UTC) (envelope-from imp@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 2E50C85625; Mon, 8 Apr 2019 18:25:15 +0000 (UTC) (envelope-from imp@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 133A0272B0; Mon, 8 Apr 2019 18:25:15 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x38IPEBe054312; Mon, 8 Apr 2019 18:25:14 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38IPEpV054311; Mon, 8 Apr 2019 18:25:14 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201904081825.x38IPEpV054311@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Mon, 8 Apr 2019 18:25:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346039 - head/sys/conf X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/sys/conf X-SVN-Commit-Revision: 346039 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2E50C85625 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.980,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 18:25:15 -0000 Author: imp Date: Mon Apr 8 18:25:14 2019 New Revision: 346039 URL: https://svnweb.freebsd.org/changeset/base/346039 Log: Style only change: Prefer $() to `` $() is more modern and also nests. Convert the mix of styles to using only the former (although the latter was more common). It's the more dominant style in other shell scripts these days as well. Differential Revision: https://reviews.freebsd.org/D19840 Modified: head/sys/conf/newvers.sh Modified: head/sys/conf/newvers.sh ============================================================================== --- head/sys/conf/newvers.sh Mon Apr 8 18:16:49 2019 (r346038) +++ head/sys/conf/newvers.sh Mon Apr 8 18:25:14 2019 (r346039) @@ -120,12 +120,12 @@ b=share/examples/etc/bsd-style-copyright for bsd_copyright in ../$b ../../$b ../../../$b /usr/src/$b /usr/$b do if [ -r "$bsd_copyright" ]; then - COPYRIGHT=`sed \ + COPYRIGHT=$(sed \ -e "s/\[year\]/1992-$year/" \ -e 's/\[your name here\]\.* /The FreeBSD Project./' \ -e 's/\[your name\]\.*/The FreeBSD Project./' \ -e '/\[id for your version control system, if any\]/d' \ - $bsd_copyright` + $bsd_copyright) break fi done @@ -153,19 +153,19 @@ then fi touch version -v=`cat version` +v=$(cat version) u=${USER:-root} -d=`pwd` -h=${HOSTNAME:-`hostname`} +d=$(pwd) +h=${HOSTNAME:-$(hostname)} if [ -n "$SOURCE_DATE_EPOCH" ]; then - if ! t=`date -r $SOURCE_DATE_EPOCH 2>/dev/null`; then + if ! t=$(date -r $SOURCE_DATE_EPOCH 2>/dev/null); then echo "Invalid SOURCE_DATE_EPOCH" >&2 exit 1 fi else - t=`date` + t=$(date) fi -i=`${MAKE:-make} -V KERN_IDENT` +i=$(${MAKE:-make} -V KERN_IDENT) compiler_v=$($(${MAKE:-make} -V CC) -v 2>&1 | grep -w 'version') for dir in /usr/bin /usr/local/bin; do @@ -212,7 +212,7 @@ if findvcs .hg; then fi if [ -n "$svnversion" ] ; then - svn=`cd ${SYSDIR} && $svnversion 2>/dev/null` + svn=$(cd ${SYSDIR} && $svnversion 2>/dev/null) case "$svn" in [0-9]*[MSP]|*:*) svn=" r${svn}" @@ -228,8 +228,8 @@ if [ -n "$svnversion" ] ; then fi if [ -n "$git_cmd" ] ; then - git=`$git_cmd rev-parse --verify --short HEAD 2>/dev/null` - gitsvn=`$git_cmd svn find-rev $git 2>/dev/null` + git=$($git_cmd rev-parse --verify --short HEAD 2>/dev/null) + gitsvn=$($git_cmd svn find-rev $git 2>/dev/null) if [ -n "$gitsvn" ] ; then svn=" r${gitsvn}" git="=${git}" @@ -238,13 +238,13 @@ if [ -n "$git_cmd" ] ; then # We assume that if a tree is more than 10k commits out-of-sync # with FreeBSD, it has forked the the OS and the SVN rev no # longer matters. - gitsvn=`$git_cmd log -n 10000 | + gitsvn=$($git_cmd log -n 10000 | grep '^ git-svn-id:' | head -1 | \ - sed -n 's/^.*@\([0-9][0-9]*\).*$/\1/p'` + sed -n 's/^.*@\([0-9][0-9]*\).*$/\1/p') if [ -z "$gitsvn" ] ; then - gitsvn=`$git_cmd log -n 10000 --format='format:%N' | \ + gitsvn=$($git_cmd log -n 10000 --format='format:%N' | \ grep '^svn ' | head -1 | \ - sed -n 's/^.*revision=\([0-9][0-9]*\).*$/\1/p'` + sed -n 's/^.*revision=\([0-9][0-9]*\).*$/\1/p') fi if [ -n "$gitsvn" ] ; then svn=" r${gitsvn}" @@ -253,7 +253,7 @@ if [ -n "$git_cmd" ] ; then git=" ${git}" fi fi - git_b=`$git_cmd rev-parse --abbrev-ref HEAD` + git_b=$($git_cmd rev-parse --abbrev-ref HEAD) if [ -n "$git_b" ] ; then git="${git}(${git_b})" fi @@ -264,9 +264,9 @@ if [ -n "$git_cmd" ] ; then fi if [ -n "$hg_cmd" ] ; then - hg=`$hg_cmd id 2>/dev/null` - hgsvn=`$hg_cmd svn info 2>/dev/null | \ - awk -F': ' '/Revision/ { print $2 }'` + hg=$($hg_cmd id 2>/dev/null) + hgsvn=$($hg_cmd svn info 2>/dev/null | \ + awk -F': ' '/Revision/ { print $2 }') if [ -n "$hgsvn" ] ; then svn=" r${hgsvn}" fi From owner-svn-src-all@freebsd.org Mon Apr 8 18:34:45 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2489715649F8; Mon, 8 Apr 2019 18:34:45 +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 BAD1785D4D; Mon, 8 Apr 2019 18:34: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 A6B6D27475; Mon, 8 Apr 2019 18:34: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 x38IYi1H059876; Mon, 8 Apr 2019 18:34:44 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38IYiTD059874; Mon, 8 Apr 2019 18:34:44 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081834.x38IYiTD059874@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 18:34:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346040 - in stable/12/lib/libc/tests/stdlib: . dynthr_mod X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable/12/lib/libc/tests/stdlib: . dynthr_mod X-SVN-Commit-Revision: 346040 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BAD1785D4D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.979,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 18:34:45 -0000 Author: kevans Date: Mon Apr 8 18:34:43 2019 New Revision: 346040 URL: https://svnweb.freebsd.org/changeset/base/346040 Log: MFC r343599: libc/tests: Add test case for jemalloc/libthr bug fixed/r343566 Added: stable/12/lib/libc/tests/stdlib/dynthr_mod/ - copied from r343599, head/lib/libc/tests/stdlib/dynthr_mod/ stable/12/lib/libc/tests/stdlib/dynthr_test.c - copied unchanged from r343599, head/lib/libc/tests/stdlib/dynthr_test.c Modified: stable/12/lib/libc/tests/stdlib/Makefile Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libc/tests/stdlib/Makefile ============================================================================== --- stable/12/lib/libc/tests/stdlib/Makefile Mon Apr 8 18:25:14 2019 (r346039) +++ stable/12/lib/libc/tests/stdlib/Makefile Mon Apr 8 18:34:43 2019 (r346040) @@ -2,6 +2,7 @@ .include +ATF_TESTS_C+= dynthr_test ATF_TESTS_C+= heapsort_test ATF_TESTS_C+= mergesort_test ATF_TESTS_C+= qsort_test @@ -60,5 +61,7 @@ LIBADD.${t}+= netbsd util .endfor LIBADD.strtod_test+= m + +SUBDIR+= dynthr_mod .include Copied: stable/12/lib/libc/tests/stdlib/dynthr_test.c (from r343599, head/lib/libc/tests/stdlib/dynthr_test.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libc/tests/stdlib/dynthr_test.c Mon Apr 8 18:34:43 2019 (r346040, copy of r343599, head/lib/libc/tests/stdlib/dynthr_test.c) @@ -0,0 +1,93 @@ +/* + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (C) 2019 Andrew Gierth + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * Though this file is initially distributed under the 2-clause BSD license, + * the author grants permission for its redistribution under alternative + * licenses as set forth at . + * This paragraph and the RELICENSE.txt file are not part of the license and + * may be omitted in redistributions. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include + +#include + +typedef void (modfunc_t)(int op); + +/* + * Minimal test case for PR 235158; mutual dependencies between jemalloc and + * libthr causing issues in thread creation. Specifically to this case, libthr + * uses calloc to initialize pthread mutexes, and jemalloc uses pthread mutexes. + * + * Deferred initialization provided by jemalloc proved to be fragile, causing + * issues like in the referenced PR where thread creation in a shared object + * loaded via dlopen(3) would stall unless the calling application also linked + * against pthread. + */ +ATF_TC(maintc); +ATF_TC_HEAD(maintc, tc) +{ + + atf_tc_set_md_var(tc, "timeout", "3"); +} + +ATF_TC_BODY(maintc, tc) +{ + char *libpath; + modfunc_t *func; + void *mod_handle; + const char *srcdir; + dlfunc_t rawfunc; + + srcdir = atf_tc_get_config_var(tc, "srcdir"); + if (asprintf(&libpath, "%s/dynthr_mod.so", srcdir) < 0) + atf_tc_fail("failed to construct path to libthr"); + mod_handle = dlopen(libpath, RTLD_LOCAL); + free(libpath); + if (mod_handle == NULL) + atf_tc_fail("failed to open dynthr_mod.so: %s", dlerror()); + rawfunc = dlfunc(mod_handle, "mod_main"); + if (rawfunc == NULL) + atf_tc_fail("failed to resolve function mod_main"); + func = (modfunc_t *)rawfunc; + func(1); + func(0); +} + +ATF_TP_ADD_TCS(tp) +{ + + ATF_TP_ADD_TC(tp, maintc); + return (atf_no_error()); +} From owner-svn-src-all@freebsd.org Mon Apr 8 18:36:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 18DE11564B26; Mon, 8 Apr 2019 18:36:49 +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 B06C685F10; Mon, 8 Apr 2019 18:36: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 8B14A27479; Mon, 8 Apr 2019 18:36: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 x38Iamub060037; Mon, 8 Apr 2019 18:36:48 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38Iamkr060036; Mon, 8 Apr 2019 18:36:48 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081836.x38Iamkr060036@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 18:36:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346041 - in stable: 11/sys/conf 12/sys/conf X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/conf 12/sys/conf X-SVN-Commit-Revision: 346041 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B06C685F10 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 18:36:49 -0000 Author: kevans Date: Mon Apr 8 18:36:47 2019 New Revision: 346041 URL: https://svnweb.freebsd.org/changeset/base/346041 Log: MFC r345680: NOTES: Use non-default value for BOOT_TAG Modified: stable/12/sys/conf/NOTES Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sys/conf/NOTES Directory Properties: stable/11/ (props changed) Modified: stable/12/sys/conf/NOTES ============================================================================== --- stable/12/sys/conf/NOTES Mon Apr 8 18:34:43 2019 (r346040) +++ stable/12/sys/conf/NOTES Mon Apr 8 18:36:47 2019 (r346041) @@ -150,7 +150,7 @@ options BOOTHOWTO=RB_MULTIPLE # # Default boot tag; may use 'kern.boot_tag' loader tunable to override. The # current boot's tag is also exposed via the 'kern.boot_tag' sysctl. -options BOOT_TAG=\"---<>---\" +options BOOT_TAG=\"\" # Maximum boot tag size the kernel's static buffer should accomodate. Maximum # size for both BOOT_TAG and the assocated tunable. options BOOT_TAG_SZ=32 From owner-svn-src-all@freebsd.org Mon Apr 8 18:36:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B559D1564B18; Mon, 8 Apr 2019 18:36: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 5B8AA85F0E; Mon, 8 Apr 2019 18:36: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 3675D27478; Mon, 8 Apr 2019 18:36: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 x38Iamub060031; Mon, 8 Apr 2019 18:36:48 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38Iame8060030; Mon, 8 Apr 2019 18:36:48 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081836.x38Iame8060030@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 18:36:48 +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: r346041 - in stable: 11/sys/conf 12/sys/conf X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/sys/conf 12/sys/conf X-SVN-Commit-Revision: 346041 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5B8AA85F0E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 18:36:48 -0000 Author: kevans Date: Mon Apr 8 18:36:47 2019 New Revision: 346041 URL: https://svnweb.freebsd.org/changeset/base/346041 Log: MFC r345680: NOTES: Use non-default value for BOOT_TAG Modified: stable/11/sys/conf/NOTES Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/conf/NOTES Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/conf/NOTES ============================================================================== --- stable/11/sys/conf/NOTES Mon Apr 8 18:34:43 2019 (r346040) +++ stable/11/sys/conf/NOTES Mon Apr 8 18:36:47 2019 (r346041) @@ -150,7 +150,7 @@ options BOOTHOWTO=RB_MULTIPLE # # Default boot tag; may use 'kern.boot_tag' loader tunable to override. The # current boot's tag is also exposed via the 'kern.boot_tag' sysctl. -options BOOT_TAG=\"\" +options BOOT_TAG=\"---<>---\" # Maximum boot tag size the kernel's static buffer should accomodate. Maximum # size for both BOOT_TAG and the assocated tunable. options BOOT_TAG_SZ=32 From owner-svn-src-all@freebsd.org Mon Apr 8 18:38:20 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F122A1564D30; Mon, 8 Apr 2019 18:38: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 AB5F186336; Mon, 8 Apr 2019 18:38: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 87A0C2747D; Mon, 8 Apr 2019 18:38: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 x38IcJsi060318; Mon, 8 Apr 2019 18:38:19 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38IcJJK060317; Mon, 8 Apr 2019 18:38:19 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081838.x38IcJJK060317@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 18:38:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346042 - in stable: 11/stand/common 12/stand/common X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/stand/common 12/stand/common X-SVN-Commit-Revision: 346042 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AB5F186336 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 18:38:20 -0000 Author: kevans Date: Mon Apr 8 18:38:18 2019 New Revision: 346042 URL: https://svnweb.freebsd.org/changeset/base/346042 Log: MFC r344161: stand: dev_net: correct net_open's interpretation of params net_open previously casted the first vararg to a char * and this was half-OK: at first, it is passed to netif_open, which would cast it back to the struct devdesc * that it really is and use it properly. It is then strdup()d and used as the netdev_name, which is objectively wrong. Correct it so that the first vararg is properly casted to a struct devdesc * and the netdev_name gets set properly to make it more clear at a glance that it's not doing something horribly wrong. Modified: stable/12/stand/common/dev_net.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/stand/common/dev_net.c Directory Properties: stable/11/ (props changed) Modified: stable/12/stand/common/dev_net.c ============================================================================== --- stable/12/stand/common/dev_net.c Mon Apr 8 18:36:47 2019 (r346041) +++ stable/12/stand/common/dev_net.c Mon Apr 8 18:38:18 2019 (r346042) @@ -122,13 +122,15 @@ net_open(struct open_file *f, ...) { struct iodesc *d; va_list args; - char *devname; /* Device part of file name (or NULL). */ + struct devdesc *dev; + const char *devname; /* Device part of file name (or NULL). */ int error = 0; va_start(args, f); - devname = va_arg(args, char*); + dev = va_arg(args, struct devdesc *); va_end(args); + devname = dev->d_dev->dv_name; /* Before opening another interface, close the previous one first. */ if (netdev_sock >= 0 && strcmp(devname, netdev_name) != 0) net_cleanup(); @@ -137,7 +139,7 @@ net_open(struct open_file *f, ...) if (netdev_opens == 0) { /* Find network interface. */ if (netdev_sock < 0) { - netdev_sock = netif_open(devname); + netdev_sock = netif_open(dev); if (netdev_sock < 0) { printf("net_open: netif_open() failed\n"); return (ENXIO); From owner-svn-src-all@freebsd.org Mon Apr 8 18:38:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AAC681564D2C; Mon, 8 Apr 2019 18:38: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 51B5B86334; Mon, 8 Apr 2019 18:38: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 3699C2747C; Mon, 8 Apr 2019 18:38: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 x38IcJ0K060312; Mon, 8 Apr 2019 18:38:19 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x38IcJqf060311; Mon, 8 Apr 2019 18:38:19 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904081838.x38IcJqf060311@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 8 Apr 2019 18:38: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: r346042 - in stable: 11/stand/common 12/stand/common X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable: 11/stand/common 12/stand/common X-SVN-Commit-Revision: 346042 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 51B5B86334 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 18:38:19 -0000 Author: kevans Date: Mon Apr 8 18:38:18 2019 New Revision: 346042 URL: https://svnweb.freebsd.org/changeset/base/346042 Log: MFC r344161: stand: dev_net: correct net_open's interpretation of params net_open previously casted the first vararg to a char * and this was half-OK: at first, it is passed to netif_open, which would cast it back to the struct devdesc * that it really is and use it properly. It is then strdup()d and used as the netdev_name, which is objectively wrong. Correct it so that the first vararg is properly casted to a struct devdesc * and the netdev_name gets set properly to make it more clear at a glance that it's not doing something horribly wrong. Modified: stable/11/stand/common/dev_net.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/stand/common/dev_net.c Directory Properties: stable/12/ (props changed) Modified: stable/11/stand/common/dev_net.c ============================================================================== --- stable/11/stand/common/dev_net.c Mon Apr 8 18:36:47 2019 (r346041) +++ stable/11/stand/common/dev_net.c Mon Apr 8 18:38:18 2019 (r346042) @@ -122,13 +122,15 @@ net_open(struct open_file *f, ...) { struct iodesc *d; va_list args; - char *devname; /* Device part of file name (or NULL). */ + struct devdesc *dev; + const char *devname; /* Device part of file name (or NULL). */ int error = 0; va_start(args, f); - devname = va_arg(args, char*); + dev = va_arg(args, struct devdesc *); va_end(args); + devname = dev->d_dev->dv_name; /* Before opening another interface, close the previous one first. */ if (netdev_sock >= 0 && strcmp(devname, netdev_name) != 0) net_cleanup(); @@ -137,7 +139,7 @@ net_open(struct open_file *f, ...) if (netdev_opens == 0) { /* Find network interface. */ if (netdev_sock < 0) { - netdev_sock = netif_open(devname); + netdev_sock = netif_open(dev); if (netdev_sock < 0) { printf("net_open: netif_open() failed\n"); return (ENXIO); From owner-svn-src-all@freebsd.org Mon Apr 8 21:55:53 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7366A156A650; Mon, 8 Apr 2019 21:55:53 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (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 "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D1A968DE7D; Mon, 8 Apr 2019 21:55:52 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-3.local (ralph.baldwin.cx [66.234.199.215]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id C84416B6C; Mon, 8 Apr 2019 21:55:51 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r345970 - head/libexec/rc To: rgrimes@freebsd.org, Eugene Grosbein Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904052316.x35NGOSc041939@gndrsh.dnsmgr.net> From: John Baldwin Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <37993f01-f14f-9d31-2c3e-f7b96473c39e@FreeBSD.org> Date: Mon, 8 Apr 2019 14:55:49 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <201904052316.x35NGOSc041939@gndrsh.dnsmgr.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D1A968DE7D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.982,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Apr 2019 21:55:53 -0000 On 4/5/19 4:16 PM, Rodney W. Grimes wrote: >> Author: eugen >> Date: Fri Apr 5 22:45:08 2019 >> New Revision: 345970 >> URL: https://svnweb.freebsd.org/changeset/base/345970 >> >> Log: >> network.subr: improve configuration of cloned gif(4) interfaces >> >> ifconfig(8) syntax allows to specify only single address_family, >> so we need additional invocation of ifconfig to support configuration >> of cloned gif interface that may use different address families >> for its internal and external addresses. >> >> Also, ifconfig(8) does not allow to omit "inet6" keyword for address family >> specifying IPv6 addresses as outer addresses of the interface. >> >> Also, address_family is not "parameter" and it has to go before parameters >> including "tunnel" keyword, so "ifconfig gif0 tunnel inet6 $oip1 $oip2" would be >> wrong syntax and only "ifconfig gif0 inet6 tunnel $oip1 $oip2" is right. >> >> With this change, the following works: >> >> gifconfig_gif0="inet6 2a00::1 2a01::1" >> ifconfig_gif0="inet 10.0.0.1 10.0.0.2 netmask 255.255.255.252" > > If you want another fun one to wrestle with see if you can > make this work: > > cloned_interfaces="vlan32" > ifconfig_em0="up" > ifconfig_vlan32="vlan 32 vlandev em0 SYNCDHCP" > > I have worked around it, but it would be nice if this "just worked". Why not use the vlans thing btw? ifconfig_em0="up" vlans_em0="32" ifconfig_em0_32="SYNCDHCP" I think you probably still need the ifconfig_em0 as I don't think up'ing a vlan implicitly up's the trunk. You need similar "up" entries when using lagg. -- John Baldwin From owner-svn-src-all@freebsd.org Tue Apr 9 08:09:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 359961578AC5; Tue, 9 Apr 2019 08:09:22 +0000 (UTC) (envelope-from eugen@eg.sd.rdtc.ru) Received: from hz.grosbein.net (hz.grosbein.net [IPv6:2a01:4f8:d12:604::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hz.grosbein.net", Issuer "hz.grosbein.net" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 8085A81917; Tue, 9 Apr 2019 08:09:21 +0000 (UTC) (envelope-from eugen@eg.sd.rdtc.ru) X-Envelope-To: svn-src-head@freebsd.org Received: from eg.sd.rdtc.ru (eg.sd.rdtc.ru [IPv6:2a03:3100:c:13:0:0:0:5]) by hz.grosbein.net (8.15.2/8.15.2) with ESMTPS id x3988xT0041097 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 9 Apr 2019 10:09:00 +0200 (CEST) (envelope-from eugen@eg.sd.rdtc.ru) X-Envelope-From: eugen@eg.sd.rdtc.ru Received: from eg.sd.rdtc.ru (eugen@localhost [127.0.0.1]) by eg.sd.rdtc.ru (8.15.2/8.15.2) with ESMTPS id x3988wD3055835 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 9 Apr 2019 15:08:58 +0700 (+07) (envelope-from eugen@eg.sd.rdtc.ru) Received: (from eugen@localhost) by eg.sd.rdtc.ru (8.15.2/8.15.2/Submit) id x3988we8055834; Tue, 9 Apr 2019 15:08:58 +0700 (+07) (envelope-from eugen) Date: Tue, 9 Apr 2019 15:08:58 +0700 From: Eugene Grosbein To: rgrimes@freebsd.org Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r345970 - head/libexec/rc Message-ID: <20190409080858.GA55811@rdtc.ru> References: <201904052245.x35Mj9Rd097169@repo.freebsd.org> <201904052316.x35NGOSc041939@gndrsh.dnsmgr.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201904052316.x35NGOSc041939@gndrsh.dnsmgr.net> User-Agent: Mutt/1.7.2 (2016-11-26) X-Spam-Status: No, score=0.3 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,LOCAL_FROM autolearn=no autolearn_force=no version=3.4.2 X-Spam-Report: * -2.3 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level * mail domains are different * 2.6 LOCAL_FROM From my domains X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on hz.grosbein.net X-Rspamd-Queue-Id: 8085A81917 X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-1.80 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.90)[-0.899,0]; MX_INVALID(0.50)[cached]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; MIME_GOOD(-0.10)[text/plain]; TO_DN_NONE(0.00)[]; DMARC_NA(0.00)[grosbein.net]; AUTH_NA(1.00)[]; RCVD_COUNT_THREE(0.00)[4]; RCVD_TLS_LAST(0.00)[]; NEURAL_HAM_SHORT(-0.48)[-0.480,0]; R_SPF_NA(0.00)[]; FORGED_SENDER(0.30)[eugen@grosbein.net,eugen@eg.sd.rdtc.ru]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:24940, ipnet:2a01:4f8::/29, country:DE]; FROM_NEQ_ENVFROM(0.00)[eugen@grosbein.net,eugen@eg.sd.rdtc.ru]; IP_SCORE(-1.13)[ip: (-1.45), ipnet: 2a01:4f8::/29(-2.16), asn: 24940(-2.02), country: DE(-0.01)] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 08:09:22 -0000 On Fri, Apr 05, 2019 at 04:16:24PM -0700, Rodney W. Grimes wrote: > If you want another fun one to wrestle with see if you can > make this work: > > cloned_interfaces="vlan32" > ifconfig_em0="up" > ifconfig_vlan32="vlan 32 vlandev em0 SYNCDHCP" > > I have worked around it, but it would be nice if this "just worked". Sorry for late reply, I somehow missed this. I've just checked and this "just works" for me already. For which version this does not work, exactly? When did you verify this last time? Eugene Grosbein From owner-svn-src-all@freebsd.org Tue Apr 9 08:38:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 93FBA1579B02; Tue, 9 Apr 2019 08:38:39 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1EBF982E08; Tue, 9 Apr 2019 08:38:38 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x398cT73059114; Tue, 9 Apr 2019 01:38:29 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x398cTvr059113; Tue, 9 Apr 2019 01:38:29 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904090838.x398cTvr059113@gndrsh.dnsmgr.net> Subject: Re: svn commit: r345970 - head/libexec/rc In-Reply-To: <20190409080858.GA55811@rdtc.ru> To: Eugene Grosbein Date: Tue, 9 Apr 2019 01:38:29 -0700 (PDT) CC: rgrimes@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 1EBF982E08 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.97)[-0.973,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 08:38:39 -0000 > On Fri, Apr 05, 2019 at 04:16:24PM -0700, Rodney W. Grimes wrote: > > > If you want another fun one to wrestle with see if you can > > make this work: > > > > cloned_interfaces="vlan32" > > ifconfig_em0="up" > > ifconfig_vlan32="vlan 32 vlandev em0 SYNCDHCP" > > > > I have worked around it, but it would be nice if this "just worked". > > Sorry for late reply, I somehow missed this. It is of low importance, I have worked around it, and I suspect it is a fairly rare thing for someone to do. > I've just checked and this "just works" for me already. > For which version this does not work, exactly? > When did you verify this last time? I believe the last time I tried this was early, in 11.1 iirc. Are you sure it worked? I'll retest on release 12.0. I can not remeber if the failure was no dhcpclient, or if they do not get the vlan 32 vlandev em0 settings, it was one or the other that did not occur. You do get the vlan32 device, but it does not work. > Eugene Grosbein -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 09:08:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C055B157AD75; Tue, 9 Apr 2019 09:08:11 +0000 (UTC) (envelope-from eugen@grosbein.net) Received: from hz.grosbein.net (hz.grosbein.net [IPv6:2a01:4f8:d12:604::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hz.grosbein.net", Issuer "hz.grosbein.net" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 420F98419D; Tue, 9 Apr 2019 09:08:11 +0000 (UTC) (envelope-from eugen@grosbein.net) Received: from eg.sd.rdtc.ru (eg.sd.rdtc.ru [IPv6:2a03:3100:c:13:0:0:0:5]) by hz.grosbein.net (8.15.2/8.15.2) with ESMTPS id x3997wOt041499 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 9 Apr 2019 11:08:02 +0200 (CEST) (envelope-from eugen@grosbein.net) X-Envelope-From: eugen@grosbein.net X-Envelope-To: rgrimes@freebsd.org Received: from [10.58.0.4] ([10.58.0.4]) by eg.sd.rdtc.ru (8.15.2/8.15.2) with ESMTPS id x3997wiG056468 (version=TLSv1.2 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Tue, 9 Apr 2019 16:07:58 +0700 (+07) (envelope-from eugen@grosbein.net) Subject: Re: svn commit: r345970 - head/libexec/rc To: rgrimes@freebsd.org References: <201904090838.x398cTvr059113@gndrsh.dnsmgr.net> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Eugene Grosbein Message-ID: Date: Tue, 9 Apr 2019 16:07:50 +0700 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <201904090838.x398cTvr059113@gndrsh.dnsmgr.net> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=0.3 required=5.0 tests=BAYES_00,LOCAL_FROM,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-Report: * -2.3 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 SPF_PASS SPF: sender matches SPF record * 2.6 LOCAL_FROM From my domains X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on hz.grosbein.net X-Rspamd-Queue-Id: 420F98419D X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.97)[-0.967,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 09:08:11 -0000 09.04.2019 15:38, Rodney W. Grimes wrote: >> I've just checked and this "just works" for me already. >> For which version this does not work, exactly? >> When did you verify this last time? > > I believe the last time I tried this was early, in 11.1 iirc. > Are you sure it worked? > I'll retest on release 12.0. > > I can not remeber if the failure was no dhcpclient, or > if they do not get the vlan 32 vlandev em0 settings, > it was one or the other that did not occur. You > do get the vlan32 device, but it does not work. Works as expected (as it should work) for both 11.2 and 12.0 From owner-svn-src-all@freebsd.org Tue Apr 9 09:20:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DCE39157B0A8; Tue, 9 Apr 2019 09:20:42 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 60270846E7; Tue, 9 Apr 2019 09:20:42 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x399KeMv059256; Tue, 9 Apr 2019 02:20:40 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x399KdF4059255; Tue, 9 Apr 2019 02:20:39 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904090920.x399KdF4059255@gndrsh.dnsmgr.net> Subject: Re: svn commit: r345970 - head/libexec/rc In-Reply-To: To: Eugene Grosbein Date: Tue, 9 Apr 2019 02:20:39 -0700 (PDT) CC: rgrimes@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 60270846E7 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 09:20:43 -0000 > 09.04.2019 15:38, Rodney W. Grimes wrote: > > >> I've just checked and this "just works" for me already. > >> For which version this does not work, exactly? > >> When did you verify this last time? > > > > I believe the last time I tried this was early, in 11.1 iirc. > > Are you sure it worked? > > I'll retest on release 12.0. > > > > I can not remeber if the failure was no dhcpclient, or > > if they do not get the vlan 32 vlandev em0 settings, > > it was one or the other that did not occur. You > > do get the vlan32 device, but it does not work. > > Works as expected (as it should work) for both 11.2 and 12.0 It works much better than it did just doing testing in 12.0, the interface is infact properly configured, the DHCP client tries to do the right thing, but fails to get a lease on reboot, including attempt to renew the prior lease. This is not a config startup issue any more, but still an issue of some sort. If after booting I down/up the em0 interface I get a lease almost immediatly. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 09:22:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D6F74157B290; Tue, 9 Apr 2019 09:22:43 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3D13284B1A; Tue, 9 Apr 2019 09:22:43 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x399MfpU059288; Tue, 9 Apr 2019 02:22:41 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x399MfxS059287; Tue, 9 Apr 2019 02:22:41 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904090922.x399MfxS059287@gndrsh.dnsmgr.net> Subject: Re: svn commit: r345970 - head/libexec/rc In-Reply-To: To: Eugene Grosbein Date: Tue, 9 Apr 2019 02:22:41 -0700 (PDT) CC: rgrimes@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 3D13284B1A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 09:22:44 -0000 > 09.04.2019 15:38, Rodney W. Grimes wrote: > > >> I've just checked and this "just works" for me already. > >> For which version this does not work, exactly? > >> When did you verify this last time? > > > > I believe the last time I tried this was early, in 11.1 iirc. > > Are you sure it worked? > > I'll retest on release 12.0. > > > > I can not remeber if the failure was no dhcpclient, or > > if they do not get the vlan 32 vlandev em0 settings, > > it was one or the other that did not occur. You > > do get the vlan32 device, but it does not work. > > Works as expected (as it should work) for both 11.2 and 12.0 ^^ for you, not for me Are you using a em0 type device, or something else? I can retest on an alc0 device easily. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 09:31:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6C916157B527; Tue, 9 Apr 2019 09:31:14 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EF29A85124; Tue, 9 Apr 2019 09:31:13 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x399VCtE059329; Tue, 9 Apr 2019 02:31:12 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x399VBo3059328; Tue, 9 Apr 2019 02:31:11 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904090931.x399VBo3059328@gndrsh.dnsmgr.net> Subject: Re: svn commit: r345970 - head/libexec/rc In-Reply-To: <201904090922.x399MfxS059287@gndrsh.dnsmgr.net> To: rgrimes@freebsd.org Date: Tue, 9 Apr 2019 02:31:11 -0700 (PDT) CC: Eugene Grosbein , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: EF29A85124 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 09:31:14 -0000 > > 09.04.2019 15:38, Rodney W. Grimes wrote: > > > > >> I've just checked and this "just works" for me already. > > >> For which version this does not work, exactly? > > >> When did you verify this last time? > > > > > > I believe the last time I tried this was early, in 11.1 iirc. > > > Are you sure it worked? > > > I'll retest on release 12.0. > > > > > > I can not remeber if the failure was no dhcpclient, or > > > if they do not get the vlan 32 vlandev em0 settings, > > > it was one or the other that did not occur. You > > > do get the vlan32 device, but it does not work. > > > > Works as expected (as it should work) for both 11.2 and 12.0 > ^^ for you, not for me > > Are you using a em0 type device, or something else? > I can retest on an alc0 device easily. Rested on alc0, this works perfectly fine. So this appears to be em0/vlan interaction problems. Very odd that a flick of the parent down and up makes it work though. > -- > Rod Grimes rgrimes@freebsd.org -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 10:10:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8DEBF157C28B; Tue, 9 Apr 2019 10:10:00 +0000 (UTC) (envelope-from trasz@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 32156866C7; Tue, 9 Apr 2019 10:10:00 +0000 (UTC) (envelope-from trasz@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 0A89C9769; Tue, 9 Apr 2019 10:10:00 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39A9xTe051612; Tue, 9 Apr 2019 10:09:59 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39A9xDt051611; Tue, 9 Apr 2019 10:09:59 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201904091009.x39A9xDt051611@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Tue, 9 Apr 2019 10:09:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346048 - head/lib/libc/sys X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/lib/libc/sys X-SVN-Commit-Revision: 346048 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 32156866C7 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 10:10:00 -0000 Author: trasz Date: Tue Apr 9 10:09:59 2019 New Revision: 346048 URL: https://svnweb.freebsd.org/changeset/base/346048 Log: .Xr protect(1) and proccontrol(1) from procctl(2). MFC after: 2 weeks Sponsored by: DARPA, AFRL Modified: head/lib/libc/sys/procctl.2 Modified: head/lib/libc/sys/procctl.2 ============================================================================== --- head/lib/libc/sys/procctl.2 Tue Apr 9 07:36:40 2019 (r346047) +++ head/lib/libc/sys/procctl.2 Tue Apr 9 10:09:59 2019 (r346048) @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 23, 2019 +.Dd April 9, 2019 .Dt PROCCTL 2 .Os .Sh NAME @@ -570,6 +570,8 @@ or invalid signal number. .El .Sh SEE ALSO .Xr dtrace 1 , +.Xr proccontrol 1 , +.Xr protect 1 , .Xr cap_enter 2, .Xr kill 2 , .Xr ktrace 2 , From owner-svn-src-all@freebsd.org Tue Apr 9 10:13:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9B4F5157C602; Tue, 9 Apr 2019 10:13:08 +0000 (UTC) (envelope-from eugen@grosbein.net) Received: from hz.grosbein.net (hz.grosbein.net [IPv6:2a01:4f8:d12:604::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hz.grosbein.net", Issuer "hz.grosbein.net" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 1E17C86C76; Tue, 9 Apr 2019 10:13:07 +0000 (UTC) (envelope-from eugen@grosbein.net) Received: from eg.sd.rdtc.ru (eg.sd.rdtc.ru [IPv6:2a03:3100:c:13:0:0:0:5]) by hz.grosbein.net (8.15.2/8.15.2) with ESMTPS id x39ACxmY041973 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 9 Apr 2019 12:13:00 +0200 (CEST) (envelope-from eugen@grosbein.net) X-Envelope-From: eugen@grosbein.net X-Envelope-To: rgrimes@freebsd.org Received: from [10.58.0.4] ([10.58.0.4]) by eg.sd.rdtc.ru (8.15.2/8.15.2) with ESMTPS id x39ACtLN057419 (version=TLSv1.2 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Tue, 9 Apr 2019 17:12:55 +0700 (+07) (envelope-from eugen@grosbein.net) Subject: Re: svn commit: r345970 - head/libexec/rc To: rgrimes@freebsd.org References: <201904090922.x399MfxS059287@gndrsh.dnsmgr.net> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Eugene Grosbein Message-ID: <97afca1e-5801-d9ec-dfe7-5ceabf9ab05d@grosbein.net> Date: Tue, 9 Apr 2019 17:12:47 +0700 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <201904090922.x399MfxS059287@gndrsh.dnsmgr.net> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=0.3 required=5.0 tests=BAYES_00,LOCAL_FROM,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-Report: * -2.3 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 SPF_PASS SPF: sender matches SPF record * 2.6 LOCAL_FROM From my domains X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on hz.grosbein.net X-Rspamd-Queue-Id: 1E17C86C76 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.99)[-0.988,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 10:13:08 -0000 09.04.2019 16:22, Rodney W. Grimes wrote: >> Works as expected (as it should work) for both 11.2 and 12.0 > ^^ for you, not for me > > Are you using a em0 type device, or something else? em0 for FreeBSD as guest inside VirtualBox. Well, I have no vlans here really outside of VBox so dhclient does not obtain a lease for vlan32 but it tries very hard. So this is not configuration problem. From owner-svn-src-all@freebsd.org Tue Apr 9 10:17:25 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4E262157C6C8; Tue, 9 Apr 2019 10:17:25 +0000 (UTC) (envelope-from trasz@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 E68B986E28; Tue, 9 Apr 2019 10:17:24 +0000 (UTC) (envelope-from trasz@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 BCEED990C; Tue, 9 Apr 2019 10:17:24 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39AHOoQ056927; Tue, 9 Apr 2019 10:17:24 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39AHORT056926; Tue, 9 Apr 2019 10:17:24 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201904091017.x39AHORT056926@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Tue, 9 Apr 2019 10:17:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346049 - head/share/man/man7 X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/share/man/man7 X-SVN-Commit-Revision: 346049 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E68B986E28 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 10:17:25 -0000 Author: trasz Date: Tue Apr 9 10:17:24 2019 New Revision: 346049 URL: https://svnweb.freebsd.org/changeset/base/346049 Log: Remove spurious comma. MFC after: 2 weeks Sponsored by: DARPA, AFRL Modified: head/share/man/man7/hostname.7 Modified: head/share/man/man7/hostname.7 ============================================================================== --- head/share/man/man7/hostname.7 Tue Apr 9 10:09:59 2019 (r346048) +++ head/share/man/man7/hostname.7 Tue Apr 9 10:17:24 2019 (r346049) @@ -81,7 +81,7 @@ by a system-wide configuration file (see .Xr resolver 5 ) . .Sh SEE ALSO .Xr gethostbyname 3 , -.Xr resolver 5 , +.Xr resolver 5 .Sh HISTORY .Nm Hostname appeared in From owner-svn-src-all@freebsd.org Tue Apr 9 10:33:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 068C0157CD19; Tue, 9 Apr 2019 10:33:19 +0000 (UTC) (envelope-from tychon@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 9CE4987734; Tue, 9 Apr 2019 10:33:18 +0000 (UTC) (envelope-from tychon@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 8E6CA9C78; Tue, 9 Apr 2019 10:33:18 +0000 (UTC) (envelope-from tychon@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39AXIti067264; Tue, 9 Apr 2019 10:33:18 GMT (envelope-from tychon@FreeBSD.org) Received: (from tychon@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39AXIDJ067263; Tue, 9 Apr 2019 10:33:18 GMT (envelope-from tychon@FreeBSD.org) Message-Id: <201904091033.x39AXIDJ067263@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tychon set sender to tychon@FreeBSD.org using -f From: Tycho Nightingale Date: Tue, 9 Apr 2019 10:33:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346050 - head/tools/tools/ioat X-SVN-Group: head X-SVN-Commit-Author: tychon X-SVN-Commit-Paths: head/tools/tools/ioat X-SVN-Commit-Revision: 346050 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9CE4987734 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 10:33:19 -0000 Author: tychon Date: Tue Apr 9 10:33:18 2019 New Revision: 346050 URL: https://svnweb.freebsd.org/changeset/base/346050 Log: ioatcontrol(8) crc-copy flag bug and misc usage tweak Reviewed by: cem Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D19855 Modified: head/tools/tools/ioat/ioatcontrol.c Modified: head/tools/tools/ioat/ioatcontrol.c ============================================================================== --- head/tools/tools/ioat/ioatcontrol.c Tue Apr 9 10:17:24 2019 (r346049) +++ head/tools/tools/ioat/ioatcontrol.c Tue Apr 9 10:33:18 2019 (r346050) @@ -49,7 +49,7 @@ static void usage(void) { - printf("Usage: %s [-c period] [-EfmVz] channel-number num-txns [ " + printf("Usage: %s [-c period] [-EefmVxXz] channel-number num-txns [ " "[ [duration]]]\n", getprogname()); printf(" %s -r [-c period] [-vVwz] channel-number address []\n\n", getprogname()); @@ -154,9 +154,11 @@ main(int argc, char **argv) break; case 'x': xflag = true; + modeflags++; break; case 'X': Xflag = true; + modeflags++; break; case 'z': t.zero_stats = true; @@ -172,7 +174,7 @@ main(int argc, char **argv) usage(); if (modeflags > 1) { - printf("Invalid: Cannot use >1 mode flag (-E, -f, -m, or -r)\n"); + printf("Invalid: Cannot use >1 mode flag (-E, -e, -f, -m, -r, -x or -X)\n"); usage(); } @@ -191,7 +193,7 @@ main(int argc, char **argv) t.testkind = IOAT_TEST_MEMCPY; else if (xflag) t.testkind = IOAT_TEST_DMA_CRC; - else if (xflag) + else if (Xflag) t.testkind = IOAT_TEST_DMA_CRC_COPY; t.channel_index = atoi(argv[0]); From owner-svn-src-all@freebsd.org Tue Apr 9 10:35:05 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A8EE0157CE54; Tue, 9 Apr 2019 10:35:05 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2C3BC8790C; Tue, 9 Apr 2019 10:35:04 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x39AZ0VH059856; Tue, 9 Apr 2019 03:35:00 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x39AZ0Kr059855; Tue, 9 Apr 2019 03:35:00 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904091035.x39AZ0Kr059855@gndrsh.dnsmgr.net> Subject: Re: svn commit: r345970 - head/libexec/rc In-Reply-To: <97afca1e-5801-d9ec-dfe7-5ceabf9ab05d@grosbein.net> To: Eugene Grosbein Date: Tue, 9 Apr 2019 03:35:00 -0700 (PDT) CC: rgrimes@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 2C3BC8790C X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.99)[-0.986,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 10:35:05 -0000 > 09.04.2019 16:22, Rodney W. Grimes wrote: > > >> Works as expected (as it should work) for both 11.2 and 12.0 > > ^^ for you, not for me If you did not actually get a lease I do not see that your test is complete, so though it worked to a point, it did not work as expected until you actually obtain a lease. > > Are you using a em0 type device, or something else? > > em0 for FreeBSD as guest inside VirtualBox. Real hardware here. > Well, I have no vlans here really outside of VBox so dhclient does not obtain a lease for vlan32 > but it tries very hard. So this is not configuration problem. It tries very hard here too, and it is not succesful until I do an: ifconfig em0 down; ifconfig em0 up; then it immediatly gets a lease. Something is happening on re-init of em0 that is not happening in the normal situation. Could this be one of the iflib bugs, that is fixed in head or stable/12 but not in releng/12? -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 12:28:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 71354157FBD8; Tue, 9 Apr 2019 12:28:13 +0000 (UTC) (envelope-from grembo@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 103438B5C7; Tue, 9 Apr 2019 12:28:13 +0000 (UTC) (envelope-from grembo@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 DFCBAAF0E; Tue, 9 Apr 2019 12:28:12 +0000 (UTC) (envelope-from grembo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39CSC3b024417; Tue, 9 Apr 2019 12:28:12 GMT (envelope-from grembo@FreeBSD.org) Received: (from grembo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39CSC7c024416; Tue, 9 Apr 2019 12:28:12 GMT (envelope-from grembo@FreeBSD.org) Message-Id: <201904091228.x39CSC7c024416@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: grembo set sender to grembo@FreeBSD.org using -f From: Michael Gmelin Date: Tue, 9 Apr 2019 12:28:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346051 - in stable: 11/usr.sbin/daemon 12/usr.sbin/daemon X-SVN-Group: stable-12 X-SVN-Commit-Author: grembo X-SVN-Commit-Paths: in stable: 11/usr.sbin/daemon 12/usr.sbin/daemon X-SVN-Commit-Revision: 346051 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 103438B5C7 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.993,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 12:28:13 -0000 Author: grembo (ports committer) Date: Tue Apr 9 12:28:12 2019 New Revision: 346051 URL: https://svnweb.freebsd.org/changeset/base/346051 Log: MFC r345512: Correct contradictory information on default syslog logging priority. Modified: stable/12/usr.sbin/daemon/daemon.8 Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/usr.sbin/daemon/daemon.8 Directory Properties: stable/11/ (props changed) Modified: stable/12/usr.sbin/daemon/daemon.8 ============================================================================== --- stable/12/usr.sbin/daemon/daemon.8 Tue Apr 9 10:33:18 2019 (r346050) +++ stable/12/usr.sbin/daemon/daemon.8 Tue Apr 9 12:28:12 2019 (r346051) @@ -26,7 +26,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 15, 2018 +.Dd March 25, 2019 .Dt DAEMON 8 .Os .Sh NAME @@ -129,7 +129,7 @@ Requires adequate superuser privileges. .It Fl s Ar syslog_priority These priorities are accepted: emerg, alert, crit, err, warning, notice, info, and debug. -The default is info. +The default is notice. .It Fl l Ar syslog_facility These facilities are accepted: auth, authpriv, console, cron, daemon, ftp, kern, lpr, mail, news, ntp, security, syslog, user, uucp, and From owner-svn-src-all@freebsd.org Tue Apr 9 12:28:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 267A9157FBD2; Tue, 9 Apr 2019 12:28:13 +0000 (UTC) (envelope-from grembo@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 BF11A8B5C6; Tue, 9 Apr 2019 12:28:12 +0000 (UTC) (envelope-from grembo@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 9601BAF0D; Tue, 9 Apr 2019 12:28:12 +0000 (UTC) (envelope-from grembo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39CSCwV024411; Tue, 9 Apr 2019 12:28:12 GMT (envelope-from grembo@FreeBSD.org) Received: (from grembo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39CSCvt024410; Tue, 9 Apr 2019 12:28:12 GMT (envelope-from grembo@FreeBSD.org) Message-Id: <201904091228.x39CSCvt024410@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: grembo set sender to grembo@FreeBSD.org using -f From: Michael Gmelin Date: Tue, 9 Apr 2019 12:28: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: r346051 - in stable: 11/usr.sbin/daemon 12/usr.sbin/daemon X-SVN-Group: stable-11 X-SVN-Commit-Author: grembo X-SVN-Commit-Paths: in stable: 11/usr.sbin/daemon 12/usr.sbin/daemon X-SVN-Commit-Revision: 346051 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BF11A8B5C6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.993,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 12:28:13 -0000 Author: grembo (ports committer) Date: Tue Apr 9 12:28:12 2019 New Revision: 346051 URL: https://svnweb.freebsd.org/changeset/base/346051 Log: MFC r345512: Correct contradictory information on default syslog logging priority. Modified: stable/11/usr.sbin/daemon/daemon.8 Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/usr.sbin/daemon/daemon.8 Directory Properties: stable/12/ (props changed) Modified: stable/11/usr.sbin/daemon/daemon.8 ============================================================================== --- stable/11/usr.sbin/daemon/daemon.8 Tue Apr 9 10:33:18 2019 (r346050) +++ stable/11/usr.sbin/daemon/daemon.8 Tue Apr 9 12:28:12 2019 (r346051) @@ -26,7 +26,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 15, 2018 +.Dd March 25, 2019 .Dt DAEMON 8 .Os .Sh NAME @@ -129,7 +129,7 @@ Requires adequate superuser privileges. .It Fl s Ar syslog_priority These priorities are accepted: emerg, alert, crit, err, warning, notice, info, and debug. -The default is info. +The default is notice. .It Fl l Ar syslog_facility These facilities are accepted: auth, authpriv, console, cron, daemon, ftp, kern, lpr, mail, news, ntp, security, syslog, user, uucp, and From owner-svn-src-all@freebsd.org Tue Apr 9 13:14:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B49971580D2E; Tue, 9 Apr 2019 13:14:12 +0000 (UTC) (envelope-from ohartmann@walstatt.org) Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "mout.gmx.net", Issuer "TeleSec ServerPass DE-2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8836D8CE6B; Tue, 9 Apr 2019 13:14:11 +0000 (UTC) (envelope-from ohartmann@walstatt.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1554815641; bh=jNeMGRpvcIraIT/VzE+EREQ/B7UHExJSDwQKlCRiZ/4=; h=X-UI-Sender-Class:Date:From:To:Cc:Subject:In-Reply-To:References; b=VafBi4PyRZf7TfoLRlVMYdrmA1lO+oJ1qxXsp7m7f3hobJljV5bXYQWbmvyeTwp03 KH18i8xz5OdSDhhOmTOtUu+qFW2GSNRKik4y4lh4Cj3vdI097XPJZZuHujMs2qCjQ6 BBrlFjtch1m2bn5bVD72YOlNdRW3wz0OPn1b54bM= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from freyja ([46.88.91.252]) by mail.gmx.com (mrgmx102 [212.227.17.168]) with ESMTPSA (Nemesis) id 0Lm6IP-1gems42tyj-00Zd1M; Tue, 09 Apr 2019 15:14:01 +0200 Date: Tue, 9 Apr 2019 15:13:54 +0200 From: "O. Hartmann" To: Chris Rees Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 Message-ID: <20190409151340.6f33b077@freyja> In-Reply-To: <201904071831.x37IVj4r096803@repo.freebsd.org> References: <201904071831.x37IVj4r096803@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:qf+0c8Mnsv0OMc6eMNHMwTOov35lvDyRKxfSwGrrHxT8xrzZuRQ esrwYUu766ASSbSaQRCDCeJXBFdgwkXMLI6F/ckuCxj34qw/AyzNstLTL3BHCfLhFGs0aLY 9eZ9rjTJAh85zK63YDyv3w1moVk6WSOG0a4sGgQfega6YLtc/GvIkcvLhlAUfYW92eJXu93 Zn7+goKOKOPxDkV3eswlg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:GbimZ4IjO1w=:+8c1MwlmDUIOkAoOnFt53u Hv2aRo6jkgxPUPvv6h3zY9eAVn9T4z76pFhnc8nfMZBId933jyR25vrpx7WJk749FdXNQWFhn 3D//LUVftfFfmEOOuCGF14zcyB7mPysY5HHpiiTzvwKRWsRj5FmudYCzDJDpF2wu9TUWX/tMX 2lZQ54/Uo2r7gRpunuzioJxZouNxMiHE91uD+2ep88tkRR4aR7ldynfGLX6UerEYRjYBhfvG1 gctBE2iLWKKW3uwA3F/QFKpbPpatGtnhjol+GTEjU5FTj7hZPev1+jOYw7JfTdcinSAiExIwB R53MvvPucCMonQPboROttUQzp6GwkFJQb80vZAqYynEkAHcxUWteuvotcPLeW5bOC+npPVP56 5+kZYU2wfIErDFZUDKTFwGN6CTCm7b6xIymbX9xobxW9mIcBS1VxYmgD7tvaMOubSYs2Aj9sS 0dd4W5hkc8X+IUW88gAxd/vmrPOevgLo391EqRU7jwABZ4hizp7Kt94jcetSotS+Eiub1YVFr OgIGMZuL0DPox03jbPIEwx3uC+KnUVSm1G9bu2VXoFaWVT5YVG3wplNx/K19y2Cc8O1oDMkOo xCKppOyNm6oLH9cHuNENTS3MEwOaa+QzyYnkZUsEJ9z9wGlwpyngyzhq1/SM7RGA+E/Atk/nQ P71xYxY34VfrMntVoyt8GobGC631Y6VYng8cJ9fdV4lNEZmNxxdjzgzI8y7hx6hiRp1vrCK2z TLx7Z7QgoOQzOblxEfFSWokG2nBd7r9jwD6fPYmbSepvemhFMmUsnuE+UHG0/23p9dbDJT2jM 6i19iH86x3m+d/OhxVPkTAbaM6Sr9OIKB8si/jCnAXNt7/2DP+ZipdDGWc4Btfs+e4UPeHZaI 1nWOWgBeTPkRPtFKFeGzU2DH7TcFx6Wht5hIPRzkQgMIGI8r9CUn8G9zI21dhzovd3pdIYwo1 kvdJzwhHQkw== X-Rspamd-Queue-Id: 8836D8CE6B X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmx.net header.s=badeba3b8450 header.b=VafBi4Py X-Spamd-Result: default: False [-3.74 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; R_DKIM_ALLOW(-0.20)[gmx.net:s=badeba3b8450]; NEURAL_HAM_MEDIUM(-0.97)[-0.968,0]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[walstatt.org]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; RCVD_COUNT_TWO(0.00)[2]; IP_SCORE(-1.13)[ip: (-5.79), ipnet: 212.227.0.0/16(-1.38), asn: 8560(1.54), country: DE(-0.01)]; DKIM_TRACE(0.00)[gmx.net:+]; MX_GOOD(-0.01)[cached: mx00.gmx.net]; NEURAL_HAM_SHORT(-0.73)[-0.732,0]; R_SPF_NA(0.00)[]; RCVD_IN_DNSWL_LOW(-0.10)[21.17.227.212.list.dnswl.org : 127.0.3.1]; RECEIVED_SPAMHAUS_PBL(0.00)[252.91.88.46.zen.spamhaus.org : 127.0.0.10]; MID_RHS_NOT_FQDN(0.50)[]; ASN(0.00)[asn:8560, ipnet:212.227.0.0/16, country:DE]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_ALL(0.00)[]; FROM_EQ_ENVFROM(0.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 13:14:13 -0000 On Sun, 7 Apr 2019 18:31:45 +0000 (UTC) Chris Rees wrote: > Author: crees (doc,ports committer) > Date: Sun Apr 7 18:31:45 2019 > New Revision: 346017 > URL: https://svnweb.freebsd.org/changeset/base/346017 > > Log: > Remove now unnecessary kldstat check before attempting to load modules= . > > Since r233109, kldload has the -n option, which silently ignores optio= ns > that are already loaded. > > https://lists.freebsd.org/pipermail/freebsd-rc/2018-December/003899.ht= ml > > Note that this script no longer reports if the module is already loade= d, > but it could be argued this wasn't particularly useful information. > > PR: docs/234248 > Reviewed by: bcr (docs), kib, rgrimes (visual) > Approved by: jilles > Differential Revision: https://reviews.freebsd.org/D18670 > > Modified: > head/libexec/rc/rc.d/abi > head/libexec/rc/rc.d/bthidd > head/libexec/rc/rc.d/cfumass > head/libexec/rc/rc.d/kld > head/libexec/rc/rc.d/mdconfig > head/libexec/rc/rc.d/mdconfig2 > head/libexec/rc/rc.d/mountcritremote > head/libexec/rc/rc.d/syscons > head/libexec/rc/rc.subr > head/share/man/man5/rc.conf.5 > > Modified: head/libexec/rc/rc.d/abi > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > --- head/libexec/rc/rc.d/abi Sun Apr 7 18:24:26 2019 (r346016) > +++ head/libexec/rc/rc.d/abi Sun Apr 7 18:31:45 2019 (r346017) > @@ -27,10 +27,10 @@ linux_start() > local _tmpdir > > echo -n ' linux' > - load_kld -e 'linux(aout|elf)' linux > + load_kld linux > case `sysctl -n hw.machine_arch` in > amd64) > - load_kld -e 'linux64elf' linux64 > + load_kld linux64 > ;; > esac > if [ -x /compat/linux/sbin/ldconfigDisabled ]; then > > Modified: head/libexec/rc/rc.d/bthidd > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > --- head/libexec/rc/rc.d/bthidd Sun Apr 7 18:24:26 2019 > (r346016) +++ head/libexec/rc/rc.d/bthidd Sun Apr 7 18:31:45 > 2019 (r346017) @@ -34,11 +34,11 @@ evdev_enabled() > bthidd_prestart() > { > if evdev_enabled; then > - load_kld -m uinput uinput > + load_kld uinput > fi > - load_kld -m kbdmux kbdmux > - load_kld -m vkbd vkbd > - load_kld -m ng_btsocket ng_btsocket > + load_kld kbdmux > + load_kld vkbd > + load_kld ng_btsocket > return 0 > } > > > Modified: head/libexec/rc/rc.d/cfumass > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > --- head/libexec/rc/rc.d/cfumass Sun Apr 7 18:24:26 2019 > (r346016) +++ head/libexec/rc/rc.d/cfumass Sun Apr 7 18:31:45 > 2019 (r346017) @@ -75,7 +75,7 @@ cfumass_start() > return "${err}" > fi > > - load_kld -e cfumass cfumass > + load_kld cfumass > > # If the template is already switched to Mass Storage, then reset > # it to -1 to force the host to reenumerate it; otherwise it might > > Modified: head/libexec/rc/rc.d/kld > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > --- head/libexec/rc/rc.d/kld Sun Apr 7 18:24:26 2019 (r346016) > +++ head/libexec/rc/rc.d/kld Sun Apr 7 18:31:45 2019 (r346017) > @@ -46,7 +46,7 @@ kld_start() > > echo 'Loading kernel modules:' > for _kld in $kld_list ; do > - load_kld -e ${_kld}.ko $_kld > + load_kld $_kld > done > } > > > Modified: head/libexec/rc/rc.d/mdconfig > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > --- head/libexec/rc/rc.d/mdconfig Sun Apr 7 18:24:26 2019 > (r346016) +++ head/libexec/rc/rc.d/mdconfig Sun Apr 7 18:31:45 > 2019 (r346017) @@ -114,7 +114,7 @@ mdconfig_start() > continue > fi > if [ "${_file}" !=3D "${_file%.uzip}" ]; then > - load_kld -m g_uzip geom_uzip || > return 3 > + load_kld geom_uzip || return 3 > # sleep a bit to allow creation > of /dev/mdX.uzip sleep 2 > fi > > Modified: head/libexec/rc/rc.d/mdconfig2 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > --- head/libexec/rc/rc.d/mdconfig2 Sun Apr 7 18:24:26 2019 > (r346016) +++ head/libexec/rc/rc.d/mdconfig2 Sun Apr 7 18:31:45 > 2019 (r346017) @@ -123,7 +123,7 @@ mdconfig2_start() > # been created. > if [ "${_type}" =3D "vnode" -a "${_fs}" !=3D "/" ]; then > if [ "${_file}" !=3D "${_file%.uzip}" ]; then > - load_kld -m g_uzip geom_uzip || return 3 > + load_kld geom_uzip || return 3 > fi > if is_readonly ${_fs}; then > warn "${_fs} is mounted read-only, skipping > ${_md}." > > Modified: head/libexec/rc/rc.d/mountcritremote > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > --- head/libexec/rc/rc.d/mountcritremote Sun Apr 7 18:24:26 > 2019 (r346016) +++ head/libexec/rc/rc.d/mountcritremote Sun > Apr 7 18:31:45 2019 (r346017) @@ -27,7 +27,7 @@ > mountcritremote_precmd() case "`mount -d -a -t nfs 2> /dev/null`" in > *mount_nfs*) > # Handle absent nfs client support > - load_kld -m nfs nfscl || return 1 > + load_kld nfscl || return 1 > ;; > esac > return 0 > > Modified: head/libexec/rc/rc.d/syscons > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > --- head/libexec/rc/rc.d/syscons Sun Apr 7 18:24:26 2019 > (r346016) +++ head/libexec/rc/rc.d/syscons Sun Apr 7 18:31:45 > 2019 (r346017) @@ -346,7 +346,7 @@ syscons_start() > for i in `kldstat | awk '$5 ~ "_saver\.ko$" { print $5 }'`; > do kldunload ${i} > done > - load_kld -e _saver ${saver}_saver > + load_kld ${saver}_saver > ;; > esac > > > Modified: head/libexec/rc/rc.subr > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > --- head/libexec/rc/rc.subr Sun Apr 7 18:24:26 2019 (r346016) > +++ head/libexec/rc/rc.subr Sun Apr 7 18:31:45 2019 (r346017) > @@ -1853,48 +1853,29 @@ mount_md() > } > > # Code common to scripts that need to load a kernel module > -# if it isn't in the kernel yet. Syntax: > -# load_kld [-e regex] [-m module] file > -# where -e or -m chooses the way to check if the module > -# is already loaded: > -# regex is egrep'd in the output from `kldstat -v', > -# module is passed to `kldstat -m'. > -# The default way is as though `-m file' were specified. > +# if it isn't in the kernel yet. Syntax: > +# load_kld file > load_kld() > { > - local _loaded _mod _opt _re > + local _opt > > + # Silently ignore legacy options; they are unnecessary > while getopts "e:m:" _opt; do > case "$_opt" in > - e) _re=3D"$OPTARG" ;; > - m) _mod=3D"$OPTARG" ;; > - *) err 3 'USAGE: load_kld [-e regex] [-m module] file' ;; > + e) ;; > + m) ;; > + *) err 3 'USAGE: load_kld file' ;; > esac > done > shift $(($OPTIND - 1)) > if [ $# -ne 1 ]; then > - err 3 'USAGE: load_kld [-e regex] [-m module] file' > + err 3 'USAGE: load_kld file' > fi > - _mod=3D${_mod:-$1} > - _loaded=3Dfalse > - if [ -n "$_re" ]; then > - if kldstat -v | egrep -q -e "$_re"; then > - _loaded=3Dtrue > - fi > + if ! kldload -n "$1"; then > + warn "Unable to load kernel module $1" > + return 1 > else > - if kldstat -q -m "$_mod"; then > - _loaded=3Dtrue > - fi > - fi > - if ! $_loaded; then > - if ! kldload "$1"; then > - warn "Unable to load kernel module $1" > - return 1 > - else > - info "$1 kernel module loaded." > - fi > - else > - debug "load_kld: $1 kernel module already loaded." > + info "$1 kernel module loaded." > fi > return 0 > } > > Modified: head/share/man/man5/rc.conf.5 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > --- head/share/man/man5/rc.conf.5 Sun Apr 7 18:24:26 2019 > (r346016) +++ head/share/man/man5/rc.conf.5 Sun Apr 7 18:31:45 > 2019 (r346017) @@ -24,7 +24,7 @@ > .\" > .\" $FreeBSD$ > .\" > -.Dd March 21, 2019 > +.Dd April 7, 2019 > .Dt RC.CONF 5 > .Os > .Sh NAME > @@ -249,9 +249,7 @@ Default > .It Va kld_list > .Pq Vt str > A whitespace-separated list of kernel modules to load right after > -the local disks are mounted, without any > -.Pa .ko > -extension or path. > +the local disks are mounted, with optional path. > Loading modules at this point in the boot process is > much faster than doing it via > .Pa /boot/loader.conf > _______________________________________________ > svn-src-head@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/svn-src-head > To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org" It seems this patch breaks ZFS if ZFS is built-in kernel! Having ZFS as kernel built-in leaves the system not mounting ANY(!) ZFS vo= lume at boot time, rendering servers unusable. Mounting ZFS filesystems with "zfs mount -a" bring back the ZFS filesystem= s as expected. Regards, oh From owner-svn-src-all@freebsd.org Tue Apr 9 13:54:09 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BAE661581C1F; Tue, 9 Apr 2019 13:54:09 +0000 (UTC) (envelope-from ganbold@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 5ED4D8E54E; Tue, 9 Apr 2019 13:54:09 +0000 (UTC) (envelope-from ganbold@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 3807AC022; Tue, 9 Apr 2019 13:54:09 +0000 (UTC) (envelope-from ganbold@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39Ds9tZ070859; Tue, 9 Apr 2019 13:54:09 GMT (envelope-from ganbold@FreeBSD.org) Received: (from ganbold@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39Ds9e6070857; Tue, 9 Apr 2019 13:54:09 GMT (envelope-from ganbold@FreeBSD.org) Message-Id: <201904091354.x39Ds9e6070857@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ganbold set sender to ganbold@FreeBSD.org using -f From: Ganbold Tsagaankhuu Date: Tue, 9 Apr 2019 13:54:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346052 - head/sys/dev/usb/net X-SVN-Group: head X-SVN-Commit-Author: ganbold X-SVN-Commit-Paths: head/sys/dev/usb/net X-SVN-Commit-Revision: 346052 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5ED4D8E54E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 13:54:10 -0000 Author: ganbold Date: Tue Apr 9 13:54:08 2019 New Revision: 346052 URL: https://svnweb.freebsd.org/changeset/base/346052 Log: In some cases like NanoPI R1, its second USB ethernet RTL8152 (chip version URE_CHIP_VER_4C10) doesn't have hardwired MAC address, in other words, it is all zeros. This commit fixes it by setting random MAC address when MAC address is all zeros. Reviewed by: kevlo Differential Revision: https://reviews.freebsd.org/D19856 Modified: head/sys/dev/usb/net/if_ure.c Modified: head/sys/dev/usb/net/if_ure.c ============================================================================== --- head/sys/dev/usb/net/if_ure.c Tue Apr 9 12:28:12 2019 (r346051) +++ head/sys/dev/usb/net/if_ure.c Tue Apr 9 13:54:08 2019 (r346052) @@ -62,6 +62,9 @@ SYSCTL_INT(_hw_usb_ure, OID_AUTO, debug, CTLFLAG_RWTUN "Debug level"); #endif +#define ETHER_IS_ZERO(addr) \ + (!(addr[0] | addr[1] | addr[2] | addr[3] | addr[4] | addr[5])) + /* * Various supported device vendors/products. */ @@ -673,12 +676,20 @@ ure_attach_post(struct usb_ether *ue) else ure_rtl8153_init(sc); - if (sc->sc_chip & URE_CHIP_VER_4C00) + if ((sc->sc_chip & URE_CHIP_VER_4C00) || + (sc->sc_chip & URE_CHIP_VER_4C10)) ure_read_mem(sc, URE_PLA_IDR, URE_MCU_TYPE_PLA, ue->ue_eaddr, 8); else ure_read_mem(sc, URE_PLA_BACKUP, URE_MCU_TYPE_PLA, ue->ue_eaddr, 8); + + if (ETHER_IS_ZERO(sc->sc_ue.ue_eaddr)) { + device_printf(sc->sc_ue.ue_dev, "MAC assigned randomly\n"); + arc4rand(sc->sc_ue.ue_eaddr, ETHER_ADDR_LEN, 0); + sc->sc_ue.ue_eaddr[0] &= ~0x01; /* unicast */ + sc->sc_ue.ue_eaddr[0] |= 0x02; /* locally administered */ + } } static int @@ -724,8 +735,10 @@ ure_init(struct usb_ether *ue) ure_reset(sc); /* Set MAC address. */ + ure_write_1(sc, URE_PLA_CRWECR, URE_MCU_TYPE_PLA, URE_CRWECR_CONFIG); ure_write_mem(sc, URE_PLA_IDR, URE_MCU_TYPE_PLA | URE_BYTE_EN_SIX_BYTES, IF_LLADDR(ifp), 8); + ure_write_1(sc, URE_PLA_CRWECR, URE_MCU_TYPE_PLA, URE_CRWECR_NORAML); /* Reset the packet filter. */ ure_write_2(sc, URE_PLA_FMC, URE_MCU_TYPE_PLA, From owner-svn-src-all@freebsd.org Tue Apr 9 14:29:35 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9B03715825C7; Tue, 9 Apr 2019 14:29:35 +0000 (UTC) (envelope-from bu7cher@yandex.ru) Received: from forward104p.mail.yandex.net (forward104p.mail.yandex.net [IPv6:2a02:6b8:0:1472:2741:0:8b7:107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 160EA8F5CC; Tue, 9 Apr 2019 14:29:34 +0000 (UTC) (envelope-from bu7cher@yandex.ru) Received: from mxback14g.mail.yandex.net (mxback14g.mail.yandex.net [IPv6:2a02:6b8:0:1472:2741:0:8b7:93]) by forward104p.mail.yandex.net (Yandex) with ESMTP id EDAF84B00ED0; Tue, 9 Apr 2019 17:29:30 +0300 (MSK) Received: from smtp1p.mail.yandex.net (smtp1p.mail.yandex.net [2a02:6b8:0:1472:2741:0:8b6:6]) by mxback14g.mail.yandex.net (nwsmtp/Yandex) with ESMTP id cCXQSLdB5G-TUmWLPRr; Tue, 09 Apr 2019 17:29:30 +0300 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1554820170; bh=VkSPis6YyAFevls/NAAS9v8JsCoRYrcSPSBrko44Hxs=; h=In-Reply-To:From:Date:References:To:Subject:Message-ID; b=amKpDgM/2g8A10yvZkXXxpvW3ZRxQam5wAbpYnUQfw9IEuN8fMq10nd/fIXy/gioQ ZghTApGVOxNBlSds58dHRsCCX6sI/hFQiYGvXZV7h2h+jDrPvAs9bKBs1ASrtn/dBt YGJKgioRuQngchKbQH4jhTMgfJTUOAOGZGHT6aZA= Received: by smtp1p.mail.yandex.net (nwsmtp/Yandex) with ESMTPSA id kF7TwJKW3K-TUNS4NtQ; Tue, 09 Apr 2019 17:29:30 +0300 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client certificate not present) Subject: Re: svn commit: r346052 - head/sys/dev/usb/net To: Ganbold Tsagaankhuu , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904091354.x39Ds9e6070857@repo.freebsd.org> From: "Andrey V. Elsukov" Openpgp: id=E6591E1B41DA1516F0C9BC0001C5EA0410C8A17A Autocrypt: addr=bu7cher@yandex.ru; prefer-encrypt=mutual; keydata= mQENBEwBF1kBCADB9sXFhBEUy8qQ4X63Y8eBatYMHGEFWN9ypS5lI3RE6qQW2EYbxNk7qUC5 21YIIS1mMFVBEfvR7J9uc7yaYgFCEb6Sce1RSO4ULN2mRKGHP3/Sl0ijZEjWHV91hY1YTHEF ZW/0GYinDf56sYpDDehaBF5wkWIo1+QK5nmj3vl0DIDCMNd7QEiWpyLVwECgLX2eOAXByT8B bCqVhJGcG6iFP7/B9Ll6uX5gb8thM9LM+ibwErDBVDGiOgvfxqidab7fdkh893IBCXa82H9N CNwnEtcgzh+BSKK5BgvPohFMgRwjti37TSxwLu63QejRGbZWSz3OK3jMOoF63tCgn7FvABEB AAG0JUFuZHJleSBWLiBFbHN1a292IDxidTdjaGVyQHlhbmRleC5ydT6JATgEEwECACIFAkwB F1kCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEAHF6gQQyKF6qmYIAI6ekfm1VA4T vqankI1ISE6ku4jV7UlpIQlEbE7/8n3Zd6teJ+pGOQhN5qk8QE7utdPdbktAzi+x7LIJVzUw 4TywZLXGrkP7VKYkfg6oyCGyzITghefQeJtr2TN4hYCkzPWpylkue8MtmqfZv/6royqwTbN+ +E09FQNvTgRUYJYTeQ1qOsxNRycwvw3dr2rOfuxShbzaHBB1pBIjGrMg8fC5pd65ACH5zuFV A0CoTNGMDrEZSfBkTW604UUHFFXeCoC3dwDZRKOWJ3GmMXns65Ai5YkA63BSHEE1Qle3VBhd cG1w0CB5FBV3pB27UVnf0jEbysrDqW4qN7XMRFSWNAy5AQ0ETAEXWQEIAJ2p6l9LBoqdH/0J PEFDY2t2gTvAuzz+8zs3R03dFuHcNbOwjvWCG0aOmVpAzkRa8egn5JB4sZaFUtKPYJEQ1Iu+ LUBwgvtXf4vWpzC67zs2dDuiW4LamH5p6xkTD61aHR7mCB3bg2TUjrDWn2Jt44cvoYxj3dz4 S49U1rc9ZPgD5axCNv45j72tggWlZvpefThP7xT1OlNTUqye2gAwQravXpZkl5JG4eOqJVIU X316iE3qso0iXRUtO7OseBf0PiVmk+wCahdreHOeOxK5jMhYkPKVn7z1sZiB7W2H2TojbmcK HZC22sz7Z/H36Lhg1+/RCnGzdEcjGc8oFHXHCxUAEQEAAYkBHwQYAQIACQUCTAEXWQIbDAAK CRABxeoEEMihegkYCAC3ivGYNe2taNm/4Nx5GPdzuaAJGKWksV+w9mo7dQvU+NmI2az5w8vw 98OmX7G0OV9snxMW+6cyNqBrVFTu33VVNzz9pnqNCHxGvj5dL5ltP160JV2zw2bUwJBYsgYQ WfyJJIM7l3gv5ZS3DGqaGIm9gOK1ANxfrR5PgPzvI9VxDhlr2juEVMZYAqPLEJe+SSxbwLoz BcFCNdDAyXcaAzXsx/E02YWm1hIWNRxanAe7Vlg7OL+gvLpdtrYCMg28PNqKNyrQ87LQ49O9 50IIZDOtNFeR0FGucjcLPdS9PiEqCoH7/waJxWp6ydJ+g4OYRBYNM0EmMgy1N85JJrV1mi5i Message-ID: <7e6208ff-9c9e-9a08-1f67-15e3506758aa@yandex.ru> Date: Tue, 9 Apr 2019 17:26:53 +0300 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 MIME-Version: 1.0 In-Reply-To: <201904091354.x39Ds9e6070857@repo.freebsd.org> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="zlwWwCAqsNAa7i8b9cDATykK3gTzVffv8" X-Rspamd-Queue-Id: 160EA8F5CC X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.955,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 14:29:35 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --zlwWwCAqsNAa7i8b9cDATykK3gTzVffv8 Content-Type: multipart/mixed; boundary="W7PYkrAMnbxKAvbPNjDV1e9OvSuqOtvnk"; protected-headers="v1" From: "Andrey V. Elsukov" To: Ganbold Tsagaankhuu , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-ID: <7e6208ff-9c9e-9a08-1f67-15e3506758aa@yandex.ru> Subject: Re: svn commit: r346052 - head/sys/dev/usb/net References: <201904091354.x39Ds9e6070857@repo.freebsd.org> In-Reply-To: <201904091354.x39Ds9e6070857@repo.freebsd.org> --W7PYkrAMnbxKAvbPNjDV1e9OvSuqOtvnk Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable On 09.04.2019 16:54, Ganbold Tsagaankhuu wrote: > Author: ganbold > Date: Tue Apr 9 13:54:08 2019 > New Revision: 346052 > URL: https://svnweb.freebsd.org/changeset/base/346052 >=20 > Log: > In some cases like NanoPI R1, its second USB ethernet > RTL8152 (chip version URE_CHIP_VER_4C10) doesn't > have hardwired MAC address, in other words, it is all zeros. > This commit fixes it by setting random MAC address > when MAC address is all zeros. > =20 > - if (sc->sc_chip & URE_CHIP_VER_4C00) > + if ((sc->sc_chip & URE_CHIP_VER_4C00) || > + (sc->sc_chip & URE_CHIP_VER_4C10)) > ure_read_mem(sc, URE_PLA_IDR, URE_MCU_TYPE_PLA, > ue->ue_eaddr, 8); > else > ure_read_mem(sc, URE_PLA_BACKUP, URE_MCU_TYPE_PLA, > ue->ue_eaddr, 8); > + > + if (ETHER_IS_ZERO(sc->sc_ue.ue_eaddr)) { > + device_printf(sc->sc_ue.ue_dev, "MAC assigned randomly\n"); > + arc4rand(sc->sc_ue.ue_eaddr, ETHER_ADDR_LEN, 0); > + sc->sc_ue.ue_eaddr[0] &=3D ~0x01; /* unicast */ > + sc->sc_ue.ue_eaddr[0] |=3D 0x02; /* locally administered */ > + } > } Hi, there is ether_fakeaddr() function that is used for such purpose. Maybe is it better to use it? Look at this commit: https://svnweb.freebsd.org/base?view=3Drevision&revision=3D345139 --=20 WBR, Andrey V. Elsukov --W7PYkrAMnbxKAvbPNjDV1e9OvSuqOtvnk-- --zlwWwCAqsNAa7i8b9cDATykK3gTzVffv8 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/ iQEzBAEBCAAdFiEE5lkeG0HaFRbwybwAAcXqBBDIoXoFAlysq60ACgkQAcXqBBDI oXrjJQgAsMs+O0i+GpxyN0Su5I3NnYvIrqKB2qStO3hXVUiDDqu56oVCCR4b1Vlh VrVyEG6VxUi2zN4nwlALNLJHvp3ujTML7ZYJmKXVrf7OiZewiDczOpBQkU1ZVpEP NSHCWxjBAaIK42Kv48sYqfNOc5+6QA7g87Hs8vHJASDEl/6bHi9rT+eUC2F9jnkk WXwzgLHDA3sX7nuJfRD/LhPvfw2m2LAPuqYxHRKGwTKBGi0IsvM0zXyN4DzHPtgf T+yZlEBm9PYuyRUxZAavVreinlKUL6rvzW7C7C/pKnnuabZ3rE13F1U2WHmYsDgW 0fn72S1ei+qusXAyDy0RK/WNPHZAcA== =8ZiJ -----END PGP SIGNATURE----- --zlwWwCAqsNAa7i8b9cDATykK3gTzVffv8-- From owner-svn-src-all@freebsd.org Tue Apr 9 15:06:53 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B2F5515316C2; Tue, 9 Apr 2019 15:06:53 +0000 (UTC) (envelope-from crees@bayofrum.net) Received: from mail33c50.megamailservers.eu (mail163c50.megamailservers.eu [91.136.10.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D856A69F09; Tue, 9 Apr 2019 15:06:52 +0000 (UTC) (envelope-from crees@bayofrum.net) X-Authenticated-User: bayofrum@uwclub.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu; s=maildub; t=1554822405; bh=sNdJEqjTbSQXXXAvjxpR8ODK0MNhi3sJD53N8p4uVRE=; h=Date:In-Reply-To:References:Subject:To:CC:From:From; b=YjxgEuMCX9fc0eAZSV7TcglY6xDaZVyRMzCvoGTpzuZGia+26jP14OSZk5qIm0iEL JPZj/ED1Hj9nubEQ6Tbw103o+Jp7mCw5+HF/rk9aCMqnb23zVD2A+jY+XGKOFEtGpG YxhDNdOFW3cdXUeIZk6++wkrbXBRLYNNVpJ7eqgo= Feedback-ID: crees@bayofrum. Received: from pegasus.bayofrum.net (81-178-238-70.dsl.pipex.com [81.178.238.70]) (authenticated bits=0) by mail33c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id x39F6hie009789; Tue, 9 Apr 2019 15:06:44 +0000 Received: from [100.105.118.115] (unknown [213.205.242.83]) by pegasus.bayofrum.net (Postfix) with ESMTPSA id 895331832E; Tue, 9 Apr 2019 16:06:38 +0100 (BST) Date: Tue, 09 Apr 2019 16:06:36 +0100 User-Agent: K-9 Mail for Android In-Reply-To: <20190409151340.6f33b077@freyja> References: <201904071831.x37IVj4r096803@repo.freebsd.org> <20190409151340.6f33b077@freyja> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 To: "O. Hartmann" , Chris Rees CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Chris Rees Message-ID: <749EBFB4-94B8-4FD9-8774-FE6FB18FFA07@bayofrum.net> X-bayofrum-MailScanner-Information: Please contact the ISP for more information X-bayofrum-MailScanner-ID: 895331832E.A5DCC X-bayofrum-MailScanner: Found to be clean X-bayofrum-MailScanner-From: crees@bayofrum.net X-Spam-Status: No X-CTCH-RefID: str=0001.0A0B0205.5CACB505.002A, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-CSC: 0 X-CHA: v=2.3 cv=eOw9ckh1 c=1 sm=1 tr=0 a=i0HMBnJGy7D3/NFKO8d8XA==:117 a=i0HMBnJGy7D3/NFKO8d8XA==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=IkcTkHD0fZMA:10 a=oexKYjalfGEA:10 a=iaTFZB6CAAAA:8 a=6I5d2MoRAAAA:8 a=NV2mcPfE25mr8LH4jqIA:9 a=QEXdDO2ut3YA:10 a=HOOHyrUpFT4A:10 a=QWXrQ9iV8q7LKaLQ9lfw:22 a=IjZwj45LgO3ly-622nXo:22 X-Rspamd-Queue-Id: D856A69F09 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.97)[-0.971,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 15:06:54 -0000 Hey, On 9 April 2019 14:13:54 BST, "O. Hartmann" wrote: >On Sun, 7 Apr 2019 18:31:45 +0000 (UTC) >Chris Rees wrote: > >> Author: crees (doc,ports committer) >> Date: Sun Apr 7 18:31:45 2019 >> New Revision: 346017 >> URL: https://svnweb.freebsd.org/changeset/base/346017 >> >> Log: >> Remove now unnecessary kldstat check before attempting to load >modules. >> >> Since r233109, kldload has the -n option, which silently ignores >options >> that are already loaded. >> >>=20=20 >https://lists.freebsd.org/pipermail/freebsd-rc/2018-December/003899.html >> >> Note that this script no longer reports if the module is already >loaded, >> but it could be argued this wasn't particularly useful information. >> >> PR: docs/234248 >> Reviewed by: bcr (docs), kib, rgrimes (visual) >> Approved by: jilles >> Differential Revision: https://reviews.freebsd.org/D18670 >> >> Modified: >> head/libexec/rc/rc.d/abi >> head/libexec/rc/rc.d/bthidd >> head/libexec/rc/rc.d/cfumass >> head/libexec/rc/rc.d/kld >> head/libexec/rc/rc.d/mdconfig >> head/libexec/rc/rc.d/mdconfig2 >> head/libexec/rc/rc.d/mountcritremote >> head/libexec/rc/rc.d/syscons >> head/libexec/rc/rc.subr >> head/share/man/man5/rc.conf.5 >> >> Modified: head/libexec/rc/rc.d/abi >> >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D {Snip} >It seems this patch breaks ZFS if ZFS is built-in kernel! > >Having ZFS as kernel built-in leaves the system not mounting ANY(!) ZFS >volume >at boot time, rendering servers unusable. >Mounting ZFS filesystems with "zfs mount -a" bring back the ZFS >filesystems as >expected. > Are you sure it's this causing that? Please try reverting it. Chris=20 --=20 Sent from my Android device with K-9 Mail. Please excuse my brevity. --=20 This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. From owner-svn-src-all@freebsd.org Tue Apr 9 15:24:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F411D1531E01; Tue, 9 Apr 2019 15:24:39 +0000 (UTC) (envelope-from trasz@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 96D506A9DC; Tue, 9 Apr 2019 15:24:39 +0000 (UTC) (envelope-from trasz@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 536D6CF75; Tue, 9 Apr 2019 15:24:39 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39FOdlx023300; Tue, 9 Apr 2019 15:24:39 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39FOdPv023299; Tue, 9 Apr 2019 15:24:39 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201904091524.x39FOdPv023299@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Tue, 9 Apr 2019 15:24:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346053 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 346053 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 96D506A9DC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 15:24:40 -0000 Author: trasz Date: Tue Apr 9 15:24:38 2019 New Revision: 346053 URL: https://svnweb.freebsd.org/changeset/base/346053 Log: Factor out section loading into a separate function. Reviewed by: kib MFC after: 2 weeks Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D19846 Modified: head/sys/kern/imgact_elf.c Modified: head/sys/kern/imgact_elf.c ============================================================================== --- head/sys/kern/imgact_elf.c Tue Apr 9 13:54:08 2019 (r346052) +++ head/sys/kern/imgact_elf.c Tue Apr 9 15:24:38 2019 (r346053) @@ -649,6 +649,45 @@ __elfN(load_section)(struct image_params *imgp, vm_oof return (0); } +static int +__elfN(load_sections)(struct image_params *imgp, const Elf_Ehdr *hdr, + const Elf_Phdr *phdr, u_long rbase, u_long *base_addrp) +{ + vm_prot_t prot; + u_long base_addr; + bool first; + int error, i; + + base_addr = 0; + first = true; + + for (i = 0; i < hdr->e_phnum; i++) { + if (phdr[i].p_type != PT_LOAD || phdr[i].p_memsz == 0) + continue; + + /* Loadable segment */ + prot = __elfN(trans_prot)(phdr[i].p_flags); + error = __elfN(load_section)(imgp, phdr[i].p_offset, + (caddr_t)(uintptr_t)phdr[i].p_vaddr + rbase, + phdr[i].p_memsz, phdr[i].p_filesz, prot); + if (error != 0) + return (error); + + /* + * Establish the base address if this is the first segment. + */ + if (first) { + base_addr = trunc_page(phdr[i].p_vaddr + rbase); + first = false; + } + } + + if (base_addrp != NULL) + *base_addrp = base_addr; + + return (0); +} + /* * Load the file "file" into memory. It may be either a shared object * or an executable. @@ -675,10 +714,9 @@ __elfN(load_file)(struct proc *p, const char *file, u_ struct nameidata *nd; struct vattr *attr; struct image_params *imgp; - vm_prot_t prot; u_long rbase; u_long base_addr = 0; - int error, i, numsegs; + int error; #ifdef CAPABILITY_MODE /* @@ -756,25 +794,10 @@ __elfN(load_file)(struct proc *p, const char *file, u_ goto fail; } - for (i = 0, numsegs = 0; i < hdr->e_phnum; i++) { - if (phdr[i].p_type == PT_LOAD && phdr[i].p_memsz != 0) { - /* Loadable segment */ - prot = __elfN(trans_prot)(phdr[i].p_flags); - error = __elfN(load_section)(imgp, phdr[i].p_offset, - (caddr_t)(uintptr_t)phdr[i].p_vaddr + rbase, - phdr[i].p_memsz, phdr[i].p_filesz, prot); - if (error != 0) - goto fail; - /* - * Establish the base address if this is the - * first segment. - */ - if (numsegs == 0) - base_addr = trunc_page(phdr[i].p_vaddr + - rbase); - numsegs++; - } - } + error = __elfN(load_sections)(imgp, hdr, phdr, rbase, &base_addr); + if (error != 0) + goto fail; + *addr = base_addr; *entry = (unsigned long)hdr->e_entry + rbase; @@ -998,7 +1021,6 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i char *interp; Elf_Brandinfo *brand_info; struct sysentvec *sv; - vm_prot_t prot; u_long addr, baddr, et_dyn_addr, entry, proghdr; u_long maxalign, mapsz, maxv, maxv1; uint32_t fctl0; @@ -1055,6 +1077,17 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i maxalign = phdr[i].p_align; mapsz += phdr[i].p_memsz; n++; + + /* + * If this segment contains the program headers, + * remember their virtual address for the AT_PHDR + * aux entry. Static binaries don't usually include + * a PT_PHDR entry. + */ + if (phdr[i].p_offset == 0 && + hdr->e_phoff + hdr->e_phnum * hdr->e_phentsize + <= phdr[i].p_filesz) + proghdr = phdr[i].p_vaddr + hdr->e_phoff; break; case PT_INTERP: /* Path to interpreter */ @@ -1074,6 +1107,9 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i __elfN(trans_prot)(phdr[i].p_flags); imgp->stack_sz = phdr[i].p_memsz; break; + case PT_PHDR: /* Program header table info */ + proghdr = phdr[i].p_vaddr; + break; } } @@ -1174,38 +1210,10 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i if (error != 0) goto ret; - for (i = 0; i < hdr->e_phnum; i++) { - switch (phdr[i].p_type) { - case PT_LOAD: /* Loadable segment */ - if (phdr[i].p_memsz == 0) - break; - prot = __elfN(trans_prot)(phdr[i].p_flags); - error = __elfN(load_section)(imgp, phdr[i].p_offset, - (caddr_t)(uintptr_t)phdr[i].p_vaddr + et_dyn_addr, - phdr[i].p_memsz, phdr[i].p_filesz, prot); - if (error != 0) - goto ret; + error = __elfN(load_sections)(imgp, hdr, phdr, et_dyn_addr, NULL); + if (error != 0) + goto ret; - /* - * If this segment contains the program headers, - * remember their virtual address for the AT_PHDR - * aux entry. Static binaries don't usually include - * a PT_PHDR entry. - */ - if (phdr[i].p_offset == 0 && - hdr->e_phoff + hdr->e_phnum * hdr->e_phentsize - <= phdr[i].p_filesz) - proghdr = phdr[i].p_vaddr + hdr->e_phoff + - et_dyn_addr; - break; - case PT_PHDR: /* Program header table info */ - proghdr = phdr[i].p_vaddr + et_dyn_addr; - break; - default: - break; - } - } - error = __elfN(enforce_limits)(imgp, hdr, phdr, et_dyn_addr); if (error != 0) goto ret; @@ -1253,7 +1261,7 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i */ elf_auxargs = malloc(sizeof(Elf_Auxargs), M_TEMP, M_WAITOK); elf_auxargs->execfd = -1; - elf_auxargs->phdr = proghdr; + elf_auxargs->phdr = proghdr + et_dyn_addr; elf_auxargs->phent = hdr->e_phentsize; elf_auxargs->phnum = hdr->e_phnum; elf_auxargs->pagesz = PAGE_SIZE; From owner-svn-src-all@freebsd.org Tue Apr 9 15:52:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8B658153FAE3; Tue, 9 Apr 2019 15:52:19 +0000 (UTC) (envelope-from emaste@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 2F3CA6B8DF; Tue, 9 Apr 2019 15:52:19 +0000 (UTC) (envelope-from emaste@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 091EBD49B; Tue, 9 Apr 2019 15:52:19 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39FqIQG038926; Tue, 9 Apr 2019 15:52:18 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39FqImw038925; Tue, 9 Apr 2019 15:52:18 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201904091552.x39FqImw038925@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 9 Apr 2019 15:52:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346054 - head/lib/libc/string X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/lib/libc/string X-SVN-Commit-Revision: 346054 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2F3CA6B8DF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 15:52:19 -0000 Author: emaste Date: Tue Apr 9 15:52:18 2019 New Revision: 346054 URL: https://svnweb.freebsd.org/changeset/base/346054 Log: libc: update strstr implementation to match musl musl commits: 122d67f846cb0be2c9e1c3880db9eb9545bbe38c 0239cd0681e889a269fb7691f60e81ef8d081e6b 8f5a820d147da36bcdbddd201b35d293699dacd8 Submitted by: David CARLIER Obtained from: musl MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D19834 Modified: head/lib/libc/string/strstr.c Modified: head/lib/libc/string/strstr.c ============================================================================== --- head/lib/libc/string/strstr.c Tue Apr 9 15:24:38 2019 (r346053) +++ head/lib/libc/string/strstr.c Tue Apr 9 15:52:18 2019 (r346054) @@ -143,9 +143,8 @@ static char *twoway_strstr(const unsigned char *h, con /* Check last byte first; advance by shift on mismatch */ if (BITOP(byteset, h[l-1], &)) { k = l-shift[h[l-1]]; - //printf("adv by %zu (on %c) at [%s] (%zu;l=%zu)\n", k, h[l-1], h, shift[h[l-1]], l); if (k) { - if (mem0 && mem && k < p) k = l-p; + if (k < mem) k = mem; h += k; mem = 0; continue; From owner-svn-src-all@freebsd.org Tue Apr 9 16:11:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 742111563592; Tue, 9 Apr 2019 16:11:57 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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 "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1710D6C3E2; Tue, 9 Apr 2019 16:11:57 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-3.local (ralph.baldwin.cx [66.234.199.215]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 83353E577; Tue, 9 Apr 2019 16:11:55 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r346052 - head/sys/dev/usb/net To: Ganbold Tsagaankhuu , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904091354.x39Ds9e6070857@repo.freebsd.org> From: John Baldwin Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: Date: Tue, 9 Apr 2019 09:11:53 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <201904091354.x39Ds9e6070857@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1710D6C3E2 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 16:11:57 -0000 On 4/9/19 6:54 AM, Ganbold Tsagaankhuu wrote: > Author: ganbold > Date: Tue Apr 9 13:54:08 2019 > New Revision: 346052 > URL: https://svnweb.freebsd.org/changeset/base/346052 > > Log: > In some cases like NanoPI R1, its second USB ethernet > RTL8152 (chip version URE_CHIP_VER_4C10) doesn't > have hardwired MAC address, in other words, it is all zeros. > This commit fixes it by setting random MAC address > when MAC address is all zeros. > > Reviewed by: kevlo > Differential Revision: https://reviews.freebsd.org/D19856 It would be best to not use a purely random mac address and to use the function kevans@ added recently. That function generates a MAC address from the FreeBSD OUI using a cryptographic hash so you get a stable address across boots on a given host. -- John Baldwin From owner-svn-src-all@freebsd.org Tue Apr 9 16:16:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3FE991563719; Tue, 9 Apr 2019 16:16:11 +0000 (UTC) (envelope-from ngie@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 D6FDB6C6F4; Tue, 9 Apr 2019 16:16:10 +0000 (UTC) (envelope-from ngie@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 AF82FD845; Tue, 9 Apr 2019 16:16:10 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39GGAlB049571; Tue, 9 Apr 2019 16:16:10 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39GGAEs049570; Tue, 9 Apr 2019 16:16:10 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201904091616.x39GGAEs049570@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 9 Apr 2019 16:16:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346055 - stable/12/tests/sys/cddl/zfs/tests/delegate X-SVN-Group: stable-12 X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: stable/12/tests/sys/cddl/zfs/tests/delegate X-SVN-Commit-Revision: 346055 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D6FDB6C6F4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.993,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.952,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 16:16:11 -0000 Author: ngie Date: Tue Apr 9 16:16:10 2019 New Revision: 346055 URL: https://svnweb.freebsd.org/changeset/base/346055 Log: MFC r345216: Remove duplicate `${PACKAGE}FILES+= cleanup.ksh` line This mutes the duplicate target warning emitted via bsd.files.mk each build. Approved by: emaste (mentor) Differential Revision: https://reviews.freebsd.org/D19806 Modified: stable/12/tests/sys/cddl/zfs/tests/delegate/Makefile Directory Properties: stable/12/ (props changed) Modified: stable/12/tests/sys/cddl/zfs/tests/delegate/Makefile ============================================================================== --- stable/12/tests/sys/cddl/zfs/tests/delegate/Makefile Tue Apr 9 15:52:18 2019 (r346054) +++ stable/12/tests/sys/cddl/zfs/tests/delegate/Makefile Tue Apr 9 16:16:10 2019 (r346055) @@ -12,7 +12,6 @@ TEST_METADATA+= required_user="root" TEST_METADATA+= is_exclusive=true ${PACKAGE}FILES+= cleanup.ksh -${PACKAGE}FILES+= cleanup.ksh ${PACKAGE}FILES+= delegate.cfg ${PACKAGE}FILES+= delegate_common.kshlib ${PACKAGE}FILES+= setup.ksh From owner-svn-src-all@freebsd.org Tue Apr 9 16:17:32 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 34BF815637B7; Tue, 9 Apr 2019 16:17:32 +0000 (UTC) (envelope-from ngie@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 CCA1E6C869; Tue, 9 Apr 2019 16:17:31 +0000 (UTC) (envelope-from ngie@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 A6254D857; Tue, 9 Apr 2019 16:17:31 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39GHVbv049672; Tue, 9 Apr 2019 16:17:31 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39GHVnY049671; Tue, 9 Apr 2019 16:17:31 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201904091617.x39GHVnY049671@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 9 Apr 2019 16:17:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346056 - head X-SVN-Group: head X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 346056 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: CCA1E6C869 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 16:17:32 -0000 Author: ngie Date: Tue Apr 9 16:17:31 2019 New Revision: 346056 URL: https://svnweb.freebsd.org/changeset/base/346056 Log: Fix a typo when sanity checking in the bootstrap-tools target The path is incorrect for the linker in the error message. It should have been /usr/bin/ld, not /usr/bin/cc . Reviewed by: emaste Approved by: emaste (mentor) MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D19852 Modified: head/Makefile Modified: head/Makefile ============================================================================== --- head/Makefile Tue Apr 9 16:16:10 2019 (r346055) +++ head/Makefile Tue Apr 9 16:17:31 2019 (r346056) @@ -570,7 +570,7 @@ universe-toolchain: .PHONY universe_prologue false; \ fi @if [ ! -e "${HOST_OBJTOP}/tmp/usr/bin/ld" ]; then \ - echo "Missing host linker at ${HOST_OBJTOP}/tmp/usr/bin/cc?" >&2; \ + echo "Missing host linker at ${HOST_OBJTOP}/tmp/usr/bin/ld?" >&2; \ false; \ fi @echo "--------------------------------------------------------------" From owner-svn-src-all@freebsd.org Tue Apr 9 16:18:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E7A451563833 for ; Tue, 9 Apr 2019 16:18:12 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound1.eu.mailhop.org (outbound1.eu.mailhop.org [52.28.251.132]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5B84A6C998 for ; Tue, 9 Apr 2019 16:18:12 +0000 (UTC) (envelope-from ian@freebsd.org) ARC-Seal: i=1; a=rsa-sha256; t=1554826683; cv=none; d=outbound.mailhop.org; s=arc-outbound20181012; b=KXT3z+wIyxgCVZR+XPcXg4uWBEMnoeLSHdrGNfyNIRYQyup7e7n6YPZrI2pTn5KxFPWP311CKhvhc gZA+b6MOef1XN46F4ZyEcylKN/tW1PeL6+i4B5drZVfxOWYiK6KAYy/NLc6kub5FYS1z0QsFlyg61w FsA8ifa7M+Ubs352tALtCcfEqhTVNOI6GesVufsvNIm58FIhGDWx2oQkHcvZ+icHjRomGAWYrlHW2c X/u7Y5v3fnfeW/EfYCwwMJewNsgStPxSq5nVegjy5MDbhB2uTJ1gAIAgflHvUQj8wba1VulU+tw3+E 8LtpF+LvjS0/fOu6j43yKoMEkme9OiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=arc-outbound20181012; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:dkim-signature:from; bh=WzuN1Wvec35b2nuIbtCHqGdP5K2KjeoRb+NXPR3L4NA=; b=Z1wu4n0KFnA+qRIHTXU2X1R9MjusWe32BMO/jV68L6RKKfkTsdXlBOl6N2+A2LGzeCDIA0jyO6uZ5 I8jl8m+YictPzpaQfWkUqPFpDg45x/SNkuzdKg4V73HfppIvSfDjIlBFJsJ2770ocee7aCwuU/CKUD Ud2/r3v+QaEQMdbS9aYhfKhalXprwEiojEXPDIUADugKJaQep7jS3weB0mm2WUbgJInGkZfX+sC4Fw h5SM+2lpxZOJ4TUDXifoz8ZrS1PSXMZ6PtXlZgxheRF3nkMyfBJ7rTkxpYZ7orO8k0Nu2n5T8Lkb1Y 6pzKjY/qKvvGPKc/l3Cw39mvKXQaa6w== ARC-Authentication-Results: i=1; outbound3.eu.mailhop.org; spf=softfail smtp.mailfrom=freebsd.org smtp.remote-ip=67.177.211.60; dmarc=none header.from=freebsd.org; arc=none header.oldest-pass=0; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=dkim-high; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:from; bh=WzuN1Wvec35b2nuIbtCHqGdP5K2KjeoRb+NXPR3L4NA=; b=ovRsmhwV5IZTHP9LJ21ihx64Pj4KpanmkcEztUKgt7VvCCX8G2/5rVTW6KjzJY44/RQmLDtoR/Foi X80Gj9DqYO/WSDQVG73tLEa0CRyF+JtMgQEuOnz4VWNZbJo11IFjJqmgFQW1GjXAWXIJ21+aAm49wC IZexIFV9RWJLXKbZzpOEgR9S5xPYXw1wkp6Da1uSsPDpJVpG43jZ2qXuu9GtckD1R7r5MrY4cGxMgC Fn0ekcqM0lNHVjSA2Ld9Vbz1B9Cc7nEE7ESBroH+7jXCYuDxFxoUFt3jfqceHM6pS5eQFewc8Ecky0 vZWGb3GyJDlZ0AK3gSa6F/MM5EqS23A== X-MHO-RoutePath: aGlwcGll X-MHO-User: 0a87784c-5ae3-11e9-908b-352056dbf2de X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 67.177.211.60 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [67.177.211.60]) by outbound3.eu.mailhop.org (Halon) with ESMTPSA id 0a87784c-5ae3-11e9-908b-352056dbf2de; Tue, 09 Apr 2019 16:18:00 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id x39GHw56017970; Tue, 9 Apr 2019 10:17:58 -0600 (MDT) (envelope-from ian@freebsd.org) Message-ID: Subject: Re: svn commit: r346052 - head/sys/dev/usb/net From: Ian Lepore To: John Baldwin , Ganbold Tsagaankhuu , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Date: Tue, 09 Apr 2019 10:17:58 -0600 In-Reply-To: References: <201904091354.x39Ds9e6070857@repo.freebsd.org> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.28.5 FreeBSD GNOME Team Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 5B84A6C998 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.980,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 16:18:13 -0000 On Tue, 2019-04-09 at 09:11 -0700, John Baldwin wrote: > On 4/9/19 6:54 AM, Ganbold Tsagaankhuu wrote: > > Author: ganbold > > Date: Tue Apr 9 13:54:08 2019 > > New Revision: 346052 > > URL: https://svnweb.freebsd.org/changeset/base/346052 > > > > Log: > > In some cases like NanoPI R1, its second USB ethernet > > RTL8152 (chip version URE_CHIP_VER_4C10) doesn't > > have hardwired MAC address, in other words, it is all zeros. > > This commit fixes it by setting random MAC address > > when MAC address is all zeros. > > > > Reviewed by: kevlo > > Differential Revision: https://reviews.freebsd.org/D19856 > > It would be best to not use a purely random mac address and to use > the > function kevans@ added recently. That function generates a MAC > address > from the FreeBSD OUI using a cryptographic hash so you get a > stable address across boots on a given host. > How could that possibly work? If it's not random, you can't have two such devices on the same network. If it is random, it's not stable from one boot to the next. -- Ian From owner-svn-src-all@freebsd.org Tue Apr 9 16:20:37 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3C7891563998; Tue, 9 Apr 2019 16:20:37 +0000 (UTC) (envelope-from ngie@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 D91A46CBE4; Tue, 9 Apr 2019 16:20:36 +0000 (UTC) (envelope-from ngie@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 B25ACD86A; Tue, 9 Apr 2019 16:20:36 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39GKaVd049856; Tue, 9 Apr 2019 16:20:36 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39GKamM049855; Tue, 9 Apr 2019 16:20:36 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201904091620.x39GKamM049855@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 9 Apr 2019 16:20:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346057 - head/tests/sys/geom/class/eli X-SVN-Group: head X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: head/tests/sys/geom/class/eli X-SVN-Commit-Revision: 346057 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D91A46CBE4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 16:20:37 -0000 Author: ngie Date: Tue Apr 9 16:20:36 2019 New Revision: 346057 URL: https://svnweb.freebsd.org/changeset/base/346057 Log: Fix geli device cleanup Final cleanup routines shouldn't be called from testcases; it should be called from the testcase cleanup routine. Furthermore, `geli_test_cleanup` should take care of cleaning up geli providers and the memory disks used for the geli providers. `geli_test_cleanup` will always be executed whereas the equivalent logic in `geli_test_body`, may not have been executed if the test failed prior to the logic being run. Prior to this change, the test case was trying to clean up `$md` twice: once in at the end of the test case body function, and the other in the cleanup function. The cleanup function logic was failing because there wasn't anything to clean up in the cleanup function and the errors weren't being ignored. This fixes FreeBSD test suite runs after r345864. PR: 237128 Reviewed by: asomers, pjd Approved by: emaste (mentor) MFC with: r345864 Differential Revision: https://reviews.freebsd.org/D19854 Modified: head/tests/sys/geom/class/eli/online_resize_test.sh Modified: head/tests/sys/geom/class/eli/online_resize_test.sh ============================================================================== --- head/tests/sys/geom/class/eli/online_resize_test.sh Tue Apr 9 16:17:31 2019 (r346056) +++ head/tests/sys/geom/class/eli/online_resize_test.sh Tue Apr 9 16:20:36 2019 (r346057) @@ -172,22 +172,18 @@ online_resize_body() atf_check -s exit:0 -o match:'^Flags: .*AUTORESIZE' geli list ${md}p1.eli atf_check -s exit:0 -o match:resized gpart resize -i 1 -s 30${prefix} ${md} atf_check -s exit:0 -o match:"^[[:space:]]${osize30}[[:space:]]+# mediasize in bytes" diskinfo -v ${md}p1.eli - atf_check geli detach ${md}p1.eli - - # Cleanup. - atf_check -s exit:0 -o match:deleted gpart delete -i 1 ${md} - atf_check -s exit:0 -o match:destroyed gpart destroy ${md} - atf_check -s exit:0 -o ignore mdconfig -d -u ${md} done } online_resize_cleanup() { if [ -f "$TEST_MDS_FILE" ]; then while read md; do - [ -c /dev/${md}p1.eli ] && geli detach ${md}p1.eli - mdconfig -d -u ${md} 2>/dev/null + atf_check -s ignore -e ignore -o ignore geli detach ${md}p1.eli + atf_check -s ignore -e ignore -o ignore gpart delete -i 1 ${md} + atf_check -s ignore -e ignore -o ignore gpart destroy ${md} done < $TEST_MDS_FILE fi + geli_test_cleanup } atf_init_test_cases() From owner-svn-src-all@freebsd.org Tue Apr 9 16:33:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C53971563F39; Tue, 9 Apr 2019 16:33:40 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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 "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 63EDD6D553; Tue, 9 Apr 2019 16:33:40 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-3.local (ralph.baldwin.cx [66.234.199.215]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id B5221E7A1; Tue, 9 Apr 2019 16:33:39 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r346052 - head/sys/dev/usb/net To: Ian Lepore , Ganbold Tsagaankhuu , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904091354.x39Ds9e6070857@repo.freebsd.org> From: John Baldwin Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <33d96fdb-0218-6555-6f03-3105649a1904@FreeBSD.org> Date: Tue, 9 Apr 2019 09:33:37 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 63EDD6D553 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.97)[-0.966,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 16:33:41 -0000 On 4/9/19 9:17 AM, Ian Lepore wrote: > On Tue, 2019-04-09 at 09:11 -0700, John Baldwin wrote: >> On 4/9/19 6:54 AM, Ganbold Tsagaankhuu wrote: >>> Author: ganbold >>> Date: Tue Apr 9 13:54:08 2019 >>> New Revision: 346052 >>> URL: https://svnweb.freebsd.org/changeset/base/346052 >>> >>> Log: >>> In some cases like NanoPI R1, its second USB ethernet >>> RTL8152 (chip version URE_CHIP_VER_4C10) doesn't >>> have hardwired MAC address, in other words, it is all zeros. >>> This commit fixes it by setting random MAC address >>> when MAC address is all zeros. >>> >>> Reviewed by: kevlo >>> Differential Revision: https://reviews.freebsd.org/D19856 >> >> It would be best to not use a purely random mac address and to use >> the >> function kevans@ added recently. That function generates a MAC >> address >> from the FreeBSD OUI using a cryptographic hash so you get a >> stable address across boots on a given host. >> > > How could that possibly work? If it's not random, you can't have two > such devices on the same network. If it is random, it's not stable > from one boot to the next. It uses the UUID and interface name as input into the hash. The UUID is per-host. In this particular use case, the first USB device will have a varying MAC address which is an input into the UUID. Though, the other option this driver could use for this specific case would be to just take the first MAC address and +1 to get the second one. -- John Baldwin From owner-svn-src-all@freebsd.org Tue Apr 9 16:35:24 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 983791563FF2; Tue, 9 Apr 2019 16:35:24 +0000 (UTC) (envelope-from ngie@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 30BCE6D6EE; Tue, 9 Apr 2019 16:35:24 +0000 (UTC) (envelope-from ngie@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 0C216DBCE; Tue, 9 Apr 2019 16:35:24 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39GZN4A060063; Tue, 9 Apr 2019 16:35:23 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39GZNEK060061; Tue, 9 Apr 2019 16:35:23 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201904091635.x39GZNEK060061@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 9 Apr 2019 16:35:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346059 - in stable/12: share/man/man4 sys/sys X-SVN-Group: stable-12 X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: in stable/12: share/man/man4 sys/sys X-SVN-Commit-Revision: 346059 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 30BCE6D6EE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.993,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 16:35:24 -0000 Author: ngie Date: Tue Apr 9 16:35:23 2019 New Revision: 346059 URL: https://svnweb.freebsd.org/changeset/base/346059 Log: MFC r344662: Remove references to pdwait4(2) and `CAP_PDWAIT` from rights(4) @cem removed references to pdwait4(2) (a nonexistent syscall) in r320058. This change removes references to pdwait4(2) and `CAP_PDWAIT` in rights(4) to not mislead the user into thinking that pdwait4(2)/`CAP_PDWAIT` is actually implemented in the stock FreeBSD kernel. The goal of this functionality was to simplify monitoring/manipulating processes started with `pdfork`, et al, and avoid races with waiting on pids. The syscall was never completed though--just discussed on the capsicum mailing list back in 2015: https://lists.cam.ac.uk/pipermail/cl-capsicum-discuss/2015-May/msg00012.html . That being said, there are members of the project (@rwatson, etc) who have longterm goals to implement this syscall to better secure pdfork(2) calls. PR: 235871 Approved by: emaste (mentor) Differential Revision: https://reviews.freebsd.org/D19805 Modified: stable/12/share/man/man4/rights.4 stable/12/sys/sys/capsicum.h Modified: stable/12/share/man/man4/rights.4 ============================================================================== --- stable/12/share/man/man4/rights.4 Tue Apr 9 16:31:30 2019 (r346058) +++ stable/12/share/man/man4/rights.4 Tue Apr 9 16:35:23 2019 (r346059) @@ -32,7 +32,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 30, 2018 +.Dd February 28, 2019 .Dt RIGHTS 4 .Os .Sh NAME @@ -467,9 +467,6 @@ Permit .It Dv CAP_PDKILL Permit .Xr pdkill 2 . -.It Dv CAP_PDWAIT -Permit -.Xr pdwait4 2 . .It Dv CAP_PEELOFF Permit .Xr sctp_peeloff 2 . Modified: stable/12/sys/sys/capsicum.h ============================================================================== --- stable/12/sys/sys/capsicum.h Tue Apr 9 16:31:30 2019 (r346058) +++ stable/12/sys/sys/capsicum.h Tue Apr 9 16:35:23 2019 (r346059) @@ -246,7 +246,12 @@ /* Process management via process descriptors. */ /* Allows for pdgetpid(2). */ #define CAP_PDGETPID CAPRIGHT(1, 0x0000000000000200ULL) -/* Allows for pdwait4(2). */ +/* + * Allows for pdwait4(2). + * + * XXX: this constant was imported unused, but is targeted to be implemented + * in the future (bug 235871). + */ #define CAP_PDWAIT CAPRIGHT(1, 0x0000000000000400ULL) /* Allows for pdkill(2). */ #define CAP_PDKILL CAPRIGHT(1, 0x0000000000000800ULL) From owner-svn-src-all@freebsd.org Tue Apr 9 17:15:41 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2603D1566230 for ; Tue, 9 Apr 2019 17:15:41 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound1a.eu.mailhop.org (outbound1a.eu.mailhop.org [52.58.109.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8C92D6EE2B for ; Tue, 9 Apr 2019 17:15:40 +0000 (UTC) (envelope-from ian@freebsd.org) ARC-Seal: i=1; a=rsa-sha256; t=1554829168; cv=none; d=outbound.mailhop.org; s=arc-outbound20181012; b=AEVe6PzHgjfbcPGm9r9ss39xi7oG1hgVAo7j//f7lC+P5pKTNaIfbAY5VK+Ua0bgSlwoMzUy1So9e 8zi+1WwDGhGuDy8KMfcP8l6MzXz14tALIjw3bQ+y0ShEp7EXoZPSNZXEBwxdQ/aKboHUr66qD8VqMO tO8H7c9kWtbowF4cBvr71O82jqEhIafPDBLcn70Bv8J23//T/FmdAQn5F9RF8j3w2+gN9cHB6Bp3cV s3Zz9Vrmqz5cYYFvDQ+nhLnVD4Hc097Eua5SSQo+CJp1NLy1Dn+wgOU2HvLPkias3ELASS08TRa4QF jQgKeUjqlj0NRmgslSDE4oeKkwRptAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=arc-outbound20181012; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:dkim-signature:from; bh=rY5+W3s15imTg3YRXTL9Y+RET+LF1m22d3E0TSMLMcI=; b=l10ttMr0NkmsMJqNa5ssT5jZqEZxu4kkffmor5bWF/JuQnrrhKjivCpO0PUz30kb37QKvU0k1hWzi QYqklDEqgqtypagwnzFWxgNUVfot9xBl09DAcjj9bzoFRcYo7zUIstEqS2sPPosufhpzYzj2QlQd+J Yhuzcj3jyQn9+b0luIZEx2GANzwIsFaUD0LrCjyehAuknlDajq55VeRZgBIewa3KhGfaJzFeXHHZV0 Qedn+arQE/ip+ze6at44AAT01EWEMfCESnY9gRCwYg1iLvlAn+QBk9r98bxwbKbXVZSHCqpyhl5WBv C7StoX91RbBBVaBGzuGO65Wa9+5jpfg== ARC-Authentication-Results: i=1; outbound2.eu.mailhop.org; spf=softfail smtp.mailfrom=freebsd.org smtp.remote-ip=67.177.211.60; dmarc=none header.from=freebsd.org; arc=none header.oldest-pass=0; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=dkim-high; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:from; bh=rY5+W3s15imTg3YRXTL9Y+RET+LF1m22d3E0TSMLMcI=; b=DT9h7IFbPj/aSDPwTCE15qIL3r0F4SzQctadc4VpZWcnuR0pjKiaFyjg01w77c7BrxlJ39KEJa9RN cBRf80SCWWQYNC3R1TrgZTzVQemxozFmiKCNBMxAH752Nypd+2OioDGG9n+R9At1Brnsg81RTCwzv0 GrO4ajfoh8bCpjsx8DSkOIdgkEXFGHNn28xQPL8pv/TowF8xrwJKmIlfH4guLH0+0qr151JsDPipqM VIrA0qjYI92OUK8ccq6BeX/8+c5nhRcgvAnIWAR+Ik9SdUCH3cgKALkBO27WBgi2vBWcc5zo8l4b8Y G+i3D2UMZRuW5Uk+YTJO1cyVAdZkNQw== X-MHO-RoutePath: aGlwcGll X-MHO-User: d3b0f649-5ae8-11e9-803b-31925da7267c X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 67.177.211.60 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [67.177.211.60]) by outbound2.eu.mailhop.org (Halon) with ESMTPSA id d3b0f649-5ae8-11e9-803b-31925da7267c; Tue, 09 Apr 2019 16:59:25 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id x39GxNuO018070; Tue, 9 Apr 2019 10:59:23 -0600 (MDT) (envelope-from ian@freebsd.org) Message-ID: <969703ae8558b4b6f2930208e9c36927b546bb77.camel@freebsd.org> Subject: Re: svn commit: r346052 - head/sys/dev/usb/net From: Ian Lepore To: John Baldwin , Ganbold Tsagaankhuu , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Date: Tue, 09 Apr 2019 10:59:23 -0600 In-Reply-To: <33d96fdb-0218-6555-6f03-3105649a1904@FreeBSD.org> References: <201904091354.x39Ds9e6070857@repo.freebsd.org> <33d96fdb-0218-6555-6f03-3105649a1904@FreeBSD.org> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.28.5 FreeBSD GNOME Team Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 8C92D6EE2B X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.99)[-0.988,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 17:15:41 -0000 On Tue, 2019-04-09 at 09:33 -0700, John Baldwin wrote: > On 4/9/19 9:17 AM, Ian Lepore wrote: > > On Tue, 2019-04-09 at 09:11 -0700, John Baldwin wrote: > > > On 4/9/19 6:54 AM, Ganbold Tsagaankhuu wrote: > > > > Author: ganbold > > > > Date: Tue Apr 9 13:54:08 2019 > > > > New Revision: 346052 > > > > URL: https://svnweb.freebsd.org/changeset/base/346052 > > > > > > > > Log: > > > > In some cases like NanoPI R1, its second USB ethernet > > > > RTL8152 (chip version URE_CHIP_VER_4C10) doesn't > > > > have hardwired MAC address, in other words, it is all zeros. > > > > This commit fixes it by setting random MAC address > > > > when MAC address is all zeros. > > > > > > > > Reviewed by: kevlo > > > > Differential Revision: > > > > https://reviews.freebsd.org/D19856 > > > > > > It would be best to not use a purely random mac address and to > > > use > > > the > > > function kevans@ added recently. That function generates a MAC > > > address > > > from the FreeBSD OUI using a cryptographic hash so you get a > > > stable address across boots on a given host. > > > > > > > How could that possibly work? If it's not random, you can't have > > two > > such devices on the same network. If it is random, it's not stable > > from one boot to the next. > > It uses the UUID and interface name as input into the hash. > The UUID is per-host. Oh, so it only works on x86 (or I guess any system that has something like a bios that can provide you with a uuid that doesn't change from one boot to the next). -- Ian > In this particular use case, the first USB device will > have a varying MAC address which is an input into the UUID. Though, > the other option this driver could use for this specific case would > be > to just take the first MAC address and +1 to get the second one. > From owner-svn-src-all@freebsd.org Tue Apr 9 17:19:52 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 65EB0156646F; Tue, 9 Apr 2019 17:19:52 +0000 (UTC) (envelope-from rebecca@bluestop.org) Received: from muon.bluestop.org (muon.bluestop.org [65.103.231.193]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A87F16F12F; Tue, 9 Apr 2019 17:19:51 +0000 (UTC) (envelope-from rebecca@bluestop.org) Received: from muon.bluestop.org (localhost [127.0.0.1]) by muon.bluestop.org (Postfix) with ESMTP id 51654658ED; Tue, 9 Apr 2019 11:21:52 -0600 (MDT) Received: from muon.bluestop.org ([127.0.0.1]) by muon.bluestop.org (muon.bluestop.org [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 4hJ0kTWwy040; Tue, 9 Apr 2019 11:21:52 -0600 (MDT) Received: from photon.int.bluestop.org (unknown [65.103.231.197]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by muon.bluestop.org (Postfix) with ESMTPSA; Tue, 9 Apr 2019 11:21:52 -0600 (MDT) Subject: Re: svn commit: r346039 - head/sys/conf To: Warner Losh , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904081825.x38IPEpV054311@repo.freebsd.org> From: Rebecca Cran Message-ID: Date: Tue, 9 Apr 2019 11:19:49 -0600 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <201904081825.x38IPEpV054311@repo.freebsd.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US X-Rspamd-Queue-Id: A87F16F12F X-Spamd-Bar: ------ X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.97)[-0.967,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 17:19:52 -0000 On 2019-04-08 12:25, Warner Losh wrote: > Author: imp > Date: Mon Apr 8 18:25:14 2019 > New Revision: 346039 > URL: https://svnweb.freebsd.org/changeset/base/346039 > > Log: > Style only change: Prefer $() to `` > > $() is more modern and also nests. Convert the mix of styles to using > only the former (although the latter was more common). It's the more > dominant style in other shell scripts these days as well. > > Differential Revision: https://reviews.freebsd.org/D19840 > > Modified: > head/sys/conf/newvers.sh > > Modified: head/sys/conf/newvers.sh I thought I saw an email a few weeks ago that suggested that the list of people who reviewed the patch should be copied into a "Reviewed by:" line, to avoid only having that information in Phabricator. Am I remembering correctly, or is just mentioning the Phab review considered sufficient? -- Rebecca Cran From owner-svn-src-all@freebsd.org Tue Apr 9 17:37:25 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C095B1566B14 for ; Tue, 9 Apr 2019 17:37:25 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk1-x731.google.com (mail-qk1-x731.google.com [IPv6:2607:f8b0:4864:20::731]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5F5F56FBE4 for ; Tue, 9 Apr 2019 17:37:25 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qk1-x731.google.com with SMTP id n68so10806469qka.1 for ; Tue, 09 Apr 2019 10:37:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=d82o4hPl2rrS2QtT2E3K50s/CbPBkgvsJM++mE8g3f0=; b=P7FHp/89tmBhLUWlo3F7Kf5KIDAsjxqRvgL7bW1hSruShPIjACkd+MnPeiReZFavmA nHQfMwHv46wW4tWAIhWP29sZpatFu5SV3J6ngCNA+yOgtlv7V0xaptVEM+X99P3sGB5h FTBJcWQNudjVDg0tEJVdmL5QmALNGzeCTtW5oVSeJ3LRr051PXNwoyBiPLXA45EQcju5 RaEyk40yQ+SXImIUqiRTSw81JC0b3eSee9cQPgEU+HVzaRYC/RM5oWAY+w/EsZbmmPqm LBds77L/Cm0mZ2+l5OH3t/lwYAuL3Bv1FCPW+8Cvup32t52QCCFJYErq5y0oRh1ihkdc o4Gw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=d82o4hPl2rrS2QtT2E3K50s/CbPBkgvsJM++mE8g3f0=; b=Gze/q4cTshQLrb1qIX/4j0hCDIbRAqgGpOphhcZ2vySO3zx7OOXTrjI9iywUd4SbMF 4JIpIhaDKC6FaHxeU8AEqvC5Zt/t4rEDBQO0QxZMcuOsYJeQcmy/fxCIvvKCGyreAkNI MUoq8pXItPE/7sCIKAlmcMTDPhxcfnpclTtsnkTrmbj5f2saQOISwmGdRcHVPujlw4rN ljJ0AA2W4e2hZKvgN7+zQ2/40ijihQQ1xwzzsPQIZL4S7NSb6humSE3Tl3AesIj29Bhl GpWJb4nGIaSvUyesYu5WJMRDSJ7EBGggbGn8ah3TTXYImMiP0L6vqkJsvfWiqbhIXg5T N7UA== X-Gm-Message-State: APjAAAXR6o53NOOED7JEPBzLBOQa10jghQAa+a3PsQlBN/pxWj9jF/IA lAhD/CeawZyYdmehhTyj5tTimhVAPtOHVDLU3hGUyA== X-Google-Smtp-Source: APXvYqxLBKrT0Gl6WsArDeH1i8G/E6vsHzHySFIPNs84BaSr+/4UxxowsT93FFacKFvO8dW7lUXTjImOt4++8OEwyk8= X-Received: by 2002:a05:620a:12d0:: with SMTP id e16mr19675318qkl.140.1554831444661; Tue, 09 Apr 2019 10:37:24 -0700 (PDT) MIME-Version: 1.0 References: <201904081825.x38IPEpV054311@repo.freebsd.org> In-Reply-To: From: Warner Losh Date: Tue, 9 Apr 2019 11:37:13 -0600 Message-ID: Subject: Re: svn commit: r346039 - head/sys/conf To: Rebecca Cran Cc: Warner Losh , src-committers , svn-src-all , svn-src-head X-Rspamd-Queue-Id: 5F5F56FBE4 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.97)[-0.973,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 17:37:26 -0000 On Tue, Apr 9, 2019 at 11:19 AM Rebecca Cran wrote: > On 2019-04-08 12:25, Warner Losh wrote: > > Author: imp > > Date: Mon Apr 8 18:25:14 2019 > > New Revision: 346039 > > URL: https://svnweb.freebsd.org/changeset/base/346039 > > > > Log: > > Style only change: Prefer $() to `` > > > > $() is more modern and also nests. Convert the mix of styles to using > > only the former (although the latter was more common). It's the more > > dominant style in other shell scripts these days as well. > > > > Differential Revision: https://reviews.freebsd.org/D19840 > > > > Modified: > > head/sys/conf/newvers.sh > > > > Modified: head/sys/conf/newvers.sh > > > I thought I saw an email a few weeks ago that suggested that the list of > people who reviewed the patch should be copied into a "Reviewed by:" > line, to avoid only having that information in Phabricator. > > Am I remembering correctly, or is just mentioning the Phab review > considered sufficient? > You remember correctly. Sadly, there's no automation to make it happen, so it's easy to forget. I hate the notion that came out of the last discussion, but am trying to do it, but since there's no automation, I'll fail to do the right thing more often than not. Warner From owner-svn-src-all@freebsd.org Tue Apr 9 17:40:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 25ED51566D0C for ; Tue, 9 Apr 2019 17:40:27 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound1a.eu.mailhop.org (outbound1a.eu.mailhop.org [52.58.109.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8F82A6FF83 for ; Tue, 9 Apr 2019 17:40:26 +0000 (UTC) (envelope-from ian@freebsd.org) ARC-Seal: i=1; a=rsa-sha256; t=1554831624; cv=none; d=outbound.mailhop.org; s=arc-outbound20181012; b=qvXmndRPcuq7kQUMNkdAtKZwk4nM30taUX8KRihCgoCMtusuhmLLw/JJ5G4AAZpEp/dEv05NdUxRi ekWeWkz3LboZxPszgAuQeFnFVc4bHx54QH13b+X/kirBXzxI7tHbNMvZ8ZlvGx2WEiUpBRZOaqI3w6 2VFrUXa5mWbfKSyVh6UF1/zU1gEdpX80kLuYlVIrZbBvhiv2OJu5lBGPlvOPrKO8vk95p+qjAC1zmT +vP6GA0HaapoosWXLvH9s+bheZyls+qqSNODbApIEn3tXjgqYUaZJg4ZczbAWtOt522pVIEL6KysGz OMWFeXvE2zXYZsVpB5vWIw0eOCfYi+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=arc-outbound20181012; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:dkim-signature:from; bh=4tlSvX8BJlUuvPfP/Je8jbwoO19KLvks+2lUODxOA+E=; b=ksdT6s0MLxOEvynUW+Nr1owTYEPV1QAYV38wrlc7Di/Nf7g65qq2g+FBqjelzt5nRUunXWk7TGXp+ MJ8OBZRV+LHkN6xg/czLRrwZhkd/r3e6nHo/qV+B5gBXzKTUXdrdv24aRBOWXunHgV4aoygd4HQXgq 9Sx4exuvfT884B5ZTLLLtyJEvp51AqewKXgaN6B7h8XdL28mGdv6wON58t+AM/W7jveBUxpKqmJY5Y jgEBMJzV0ThCw/kEI+l1hXBpXe6S19VkWQfspCbEL0LxYNR44Zf6SWeVN8dc8pL9f0ETYevrQ/DVES fRxQR2JrfJz8hPmjasZlCmyjkMUvfPQ== ARC-Authentication-Results: i=1; outbound2.eu.mailhop.org; spf=softfail smtp.mailfrom=freebsd.org smtp.remote-ip=67.177.211.60; dmarc=none header.from=freebsd.org; arc=none header.oldest-pass=0; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=dkim-high; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:from; bh=4tlSvX8BJlUuvPfP/Je8jbwoO19KLvks+2lUODxOA+E=; b=udTgtRaxhSDlCDHRpPsTS9kzodzGn+YdNklWQhFKBHdWQAfrPmxT7v/32P4ql8vKT5GWm2n5weDil 2z/UZgIILcmFte0SHEiM/S0agFurpkRLxQdJSkTSTGD5DSUkXA+XAoNoVWYUTmF+M6zgV8xd36/l/d Qk/Uv8KznqR76T7pYpRx2ouxUIF4owtI0GFOlQlRt2+eZn9khqrXfc8nNGAjAP9Re1QNFssDj88dCv hAnQD6y+bAEiOu6se6OFdS00Hvsc4wGufdof1hRUFSat0cBBUNIrmp84rOlevxifxpkQeYJSfB5/2z JFqqlZ1IOdONcXOas51qeybsMzMeCag== X-MHO-RoutePath: aGlwcGll X-MHO-User: 8b1ada05-5aee-11e9-803b-31925da7267c X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 67.177.211.60 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [67.177.211.60]) by outbound2.eu.mailhop.org (Halon) with ESMTPSA id 8b1ada05-5aee-11e9-803b-31925da7267c; Tue, 09 Apr 2019 17:40:20 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id x39HeJUe018180; Tue, 9 Apr 2019 11:40:19 -0600 (MDT) (envelope-from ian@freebsd.org) Message-ID: Subject: Re: svn commit: r346039 - head/sys/conf From: Ian Lepore To: Rebecca Cran , Warner Losh , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Date: Tue, 09 Apr 2019 11:40:19 -0600 In-Reply-To: References: <201904081825.x38IPEpV054311@repo.freebsd.org> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.28.5 FreeBSD GNOME Team Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 8F82A6FF83 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.99)[-0.990,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 17:40:27 -0000 On Tue, 2019-04-09 at 11:19 -0600, Rebecca Cran wrote: > On 2019-04-08 12:25, Warner Losh wrote: > > Author: imp > > Date: Mon Apr 8 18:25:14 2019 > > New Revision: 346039 > > URL: https://svnweb.freebsd.org/changeset/base/346039 > > > > Log: > > Style only change: Prefer $() to `` > > > > $() is more modern and also nests. Convert the mix of styles to > > using > > only the former (although the latter was more common). It's the > > more > > dominant style in other shell scripts these days as well. > > > > Differential Revision: https://reviews.freebsd.org/D19840 > > > > Modified: > > head/sys/conf/newvers.sh > > > > Modified: head/sys/conf/newvers.sh > > > I thought I saw an email a few weeks ago that suggested that the list > of > people who reviewed the patch should be copied into a "Reviewed by:" > line, to avoid only having that information in Phabricator. > > Am I remembering correctly, or is just mentioning the Phab review > considered sufficient? > > As far as I'm concerned, if I've gone to all the trouble to have something phab-reviewed, I'm not going to waste a bunch of time hand- copying metadata from the review to the commit message; citing the review is sufficient. -- Ian From owner-svn-src-all@freebsd.org Tue Apr 9 17:52:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 77916156744D; Tue, 9 Apr 2019 17:52:12 +0000 (UTC) (envelope-from ngie@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 171EB70B8C; Tue, 9 Apr 2019 17:52:12 +0000 (UTC) (envelope-from ngie@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 05AE5E9BA; Tue, 9 Apr 2019 17:52:12 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39HqBsn001452; Tue, 9 Apr 2019 17:52:11 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39HqBwS001450; Tue, 9 Apr 2019 17:52:11 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201904091752.x39HqBwS001450@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 9 Apr 2019 17:52:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346061 - head/tests/sys/netmap X-SVN-Group: head X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: head/tests/sys/netmap X-SVN-Commit-Revision: 346061 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 171EB70B8C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_SHORT(-0.96)[-0.957,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 17:52:12 -0000 Author: ngie Date: Tue Apr 9 17:52:11 2019 New Revision: 346061 URL: https://svnweb.freebsd.org/changeset/base/346061 Log: Polish netmap(4) testcases a bit 1. Not all kernels have netmap(4) support. Check for netmap(4) support before attempting to run the tests via the `PLAIN_REQUIRE_KERNEL_MODULE(..)` macro. 2. Libraries shouldn't be added to LDFLAGS; they should be added to LIBADD instead. This allows the build system to evaluate dependencies for sanity. 3. Sort some of the Makefile variables per bsd.README. 1., in particular, will resolve failures when running this testcase on kernels lacking netmap(4) support, e.g., the i386 GENERIC kernels on ^/stable/11 and ^/stable/12. PR: 237129 Reviewed by: vmaffione Approved by: emaste (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D19864 Modified: head/tests/sys/netmap/Makefile head/tests/sys/netmap/ctrl-api-test.c Modified: head/tests/sys/netmap/Makefile ============================================================================== --- head/tests/sys/netmap/Makefile Tue Apr 9 17:23:34 2019 (r346060) +++ head/tests/sys/netmap/Makefile Tue Apr 9 17:52:11 2019 (r346061) @@ -6,9 +6,10 @@ TESTSDIR= ${TESTSBASE}/sys/netmap TEST_METADATA+= required_user="root" TEST_METADATA+= is_exclusive=true -LDFLAGS+= -lpthread -CFLAGS+= -I${SRCTOP}/tests PLAIN_TESTS_C+= ctrl-api-test + +CFLAGS+= -I${SRCTOP}/tests +LIBADD+= pthread WARNS?= 6 Modified: head/tests/sys/netmap/ctrl-api-test.c ============================================================================== --- head/tests/sys/netmap/ctrl-api-test.c Tue Apr 9 17:23:34 2019 (r346060) +++ head/tests/sys/netmap/ctrl-api-test.c Tue Apr 9 17:52:11 2019 (r346061) @@ -1839,6 +1839,7 @@ main(int argc, char **argv) #ifdef __FreeBSD__ PLAIN_REQUIRE_KERNEL_MODULE("if_tap", 0); + PLAIN_REQUIRE_KERNEL_MODULE("netmap", 0); #endif memset(&ctx_, 0, sizeof(ctx_)); From owner-svn-src-all@freebsd.org Tue Apr 9 18:07:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 543851567C93; Tue, 9 Apr 2019 18:07:19 +0000 (UTC) (envelope-from kib@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 EA2E671516; Tue, 9 Apr 2019 18:07:18 +0000 (UTC) (envelope-from kib@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 C56BDEB9C; Tue, 9 Apr 2019 18:07:18 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39I7Iok008280; Tue, 9 Apr 2019 18:07:18 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39I7Haf008276; Tue, 9 Apr 2019 18:07:17 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904091807.x39I7Haf008276@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 9 Apr 2019 18:07:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346062 - in head/sys: amd64/pci i386/pci x86/include x86/x86 X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in head/sys: amd64/pci i386/pci x86/include x86/x86 X-SVN-Commit-Revision: 346062 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: EA2E671516 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 18:07:19 -0000 Author: kib Date: Tue Apr 9 18:07:17 2019 New Revision: 346062 URL: https://svnweb.freebsd.org/changeset/base/346062 Log: pci_cfgreg.c: Use io port config access for early boot time. Some early PCIe chipsets are explicitly listed in the white-list to enable use of the MMIO config space accesses, perhaps because ACPI tables were not reliable source of the base MCFG address at that time. For that chipsets, MCFG base was read from the known chipset MCFGbase config register. During very early stage of boot, when access to the PCI config space is performed (see e.g. pci_early_quirks.c), we cannot map 255MB of registers because the method used with pre-boot pmap overflows initial kernel page tables. Move fallback to read MCFGbase to the attachment method of the x86/legacy device, which removes code duplication, and results in the use of io accesses until MCFG is parsed or legacy attach called. For amd64, pre-initialize cfgmech with CFGMECH_1, right now we dynamically assign CFGMECH_1 to it anyway, and remove checks for CFGMECH_NONE. There is a mention in the Intel documentation for corresponding chipsets that OS must use either io port or MMIO access method, but we already break this rule by reading MCFGbase register, so one more access seems to be innocent. Reported by: longwitz@incore.de PR: 236838 Reviewed by: avg (other version), jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D19833 Modified: head/sys/amd64/pci/pci_cfgreg.c head/sys/i386/pci/pci_cfgreg.c head/sys/x86/include/pci_cfgreg.h head/sys/x86/x86/legacy.c Modified: head/sys/amd64/pci/pci_cfgreg.c ============================================================================== --- head/sys/amd64/pci/pci_cfgreg.c Tue Apr 9 17:52:11 2019 (r346061) +++ head/sys/amd64/pci/pci_cfgreg.c Tue Apr 9 18:07:17 2019 (r346062) @@ -44,12 +44,6 @@ __FBSDID("$FreeBSD$"); #include #include -enum { - CFGMECH_NONE = 0, - CFGMECH_1, - CFGMECH_PCIE, -}; - static uint32_t pci_docfgregread(int bus, int slot, int func, int reg, int bytes); static int pciereg_cfgread(int bus, unsigned slot, unsigned func, @@ -61,7 +55,13 @@ static void pcireg_cfgwrite(int bus, int slot, int fun SYSCTL_DECL(_hw_pci); -static int cfgmech; +/* + * For amd64 we assume that type 1 I/O port-based access always works. + * If an ACPI MCFG table exists, pcie_cfgregopen() will be called to + * switch to memory-mapped access. + */ +int cfgmech = CFGMECH_1; + static vm_offset_t pcie_base; static int pcie_minbus, pcie_maxbus; static uint32_t pcie_badslots; @@ -71,47 +71,10 @@ static int mcfg_enable = 1; SYSCTL_INT(_hw_pci, OID_AUTO, mcfg, CTLFLAG_RDTUN, &mcfg_enable, 0, "Enable support for PCI-e memory mapped config access"); -/* - * Initialise access to PCI configuration space - */ int pci_cfgregopen(void) { - uint64_t pciebar; - uint16_t did, vid; - if (cfgmech != CFGMECH_NONE) - return (1); - cfgmech = CFGMECH_1; - - /* - * Grope around in the PCI config space to see if this is a - * chipset that is capable of doing memory-mapped config cycles. - * This also implies that it can do PCIe extended config cycles. - */ - - /* Check for supported chipsets */ - vid = pci_cfgregread(0, 0, 0, PCIR_VENDOR, 2); - did = pci_cfgregread(0, 0, 0, PCIR_DEVICE, 2); - switch (vid) { - case 0x8086: - switch (did) { - case 0x3590: - case 0x3592: - /* Intel 7520 or 7320 */ - pciebar = pci_cfgregread(0, 0, 0, 0xce, 2) << 16; - pcie_cfgregopen(pciebar, 0, 255); - break; - case 0x2580: - case 0x2584: - case 0x2590: - /* Intel 915, 925, or 915GM */ - pciebar = pci_cfgregread(0, 0, 0, 0x48, 4); - pcie_cfgregopen(pciebar, 0, 255); - break; - } - } - return (1); } @@ -135,9 +98,6 @@ pci_cfgregread(int bus, int slot, int func, int reg, i { uint32_t line; - if (cfgmech == CFGMECH_NONE) - return (0xffffffff); - /* * Some BIOS writers seem to want to ignore the spec and put * 0 in the intline rather than 255 to indicate none. Some use @@ -161,9 +121,6 @@ pci_cfgregread(int bus, int slot, int func, int reg, i void pci_cfgregwrite(int bus, int slot, int func, int reg, u_int32_t data, int bytes) { - - if (cfgmech == CFGMECH_NONE) - return; if (cfgmech == CFGMECH_PCIE && (bus >= pcie_minbus && bus <= pcie_maxbus) && Modified: head/sys/i386/pci/pci_cfgreg.c ============================================================================== --- head/sys/i386/pci/pci_cfgreg.c Tue Apr 9 17:52:11 2019 (r346061) +++ head/sys/i386/pci/pci_cfgreg.c Tue Apr 9 18:07:17 2019 (r346062) @@ -64,20 +64,13 @@ struct pcie_cfg_elem { vm_paddr_t papage; }; -enum { - CFGMECH_NONE = 0, - CFGMECH_1, - CFGMECH_2, - CFGMECH_PCIE, -}; - SYSCTL_DECL(_hw_pci); static TAILQ_HEAD(pcie_cfg_list, pcie_cfg_elem) pcie_list[MAXCPU]; static uint64_t pcie_base; static int pcie_minbus, pcie_maxbus; static uint32_t pcie_badslots; -static int cfgmech; +int cfgmech; static int devmax; static struct mtx pcicfg_mtx; static int mcfg_enable = 1; @@ -136,10 +129,8 @@ pcibios_get_version(void) int pci_cfgregopen(void) { - static int opened = 0; - uint64_t pciebar; - u_int16_t vid, did; - u_int16_t v; + uint16_t v; + static int opened = 0; if (opened) return (1); @@ -158,38 +149,7 @@ pci_cfgregopen(void) if (v >= 0x0210) pci_pir_open(); - if (cfgmech == CFGMECH_PCIE) - return (1); - - /* - * Grope around in the PCI config space to see if this is a - * chipset that is capable of doing memory-mapped config cycles. - * This also implies that it can do PCIe extended config cycles. - */ - - /* Check for supported chipsets */ - vid = pci_cfgregread(0, 0, 0, PCIR_VENDOR, 2); - did = pci_cfgregread(0, 0, 0, PCIR_DEVICE, 2); - switch (vid) { - case 0x8086: - switch (did) { - case 0x3590: - case 0x3592: - /* Intel 7520 or 7320 */ - pciebar = pci_cfgregread(0, 0, 0, 0xce, 2) << 16; - pcie_cfgregopen(pciebar, 0, 255); - break; - case 0x2580: - case 0x2584: - case 0x2590: - /* Intel 915, 925, or 915GM */ - pciebar = pci_cfgregread(0, 0, 0, 0x48, 4); - pcie_cfgregopen(pciebar, 0, 255); - break; - } - } - - return(1); + return (1); } static uint32_t Modified: head/sys/x86/include/pci_cfgreg.h ============================================================================== --- head/sys/x86/include/pci_cfgreg.h Tue Apr 9 17:52:11 2019 (r346061) +++ head/sys/x86/include/pci_cfgreg.h Tue Apr 9 18:07:17 2019 (r346062) @@ -48,6 +48,15 @@ #define CONF2_ENABLE_CHK 0x0e #define CONF2_ENABLE_RES 0x0e +enum { + CFGMECH_NONE = 0, + CFGMECH_1, + CFGMECH_2, + CFGMECH_PCIE, +}; + +extern int cfgmech; + rman_res_t hostb_alloc_start(int type, rman_res_t start, rman_res_t end, rman_res_t count); int pcie_cfgregopen(uint64_t base, uint8_t minbus, uint8_t maxbus); int pci_cfgregopen(void); Modified: head/sys/x86/x86/legacy.c ============================================================================== --- head/sys/x86/x86/legacy.c Tue Apr 9 17:52:11 2019 (r346061) +++ head/sys/x86/x86/legacy.c Tue Apr 9 18:07:17 2019 (r346062) @@ -46,8 +46,10 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -111,10 +113,52 @@ legacy_probe(device_t dev) return (0); } +/* + * Grope around in the PCI config space to see if this is a chipset + * that is capable of doing memory-mapped config cycles. This also + * implies that it can do PCIe extended config cycles. + */ +static void +legacy_pci_cfgregopen(device_t dev) +{ + uint64_t pciebar; + u_int16_t did, vid; + + if (cfgmech == CFGMECH_NONE || cfgmech == CFGMECH_PCIE) + return; + + /* Check for supported chipsets */ + vid = pci_cfgregread(0, 0, 0, PCIR_VENDOR, 2); + did = pci_cfgregread(0, 0, 0, PCIR_DEVICE, 2); + switch (vid) { + case 0x8086: + switch (did) { + case 0x3590: + case 0x3592: + /* Intel 7520 or 7320 */ + pciebar = pci_cfgregread(0, 0, 0, 0xce, 2) << 16; + pcie_cfgregopen(pciebar, 0, 255); + break; + case 0x2580: + case 0x2584: + case 0x2590: + /* Intel 915, 925, or 915GM */ + pciebar = pci_cfgregread(0, 0, 0, 0x48, 4); + pcie_cfgregopen(pciebar, 0, 255); + break; + } + } + + if (bootverbose && cfgmech == CFGMECH_PCIE) + device_printf(dev, "Enabled ECAM PCIe accesses\n"); +} + static int legacy_attach(device_t dev) { device_t child; + + legacy_pci_cfgregopen(dev); /* * Let our child drivers identify any child devices that they From owner-svn-src-all@freebsd.org Tue Apr 9 18:38:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C16681568E1E; Tue, 9 Apr 2019 18:38:08 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F0E727261A; Tue, 9 Apr 2019 18:38:07 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x39IX4JY061477; Tue, 9 Apr 2019 11:33:04 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x39IX4pW061476; Tue, 9 Apr 2019 11:33:04 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904091833.x39IX4pW061476@gndrsh.dnsmgr.net> Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 In-Reply-To: <749EBFB4-94B8-4FD9-8774-FE6FB18FFA07@bayofrum.net> To: Chris Rees Date: Tue, 9 Apr 2019 11:33:04 -0700 (PDT) CC: "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: F0E727261A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.982,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 18:38:08 -0000 > Hey, > > On 9 April 2019 14:13:54 BST, "O. Hartmann" wrote: > >On Sun, 7 Apr 2019 18:31:45 +0000 (UTC) > >Chris Rees wrote: > > > >> Author: crees (doc,ports committer) > >> Date: Sun Apr 7 18:31:45 2019 > >> New Revision: 346017 > >> URL: https://svnweb.freebsd.org/changeset/base/346017 > >> > >> Log: > >> Remove now unnecessary kldstat check before attempting to load > >modules. > >> > >> Since r233109, kldload has the -n option, which silently ignores > >options > >> that are already loaded. > >> > >> > >https://lists.freebsd.org/pipermail/freebsd-rc/2018-December/003899.html > >> > >> Note that this script no longer reports if the module is already > >loaded, > >> but it could be argued this wasn't particularly useful information. > >> > >> PR: docs/234248 > >> Reviewed by: bcr (docs), kib, rgrimes (visual) > >> Approved by: jilles > >> Differential Revision: https://reviews.freebsd.org/D18670 > >> > >> Modified: > >> head/libexec/rc/rc.d/abi > >> head/libexec/rc/rc.d/bthidd > >> head/libexec/rc/rc.d/cfumass > >> head/libexec/rc/rc.d/kld > >> head/libexec/rc/rc.d/mdconfig > >> head/libexec/rc/rc.d/mdconfig2 > >> head/libexec/rc/rc.d/mountcritremote > >> head/libexec/rc/rc.d/syscons > >> head/libexec/rc/rc.subr > >> head/share/man/man5/rc.conf.5 > >> > >> Modified: head/libexec/rc/rc.d/abi > >> > >============================================================================== > > > {Snip} > > > >It seems this patch breaks ZFS if ZFS is built-in kernel! > > > >Having ZFS as kernel built-in leaves the system not mounting ANY(!) ZFS > >volume > >at boot time, rendering servers unusable. > >Mounting ZFS filesystems with "zfs mount -a" bring back the ZFS > >filesystems as > >expected. > > > > Are you sure it's this causing that? Please try reverting it. I think the trigger issue is: grep zfs /etc/rc.d/zvol rcvar="zfs_enable" required_modules="zfs" that module requires may be going south with the new code when the module is built into the kernel. > Chris -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 19:22:09 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A68D2156A614; Tue, 9 Apr 2019 19:22:09 +0000 (UTC) (envelope-from jhb@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 4854C75237; Tue, 9 Apr 2019 19:22:09 +0000 (UTC) (envelope-from jhb@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 27809F96D; Tue, 9 Apr 2019 19:22:09 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39JM83O048973; Tue, 9 Apr 2019 19:22:08 GMT (envelope-from jhb@FreeBSD.org) Received: (from jhb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39JM8K1048972; Tue, 9 Apr 2019 19:22:08 GMT (envelope-from jhb@FreeBSD.org) Message-Id: <201904091922.x39JM8K1048972@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org using -f From: John Baldwin Date: Tue, 9 Apr 2019 19:22:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346063 - head/sys/dev/acpica X-SVN-Group: head X-SVN-Commit-Author: jhb X-SVN-Commit-Paths: head/sys/dev/acpica X-SVN-Commit-Revision: 346063 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4854C75237 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 19:22:09 -0000 Author: jhb Date: Tue Apr 9 19:22:08 2019 New Revision: 346063 URL: https://svnweb.freebsd.org/changeset/base/346063 Log: Don't pre-reserve resources for CPU devices when they are set. CPUs can use shared (RF_SHAREABLE) resources for the I/O port used for entering and exiting C states. If this I/O port is included in an ACPI system resource device, then this happens to still work, but if the port wasn't part of a system resource device, only the first CPU could allocate the I/O port and use C states since resource_list_reserve() was always allocating the resource from nexus0 without RF_SHAREABLE. By avoiding the reservation, the flags from the bus_alloc_resource() in the CPU driver (which include RF_SHAREABLE) are honored. PR: 236513 Reported by: stockhausen@collogia.de Sleuthing by: avg Reviewed by: avg MFC after: 2 weeks Modified: head/sys/dev/acpica/acpi.c Modified: head/sys/dev/acpica/acpi.c ============================================================================== --- head/sys/dev/acpica/acpi.c Tue Apr 9 18:07:17 2019 (r346062) +++ head/sys/dev/acpica/acpi.c Tue Apr 9 19:22:08 2019 (r346063) @@ -1353,6 +1353,14 @@ acpi_set_resource(device_t dev, device_t child, int ty return (0); /* + * Don't reserve resources for CPU devices. Some of these + * resources need to be allocated as shareable, but reservations + * are always non-shareable. + */ + if (device_get_devclass(child) == devclass_find("cpu")) + return (0); + + /* * Reserve the resource. * * XXX: Ignores failure for now. Failure here is probably a From owner-svn-src-all@freebsd.org Tue Apr 9 19:29:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AFB1A156A912; Tue, 9 Apr 2019 19:29:15 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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 "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5217275674; Tue, 9 Apr 2019 19:29:15 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-3.local (ralph.baldwin.cx [66.234.199.215]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 90A86FA72; Tue, 9 Apr 2019 19:29:14 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r346052 - head/sys/dev/usb/net To: Ian Lepore , Ganbold Tsagaankhuu , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904091354.x39Ds9e6070857@repo.freebsd.org> <33d96fdb-0218-6555-6f03-3105649a1904@FreeBSD.org> <969703ae8558b4b6f2930208e9c36927b546bb77.camel@freebsd.org> From: John Baldwin Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <47360aeb-c2d0-7fc9-1924-399c34766547@FreeBSD.org> Date: Tue, 9 Apr 2019 12:29:12 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <969703ae8558b4b6f2930208e9c36927b546bb77.camel@freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5217275674 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.99)[-0.989,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 19:29:15 -0000 On 4/9/19 9:59 AM, Ian Lepore wrote: > On Tue, 2019-04-09 at 09:33 -0700, John Baldwin wrote: >> On 4/9/19 9:17 AM, Ian Lepore wrote: >>> On Tue, 2019-04-09 at 09:11 -0700, John Baldwin wrote: >>>> On 4/9/19 6:54 AM, Ganbold Tsagaankhuu wrote: >>>>> Author: ganbold >>>>> Date: Tue Apr 9 13:54:08 2019 >>>>> New Revision: 346052 >>>>> URL: https://svnweb.freebsd.org/changeset/base/346052 >>>>> >>>>> Log: >>>>> In some cases like NanoPI R1, its second USB ethernet >>>>> RTL8152 (chip version URE_CHIP_VER_4C10) doesn't >>>>> have hardwired MAC address, in other words, it is all zeros. >>>>> This commit fixes it by setting random MAC address >>>>> when MAC address is all zeros. >>>>> >>>>> Reviewed by: kevlo >>>>> Differential Revision: >>>>> https://reviews.freebsd.org/D19856 >>>> >>>> It would be best to not use a purely random mac address and to >>>> use >>>> the >>>> function kevans@ added recently. That function generates a MAC >>>> address >>>> from the FreeBSD OUI using a cryptographic hash so you get a >>>> stable address across boots on a given host. >>>> >>> >>> How could that possibly work? If it's not random, you can't have >>> two >>> such devices on the same network. If it is random, it's not stable >>> from one boot to the next. >> >> It uses the UUID and interface name as input into the hash. > >> The UUID is per-host. > > Oh, so it only works on x86 (or I guess any system that has something > like a bios that can provide you with a uuid that doesn't change from > one boot to the next). The function is in one centralized place where you are free to add other data as input into the hash. We do always generate a uuid that we save on boot if we aren't seeded with one by firmware, though that is probably too late for this driver (so +1 may in fact be a better route). It should be fine for psuedo interfaces created post-boot though even on non-x86 due to /etc/rc.d/hostid. Pure random MAC's are not really great either. -- John Baldwin From owner-svn-src-all@freebsd.org Tue Apr 9 19:41:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3D85A156B250; Tue, 9 Apr 2019 19:41:00 +0000 (UTC) (envelope-from agapon@gmail.com) Received: from mail-lj1-f169.google.com (mail-lj1-f169.google.com [209.85.208.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 929C7762EE; Tue, 9 Apr 2019 19:40:59 +0000 (UTC) (envelope-from agapon@gmail.com) Received: by mail-lj1-f169.google.com with SMTP id k8so15562002lja.8; Tue, 09 Apr 2019 12:40:59 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:openpgp:autocrypt :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=och4NhkEw9oj78zlzVQElfkdPRmfbVXFrRbxAeya7r0=; b=p/g9pGv2h898mTlYhPSb0TGCusbuBer6FAna59kwh9l028VoJ8RhrZ4L9kuzhd8/eT 3oiSKyorUNFAIZ2/jOnACOeF2Ylfls0DZjTrg9dvARAkE7W2C6GAGlr8IFpmDWtgk97h gKaGhk5PivI1ijPgiARPnVeEVkY0OHJMPaNswMY1oQae9vJTUq+6J1g2qCZOU77YfBTM 4BeLvfR1zyCpFccS1rAobZCfkvSSSsuTCYfXP7Gk6zl/qh/ppZl9RU/1HVOFsdv/0jUI ajNbZfWHQ4gjp9ajLF4Knvq+rf8cToXboq+DSgCGw0CTSaAt9qe6kJKwO0grfkOysASm +Eew== X-Gm-Message-State: APjAAAXWsT/iBu/+IN4P6zuSyQPuf34uJfk7QbP7wwf6mmIxWJqPqPJ+ q8CRQ/5J/DNOvypR+5gvl0fdMi88 X-Google-Smtp-Source: APXvYqxhaziO/bbnTvAwT62w43J76XPbD7KtxT7d9uhtC2VS1XTCvaxWxdYsLqDCb9kXe3JuOnf8/w== X-Received: by 2002:a2e:42cf:: with SMTP id h76mr20012215ljf.95.1554838852247; Tue, 09 Apr 2019 12:40:52 -0700 (PDT) Received: from [192.168.0.88] (east.meadow.volia.net. [93.72.151.96]) by smtp.googlemail.com with ESMTPSA id g21sm249208lfj.79.2019.04.09.12.40.51 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 09 Apr 2019 12:40:51 -0700 (PDT) Subject: Re: svn commit: r346063 - head/sys/dev/acpica To: John Baldwin , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904091922.x39JM8K1048972@repo.freebsd.org> From: Andriy Gapon Openpgp: preference=signencrypt Autocrypt: addr=avg@FreeBSD.org; prefer-encrypt=mutual; keydata= xsFNBFm4LIgBEADNB/3lT7f15UKeQ52xCFQx/GqHkSxEdVyLFZTmY3KyNPQGBtyvVyBfprJ7 mAeXZWfhat6cKNRAGZcL5EmewdQuUfQfBdYmKjbw3a9GFDsDNuhDA2QwFt8BmkiVMRYyvI7l N0eVzszWCUgdc3qqM6qqcgBaqsVmJluwpvwp4ZBXmch5BgDDDb1MPO8AZ2QZfIQmplkj8Y6Z AiNMknkmgaekIINSJX8IzRzKD5WwMsin70psE8dpL/iBsA2cpJGzWMObVTtCxeDKlBCNqM1i gTXta1ukdUT7JgLEFZk9ceYQQMJJtUwzWu1UHfZn0Fs29HTqawfWPSZVbulbrnu5q55R4PlQ /xURkWQUTyDpqUvb4JK371zhepXiXDwrrpnyyZABm3SFLkk2bHlheeKU6Yql4pcmSVym1AS4 dV8y0oHAfdlSCF6tpOPf2+K9nW1CFA8b/tw4oJBTtfZ1kxXOMdyZU5fiG7xb1qDgpQKgHUX8 7Rd2T1UVLVeuhYlXNw2F+a2ucY+cMoqz3LtpksUiBppJhw099gEXehcN2JbUZ2TueJdt1FdS ztnZmsHUXLxrRBtGwqnFL7GSd6snpGIKuuL305iaOGODbb9c7ne1JqBbkw1wh8ci6vvwGlzx rexzimRaBzJxlkjNfMx8WpCvYebGMydNoeEtkWldtjTNVsUAtQARAQABzR5BbmRyaXkgR2Fw b24gPGF2Z0BGcmVlQlNELm9yZz7CwZQEEwEIAD4WIQS+LEO7ngQnXA4Bjr538m7TUc1yjwUC WbgsiAIbIwUJBaOagAULCQgHAgYVCAkKCwIEFgIDAQIeAQIXgAAKCRB38m7TUc1yj+JAEACV l9AK/nOWAt/9cufV2fRj0hdOqB1aCshtSrwHk/exXsDa4/FkmegxXQGY+3GWX3deIyesbVRL rYdtdK0dqJyT1SBqXK1h3/at9rxr9GQA6KWOxTjUFURsU7ok/6SIlm8uLRPNKO+yq0GDjgaO LzN+xykuBA0FlhQAXJnpZLcVfPJdWv7sSHGedL5ln8P8rxR+XnmsA5TUaaPcbhTB+mG+iKFj GghASDSfGqLWFPBlX/fpXikBDZ1gvOr8nyMY9nXhgfXpq3B6QCRYKPy58ChrZ5weeJZ29b7/ QdEO8NFNWHjSD9meiLdWQaqo9Y7uUxN3wySc/YUZxtS0bhAd8zJdNPsJYG8sXgKjeBQMVGuT eCAJFEYJqbwWvIXMfVWop4+O4xB+z2YE3jAbG/9tB/GSnQdVSj3G8MS80iLS58frnt+RSEw/ psahrfh0dh6SFHttE049xYiC+cM8J27Aaf0i9RflyITq57NuJm+AHJoU9SQUkIF0nc6lfA+o JRiyRlHZHKoRQkIg4aiKaZSWjQYRl5Txl0IZUP1dSWMX4s3XTMurC/pnja45dge/4ESOtJ9R 8XuIWg45Oq6MeIWdjKddGhRj3OohsltKgkEU3eLKYtB6qRTQypHHUawCXz88uYt5e3w4V16H lCpSTZV/EVHnNe45FVBlvK7k7HFfDDkryM7BTQRZuCyIARAAlq0slcsVboY/+IUJdcbEiJRW be9HKVz4SUchq0z9MZPX/0dcnvz/gkyYA+OuM78dNS7Mbby5dTvOqfpLJfCuhaNYOhlE0wY+ 1T6Tf1f4c/uA3U/YiadukQ3+6TJuYGAdRZD5EqYFIkreARTVWg87N9g0fT9BEqLw9lJtEGDY EWUE7L++B8o4uu3LQFEYxcrb4K/WKmgtmFcm77s0IKDrfcX4doV92QTIpLiRxcOmCC/OCYuO jB1oaaqXQzZrCutXRK0L5XN1Y1PYjIrEzHMIXmCDlLYnpFkK+itlXwlE2ZQxkfMruCWdQXye syl2fynAe8hvp7Mms9qU2r2K9EcJiR5N1t1C2/kTKNUhcRv7Yd/vwusK7BqJbhlng5ZgRx0m WxdntU/JLEntz3QBsBsWM9Y9wf2V4tLv6/DuDBta781RsCB/UrU2zNuOEkSixlUiHxw1dccI 6CVlaWkkJBxmHX22GdDFrcjvwMNIbbyfQLuBq6IOh8nvu9vuItup7qemDG3Ms6TVwA7BD3j+ 3fGprtyW8Fd/RR2bW2+LWkMrqHffAr6Y6V3h5kd2G9Q8ZWpEJk+LG6Mk3fhZhmCnHhDu6CwN MeUvxXDVO+fqc3JjFm5OxhmfVeJKrbCEUJyM8ESWLoNHLqjywdZga4Q7P12g8DUQ1mRxYg/L HgZY3zfKOqcAEQEAAcLBfAQYAQgAJhYhBL4sQ7ueBCdcDgGOvnfybtNRzXKPBQJZuCyIAhsM BQkFo5qAAAoJEHfybtNRzXKPBVwQAKfFy9P7N3OsLDMB56A4Kf+ZT+d5cIx0Yiaf4n6w7m3i ImHHHk9FIetI4Xe54a2IXh4Bq5UkAGY0667eIs+Z1Ea6I2i27Sdo7DxGwq09Qnm/Y65ADvXs 3aBvokCcm7FsM1wky395m8xUos1681oV5oxgqeRI8/76qy0hD9WR65UW+HQgZRIcIjSel9vR XDaD2HLGPTTGr7u4v00UeTMs6qvPsa2PJagogrKY8RXdFtXvweQFz78NbXhluwix2Tb9ETPk LIpDrtzV73CaE2aqBG/KrboXT2C67BgFtnk7T7Y7iKq4/XvEdDWscz2wws91BOXuMMd4c/c4 OmGW9m3RBLufFrOag1q5yUS9QbFfyqL6dftJP3Zq/xe+mr7sbWbhPVCQFrH3r26mpmy841ym dwQnNcsbIGiBASBSKksOvIDYKa2Wy8htPmWFTEOPRpFXdGQ27awcjjnB42nngyCK5ukZDHi6 w0qK5DNQQCkiweevCIC6wc3p67jl1EMFY5+z+zdTPb3h7LeVnGqW0qBQl99vVFgzLxchKcl0 R/paSFgwqXCZhAKMuUHncJuynDOP7z5LirUeFI8qsBAJi1rXpQoLJTVcW72swZ42IdPiboqx NbTMiNOiE36GqMcTPfKylCbF45JNX4nF9ElM0E+Y8gi4cizJYBRr2FBJgay0b9Cp Message-ID: Date: Tue, 9 Apr 2019 22:40:50 +0300 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <201904091922.x39JM8K1048972@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 929C7762EE X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 19:41:00 -0000 On 09/04/2019 22:22, John Baldwin wrote: > Author: jhb > Date: Tue Apr 9 19:22:08 2019 > New Revision: 346063 > URL: https://svnweb.freebsd.org/changeset/base/346063 > > Log: > Don't pre-reserve resources for CPU devices when they are set. > > CPUs can use shared (RF_SHAREABLE) resources for the I/O port used for > entering and exiting C states. If this I/O port is included in an ACPI > system resource device, then this happens to still work, but if the port > wasn't part of a system resource device, only the first CPU could allocate > the I/O port and use C states since resource_list_reserve() was always > allocating the resource from nexus0 without RF_SHAREABLE. By avoiding > the reservation, the flags from the bus_alloc_resource() in the CPU driver > (which include RF_SHAREABLE) are honored. > > PR: 236513 > Reported by: stockhausen@collogia.de > Sleuthing by: avg Actually, 80-90% of it was done by the reporter. I just pieced it together :) > Reviewed by: avg > MFC after: 2 weeks -- Andriy Gapon From owner-svn-src-all@freebsd.org Tue Apr 9 19:44:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BB133156B641; Tue, 9 Apr 2019 19:44:34 +0000 (UTC) (envelope-from chris@rees.space) Received: from mail56c50.megamailservers.eu (mail168c50.megamailservers.eu [91.136.10.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CC39176736; Tue, 9 Apr 2019 19:44:32 +0000 (UTC) (envelope-from chris@rees.space) X-Authenticated-User: bayofrum@uwclub.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu; s=maildub; t=1554839064; bh=lL2SyZ4bKP4rDwFGUY+fNQjVuMtUDqmCCBGEmCMCMyI=; h=Subject:To:CC:References:From:Date:In-Reply-To:From; b=NAwbUG6MxcTBwR+r8kvxTfSD5V8jReGTv2HXE8hx/81FcGWLVE5q9qNSufpSUsP4x i8Uquhl1rNC0f5Kld9ji8EHnudNQ3MFAvNq058DXugrVegocczcbsuMPkWT4rTpX+l w1/nB5yH8SI63px9/rYAdFB7VfDiTqQ/8Qb1kxAw= Feedback-ID: chris@rees.spac Received: from pegasus.bayofrum.net (81-178-238-70.dsl.pipex.com [81.178.238.70]) (authenticated bits=0) by mail56c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id x39JiMsh017486; Tue, 9 Apr 2019 19:44:24 +0000 Received: from [192.168.1.121] (POSEIDON.bayofrum.net [192.168.1.121]) by pegasus.bayofrum.net (Postfix) with ESMTPSA id 5C79F17BD; Tue, 9 Apr 2019 20:44:20 +0100 (BST) Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 To: rgrimes@freebsd.org, Chris Rees CC: "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904091833.x39IX4pW061476@gndrsh.dnsmgr.net> From: Chris Rees Message-ID: <11ce03d7-8ebc-2b08-baa8-3fb31a29b3b2@rees.space> Date: Tue, 9 Apr 2019 20:43:27 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <201904091833.x39IX4pW061476@gndrsh.dnsmgr.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-GB X-bayofrum-MailScanner-Information: Please contact the ISP for more information X-bayofrum-MailScanner-ID: 5C79F17BD.A289E X-bayofrum-MailScanner: Found to be clean X-bayofrum-MailScanner-From: chris@rees.space X-Spam-Status: No X-CTCH-RefID: str=0001.0A0B020F.5CACF618.0060, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-CSC: 0 X-CHA: v=2.3 cv=G6gy7es5 c=1 sm=1 tr=0 a=i0HMBnJGy7D3/NFKO8d8XA==:117 a=i0HMBnJGy7D3/NFKO8d8XA==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=IkcTkHD0fZMA:10 a=MKtGQD3n3ToA:10 a=1oJP67jkp3AA:10 a=oexKYjalfGEA:10 a=Y8a21bOVD5kA:10 a=ZZnuYtJkoWoA:10 a=iaTFZB6CAAAA:8 a=6I5d2MoRAAAA:8 a=FFKAGiKUUngNVcG6qM8A:9 a=QEXdDO2ut3YA:10 a=HOOHyrUpFT4A:10 a=QWXrQ9iV8q7LKaLQ9lfw:22 a=IjZwj45LgO3ly-622nXo:22 X-Rspamd-Queue-Id: CC39176736 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.962,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 19:44:35 -0000 Hi Rod, On 09/04/2019 19:33, Rodney W. Grimes wrote: >> Hey, >> >> On 9 April 2019 14:13:54 BST, "O. Hartmann" wrote: >>> On Sun, 7 Apr 2019 18:31:45 +0000 (UTC) >>> Chris Rees wrote: >>> >>>> Author: crees (doc,ports committer) >>>> Date: Sun Apr 7 18:31:45 2019 >>>> New Revision: 346017 >>>> URL: https://svnweb.freebsd.org/changeset/base/346017 >>>> >>>> Log: >>>> Remove now unnecessary kldstat check before attempting to load >>> modules. >>>> Since r233109, kldload has the -n option, which silently ignores >>> options >>>> that are already loaded. >>>> >>>> >>> https://lists.freebsd.org/pipermail/freebsd-rc/2018-December/003899.html >>>> Note that this script no longer reports if the module is already >>> loaded, >>>> but it could be argued this wasn't particularly useful information. >>>> >>>> PR: docs/234248 >>>> Reviewed by: bcr (docs), kib, rgrimes (visual) >>>> Approved by: jilles >>>> Differential Revision: https://reviews.freebsd.org/D18670 >>>> >>>> Modified: >>>> head/libexec/rc/rc.d/abi >>>> head/libexec/rc/rc.d/bthidd >>>> head/libexec/rc/rc.d/cfumass >>>> head/libexec/rc/rc.d/kld >>>> head/libexec/rc/rc.d/mdconfig >>>> head/libexec/rc/rc.d/mdconfig2 >>>> head/libexec/rc/rc.d/mountcritremote >>>> head/libexec/rc/rc.d/syscons >>>> head/libexec/rc/rc.subr >>>> head/share/man/man5/rc.conf.5 >>>> >>>> Modified: head/libexec/rc/rc.d/abi >>>> >>> ============================================================================== >> >> {Snip} >> >> >>> It seems this patch breaks ZFS if ZFS is built-in kernel! >>> >>> Having ZFS as kernel built-in leaves the system not mounting ANY(!) ZFS >>> volume >>> at boot time, rendering servers unusable. >>> Mounting ZFS filesystems with "zfs mount -a" bring back the ZFS >>> filesystems as >>> expected. >>> >> Are you sure it's this causing that? Please try reverting it. > I think the trigger issue is: > grep zfs /etc/rc.d/zvol > rcvar="zfs_enable" > required_modules="zfs" > > that module requires may be going south with the > new code when the module is built into the kernel. I wondered that, but I don't think so. [crees@pegasus]~% kldstat -v |head Id Refs Address            Size     Name  1   30 0xffffffff80200000 11df240  kernel (/boot/kernel.PEGASUS/kernel)         Contains modules:                 Id Name                 227 newreno                 215 if_lo                 229 ipsec                 228 mld                 226 igmp                 201 elf32 [crees@pegasus]~% sudo kldload ipsec kldload: can't load ipsec: module already loaded or in kernel [crees@pegasus]~% sudo kldload -n ipsec [crees@pegasus]~% echo $? 0 [crees@pegasus]~% The required_modules code calls load_kld, which uses kldload -n. This always returns true... unless Oliver has removed the zfs module from /boot/kernel perhaps? Chris -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. From owner-svn-src-all@freebsd.org Tue Apr 9 19:45:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9699A156B6A2; Tue, 9 Apr 2019 19:45:04 +0000 (UTC) (envelope-from agapon@gmail.com) Received: from mail-lj1-f195.google.com (mail-lj1-f195.google.com [209.85.208.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id EEE26768C0; Tue, 9 Apr 2019 19:45:03 +0000 (UTC) (envelope-from agapon@gmail.com) Received: by mail-lj1-f195.google.com with SMTP id v22so15579341lje.9; Tue, 09 Apr 2019 12:45:03 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:openpgp:autocrypt :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=0VVIkpw1lLnbh8je8g/i0Z+hARO5IB2gwXWEZm/ET9o=; b=uJbPxDg64ABSn/V15IIyZu32DXxWr+yR62dFojhIS+hqoyHqI8fzPtCzIth1fa4Q7J iq8OdCjgev80gLw+8JNQZAN5SqFBFqIR2PX8GDERjrQuLrByNKNc/iODUwQC8MLt0+MA TA3HrK+OQBbjVRC6z5iIuAsb9zlWBeIaIgoK877sw/9+kb3nbC16Lsr2yqX3inNL/EbZ tDPaoa+yfVd/GKFhZwW05ddYlrwuqZNL5l4OmJH5pM88xgIoG4FzgtDvb1TOR6eB2tNV vymRKCBVMCspft5j13nMj3FQTpcSDI6gnU13W3/xZNqz1P/Ph3qvANk9sxbKtNuwa726 nscg== X-Gm-Message-State: APjAAAUvOkKCWB+RdwcGGqpp3xSZ9pOli+6xKcaV/o3Q59/YoJ/iIZFJ gka18xMZ6/hvwI58XOUMzcp/pvgG X-Google-Smtp-Source: APXvYqwA6JyQYo1gPM872SrCrb53xKLRpARc4AFjuuy7BN3HlWvPkgxq6zGsabEUsQg0wzF/Dz0wGQ== X-Received: by 2002:a2e:9619:: with SMTP id v25mr20121397ljh.145.1554837732455; Tue, 09 Apr 2019 12:22:12 -0700 (PDT) Received: from [192.168.0.88] (east.meadow.volia.net. [93.72.151.96]) by smtp.googlemail.com with ESMTPSA id j10sm1821273lfc.56.2019.04.09.12.22.10 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 09 Apr 2019 12:22:11 -0700 (PDT) Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 To: rgrimes@freebsd.org, Chris Rees Cc: "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904091833.x39IX4pW061476@gndrsh.dnsmgr.net> From: Andriy Gapon Openpgp: preference=signencrypt Autocrypt: addr=avg@FreeBSD.org; prefer-encrypt=mutual; keydata= xsFNBFm4LIgBEADNB/3lT7f15UKeQ52xCFQx/GqHkSxEdVyLFZTmY3KyNPQGBtyvVyBfprJ7 mAeXZWfhat6cKNRAGZcL5EmewdQuUfQfBdYmKjbw3a9GFDsDNuhDA2QwFt8BmkiVMRYyvI7l N0eVzszWCUgdc3qqM6qqcgBaqsVmJluwpvwp4ZBXmch5BgDDDb1MPO8AZ2QZfIQmplkj8Y6Z AiNMknkmgaekIINSJX8IzRzKD5WwMsin70psE8dpL/iBsA2cpJGzWMObVTtCxeDKlBCNqM1i gTXta1ukdUT7JgLEFZk9ceYQQMJJtUwzWu1UHfZn0Fs29HTqawfWPSZVbulbrnu5q55R4PlQ /xURkWQUTyDpqUvb4JK371zhepXiXDwrrpnyyZABm3SFLkk2bHlheeKU6Yql4pcmSVym1AS4 dV8y0oHAfdlSCF6tpOPf2+K9nW1CFA8b/tw4oJBTtfZ1kxXOMdyZU5fiG7xb1qDgpQKgHUX8 7Rd2T1UVLVeuhYlXNw2F+a2ucY+cMoqz3LtpksUiBppJhw099gEXehcN2JbUZ2TueJdt1FdS ztnZmsHUXLxrRBtGwqnFL7GSd6snpGIKuuL305iaOGODbb9c7ne1JqBbkw1wh8ci6vvwGlzx rexzimRaBzJxlkjNfMx8WpCvYebGMydNoeEtkWldtjTNVsUAtQARAQABzR5BbmRyaXkgR2Fw b24gPGF2Z0BGcmVlQlNELm9yZz7CwZQEEwEIAD4WIQS+LEO7ngQnXA4Bjr538m7TUc1yjwUC WbgsiAIbIwUJBaOagAULCQgHAgYVCAkKCwIEFgIDAQIeAQIXgAAKCRB38m7TUc1yj+JAEACV l9AK/nOWAt/9cufV2fRj0hdOqB1aCshtSrwHk/exXsDa4/FkmegxXQGY+3GWX3deIyesbVRL rYdtdK0dqJyT1SBqXK1h3/at9rxr9GQA6KWOxTjUFURsU7ok/6SIlm8uLRPNKO+yq0GDjgaO LzN+xykuBA0FlhQAXJnpZLcVfPJdWv7sSHGedL5ln8P8rxR+XnmsA5TUaaPcbhTB+mG+iKFj GghASDSfGqLWFPBlX/fpXikBDZ1gvOr8nyMY9nXhgfXpq3B6QCRYKPy58ChrZ5weeJZ29b7/ QdEO8NFNWHjSD9meiLdWQaqo9Y7uUxN3wySc/YUZxtS0bhAd8zJdNPsJYG8sXgKjeBQMVGuT eCAJFEYJqbwWvIXMfVWop4+O4xB+z2YE3jAbG/9tB/GSnQdVSj3G8MS80iLS58frnt+RSEw/ psahrfh0dh6SFHttE049xYiC+cM8J27Aaf0i9RflyITq57NuJm+AHJoU9SQUkIF0nc6lfA+o JRiyRlHZHKoRQkIg4aiKaZSWjQYRl5Txl0IZUP1dSWMX4s3XTMurC/pnja45dge/4ESOtJ9R 8XuIWg45Oq6MeIWdjKddGhRj3OohsltKgkEU3eLKYtB6qRTQypHHUawCXz88uYt5e3w4V16H lCpSTZV/EVHnNe45FVBlvK7k7HFfDDkryM7BTQRZuCyIARAAlq0slcsVboY/+IUJdcbEiJRW be9HKVz4SUchq0z9MZPX/0dcnvz/gkyYA+OuM78dNS7Mbby5dTvOqfpLJfCuhaNYOhlE0wY+ 1T6Tf1f4c/uA3U/YiadukQ3+6TJuYGAdRZD5EqYFIkreARTVWg87N9g0fT9BEqLw9lJtEGDY EWUE7L++B8o4uu3LQFEYxcrb4K/WKmgtmFcm77s0IKDrfcX4doV92QTIpLiRxcOmCC/OCYuO jB1oaaqXQzZrCutXRK0L5XN1Y1PYjIrEzHMIXmCDlLYnpFkK+itlXwlE2ZQxkfMruCWdQXye syl2fynAe8hvp7Mms9qU2r2K9EcJiR5N1t1C2/kTKNUhcRv7Yd/vwusK7BqJbhlng5ZgRx0m WxdntU/JLEntz3QBsBsWM9Y9wf2V4tLv6/DuDBta781RsCB/UrU2zNuOEkSixlUiHxw1dccI 6CVlaWkkJBxmHX22GdDFrcjvwMNIbbyfQLuBq6IOh8nvu9vuItup7qemDG3Ms6TVwA7BD3j+ 3fGprtyW8Fd/RR2bW2+LWkMrqHffAr6Y6V3h5kd2G9Q8ZWpEJk+LG6Mk3fhZhmCnHhDu6CwN MeUvxXDVO+fqc3JjFm5OxhmfVeJKrbCEUJyM8ESWLoNHLqjywdZga4Q7P12g8DUQ1mRxYg/L HgZY3zfKOqcAEQEAAcLBfAQYAQgAJhYhBL4sQ7ueBCdcDgGOvnfybtNRzXKPBQJZuCyIAhsM BQkFo5qAAAoJEHfybtNRzXKPBVwQAKfFy9P7N3OsLDMB56A4Kf+ZT+d5cIx0Yiaf4n6w7m3i ImHHHk9FIetI4Xe54a2IXh4Bq5UkAGY0667eIs+Z1Ea6I2i27Sdo7DxGwq09Qnm/Y65ADvXs 3aBvokCcm7FsM1wky395m8xUos1681oV5oxgqeRI8/76qy0hD9WR65UW+HQgZRIcIjSel9vR XDaD2HLGPTTGr7u4v00UeTMs6qvPsa2PJagogrKY8RXdFtXvweQFz78NbXhluwix2Tb9ETPk LIpDrtzV73CaE2aqBG/KrboXT2C67BgFtnk7T7Y7iKq4/XvEdDWscz2wws91BOXuMMd4c/c4 OmGW9m3RBLufFrOag1q5yUS9QbFfyqL6dftJP3Zq/xe+mr7sbWbhPVCQFrH3r26mpmy841ym dwQnNcsbIGiBASBSKksOvIDYKa2Wy8htPmWFTEOPRpFXdGQ27awcjjnB42nngyCK5ukZDHi6 w0qK5DNQQCkiweevCIC6wc3p67jl1EMFY5+z+zdTPb3h7LeVnGqW0qBQl99vVFgzLxchKcl0 R/paSFgwqXCZhAKMuUHncJuynDOP7z5LirUeFI8qsBAJi1rXpQoLJTVcW72swZ42IdPiboqx NbTMiNOiE36GqMcTPfKylCbF45JNX4nF9ElM0E+Y8gi4cizJYBRr2FBJgay0b9Cp Message-ID: Date: Tue, 9 Apr 2019 22:22:09 +0300 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <201904091833.x39IX4pW061476@gndrsh.dnsmgr.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: EEE26768C0 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.958,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 19:45:04 -0000 On 09/04/2019 21:33, Rodney W. Grimes wrote: > I think the trigger issue is: > grep zfs /etc/rc.d/zvol > rcvar="zfs_enable" > required_modules="zfs" > > that module requires may be going south with the > new code when the module is built into the kernel. Maybe it's because the module's name is zfsctrl (for whatever reason) while the module file is named zfs.ko. -- Andriy Gapon From owner-svn-src-all@freebsd.org Tue Apr 9 19:48:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CCC78156B8D1; Tue, 9 Apr 2019 19:48:15 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 37C4F76C3C; Tue, 9 Apr 2019 19:48:15 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x39JmBQ7061858; Tue, 9 Apr 2019 12:48:11 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x39JmBZk061857; Tue, 9 Apr 2019 12:48:11 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904091948.x39JmBZk061857@gndrsh.dnsmgr.net> Subject: Re: svn commit: r346052 - head/sys/dev/usb/net In-Reply-To: <47360aeb-c2d0-7fc9-1924-399c34766547@FreeBSD.org> To: John Baldwin Date: Tue, 9 Apr 2019 12:48:11 -0700 (PDT) CC: Ian Lepore , Ganbold Tsagaankhuu , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 37C4F76C3C X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.95)[-0.947,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 19:48:16 -0000 > On 4/9/19 9:59 AM, Ian Lepore wrote: > > On Tue, 2019-04-09 at 09:33 -0700, John Baldwin wrote: > >> On 4/9/19 9:17 AM, Ian Lepore wrote: > >>> On Tue, 2019-04-09 at 09:11 -0700, John Baldwin wrote: > >>>> On 4/9/19 6:54 AM, Ganbold Tsagaankhuu wrote: > >>>>> Author: ganbold > >>>>> Date: Tue Apr 9 13:54:08 2019 > >>>>> New Revision: 346052 > >>>>> URL: https://svnweb.freebsd.org/changeset/base/346052 > >>>>> > >>>>> Log: > >>>>> In some cases like NanoPI R1, its second USB ethernet > >>>>> RTL8152 (chip version URE_CHIP_VER_4C10) doesn't > >>>>> have hardwired MAC address, in other words, it is all zeros. > >>>>> This commit fixes it by setting random MAC address > >>>>> when MAC address is all zeros. > >>>>> > >>>>> Reviewed by: kevlo > >>>>> Differential Revision: > >>>>> https://reviews.freebsd.org/D19856 > >>>> > >>>> It would be best to not use a purely random mac address and to > >>>> use > >>>> the > >>>> function kevans@ added recently. That function generates a MAC > >>>> address > >>>> from the FreeBSD OUI using a cryptographic hash so you get a > >>>> stable address across boots on a given host. > >>>> > >>> > >>> How could that possibly work? If it's not random, you can't have > >>> two > >>> such devices on the same network. If it is random, it's not stable > >>> from one boot to the next. > >> > >> It uses the UUID and interface name as input into the hash. > > > >> The UUID is per-host. > > > > Oh, so it only works on x86 (or I guess any system that has something > > like a bios that can provide you with a uuid that doesn't change from > > one boot to the next). > > The function is in one centralized place where you are free to add other > data as input into the hash. We do always generate a uuid that we save > on boot if we aren't seeded with one by firmware, though that is probably > too late for this driver (so +1 may in fact be a better route). It should > be fine for psuedo interfaces created post-boot though even on non-x86 due > to /etc/rc.d/hostid. Pure random MAC's are not really great either. Cant the loader load /etc/rc.d/hostid and put it in something that the kernel could get at, or a module written that handles this? > -- > John Baldwin -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 19:49:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7E3AA156B9D3; Tue, 9 Apr 2019 19:49:42 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0F47876DE3; Tue, 9 Apr 2019 19:49:41 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x39JnaKr061871; Tue, 9 Apr 2019 12:49:36 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x39Jnagv061870; Tue, 9 Apr 2019 12:49:36 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904091949.x39Jnagv061870@gndrsh.dnsmgr.net> Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 In-Reply-To: <11ce03d7-8ebc-2b08-baa8-3fb31a29b3b2@rees.space> To: Chris Rees Date: Tue, 9 Apr 2019 12:49:36 -0700 (PDT) CC: rgrimes@freebsd.org, Chris Rees , "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 0F47876DE3 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 19:49:42 -0000 [ Charset UTF-8 unsupported, converting... ] > Hi Rod, > > On 09/04/2019 19:33, Rodney W. Grimes wrote: > >> Hey, > >> > >> On 9 April 2019 14:13:54 BST, "O. Hartmann" wrote: > >>> On Sun, 7 Apr 2019 18:31:45 +0000 (UTC) > >>> Chris Rees wrote: > >>> > >>>> Author: crees (doc,ports committer) > >>>> Date: Sun Apr 7 18:31:45 2019 > >>>> New Revision: 346017 > >>>> URL: https://svnweb.freebsd.org/changeset/base/346017 > >>>> > >>>> Log: > >>>> Remove now unnecessary kldstat check before attempting to load > >>> modules. > >>>> Since r233109, kldload has the -n option, which silently ignores > >>> options > >>>> that are already loaded. > >>>> > >>>> > >>> https://lists.freebsd.org/pipermail/freebsd-rc/2018-December/003899.html > >>>> Note that this script no longer reports if the module is already > >>> loaded, > >>>> but it could be argued this wasn't particularly useful information. > >>>> > >>>> PR: docs/234248 > >>>> Reviewed by: bcr (docs), kib, rgrimes (visual) > >>>> Approved by: jilles > >>>> Differential Revision: https://reviews.freebsd.org/D18670 > >>>> > >>>> Modified: > >>>> head/libexec/rc/rc.d/abi > >>>> head/libexec/rc/rc.d/bthidd > >>>> head/libexec/rc/rc.d/cfumass > >>>> head/libexec/rc/rc.d/kld > >>>> head/libexec/rc/rc.d/mdconfig > >>>> head/libexec/rc/rc.d/mdconfig2 > >>>> head/libexec/rc/rc.d/mountcritremote > >>>> head/libexec/rc/rc.d/syscons > >>>> head/libexec/rc/rc.subr > >>>> head/share/man/man5/rc.conf.5 > >>>> > >>>> Modified: head/libexec/rc/rc.d/abi > >>>> > >>> ============================================================================== > >> > >> {Snip} > >> > >> > >>> It seems this patch breaks ZFS if ZFS is built-in kernel! > >>> > >>> Having ZFS as kernel built-in leaves the system not mounting ANY(!) ZFS > >>> volume > >>> at boot time, rendering servers unusable. > >>> Mounting ZFS filesystems with "zfs mount -a" bring back the ZFS > >>> filesystems as > >>> expected. > >>> > >> Are you sure it's this causing that? Please try reverting it. > > I think the trigger issue is: > > grep zfs /etc/rc.d/zvol > > rcvar="zfs_enable" > > required_modules="zfs" > > > > that module requires may be going south with the > > new code when the module is built into the kernel. > > > I wondered that, but I don't think so. > > [crees@pegasus]~% kldstat -v |head > Id Refs Address??????????? Size???? Name > ?1?? 30 0xffffffff80200000 11df240? kernel (/boot/kernel.PEGASUS/kernel) > ??????? Contains modules: > ??????????????? Id Name > ??????????????? 227 newreno > ??????????????? 215 if_lo > ??????????????? 229 ipsec > ??????????????? 228 mld > ??????????????? 226 igmp > ??????????????? 201 elf32 > [crees@pegasus]~% sudo kldload ipsec > kldload: can't load ipsec: module already loaded or in kernel > [crees@pegasus]~% sudo kldload -n ipsec > [crees@pegasus]~% echo $? > 0 > [crees@pegasus]~% > > The required_modules code calls load_kld, which uses kldload -n. This > always returns true... unless Oliver has removed the zfs module from > /boot/kernel perhaps? He explicitly stated he is running with ZFS compiled into his kernel, in that situation there well be no /boot/kernel/zfs.ko file. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 19:55:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B77BD156BC9C; Tue, 9 Apr 2019 19:55:03 +0000 (UTC) (envelope-from kib@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 5AA7F772D7; Tue, 9 Apr 2019 19:55:03 +0000 (UTC) (envelope-from kib@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 33400FE9F; Tue, 9 Apr 2019 19:55:03 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39Jt3pS068855; Tue, 9 Apr 2019 19:55:03 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39Jt35P068854; Tue, 9 Apr 2019 19:55:03 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904091955.x39Jt35P068854@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 9 Apr 2019 19:55:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346064 - head/sys/fs/msdosfs X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/fs/msdosfs X-SVN-Commit-Revision: 346064 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5AA7F772D7 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 19:55:04 -0000 Author: kib Date: Tue Apr 9 19:55:02 2019 New Revision: 346064 URL: https://svnweb.freebsd.org/changeset/base/346064 Log: Fix dirty buf exhaustion easily triggered with msdosfs. If truncate(2) is performed on msdosfs file, which extends the file by system-depended large amount, fs creates corresponding amount of dirty delayed-write buffers, which can consume all buffers. Such buffers cannot be flushed by the bufdaemon because the ftruncate() thread owns the vnode lock. So the system runs out of free buffers, and even truncate() thread starves, which means deadlock because it owns the vnode lock. Fix this by doing vnode fsync in extendfile() when low memory or low buffers condition detected, which flushes all dirty buffers belonging to the file being extended. Note that the more usual fallback to bawrite() does not work acceptable in this situation, because it would only allow one buffer to be recycled. Other filesystems, most important UFS, do not allow userspace to create arbitrary amount of dirty delayed-write buffers without feedback, so bawrite() is good enough for them. Reported and tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/fs/msdosfs/msdosfs_fat.c Modified: head/sys/fs/msdosfs/msdosfs_fat.c ============================================================================== --- head/sys/fs/msdosfs/msdosfs_fat.c Tue Apr 9 19:22:08 2019 (r346063) +++ head/sys/fs/msdosfs/msdosfs_fat.c Tue Apr 9 19:55:02 2019 (r346064) @@ -54,6 +54,7 @@ #include #include #include +#include #include #include @@ -979,6 +980,7 @@ extendfile(struct denode *dep, u_long count, struct bu u_long cn, got; struct msdosfsmount *pmp = dep->de_pmp; struct buf *bp; + struct vop_fsync_args fsync_ap; daddr_t blkno; /* @@ -1086,8 +1088,16 @@ extendfile(struct denode *dep, u_long count, struct bu if (bpp) { *bpp = bp; bpp = NULL; - } else + } else { bdwrite(bp); + } + if (vm_page_count_severe() || + buf_dirty_count_severe()) { + fsync_ap.a_vp = DETOV(dep); + fsync_ap.a_waitfor = MNT_WAIT; + fsync_ap.a_td = curthread; + vop_stdfsync(&fsync_ap); + } } } } From owner-svn-src-all@freebsd.org Tue Apr 9 19:55:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 72FF2156BCC0; Tue, 9 Apr 2019 19:55:15 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CE70F773A0; Tue, 9 Apr 2019 19:55:14 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x39Jt7AO061908; Tue, 9 Apr 2019 12:55:07 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x39Jt7PU061907; Tue, 9 Apr 2019 12:55:07 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904091955.x39Jt7PU061907@gndrsh.dnsmgr.net> Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 In-Reply-To: To: Andriy Gapon Date: Tue, 9 Apr 2019 12:55:07 -0700 (PDT) CC: rgrimes@freebsd.org, Chris Rees , "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: CE70F773A0 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.947,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 19:55:15 -0000 > On 09/04/2019 21:33, Rodney W. Grimes wrote: > > I think the trigger issue is: > > grep zfs /etc/rc.d/zvol > > rcvar="zfs_enable" > > required_modules="zfs" > > > > that module requires may be going south with the > > new code when the module is built into the kernel. > > Maybe it's because the module's name is zfsctrl (for whatever reason) while the > module file is named zfs.ko. I suspect that could also lead to issues with the new code. It seems to be failing to detect that zfs is infact functional in the kernel, and blindly, or not so blindly, trying to load zfs,ko, which when you build it into the kernel you usually do so without any modules built, so there is no /boot/kernel/zfs.ko, and even if you did build it any attempt to load it would return an error. > -- > Andriy Gapon -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 19:59:37 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8597F156BE4A; Tue, 9 Apr 2019 19:59:37 +0000 (UTC) (envelope-from crees@bayofrum.net) Received: from mail33c50.megamailservers.eu (mail163c50.megamailservers.eu [91.136.10.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 56C917763D; Tue, 9 Apr 2019 19:59:36 +0000 (UTC) (envelope-from crees@bayofrum.net) X-Authenticated-User: bayofrum@uwclub.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu; s=maildub; t=1554839974; bh=0AVFxwxLjDgPCJcKGttwzvBhH76e6hWPEpScgkNN50k=; h=Date:In-Reply-To:References:Subject:To:CC:From:From; b=HHio+2PFKwm/8CBQ2uLnk3D7PFtbASzMxgNiPelToi9+DsUjH9+By2FMfCDx5Wkpv Ei34ajUmwBnTsRVqsJKquhnPPAwbstV2A/KnLyD8XDG/6EMH6dVw0ugmdCtOrcj4HM T/m0L+bh1Sq1Ywd1dFZKHkU0hukVsvXxDoyPAFMI= Feedback-ID: crees@bayofrum. Received: from pegasus.bayofrum.net (81-178-238-70.dsl.pipex.com [81.178.238.70]) (authenticated bits=0) by mail33c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id x39JxVKr027967; Tue, 9 Apr 2019 19:59:33 +0000 Received: from R.bayofrum.net (R.bayofrum.net [192.168.1.129]) by pegasus.bayofrum.net (Postfix) with ESMTPSA id 9511F190E; Tue, 9 Apr 2019 20:59:27 +0100 (BST) Date: Tue, 09 Apr 2019 20:59:25 +0100 User-Agent: K-9 Mail for Android In-Reply-To: <201904091955.x39Jt7PU061907@gndrsh.dnsmgr.net> References: <201904091955.x39Jt7PU061907@gndrsh.dnsmgr.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 To: rgrimes@freebsd.org, "Rodney W. Grimes" , Andriy Gapon CC: "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Chris Rees Message-ID: X-bayofrum-MailScanner-Information: Please contact the ISP for more information X-bayofrum-MailScanner-ID: 9511F190E.A6AB4 X-bayofrum-MailScanner: Found to be clean X-bayofrum-MailScanner-From: crees@bayofrum.net X-Spam-Status: No X-CTCH-RefID: str=0001.0A0B020E.5CACF9A5.0059, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-CSC: 0 X-CHA: v=2.3 cv=eOw9ckh1 c=1 sm=1 tr=0 a=i0HMBnJGy7D3/NFKO8d8XA==:117 a=i0HMBnJGy7D3/NFKO8d8XA==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=IkcTkHD0fZMA:10 a=oexKYjalfGEA:10 a=iKhvJSA4AAAA:8 a=9Z5MU9Rqn1pvM6OAhKIA:9 a=QEXdDO2ut3YA:10 a=odh9cflL3HIXMm4fY7Wr:22 X-Rspamd-Queue-Id: 56C917763D X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.96)[-0.957,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 19:59:37 -0000 On 9 April 2019 20:55:07 BST, "Rodney W. Grimes" wrote: >> On 09/04/2019 21:33, Rodney W. Grimes wrote: >> > I think the trigger issue is: >> > grep zfs /etc/rc.d/zvol=20 >> > rcvar=3D"zfs_enable" >> > required_modules=3D"zfs" >> >=20 >> > that module requires may be going south with the >> > new code when the module is built into the kernel. >>=20 >> Maybe it's because the module's name is zfsctrl (for whatever reason) >while the >> module file is named zfs.ko. > >I suspect that could also lead to issues with the new code. >It seems to be failing to detect that zfs is infact functional in the >kernel, >and blindly, or not so blindly, trying to load zfs,ko, which when you >build >it into the kernel you usually do so without any modules built, so >there is >no /boot/kernel/zfs.ko, and even if you did build it any attempt to >load >it would return an error. Loading with it built in isn't a problem, as I showed earlier. Loading when it doesn't exist *is*. I'm torn. Either we could revert this, or add a check to the required_modu= les function instead, which I think is the better solution. Chris --=20 Sent from my Android device with K-9 Mail. Please excuse my brevity. --=20 This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. From owner-svn-src-all@freebsd.org Tue Apr 9 20:04:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C5A06156C0AC; Tue, 9 Apr 2019 20:04:10 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4389077B3A; Tue, 9 Apr 2019 20:04:10 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x39K43FF061972; Tue, 9 Apr 2019 13:04:03 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x39K43X2061971; Tue, 9 Apr 2019 13:04:03 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904092004.x39K43X2061971@gndrsh.dnsmgr.net> Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 In-Reply-To: To: Chris Rees Date: Tue, 9 Apr 2019 13:04:03 -0700 (PDT) CC: rgrimes@freebsd.org, "Rodney W. Grimes" , Andriy Gapon , "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 4389077B3A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.95)[-0.947,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 20:04:10 -0000 > On 9 April 2019 20:55:07 BST, "Rodney W. Grimes" wrote: > >> On 09/04/2019 21:33, Rodney W. Grimes wrote: > >> > I think the trigger issue is: > >> > grep zfs /etc/rc.d/zvol > >> > rcvar="zfs_enable" > >> > required_modules="zfs" > >> > > >> > that module requires may be going south with the > >> > new code when the module is built into the kernel. > >> > >> Maybe it's because the module's name is zfsctrl (for whatever reason) > >while the > >> module file is named zfs.ko. > > > >I suspect that could also lead to issues with the new code. > >It seems to be failing to detect that zfs is infact functional in the > >kernel, > >and blindly, or not so blindly, trying to load zfs,ko, which when you > >build > >it into the kernel you usually do so without any modules built, so > >there is > >no /boot/kernel/zfs.ko, and even if you did build it any attempt to > >load > >it would return an error. > > Loading with it built in isn't a problem, as I showed earlier. > > Loading when it doesn't exist *is*. > > I'm torn. Either we could revert this, or add a check to the required_modules function instead, which I think is the better solution. Ultimately at this time it is your decision, my personal mode of operation is when an unforseen bug comes up in something I did it is to revert, work on the issue until I am confident it is addressed, and addressed without adding any addition issue, then revert the revert and apply the fix. > Chris -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 20:19:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 06936156C577; Tue, 9 Apr 2019 20:19:27 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (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 "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8AE9E8025D; Tue, 9 Apr 2019 20:19:26 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-3.local (ralph.baldwin.cx [66.234.199.215]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id B9CE4FFF1; Tue, 9 Apr 2019 20:19:25 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r346052 - head/sys/dev/usb/net To: rgrimes@freebsd.org Cc: Ian Lepore , Ganbold Tsagaankhuu , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904091948.x39JmBZk061857@gndrsh.dnsmgr.net> From: John Baldwin Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <8c5292c0-5464-8995-4518-181886201692@FreeBSD.org> Date: Tue, 9 Apr 2019 13:19:24 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <201904091948.x39JmBZk061857@gndrsh.dnsmgr.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 8AE9E8025D X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.93 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.93)[-0.934,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 20:19:27 -0000 On 4/9/19 12:48 PM, Rodney W. Grimes wrote: >> On 4/9/19 9:59 AM, Ian Lepore wrote: >>> On Tue, 2019-04-09 at 09:33 -0700, John Baldwin wrote: >>>> On 4/9/19 9:17 AM, Ian Lepore wrote: >>>>> On Tue, 2019-04-09 at 09:11 -0700, John Baldwin wrote: >>>>>> On 4/9/19 6:54 AM, Ganbold Tsagaankhuu wrote: >>>>>>> Author: ganbold >>>>>>> Date: Tue Apr 9 13:54:08 2019 >>>>>>> New Revision: 346052 >>>>>>> URL: https://svnweb.freebsd.org/changeset/base/346052 >>>>>>> >>>>>>> Log: >>>>>>> In some cases like NanoPI R1, its second USB ethernet >>>>>>> RTL8152 (chip version URE_CHIP_VER_4C10) doesn't >>>>>>> have hardwired MAC address, in other words, it is all zeros. >>>>>>> This commit fixes it by setting random MAC address >>>>>>> when MAC address is all zeros. >>>>>>> >>>>>>> Reviewed by: kevlo >>>>>>> Differential Revision: >>>>>>> https://reviews.freebsd.org/D19856 >>>>>> >>>>>> It would be best to not use a purely random mac address and to >>>>>> use >>>>>> the >>>>>> function kevans@ added recently. That function generates a MAC >>>>>> address >>>>>> from the FreeBSD OUI using a cryptographic hash so you get a >>>>>> stable address across boots on a given host. >>>>>> >>>>> >>>>> How could that possibly work? If it's not random, you can't have >>>>> two >>>>> such devices on the same network. If it is random, it's not stable >>>>> from one boot to the next. >>>> >>>> It uses the UUID and interface name as input into the hash. >>> >>>> The UUID is per-host. >>> >>> Oh, so it only works on x86 (or I guess any system that has something >>> like a bios that can provide you with a uuid that doesn't change from >>> one boot to the next). >> >> The function is in one centralized place where you are free to add other >> data as input into the hash. We do always generate a uuid that we save >> on boot if we aren't seeded with one by firmware, though that is probably >> too late for this driver (so +1 may in fact be a better route). It should >> be fine for psuedo interfaces created post-boot though even on non-x86 due >> to /etc/rc.d/hostid. Pure random MAC's are not really great either. > > Cant the loader load /etc/rc.d/hostid and put it in something that > the kernel could get at, or a module written that handles this? It's a different file, and yes in theory the loader could look at the file and set UUID and hostid env vars. However, that's a no-op for most use cases. If other platforms have some kind of firmware-provided thing that isn't a UUID, it would be good to teach the centralized function about those as an input to the hash, but at least that can be done in place rather than having open-coded MAC generators in various drivers. -- John Baldwin From owner-svn-src-all@freebsd.org Tue Apr 9 20:20:06 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5E8D1156C5D6; Tue, 9 Apr 2019 20:20:06 +0000 (UTC) (envelope-from kib@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 00CAA8039E; Tue, 9 Apr 2019 20:20:06 +0000 (UTC) (envelope-from kib@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 CEA8B18210; Tue, 9 Apr 2019 20:20:05 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39KK5ui079833; Tue, 9 Apr 2019 20:20:05 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39KK452079826; Tue, 9 Apr 2019 20:20:04 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904092020.x39KK452079826@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 9 Apr 2019 20:20:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346065 - in head/sys: fs/fuse fs/msdosfs kern sys X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in head/sys: fs/fuse fs/msdosfs kern sys X-SVN-Commit-Revision: 346065 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 00CAA8039E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 20:20:06 -0000 Author: kib Date: Tue Apr 9 20:20:04 2019 New Revision: 346065 URL: https://svnweb.freebsd.org/changeset/base/346065 Log: Add vn_fsync_buf(). Provide a convenience function to avoid the hack with filling fake struct vop_fsync_args and then calling vop_stdfsync(). Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/fs/fuse/fuse_io.c head/sys/fs/msdosfs/msdosfs_fat.c head/sys/kern/vfs_default.c head/sys/kern/vfs_vnops.c head/sys/sys/vnode.h Modified: head/sys/fs/fuse/fuse_io.c ============================================================================== --- head/sys/fs/fuse/fuse_io.c Tue Apr 9 19:55:02 2019 (r346064) +++ head/sys/fs/fuse/fuse_io.c Tue Apr 9 20:20:04 2019 (r346065) @@ -771,13 +771,8 @@ fuse_io_strategy(struct vnode *vp, struct buf *bp) int fuse_io_flushbuf(struct vnode *vp, int waitfor, struct thread *td) { - struct vop_fsync_args a = { - .a_vp = vp, - .a_waitfor = waitfor, - .a_td = td, - }; - return (vop_stdfsync(&a)); + return (vn_fsync_buf(vp, waitfor)); } /* Modified: head/sys/fs/msdosfs/msdosfs_fat.c ============================================================================== --- head/sys/fs/msdosfs/msdosfs_fat.c Tue Apr 9 19:55:02 2019 (r346064) +++ head/sys/fs/msdosfs/msdosfs_fat.c Tue Apr 9 20:20:04 2019 (r346065) @@ -980,7 +980,6 @@ extendfile(struct denode *dep, u_long count, struct bu u_long cn, got; struct msdosfsmount *pmp = dep->de_pmp; struct buf *bp; - struct vop_fsync_args fsync_ap; daddr_t blkno; /* @@ -1092,12 +1091,8 @@ extendfile(struct denode *dep, u_long count, struct bu bdwrite(bp); } if (vm_page_count_severe() || - buf_dirty_count_severe()) { - fsync_ap.a_vp = DETOV(dep); - fsync_ap.a_waitfor = MNT_WAIT; - fsync_ap.a_td = curthread; - vop_stdfsync(&fsync_ap); - } + buf_dirty_count_severe()) + vn_fsync_buf(DETOV(dep), MNT_WAIT); } } } Modified: head/sys/kern/vfs_default.c ============================================================================== --- head/sys/kern/vfs_default.c Tue Apr 9 19:55:02 2019 (r346064) +++ head/sys/kern/vfs_default.c Tue Apr 9 20:20:04 2019 (r346065) @@ -638,98 +638,8 @@ vop_stdfsync(ap) struct thread *a_td; } */ *ap; { - struct vnode *vp; - struct buf *bp, *nbp; - struct bufobj *bo; - struct mount *mp; - int error, maxretry; - error = 0; - maxretry = 10000; /* large, arbitrarily chosen */ - vp = ap->a_vp; - mp = NULL; - if (vp->v_type == VCHR) { - VI_LOCK(vp); - mp = vp->v_rdev->si_mountpt; - VI_UNLOCK(vp); - } - bo = &vp->v_bufobj; - BO_LOCK(bo); -loop1: - /* - * MARK/SCAN initialization to avoid infinite loops. - */ - TAILQ_FOREACH(bp, &bo->bo_dirty.bv_hd, b_bobufs) { - bp->b_vflags &= ~BV_SCANNED; - bp->b_error = 0; - } - - /* - * Flush all dirty buffers associated with a vnode. - */ -loop2: - TAILQ_FOREACH_SAFE(bp, &bo->bo_dirty.bv_hd, b_bobufs, nbp) { - if ((bp->b_vflags & BV_SCANNED) != 0) - continue; - bp->b_vflags |= BV_SCANNED; - if (BUF_LOCK(bp, LK_EXCLUSIVE | LK_NOWAIT, NULL)) { - if (ap->a_waitfor != MNT_WAIT) - continue; - if (BUF_LOCK(bp, - LK_EXCLUSIVE | LK_INTERLOCK | LK_SLEEPFAIL, - BO_LOCKPTR(bo)) != 0) { - BO_LOCK(bo); - goto loop1; - } - BO_LOCK(bo); - } - BO_UNLOCK(bo); - KASSERT(bp->b_bufobj == bo, - ("bp %p wrong b_bufobj %p should be %p", - bp, bp->b_bufobj, bo)); - if ((bp->b_flags & B_DELWRI) == 0) - panic("fsync: not dirty"); - if ((vp->v_object != NULL) && (bp->b_flags & B_CLUSTEROK)) { - vfs_bio_awrite(bp); - } else { - bremfree(bp); - bawrite(bp); - } - if (maxretry < 1000) - pause("dirty", hz < 1000 ? 1 : hz / 1000); - BO_LOCK(bo); - goto loop2; - } - - /* - * If synchronous the caller expects us to completely resolve all - * dirty buffers in the system. Wait for in-progress I/O to - * complete (which could include background bitmap writes), then - * retry if dirty blocks still exist. - */ - if (ap->a_waitfor == MNT_WAIT) { - bufobj_wwait(bo, 0, 0); - if (bo->bo_dirty.bv_cnt > 0) { - /* - * If we are unable to write any of these buffers - * then we fail now rather than trying endlessly - * to write them out. - */ - TAILQ_FOREACH(bp, &bo->bo_dirty.bv_hd, b_bobufs) - if ((error = bp->b_error) != 0) - break; - if ((mp != NULL && mp->mnt_secondary_writes > 0) || - (error == 0 && --maxretry >= 0)) - goto loop1; - if (error == 0) - error = EAGAIN; - } - } - BO_UNLOCK(bo); - if (error != 0) - vn_printf(vp, "fsync: giving up on dirty (error = %d) ", error); - - return (error); + return (vn_fsync_buf(ap->a_vp, ap->a_waitfor)); } static int @@ -742,12 +652,8 @@ vop_stdfdatasync(struct vop_fdatasync_args *ap) int vop_stdfdatasync_buf(struct vop_fdatasync_args *ap) { - struct vop_fsync_args apf; - apf.a_vp = ap->a_vp; - apf.a_waitfor = MNT_WAIT; - apf.a_td = ap->a_td; - return (vop_stdfsync(&apf)); + return (vn_fsync_buf(ap->a_vp, MNT_WAIT)); } /* XXX Needs good comment and more info in the manpage (VOP_GETPAGES(9)). */ Modified: head/sys/kern/vfs_vnops.c ============================================================================== --- head/sys/kern/vfs_vnops.c Tue Apr 9 19:55:02 2019 (r346064) +++ head/sys/kern/vfs_vnops.c Tue Apr 9 20:20:04 2019 (r346065) @@ -2494,3 +2494,98 @@ vn_fsid(struct vnode *vp, struct vattr *va) va->va_fsid <<= sizeof(f->val[1]) * NBBY; va->va_fsid += (uint32_t)f->val[0]; } + +int +vn_fsync_buf(struct vnode *vp, int waitfor) +{ + struct buf *bp, *nbp; + struct bufobj *bo; + struct mount *mp; + int error, maxretry; + + error = 0; + maxretry = 10000; /* large, arbitrarily chosen */ + mp = NULL; + if (vp->v_type == VCHR) { + VI_LOCK(vp); + mp = vp->v_rdev->si_mountpt; + VI_UNLOCK(vp); + } + bo = &vp->v_bufobj; + BO_LOCK(bo); +loop1: + /* + * MARK/SCAN initialization to avoid infinite loops. + */ + TAILQ_FOREACH(bp, &bo->bo_dirty.bv_hd, b_bobufs) { + bp->b_vflags &= ~BV_SCANNED; + bp->b_error = 0; + } + + /* + * Flush all dirty buffers associated with a vnode. + */ +loop2: + TAILQ_FOREACH_SAFE(bp, &bo->bo_dirty.bv_hd, b_bobufs, nbp) { + if ((bp->b_vflags & BV_SCANNED) != 0) + continue; + bp->b_vflags |= BV_SCANNED; + if (BUF_LOCK(bp, LK_EXCLUSIVE | LK_NOWAIT, NULL)) { + if (waitfor != MNT_WAIT) + continue; + if (BUF_LOCK(bp, + LK_EXCLUSIVE | LK_INTERLOCK | LK_SLEEPFAIL, + BO_LOCKPTR(bo)) != 0) { + BO_LOCK(bo); + goto loop1; + } + BO_LOCK(bo); + } + BO_UNLOCK(bo); + KASSERT(bp->b_bufobj == bo, + ("bp %p wrong b_bufobj %p should be %p", + bp, bp->b_bufobj, bo)); + if ((bp->b_flags & B_DELWRI) == 0) + panic("fsync: not dirty"); + if ((vp->v_object != NULL) && (bp->b_flags & B_CLUSTEROK)) { + vfs_bio_awrite(bp); + } else { + bremfree(bp); + bawrite(bp); + } + if (maxretry < 1000) + pause("dirty", hz < 1000 ? 1 : hz / 1000); + BO_LOCK(bo); + goto loop2; + } + + /* + * If synchronous the caller expects us to completely resolve all + * dirty buffers in the system. Wait for in-progress I/O to + * complete (which could include background bitmap writes), then + * retry if dirty blocks still exist. + */ + if (waitfor == MNT_WAIT) { + bufobj_wwait(bo, 0, 0); + if (bo->bo_dirty.bv_cnt > 0) { + /* + * If we are unable to write any of these buffers + * then we fail now rather than trying endlessly + * to write them out. + */ + TAILQ_FOREACH(bp, &bo->bo_dirty.bv_hd, b_bobufs) + if ((error = bp->b_error) != 0) + break; + if ((mp != NULL && mp->mnt_secondary_writes > 0) || + (error == 0 && --maxretry >= 0)) + goto loop1; + if (error == 0) + error = EAGAIN; + } + } + BO_UNLOCK(bo); + if (error != 0) + vn_printf(vp, "fsync: giving up on dirty (error = %d) ", error); + + return (error); +} Modified: head/sys/sys/vnode.h ============================================================================== --- head/sys/sys/vnode.h Tue Apr 9 19:55:02 2019 (r346064) +++ head/sys/sys/vnode.h Tue Apr 9 20:20:04 2019 (r346065) @@ -670,6 +670,7 @@ int vn_close(struct vnode *vp, int flags, struct ucred *file_cred, struct thread *td); void vn_finished_write(struct mount *mp); void vn_finished_secondary_write(struct mount *mp); +int vn_fsync_buf(struct vnode *vp, int waitfor); int vn_isdisk(struct vnode *vp, int *errp); int _vn_lock(struct vnode *vp, int flags, char *file, int line); #define vn_lock(vp, flags) _vn_lock(vp, flags, __FILE__, __LINE__) From owner-svn-src-all@freebsd.org Tue Apr 9 20:40:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 92935156CE59; Tue, 9 Apr 2019 20:40:27 +0000 (UTC) (envelope-from chris@rees.space) Received: from mail70c50.megamailservers.eu (mail169c50.megamailservers.eu [91.136.10.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3779C80D75; Tue, 9 Apr 2019 20:40:25 +0000 (UTC) (envelope-from chris@rees.space) X-Authenticated-User: bayofrum@uwclub.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu; s=maildub; t=1554840594; bh=AgIPL71YtdLawN/iK/yjVVStgTCf+k1m4Dtp8wyS6o0=; h=Subject:To:CC:References:From:Date:In-Reply-To:From; b=KZIqa/tf4E0BS87bGY9ab6Hzmfyz2kg3tJvq0rmvfj+Vj4Dz4+ZEl10bh3Jmqx3TW etT2bdsQTLBZMT0s8AO+5pT486xWSk0ozFnxDDKlqvo2ZJ4eTp4zU6iLUWCYwv8LzU 7KEKzGdKeJ+CzD8Un8qbzYOtxNpRA7t9COCAeObk= Feedback-ID: chris@rees.spac Received: from pegasus.bayofrum.net (81-178-238-70.dsl.pipex.com [81.178.238.70]) (authenticated bits=0) by mail70c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id x39K9qHP005953; Tue, 9 Apr 2019 20:09:54 +0000 Received: from [192.168.1.121] (POSEIDON.bayofrum.net [192.168.1.121]) by pegasus.bayofrum.net (Postfix) with ESMTPSA id 155651B7A; Tue, 9 Apr 2019 21:09:48 +0100 (BST) Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 To: Chris Rees , rgrimes@freebsd.org, "Rodney W. Grimes" , Andriy Gapon CC: "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904091955.x39Jt7PU061907@gndrsh.dnsmgr.net> From: Chris Rees Message-ID: <56770290-a7f2-07dc-3f5a-f9d5721db724@rees.space> Date: Tue, 9 Apr 2019 21:08:53 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-GB X-bayofrum-MailScanner-Information: Please contact the ISP for more information X-bayofrum-MailScanner-ID: 155651B7A.A4F62 X-bayofrum-MailScanner: Found to be clean X-bayofrum-MailScanner-From: chris@rees.space X-Spam-Status: No X-CTCH-RefID: str=0001.0A0B020E.5CACFC12.005F, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-CSC: 0 X-CHA: v=2.3 cv=ILcs9DnG c=1 sm=1 tr=0 a=i0HMBnJGy7D3/NFKO8d8XA==:117 a=i0HMBnJGy7D3/NFKO8d8XA==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=IkcTkHD0fZMA:10 a=MKtGQD3n3ToA:10 a=1oJP67jkp3AA:10 a=oexKYjalfGEA:10 a=Y8a21bOVD5kA:10 a=ZZnuYtJkoWoA:10 a=iKhvJSA4AAAA:8 a=GN3eLU9uyxQDXXIByxQA:9 a=QEXdDO2ut3YA:10 a=odh9cflL3HIXMm4fY7Wr:22 X-Rspamd-Queue-Id: 3779C80D75 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 20:40:27 -0000 On 09/04/2019 20:59, Chris Rees wrote: > On 9 April 2019 20:55:07 BST, "Rodney W. Grimes" wrote: >>> On 09/04/2019 21:33, Rodney W. Grimes wrote: >>>> I think the trigger issue is: >>>> grep zfs /etc/rc.d/zvol >>>> rcvar="zfs_enable" >>>> required_modules="zfs" >>>> >>>> that module requires may be going south with the >>>> new code when the module is built into the kernel. >>> Maybe it's because the module's name is zfsctrl (for whatever reason) >> while the >>> module file is named zfs.ko. >> I suspect that could also lead to issues with the new code. >> It seems to be failing to detect that zfs is infact functional in the >> kernel, >> and blindly, or not so blindly, trying to load zfs,ko, which when you >> build >> it into the kernel you usually do so without any modules built, so >> there is >> no /boot/kernel/zfs.ko, and even if you did build it any attempt to >> load >> it would return an error. > Loading with it built in isn't a problem, as I showed earlier. > > Loading when it doesn't exist *is*. > > I'm torn. Either we could revert this, or add a check to the required_modules function instead, which I think is the better solution. Hang on, [crees@pegasus]~% sudo kldload -n zfsctrl && echo yes yes [crees@pegasus]~% find /boot -name zfsctrl\* [crees@pegasus]~% I think that, rather than speculating, we should wait for Oliver to confirm that this is actually the problem, because I still don't think it is. Chris -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. From owner-svn-src-all@freebsd.org Tue Apr 9 20:45:51 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 39C78156D4F5 for ; Tue, 9 Apr 2019 20:45:51 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk1-x729.google.com (mail-qk1-x729.google.com [IPv6:2607:f8b0:4864:20::729]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A5E59813F9 for ; Tue, 9 Apr 2019 20:45:50 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qk1-x729.google.com with SMTP id o129so11160606qke.8 for ; Tue, 09 Apr 2019 13:45:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=yc1SyWf147xsEfjWclAYUJ+fnNB0mlEmVrax27QVBcE=; b=XI2Ec6Un1hiFAhd01oE6hss8MTycXeunh63MKzWk4RqzupdUyjQuEFS9VoXyECUrfi UraMuWxuufxajpug4J3AzU2vxRnIo2YV49/hygvh8tiCGb4dYuYZEoDmlXce90MW2qRu ziIIpc4/RCoTv2sGVHSgsemBMaTQ/Y54jSpxmMhiIiacn3MwbyIK2JTD5Amvi1sLrd6E VJ9bd+zEdraM1VRHFDNYMyFwsIE6PFGISwrzX0bo8elJgAwSFtGazGJTDQUHwcBoAehB 8KFr5SRR+1F3w+QmOUExIEFR5oGkuMuxtpXuJ8yjH18tHuknptjVDzHJM0ZRmZ1Okt1l fNag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=yc1SyWf147xsEfjWclAYUJ+fnNB0mlEmVrax27QVBcE=; b=Lj+fzcbqvTcVXkus1LkJBAjvXxd0jOI94n/g+fReZK3Ujjbraa18OXg7OSEfjduoxm 4zfG5NtEZ4Zxt+T7v2UgP7dYqffNdEWOVYKmsVl33IWA1NY6zjQhHsI4S16K80LSeO7e pzz1EgkozkPRtCTM/9tXI+L5Aayt8VTUFNbjBOBwMmVWGgczYbRiwiJGn0I5dVSQDDCB zYcpN0uaZlBc4rFXp6KAtCMX0F1E6w/npY31fLE04aMnuWsjR3b64cbOC6E/I5i3bxYG O5TZWFG9kO9zGhu0zJ/8CfmKe5QAk6Q8AwCdzXrfLROHg/4HzQRpop+Mf6U2+nSdx/NP 3q8w== X-Gm-Message-State: APjAAAXd+9XHBuCSvR70xiROBuvm/An8zplWoT1B9BJJBmN0xCAiEFAZ 6XYjGqt/VaBge6lKObOCYN5/XgRevv2HWFSn8vEzbg== X-Google-Smtp-Source: APXvYqyDoGhAxnZVTmczI5/NUnO2G6NucL4TmVA+OEJAjoKjVBkdLdpZtO5YwU4jBtoNHAj9azOlNRsVmgoh9W3l1+E= X-Received: by 2002:a37:9e0d:: with SMTP id h13mr30375964qke.135.1554842749960; Tue, 09 Apr 2019 13:45:49 -0700 (PDT) MIME-Version: 1.0 References: <201904081825.x38IPEpV054311@repo.freebsd.org> In-Reply-To: From: Warner Losh Date: Tue, 9 Apr 2019 14:45:38 -0600 Message-ID: Subject: Re: svn commit: r346039 - head/sys/conf To: Ian Lepore Cc: Rebecca Cran , Warner Losh , src-committers , svn-src-all , svn-src-head X-Rspamd-Queue-Id: A5E59813F9 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 20:45:51 -0000 On Tue, Apr 9, 2019 at 11:40 AM Ian Lepore wrote: > On Tue, 2019-04-09 at 11:19 -0600, Rebecca Cran wrote: > > On 2019-04-08 12:25, Warner Losh wrote: > > > Author: imp > > > Date: Mon Apr 8 18:25:14 2019 > > > New Revision: 346039 > > > URL: https://svnweb.freebsd.org/changeset/base/346039 > > > > > > Log: > > > Style only change: Prefer $() to `` > > > > > > $() is more modern and also nests. Convert the mix of styles to > > > using > > > only the former (although the latter was more common). It's the > > > more > > > dominant style in other shell scripts these days as well. > > > > > > Differential Revision: https://reviews.freebsd.org/D19840 > > > > > > Modified: > > > head/sys/conf/newvers.sh > > > > > > Modified: head/sys/conf/newvers.sh > > > > > > I thought I saw an email a few weeks ago that suggested that the list > > of > > people who reviewed the patch should be copied into a "Reviewed by:" > > line, to avoid only having that information in Phabricator. > > > > Am I remembering correctly, or is just mentioning the Phab review > > considered sufficient? > > > > > > As far as I'm concerned, if I've gone to all the trouble to have > something phab-reviewed, I'm not going to waste a bunch of time hand- > copying metadata from the review to the commit message; citing the > review is sufficient. > There's that too.... Project norms here have a gap between what people expect to happen, and what actually happens. This is orthogonal to the whole uselessly duplicated metadata issue causing friction. Warner From owner-svn-src-all@freebsd.org Tue Apr 9 21:11:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3FAF4156DCEB; Tue, 9 Apr 2019 21:11:49 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AC306822CA; Tue, 9 Apr 2019 21:11:48 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x39LBkEB062292; Tue, 9 Apr 2019 14:11:46 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x39LBkH4062291; Tue, 9 Apr 2019 14:11:46 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904092111.x39LBkH4062291@gndrsh.dnsmgr.net> Subject: Re: svn commit: r346052 - head/sys/dev/usb/net In-Reply-To: <8c5292c0-5464-8995-4518-181886201692@FreeBSD.org> To: John Baldwin Date: Tue, 9 Apr 2019 14:11:46 -0700 (PDT) CC: rgrimes@freebsd.org, Ian Lepore , Ganbold Tsagaankhuu , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: AC306822CA X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 21:11:49 -0000 > On 4/9/19 12:48 PM, Rodney W. Grimes wrote: > >> On 4/9/19 9:59 AM, Ian Lepore wrote: > >>> On Tue, 2019-04-09 at 09:33 -0700, John Baldwin wrote: > >>>> On 4/9/19 9:17 AM, Ian Lepore wrote: > >>>>> On Tue, 2019-04-09 at 09:11 -0700, John Baldwin wrote: > >>>>>> On 4/9/19 6:54 AM, Ganbold Tsagaankhuu wrote: > >>>>>>> Author: ganbold > >>>>>>> Date: Tue Apr 9 13:54:08 2019 > >>>>>>> New Revision: 346052 > >>>>>>> URL: https://svnweb.freebsd.org/changeset/base/346052 > >>>>>>> > >>>>>>> Log: > >>>>>>> In some cases like NanoPI R1, its second USB ethernet > >>>>>>> RTL8152 (chip version URE_CHIP_VER_4C10) doesn't > >>>>>>> have hardwired MAC address, in other words, it is all zeros. > >>>>>>> This commit fixes it by setting random MAC address > >>>>>>> when MAC address is all zeros. > >>>>>>> > >>>>>>> Reviewed by: kevlo > >>>>>>> Differential Revision: > >>>>>>> https://reviews.freebsd.org/D19856 > >>>>>> > >>>>>> It would be best to not use a purely random mac address and to > >>>>>> use > >>>>>> the > >>>>>> function kevans@ added recently. That function generates a MAC > >>>>>> address > >>>>>> from the FreeBSD OUI using a cryptographic hash so you get a > >>>>>> stable address across boots on a given host. > >>>>>> > >>>>> > >>>>> How could that possibly work? If it's not random, you can't have > >>>>> two > >>>>> such devices on the same network. If it is random, it's not stable > >>>>> from one boot to the next. > >>>> > >>>> It uses the UUID and interface name as input into the hash. > >>> > >>>> The UUID is per-host. > >>> > >>> Oh, so it only works on x86 (or I guess any system that has something > >>> like a bios that can provide you with a uuid that doesn't change from > >>> one boot to the next). > >> > >> The function is in one centralized place where you are free to add other > >> data as input into the hash. We do always generate a uuid that we save > >> on boot if we aren't seeded with one by firmware, though that is probably > >> too late for this driver (so +1 may in fact be a better route). It should > >> be fine for psuedo interfaces created post-boot though even on non-x86 due > >> to /etc/rc.d/hostid. Pure random MAC's are not really great either. > > > > Cant the loader load /etc/rc.d/hostid and put it in something that > > the kernel could get at, or a module written that handles this? > > It's a different file, and yes in theory the loader could look at the file > and set UUID and hostid env vars. However, that's a no-op for most use > cases. If other platforms have some kind of firmware-provided thing that > isn't a UUID, it would be good to teach the centralized function about > those as an input to the hash, but at least that can be done in place > rather than having open-coded MAC generators in various drivers. Simple enough, can one not just store /etc/rc.d/hostid into a env variable in /boot/loader.conf too on those platforms that do not have a uuid mechanism? -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 21:13:52 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 68664156DE6D; Tue, 9 Apr 2019 21:13:52 +0000 (UTC) (envelope-from crees@bayofrum.net) Received: from mail37c50.megamailservers.eu (mail161c50.megamailservers.eu [91.136.10.171]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2631582504; Tue, 9 Apr 2019 21:13:49 +0000 (UTC) (envelope-from crees@bayofrum.net) X-Authenticated-User: bayofrum@uwclub.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu; s=maildub; t=1554844422; bh=xB+kUJohUV/vOe8kjn9BfM0LRU8JJS8f9huPhn84V3M=; h=Date:In-Reply-To:References:Subject:To:CC:From:From; b=PEK0yL5mMV+TyYQ5aC+DT5bILNog8uC0XLnz2j3JC/EKNG9mEigyiHMm4Ki4Hum65 9a5TKKbB88yoaz4b5wp1aHGEdebgF3ctCofWdFfZYnwy1uCJVx1RsLek5UAzixc4Op JpymyvSJqGfAnuo6bK3e2YyvfOPBx1jtWEaRijOA= Feedback-ID: crees@bayofrum. Received: from pegasus.bayofrum.net (81-178-238-70.dsl.pipex.com [81.178.238.70]) (authenticated bits=0) by mail37c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id x39LDeAM011779; Tue, 9 Apr 2019 21:13:41 +0000 Received: from R.bayofrum.net (R.bayofrum.net [192.168.1.129]) by pegasus.bayofrum.net (Postfix) with ESMTPSA id 843C31E46; Tue, 9 Apr 2019 22:13:31 +0100 (BST) Date: Tue, 09 Apr 2019 22:13:29 +0100 User-Agent: K-9 Mail for Android In-Reply-To: <201904092108.x39L8ZCG062247@gndrsh.dnsmgr.net> References: <201904092108.x39L8ZCG062247@gndrsh.dnsmgr.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 To: rgrimes@freebsd.org, "Rodney W. Grimes" , Chris Rees CC: Andriy Gapon , "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Chris Rees Message-ID: <2B336327-528C-4E16-AA5D-B3497B1941D0@bayofrum.net> X-bayofrum-MailScanner-Information: Please contact the ISP for more information X-bayofrum-MailScanner-ID: 843C31E46.A4CB0 X-bayofrum-MailScanner: Found to be clean X-bayofrum-MailScanner-From: crees@bayofrum.net X-Spam-Status: No X-CTCH-RefID: str=0001.0A0B0210.5CAD0B06.002D, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-CSC: 0 X-CHA: v=2.3 cv=P4AUeBIu c=1 sm=1 tr=0 a=i0HMBnJGy7D3/NFKO8d8XA==:117 a=i0HMBnJGy7D3/NFKO8d8XA==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=IkcTkHD0fZMA:10 a=oexKYjalfGEA:10 a=iKhvJSA4AAAA:8 a=J93aaXUkh_By0JStf2IA:9 a=QEXdDO2ut3YA:10 a=odh9cflL3HIXMm4fY7Wr:22 X-Rspamd-Queue-Id: 2631582504 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; dkim=fail (rsa verify failed) header.d=megamailservers.eu header.s=maildub header.b=PEK0yL5m X-Spamd-Result: default: False [-2.44 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[70.238.178.81.zen.spamhaus.org : 127.0.0.11]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_DKIM_REJECT(1.00)[megamailservers.eu:s=maildub]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[bayofrum.net]; NEURAL_HAM_MEDIUM(-0.95)[-0.951,0]; RCVD_COUNT_THREE(0.00)[3]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[megamailservers.eu:-]; MX_GOOD(-0.01)[www.bayofrum.net]; RCPT_COUNT_SEVEN(0.00)[9]; NEURAL_HAM_SHORT(-0.82)[-0.822,0]; R_SPF_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:9115, ipnet:91.136.0.0/17, country:GB]; MID_RHS_MATCH_FROM(0.00)[]; IP_SCORE(-0.46)[ipnet: 91.136.0.0/17(-1.23), asn: 9115(-0.98), country: GB(-0.09)]; RCVD_IN_DNSWL_LOW(-0.10)[171.10.136.91.list.dnswl.org : 127.0.5.1] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 21:13:52 -0000 On 9 April 2019 22:08:35 BST, "Rodney W. Grimes" wrote: >> On 09/04/2019 20:59, Chris Rees wrote: >> > On 9 April 2019 20:55:07 BST, "Rodney W. Grimes" > wrote: >> >>> On 09/04/2019 21:33, Rodney W. Grimes wrote: >> >>>> I think the trigger issue is: >> >>>> grep zfs /etc/rc.d/zvol >> >>>> rcvar=3D"zfs_enable" >> >>>> required_modules=3D"zfs" >> >>>> >> >>>> that module requires may be going south with the >> >>>> new code when the module is built into the kernel. >> >>> Maybe it's because the module's name is zfsctrl (for whatever >reason) >> >> while the >> >>> module file is named zfs.ko. >> >> I suspect that could also lead to issues with the new code. >> >> It seems to be failing to detect that zfs is infact functional in >the >> >> kernel, >> >> and blindly, or not so blindly, trying to load zfs,ko, which when >you >> >> build >> >> it into the kernel you usually do so without any modules built, so >> >> there is >> >> no /boot/kernel/zfs.ko, and even if you did build it any attempt >to >> >> load >> >> it would return an error. >> > Loading with it built in isn't a problem, as I showed earlier. >> > >> > Loading when it doesn't exist *is*. >> > >> > I'm torn. Either we could revert this, or add a check to the >required_modules function instead, which I think is the better >solution. >>=20 >> Hang on, >>=20 >> [crees@pegasus]~% sudo kldload -n zfsctrl && echo yes >> yes > >I think your testing the return value of sudo here? Sudo returns the child's return value. Chris >> [crees@pegasus]~% find /boot -name zfsctrl\* >> [crees@pegasus]~% >>=20 >> I think that, rather than speculating, we should wait for Oliver to=20 >> confirm that this is actually the problem, because I still don't >think=20 >> it is. >>=20 >> Chris >>=20 >>=20 >> --=20 >> This message has been scanned for viruses and >> dangerous content by MailScanner, and is >> believed to be clean. >>=20 >>=20 --=20 Sent from my Android device with K-9 Mail. Please excuse my brevity. --=20 This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. From owner-svn-src-all@freebsd.org Tue Apr 9 21:18:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E4F8B156E058; Tue, 9 Apr 2019 21:18:03 +0000 (UTC) (envelope-from jhb@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 89FE68273E; Tue, 9 Apr 2019 21:18:03 +0000 (UTC) (envelope-from jhb@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 6489F18C05; Tue, 9 Apr 2019 21:18:03 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39LI32c011410; Tue, 9 Apr 2019 21:18:03 GMT (envelope-from jhb@FreeBSD.org) Received: (from jhb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39LI3Xm011409; Tue, 9 Apr 2019 21:18:03 GMT (envelope-from jhb@FreeBSD.org) Message-Id: <201904092118.x39LI3Xm011409@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org using -f From: John Baldwin Date: Tue, 9 Apr 2019 21:18:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346066 - head/sys/dev/acpica X-SVN-Group: head X-SVN-Commit-Author: jhb X-SVN-Commit-Paths: head/sys/dev/acpica X-SVN-Commit-Revision: 346066 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 89FE68273E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 21:18:04 -0000 Author: jhb Date: Tue Apr 9 21:18:02 2019 New Revision: 346066 URL: https://svnweb.freebsd.org/changeset/base/346066 Log: Refine r330113 to honor the ProducerConsumer flag most of the time. While it is true that the ACPI spec says that the flag is only valid on Extended Address Space Descriptors, examples of other descriptors in the spec use the ProducerConsumer flag explicitly, and real hardware uses it as well. In fact, even in the ASL of the Thunder X2 for which r330113 was a workaround, some devices use this flag on non-Extended Address Space Descriptors correctly. Instead, only ignore the flag for resources associated with the UART devices on the Thunder X2 using the "ARMH0011" HID to identify these devices. This should fix regressions from ignoring this flag in other contexts such as Hyper-V. PR: 235876 Reported by: Wei Hu Tested by: emaste (Thunder X2) MFC after: 2 weeks Modified: head/sys/dev/acpica/acpi_resource.c Modified: head/sys/dev/acpica/acpi_resource.c ============================================================================== --- head/sys/dev/acpica/acpi_resource.c Tue Apr 9 20:20:04 2019 (r346065) +++ head/sys/dev/acpica/acpi_resource.c Tue Apr 9 21:18:02 2019 (r346066) @@ -202,6 +202,7 @@ struct acpi_resource_context { struct acpi_parse_resource_set *set; device_t dev; void *context; + bool ignore_producer_flag; }; #ifdef ACPI_DEBUG_OUTPUT @@ -385,7 +386,7 @@ acpi_parse_resource(ACPI_RESOURCE *res, void *context) } if (length <= 0) break; - if (res->Type == ACPI_RESOURCE_TYPE_EXTENDED_ADDRESS64 && + if (!arc->ignore_producer_flag && res->Data.Address.ProducerConsumer != ACPI_CONSUMER) { ACPI_DEBUG_PRINT((ACPI_DB_RESOURCES, "ignored %s %s producer\n", name, @@ -474,6 +475,12 @@ acpi_parse_resources(device_t dev, ACPI_HANDLE handle, set->set_init(dev, arg, &arc.context); arc.set = set; arc.dev = dev; + arc.ignore_producer_flag = false; + + /* UARTs on ThunderX2 set ResourceProducer on memory resources. */ + if (acpi_MatchHid(handle, "ARMH0011") != ACPI_MATCHHID_NOMATCH) + arc.ignore_producer_flag = true; + status = AcpiWalkResources(handle, "_CRS", acpi_parse_resource, &arc); if (ACPI_FAILURE(status) && status != AE_NOT_FOUND) { printf("can't fetch resources for %s - %s\n", From owner-svn-src-all@freebsd.org Tue Apr 9 21:08:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6CE6A156DA3A; Tue, 9 Apr 2019 21:08:48 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CE2AF81DA9; Tue, 9 Apr 2019 21:08:47 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x39L8adJ062248; Tue, 9 Apr 2019 14:08:36 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x39L8ZCG062247; Tue, 9 Apr 2019 14:08:35 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904092108.x39L8ZCG062247@gndrsh.dnsmgr.net> Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 In-Reply-To: <56770290-a7f2-07dc-3f5a-f9d5721db724@rees.space> To: Chris Rees Date: Tue, 9 Apr 2019 14:08:35 -0700 (PDT) CC: Chris Rees , rgrimes@freebsd.org, "Rodney W. Grimes" , Andriy Gapon , "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: CE2AF81DA9 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.99)[-0.987,0]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-Mailman-Approved-At: Tue, 09 Apr 2019 21:19:01 +0000 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 21:08:48 -0000 > On 09/04/2019 20:59, Chris Rees wrote: > > On 9 April 2019 20:55:07 BST, "Rodney W. Grimes" wrote: > >>> On 09/04/2019 21:33, Rodney W. Grimes wrote: > >>>> I think the trigger issue is: > >>>> grep zfs /etc/rc.d/zvol > >>>> rcvar="zfs_enable" > >>>> required_modules="zfs" > >>>> > >>>> that module requires may be going south with the > >>>> new code when the module is built into the kernel. > >>> Maybe it's because the module's name is zfsctrl (for whatever reason) > >> while the > >>> module file is named zfs.ko. > >> I suspect that could also lead to issues with the new code. > >> It seems to be failing to detect that zfs is infact functional in the > >> kernel, > >> and blindly, or not so blindly, trying to load zfs,ko, which when you > >> build > >> it into the kernel you usually do so without any modules built, so > >> there is > >> no /boot/kernel/zfs.ko, and even if you did build it any attempt to > >> load > >> it would return an error. > > Loading with it built in isn't a problem, as I showed earlier. > > > > Loading when it doesn't exist *is*. > > > > I'm torn. Either we could revert this, or add a check to the required_modules function instead, which I think is the better solution. > > Hang on, > > [crees@pegasus]~% sudo kldload -n zfsctrl && echo yes > yes I think your testing the return value of sudo here? > [crees@pegasus]~% find /boot -name zfsctrl\* > [crees@pegasus]~% > > I think that, rather than speculating, we should wait for Oliver to > confirm that this is actually the problem, because I still don't think > it is. > > Chris > > > -- > This message has been scanned for viruses and > dangerous content by MailScanner, and is > believed to be clean. > > -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 21:19:54 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2460A156E1F1; Tue, 9 Apr 2019 21:19:54 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8699682960; Tue, 9 Apr 2019 21:19:53 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x39LJjHu062338; Tue, 9 Apr 2019 14:19:45 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x39LJjFv062337; Tue, 9 Apr 2019 14:19:45 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904092119.x39LJjFv062337@gndrsh.dnsmgr.net> Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 In-Reply-To: <2B336327-528C-4E16-AA5D-B3497B1941D0@bayofrum.net> To: Chris Rees Date: Tue, 9 Apr 2019 14:19:45 -0700 (PDT) CC: rgrimes@freebsd.org, "Rodney W. Grimes" , Chris Rees , Andriy Gapon , "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 8699682960 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-Mailman-Approved-At: Tue, 09 Apr 2019 21:40:46 +0000 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 21:19:54 -0000 > On 9 April 2019 22:08:35 BST, "Rodney W. Grimes" wrote: > >> On 09/04/2019 20:59, Chris Rees wrote: > >> > On 9 April 2019 20:55:07 BST, "Rodney W. Grimes" > > wrote: > >> >>> On 09/04/2019 21:33, Rodney W. Grimes wrote: > >> >>>> I think the trigger issue is: > >> >>>> grep zfs /etc/rc.d/zvol > >> >>>> rcvar="zfs_enable" > >> >>>> required_modules="zfs" > >> >>>> > >> >>>> that module requires may be going south with the > >> >>>> new code when the module is built into the kernel. > >> >>> Maybe it's because the module's name is zfsctrl (for whatever > >reason) > >> >> while the > >> >>> module file is named zfs.ko. > >> >> I suspect that could also lead to issues with the new code. > >> >> It seems to be failing to detect that zfs is infact functional in > >the > >> >> kernel, > >> >> and blindly, or not so blindly, trying to load zfs,ko, which when > >you > >> >> build > >> >> it into the kernel you usually do so without any modules built, so > >> >> there is > >> >> no /boot/kernel/zfs.ko, and even if you did build it any attempt > >to > >> >> load > >> >> it would return an error. > >> > Loading with it built in isn't a problem, as I showed earlier. > >> > > >> > Loading when it doesn't exist *is*. > >> > > >> > I'm torn. Either we could revert this, or add a check to the > >required_modules function instead, which I think is the better > >solution. > >> > >> Hang on, > >> > >> [crees@pegasus]~% sudo kldload -n zfsctrl && echo yes > >> yes > > > >I think your testing the return value of sudo here? > > Sudo returns the child's return value. Do you have a static linked zfs in your kernel without a zfs.ko in /boot? kldstat | grep zfs > > Chris > > >> [crees@pegasus]~% find /boot -name zfsctrl\* find /boot -name zfs the module file is called zfs.ko > >> [crees@pegasus]~% > >> > >> I think that, rather than speculating, we should wait for Oliver to > >> confirm that this is actually the problem, because I still don't > >think > >> it is. > >> > >> Chris -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Apr 9 21:40:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B72D6156EDDA; Tue, 9 Apr 2019 21:40:21 +0000 (UTC) (envelope-from crees@bayofrum.net) Received: from mail50c50.megamailservers.eu (mail166c50.megamailservers.eu [91.136.10.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 73037837D4; Tue, 9 Apr 2019 21:40:20 +0000 (UTC) (envelope-from crees@bayofrum.net) X-Authenticated-User: bayofrum@uwclub.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu; s=maildub; t=1554845080; bh=ngxfX11Amnxd3zzYHDCk7WHM3PMv/MQ6wjQfrZPHg3Y=; h=Date:In-Reply-To:References:Subject:To:CC:From:From; b=QY9wt/fkgESjjw6r9jYEFS50Qo25uFs0nd8tAyMuzfRXaYUGyNb5ybJKSTgXRScQm 4jDfxmhvfs8bSKNYAgU0N0yuREE0R3hYCEahv0WP71iC7zBkyexnmoIrlkajH/KOEX I26gUeC9oyw7veE/eBB7cxZkRBrxq87iFDgZxtQ4= Feedback-ID: crees@bayofrum. Received: from pegasus.bayofrum.net (81-178-238-70.dsl.pipex.com [81.178.238.70]) (authenticated bits=0) by mail50c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id x39LOcbC012169; Tue, 9 Apr 2019 21:24:39 +0000 Received: from R.bayofrum.net (R.bayofrum.net [192.168.1.129]) by pegasus.bayofrum.net (Postfix) with ESMTPSA id 168171EE0; Tue, 9 Apr 2019 22:24:20 +0100 (BST) Date: Tue, 09 Apr 2019 22:24:16 +0100 User-Agent: K-9 Mail for Android In-Reply-To: <2B336327-528C-4E16-AA5D-B3497B1941D0@bayofrum.net> References: <201904092108.x39L8ZCG062247@gndrsh.dnsmgr.net> <2B336327-528C-4E16-AA5D-B3497B1941D0@bayofrum.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 To: rgrimes@freebsd.org, "Rodney W. Grimes" , Chris Rees , jilles@freebsd.org CC: Andriy Gapon , "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Chris Rees Message-ID: <95242E98-E578-476E-AFA6-099F00AF50BC@bayofrum.net> X-bayofrum-MailScanner-Information: Please contact the ISP for more information X-bayofrum-MailScanner-ID: 168171EE0.A57F8 X-bayofrum-MailScanner: Found to be clean X-bayofrum-MailScanner-From: crees@bayofrum.net X-Spam-Status: No X-CTCH-RefID: str=0001.0A0B0203.5CAD0D98.0051, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-CSC: 0 X-CHA: v=2.3 cv=ILEs9DnG c=1 sm=1 tr=0 a=i0HMBnJGy7D3/NFKO8d8XA==:117 a=i0HMBnJGy7D3/NFKO8d8XA==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=IkcTkHD0fZMA:10 a=oexKYjalfGEA:10 a=ZB5LerlCAAAA:8 a=iKhvJSA4AAAA:8 a=6I5d2MoRAAAA:8 a=8Pez3pwjZUDalHbnbrYA:9 a=QEXdDO2ut3YA:10 a=phWSN7ZC0a8A:10 a=YKPTzOroS2oaEK2QgPcx:22 a=odh9cflL3HIXMm4fY7Wr:22 a=IjZwj45LgO3ly-622nXo:22 X-Rspamd-Queue-Id: 73037837D4 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.98)[-0.981,0] X-Mailman-Approved-At: Tue, 09 Apr 2019 22:10:17 +0000 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 21:40:22 -0000 Hi again, On 9 April 2019 22:13:29 BST, Chris Rees wrote: > > >On 9 April 2019 22:08:35 BST, "Rodney W. Grimes" > wrote: >>> On 09/04/2019 20:59, Chris Rees wrote: >>> > On 9 April 2019 20:55:07 BST, "Rodney W. Grimes" >> wrote: >>> >>> On 09/04/2019 21:33, Rodney W. Grimes wrote: >>> >>>> I think the trigger issue is: >>> >>>> grep zfs /etc/rc.d/zvol >>> >>>> rcvar=3D"zfs_enable" >>> >>>> required_modules=3D"zfs" >>> >>>> >>> >>>> that module requires may be going south with the >>> >>>> new code when the module is built into the kernel. >>> >>> Maybe it's because the module's name is zfsctrl (for whatever >>reason) >>> >> while the >>> >>> module file is named zfs.ko. >>> >> I suspect that could also lead to issues with the new code. >>> >> It seems to be failing to detect that zfs is infact functional in >>the >>> >> kernel, >>> >> and blindly, or not so blindly, trying to load zfs,ko, which when >>you >>> >> build >>> >> it into the kernel you usually do so without any modules built, >so >>> >> there is >>> >> no /boot/kernel/zfs.ko, and even if you did build it any attempt >>to >>> >> load >>> >> it would return an error. >>> > Loading with it built in isn't a problem, as I showed earlier. >>> > >>> > Loading when it doesn't exist *is*. >>> > >>> > I'm torn. Either we could revert this, or add a check to the >>required_modules function instead, which I think is the better >>solution. >>>=20 >>> Hang on, >>>=20 >>> [crees@pegasus]~% sudo kldload -n zfsctrl && echo yes >>> yes >> >>I think your testing the return value of sudo here? > >Sudo returns the child's return value. > Turns out Oliver had also reported this to current@ with a log https://lists.freebsd.org/pipermail/freebsd-current/2019-April/073148.html Jilles@, mind if I revert this while I get some testing on this scenario do= ne? It seems to me that zfs may not be included in the kernel, just zfsctrl, or= something like that. Chris --=20 Sent from my Android device with K-9 Mail. Please excuse my brevity. --=20 This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. From owner-svn-src-all@freebsd.org Tue Apr 9 22:15:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 41631157020E; Tue, 9 Apr 2019 22:15:40 +0000 (UTC) (envelope-from glebius@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 D4A3384E0E; Tue, 9 Apr 2019 22:15:39 +0000 (UTC) (envelope-from glebius@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 B0B441964A; Tue, 9 Apr 2019 22:15:39 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39MFdGE042752; Tue, 9 Apr 2019 22:15:39 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39MFdDx042751; Tue, 9 Apr 2019 22:15:39 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201904092215.x39MFdDx042751@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Tue, 9 Apr 2019 22:15:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346069 - head/sys/sys X-SVN-Group: head X-SVN-Commit-Author: glebius X-SVN-Commit-Paths: head/sys/sys X-SVN-Commit-Revision: 346069 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D4A3384E0E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 22:15:40 -0000 Author: glebius Date: Tue Apr 9 22:15:39 2019 New Revision: 346069 URL: https://svnweb.freebsd.org/changeset/base/346069 Log: Obvious comment correction. Modified: head/sys/sys/sockbuf.h Modified: head/sys/sys/sockbuf.h ============================================================================== --- head/sys/sys/sockbuf.h Tue Apr 9 21:38:20 2019 (r346068) +++ head/sys/sys/sockbuf.h Tue Apr 9 22:15:39 2019 (r346069) @@ -98,7 +98,7 @@ struct sockbuf { u_int sb_ctl; /* (a) non-data chars in buffer */ int sb_lowat; /* (a) low water mark */ sbintime_t sb_timeo; /* (a) timeout for read/write */ - short sb_flags; /* (a) flags, see below */ + short sb_flags; /* (a) flags, see above */ int (*sb_upcall)(struct socket *, void *, int); /* (a) */ void *sb_upcallarg; /* (a) */ TAILQ_HEAD(, kaiocb) sb_aiojobq; /* (a) pending AIO ops */ From owner-svn-src-all@freebsd.org Tue Apr 9 22:20:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5E98D157039C; Tue, 9 Apr 2019 22:20:12 +0000 (UTC) (envelope-from sjg@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 F2E4384FA8; Tue, 9 Apr 2019 22:20:11 +0000 (UTC) (envelope-from sjg@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 CC49B19654; Tue, 9 Apr 2019 22:20:11 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x39MKBL9043000; Tue, 9 Apr 2019 22:20:11 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x39MKBKe042999; Tue, 9 Apr 2019 22:20:11 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201904092220.x39MKBKe042999@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Tue, 9 Apr 2019 22:20:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346070 - head/lib/libsecureboot X-SVN-Group: head X-SVN-Commit-Author: sjg X-SVN-Commit-Paths: head/lib/libsecureboot X-SVN-Commit-Revision: 346070 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: F2E4384FA8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 22:20:12 -0000 Author: sjg Date: Tue Apr 9 22:20:11 2019 New Revision: 346070 URL: https://svnweb.freebsd.org/changeset/base/346070 Log: Always report file with incorrect hash. Modified: head/lib/libsecureboot/verify_file.c Modified: head/lib/libsecureboot/verify_file.c ============================================================================== --- head/lib/libsecureboot/verify_file.c Tue Apr 9 22:15:39 2019 (r346069) +++ head/lib/libsecureboot/verify_file.c Tue Apr 9 22:20:11 2019 (r346070) @@ -366,7 +366,7 @@ verify_file(int fd, const char *filename, off_t off, i return (rc); } - if (severity || verbose) + if (severity || verbose || rc == VE_FINGERPRINT_WRONG) printf("Unverified: %s\n", ve_error_get()); if (rc == VE_FINGERPRINT_UNKNOWN && severity < VE_MUST) rc = VE_UNVERIFIED_OK; From owner-svn-src-all@freebsd.org Tue Apr 9 21:47:59 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D7536156F2DC; Tue, 9 Apr 2019 21:47:58 +0000 (UTC) (envelope-from jilles@stack.nl) Received: from ecc05.stack.nl (ws0.zlo.nu [190.2.135.243]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.stack.nl", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6EBD683EE7; Tue, 9 Apr 2019 21:47:56 +0000 (UTC) (envelope-from jilles@stack.nl) Received: from mail02.stack.nl (blade.stack.nl [51.15.111.152]) by ecc05.stack.nl (Postfix) with ESMTPS id 2436F100F73; Tue, 9 Apr 2019 21:47:47 +0000 (UTC) Received: from localhost (localhost.localdomain [127.0.0.1]) by mail02.stack.nl (Postfix) with ESMTP id 024F0240FD7; Tue, 9 Apr 2019 21:47:47 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at mail02 Received: from mail02.stack.nl ([127.0.0.1]) by localhost (mail02.stack.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id oGXvYWEm2_mo; Tue, 9 Apr 2019 21:47:44 +0000 (UTC) Received: from blade.stack.nl (blade.stack.nl [192.168.122.130]) by mail02.stack.nl (Postfix) with ESMTP id 3A6A2240FD4; Tue, 9 Apr 2019 21:47:44 +0000 (UTC) Received: by blade.stack.nl (Postfix, from userid 1677) id 12C08211C5; Tue, 9 Apr 2019 23:47:44 +0200 (CEST) Date: Tue, 9 Apr 2019 23:47:44 +0200 From: Jilles Tjoelker To: Chris Rees Cc: rgrimes@freebsd.org, "Rodney W. Grimes" , Chris Rees , Andriy Gapon , "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 Message-ID: <20190409214743.GA9621@stack.nl> References: <201904092108.x39L8ZCG062247@gndrsh.dnsmgr.net> <2B336327-528C-4E16-AA5D-B3497B1941D0@bayofrum.net> <95242E98-E578-476E-AFA6-099F00AF50BC@bayofrum.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <95242E98-E578-476E-AFA6-099F00AF50BC@bayofrum.net> User-Agent: Mutt/1.9.4 (2018-02-28) X-Rspamd-Queue-Id: 6EBD683EE7 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; spf=pass (mx1.freebsd.org: domain of jilles@stack.nl designates 190.2.135.243 as permitted sender) smtp.mailfrom=jilles@stack.nl X-Spamd-Result: default: False [-2.70 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.89)[-0.890,0]; RCVD_COUNT_FIVE(0.00)[6]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:190.2.135.243]; NEURAL_HAM_LONG(-0.99)[-0.994,0]; MIME_GOOD(-0.10)[text/plain]; RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[stack.nl]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MX_GOOD(-0.01)[mail01.stack.nl]; NEURAL_HAM_SHORT(-0.51)[-0.506,0]; RCPT_COUNT_SEVEN(0.00)[10]; IP_SCORE(0.00)[country: NL(0.01)]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:49981, ipnet:190.2.128.0/20, country:NL]; MID_RHS_MATCH_FROM(0.00)[] X-Mailman-Approved-At: Tue, 09 Apr 2019 22:25:11 +0000 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Apr 2019 21:47:59 -0000 On Tue, Apr 09, 2019 at 10:24:16PM +0100, Chris Rees wrote: > On 9 April 2019 22:13:29 BST, Chris Rees wrote: > >On 9 April 2019 22:08:35 BST, "Rodney W. Grimes" > > wrote: > >>> On 09/04/2019 20:59, Chris Rees wrote: > >>> > On 9 April 2019 20:55:07 BST, "Rodney W. Grimes" > >> wrote: > >>> >>> On 09/04/2019 21:33, Rodney W. Grimes wrote: > >>> >>>> I think the trigger issue is: > >>> >>>> grep zfs /etc/rc.d/zvol > >>> >>>> rcvar="zfs_enable" > >>> >>>> required_modules="zfs" > >>> >>>> that module requires may be going south with the > >>> >>>> new code when the module is built into the kernel. > >>> >>> Maybe it's because the module's name is zfsctrl (for whatever > >>reason) > >>> >> while the > >>> >>> module file is named zfs.ko. > >>> >> I suspect that could also lead to issues with the new code. > >>> >> It seems to be failing to detect that zfs is infact functional in > >>the > >>> >> kernel, > >>> >> and blindly, or not so blindly, trying to load zfs,ko, which when > >>you > >>> >> build > >>> >> it into the kernel you usually do so without any modules built, > >so > >>> >> there is > >>> >> no /boot/kernel/zfs.ko, and even if you did build it any attempt > >>to > >>> >> load > >>> >> it would return an error. > >>> > Loading with it built in isn't a problem, as I showed earlier. > >>> > Loading when it doesn't exist *is*. > >>> > I'm torn. Either we could revert this, or add a check to the > >>required_modules function instead, which I think is the better solution. > >>> Hang on, > >>> [crees@pegasus]~% sudo kldload -n zfsctrl && echo yes > >>> yes > >>I think your testing the return value of sudo here? > >Sudo returns the child's return value. > Turns out Oliver had also reported this to current@ with a log > https://lists.freebsd.org/pipermail/freebsd-current/2019-April/073148.html > Jilles@, mind if I revert this while I get some testing on this > scenario done? > It seems to me that zfs may not be included in the kernel, just > zfsctrl, or something like that. It seems like kldload -n does not work as expected for zfs, so reverting seems the right approach. -- Jilles Tjoelker From owner-svn-src-all@freebsd.org Wed Apr 10 06:04:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2EC17157905C; Wed, 10 Apr 2019 06:04:29 +0000 (UTC) (envelope-from agapon@gmail.com) Received: from mail-lj1-f195.google.com (mail-lj1-f195.google.com [209.85.208.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7AD6791187; Wed, 10 Apr 2019 06:04:28 +0000 (UTC) (envelope-from agapon@gmail.com) Received: by mail-lj1-f195.google.com with SMTP id k8so924206lja.8; Tue, 09 Apr 2019 23:04:28 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:openpgp:autocrypt :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=UJkSpSKyPe/WxbrOxHIaHCW+2xa5KX+luqhtzytV5Y8=; b=lRGuqTeK2XULLGjdsgCbTrP6R+Bv5lfeYMf025scZFynOmupf9YP8K6cNeU/mcA1Sj a/xM74rnmgRKzuPXppeCBSqrQf5Gu3kRERKjLdiNnliS42N2HR9ikssXzIH45yVbevjS 6mzpv1+SJl56TMALJ5yWr48LX6D0vYDuXfa0RwLgFtONbVzhmxJ6j7ekGRIpe5EQLGGR rAI8GWDE78SsHmqfu8Wvx8vPQkmlPPUaylAAQSU+zrCUPP83O5qKrEKhXHe45w/N9Ib2 AgXe+kwok3FQWU31gBa9JETXMzv0teDVjpKEUWnfugAf3+d/1aoim0iC+f2tnUjroFzB amNw== X-Gm-Message-State: APjAAAWjYoudIt1sqU6F+xH+QZiHwDnGbkEZJlD+7iRCmo9OBKt6vrPh 4ZucnLfbHir6H/ZPtLEmt0Vx4u5AiZ4= X-Google-Smtp-Source: APXvYqxV4Q3dZnyfJro1Y+fhQBq0ra3vnz1MT9HT0cXhGGBalK547mM8pI31zeIz6MtDrwODaL9k3g== X-Received: by 2002:a2e:968c:: with SMTP id q12mr21497156lji.36.1554874476905; Tue, 09 Apr 2019 22:34:36 -0700 (PDT) Received: from [192.168.0.88] (east.meadow.volia.net. [93.72.151.96]) by smtp.googlemail.com with ESMTPSA id x2sm6838012lfg.59.2019.04.09.22.34.35 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 09 Apr 2019 22:34:35 -0700 (PDT) Subject: Re: svn commit: r346017 - in head: libexec/rc libexec/rc/rc.d share/man/man5 To: Chris Rees , Chris Rees , rgrimes@freebsd.org, "Rodney W. Grimes" Cc: "O. Hartmann" , Chris Rees , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201904091955.x39Jt7PU061907@gndrsh.dnsmgr.net> <56770290-a7f2-07dc-3f5a-f9d5721db724@rees.space> From: Andriy Gapon Openpgp: preference=signencrypt Autocrypt: addr=avg@FreeBSD.org; prefer-encrypt=mutual; keydata= xsFNBFm4LIgBEADNB/3lT7f15UKeQ52xCFQx/GqHkSxEdVyLFZTmY3KyNPQGBtyvVyBfprJ7 mAeXZWfhat6cKNRAGZcL5EmewdQuUfQfBdYmKjbw3a9GFDsDNuhDA2QwFt8BmkiVMRYyvI7l N0eVzszWCUgdc3qqM6qqcgBaqsVmJluwpvwp4ZBXmch5BgDDDb1MPO8AZ2QZfIQmplkj8Y6Z AiNMknkmgaekIINSJX8IzRzKD5WwMsin70psE8dpL/iBsA2cpJGzWMObVTtCxeDKlBCNqM1i gTXta1ukdUT7JgLEFZk9ceYQQMJJtUwzWu1UHfZn0Fs29HTqawfWPSZVbulbrnu5q55R4PlQ /xURkWQUTyDpqUvb4JK371zhepXiXDwrrpnyyZABm3SFLkk2bHlheeKU6Yql4pcmSVym1AS4 dV8y0oHAfdlSCF6tpOPf2+K9nW1CFA8b/tw4oJBTtfZ1kxXOMdyZU5fiG7xb1qDgpQKgHUX8 7Rd2T1UVLVeuhYlXNw2F+a2ucY+cMoqz3LtpksUiBppJhw099gEXehcN2JbUZ2TueJdt1FdS ztnZmsHUXLxrRBtGwqnFL7GSd6snpGIKuuL305iaOGODbb9c7ne1JqBbkw1wh8ci6vvwGlzx rexzimRaBzJxlkjNfMx8WpCvYebGMydNoeEtkWldtjTNVsUAtQARAQABzR5BbmRyaXkgR2Fw b24gPGF2Z0BGcmVlQlNELm9yZz7CwZQEEwEIAD4WIQS+LEO7ngQnXA4Bjr538m7TUc1yjwUC WbgsiAIbIwUJBaOagAULCQgHAgYVCAkKCwIEFgIDAQIeAQIXgAAKCRB38m7TUc1yj+JAEACV l9AK/nOWAt/9cufV2fRj0hdOqB1aCshtSrwHk/exXsDa4/FkmegxXQGY+3GWX3deIyesbVRL rYdtdK0dqJyT1SBqXK1h3/at9rxr9GQA6KWOxTjUFURsU7ok/6SIlm8uLRPNKO+yq0GDjgaO LzN+xykuBA0FlhQAXJnpZLcVfPJdWv7sSHGedL5ln8P8rxR+XnmsA5TUaaPcbhTB+mG+iKFj GghASDSfGqLWFPBlX/fpXikBDZ1gvOr8nyMY9nXhgfXpq3B6QCRYKPy58ChrZ5weeJZ29b7/ QdEO8NFNWHjSD9meiLdWQaqo9Y7uUxN3wySc/YUZxtS0bhAd8zJdNPsJYG8sXgKjeBQMVGuT eCAJFEYJqbwWvIXMfVWop4+O4xB+z2YE3jAbG/9tB/GSnQdVSj3G8MS80iLS58frnt+RSEw/ psahrfh0dh6SFHttE049xYiC+cM8J27Aaf0i9RflyITq57NuJm+AHJoU9SQUkIF0nc6lfA+o JRiyRlHZHKoRQkIg4aiKaZSWjQYRl5Txl0IZUP1dSWMX4s3XTMurC/pnja45dge/4ESOtJ9R 8XuIWg45Oq6MeIWdjKddGhRj3OohsltKgkEU3eLKYtB6qRTQypHHUawCXz88uYt5e3w4V16H lCpSTZV/EVHnNe45FVBlvK7k7HFfDDkryM7BTQRZuCyIARAAlq0slcsVboY/+IUJdcbEiJRW be9HKVz4SUchq0z9MZPX/0dcnvz/gkyYA+OuM78dNS7Mbby5dTvOqfpLJfCuhaNYOhlE0wY+ 1T6Tf1f4c/uA3U/YiadukQ3+6TJuYGAdRZD5EqYFIkreARTVWg87N9g0fT9BEqLw9lJtEGDY EWUE7L++B8o4uu3LQFEYxcrb4K/WKmgtmFcm77s0IKDrfcX4doV92QTIpLiRxcOmCC/OCYuO jB1oaaqXQzZrCutXRK0L5XN1Y1PYjIrEzHMIXmCDlLYnpFkK+itlXwlE2ZQxkfMruCWdQXye syl2fynAe8hvp7Mms9qU2r2K9EcJiR5N1t1C2/kTKNUhcRv7Yd/vwusK7BqJbhlng5ZgRx0m WxdntU/JLEntz3QBsBsWM9Y9wf2V4tLv6/DuDBta781RsCB/UrU2zNuOEkSixlUiHxw1dccI 6CVlaWkkJBxmHX22GdDFrcjvwMNIbbyfQLuBq6IOh8nvu9vuItup7qemDG3Ms6TVwA7BD3j+ 3fGprtyW8Fd/RR2bW2+LWkMrqHffAr6Y6V3h5kd2G9Q8ZWpEJk+LG6Mk3fhZhmCnHhDu6CwN MeUvxXDVO+fqc3JjFm5OxhmfVeJKrbCEUJyM8ESWLoNHLqjywdZga4Q7P12g8DUQ1mRxYg/L HgZY3zfKOqcAEQEAAcLBfAQYAQgAJhYhBL4sQ7ueBCdcDgGOvnfybtNRzXKPBQJZuCyIAhsM BQkFo5qAAAoJEHfybtNRzXKPBVwQAKfFy9P7N3OsLDMB56A4Kf+ZT+d5cIx0Yiaf4n6w7m3i ImHHHk9FIetI4Xe54a2IXh4Bq5UkAGY0667eIs+Z1Ea6I2i27Sdo7DxGwq09Qnm/Y65ADvXs 3aBvokCcm7FsM1wky395m8xUos1681oV5oxgqeRI8/76qy0hD9WR65UW+HQgZRIcIjSel9vR XDaD2HLGPTTGr7u4v00UeTMs6qvPsa2PJagogrKY8RXdFtXvweQFz78NbXhluwix2Tb9ETPk LIpDrtzV73CaE2aqBG/KrboXT2C67BgFtnk7T7Y7iKq4/XvEdDWscz2wws91BOXuMMd4c/c4 OmGW9m3RBLufFrOag1q5yUS9QbFfyqL6dftJP3Zq/xe+mr7sbWbhPVCQFrH3r26mpmy841ym dwQnNcsbIGiBASBSKksOvIDYKa2Wy8htPmWFTEOPRpFXdGQ27awcjjnB42nngyCK5ukZDHi6 w0qK5DNQQCkiweevCIC6wc3p67jl1EMFY5+z+zdTPb3h7LeVnGqW0qBQl99vVFgzLxchKcl0 R/paSFgwqXCZhAKMuUHncJuynDOP7z5LirUeFI8qsBAJi1rXpQoLJTVcW72swZ42IdPiboqx NbTMiNOiE36GqMcTPfKylCbF45JNX4nF9ElM0E+Y8gi4cizJYBRr2FBJgay0b9Cp Message-ID: Date: Wed, 10 Apr 2019 08:34:34 +0300 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <56770290-a7f2-07dc-3f5a-f9d5721db724@rees.space> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 7AD6791187 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.93 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.94)[-0.935,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 06:04:29 -0000 On 09/04/2019 23:08, Chris Rees wrote: > [crees@pegasus]~% sudo kldload -n zfsctrl && echo yes > yes > > [crees@pegasus]~% find /boot -name zfsctrl\* > [crees@pegasus]~% I am not sure what was your point, but here are some thoughts (or food for thought). 1. As I mentioned earlier, ZFS has this duality where a loadable file is called zfs.ko, but the actual module is called zfsctrl 2. 'kldload -n zfsctrl' should work if ZFS is already present (either in the kernel or because zfs.ko is loaded) because zfsctlr is the module name 3. I don't know if 'kldload -n zfsctrl' would work if ZFS is not loaded, because I am not sure if kldload is able to figure out that zfsctlrl can be found in zfs.ko. 4. In any case, /etc/rc.d/zfs has required_modules="zfs". So, the above is moot unless you replace "zfs" with "zfsctrl". And then, it may or may not work depending on #3. -- Andriy Gapon From owner-svn-src-all@freebsd.org Wed Apr 10 07:51:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D76EA157B884; Wed, 10 Apr 2019 07:51:15 +0000 (UTC) (envelope-from crees@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 7AC36944FF; Wed, 10 Apr 2019 07:51:15 +0000 (UTC) (envelope-from crees@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 53A281F8CB; Wed, 10 Apr 2019 07:51:15 +0000 (UTC) (envelope-from crees@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3A7pFdo045002; Wed, 10 Apr 2019 07:51:15 GMT (envelope-from crees@FreeBSD.org) Received: (from crees@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3A7pDo8044989; Wed, 10 Apr 2019 07:51:13 GMT (envelope-from crees@FreeBSD.org) Message-Id: <201904100751.x3A7pDo8044989@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: crees set sender to crees@FreeBSD.org using -f From: Chris Rees Date: Wed, 10 Apr 2019 07:51:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346072 - in head: libexec/rc libexec/rc/rc.d share/man/man5 X-SVN-Group: head X-SVN-Commit-Author: crees X-SVN-Commit-Paths: in head: libexec/rc libexec/rc/rc.d share/man/man5 X-SVN-Commit-Revision: 346072 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7AC36944FF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 07:51:16 -0000 Author: crees (doc,ports committer) Date: Wed Apr 10 07:51:13 2019 New Revision: 346072 URL: https://svnweb.freebsd.org/changeset/base/346072 Log: Revert r346017 pending compiled-in zfs fix PR: 237172 Approved by: jilles Differential Revision: https://reviews.freebsd.org/D18670 Modified: head/libexec/rc/rc.d/abi head/libexec/rc/rc.d/bthidd head/libexec/rc/rc.d/cfumass head/libexec/rc/rc.d/kld head/libexec/rc/rc.d/mdconfig head/libexec/rc/rc.d/mdconfig2 head/libexec/rc/rc.d/mountcritremote head/libexec/rc/rc.d/syscons head/libexec/rc/rc.subr head/share/man/man5/rc.conf.5 Modified: head/libexec/rc/rc.d/abi ============================================================================== --- head/libexec/rc/rc.d/abi Wed Apr 10 06:23:15 2019 (r346071) +++ head/libexec/rc/rc.d/abi Wed Apr 10 07:51:13 2019 (r346072) @@ -27,10 +27,10 @@ linux_start() local _tmpdir echo -n ' linux' - load_kld linux + load_kld -e 'linux(aout|elf)' linux case `sysctl -n hw.machine_arch` in amd64) - load_kld linux64 + load_kld -e 'linux64elf' linux64 ;; esac if [ -x /compat/linux/sbin/ldconfigDisabled ]; then Modified: head/libexec/rc/rc.d/bthidd ============================================================================== --- head/libexec/rc/rc.d/bthidd Wed Apr 10 06:23:15 2019 (r346071) +++ head/libexec/rc/rc.d/bthidd Wed Apr 10 07:51:13 2019 (r346072) @@ -34,11 +34,11 @@ evdev_enabled() bthidd_prestart() { if evdev_enabled; then - load_kld uinput + load_kld -m uinput uinput fi - load_kld kbdmux - load_kld vkbd - load_kld ng_btsocket + load_kld -m kbdmux kbdmux + load_kld -m vkbd vkbd + load_kld -m ng_btsocket ng_btsocket return 0 } Modified: head/libexec/rc/rc.d/cfumass ============================================================================== --- head/libexec/rc/rc.d/cfumass Wed Apr 10 06:23:15 2019 (r346071) +++ head/libexec/rc/rc.d/cfumass Wed Apr 10 07:51:13 2019 (r346072) @@ -75,7 +75,7 @@ cfumass_start() return "${err}" fi - load_kld cfumass + load_kld -e cfumass cfumass # If the template is already switched to Mass Storage, then reset # it to -1 to force the host to reenumerate it; otherwise it might Modified: head/libexec/rc/rc.d/kld ============================================================================== --- head/libexec/rc/rc.d/kld Wed Apr 10 06:23:15 2019 (r346071) +++ head/libexec/rc/rc.d/kld Wed Apr 10 07:51:13 2019 (r346072) @@ -46,7 +46,7 @@ kld_start() echo 'Loading kernel modules:' for _kld in $kld_list ; do - load_kld $_kld + load_kld -e ${_kld}.ko $_kld done } Modified: head/libexec/rc/rc.d/mdconfig ============================================================================== --- head/libexec/rc/rc.d/mdconfig Wed Apr 10 06:23:15 2019 (r346071) +++ head/libexec/rc/rc.d/mdconfig Wed Apr 10 07:51:13 2019 (r346072) @@ -114,7 +114,7 @@ mdconfig_start() continue fi if [ "${_file}" != "${_file%.uzip}" ]; then - load_kld geom_uzip || return 3 + load_kld -m g_uzip geom_uzip || return 3 # sleep a bit to allow creation of /dev/mdX.uzip sleep 2 fi Modified: head/libexec/rc/rc.d/mdconfig2 ============================================================================== --- head/libexec/rc/rc.d/mdconfig2 Wed Apr 10 06:23:15 2019 (r346071) +++ head/libexec/rc/rc.d/mdconfig2 Wed Apr 10 07:51:13 2019 (r346072) @@ -123,7 +123,7 @@ mdconfig2_start() # been created. if [ "${_type}" = "vnode" -a "${_fs}" != "/" ]; then if [ "${_file}" != "${_file%.uzip}" ]; then - load_kld geom_uzip || return 3 + load_kld -m g_uzip geom_uzip || return 3 fi if is_readonly ${_fs}; then warn "${_fs} is mounted read-only, skipping ${_md}." Modified: head/libexec/rc/rc.d/mountcritremote ============================================================================== --- head/libexec/rc/rc.d/mountcritremote Wed Apr 10 06:23:15 2019 (r346071) +++ head/libexec/rc/rc.d/mountcritremote Wed Apr 10 07:51:13 2019 (r346072) @@ -27,7 +27,7 @@ mountcritremote_precmd() case "`mount -d -a -t nfs 2> /dev/null`" in *mount_nfs*) # Handle absent nfs client support - load_kld nfscl || return 1 + load_kld -m nfs nfscl || return 1 ;; esac return 0 Modified: head/libexec/rc/rc.d/syscons ============================================================================== --- head/libexec/rc/rc.d/syscons Wed Apr 10 06:23:15 2019 (r346071) +++ head/libexec/rc/rc.d/syscons Wed Apr 10 07:51:13 2019 (r346072) @@ -346,7 +346,7 @@ syscons_start() for i in `kldstat | awk '$5 ~ "_saver\.ko$" { print $5 }'`; do kldunload ${i} done - load_kld ${saver}_saver + load_kld -e _saver ${saver}_saver ;; esac Modified: head/libexec/rc/rc.subr ============================================================================== --- head/libexec/rc/rc.subr Wed Apr 10 06:23:15 2019 (r346071) +++ head/libexec/rc/rc.subr Wed Apr 10 07:51:13 2019 (r346072) @@ -1853,29 +1853,48 @@ mount_md() } # Code common to scripts that need to load a kernel module -# if it isn't in the kernel yet. Syntax: -# load_kld file +# if it isn't in the kernel yet. Syntax: +# load_kld [-e regex] [-m module] file +# where -e or -m chooses the way to check if the module +# is already loaded: +# regex is egrep'd in the output from `kldstat -v', +# module is passed to `kldstat -m'. +# The default way is as though `-m file' were specified. load_kld() { - local _opt + local _loaded _mod _opt _re - # Silently ignore legacy options; they are unnecessary while getopts "e:m:" _opt; do case "$_opt" in - e) ;; - m) ;; - *) err 3 'USAGE: load_kld file' ;; + e) _re="$OPTARG" ;; + m) _mod="$OPTARG" ;; + *) err 3 'USAGE: load_kld [-e regex] [-m module] file' ;; esac done shift $(($OPTIND - 1)) if [ $# -ne 1 ]; then - err 3 'USAGE: load_kld file' + err 3 'USAGE: load_kld [-e regex] [-m module] file' fi - if ! kldload -n "$1"; then - warn "Unable to load kernel module $1" - return 1 + _mod=${_mod:-$1} + _loaded=false + if [ -n "$_re" ]; then + if kldstat -v | egrep -q -e "$_re"; then + _loaded=true + fi else - info "$1 kernel module loaded." + if kldstat -q -m "$_mod"; then + _loaded=true + fi + fi + if ! $_loaded; then + if ! kldload "$1"; then + warn "Unable to load kernel module $1" + return 1 + else + info "$1 kernel module loaded." + fi + else + debug "load_kld: $1 kernel module already loaded." fi return 0 } Modified: head/share/man/man5/rc.conf.5 ============================================================================== --- head/share/man/man5/rc.conf.5 Wed Apr 10 06:23:15 2019 (r346071) +++ head/share/man/man5/rc.conf.5 Wed Apr 10 07:51:13 2019 (r346072) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 7, 2019 +.Dd March 21, 2019 .Dt RC.CONF 5 .Os .Sh NAME @@ -249,7 +249,9 @@ Default .It Va kld_list .Pq Vt str A whitespace-separated list of kernel modules to load right after -the local disks are mounted, with optional path. +the local disks are mounted, without any +.Pa .ko +extension or path. Loading modules at this point in the boot process is much faster than doing it via .Pa /boot/loader.conf From owner-svn-src-all@freebsd.org Wed Apr 10 08:17:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B2878157C10D; Wed, 10 Apr 2019 08:17:57 +0000 (UTC) (envelope-from avos@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 56845954C6; Wed, 10 Apr 2019 08:17:57 +0000 (UTC) (envelope-from avos@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 1F5F41FC9A; Wed, 10 Apr 2019 08:17:57 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3A8HuAU060452; Wed, 10 Apr 2019 08:17:56 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3A8HuQL060450; Wed, 10 Apr 2019 08:17:56 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201904100817.x3A8HuQL060450@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Wed, 10 Apr 2019 08:17:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346073 - in head/sys/dev: iwi otus usb/wlan X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in head/sys/dev: iwi otus usb/wlan X-SVN-Commit-Revision: 346073 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 56845954C6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 08:17:57 -0000 Author: avos Date: Wed Apr 10 08:17:56 2019 New Revision: 346073 URL: https://svnweb.freebsd.org/changeset/base/346073 Log: urtw(4), otus(4), iwi(4): allow to set non-default MAC address via ifconfig(8) Tested with Netgear WG111 v3 (RTL8187B, urtw(4)), STA mode. MFC after: 1 week Modified: head/sys/dev/iwi/if_iwi.c head/sys/dev/otus/if_otus.c head/sys/dev/usb/wlan/if_urtw.c Modified: head/sys/dev/iwi/if_iwi.c ============================================================================== --- head/sys/dev/iwi/if_iwi.c Wed Apr 10 07:51:13 2019 (r346072) +++ head/sys/dev/iwi/if_iwi.c Wed Apr 10 08:17:56 2019 (r346073) @@ -2576,15 +2576,18 @@ static int iwi_config(struct iwi_softc *sc) { struct ieee80211com *ic = &sc->sc_ic; + struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); struct iwi_configuration config; struct iwi_txpower power; + uint8_t *macaddr; uint32_t data; int error, i; IWI_LOCK_ASSERT(sc); - DPRINTF(("Setting MAC address to %6D\n", ic->ic_macaddr, ":")); - error = iwi_cmd(sc, IWI_CMD_SET_MAC_ADDRESS, ic->ic_macaddr, + macaddr = vap ? vap->iv_myaddr : ic->ic_macaddr; + DPRINTF(("Setting MAC address to %6D\n", macaddr, ":")); + error = iwi_cmd(sc, IWI_CMD_SET_MAC_ADDRESS, macaddr, IEEE80211_ADDR_LEN); if (error != 0) return error; Modified: head/sys/dev/otus/if_otus.c ============================================================================== --- head/sys/dev/otus/if_otus.c Wed Apr 10 07:51:13 2019 (r346072) +++ head/sys/dev/otus/if_otus.c Wed Apr 10 08:17:56 2019 (r346073) @@ -3108,7 +3108,7 @@ otus_set_operating_mode(struct otus_softc *sc) */ IEEE80211_ADDR_COPY(bssid, zero_macaddr); vap = TAILQ_FIRST(&ic->ic_vaps); - macaddr = ic->ic_macaddr; + macaddr = vap ? vap->iv_myaddr : ic->ic_macaddr; switch (ic->ic_opmode) { case IEEE80211_M_STA: Modified: head/sys/dev/usb/wlan/if_urtw.c ============================================================================== --- head/sys/dev/usb/wlan/if_urtw.c Wed Apr 10 07:51:13 2019 (r346072) +++ head/sys/dev/usb/wlan/if_urtw.c Wed Apr 10 08:17:56 2019 (r346073) @@ -752,6 +752,7 @@ static void urtw_free_tx_data_list(struct urtw_softc static void urtw_free_rx_data_list(struct urtw_softc *); static void urtw_free_data_list(struct urtw_softc *, struct urtw_data data[], int, int); +static usb_error_t urtw_set_macaddr(struct urtw_softc *, const uint8_t *); static usb_error_t urtw_adapter_start(struct urtw_softc *); static usb_error_t urtw_adapter_start_b(struct urtw_softc *); static usb_error_t urtw_set_mode(struct urtw_softc *, uint32_t); @@ -1187,9 +1188,23 @@ fail: } static usb_error_t +urtw_set_macaddr(struct urtw_softc *sc, const uint8_t *macaddr) +{ + usb_error_t error; + + urtw_write32_m(sc, URTW_MAC0, ((const uint32_t *)macaddr)[0]); + urtw_write16_m(sc, URTW_MAC4, ((const uint32_t *)macaddr)[1] & 0xffff); + +fail: + return (error); +} + +static usb_error_t urtw_adapter_start(struct urtw_softc *sc) { struct ieee80211com *ic = &sc->sc_ic; + struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); + const uint8_t *macaddr; usb_error_t error; error = urtw_reset(sc); @@ -1209,8 +1224,11 @@ urtw_adapter_start(struct urtw_softc *sc) if (error) goto fail; /* applying MAC address again. */ - urtw_write32_m(sc, URTW_MAC0, ((uint32_t *)ic->ic_macaddr)[0]); - urtw_write16_m(sc, URTW_MAC4, ((uint32_t *)ic->ic_macaddr)[1] & 0xffff); + macaddr = vap ? vap->iv_myaddr : ic->ic_macaddr; + urtw_set_macaddr(sc, macaddr); + if (error) + goto fail; + error = urtw_set_mode(sc, URTW_EPROM_CMD_NORMAL); if (error) goto fail; @@ -3180,6 +3198,8 @@ static usb_error_t urtw_8225v2b_rf_init(struct urtw_softc *sc) { struct ieee80211com *ic = &sc->sc_ic; + struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); + const uint8_t *macaddr; unsigned int i; uint8_t data8; usb_error_t error; @@ -3227,8 +3247,10 @@ urtw_8225v2b_rf_init(struct urtw_softc *sc) urtw_write8_m(sc, URTW_CONFIG1, data8); /* applying MAC address again. */ - urtw_write32_m(sc, URTW_MAC0, ((uint32_t *)ic->ic_macaddr)[0]); - urtw_write16_m(sc, URTW_MAC4, ((uint32_t *)ic->ic_macaddr)[1] & 0xffff); + macaddr = vap ? vap->iv_myaddr : ic->ic_macaddr; + error = urtw_set_macaddr(sc, macaddr); + if (error) + goto fail; error = urtw_set_mode(sc, URTW_EPROM_CMD_NORMAL); if (error) From owner-svn-src-all@freebsd.org Wed Apr 10 08:34:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DED27157C518; Wed, 10 Apr 2019 08:34:18 +0000 (UTC) (envelope-from kib@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 7FC6F95DDA; Wed, 10 Apr 2019 08:34:18 +0000 (UTC) (envelope-from kib@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 551E61FFF3; Wed, 10 Apr 2019 08:34:18 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3A8YImx070745; Wed, 10 Apr 2019 08:34:18 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3A8YIm9070744; Wed, 10 Apr 2019 08:34:18 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904100834.x3A8YIm9070744@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 10 Apr 2019 08:34:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346074 - stable/12/sys/fs/msdosfs X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/12/sys/fs/msdosfs X-SVN-Commit-Revision: 346074 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7FC6F95DDA X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 08:34:19 -0000 Author: kib Date: Wed Apr 10 08:34:17 2019 New Revision: 346074 URL: https://svnweb.freebsd.org/changeset/base/346074 Log: MFC r345847: msdosfs: zero tail of the last block on truncation for VREG vnodes as well. Modified: stable/12/sys/fs/msdosfs/msdosfs_denode.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/fs/msdosfs/msdosfs_denode.c ============================================================================== --- stable/12/sys/fs/msdosfs/msdosfs_denode.c Wed Apr 10 08:17:56 2019 (r346073) +++ stable/12/sys/fs/msdosfs/msdosfs_denode.c Wed Apr 10 08:34:17 2019 (r346074) @@ -405,19 +405,21 @@ detrunc(struct denode *dep, u_long length, int flags, bn = cntobn(pmp, eofentry); error = bread(pmp->pm_devvp, bn, pmp->pm_bpcluster, NOCRED, &bp); - if (error) { - brelse(bp); + } else { + error = bread(DETOV(dep), de_cluster(pmp, length), + pmp->pm_bpcluster, cred, &bp); + } + if (error) { #ifdef MSDOSFS_DEBUG - printf("detrunc(): bread fails %d\n", error); + printf("detrunc(): bread fails %d\n", error); #endif - return (error); - } - memset(bp->b_data + boff, 0, pmp->pm_bpcluster - boff); - if (flags & IO_SYNC) - bwrite(bp); - else - bdwrite(bp); + return (error); } + memset(bp->b_data + boff, 0, pmp->pm_bpcluster - boff); + if ((flags & IO_SYNC) != 0) + bwrite(bp); + else + bdwrite(bp); } /* From owner-svn-src-all@freebsd.org Wed Apr 10 10:21:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2C43E157E48D; Wed, 10 Apr 2019 10:21:15 +0000 (UTC) (envelope-from trasz@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 C395C6A38E; Wed, 10 Apr 2019 10:21:14 +0000 (UTC) (envelope-from trasz@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 9D26921151; Wed, 10 Apr 2019 10:21:14 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AALEP2025375; Wed, 10 Apr 2019 10:21:14 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AALErR025374; Wed, 10 Apr 2019 10:21:14 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201904101021.x3AALErR025374@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Wed, 10 Apr 2019 10:21:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346076 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 346076 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C395C6A38E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.94)[-0.938,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 10:21:15 -0000 Author: trasz Date: Wed Apr 10 10:21:14 2019 New Revision: 346076 URL: https://svnweb.freebsd.org/changeset/base/346076 Log: Improve vnode lock assertions. MFC after: 2 weeks Sponsored by: DARPA, AFRL Modified: head/sys/kern/imgact_elf.c Modified: head/sys/kern/imgact_elf.c ============================================================================== --- head/sys/kern/imgact_elf.c Wed Apr 10 09:19:26 2019 (r346075) +++ head/sys/kern/imgact_elf.c Wed Apr 10 10:21:14 2019 (r346076) @@ -658,6 +658,8 @@ __elfN(load_sections)(struct image_params *imgp, const bool first; int error, i; + ASSERT_VOP_LOCKED(imgp->vp, __func__); + base_addr = 0; first = true; @@ -924,8 +926,7 @@ __elfN(get_interp)(struct image_params *imgp, const El KASSERT(phdr->p_type == PT_INTERP, ("%s: p_type %u != PT_INTERP", __func__, phdr->p_type)); - KASSERT(VOP_ISLOCKED(imgp->vp), - ("%s: vp %p is not locked", __func__, imgp->vp)); + ASSERT_VOP_LOCKED(imgp->vp, __func__); td = curthread; From owner-svn-src-all@freebsd.org Wed Apr 10 10:50:50 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EAB86157EDDA; Wed, 10 Apr 2019 10:50:49 +0000 (UTC) (envelope-from kib@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 8D32F6B767; Wed, 10 Apr 2019 10:50:49 +0000 (UTC) (envelope-from kib@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 5EA302176E; Wed, 10 Apr 2019 10:50:49 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AAonFS039913; Wed, 10 Apr 2019 10:50:49 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AAonWJ039912; Wed, 10 Apr 2019 10:50:49 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904101050.x3AAonWJ039912@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 10 Apr 2019 10:50: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: r346077 - stable/11/sys/fs/msdosfs X-SVN-Group: stable-11 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/11/sys/fs/msdosfs X-SVN-Commit-Revision: 346077 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8D32F6B767 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.967,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 10:50:50 -0000 Author: kib Date: Wed Apr 10 10:50:48 2019 New Revision: 346077 URL: https://svnweb.freebsd.org/changeset/base/346077 Log: MFC r345847: msdosfs: zero tail of the last block on truncation for VREG vnodes as well. Modified: stable/11/sys/fs/msdosfs/msdosfs_denode.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/fs/msdosfs/msdosfs_denode.c ============================================================================== --- stable/11/sys/fs/msdosfs/msdosfs_denode.c Wed Apr 10 10:21:14 2019 (r346076) +++ stable/11/sys/fs/msdosfs/msdosfs_denode.c Wed Apr 10 10:50:48 2019 (r346077) @@ -403,19 +403,21 @@ detrunc(struct denode *dep, u_long length, int flags, bn = cntobn(pmp, eofentry); error = bread(pmp->pm_devvp, bn, pmp->pm_bpcluster, NOCRED, &bp); - if (error) { - brelse(bp); + } else { + error = bread(DETOV(dep), de_cluster(pmp, length), + pmp->pm_bpcluster, cred, &bp); + } + if (error) { #ifdef MSDOSFS_DEBUG - printf("detrunc(): bread fails %d\n", error); + printf("detrunc(): bread fails %d\n", error); #endif - return (error); - } - bzero(bp->b_data + boff, pmp->pm_bpcluster - boff); - if (flags & IO_SYNC) - bwrite(bp); - else - bdwrite(bp); + return (error); } + bzero(bp->b_data + boff, pmp->pm_bpcluster - boff); + if ((flags & IO_SYNC) != 0) + bwrite(bp); + else + bdwrite(bp); } /* From owner-svn-src-all@freebsd.org Wed Apr 10 11:04:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EFA37157F222; Wed, 10 Apr 2019 11:04:07 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132]) (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 "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8FB026BE7E; Wed, 10 Apr 2019 11:04:07 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1354) id 5FED1CB7D; Wed, 10 Apr 2019 11:04:07 +0000 (UTC) From: Jan Beich To: Enji Cooper Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r345708 - in head: lib/clang lib/libc++ lib/libc++experimental lib/libc++fs lib/libclang_rt lib/libcxxrt lib/libgcc_eh lib/libomp lib/ofed/libibnetdisc share/mk usr.bin/dtc usr.sbin/pmc References: <201903291845.x2TIjRMb087865@repo.freebsd.org> Date: Wed, 10 Apr 2019 13:04:03 +0200 In-Reply-To: <201903291845.x2TIjRMb087865@repo.freebsd.org> (Enji Cooper's message of "Fri, 29 Mar 2019 18:45:27 +0000 (UTC)") Message-ID: MIME-Version: 1.0 Content-Type: text/plain X-Rspamd-Queue-Id: 8FB026BE7E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; ASN(0.00)[asn:11403, ipnet:96.47.64.0/20, country:US]; NEURAL_HAM_MEDIUM(-0.99)[-0.990,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 11:04:08 -0000 Enji Cooper writes: > +.if ${COMPILER_FEATURES:Mc++11} > +CXXSTD?= c++11 POLA violation. Clang 6.0 or later defaults to gnu++14, not c++11. > +.elif ${COMPILER_TYPE} == "gcc" > +# Prior versions of g++ support C++98 with GNU extensions by default. > +CXXSTD?= gnu++98 POLA violation. GCC 6.0 or later defaults to gnu++14, not gnu++98. > +CXXFLAGS+= -std=${CXXSTD} POLA violation. Breaks consumers that pass different -std= e.g., http://www.ipv6proxy.net/go.php?u=http://beefy12.nyi.freebsd.org/data/head-amd64-default/p498440_s346039/logs/errors/android-tools-adb-9.0.0.r3_2.log Index: share/mk/bsd.sys.mk =================================================================== --- share/mk/bsd.sys.mk (revision 346076) +++ share/mk/bsd.sys.mk (working copy) @@ -25,16 +25,19 @@ CFLAGS+= -std=iso9899:1999 CFLAGS+= -std=${CSTD} .endif # CSTD -.if ${COMPILER_FEATURES:Mc++11} -CXXSTD?= c++11 -.elif ${COMPILER_TYPE} == "gcc" -# Prior versions of g++ support C++98 with GNU extensions by default. +.if (${COMPILER_TYPE} == "clang" || ${COMPILER_TYPE} == "gcc") && ${COMPILER_VERSION} >= 60000 +CXXSTD?= gnu++14 +.elif ${COMPILER_TYPE} == "clang" || ${COMPILER_TYPE} == "gcc" +# Prior versions of clang++ and g++ support C++98 with GNU extensions by default. CXXSTD?= gnu++98 .else # Assume that the compiler supports at least C++98. CXXSTD?= c++98 .endif +# Only pass -std= if missing to facilitate compatibility with previous FreeBSD versions +.if empty(CXXFLAGS:M-std=*) CXXFLAGS+= -std=${CXXSTD} +.endif # CXXSTD # -pedantic is problematic because it also imposes namespace restrictions From owner-svn-src-all@freebsd.org Wed Apr 10 13:02:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F27E71582257; Wed, 10 Apr 2019 13:02:33 +0000 (UTC) (envelope-from asomers@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 974DC6FB71; Wed, 10 Apr 2019 13:02:33 +0000 (UTC) (envelope-from asomers@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 6F76A22DF0; Wed, 10 Apr 2019 13:02:33 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AD2XJ1012360; Wed, 10 Apr 2019 13:02:33 GMT (envelope-from asomers@FreeBSD.org) Received: (from asomers@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AD2XKg012359; Wed, 10 Apr 2019 13:02:33 GMT (envelope-from asomers@FreeBSD.org) Message-Id: <201904101302.x3AD2XKg012359@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: asomers set sender to asomers@FreeBSD.org using -f From: Alan Somers Date: Wed, 10 Apr 2019 13:02:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346078 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: asomers X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 346078 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 974DC6FB71 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 13:02:34 -0000 Author: asomers Date: Wed Apr 10 13:02:33 2019 New Revision: 346078 URL: https://svnweb.freebsd.org/changeset/base/346078 Log: fix cache_lookup's documentation cache_lookup's documentation got dislocated by r324378. Relocate and expand it. Reviewed by: jhb, kib MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Modified: head/sys/kern/vfs_cache.c Modified: head/sys/kern/vfs_cache.c ============================================================================== --- head/sys/kern/vfs_cache.c Wed Apr 10 10:50:48 2019 (r346077) +++ head/sys/kern/vfs_cache.c Wed Apr 10 13:02:33 2019 (r346078) @@ -150,7 +150,7 @@ struct namecache_ts { * Names found by directory scans are retained in a cache * for future reference. It is managed LRU, so frequently * used names will hang around. Cache is indexed by hash value - * obtained from (vp, name) where vp refers to the directory + * obtained from (dvp, name) where dvp refers to the directory * containing name. * * If it is a "negative" entry, (i.e. for a name that is known NOT to @@ -1129,23 +1129,6 @@ cache_lookup_dot(struct vnode *dvp, struct vnode **vpp return (-1); } -/* - * Lookup an entry in the cache - * - * Lookup is called with dvp pointing to the directory to search, - * cnp pointing to the name of the entry being sought. If the lookup - * succeeds, the vnode is returned in *vpp, and a status of -1 is - * returned. If the lookup determines that the name does not exist - * (negative caching), a status of ENOENT is returned. If the lookup - * fails, a status of zero is returned. If the directory vnode is - * recycled out from under us due to a forced unmount, a status of - * ENOENT is returned. - * - * vpp is locked and ref'd on return. If we're looking up DOTDOT, dvp is - * unlocked. If we're looking up . an extra ref is taken, but the lock is - * not recursively acquired. - */ - static __noinline int cache_lookup_nomakeentry(struct vnode *dvp, struct vnode **vpp, struct componentname *cnp, struct timespec *tsp, int *ticksp) @@ -1229,6 +1212,42 @@ out_no_entry: return (0); } +/** + * Lookup a name in the name cache + * + * # Arguments + * + * - dvp: Parent directory in which to search. + * - vpp: Return argument. Will contain desired vnode on cache hit. + * - cnp: Parameters of the name search. The most interesting bits of + * the cn_flags field have the following meanings: + * - MAKEENTRY: If clear, free an entry from the cache rather than look + * it up. + * - ISDOTDOT: Must be set if and only if cn_nameptr == ".." + * - tsp: Return storage for cache timestamp. On a successful (positive + * or negative) lookup, tsp will be filled with any timespec that + * was stored when this cache entry was created. However, it will + * be clear for "." entries. + * - ticks: Return storage for alternate cache timestamp. On a successful + * (positive or negative) lookup, it will contain the ticks value + * that was current when the cache entry was created, unless cnp + * was ".". + * + * # Returns + * + * - -1: A positive cache hit. vpp will contain the desired vnode. + * - ENOENT: A negative cache hit, or dvp was recycled out from under us due + * to a forced unmount. vpp will not be modified. If the entry + * is a whiteout, then the ISWHITEOUT flag will be set in + * cnp->cn_flags. + * - 0: A cache miss. vpp will not be modified. + * + * # Locking + * + * On a cache hit, vpp will be returned locked and ref'd. If we're looking up + * .., dvp is unlocked. If we're looking up . an extra ref is taken, but the + * lock is not recursively acquired. + */ int cache_lookup(struct vnode *dvp, struct vnode **vpp, struct componentname *cnp, struct timespec *tsp, int *ticksp) From owner-svn-src-all@freebsd.org Wed Apr 10 13:13:36 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0BB8015825B6; Wed, 10 Apr 2019 13:13:36 +0000 (UTC) (envelope-from emaste@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 7AF7A70225; Wed, 10 Apr 2019 13:13:35 +0000 (UTC) (envelope-from emaste@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 4BC3722FB5; Wed, 10 Apr 2019 13:13:35 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3ADDZ34017536; Wed, 10 Apr 2019 13:13:35 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3ADDYgM017533; Wed, 10 Apr 2019 13:13:34 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201904101313.x3ADDYgM017533@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 10 Apr 2019 13:13:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346079 - head/usr.bin/ar X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/usr.bin/ar X-SVN-Commit-Revision: 346079 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7AF7A70225 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 13:13:36 -0000 Author: emaste Date: Wed Apr 10 13:13:34 2019 New Revision: 346079 URL: https://svnweb.freebsd.org/changeset/base/346079 Log: ar: implement support for /SYM64/ 64-bit archives PR: 234454 Submitted by: Gerald Aryeetey Reviewed by: imp (earlier) MFC after: 3 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D18793 Modified: head/usr.bin/ar/ar.h head/usr.bin/ar/read.c head/usr.bin/ar/write.c Modified: head/usr.bin/ar/ar.h ============================================================================== --- head/usr.bin/ar/ar.h Wed Apr 10 13:02:33 2019 (r346078) +++ head/usr.bin/ar/ar.h Wed Apr 10 13:13:34 2019 (r346079) @@ -100,9 +100,11 @@ struct bsdar { /* * Fields for the archive symbol table. */ - uint32_t s_cnt; /* current number of symbols. */ - uint32_t *s_so; /* symbol offset table. */ + uint64_t s_cnt; /* current number of symbols. */ + uint64_t *s_so; /* symbol offset table. */ + uint64_t s_so_max; /* maximum symbol offset. */ size_t s_so_cap; /* capacity of so table buffer. */ + char *s_sn; /* symbol name table */ size_t s_sn_cap; /* capacity of sn table buffer. */ size_t s_sn_sz; /* current size of sn table. */ Modified: head/usr.bin/ar/read.c ============================================================================== --- head/usr.bin/ar/read.c Wed Apr 10 13:02:33 2019 (r346078) +++ head/usr.bin/ar/read.c Wed Apr 10 13:13:34 2019 (r346079) @@ -109,7 +109,8 @@ read_archive(struct bsdar *bsdar, char mode) break; /* Skip pseudo members. */ - if (strcmp(name, "/") == 0 || strcmp(name, "//") == 0) + if (strcmp(name, "/") == 0 || strcmp(name, "//") == 0 || + strcmp(name, "/SYM64/") == 0) continue; if (bsdar->argc > 0) { Modified: head/usr.bin/ar/write.c ============================================================================== --- head/usr.bin/ar/write.c Wed Apr 10 13:02:33 2019 (r346078) +++ head/usr.bin/ar/write.c Wed Apr 10 13:13:34 2019 (r346079) @@ -50,7 +50,7 @@ __FBSDID("$FreeBSD$"); #define _ARMAG_LEN 8 /* length of ar magic string */ #define _ARHDR_LEN 60 /* length of ar header */ #define _INIT_AS_CAP 128 /* initial archive string table size */ -#define _INIT_SYMOFF_CAP (256*(sizeof(uint32_t))) /* initial so table size */ +#define _INIT_SYMOFF_CAP (256*(sizeof(uint64_t))) /* initial so table size */ #define _INIT_SYMNAME_CAP 1024 /* initial sn table size */ #define _MAXNAMELEN_SVR4 15 /* max member name length in svr4 variant */ #define _TRUNCATE_LEN 15 /* number of bytes to keep for member name */ @@ -557,6 +557,7 @@ write_cleanup(struct bsdar *bsdar) free(bsdar->s_sn); bsdar->as = NULL; bsdar->s_so = NULL; + bsdar->s_so_max = 0; bsdar->s_sn = NULL; } @@ -613,7 +614,9 @@ write_objs(struct bsdar *bsdar) struct archive_entry *entry; size_t s_sz; /* size of archive symbol table. */ size_t pm_sz; /* size of pseudo members */ - int i, nr; + size_t w_sz; /* size of words in symbol table */ + uint64_t nr; + int i; if (elf_version(EV_CURRENT) == EV_NONE) bsdar_errc(bsdar, EX_SOFTWARE, 0, @@ -628,9 +631,6 @@ write_objs(struct bsdar *bsdar) if (strlen(obj->name) > _MAXNAMELEN_SVR4) add_to_ar_str_table(bsdar, obj->name); bsdar->rela_off += _ARHDR_LEN + obj->size + obj->size % 2; - if (bsdar->rela_off > UINT32_MAX) - bsdar_errc(bsdar, EX_SOFTWARE, 0, - "Symbol table offset overflow"); } /* @@ -657,17 +657,30 @@ write_objs(struct bsdar *bsdar) * absolute_offset = htobe32(relative_offset + size_of_pseudo_members) */ + w_sz = sizeof(uint32_t); + if (bsdar->s_so_max > UINT32_MAX) + w_sz = sizeof(uint64_t); if (bsdar->s_cnt != 0) { s_sz = (bsdar->s_cnt + 1) * sizeof(uint32_t) + bsdar->s_sn_sz; pm_sz = _ARMAG_LEN + (_ARHDR_LEN + s_sz); if (bsdar->as != NULL) pm_sz += _ARHDR_LEN + bsdar->as_sz; + /* Use the 64-bit word size format if necessary. */ + if (bsdar->s_so_max > UINT32_MAX - pm_sz) { + w_sz = sizeof(uint64_t); + pm_sz -= s_sz; + s_sz = (bsdar->s_cnt + 1) * sizeof(uint64_t) + + bsdar->s_sn_sz; + pm_sz += s_sz; + } + for (i = 0; (size_t)i < bsdar->s_cnt; i++) { - if (*(bsdar->s_so + i) > UINT32_MAX - pm_sz) - bsdar_errc(bsdar, EX_SOFTWARE, 0, - "Symbol table offset overflow"); - *(bsdar->s_so + i) = htobe32(*(bsdar->s_so + i) + - pm_sz); + if (w_sz == sizeof(uint32_t)) + *(bsdar->s_so + i) = + htobe32((uint32_t)(*(bsdar->s_so + i)) + pm_sz); + else + *(bsdar->s_so + i) = + htobe64(*(bsdar->s_so + i) + pm_sz); } } @@ -689,16 +702,28 @@ write_objs(struct bsdar *bsdar) if (entry == NULL) bsdar_errc(bsdar, EX_SOFTWARE, 0, "archive_entry_new failed"); - archive_entry_copy_pathname(entry, "/"); + if (w_sz == sizeof(uint64_t)) + archive_entry_copy_pathname(entry, "/SYM64/"); + else + archive_entry_copy_pathname(entry, "/"); if ((bsdar->options & AR_D) == 0) archive_entry_set_mtime(entry, time(NULL), 0); - archive_entry_set_size(entry, (bsdar->s_cnt + 1) * - sizeof(uint32_t) + bsdar->s_sn_sz); + archive_entry_set_size(entry, (bsdar->s_cnt + 1) * w_sz + + bsdar->s_sn_sz); AC(archive_write_header(a, entry)); - nr = htobe32(bsdar->s_cnt); - write_data(bsdar, a, &nr, sizeof(uint32_t)); - write_data(bsdar, a, bsdar->s_so, sizeof(uint32_t) * - bsdar->s_cnt); + if (w_sz == sizeof(uint32_t)) + nr = (uint64_t)htobe32((uint32_t)bsdar->s_cnt); + else + nr = htobe64(bsdar->s_cnt); + write_data(bsdar, a, &nr, w_sz); + if (w_sz == sizeof(uint64_t)) + write_data(bsdar, a, bsdar->s_so, sizeof(uint64_t) * + bsdar->s_cnt); + else + for (i = 0; (size_t)i < bsdar->s_cnt; i++) + write_data(bsdar, a, + (uint32_t *)&bsdar->s_so[i], + sizeof(uint32_t)); write_data(bsdar, a, bsdar->s_sn, bsdar->s_sn_sz); archive_entry_free(entry); } @@ -904,13 +929,15 @@ add_to_ar_sym_table(struct bsdar *bsdar, const char *n bsdar->s_sn_sz = 0; } - if (bsdar->s_cnt * sizeof(uint32_t) >= bsdar->s_so_cap) { + if (bsdar->s_cnt * sizeof(uint64_t) >= bsdar->s_so_cap) { bsdar->s_so_cap *= 2; bsdar->s_so = realloc(bsdar->s_so, bsdar->s_so_cap); if (bsdar->s_so == NULL) bsdar_errc(bsdar, EX_SOFTWARE, errno, "realloc failed"); } bsdar->s_so[bsdar->s_cnt] = bsdar->rela_off; + if ((uint64_t)bsdar->rela_off > bsdar->s_so_max) + bsdar->s_so_max = (uint64_t)bsdar->rela_off; bsdar->s_cnt++; /* From owner-svn-src-all@freebsd.org Wed Apr 10 13:41:35 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C35E81583295; Wed, 10 Apr 2019 13:41:35 +0000 (UTC) (envelope-from emaste@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 4C3CC712E3; Wed, 10 Apr 2019 13:41:35 +0000 (UTC) (envelope-from emaste@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 250ED234C4; Wed, 10 Apr 2019 13:41:35 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3ADfZdM030122; Wed, 10 Apr 2019 13:41:35 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3ADfZBm030108; Wed, 10 Apr 2019 13:41:35 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201904101341.x3ADfZBm030108@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 10 Apr 2019 13:41:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346080 - head/tools/boot X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/tools/boot X-SVN-Commit-Revision: 346080 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4C3CC712E3 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 13:41:36 -0000 Author: emaste Date: Wed Apr 10 13:41:34 2019 New Revision: 346080 URL: https://svnweb.freebsd.org/changeset/base/346080 Log: Add a smoke test QEMU boot script for CI Reviewed by: imp, lwhsu (earlier) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19661 Added: head/tools/boot/ci-qemu-test.sh (contents, props changed) Added: head/tools/boot/ci-qemu-test.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/boot/ci-qemu-test.sh Wed Apr 10 13:41:34 2019 (r346080) @@ -0,0 +1,63 @@ +#!/bin/sh + +# Install loader, kernel, and enough of userland to boot in QEMU and echo +# "Hello world." from init, as a very quick smoke test for CI. Uses QEMU's +# virtual FAT filesystem to avoid the need to create a disk image. +# +# $FreeBSD$ + +set -e + +# Root directory for minimal FreeBSD installation. +ROOTDIR=$(pwd)/fat-root + +# Create minimal directory structure. +rm -f $ROOTDIR/efi/boot/BOOTx64.EFI +for dir in dev bin efi/boot etc lib libexec sbin usr/libexec; do + mkdir -p $ROOTDIR/$dir +done + +# Install kernel, loader and minimal userland. +make -DNO_ROOT DESTDIR=$ROOTDIR \ + MODULES_OVERRIDE= \ + WITHOUT_DEBUG_FILES=yes \ + WITHOUT_KERNEL_SYMBOLS=yes \ + installkernel +for dir in stand \ + lib/libc lib/libedit lib/ncurses \ + libexec/rtld-elf \ + bin/sh sbin/init sbin/shutdown; do + make -DNO_ROOT DESTDIR=$ROOTDIR INSTALL="install -U" \ + WITHOUT_MAN= \ + WITHOUT_PROFILE= \ + WITHOUT_TESTS= \ + WITHOUT_TOOLCHAIN= \ + -C $dir install +done + +# Put loader in standard EFI location. +mv $ROOTDIR/boot/loader.efi $ROOTDIR/efi/boot/BOOTx64.EFI + +# Configuration files. +cat > $ROOTDIR/boot/loader.conf < $ROOTDIR/etc/rc <&1 | tee boot.log +grep -q 'Hello world.' boot.log +echo OK From owner-svn-src-all@freebsd.org Wed Apr 10 13:42:38 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6ACA61583365; Wed, 10 Apr 2019 13:42:38 +0000 (UTC) (envelope-from trasz@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 0EBF17152D; Wed, 10 Apr 2019 13:42:38 +0000 (UTC) (envelope-from trasz@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 DB20223510; Wed, 10 Apr 2019 13:42:37 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3ADgb8u033390; Wed, 10 Apr 2019 13:42:37 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3ADgbXM033389; Wed, 10 Apr 2019 13:42:37 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201904101342.x3ADgbXM033389@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Wed, 10 Apr 2019 13:42:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346081 - head/cddl/usr.sbin/zfsd X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/cddl/usr.sbin/zfsd X-SVN-Commit-Revision: 346081 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0EBF17152D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 13:42:38 -0000 Author: trasz Date: Wed Apr 10 13:42:37 2019 New Revision: 346081 URL: https://svnweb.freebsd.org/changeset/base/346081 Log: Make zfsd(8) build obey CFLAGS. Reviewed by: imp Obtained from: CheriBSD MFC after: 2 weeks Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D19865 Modified: head/cddl/usr.sbin/zfsd/Makefile.common Modified: head/cddl/usr.sbin/zfsd/Makefile.common ============================================================================== --- head/cddl/usr.sbin/zfsd/Makefile.common Wed Apr 10 13:41:34 2019 (r346080) +++ head/cddl/usr.sbin/zfsd/Makefile.common Wed Apr 10 13:42:37 2019 (r346081) @@ -30,7 +30,7 @@ INCFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/ut INCFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/fs/zfs INCFLAGS+= -I${SRCTOP}/cddl/usr.sbin -CFLAGS= -g -DNEED_SOLARIS_BOOLEAN ${INCFLAGS} +CFLAGS+= -g -DNEED_SOLARIS_BOOLEAN ${INCFLAGS} LIBADD+= devdctl zfs zfs_core util geom bsdxml sbuf nvpair uutil From owner-svn-src-all@freebsd.org Wed Apr 10 14:00:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4D1CD15839DF; Wed, 10 Apr 2019 14:00:04 +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 DD9FC71F95; Wed, 10 Apr 2019 14:00:03 +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 B83E5236E1; Wed, 10 Apr 2019 14:00:03 +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 x3AE03P0038966; Wed, 10 Apr 2019 14:00:03 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AE03kM038965; Wed, 10 Apr 2019 14:00:03 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904101400.x3AE03kM038965@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Wed, 10 Apr 2019 14:00:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346082 - head/lib/libbe X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: head/lib/libbe X-SVN-Commit-Revision: 346082 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: DD9FC71F95 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 14:00:04 -0000 Author: kevans Date: Wed Apr 10 14:00:03 2019 New Revision: 346082 URL: https://svnweb.freebsd.org/changeset/base/346082 Log: libbe(3): use libzfs name validation for datasets/snapshot names Our home-rolled solution didn't quite capture all of the details, and we didn't actually validate snapshot names at all. zfs_name_valid captures the important details, but it doesn't necessarily expose the errors that we're wanting to see in the be_validate_* functions. Validating lengths independently, then the names, should make this a non-issue. Modified: head/lib/libbe/be.c Modified: head/lib/libbe/be.c ============================================================================== --- head/lib/libbe/be.c Wed Apr 10 13:42:37 2019 (r346081) +++ head/lib/libbe/be.c Wed Apr 10 14:00:03 2019 (r346082) @@ -593,6 +593,9 @@ be_validate_snap(libbe_handle_t *lbh, const char *snap if (strlen(snap_name) >= BE_MAXPATHLEN) return (BE_ERR_PATHLEN); + if (!zfs_name_valid(snap_name, ZFS_TYPE_SNAPSHOT)) + return (BE_ERR_INVALIDNAME); + if (!zfs_dataset_exists(lbh->lzh, snap_name, ZFS_TYPE_SNAPSHOT)) return (BE_ERR_NOENT); @@ -646,12 +649,6 @@ be_root_concat(libbe_handle_t *lbh, const char *name, int be_validate_name(libbe_handle_t *lbh, const char *name) { - for (int i = 0; *name; i++) { - char c = *(name++); - if (isalnum(c) || (c == '-') || (c == '_') || (c == '.')) - continue; - return (BE_ERR_INVALIDNAME); - } /* * Impose the additional restriction that the entire dataset name must @@ -659,6 +656,10 @@ be_validate_name(libbe_handle_t *lbh, const char *name */ if (strlen(lbh->root) + 1 + strlen(name) > MAXNAMELEN) return (BE_ERR_PATHLEN); + + if (!zfs_name_valid(name, ZFS_TYPE_DATASET)) + return (BE_ERR_INVALIDNAME); + return (BE_ERR_SUCCESS); } From owner-svn-src-all@freebsd.org Wed Apr 10 14:24:24 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EB89815841EC; Wed, 10 Apr 2019 14:24:23 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pl1-x62a.google.com (mail-pl1-x62a.google.com [IPv6:2607:f8b0:4864:20::62a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6E23572F19; Wed, 10 Apr 2019 14:24:23 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pl1-x62a.google.com with SMTP id t16so1549521plo.0; Wed, 10 Apr 2019 07:24:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=27yP2u+dkKIdLhpBBEiK1ST/z8TU4N8eVmWDtmbWrOo=; b=gAaTxf6S97atQecCcxLG4I0u5UBakj80wcg4fMwSUHLGHQ1pFqYHpweUCksilEOnP3 D5VIfkznvFhfdvgONHmZ7d+InunuofYyuPBJagSks/nt4UiZ78CgNEWx7B8knAb456Wn 8U4CEeHec3Vg5k2eOAgbJDJh5gDN8qvAo1vnr1PsXMbxJrfT1tclYFfTXU0mC/WXpKQo X1kLpD4S0rhGb5yZvhQAm/iKBrMEKtWfzp4E8Qrst46HxwkRk+0hfs9twYBK/6ETjDxH BUCUukk3/88WTOnzz1WZGsBMWMDfHQZOv+TsTxfIMy6AFzCB3o1aVxLREP6x0iWrlLJB PiQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=27yP2u+dkKIdLhpBBEiK1ST/z8TU4N8eVmWDtmbWrOo=; b=mYn1Qmdv3cOB7HvSOMJ0xWXtGhHW6vBp1WEyTAO2sCGAJFdICXKpPqp+Qa+iowQMye Y1Oim4wo4Q0DixwwFVh5loAJNlV7w+wBTORp5iS6yRrBgetBJ9lX7L45efHwaUN7G5dh JfjsYhAXLxz/0pqhZ5x3QKyrU8Pc+DcRlKsh+fMyL9iPEXQtE9RJ5zigSwNFRi1wykjL r+/ndIEHaOpvSut7Ah71b6hBhpgaDMwN/vZS14/irxKdHVpyueuFMX6+w7IShodfbXCM ktantAB+9VSVCP6orMbtTulNz69z3+NdWdMmaqsXvoAcC1pIl5fghVv78TZkqnESwJFO pl5w== X-Gm-Message-State: APjAAAVFRYqXzV77mJGdIlYosCyqnzDn2pPYDFz2eB/OtpW4ObfrNREY IJdd+RiLaGkm1qjVgTRqnFjdPGVo X-Google-Smtp-Source: APXvYqyKAGdOg11Sksu3IWcz3BAUkHL7qRxGF0wGRPpdeB7epPyE5kSgYLgiVMBqQndfU1mGSzGe3g== X-Received: by 2002:a17:902:be09:: with SMTP id r9mr42612355pls.215.1554906261835; Wed, 10 Apr 2019 07:24:21 -0700 (PDT) Received: from ?IPv6:2607:fb90:822a:6269:7883:c4a8:e284:632e? ([2607:fb90:822a:6269:7883:c4a8:e284:632e]) by smtp.gmail.com with ESMTPSA id z13sm51254044pgc.25.2019.04.10.07.24.20 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 10 Apr 2019 07:24:21 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r345708 - in head: lib/clang lib/libc++ lib/libc++experimental lib/libc++fs lib/libclang_rt lib/libcxxrt lib/libgcc_eh lib/libomp lib/ofed/libibnetdisc share/mk usr.bin/dtc usr.sbin/pmc From: Enji Cooper X-Mailer: iPhone Mail (16E227) In-Reply-To: Date: Wed, 10 Apr 2019 07:24:19 -0700 Cc: Enji Cooper , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <01C2E5E5-379D-4F06-87CB-2FB9E50C13EE@gmail.com> References: <201903291845.x2TIjRMb087865@repo.freebsd.org> To: Jan Beich X-Rspamd-Queue-Id: 6E23572F19 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.97)[-0.969,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 14:24:24 -0000 Hi Jan, Your approach is much more refined than my approach in this commit (I wa= s being myopic, focusing on src). Thank you! I=E2=80=99ll need to unwind my r= emoval of -std=3Dc++11 from several Makefiles in base and I want to doublech= eck some things. I=E2=80=99ll get back to you later on today about your patc= h, in its entirety. Could you please post a review on phabricator? Thanks! -Enji= From owner-svn-src-all@freebsd.org Wed Apr 10 15:38:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 746741585997; Wed, 10 Apr 2019 15:38:57 +0000 (UTC) (envelope-from emaste@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 0559E7642F; Wed, 10 Apr 2019 15:38:57 +0000 (UTC) (envelope-from emaste@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 08A3F24892; Wed, 10 Apr 2019 15:38:54 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AFcrLb092366; Wed, 10 Apr 2019 15:38:53 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AFcrQj092365; Wed, 10 Apr 2019 15:38:53 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201904101538.x3AFcrQj092365@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 10 Apr 2019 15:38:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346085 - head X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 346085 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0559E7642F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.949,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 15:38:57 -0000 Author: emaste Date: Wed Apr 10 15:38:53 2019 New Revision: 346085 URL: https://svnweb.freebsd.org/changeset/base/346085 Log: Add Cirrus CI config file to support CI builds (in downstream projects) Make use of the CI smoke test script added in r346080. Reviewed by: imp, lwhsu Sponsored by: The FreeBSD Foundation Added: head/.cirrus.yml (contents, props changed) Added: head/.cirrus.yml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/.cirrus.yml Wed Apr 10 15:38:53 2019 (r346085) @@ -0,0 +1,19 @@ +# $FreeBSD$ + +freebsd_instance: + image: freebsd-12-0-release-amd64 + cpu: 8 + memory: 24G + +env: + CIRRUS_CLONE_DEPTH: 1 + +task: + timeout_in: 90m + install_script: + - pkg install -y qemu-devel + - fetch https://people.freebsd.org/~emaste/OVMF.fd + script: + - make -j$(sysctl -n hw.ncpu) WITHOUT_TOOLCHAIN=yes buildworld buildkernel + test_script: + - sh tools/boot/ci-qemu-test.sh From owner-svn-src-all@freebsd.org Wed Apr 10 15:55:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1BA601586296; Wed, 10 Apr 2019 15:55:18 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 28D1A7772D; Wed, 10 Apr 2019 15:55:17 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id x3AFt9DZ080091 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 10 Apr 2019 18:55:12 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua x3AFt9DZ080091 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id x3AFt99B080090; Wed, 10 Apr 2019 18:55:09 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Wed, 10 Apr 2019 18:55:09 +0300 From: Konstantin Belousov To: Edward Tomasz Napierala Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346081 - head/cddl/usr.sbin/zfsd Message-ID: <20190410155509.GU1923@kib.kiev.ua> References: <201904101342.x3ADgbXM033389@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201904101342.x3ADgbXM033389@repo.freebsd.org> User-Agent: Mutt/1.11.4 (2019-03-13) X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on tom.home X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 15:55:18 -0000 On Wed, Apr 10, 2019 at 01:42:37PM +0000, Edward Tomasz Napierala wrote: > Author: trasz > Date: Wed Apr 10 13:42:37 2019 > New Revision: 346081 > URL: https://svnweb.freebsd.org/changeset/base/346081 > > Log: > Make zfsd(8) build obey CFLAGS. > > Reviewed by: imp > Obtained from: CheriBSD > MFC after: 2 weeks > Sponsored by: DARPA, AFRL > Differential Revision: https://reviews.freebsd.org/D19865 > > Modified: > head/cddl/usr.sbin/zfsd/Makefile.common > > Modified: head/cddl/usr.sbin/zfsd/Makefile.common > ============================================================================== > --- head/cddl/usr.sbin/zfsd/Makefile.common Wed Apr 10 13:41:34 2019 (r346080) > +++ head/cddl/usr.sbin/zfsd/Makefile.common Wed Apr 10 13:42:37 2019 (r346081) > @@ -30,7 +30,7 @@ INCFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/ut > INCFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/fs/zfs > INCFLAGS+= -I${SRCTOP}/cddl/usr.sbin > > -CFLAGS= -g -DNEED_SOLARIS_BOOLEAN ${INCFLAGS} > +CFLAGS+= -g -DNEED_SOLARIS_BOOLEAN ${INCFLAGS} Why the flags unconditionally set -g ? > > LIBADD+= devdctl zfs zfs_core util geom bsdxml sbuf nvpair uutil > From owner-svn-src-all@freebsd.org Wed Apr 10 16:09:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B305B1586847; Wed, 10 Apr 2019 16:09:07 +0000 (UTC) (envelope-from trasz@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 55A028024D; Wed, 10 Apr 2019 16:09:07 +0000 (UTC) (envelope-from trasz@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 26D0C24DCF; Wed, 10 Apr 2019 16:09:07 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AG96gI009095; Wed, 10 Apr 2019 16:09:06 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AG96FI009094; Wed, 10 Apr 2019 16:09:06 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201904101609.x3AG96FI009094@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Wed, 10 Apr 2019 16:09:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346086 - head/usr.sbin/autofs X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/usr.sbin/autofs X-SVN-Commit-Revision: 346086 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 55A028024D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.949,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 16:09:07 -0000 Author: trasz Date: Wed Apr 10 16:09:06 2019 New Revision: 346086 URL: https://svnweb.freebsd.org/changeset/base/346086 Log: Fix segfault that could occur on "automount -LL". MFC after: 2 weeks Sponsored by: DARPA, AFRL Modified: head/usr.sbin/autofs/common.c Modified: head/usr.sbin/autofs/common.c ============================================================================== --- head/usr.sbin/autofs/common.c Wed Apr 10 15:38:53 2019 (r346085) +++ head/usr.sbin/autofs/common.c Wed Apr 10 16:09:06 2019 (r346086) @@ -365,7 +365,7 @@ expand_ampersand(char *string, const char *key) * of characters before the '&'. */ before_len = i; - //assert(i + 1 < (int)strlen(string)); + //assert(i < (int)strlen(string)); ret = asprintf(&expanded, "%.*s%s%s", before_len, string, key, string + before_len + 1); @@ -380,6 +380,8 @@ expand_ampersand(char *string, const char *key) */ string = expanded; i = before_len + strlen(key); + if (i == (int)strlen(string)) + break; backslashed = false; //assert(i < (int)strlen(string)); } From owner-svn-src-all@freebsd.org Wed Apr 10 16:48:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EED011565116; Wed, 10 Apr 2019 16:48:46 +0000 (UTC) (envelope-from lwhsu@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 86B0481271; Wed, 10 Apr 2019 16:48:46 +0000 (UTC) (envelope-from lwhsu@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 2F69A254A5; Wed, 10 Apr 2019 16:48:46 +0000 (UTC) (envelope-from lwhsu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AGmkeo030220; Wed, 10 Apr 2019 16:48:46 GMT (envelope-from lwhsu@FreeBSD.org) Received: (from lwhsu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AGmkkI030219; Wed, 10 Apr 2019 16:48:46 GMT (envelope-from lwhsu@FreeBSD.org) Message-Id: <201904101648.x3AGmkkI030219@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: lwhsu set sender to lwhsu@FreeBSD.org using -f From: Li-Wen Hsu Date: Wed, 10 Apr 2019 16:48:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346087 - head/sys/modules/nfscommon X-SVN-Group: head X-SVN-Commit-Author: lwhsu X-SVN-Commit-Paths: head/sys/modules/nfscommon X-SVN-Commit-Revision: 346087 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 86B0481271 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.949,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 16:48:47 -0000 Author: lwhsu Date: Wed Apr 10 16:48:45 2019 New Revision: 346087 URL: https://svnweb.freebsd.org/changeset/base/346087 Log: Fix build in sys/modules/nfscommon Sponsored by: The FreeBSD Foundation Modified: head/sys/modules/nfscommon/Makefile Modified: head/sys/modules/nfscommon/Makefile ============================================================================== --- head/sys/modules/nfscommon/Makefile Wed Apr 10 16:09:06 2019 (r346086) +++ head/sys/modules/nfscommon/Makefile Wed Apr 10 16:48:45 2019 (r346087) @@ -7,6 +7,7 @@ SRCS= vnode_if.h \ nfs_commonkrpc.c \ nfs_commonport.c \ nfs_commonsubs.c \ + opt_inet.h \ opt_inet6.h \ opt_kgssapi.h \ opt_nfs.h \ From owner-svn-src-all@freebsd.org Wed Apr 10 17:56:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E05A81566AFB; Wed, 10 Apr 2019 17:56:12 +0000 (UTC) (envelope-from manu@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 655078348A; Wed, 10 Apr 2019 17:56:12 +0000 (UTC) (envelope-from manu@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 214FD26098; Wed, 10 Apr 2019 17:56:12 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AHuCbU066259; Wed, 10 Apr 2019 17:56:12 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AHu7v6066234; Wed, 10 Apr 2019 17:56:07 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201904101756.x3AHu7v6066234@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Wed, 10 Apr 2019 17:56:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r346089 - in vendor/device-tree/dist: Bindings Bindings/arm Bindings/arm/altera Bindings/arm/freescale Bindings/arm/marvell Bindings/arm/mediatek Bindings/arm/mrvl Bindings/arm/socionex... X-SVN-Group: vendor X-SVN-Commit-Author: manu X-SVN-Commit-Paths: in vendor/device-tree/dist: Bindings Bindings/arm Bindings/arm/altera Bindings/arm/freescale Bindings/arm/marvell Bindings/arm/mediatek Bindings/arm/mrvl Bindings/arm/socionext Bindings/arm/tegra Bind... X-SVN-Commit-Revision: 346089 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 655078348A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 17:56:13 -0000 Author: manu Date: Wed Apr 10 17:56:06 2019 New Revision: 346089 URL: https://svnweb.freebsd.org/changeset/base/346089 Log: Import DTS files from Linux 5.0 Added: vendor/device-tree/dist/Bindings/.gitignore vendor/device-tree/dist/Bindings/Makefile (contents, props changed) vendor/device-tree/dist/Bindings/arm/altera.yaml vendor/device-tree/dist/Bindings/arm/altera/socfpga-clk-manager.yaml vendor/device-tree/dist/Bindings/arm/calxeda.yaml vendor/device-tree/dist/Bindings/arm/cpus.yaml vendor/device-tree/dist/Bindings/arm/emtrion.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/freescale/fsl,imx7ulp-pm.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/primecell.yaml vendor/device-tree/dist/Bindings/arm/qcom.yaml vendor/device-tree/dist/Bindings/arm/rda.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/renesas,prr.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/rockchip.yaml vendor/device-tree/dist/Bindings/arm/sirf.yaml vendor/device-tree/dist/Bindings/arm/socionext/ vendor/device-tree/dist/Bindings/arm/socionext/cache-uniphier.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/socionext/uniphier.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/spear.yaml vendor/device-tree/dist/Bindings/arm/sti.yaml vendor/device-tree/dist/Bindings/arm/tegra.yaml vendor/device-tree/dist/Bindings/arm/ti/nspire.yaml vendor/device-tree/dist/Bindings/arm/ti/ti,davinci.yaml vendor/device-tree/dist/Bindings/arm/vt8500.yaml vendor/device-tree/dist/Bindings/arm/xilinx.yaml vendor/device-tree/dist/Bindings/arm/zte.yaml vendor/device-tree/dist/Bindings/clock/imx7ulp-clock.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/imx8mq-clock.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/imx8qxp-lpcg.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/qcom,gpucc.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/qcom,lpasscc.txt (contents, props changed) vendor/device-tree/dist/Bindings/cpufreq/cpufreq-qcom-hw.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/himax,hx8357d.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/auo,g101evn010 vendor/device-tree/dist/Bindings/display/panel/bananapi,s070wv20-ct16.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/cdtech,s043wq26h-ct7.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/cdtech,s070wv95-ct16.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/dlc,dlc1010gig.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/olimex,lcd-olinuxino.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/samsung,s6d16d0.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/truly,nt35597.txt (contents, props changed) vendor/device-tree/dist/Bindings/dma/8250_mtk_dma.txt (contents, props changed) vendor/device-tree/dist/Bindings/dma/uniphier-mio-dmac.txt (contents, props changed) vendor/device-tree/dist/Bindings/example-schema.yaml vendor/device-tree/dist/Bindings/firmware/intel,stratix10-svc.txt (contents, props changed) vendor/device-tree/dist/Bindings/fpga/intel-stratix10-soc-fpga-mgr.txt (contents, props changed) vendor/device-tree/dist/Bindings/fsi/ibm,p9-occ.txt (contents, props changed) vendor/device-tree/dist/Bindings/gpio/cdns,gpio.txt (contents, props changed) vendor/device-tree/dist/Bindings/hwlock/st,stm32-hwspinlock.txt (contents, props changed) vendor/device-tree/dist/Bindings/hwmon/adm1275.txt (contents, props changed) vendor/device-tree/dist/Bindings/i2c/i2c-gpio.yaml vendor/device-tree/dist/Bindings/i2c/ibm,p8-occ-hwmon.txt (contents, props changed) vendor/device-tree/dist/Bindings/i3c/ vendor/device-tree/dist/Bindings/i3c/cdns,i3c-master.txt (contents, props changed) vendor/device-tree/dist/Bindings/i3c/i3c.txt (contents, props changed) vendor/device-tree/dist/Bindings/i3c/snps,dw-i3c-master.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/adc/ad7949.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/adc/adc.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/adc/adi,ad7124.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/dac/ti,dac7311.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/light/vcnl4035.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/magnetometer/mag3110.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/magnetometer/pni,rm3100.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/potentiometer/mcp41010.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/resolver/ vendor/device-tree/dist/Bindings/iio/resolver/ad2s90.txt (contents, props changed) vendor/device-tree/dist/Bindings/input/touchscreen/raspberrypi,firmware-ts.txt (contents, props changed) vendor/device-tree/dist/Bindings/interrupt-controller/fsl,irqsteer.txt (contents, props changed) vendor/device-tree/dist/Bindings/interrupt-controller/rda,8810pl-intc.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/aspeed-video.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/i2c/sony,imx214.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/rockchip-vpu.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/sun6i-csi.txt (contents, props changed) vendor/device-tree/dist/Bindings/memory-controllers/nvidia,tegra20-emc.txt (contents, props changed) vendor/device-tree/dist/Bindings/memory-controllers/pl353-smc.txt (contents, props changed) vendor/device-tree/dist/Bindings/misc/pvpanic-mmio.txt (contents, props changed) vendor/device-tree/dist/Bindings/mmc/sdhci-am654.txt (contents, props changed) vendor/device-tree/dist/Bindings/mtd/partitions/redboot-fis.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/icplus-ip101ag.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/mediatek-dwmac.txt (contents, props changed) vendor/device-tree/dist/Bindings/pci/amlogic,meson-pcie.txt (contents, props changed) vendor/device-tree/dist/Bindings/pci/uniphier-pcie.txt (contents, props changed) vendor/device-tree/dist/Bindings/perf/nds32v3-pmu.txt (contents, props changed) vendor/device-tree/dist/Bindings/phy/fsl,imx8mq-usb-phy.txt (contents, props changed) vendor/device-tree/dist/Bindings/phy/phy-cadence-sierra.txt (contents, props changed) vendor/device-tree/dist/Bindings/phy/ti-phy-gmii-sel.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/actions,s700-pinctrl.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/pinctrl-mt6797.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/renesas,rza2-pinctrl.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/sc27xx-fg.txt (contents, props changed) vendor/device-tree/dist/Bindings/regulator/cirrus,lochnagar.txt (contents, props changed) vendor/device-tree/dist/Bindings/regulator/mcp16502-regulator.txt (contents, props changed) vendor/device-tree/dist/Bindings/reserved-memory/xen,shared-memory.txt (contents, props changed) vendor/device-tree/dist/Bindings/rtc/rtc.txt (contents, props changed) vendor/device-tree/dist/Bindings/serial/rda,8810pl-uart.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/amlogic/clk-measure.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/ak4118.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/amlogic,axg-spdifin.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/xlnx,i2s.txt (contents, props changed) vendor/device-tree/dist/Bindings/spi/atmel-quadspi.txt (contents, props changed) vendor/device-tree/dist/Bindings/spi/nuvoton,npcm-pspi.txt (contents, props changed) vendor/device-tree/dist/Bindings/spi/spi-mxic.txt (contents, props changed) vendor/device-tree/dist/Bindings/timer/arm,arch_timer.yaml vendor/device-tree/dist/Bindings/timer/arm,arch_timer_mmio.yaml vendor/device-tree/dist/Bindings/timer/arm,global_timer.yaml vendor/device-tree/dist/Bindings/timer/rda,8810pl-timer.txt (contents, props changed) vendor/device-tree/dist/Bindings/trivial-devices.yaml vendor/device-tree/dist/Bindings/ufs/cdns,ufshc.txt (contents, props changed) vendor/device-tree/dist/Bindings/watchdog/qcom,pm8916-wdt.txt (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/imx7ulp-clock.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/imx8-clock.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/imx8mq-clock.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/mt7629-clk.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/qcom,gpucc-sdm845.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/qcom,lpass-sdm845.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/suniv-ccu-f1c100s.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/dma/dw-dmac.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/firmware/ vendor/device-tree/dist/include/dt-bindings/firmware/imx/ vendor/device-tree/dist/include/dt-bindings/firmware/imx/rsrc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/pinctrl/k3.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/pinctrl/mt6797-pinfunc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/pinctrl/pads-imx8qm.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/pinctrl/pads-imx8qxp.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/pinctrl/r7s9210-pinctrl.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/power/imx8mq-power.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/power/rk3066-power.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/power/rk3188-power.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/regulator/active-semi,8945a-regulator.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/suniv-ccu-f1c100s.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/thermal/tegra194-bpmp-thermal.h (contents, props changed) vendor/device-tree/dist/src/arm/am33xx-l4.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/am437x-l4.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/aspeed-bmc-facebook-cmm.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm2836-rpi.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm4708-linksys-ea6500-v2.dts (contents, props changed) vendor/device-tree/dist/src/arm/dra7-l4.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/facebook-bmc-flash-layout.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6dl-emcon-avari.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6q-emcon-avari.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6qdl-emcon-avari.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6qdl-emcon.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6ul-pico-pi.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6ul-pico.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx7d-pico-hobbit.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx7d-sdb-reva.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx7ulp-evk.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx7ulp.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/omap5-l4.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/pxa300-raumfeld-common.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/pxa300-raumfeld-connector.dts (contents, props changed) vendor/device-tree/dist/src/arm/pxa300-raumfeld-controller.dts (contents, props changed) vendor/device-tree/dist/src/arm/pxa300-raumfeld-speaker-l.dts (contents, props changed) vendor/device-tree/dist/src/arm/pxa300-raumfeld-speaker-m.dts (contents, props changed) vendor/device-tree/dist/src/arm/pxa300-raumfeld-speaker-one.dts (contents, props changed) vendor/device-tree/dist/src/arm/pxa300-raumfeld-speaker-s.dts (contents, props changed) vendor/device-tree/dist/src/arm/pxa300-raumfeld-tuneable-clock.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/r8a7744-iwg20d-q7-dbcm-ca.dts (contents, props changed) vendor/device-tree/dist/src/arm/r8a7744-iwg20d-q7.dts (contents, props changed) vendor/device-tree/dist/src/arm/r8a7744-iwg20m.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/r8a7744.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/rda8810pl-orangepi-2g-iot.dts (contents, props changed) vendor/device-tree/dist/src/arm/rda8810pl-orangepi-i96.dts (contents, props changed) vendor/device-tree/dist/src/arm/rda8810pl.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/rk3188-bqedison2qc.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-h3-mapleboard-mp130.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-t3-cqa3t-bv3.dts (contents, props changed) vendor/device-tree/dist/src/arm/suniv-f1c100s-licheepi-nano.dts (contents, props changed) vendor/device-tree/dist/src/arm/suniv-f1c100s.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/vf610-bk4.dts (contents, props changed) vendor/device-tree/dist/src/arm/vf610-zii-scu4-aib.dts (contents, props changed) vendor/device-tree/dist/src/arm64/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts (contents, props changed) vendor/device-tree/dist/src/arm64/allwinner/sun50i-h5-emlid-neutis-n5.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/allwinner/sun50i-h6-orangepi-lite2.dts (contents, props changed) vendor/device-tree/dist/src/arm64/allwinner/sun50i-h6-orangepi.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s805x-libretech-ac.dts (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905d-phicomm-n1.dts (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/fsl-ls1012a-frwy.dts (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/fsl-ls1028a-qds.dts (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/fsl-ls1028a-rdb.dts (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/fsl-ls1028a.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/fsl-lx2160a-qds.dts (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/fsl-lx2160a-rdb.dts (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/fsl-lx2160a.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/imx8mq-evk.dts (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/imx8mq-pinfunc.h (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/imx8mq.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/hisilicon/hikey970-pinctrl.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/marvell/armada-8040-mcbin-singleshot.dts (contents, props changed) vendor/device-tree/dist/src/arm64/marvell/armada-8040-mcbin.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/msm8998-pins.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/pms405.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/qcs404-evb-1000.dts (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/qcs404-evb-4000.dts (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/qcs404-evb.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/qcs404.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/rockchip/rk3399-gru-scarlet-inx.dts (contents, props changed) vendor/device-tree/dist/src/arm64/rockchip/rk3399-gru-scarlet-kd.dts (contents, props changed) vendor/device-tree/dist/src/arm64/rockchip/rk3399-gru-scarlet.dtsi (contents, props changed) Deleted: vendor/device-tree/dist/Bindings/arm/altera.txt vendor/device-tree/dist/Bindings/arm/altera/socfpga-clk-manager.txt vendor/device-tree/dist/Bindings/arm/calxeda.txt vendor/device-tree/dist/Bindings/arm/cpus.txt vendor/device-tree/dist/Bindings/arm/davinci.txt vendor/device-tree/dist/Bindings/arm/nspire.txt vendor/device-tree/dist/Bindings/arm/primecell.txt vendor/device-tree/dist/Bindings/arm/qcom.txt vendor/device-tree/dist/Bindings/arm/rockchip.txt vendor/device-tree/dist/Bindings/arm/sirf.txt vendor/device-tree/dist/Bindings/arm/spear.txt vendor/device-tree/dist/Bindings/arm/sti.txt vendor/device-tree/dist/Bindings/arm/tegra.txt vendor/device-tree/dist/Bindings/arm/tegra/nvidia,tegra20-emc.txt vendor/device-tree/dist/Bindings/arm/uniphier/cache-uniphier.txt vendor/device-tree/dist/Bindings/arm/vt8500.txt vendor/device-tree/dist/Bindings/arm/xilinx.txt vendor/device-tree/dist/Bindings/arm/zte.txt vendor/device-tree/dist/Bindings/i2c/i2c-gpio.txt vendor/device-tree/dist/Bindings/mtd/atmel-quadspi.txt vendor/device-tree/dist/Bindings/timer/arm,arch_timer.txt vendor/device-tree/dist/Bindings/timer/arm,global_timer.txt vendor/device-tree/dist/Bindings/trivial-devices.txt vendor/device-tree/dist/src/arm/qcom-apq8064-arrow-sd-600eval-pins.dtsi vendor/device-tree/dist/src/arm/qcom-apq8064-arrow-sd-600eval.dts Modified: vendor/device-tree/dist/Bindings/arm/amlogic,scpi.txt vendor/device-tree/dist/Bindings/arm/amlogic.txt vendor/device-tree/dist/Bindings/arm/atmel-sysregs.txt vendor/device-tree/dist/Bindings/arm/cpu-capacity.txt vendor/device-tree/dist/Bindings/arm/freescale/fsl,scu.txt vendor/device-tree/dist/Bindings/arm/fsl.txt vendor/device-tree/dist/Bindings/arm/idle-states.txt vendor/device-tree/dist/Bindings/arm/marvell/ap806-system-controller.txt vendor/device-tree/dist/Bindings/arm/marvell/cp110-system-controller.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,apmixedsys.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,ethsys.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,infracfg.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,pciesys.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,pericfg.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,sgmiisys.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,ssusbsys.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,topckgen.txt vendor/device-tree/dist/Bindings/arm/mrvl/mrvl.txt vendor/device-tree/dist/Bindings/arm/shmobile.txt vendor/device-tree/dist/Bindings/arm/sp810.txt vendor/device-tree/dist/Bindings/arm/sunxi.txt vendor/device-tree/dist/Bindings/arm/tegra/nvidia,tegra186-pmc.txt vendor/device-tree/dist/Bindings/arm/topology.txt vendor/device-tree/dist/Bindings/bus/sun50i-de2-bus.txt vendor/device-tree/dist/Bindings/bus/ti-sysc.txt vendor/device-tree/dist/Bindings/clock/amlogic,gxbb-aoclkc.txt vendor/device-tree/dist/Bindings/clock/amlogic,gxbb-clkc.txt vendor/device-tree/dist/Bindings/clock/amlogic,meson8b-clkc.txt vendor/device-tree/dist/Bindings/clock/imx6q-clock.txt vendor/device-tree/dist/Bindings/clock/marvell,mmp2.txt vendor/device-tree/dist/Bindings/clock/qcom,gcc.txt vendor/device-tree/dist/Bindings/clock/qcom,rpmcc.txt vendor/device-tree/dist/Bindings/clock/qcom,videocc.txt vendor/device-tree/dist/Bindings/clock/qoriq-clock.txt vendor/device-tree/dist/Bindings/clock/sun8i-de2.txt vendor/device-tree/dist/Bindings/clock/sunxi-ccu.txt vendor/device-tree/dist/Bindings/connector/usb-connector.txt vendor/device-tree/dist/Bindings/crypto/arm-cryptocell.txt vendor/device-tree/dist/Bindings/crypto/fsl-dcp.txt vendor/device-tree/dist/Bindings/display/amlogic,meson-vpu.txt vendor/device-tree/dist/Bindings/display/arm,pl11x.txt vendor/device-tree/dist/Bindings/display/bridge/renesas,lvds.txt vendor/device-tree/dist/Bindings/display/msm/dsi.txt vendor/device-tree/dist/Bindings/display/msm/gpu.txt vendor/device-tree/dist/Bindings/display/msm/mdp4.txt vendor/device-tree/dist/Bindings/display/panel/tpo,tpg110.txt vendor/device-tree/dist/Bindings/display/renesas,du.txt vendor/device-tree/dist/Bindings/display/rockchip/dw_hdmi-rockchip.txt vendor/device-tree/dist/Bindings/display/sunxi/sun4i-drm.txt vendor/device-tree/dist/Bindings/dma/renesas,rcar-dmac.txt vendor/device-tree/dist/Bindings/dma/renesas,usb-dmac.txt vendor/device-tree/dist/Bindings/dma/snps-dma.txt vendor/device-tree/dist/Bindings/eeprom/at24.txt vendor/device-tree/dist/Bindings/gpio/gpio-mvebu.txt vendor/device-tree/dist/Bindings/gpio/gpio-omap.txt vendor/device-tree/dist/Bindings/gpio/gpio-vf610.txt vendor/device-tree/dist/Bindings/gpio/nxp,lpc1850-gpio.txt vendor/device-tree/dist/Bindings/gpio/renesas,gpio-rcar.txt vendor/device-tree/dist/Bindings/gpio/snps-dwapb-gpio.txt vendor/device-tree/dist/Bindings/gpu/arm,mali-utgard.txt vendor/device-tree/dist/Bindings/hwmon/lm90.txt vendor/device-tree/dist/Bindings/hwmon/ntc_thermistor.txt vendor/device-tree/dist/Bindings/hwmon/tmp108.txt vendor/device-tree/dist/Bindings/i2c/i2c-at91.txt vendor/device-tree/dist/Bindings/i2c/i2c-mux-ltc4306.txt vendor/device-tree/dist/Bindings/i2c/i2c-mux-pca954x.txt vendor/device-tree/dist/Bindings/i2c/i2c-owl.txt vendor/device-tree/dist/Bindings/i2c/i2c-rcar.txt vendor/device-tree/dist/Bindings/i2c/i2c-sh_mobile.txt vendor/device-tree/dist/Bindings/i2c/i2c-stm32.txt vendor/device-tree/dist/Bindings/i2c/nxp,pca9541.txt vendor/device-tree/dist/Bindings/iio/accel/lis302.txt vendor/device-tree/dist/Bindings/iio/adc/amlogic,meson-saradc.txt vendor/device-tree/dist/Bindings/iio/adc/qcom,spmi-vadc.txt vendor/device-tree/dist/Bindings/iio/adc/samsung,exynos-adc.txt vendor/device-tree/dist/Bindings/iio/adc/ti-adc128s052.txt vendor/device-tree/dist/Bindings/iio/imu/st_lsm6dsx.txt vendor/device-tree/dist/Bindings/iio/st-sensors.txt vendor/device-tree/dist/Bindings/interrupt-controller/allwinner,sun4i-ic.txt vendor/device-tree/dist/Bindings/interrupt-controller/arm,gic-v3.txt vendor/device-tree/dist/Bindings/interrupt-controller/mrvl,intc.txt vendor/device-tree/dist/Bindings/interrupt-controller/st,stm32-exti.txt vendor/device-tree/dist/Bindings/iommu/arm,smmu.txt vendor/device-tree/dist/Bindings/iommu/renesas,ipmmu-vmsa.txt vendor/device-tree/dist/Bindings/mailbox/nvidia,tegra186-hsp.txt vendor/device-tree/dist/Bindings/media/cedrus.txt vendor/device-tree/dist/Bindings/media/i2c/mt9m111.txt vendor/device-tree/dist/Bindings/media/qcom,venus.txt vendor/device-tree/dist/Bindings/media/rcar_vin.txt vendor/device-tree/dist/Bindings/media/renesas,rcar-csi2.txt vendor/device-tree/dist/Bindings/media/spi/sony-cxd2880.txt vendor/device-tree/dist/Bindings/memory-controllers/synopsys.txt vendor/device-tree/dist/Bindings/mfd/axp20x.txt vendor/device-tree/dist/Bindings/misc/fsl,qoriq-mc.txt vendor/device-tree/dist/Bindings/mmc/arasan,sdhci.txt vendor/device-tree/dist/Bindings/mmc/fsl-imx-esdhc.txt vendor/device-tree/dist/Bindings/mmc/sdhci-msm.txt vendor/device-tree/dist/Bindings/mmc/sdhci-omap.txt vendor/device-tree/dist/Bindings/mmc/tmio_mmc.txt vendor/device-tree/dist/Bindings/mtd/mtd-physmap.txt vendor/device-tree/dist/Bindings/net/broadcom-bluetooth.txt vendor/device-tree/dist/Bindings/net/can/fsl-flexcan.txt vendor/device-tree/dist/Bindings/net/can/xilinx_can.txt vendor/device-tree/dist/Bindings/net/cpsw.txt vendor/device-tree/dist/Bindings/net/dsa/ksz.txt vendor/device-tree/dist/Bindings/net/dwmac-sun8i.txt vendor/device-tree/dist/Bindings/net/renesas,ravb.txt vendor/device-tree/dist/Bindings/net/wireless/qcom,ath10k.txt vendor/device-tree/dist/Bindings/nvmem/amlogic-efuse.txt vendor/device-tree/dist/Bindings/pci/fsl,imx6q-pcie.txt vendor/device-tree/dist/Bindings/pci/host-generic-pci.txt vendor/device-tree/dist/Bindings/pci/layerscape-pci.txt vendor/device-tree/dist/Bindings/pci/mediatek-pcie.txt vendor/device-tree/dist/Bindings/phy/qcom-qmp-phy.txt vendor/device-tree/dist/Bindings/phy/sun4i-usb-phy.txt vendor/device-tree/dist/Bindings/pinctrl/allwinner,sunxi-pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/brcm,bcm4708-pinmux.txt vendor/device-tree/dist/Bindings/pinctrl/fsl,imx7ulp-pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/mscc,ocelot-pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/pinctrl-mt7622.txt vendor/device-tree/dist/Bindings/pinctrl/qcom,pmic-gpio.txt vendor/device-tree/dist/Bindings/pinctrl/st,stm32-pinctrl.txt vendor/device-tree/dist/Bindings/power/fsl,imx-gpcv2.txt vendor/device-tree/dist/Bindings/power/reset/gpio-poweroff.txt vendor/device-tree/dist/Bindings/power/supply/axp20x_ac_power.txt vendor/device-tree/dist/Bindings/power/supply/battery.txt vendor/device-tree/dist/Bindings/power/supply/bq24190.txt vendor/device-tree/dist/Bindings/pwm/renesas,pwm-rcar.txt vendor/device-tree/dist/Bindings/regulator/act8945a-regulator.txt vendor/device-tree/dist/Bindings/regulator/regulator.txt vendor/device-tree/dist/Bindings/reset/socfpga-reset.txt vendor/device-tree/dist/Bindings/reset/uniphier-reset.txt vendor/device-tree/dist/Bindings/rng/mtk-rng.txt vendor/device-tree/dist/Bindings/rtc/abracon,abx80x.txt vendor/device-tree/dist/Bindings/rtc/nxp,rtc-2123.txt vendor/device-tree/dist/Bindings/rtc/pcf85363.txt vendor/device-tree/dist/Bindings/rtc/rtc-ds1307.txt vendor/device-tree/dist/Bindings/rtc/sun6i-rtc.txt vendor/device-tree/dist/Bindings/serial/8250.txt vendor/device-tree/dist/Bindings/serial/fsl-lpuart.txt vendor/device-tree/dist/Bindings/serial/lantiq_asc.txt vendor/device-tree/dist/Bindings/serial/renesas,sci-serial.txt vendor/device-tree/dist/Bindings/serial/rs485.txt vendor/device-tree/dist/Bindings/soc/bcm/brcm,bcm2835-vchiq.txt vendor/device-tree/dist/Bindings/soc/qcom/qcom,glink.txt vendor/device-tree/dist/Bindings/soc/qcom/qcom,smd-rpm.txt vendor/device-tree/dist/Bindings/soc/qcom/qcom,smp2p.txt vendor/device-tree/dist/Bindings/soc/rockchip/power_domain.txt vendor/device-tree/dist/Bindings/sound/ak4104.txt vendor/device-tree/dist/Bindings/sound/audio-graph-card.txt vendor/device-tree/dist/Bindings/sound/audio-graph-scu-card.txt vendor/device-tree/dist/Bindings/sound/cs4270.txt vendor/device-tree/dist/Bindings/sound/davinci-mcasp-audio.txt vendor/device-tree/dist/Bindings/sound/dmic.txt vendor/device-tree/dist/Bindings/sound/fsl-sai.txt vendor/device-tree/dist/Bindings/sound/omap-mcpdm.txt vendor/device-tree/dist/Bindings/sound/pcm3060.txt vendor/device-tree/dist/Bindings/sound/qcom,q6asm.txt vendor/device-tree/dist/Bindings/sound/renesas,rsnd.txt vendor/device-tree/dist/Bindings/sound/rt5631.txt vendor/device-tree/dist/Bindings/sound/rt5663.txt vendor/device-tree/dist/Bindings/sound/simple-amplifier.txt vendor/device-tree/dist/Bindings/sound/simple-card.txt vendor/device-tree/dist/Bindings/sound/simple-scu-card.txt vendor/device-tree/dist/Bindings/sound/sun50i-codec-analog.txt vendor/device-tree/dist/Bindings/spi/omap-spi.txt vendor/device-tree/dist/Bindings/spi/sh-msiof.txt vendor/device-tree/dist/Bindings/spi/spi-fsl-lpspi.txt vendor/device-tree/dist/Bindings/spi/spi-mt65xx.txt vendor/device-tree/dist/Bindings/spi/spi-pxa2xx.txt vendor/device-tree/dist/Bindings/spi/spi-rspi.txt vendor/device-tree/dist/Bindings/spi/spi-uniphier.txt vendor/device-tree/dist/Bindings/sram/sunxi-sram.txt vendor/device-tree/dist/Bindings/thermal/nvidia,tegra186-bpmp-thermal.txt vendor/device-tree/dist/Bindings/thermal/rcar-gen3-thermal.txt vendor/device-tree/dist/Bindings/thermal/rcar-thermal.txt vendor/device-tree/dist/Bindings/timer/amlogic,meson6-timer.txt vendor/device-tree/dist/Bindings/timer/mrvl,mmp-timer.txt vendor/device-tree/dist/Bindings/timer/renesas,cmt.txt vendor/device-tree/dist/Bindings/timer/rockchip,rk-timer.txt vendor/device-tree/dist/Bindings/ufs/ufshcd-pltfrm.txt vendor/device-tree/dist/Bindings/usb/ci-hdrc-usb2.txt vendor/device-tree/dist/Bindings/usb/dwc3.txt vendor/device-tree/dist/Bindings/usb/nvidia,tegra124-xusb.txt vendor/device-tree/dist/Bindings/vendor-prefixes.txt vendor/device-tree/dist/Bindings/watchdog/mtk-wdt.txt vendor/device-tree/dist/Bindings/watchdog/renesas-wdt.txt vendor/device-tree/dist/Bindings/watchdog/sunxi-wdt.txt vendor/device-tree/dist/include/dt-bindings/clock/bcm2835-aux.h vendor/device-tree/dist/include/dt-bindings/clock/bcm2835.h vendor/device-tree/dist/include/dt-bindings/clock/gxbb-clkc.h vendor/device-tree/dist/include/dt-bindings/clock/imx6qdl-clock.h vendor/device-tree/dist/include/dt-bindings/clock/meson8b-clkc.h vendor/device-tree/dist/include/dt-bindings/clock/qcom,gcc-msm8998.h vendor/device-tree/dist/include/dt-bindings/clock/qcom,gcc-sdm845.h vendor/device-tree/dist/include/dt-bindings/clock/qcom,rpmcc.h vendor/device-tree/dist/include/dt-bindings/clock/r8a7795-cpg-mssr.h vendor/device-tree/dist/include/dt-bindings/clock/r8a7796-cpg-mssr.h vendor/device-tree/dist/include/dt-bindings/clock/r8a77995-cpg-mssr.h vendor/device-tree/dist/include/dt-bindings/clock/rk3328-cru.h vendor/device-tree/dist/include/dt-bindings/clock/sun8i-de2.h vendor/device-tree/dist/include/dt-bindings/gpio/tegra186-gpio.h vendor/device-tree/dist/include/dt-bindings/input/linux-event-codes.h vendor/device-tree/dist/include/dt-bindings/mailbox/tegra186-hsp.h vendor/device-tree/dist/include/dt-bindings/media/xilinx-vip.h vendor/device-tree/dist/include/dt-bindings/pinctrl/bcm2835.h vendor/device-tree/dist/include/dt-bindings/power/r8a77970-sysc.h vendor/device-tree/dist/include/dt-bindings/power/r8a77980-sysc.h vendor/device-tree/dist/include/dt-bindings/power/raspberrypi-power.h vendor/device-tree/dist/include/dt-bindings/reset/amlogic,meson-axg-reset.h vendor/device-tree/dist/include/dt-bindings/reset/sun8i-de2.h vendor/device-tree/dist/include/dt-bindings/sound/qcom,q6afe.h vendor/device-tree/dist/src/arm/am335x-bone-common.dtsi vendor/device-tree/dist/src/arm/am335x-boneblue.dts vendor/device-tree/dist/src/arm/am335x-cm-t335.dts vendor/device-tree/dist/src/arm/am335x-evm.dts vendor/device-tree/dist/src/arm/am335x-evmsk.dts vendor/device-tree/dist/src/arm/am335x-osd3358-sm-red.dts vendor/device-tree/dist/src/arm/am335x-pdu001.dts vendor/device-tree/dist/src/arm/am335x-shc.dts vendor/device-tree/dist/src/arm/am33xx-clocks.dtsi vendor/device-tree/dist/src/arm/am33xx.dtsi vendor/device-tree/dist/src/arm/am3517-evm.dts vendor/device-tree/dist/src/arm/am4372.dtsi vendor/device-tree/dist/src/arm/am437x-gp-evm.dts vendor/device-tree/dist/src/arm/am43xx-clocks.dtsi vendor/device-tree/dist/src/arm/am57xx-beagle-x15-common.dtsi vendor/device-tree/dist/src/arm/arm-realview-pbx.dtsi vendor/device-tree/dist/src/arm/armada-xp-db.dts vendor/device-tree/dist/src/arm/armada-xp-gp.dts vendor/device-tree/dist/src/arm/armada-xp-lenovo-ix4-300d.dts vendor/device-tree/dist/src/arm/aspeed-bmc-arm-centriq2400-rep.dts vendor/device-tree/dist/src/arm/aspeed-bmc-intel-s2600wf.dts vendor/device-tree/dist/src/arm/aspeed-bmc-opp-lanyang.dts vendor/device-tree/dist/src/arm/aspeed-bmc-opp-palmetto.dts vendor/device-tree/dist/src/arm/aspeed-bmc-opp-romulus.dts vendor/device-tree/dist/src/arm/aspeed-bmc-opp-witherspoon.dts vendor/device-tree/dist/src/arm/aspeed-bmc-portwell-neptune.dts vendor/device-tree/dist/src/arm/at91-nattis-2-natte-2.dts vendor/device-tree/dist/src/arm/at91-sama5d27_som1_ek.dts vendor/device-tree/dist/src/arm/at91-sama5d2_ptc_ek.dts vendor/device-tree/dist/src/arm/at91-sama5d2_xplained.dts vendor/device-tree/dist/src/arm/at91-sama5d4ek.dts vendor/device-tree/dist/src/arm/at91sam9260.dtsi vendor/device-tree/dist/src/arm/at91sam9261.dtsi vendor/device-tree/dist/src/arm/at91sam9263.dtsi vendor/device-tree/dist/src/arm/at91sam9g15.dtsi vendor/device-tree/dist/src/arm/at91sam9g20.dtsi vendor/device-tree/dist/src/arm/at91sam9g25.dtsi vendor/device-tree/dist/src/arm/at91sam9g25ek.dts vendor/device-tree/dist/src/arm/at91sam9g35.dtsi vendor/device-tree/dist/src/arm/at91sam9rl.dtsi vendor/device-tree/dist/src/arm/at91sam9x25.dtsi vendor/device-tree/dist/src/arm/at91sam9x35.dtsi vendor/device-tree/dist/src/arm/at91sam9x5.dtsi vendor/device-tree/dist/src/arm/at91sam9x5_can.dtsi vendor/device-tree/dist/src/arm/at91sam9x5_isi.dtsi vendor/device-tree/dist/src/arm/at91sam9x5_lcd.dtsi vendor/device-tree/dist/src/arm/at91sam9x5_macb0.dtsi vendor/device-tree/dist/src/arm/at91sam9x5_macb1.dtsi vendor/device-tree/dist/src/arm/at91sam9x5_usart3.dtsi vendor/device-tree/dist/src/arm/axp81x.dtsi vendor/device-tree/dist/src/arm/bcm-nsp.dtsi vendor/device-tree/dist/src/arm/bcm2835-rpi-zero-w.dts vendor/device-tree/dist/src/arm/bcm2835-rpi-zero.dts vendor/device-tree/dist/src/arm/bcm2835-rpi.dtsi vendor/device-tree/dist/src/arm/bcm2836-rpi-2-b.dts vendor/device-tree/dist/src/arm/bcm2837-rpi-3-b-plus.dts vendor/device-tree/dist/src/arm/bcm2837-rpi-3-b.dts vendor/device-tree/dist/src/arm/bcm2837-rpi-cm3.dtsi vendor/device-tree/dist/src/arm/bcm47081.dtsi vendor/device-tree/dist/src/arm/bcm4709.dtsi vendor/device-tree/dist/src/arm/bcm47094.dtsi vendor/device-tree/dist/src/arm/bcm47189-tenda-ac9.dts vendor/device-tree/dist/src/arm/bcm5301x.dtsi vendor/device-tree/dist/src/arm/bcm53573.dtsi vendor/device-tree/dist/src/arm/bcm63138.dtsi vendor/device-tree/dist/src/arm/bcm958522er.dts vendor/device-tree/dist/src/arm/bcm958525er.dts vendor/device-tree/dist/src/arm/bcm958525xmc.dts vendor/device-tree/dist/src/arm/bcm958622hr.dts vendor/device-tree/dist/src/arm/bcm958623hr.dts vendor/device-tree/dist/src/arm/bcm958625hr.dts vendor/device-tree/dist/src/arm/bcm958625k.dts vendor/device-tree/dist/src/arm/bcm963138dvt.dts vendor/device-tree/dist/src/arm/bcm988312hr.dts vendor/device-tree/dist/src/arm/da850-evm.dts vendor/device-tree/dist/src/arm/da850-lcdk.dts vendor/device-tree/dist/src/arm/da850.dtsi vendor/device-tree/dist/src/arm/dra7-evm-common.dtsi vendor/device-tree/dist/src/arm/dra7.dtsi vendor/device-tree/dist/src/arm/dra72-evm-common.dtsi vendor/device-tree/dist/src/arm/dra72x.dtsi vendor/device-tree/dist/src/arm/dra74x.dtsi vendor/device-tree/dist/src/arm/dra76x.dtsi vendor/device-tree/dist/src/arm/dra7xx-clocks.dtsi vendor/device-tree/dist/src/arm/emev2.dtsi vendor/device-tree/dist/src/arm/exynos3250-artik5.dtsi vendor/device-tree/dist/src/arm/exynos3250-monk.dts vendor/device-tree/dist/src/arm/exynos3250-rinato.dts vendor/device-tree/dist/src/arm/exynos3250.dtsi vendor/device-tree/dist/src/arm/exynos4210-trats.dts vendor/device-tree/dist/src/arm/exynos4210.dtsi vendor/device-tree/dist/src/arm/exynos4412-itop-scp-core.dtsi vendor/device-tree/dist/src/arm/exynos4412-midas.dtsi vendor/device-tree/dist/src/arm/exynos4412-odroid-common.dtsi vendor/device-tree/dist/src/arm/exynos4412-odroidu3.dts vendor/device-tree/dist/src/arm/exynos4412-prime.dtsi vendor/device-tree/dist/src/arm/exynos4412.dtsi vendor/device-tree/dist/src/arm/exynos5250-arndale.dts vendor/device-tree/dist/src/arm/exynos5250.dtsi vendor/device-tree/dist/src/arm/exynos5420-arndale-octa.dts vendor/device-tree/dist/src/arm/exynos5420-pinctrl.dtsi vendor/device-tree/dist/src/arm/exynos5420-smdk5420.dts vendor/device-tree/dist/src/arm/exynos5422-odroid-core.dtsi vendor/device-tree/dist/src/arm/exynos5422-odroidhc1.dts vendor/device-tree/dist/src/arm/exynos5422-odroidxu3-audio.dtsi vendor/device-tree/dist/src/arm/exynos5422-odroidxu3-common.dtsi vendor/device-tree/dist/src/arm/exynos5422-odroidxu4.dts vendor/device-tree/dist/src/arm/gemini-dlink-dir-685.dts vendor/device-tree/dist/src/arm/gemini-dlink-dns-313.dts vendor/device-tree/dist/src/arm/gemini-nas4220b.dts vendor/device-tree/dist/src/arm/gemini-rut1xx.dts vendor/device-tree/dist/src/arm/gemini-sl93512r.dts vendor/device-tree/dist/src/arm/gemini-sq201.dts vendor/device-tree/dist/src/arm/gemini-wbd111.dts vendor/device-tree/dist/src/arm/gemini-wbd222.dts vendor/device-tree/dist/src/arm/gemini.dtsi vendor/device-tree/dist/src/arm/imx1-ads.dts vendor/device-tree/dist/src/arm/imx1-apf9328.dts vendor/device-tree/dist/src/arm/imx1.dtsi vendor/device-tree/dist/src/arm/imx23-evk.dts vendor/device-tree/dist/src/arm/imx23-olinuxino.dts vendor/device-tree/dist/src/arm/imx23-sansa.dts vendor/device-tree/dist/src/arm/imx23-stmp378x_devb.dts vendor/device-tree/dist/src/arm/imx23-xfi3.dts vendor/device-tree/dist/src/arm/imx23.dtsi vendor/device-tree/dist/src/arm/imx25-eukrea-cpuimx25.dtsi vendor/device-tree/dist/src/arm/imx25-karo-tx25.dts vendor/device-tree/dist/src/arm/imx25-pdk.dts vendor/device-tree/dist/src/arm/imx25.dtsi vendor/device-tree/dist/src/arm/imx27-apf27.dts vendor/device-tree/dist/src/arm/imx27-eukrea-cpuimx27.dtsi vendor/device-tree/dist/src/arm/imx27-pdk.dts vendor/device-tree/dist/src/arm/imx27-phytec-phycard-s-som.dtsi vendor/device-tree/dist/src/arm/imx27-phytec-phycore-som.dtsi vendor/device-tree/dist/src/arm/imx27.dtsi vendor/device-tree/dist/src/arm/imx28-apf28.dts vendor/device-tree/dist/src/arm/imx28-apx4devkit.dts vendor/device-tree/dist/src/arm/imx28-cfa10036.dts vendor/device-tree/dist/src/arm/imx28-duckbill-2-485.dts vendor/device-tree/dist/src/arm/imx28-duckbill-2-enocean.dts vendor/device-tree/dist/src/arm/imx28-duckbill-2-spi.dts vendor/device-tree/dist/src/arm/imx28-duckbill-2.dts vendor/device-tree/dist/src/arm/imx28-duckbill.dts vendor/device-tree/dist/src/arm/imx28-eukrea-mbmx283lc.dts vendor/device-tree/dist/src/arm/imx28-eukrea-mbmx287lc.dts vendor/device-tree/dist/src/arm/imx28-evk.dts vendor/device-tree/dist/src/arm/imx28-m28.dtsi vendor/device-tree/dist/src/arm/imx28-m28cu3.dts vendor/device-tree/dist/src/arm/imx28-m28evk.dts vendor/device-tree/dist/src/arm/imx28-sps1.dts vendor/device-tree/dist/src/arm/imx28-ts4600.dts vendor/device-tree/dist/src/arm/imx28-tx28.dts vendor/device-tree/dist/src/arm/imx28.dtsi vendor/device-tree/dist/src/arm/imx31-bug.dts vendor/device-tree/dist/src/arm/imx31-lite.dts vendor/device-tree/dist/src/arm/imx31.dtsi vendor/device-tree/dist/src/arm/imx35-eukrea-cpuimx35.dtsi vendor/device-tree/dist/src/arm/imx35-pdk.dts vendor/device-tree/dist/src/arm/imx35.dtsi vendor/device-tree/dist/src/arm/imx50-evk.dts vendor/device-tree/dist/src/arm/imx50.dtsi vendor/device-tree/dist/src/arm/imx51-apf51.dts vendor/device-tree/dist/src/arm/imx51-babbage.dts vendor/device-tree/dist/src/arm/imx51-digi-connectcore-som.dtsi vendor/device-tree/dist/src/arm/imx51-eukrea-cpuimx51.dtsi vendor/device-tree/dist/src/arm/imx51-ts4800.dts vendor/device-tree/dist/src/arm/imx51-zii-rdu1.dts vendor/device-tree/dist/src/arm/imx51-zii-scu2-mezz.dts vendor/device-tree/dist/src/arm/imx51-zii-scu3-esb.dts vendor/device-tree/dist/src/arm/imx51.dtsi vendor/device-tree/dist/src/arm/imx53-ard.dts vendor/device-tree/dist/src/arm/imx53-cx9020.dts vendor/device-tree/dist/src/arm/imx53-m53.dtsi vendor/device-tree/dist/src/arm/imx53-qsb-common.dtsi vendor/device-tree/dist/src/arm/imx53-smd.dts vendor/device-tree/dist/src/arm/imx53-tqma53.dtsi vendor/device-tree/dist/src/arm/imx53-tx53.dtsi vendor/device-tree/dist/src/arm/imx53-usbarmory.dts vendor/device-tree/dist/src/arm/imx53-voipac-dmm-668.dtsi vendor/device-tree/dist/src/arm/imx53.dtsi vendor/device-tree/dist/src/arm/imx6dl-apf6dev.dts vendor/device-tree/dist/src/arm/imx6dl-aristainetos2_4.dts vendor/device-tree/dist/src/arm/imx6dl-aristainetos2_7.dts vendor/device-tree/dist/src/arm/imx6dl-aristainetos_4.dts vendor/device-tree/dist/src/arm/imx6dl-aristainetos_7.dts vendor/device-tree/dist/src/arm/imx6dl-colibri-eval-v3.dts vendor/device-tree/dist/src/arm/imx6dl-dfi-fs700-m60.dts vendor/device-tree/dist/src/arm/imx6dl-mamoj.dts vendor/device-tree/dist/src/arm/imx6dl-phytec-pfla02.dtsi vendor/device-tree/dist/src/arm/imx6dl-rex-basic.dts vendor/device-tree/dist/src/arm/imx6dl-riotboard.dts vendor/device-tree/dist/src/arm/imx6dl-ts4900.dts vendor/device-tree/dist/src/arm/imx6dl-ts7970.dts vendor/device-tree/dist/src/arm/imx6dl-wandboard-revb1.dts vendor/device-tree/dist/src/arm/imx6dl-wandboard-revd1.dts vendor/device-tree/dist/src/arm/imx6dl-wandboard.dts vendor/device-tree/dist/src/arm/imx6dl.dtsi vendor/device-tree/dist/src/arm/imx6q-apf6dev.dts vendor/device-tree/dist/src/arm/imx6q-arm2.dts vendor/device-tree/dist/src/arm/imx6q-b450v3.dts vendor/device-tree/dist/src/arm/imx6q-b650v3.dts vendor/device-tree/dist/src/arm/imx6q-b850v3.dts vendor/device-tree/dist/src/arm/imx6q-ba16.dtsi vendor/device-tree/dist/src/arm/imx6q-bx50v3.dtsi vendor/device-tree/dist/src/arm/imx6q-cm-fx6.dts vendor/device-tree/dist/src/arm/imx6q-dfi-fs700-m60.dts vendor/device-tree/dist/src/arm/imx6q-dhcom-som.dtsi vendor/device-tree/dist/src/arm/imx6q-display5.dtsi vendor/device-tree/dist/src/arm/imx6q-dmo-edmqmx6.dts vendor/device-tree/dist/src/arm/imx6q-evi.dts vendor/device-tree/dist/src/arm/imx6q-gk802.dts vendor/device-tree/dist/src/arm/imx6q-gw5400-a.dts vendor/device-tree/dist/src/arm/imx6q-h100.dts vendor/device-tree/dist/src/arm/imx6q-kp-tpc.dts vendor/device-tree/dist/src/arm/imx6q-marsboard.dts vendor/device-tree/dist/src/arm/imx6q-mccmon6.dts vendor/device-tree/dist/src/arm/imx6q-novena.dts vendor/device-tree/dist/src/arm/imx6q-phytec-pfla02.dtsi vendor/device-tree/dist/src/arm/imx6q-pistachio.dts vendor/device-tree/dist/src/arm/imx6q-rex-pro.dts vendor/device-tree/dist/src/arm/imx6q-sbc6x.dts vendor/device-tree/dist/src/arm/imx6q-tbs2910.dts vendor/device-tree/dist/src/arm/imx6q-ts4900.dts vendor/device-tree/dist/src/arm/imx6q-ts7970.dts vendor/device-tree/dist/src/arm/imx6q-wandboard-revb1.dts vendor/device-tree/dist/src/arm/imx6q-wandboard-revd1.dts vendor/device-tree/dist/src/arm/imx6q-wandboard.dts vendor/device-tree/dist/src/arm/imx6q-zii-rdu2.dts vendor/device-tree/dist/src/arm/imx6q.dtsi vendor/device-tree/dist/src/arm/imx6qdl-apalis.dtsi vendor/device-tree/dist/src/arm/imx6qdl-cubox-i.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw51xx.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw52xx.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw53xx.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw54xx.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw551x.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw552x.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw553x.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw560x.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw5903.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw5904.dtsi vendor/device-tree/dist/src/arm/imx6qdl-hummingboard.dtsi vendor/device-tree/dist/src/arm/imx6qdl-hummingboard2.dtsi vendor/device-tree/dist/src/arm/imx6qdl-icore-rqs.dtsi vendor/device-tree/dist/src/arm/imx6qdl-icore.dtsi vendor/device-tree/dist/src/arm/imx6qdl-nit6xlite.dtsi vendor/device-tree/dist/src/arm/imx6qdl-nitrogen6_max.dtsi vendor/device-tree/dist/src/arm/imx6qdl-nitrogen6_som2.dtsi vendor/device-tree/dist/src/arm/imx6qdl-nitrogen6x.dtsi vendor/device-tree/dist/src/arm/imx6qdl-phytec-pfla02.dtsi vendor/device-tree/dist/src/arm/imx6qdl-sabreauto.dtsi vendor/device-tree/dist/src/arm/imx6qdl-sabrelite.dtsi vendor/device-tree/dist/src/arm/imx6qdl-sabresd.dtsi vendor/device-tree/dist/src/arm/imx6qdl-tx6.dtsi vendor/device-tree/dist/src/arm/imx6qdl-udoo.dtsi vendor/device-tree/dist/src/arm/imx6qdl-var-dart.dtsi vendor/device-tree/dist/src/arm/imx6qdl-wandboard-revb1.dtsi vendor/device-tree/dist/src/arm/imx6qdl-wandboard-revc1.dtsi vendor/device-tree/dist/src/arm/imx6qdl-wandboard-revd1.dtsi vendor/device-tree/dist/src/arm/imx6qdl-zii-rdu2.dtsi vendor/device-tree/dist/src/arm/imx6qdl.dtsi vendor/device-tree/dist/src/arm/imx6qp-wandboard-revd1.dts vendor/device-tree/dist/src/arm/imx6qp-zii-rdu2.dts vendor/device-tree/dist/src/arm/imx6sl-evk.dts vendor/device-tree/dist/src/arm/imx6sl-warp.dts vendor/device-tree/dist/src/arm/imx6sl.dtsi vendor/device-tree/dist/src/arm/imx6sll-evk.dts vendor/device-tree/dist/src/arm/imx6sll.dtsi vendor/device-tree/dist/src/arm/imx6sx-nitrogen6sx.dts vendor/device-tree/dist/src/arm/imx6sx-sabreauto.dts vendor/device-tree/dist/src/arm/imx6sx-sdb-reva.dts vendor/device-tree/dist/src/arm/imx6sx-sdb-sai.dts vendor/device-tree/dist/src/arm/imx6sx-sdb.dts vendor/device-tree/dist/src/arm/imx6sx-sdb.dtsi vendor/device-tree/dist/src/arm/imx6sx-softing-vining-2000.dts vendor/device-tree/dist/src/arm/imx6sx-udoo-neo-basic.dts vendor/device-tree/dist/src/arm/imx6sx-udoo-neo-extended.dts vendor/device-tree/dist/src/arm/imx6sx-udoo-neo-full.dts vendor/device-tree/dist/src/arm/imx6sx.dtsi vendor/device-tree/dist/src/arm/imx6ul-14x14-evk.dtsi vendor/device-tree/dist/src/arm/imx6ul-ccimx6ulsbcpro.dts vendor/device-tree/dist/src/arm/imx6ul-ccimx6ulsom.dtsi vendor/device-tree/dist/src/arm/imx6ul-geam.dts vendor/device-tree/dist/src/arm/imx6ul-isiot.dtsi vendor/device-tree/dist/src/arm/imx6ul-litesom.dtsi vendor/device-tree/dist/src/arm/imx6ul-opos6ul.dtsi vendor/device-tree/dist/src/arm/imx6ul-pico-hobbit.dts vendor/device-tree/dist/src/arm/imx6ul-tx6ul.dtsi vendor/device-tree/dist/src/arm/imx6ul.dtsi vendor/device-tree/dist/src/arm/imx6ull-14x14-evk.dts vendor/device-tree/dist/src/arm/imx6ull-colibri-nonwifi.dtsi vendor/device-tree/dist/src/arm/imx6ull-colibri-wifi.dtsi vendor/device-tree/dist/src/arm/imx6ull.dtsi vendor/device-tree/dist/src/arm/imx6ulz-14x14-evk.dts vendor/device-tree/dist/src/arm/imx6ulz.dtsi vendor/device-tree/dist/src/arm/imx7d-cl-som-imx7.dts vendor/device-tree/dist/src/arm/imx7d-colibri-emmc.dtsi vendor/device-tree/dist/src/arm/imx7d-colibri.dtsi vendor/device-tree/dist/src/arm/imx7d-nitrogen7.dts vendor/device-tree/dist/src/arm/imx7d-pico-pi.dts vendor/device-tree/dist/src/arm/imx7d-pico.dtsi vendor/device-tree/dist/src/arm/imx7d-sdb.dts vendor/device-tree/dist/src/arm/imx7d.dtsi vendor/device-tree/dist/src/arm/imx7s-colibri.dtsi vendor/device-tree/dist/src/arm/imx7s-warp.dts vendor/device-tree/dist/src/arm/imx7s.dtsi vendor/device-tree/dist/src/arm/iwg20d-q7-common.dtsi vendor/device-tree/dist/src/arm/kirkwood-dnskw.dtsi vendor/device-tree/dist/src/arm/ls1021a-moxa-uc-8410a.dts vendor/device-tree/dist/src/arm/ls1021a.dtsi vendor/device-tree/dist/src/arm/meson.dtsi vendor/device-tree/dist/src/arm/meson6-atv1200.dts vendor/device-tree/dist/src/arm/meson6.dtsi vendor/device-tree/dist/src/arm/meson8-minix-neo-x8.dts vendor/device-tree/dist/src/arm/meson8.dtsi vendor/device-tree/dist/src/arm/meson8b-ec100.dts vendor/device-tree/dist/src/arm/meson8b-mxq.dts vendor/device-tree/dist/src/arm/meson8b-odroidc1.dts vendor/device-tree/dist/src/arm/meson8b.dtsi vendor/device-tree/dist/src/arm/meson8m2-mxiii-plus.dts vendor/device-tree/dist/src/arm/meson8m2.dtsi vendor/device-tree/dist/src/arm/mmp2.dtsi vendor/device-tree/dist/src/arm/motorola-cpcap-mapphone.dtsi vendor/device-tree/dist/src/arm/mt7623.dtsi vendor/device-tree/dist/src/arm/omap3-gta04.dtsi vendor/device-tree/dist/src/arm/omap3-n900.dts vendor/device-tree/dist/src/arm/omap3-n950-n9.dtsi vendor/device-tree/dist/src/arm/omap4-droid4-xt894.dts vendor/device-tree/dist/src/arm/omap4-l4.dtsi vendor/device-tree/dist/src/arm/omap4-sdp.dts vendor/device-tree/dist/src/arm/omap5-board-common.dtsi vendor/device-tree/dist/src/arm/omap5-cm-t54.dts vendor/device-tree/dist/src/arm/omap5.dtsi vendor/device-tree/dist/src/arm/pxa27x.dtsi vendor/device-tree/dist/src/arm/pxa2xx.dtsi vendor/device-tree/dist/src/arm/pxa3xx.dtsi vendor/device-tree/dist/src/arm/qcom-apq8084.dtsi vendor/device-tree/dist/src/arm/qcom-msm8974-lge-nexus5-hammerhead.dts vendor/device-tree/dist/src/arm/qcom-msm8974.dtsi vendor/device-tree/dist/src/arm/r8a7740.dtsi vendor/device-tree/dist/src/arm/r8a7743-iwg20m.dtsi vendor/device-tree/dist/src/arm/r8a7743.dtsi vendor/device-tree/dist/src/arm/r8a77470-iwg23s-sbc.dts vendor/device-tree/dist/src/arm/r8a77470.dtsi vendor/device-tree/dist/src/arm/r8a7790-lager.dts vendor/device-tree/dist/src/arm/r8a7791-koelsch.dts vendor/device-tree/dist/src/arm/r8a7791-porter.dts vendor/device-tree/dist/src/arm/r9a06g032.dtsi vendor/device-tree/dist/src/arm/rk3066a.dtsi vendor/device-tree/dist/src/arm/rk3188-px3-evb.dts vendor/device-tree/dist/src/arm/rk3188-radxarock.dts vendor/device-tree/dist/src/arm/rk3188.dtsi vendor/device-tree/dist/src/arm/rk322x.dtsi vendor/device-tree/dist/src/arm/rk3288-rock2-som.dtsi vendor/device-tree/dist/src/arm/rk3288-veyron-mickey.dts vendor/device-tree/dist/src/arm/rk3288.dtsi vendor/device-tree/dist/src/arm/rk3xxx.dtsi vendor/device-tree/dist/src/arm/rv1108.dtsi vendor/device-tree/dist/src/arm/s5pv210.dtsi vendor/device-tree/dist/src/arm/sama5d2.dtsi vendor/device-tree/dist/src/arm/sama5d4.dtsi vendor/device-tree/dist/src/arm/sh73a0.dtsi vendor/device-tree/dist/src/arm/socfpga.dtsi vendor/device-tree/dist/src/arm/socfpga_arria10.dtsi vendor/device-tree/dist/src/arm/socfpga_arria10_socdk.dtsi vendor/device-tree/dist/src/arm/socfpga_arria10_socdk_nand.dts vendor/device-tree/dist/src/arm/socfpga_arria10_socdk_qspi.dts vendor/device-tree/dist/src/arm/socfpga_arria10_socdk_sdmmc.dts vendor/device-tree/dist/src/arm/socfpga_arria5.dtsi vendor/device-tree/dist/src/arm/socfpga_arria5_socdk.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5.dtsi vendor/device-tree/dist/src/arm/socfpga_cyclone5_de0_nano_soc.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_mcv.dtsi vendor/device-tree/dist/src/arm/socfpga_cyclone5_mcvevk.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_socdk.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_sockit.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_socrates.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_sodia.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_vining_fpga.dts vendor/device-tree/dist/src/arm/socfpga_vt.dts vendor/device-tree/dist/src/arm/sun4i-a10-inet9f-rev03.dts vendor/device-tree/dist/src/arm/sun4i-a10-pcduino.dts vendor/device-tree/dist/src/arm/sun4i-a10.dtsi vendor/device-tree/dist/src/arm/sun5i-a10s-auxtek-t003.dts vendor/device-tree/dist/src/arm/sun5i-a10s-auxtek-t004.dts vendor/device-tree/dist/src/arm/sun5i-a10s-mk802.dts vendor/device-tree/dist/src/arm/sun5i-a10s-olinuxino-micro.dts vendor/device-tree/dist/src/arm/sun5i-a10s-r7-tv-dongle.dts vendor/device-tree/dist/src/arm/sun5i-a10s-wobo-i5.dts vendor/device-tree/dist/src/arm/sun5i-a10s.dtsi vendor/device-tree/dist/src/arm/sun5i-a13-empire-electronix-d709.dts vendor/device-tree/dist/src/arm/sun5i-a13-hsg-h702.dts vendor/device-tree/dist/src/arm/sun5i-a13-licheepi-one.dts vendor/device-tree/dist/src/arm/sun5i-a13-olinuxino-micro.dts vendor/device-tree/dist/src/arm/sun5i-a13-olinuxino.dts vendor/device-tree/dist/src/arm/sun5i-a13-utoo-p66.dts vendor/device-tree/dist/src/arm/sun5i-a13.dtsi vendor/device-tree/dist/src/arm/sun5i-gr8-chip-pro.dts vendor/device-tree/dist/src/arm/sun5i-gr8-evb.dts vendor/device-tree/dist/src/arm/sun5i-gr8.dtsi vendor/device-tree/dist/src/arm/sun5i-r8-chip.dts vendor/device-tree/dist/src/arm/sun5i-reference-design-tablet.dtsi vendor/device-tree/dist/src/arm/sun5i.dtsi vendor/device-tree/dist/src/arm/sun6i-a31-app4-evb1.dts vendor/device-tree/dist/src/arm/sun6i-a31-colombus.dts vendor/device-tree/dist/src/arm/sun6i-a31-hummingbird.dts vendor/device-tree/dist/src/arm/sun6i-a31-i7.dts vendor/device-tree/dist/src/arm/sun6i-a31-m9.dts vendor/device-tree/dist/src/arm/sun6i-a31-mele-a1000g-quad.dts vendor/device-tree/dist/src/arm/sun6i-a31.dtsi vendor/device-tree/dist/src/arm/sun6i-a31s-colorfly-e708-q1.dts vendor/device-tree/dist/src/arm/sun6i-a31s-cs908.dts vendor/device-tree/dist/src/arm/sun6i-a31s-inet-q972.dts vendor/device-tree/dist/src/arm/sun6i-a31s-primo81.dts vendor/device-tree/dist/src/arm/sun6i-a31s-sina31s-core.dtsi vendor/device-tree/dist/src/arm/sun6i-a31s-sina31s.dts vendor/device-tree/dist/src/arm/sun6i-a31s-sinovoip-bpi-m2.dts vendor/device-tree/dist/src/arm/sun6i-a31s-yones-toptech-bs1078-v2.dts vendor/device-tree/dist/src/arm/sun6i-reference-design-tablet.dtsi vendor/device-tree/dist/src/arm/sun7i-a20-bananapi-m1-plus.dts vendor/device-tree/dist/src/arm/sun7i-a20-bananapi.dts vendor/device-tree/dist/src/arm/sun7i-a20-bananapro.dts vendor/device-tree/dist/src/arm/sun7i-a20-cubieboard2.dts vendor/device-tree/dist/src/arm/sun7i-a20-cubietruck.dts vendor/device-tree/dist/src/arm/sun7i-a20-hummingbird.dts vendor/device-tree/dist/src/arm/sun7i-a20-i12-tvbox.dts vendor/device-tree/dist/src/arm/sun7i-a20-icnova-swac.dts vendor/device-tree/dist/src/arm/sun7i-a20-itead-ibox.dts vendor/device-tree/dist/src/arm/sun7i-a20-lamobo-r1.dts vendor/device-tree/dist/src/arm/sun7i-a20-m3.dts vendor/device-tree/dist/src/arm/sun7i-a20-mk808c.dts vendor/device-tree/dist/src/arm/sun7i-a20-olimex-som-evb-emmc.dts vendor/device-tree/dist/src/arm/sun7i-a20-olimex-som-evb.dts vendor/device-tree/dist/src/arm/sun7i-a20-olimex-som204-evb-emmc.dts vendor/device-tree/dist/src/arm/sun7i-a20-olimex-som204-evb.dts vendor/device-tree/dist/src/arm/sun7i-a20-olinuxino-lime.dts vendor/device-tree/dist/src/arm/sun7i-a20-olinuxino-lime2-emmc.dts vendor/device-tree/dist/src/arm/sun7i-a20-olinuxino-lime2.dts vendor/device-tree/dist/src/arm/sun7i-a20-olinuxino-micro-emmc.dts vendor/device-tree/dist/src/arm/sun7i-a20-olinuxino-micro.dts vendor/device-tree/dist/src/arm/sun7i-a20-orangepi-mini.dts vendor/device-tree/dist/src/arm/sun7i-a20-orangepi.dts vendor/device-tree/dist/src/arm/sun7i-a20-pcduino3-nano.dts vendor/device-tree/dist/src/arm/sun7i-a20-pcduino3.dts vendor/device-tree/dist/src/arm/sun7i-a20-wexler-tab7200.dts vendor/device-tree/dist/src/arm/sun7i-a20-wits-pro-a20-dkt.dts vendor/device-tree/dist/src/arm/sun7i-a20.dtsi vendor/device-tree/dist/src/arm/sun8i-a23-a33.dtsi vendor/device-tree/dist/src/arm/sun8i-a23-evb.dts vendor/device-tree/dist/src/arm/sun8i-a23-gt90h-v4.dts vendor/device-tree/dist/src/arm/sun8i-a23-polaroid-mid2407pxe03.dts vendor/device-tree/dist/src/arm/sun8i-a23-polaroid-mid2809pxe04.dts vendor/device-tree/dist/src/arm/sun8i-a23.dtsi vendor/device-tree/dist/src/arm/sun8i-a33-ga10h-v1.1.dts vendor/device-tree/dist/src/arm/sun8i-a33-inet-d978-rev2.dts vendor/device-tree/dist/src/arm/sun8i-a33-olinuxino.dts vendor/device-tree/dist/src/arm/sun8i-a33-sinlinx-sina33.dts vendor/device-tree/dist/src/arm/sun8i-a33.dtsi vendor/device-tree/dist/src/arm/sun8i-a83t-bananapi-m3.dts vendor/device-tree/dist/src/arm/sun8i-a83t-cubietruck-plus.dts vendor/device-tree/dist/src/arm/sun8i-a83t-tbs-a711.dts vendor/device-tree/dist/src/arm/sun8i-a83t.dtsi vendor/device-tree/dist/src/arm/sun8i-h3-beelink-x2.dts vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-plus.dts vendor/device-tree/dist/src/arm/sun8i-h3.dtsi vendor/device-tree/dist/src/arm/sun8i-q8-common.dtsi vendor/device-tree/dist/src/arm/sun8i-r16-bananapi-m2m.dts vendor/device-tree/dist/src/arm/sun8i-r16-nintendo-nes-classic.dts vendor/device-tree/dist/src/arm/sun8i-r16-parrot.dts vendor/device-tree/dist/src/arm/sun8i-r40.dtsi vendor/device-tree/dist/src/arm/sun8i-reference-design-tablet.dtsi vendor/device-tree/dist/src/arm/sun8i-v3s-licheepi-zero-dock.dts vendor/device-tree/dist/src/arm/sun8i-v3s-licheepi-zero.dts vendor/device-tree/dist/src/arm/sun8i-v3s.dtsi vendor/device-tree/dist/src/arm/sunxi-h3-h5.dtsi vendor/device-tree/dist/src/arm/sunxi-itead-core-common.dtsi vendor/device-tree/dist/src/arm/sunxi-reference-design-tablet.dtsi vendor/device-tree/dist/src/arm/tegra124-nyan.dtsi vendor/device-tree/dist/src/arm/tegra124.dtsi vendor/device-tree/dist/src/arm/tegra20.dtsi vendor/device-tree/dist/src/arm/uniphier-ld4.dtsi vendor/device-tree/dist/src/arm/uniphier-pro4.dtsi vendor/device-tree/dist/src/arm/uniphier-pxs2.dtsi vendor/device-tree/dist/src/arm/uniphier-sld8.dtsi vendor/device-tree/dist/src/arm/vexpress-v2m-rs1.dtsi vendor/device-tree/dist/src/arm/vexpress-v2m.dtsi vendor/device-tree/dist/src/arm/vexpress-v2p-ca15-tc1.dts vendor/device-tree/dist/src/arm/vexpress-v2p-ca15_a7.dts vendor/device-tree/dist/src/arm/vexpress-v2p-ca5s.dts vendor/device-tree/dist/src/arm/vexpress-v2p-ca9.dts vendor/device-tree/dist/src/arm/vf500-colibri.dtsi vendor/device-tree/dist/src/arm/vf500.dtsi vendor/device-tree/dist/src/arm/vf610-colibri.dtsi vendor/device-tree/dist/src/arm/vf610-cosmic.dts vendor/device-tree/dist/src/arm/vf610-twr.dts vendor/device-tree/dist/src/arm/vf610-zii-cfu1.dts vendor/device-tree/dist/src/arm/vf610-zii-dev.dtsi vendor/device-tree/dist/src/arm/vf610-zii-ssmb-spu3.dts vendor/device-tree/dist/src/arm/vf610m4-colibri.dts vendor/device-tree/dist/src/arm/vf610m4.dtsi vendor/device-tree/dist/src/arm/zynq-7000.dtsi vendor/device-tree/dist/src/arm64/allwinner/axp803.dtsi vendor/device-tree/dist/src/arm64/allwinner/sun50i-a64-bananapi-m64.dts vendor/device-tree/dist/src/arm64/allwinner/sun50i-a64-orangepi-win.dts vendor/device-tree/dist/src/arm64/allwinner/sun50i-a64-pine64.dts vendor/device-tree/dist/src/arm64/allwinner/sun50i-a64-pinebook.dts vendor/device-tree/dist/src/arm64/allwinner/sun50i-a64-sopine-baseboard.dts vendor/device-tree/dist/src/arm64/allwinner/sun50i-a64-sopine.dtsi vendor/device-tree/dist/src/arm64/allwinner/sun50i-a64.dtsi vendor/device-tree/dist/src/arm64/allwinner/sun50i-h5.dtsi vendor/device-tree/dist/src/arm64/allwinner/sun50i-h6-orangepi-one-plus.dts vendor/device-tree/dist/src/arm64/allwinner/sun50i-h6-pine-h64.dts vendor/device-tree/dist/src/arm64/allwinner/sun50i-h6.dtsi vendor/device-tree/dist/src/arm64/altera/socfpga_stratix10.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-axg-s400.dts vendor/device-tree/dist/src/arm64/amlogic/meson-axg.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gx-p23x-q20x.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gx.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-nanopi-k2.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-nexbox-a95x.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-odroidc2.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-p20x.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-vega-s95.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-wetek.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905d-p230.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905x-hwacom-amazetv.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905x-khadas-vim.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905x-libretech-cc.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905x-nexbox-a95x.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905x-p212.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905x-p212.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gxl.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gxm-khadas-vim2.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxm-nexbox-a1.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxm-rbox-pro.dts vendor/device-tree/dist/src/arm64/arm/rtsm_ve-aemv8a.dts vendor/device-tree/dist/src/arm64/arm/rtsm_ve-motherboard.dtsi vendor/device-tree/dist/src/arm64/arm/vexpress-v2f-1xv7-ca53x2.dts vendor/device-tree/dist/src/arm64/arm/vexpress-v2m-rs1.dtsi vendor/device-tree/dist/src/arm64/exynos/exynos5433-tm2-common.dtsi vendor/device-tree/dist/src/arm64/exynos/exynos5433-tmu.dtsi vendor/device-tree/dist/src/arm64/exynos/exynos5433.dtsi vendor/device-tree/dist/src/arm64/freescale/fsl-ls1012a.dtsi vendor/device-tree/dist/src/arm64/freescale/fsl-ls1043a-qds.dts vendor/device-tree/dist/src/arm64/freescale/fsl-ls1043a.dtsi vendor/device-tree/dist/src/arm64/freescale/fsl-ls1046a-qds.dts vendor/device-tree/dist/src/arm64/freescale/fsl-ls1046a-rdb.dts vendor/device-tree/dist/src/arm64/freescale/fsl-ls1046a.dtsi vendor/device-tree/dist/src/arm64/freescale/fsl-ls1088a.dtsi vendor/device-tree/dist/src/arm64/freescale/fsl-ls2088a.dtsi vendor/device-tree/dist/src/arm64/freescale/fsl-ls208xa-qds.dtsi vendor/device-tree/dist/src/arm64/freescale/fsl-ls208xa.dtsi vendor/device-tree/dist/src/arm64/hisilicon/hi3660-hikey960.dts vendor/device-tree/dist/src/arm64/hisilicon/hi3660.dtsi vendor/device-tree/dist/src/arm64/hisilicon/hi3670-hikey970.dts vendor/device-tree/dist/src/arm64/hisilicon/hi3670.dtsi vendor/device-tree/dist/src/arm64/hisilicon/hi3798cv200-poplar.dts vendor/device-tree/dist/src/arm64/hisilicon/hi6220-hikey.dts vendor/device-tree/dist/src/arm64/hisilicon/hi6220.dtsi vendor/device-tree/dist/src/arm64/marvell/armada-3720-espressobin.dts vendor/device-tree/dist/src/arm64/marvell/armada-37xx.dtsi vendor/device-tree/dist/src/arm64/marvell/armada-8040-clearfog-gt-8k.dts vendor/device-tree/dist/src/arm64/marvell/armada-8040-mcbin.dts vendor/device-tree/dist/src/arm64/marvell/armada-ap806.dtsi vendor/device-tree/dist/src/arm64/mediatek/mt7622.dtsi vendor/device-tree/dist/src/arm64/mediatek/mt8173.dtsi vendor/device-tree/dist/src/arm64/nvidia/tegra186-p2771-0000.dts vendor/device-tree/dist/src/arm64/nvidia/tegra186-p3310.dtsi vendor/device-tree/dist/src/arm64/nvidia/tegra186.dtsi vendor/device-tree/dist/src/arm64/nvidia/tegra194-p2888.dtsi vendor/device-tree/dist/src/arm64/nvidia/tegra194-p2972-0000.dts vendor/device-tree/dist/src/arm64/nvidia/tegra194.dtsi vendor/device-tree/dist/src/arm64/nvidia/tegra210-p2597.dtsi vendor/device-tree/dist/src/arm64/nvidia/tegra210.dtsi vendor/device-tree/dist/src/arm64/qcom/apq8096-db820c.dtsi vendor/device-tree/dist/src/arm64/qcom/msm8916-pins.dtsi vendor/device-tree/dist/src/arm64/qcom/msm8916.dtsi vendor/device-tree/dist/src/arm64/qcom/msm8996-pins.dtsi vendor/device-tree/dist/src/arm64/qcom/msm8996.dtsi vendor/device-tree/dist/src/arm64/qcom/msm8998-mtp.dtsi vendor/device-tree/dist/src/arm64/qcom/msm8998.dtsi vendor/device-tree/dist/src/arm64/qcom/pm8998.dtsi vendor/device-tree/dist/src/arm64/qcom/sdm845.dtsi vendor/device-tree/dist/src/arm64/renesas/r8a774a1.dtsi vendor/device-tree/dist/src/arm64/renesas/r8a7795-es1-salvator-x.dts vendor/device-tree/dist/src/arm64/renesas/r8a7795-es1.dtsi vendor/device-tree/dist/src/arm64/renesas/r8a7795-salvator-x.dts vendor/device-tree/dist/src/arm64/renesas/r8a7795-salvator-xs.dts vendor/device-tree/dist/src/arm64/renesas/r8a7795.dtsi vendor/device-tree/dist/src/arm64/renesas/r8a7796.dtsi vendor/device-tree/dist/src/arm64/renesas/r8a77965.dtsi vendor/device-tree/dist/src/arm64/renesas/r8a77970.dtsi vendor/device-tree/dist/src/arm64/renesas/r8a77980.dtsi vendor/device-tree/dist/src/arm64/renesas/r8a77990-ebisu.dts vendor/device-tree/dist/src/arm64/renesas/r8a77990.dtsi vendor/device-tree/dist/src/arm64/renesas/r8a77995-draak.dts vendor/device-tree/dist/src/arm64/renesas/r8a77995.dtsi vendor/device-tree/dist/src/arm64/renesas/salvator-common.dtsi vendor/device-tree/dist/src/arm64/renesas/ulcb.dtsi vendor/device-tree/dist/src/arm64/rockchip/rk3328-rock64.dts vendor/device-tree/dist/src/arm64/rockchip/rk3328.dtsi vendor/device-tree/dist/src/arm64/rockchip/rk3368.dtsi vendor/device-tree/dist/src/arm64/rockchip/rk3399-ficus.dts vendor/device-tree/dist/src/arm64/rockchip/rk3399-gru-bob.dts vendor/device-tree/dist/src/arm64/rockchip/rk3399-gru-chromebook.dtsi vendor/device-tree/dist/src/arm64/rockchip/rk3399-gru-kevin.dts vendor/device-tree/dist/src/arm64/rockchip/rk3399-gru.dtsi vendor/device-tree/dist/src/arm64/rockchip/rk3399-rock960.dts vendor/device-tree/dist/src/arm64/rockchip/rk3399-rockpro64.dts vendor/device-tree/dist/src/arm64/rockchip/rk3399-sapphire-excavator.dts vendor/device-tree/dist/src/arm64/rockchip/rk3399-sapphire.dtsi vendor/device-tree/dist/src/arm64/rockchip/rk3399.dtsi vendor/device-tree/dist/src/arm64/socionext/uniphier-ld20.dtsi vendor/device-tree/dist/src/arm64/sprd/sc9836.dtsi vendor/device-tree/dist/src/arm64/sprd/sc9860.dtsi vendor/device-tree/dist/src/arm64/ti/k3-am65-main.dtsi vendor/device-tree/dist/src/arm64/ti/k3-am65-mcu.dtsi vendor/device-tree/dist/src/arm64/ti/k3-am65-wakeup.dtsi vendor/device-tree/dist/src/arm64/ti/k3-am65.dtsi vendor/device-tree/dist/src/arm64/ti/k3-am654-base-board.dts vendor/device-tree/dist/src/arm64/xilinx/zynqmp-clk.dtsi vendor/device-tree/dist/src/arm64/xilinx/zynqmp-zcu100-revC.dts vendor/device-tree/dist/src/arm64/xilinx/zynqmp-zcu102-revA.dts vendor/device-tree/dist/src/arm64/xilinx/zynqmp-zcu106-revA.dts vendor/device-tree/dist/src/arm64/xilinx/zynqmp-zcu111-revA.dts vendor/device-tree/dist/src/arm64/xilinx/zynqmp.dtsi vendor/device-tree/dist/src/mips/img/boston.dts vendor/device-tree/dist/src/mips/ingenic/ci20.dts vendor/device-tree/dist/src/mips/ingenic/jz4740.dtsi vendor/device-tree/dist/src/mips/mti/malta.dts vendor/device-tree/dist/src/mips/xilfpga/nexys4ddr.dts vendor/device-tree/dist/src/nds32/ae3xx.dts vendor/device-tree/dist/src/powerpc/bamboo.dts vendor/device-tree/dist/src/powerpc/fsl/b4420si-pre.dtsi vendor/device-tree/dist/src/powerpc/fsl/b4860si-pre.dtsi vendor/device-tree/dist/src/powerpc/fsl/b4si-post.dtsi vendor/device-tree/dist/src/powerpc/fsl/mpc8641_hpcn.dts vendor/device-tree/dist/src/powerpc/fsl/mpc8641_hpcn_36b.dts vendor/device-tree/dist/src/powerpc/fsl/mpc8641si-post.dtsi vendor/device-tree/dist/src/powerpc/fsl/p1020rdb-pc.dtsi vendor/device-tree/dist/src/powerpc/fsl/p2041si-post.dtsi vendor/device-tree/dist/src/powerpc/fsl/p2041si-pre.dtsi vendor/device-tree/dist/src/powerpc/fsl/p3041si-post.dtsi vendor/device-tree/dist/src/powerpc/fsl/p3041si-pre.dtsi vendor/device-tree/dist/src/powerpc/fsl/p4080si-post.dtsi vendor/device-tree/dist/src/powerpc/fsl/p4080si-pre.dtsi vendor/device-tree/dist/src/powerpc/fsl/p5020si-pre.dtsi vendor/device-tree/dist/src/powerpc/fsl/p5040si-post.dtsi vendor/device-tree/dist/src/powerpc/fsl/p5040si-pre.dtsi vendor/device-tree/dist/src/powerpc/fsl/qoriq-clockgen1.dtsi vendor/device-tree/dist/src/powerpc/fsl/qoriq-clockgen2.dtsi vendor/device-tree/dist/src/powerpc/fsl/t1023si-post.dtsi vendor/device-tree/dist/src/powerpc/fsl/t102xsi-pre.dtsi vendor/device-tree/dist/src/powerpc/fsl/t1040si-post.dtsi vendor/device-tree/dist/src/powerpc/fsl/t104xsi-pre.dtsi vendor/device-tree/dist/src/powerpc/fsl/t2081si-post.dtsi vendor/device-tree/dist/src/powerpc/fsl/t208xsi-pre.dtsi vendor/device-tree/dist/src/powerpc/fsl/t4240si-post.dtsi vendor/device-tree/dist/src/powerpc/fsl/t4240si-pre.dtsi vendor/device-tree/dist/src/powerpc/mpc832x_rdb.dts vendor/device-tree/dist/src/xtensa/xtfpga.dtsi Added: vendor/device-tree/dist/Bindings/.gitignore ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/.gitignore Wed Apr 10 17:56:06 2019 (r346089) @@ -0,0 +1,2 @@ +*.example.dts +processed-schema.yaml Added: vendor/device-tree/dist/Bindings/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/Makefile Wed Apr 10 17:56:06 2019 (r346089) @@ -0,0 +1,31 @@ +# SPDX-License-Identifier: GPL-2.0 +DT_DOC_CHECKER ?= dt-doc-validate +DT_EXTRACT_EX ?= dt-extract-example +DT_MK_SCHEMA ?= dt-mk-schema +DT_MK_SCHEMA_FLAGS := $(if $(DT_SCHEMA_FILES), -u) + +quiet_cmd_chk_binding = CHKDT $(patsubst $(srctree)/%,%,$<) + cmd_chk_binding = $(DT_DOC_CHECKER) $< ; \ + $(DT_EXTRACT_EX) $< > $@ + +$(obj)/%.example.dts: $(src)/%.yaml FORCE + $(call if_changed,chk_binding) + +DT_TMP_SCHEMA := processed-schema.yaml +extra-y += $(DT_TMP_SCHEMA) + +quiet_cmd_mk_schema = SCHEMA $@ + cmd_mk_schema = $(DT_MK_SCHEMA) $(DT_MK_SCHEMA_FLAGS) -o $@ $(filter-out FORCE, $^) + +DT_DOCS = $(shell \ + cd $(srctree)/$(src) && \ + find * \( -name '*.yaml' ! -name $(DT_TMP_SCHEMA) \) \ + ) + +DT_SCHEMA_FILES ?= $(addprefix $(src)/,$(DT_DOCS)) + +extra-y += $(patsubst $(src)/%.yaml,%.example.dts, $(DT_SCHEMA_FILES)) +extra-y += $(patsubst $(src)/%.yaml,%.example.dtb, $(DT_SCHEMA_FILES)) + +$(obj)/$(DT_TMP_SCHEMA): $(DT_SCHEMA_FILES) FORCE + $(call if_changed,mk_schema) Added: vendor/device-tree/dist/Bindings/arm/altera.yaml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/altera.yaml Wed Apr 10 17:56:06 2019 (r346089) @@ -0,0 +1,20 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/arm/altera.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Altera's SoCFPGA platform device tree bindings + +maintainers: + - Dinh Nguyen + +properties: + compatible: + items: + - enum: + - altr,socfpga-cyclone5 + - altr,socfpga-arria5 + - altr,socfpga-arria10 + - const: altr,socfpga +... Added: vendor/device-tree/dist/Bindings/arm/altera/socfpga-clk-manager.yaml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/altera/socfpga-clk-manager.yaml Wed Apr 10 17:56:06 2019 (r346089) @@ -0,0 +1,31 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/arm/altera/socfpga-clk-manager.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Altera SOCFPGA Clock Manager + +maintainers: + - Dinh Nguyen + +description: test + +properties: + compatible: + items: + - const: altr,clk-mgr + reg: + maxItems: 1 + +required: + - compatible + +examples: + - | + clkmgr@ffd04000 { + compatible = "altr,clk-mgr"; + reg = <0xffd04000 0x1000>; + }; + +... Modified: vendor/device-tree/dist/Bindings/arm/amlogic,scpi.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/amlogic,scpi.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/amlogic,scpi.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -17,4 +17,11 @@ Required sub-node properties: - compatible : should be "amlogic,meson-gxbb-scp-shmem" for SRAM based shared memory on Amlogic GXBB SoC. +Sensor bindings for the sensors based on SCPI Message Protocol +-------------------------------------------------------------- +SCPI provides an API to access the various sensors on the SoC. + +Required properties: +- compatible : should be "amlogic,meson-gxbb-scpi-sensors". + [0] Documentation/devicetree/bindings/arm/arm,scpi.txt Modified: vendor/device-tree/dist/Bindings/arm/amlogic.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/amlogic.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/amlogic.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -91,8 +91,10 @@ Board compatible values (alphabetically, grouped by So - "amlogic,p230" (Meson gxl s905d) - "amlogic,p231" (Meson gxl s905d) + - "phicomm,n1" (Meson gxl s905d) - "amlogic,p241" (Meson gxl s805x) + - "libretech,aml-s805x-ac" (Meson gxl s805x) - "amlogic,p281" (Meson gxl s905w) - "oranth,tx3-mini" (Meson gxl s905w) Modified: vendor/device-tree/dist/Bindings/arm/atmel-sysregs.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/atmel-sysregs.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/atmel-sysregs.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -158,14 +158,24 @@ Security Module (SECUMOD) The Security Module macrocell provides all necessary secure functions to avoid voltage, temperature, frequency and mechanical attacks on the chip. It also -embeds secure memories that can be scrambled +embeds secure memories that can be scrambled. +The Security Module also offers the PIOBU pins which can be used as GPIO pins. +Note that they maintain their voltage during Backup/Self-refresh. + required properties: - compatible: Should be "atmel,-secumod", "syscon". can be "sama5d2". - reg: Should contain registers location and length +- gpio-controller: Marks the port as GPIO controller. +- #gpio-cells: There are 2. The pin number is the + first, the second represents additional + parameters such as GPIO_ACTIVE_HIGH/LOW. + secumod@fc040000 { compatible = "atmel,sama5d2-secumod", "syscon"; reg = <0xfc040000 0x100>; + gpio-controller; + #gpio-cells = <2>; }; Added: vendor/device-tree/dist/Bindings/arm/calxeda.yaml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/calxeda.yaml Wed Apr 10 17:56:06 2019 (r346089) @@ -0,0 +1,22 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/arm/calxeda.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Calxeda Platforms Device Tree Bindings + +maintainers: + - Rob Herring +description: |+ + Bindings for boards with Calxeda Cortex-A9 based ECX-1000 (Highbank) SOC + or Cortex-A15 based ECX-2000 SOCs + +properties: + $nodename: + const: '/' + compatible: + items: + - enum: + - calxeda,highbank + - calxeda,ecx-2000 Modified: vendor/device-tree/dist/Bindings/arm/cpu-capacity.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/cpu-capacity.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/cpu-capacity.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -235,4 +235,4 @@ cpus { =========================================== [1] ARM Linux Kernel documentation - CPUs bindings - Documentation/devicetree/bindings/arm/cpus.txt + Documentation/devicetree/bindings/arm/cpus.yaml Added: vendor/device-tree/dist/Bindings/arm/cpus.yaml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/cpus.yaml Wed Apr 10 17:56:06 2019 (r346089) @@ -0,0 +1,507 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/arm/cpus.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ARM CPUs bindings + +maintainers: + - Lorenzo Pieralisi + +description: |+ + The device tree allows to describe the layout of CPUs in a system through + the "cpus" node, which in turn contains a number of subnodes (ie "cpu") + defining properties for every cpu. + + Bindings for CPU nodes follow the Devicetree Specification, available from: + + https://www.devicetree.org/specifications/ + + with updates for 32-bit and 64-bit ARM systems provided in this document. + + ================================ + Convention used in this document + ================================ + + This document follows the conventions described in the Devicetree + Specification, with the addition: + + - square brackets define bitfields, eg reg[7:0] value of the bitfield in + the reg property contained in bits 7 down to 0 + + ===================================== + cpus and cpu node bindings definition + ===================================== + + The ARM architecture, in accordance with the Devicetree Specification, + requires the cpus and cpu nodes to be present and contain the properties + described below. + +properties: + $nodename: + const: cpus + description: Container of cpu nodes + + '#address-cells': + enum: [1, 2] + description: | + Definition depends on ARM architecture version and configuration: + + On uniprocessor ARM architectures previous to v7 + value must be 1, to enable a simple enumeration + scheme for processors that do not have a HW CPU + identification register. + On 32-bit ARM 11 MPcore, ARM v7 or later systems + value must be 1, that corresponds to CPUID/MPIDR + registers sizes. + On ARM v8 64-bit systems value should be set to 2, + that corresponds to the MPIDR_EL1 register size. + If MPIDR_EL1[63:32] value is equal to 0 on all CPUs + in the system, #address-cells can be set to 1, since + MPIDR_EL1[63:32] bits are not used for CPUs + identification. + + '#size-cells': + const: 0 + +patternProperties: + '^cpu@[0-9a-f]+$': + properties: + device_type: + const: cpu + + reg: + maxItems: 1 + description: | + Usage and definition depend on ARM architecture version and + configuration: + + On uniprocessor ARM architectures previous to v7 + this property is required and must be set to 0. + + On ARM 11 MPcore based systems this property is + required and matches the CPUID[11:0] register bits. + + Bits [11:0] in the reg cell must be set to + bits [11:0] in CPU ID register. + + All other bits in the reg cell must be set to 0. + + On 32-bit ARM v7 or later systems this property is + required and matches the CPU MPIDR[23:0] register + bits. + + Bits [23:0] in the reg cell must be set to + bits [23:0] in MPIDR. + + All other bits in the reg cell must be set to 0. + + On ARM v8 64-bit systems this property is required + and matches the MPIDR_EL1 register affinity bits. + + * If cpus node's #address-cells property is set to 2 + + The first reg cell bits [7:0] must be set to + bits [39:32] of MPIDR_EL1. + + The second reg cell bits [23:0] must be set to + bits [23:0] of MPIDR_EL1. + + * If cpus node's #address-cells property is set to 1 + + The reg cell bits [23:0] must be set to bits [23:0] + of MPIDR_EL1. + + All other bits in the reg cells must be set to 0. + + compatible: + items: + - enum: + - arm,arm710t + - arm,arm720t + - arm,arm740t + - arm,arm7ej-s + - arm,arm7tdmi + - arm,arm7tdmi-s + - arm,arm9es + - arm,arm9ej-s + - arm,arm920t + - arm,arm922t + - arm,arm925 + - arm,arm926e-s + - arm,arm926ej-s + - arm,arm940t + - arm,arm946e-s + - arm,arm966e-s + - arm,arm968e-s + - arm,arm9tdmi + - arm,arm1020e + - arm,arm1020t + - arm,arm1022e + - arm,arm1026ej-s + - arm,arm1136j-s + - arm,arm1136jf-s + - arm,arm1156t2-s + - arm,arm1156t2f-s + - arm,arm1176jzf + - arm,arm1176jz-s + - arm,arm1176jzf-s + - arm,arm11mpcore + - arm,armv8 # Only for s/w models + - arm,cortex-a5 + - arm,cortex-a7 + - arm,cortex-a8 + - arm,cortex-a9 + - arm,cortex-a12 + - arm,cortex-a15 + - arm,cortex-a17 + - arm,cortex-a53 + - arm,cortex-a57 + - arm,cortex-a72 + - arm,cortex-a73 + - arm,cortex-m0 + - arm,cortex-m0+ + - arm,cortex-m1 + - arm,cortex-m3 + - arm,cortex-m4 + - arm,cortex-r4 + - arm,cortex-r5 + - arm,cortex-r7 + - brcm,brahma-b15 + - brcm,brahma-b53 + - brcm,vulcan + - cavium,thunder + - cavium,thunder2 + - faraday,fa526 + - intel,sa110 + - intel,sa1100 + - marvell,feroceon + - marvell,mohawk + - marvell,pj4a + - marvell,pj4b + - marvell,sheeva-v5 + - marvell,sheeva-v7 + - nvidia,tegra132-denver + - nvidia,tegra186-denver + - nvidia,tegra194-carmel + - qcom,krait + - qcom,kryo + - qcom,kryo385 + - qcom,scorpion + + enable-method: + allOf: + - $ref: '/schemas/types.yaml#/definitions/string' + - oneOf: + # On ARM v8 64-bit this property is required + - enum: + - psci + - spin-table + # On ARM 32-bit systems this property is optional + - enum: + - actions,s500-smp + - allwinner,sun6i-a31 + - allwinner,sun8i-a23 + - allwinner,sun9i-a80-smp + - allwinner,sun8i-a83t-smp + - amlogic,meson8-smp + - amlogic,meson8b-smp + - arm,realview-smp + - brcm,bcm11351-cpu-method + - brcm,bcm23550 + - brcm,bcm2836-smp + - brcm,bcm63138 + - brcm,bcm-nsp-smp + - brcm,brahma-b15 + - marvell,armada-375-smp + - marvell,armada-380-smp + - marvell,armada-390-smp + - marvell,armada-xp-smp + - marvell,98dx3236-smp + - mediatek,mt6589-smp + - mediatek,mt81xx-tz-smp + - qcom,gcc-msm8660 + - qcom,kpss-acc-v1 + - qcom,kpss-acc-v2 + - renesas,apmu + - renesas,r9a06g032-smp + - rockchip,rk3036-smp + - rockchip,rk3066-smp + - ste,dbx500-smp + + cpu-release-addr: + $ref: '/schemas/types.yaml#/definitions/uint64' + + description: + Required for systems that have an "enable-method" + property value of "spin-table". + On ARM v8 64-bit systems must be a two cell + property identifying a 64-bit zero-initialised + memory location. + + cpu-idle-states: + $ref: '/schemas/types.yaml#/definitions/phandle-array' + description: | + List of phandles to idle state nodes supported + by this cpu (see ./idle-states.txt). + + capacity-dmips-mhz: + $ref: '/schemas/types.yaml#/definitions/uint32' + description: + u32 value representing CPU capacity (see ./cpu-capacity.txt) in + DMIPS/MHz, relative to highest capacity-dmips-mhz + in the system. + + dynamic-power-coefficient: + $ref: '/schemas/types.yaml#/definitions/uint32' + description: + A u32 value that represents the running time dynamic + power coefficient in units of uW/MHz/V^2. The + coefficient can either be calculated from power + measurements or derived by analysis. + + The dynamic power consumption of the CPU is + proportional to the square of the Voltage (V) and + the clock frequency (f). The coefficient is used to + calculate the dynamic power as below - + + Pdyn = dynamic-power-coefficient * V^2 * f + + where voltage is in V, frequency is in MHz. + + qcom,saw: + $ref: '/schemas/types.yaml#/definitions/phandle' + description: | + Specifies the SAW* node associated with this CPU. + + Required for systems that have an "enable-method" property + value of "qcom,kpss-acc-v1" or "qcom,kpss-acc-v2" + + * arm/msm/qcom,saw2.txt + + qcom,acc: + $ref: '/schemas/types.yaml#/definitions/phandle' + description: | + Specifies the ACC* node associated with this CPU. + + Required for systems that have an "enable-method" property + value of "qcom,kpss-acc-v1" or "qcom,kpss-acc-v2" + + * arm/msm/qcom,kpss-acc.txt + + rockchip,pmu: + $ref: '/schemas/types.yaml#/definitions/phandle' + description: | + Specifies the syscon node controlling the cpu core power domains. + + Optional for systems that have an "enable-method" + property value of "rockchip,rk3066-smp" + While optional, it is the preferred way to get access to + the cpu-core power-domains. + + required: + - device_type + - reg + - compatible + + dependencies: + cpu-release-addr: [enable-method] + rockchip,pmu: [enable-method] + +required: + - '#address-cells' + - '#size-cells' + +examples: + - | + cpus { + #size-cells = <0>; + #address-cells = <1>; + + cpu@0 { + device_type = "cpu"; + compatible = "arm,cortex-a15"; + reg = <0x0>; + }; + + cpu@1 { + device_type = "cpu"; + compatible = "arm,cortex-a15"; + reg = <0x1>; + }; + + cpu@100 { + device_type = "cpu"; + compatible = "arm,cortex-a7"; + reg = <0x100>; + }; + + cpu@101 { + device_type = "cpu"; + compatible = "arm,cortex-a7"; + reg = <0x101>; + }; + }; + + - | + // Example 2 (Cortex-A8 uniprocessor 32-bit system): + cpus { + #size-cells = <0>; + #address-cells = <1>; + + cpu@0 { + device_type = "cpu"; + compatible = "arm,cortex-a8"; + reg = <0x0>; + }; + }; + + - | + // Example 3 (ARM 926EJ-S uniprocessor 32-bit system): + cpus { + #size-cells = <0>; + #address-cells = <1>; + + cpu@0 { + device_type = "cpu"; + compatible = "arm,arm926ej-s"; + reg = <0x0>; + }; + }; + + - | + // Example 4 (ARM Cortex-A57 64-bit system): + cpus { + #size-cells = <0>; + #address-cells = <2>; + + cpu@0 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x0 0x0>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@1 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x0 0x1>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@100 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x0 0x100>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@101 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x0 0x101>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@10000 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x0 0x10000>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@10001 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x0 0x10001>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@10100 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x0 0x10100>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@10101 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x0 0x10101>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@100000000 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x1 0x0>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@100000001 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x1 0x1>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@100000100 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x1 0x100>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@100000101 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x1 0x101>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@100010000 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x1 0x10000>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@100010001 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x1 0x10001>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@100010100 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x1 0x10100>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + + cpu@100010101 { + device_type = "cpu"; + compatible = "arm,cortex-a57"; + reg = <0x1 0x10101>; + enable-method = "spin-table"; + cpu-release-addr = <0 0x20000000>; + }; + }; +... Added: vendor/device-tree/dist/Bindings/arm/emtrion.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/emtrion.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -0,0 +1,12 @@ +Emtrion Devicetree Bindings +=========================== + +emCON Series: +------------- + +Required root node properties + - compatible: + - "emtrion,emcon-mx6", "fsl,imx6q"; : emCON-MX6D or emCON-MX6Q SoM + - "emtrion,emcon-mx6-avari", "fsl,imx6q"; : emCON-MX6D or emCON-MX6Q SoM on Avari Base + - "emtrion,emcon-mx6", "fsl,imx6dl"; : emCON-MX6S or emCON-MX6DL SoM + - "emtrion,emcon-mx6-avari", "fsl,imx6dl"; : emCON-MX6S or emCON-MX6DL SoM on Avari Base Added: vendor/device-tree/dist/Bindings/arm/freescale/fsl,imx7ulp-pm.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/freescale/fsl,imx7ulp-pm.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -0,0 +1,23 @@ +Freescale i.MX7ULP Power Management Components +---------------------------------------------- + +The Multi-System Mode Controller (MSMC) is responsible for sequencing +the MCU into and out of all stop and run power modes. Specifically, it +monitors events to trigger transitions between power modes while +controlling the power, clocks, and memories of the MCU to achieve the +power consumption and functionality of that mode. + +The WFI or WFE instruction is used to invoke a Sleep, Deep Sleep or +Standby modes for either Cortex family. Run, Wait, and Stop are the +common terms used for the primary operating modes of Kinetis +microcontrollers. + +Required properties: +- compatible: Should be "fsl,imx7ulp-smc1". +- reg: Specifies base physical address and size of the register sets. + +Example: +smc1: smc1@40410000 { + compatible = "fsl,imx7ulp-smc1"; + reg = <0x40410000 0x1000>; +}; Modified: vendor/device-tree/dist/Bindings/arm/freescale/fsl,scu.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/freescale/fsl,scu.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/freescale/fsl,scu.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -58,19 +58,11 @@ This binding for the SCU power domain providers uses t domain binding[2]. Required properties: -- compatible: Should be "fsl,scu-pd". -- #address-cells: Should be 1. -- #size-cells: Should be 0. - -Required properties for power domain sub nodes: -- #power-domain-cells: Must be 0. - -Optional Properties: -- reg: Resource ID of this power domain. - No exist means uncontrollable by user. +- compatible: Should be "fsl,imx8qxp-scu-pd". +- #power-domain-cells: Must be 1. Contains the Resource ID used by + SCU commands. See detailed Resource ID list from: - include/dt-bindings/power/imx-rsrc.h -- power-domains: phandle pointing to the parent power domain. + include/dt-bindings/firmware/imx/rsrc.h Clock bindings based on SCU Message Protocol ------------------------------------------------------------ @@ -96,13 +88,16 @@ Pinctrl bindings based on SCU Message Protocol This binding uses the i.MX common pinctrl binding[3]. Required properties: -- compatible: Should be "fsl,imx8qxp-iomuxc". +- compatible: Should be one of: + "fsl,imx8qm-iomuxc", + "fsl,imx8qxp-iomuxc". Required properties for Pinctrl sub nodes: - fsl,pins: Each entry consists of 3 integers which represents the mux and config setting for one pin. The first 2 integers are specified using a PIN_FUNC_ID macro, which can be found in + , . The last integer CONFIG is the pad setting value like pull-up on this pin. @@ -114,6 +109,12 @@ Required properties for Pinctrl sub nodes: [2] Documentation/devicetree/bindings/power/power_domain.txt [3] Documentation/devicetree/bindings/pinctrl/fsl,imx-pinctrl.txt +RTC bindings based on SCU Message Protocol +------------------------------------------------------------ + +Required properties: +- compatible: should be "fsl,imx8qxp-sc-rtc"; + Example (imx8qxp): ------------- lsio_mu1: mailbox@5d1c0000 { @@ -152,22 +153,13 @@ firmware { ... }; - imx8qx-pm { - compatible = "fsl,scu-pd"; - #address-cells = <1>; - #size-cells = <0>; + pd: imx8qx-pd { + compatible = "fsl,imx8qxp-scu-pd"; + #power-domain-cells = <1>; + }; - pd_dma: dma-power-domain { - #power-domain-cells = <0>; - - pd_dma_lpuart0: dma-lpuart0@57 { - reg = ; - #power-domain-cells = <0>; - power-domains = <&pd_dma>; - }; - ... - }; - ... + rtc: rtc { + compatible = "fsl,imx8qxp-sc-rtc"; }; }; }; @@ -179,5 +171,5 @@ serial@5a060000 { clocks = <&clk IMX8QXP_UART0_CLK>, <&clk IMX8QXP_UART0_IPG_CLK>; clock-names = "per", "ipg"; - power-domains = <&pd_dma_lpuart0>; + power-domains = <&pd IMX_SC_R_UART_0>; }; Modified: vendor/device-tree/dist/Bindings/arm/fsl.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/fsl.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/fsl.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -101,6 +101,10 @@ i.MX7 SabreSD Board Required root node properties: - compatible = "fsl,imx7d-sdb", "fsl,imx7d"; +i.MX7ULP Evaluation Kit +Required root node properties: + - compatible = "fsl,imx7ulp-evk", "fsl,imx7ulp"; + Generic i.MX boards ------------------- @@ -122,6 +126,10 @@ Required root node properties: i.MX6q generic board Required root node properties: - compatible = "fsl,imx6q"; + +i.MX7ULP generic board +Required root node properties: + - compatible = "fsl,imx7ulp"; Freescale Vybrid Platform Device Tree Bindings ---------------------------------------------- Modified: vendor/device-tree/dist/Bindings/arm/idle-states.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/idle-states.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/idle-states.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -142,7 +142,7 @@ characterised by the following graph: The graph is split in two parts delimited by time 1ms on the X-axis. The graph curve with X-axis values = { x | 0 < x < 1ms } has a steep slope -and denotes the energy costs incurred whilst entering and leaving the idle +and denotes the energy costs incurred while entering and leaving the idle state. The graph curve in the area delimited by X-axis values = {x | x > 1ms } has shallower slope and essentially represents the energy consumption of the idle @@ -684,7 +684,7 @@ cpus { =========================================== [1] ARM Linux Kernel documentation - CPUs bindings - Documentation/devicetree/bindings/arm/cpus.txt + Documentation/devicetree/bindings/arm/cpus.yaml [2] ARM Linux Kernel documentation - PSCI bindings Documentation/devicetree/bindings/arm/psci.txt Modified: vendor/device-tree/dist/Bindings/arm/marvell/ap806-system-controller.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/marvell/ap806-system-controller.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/marvell/ap806-system-controller.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -114,12 +114,17 @@ Documentation/devicetree/bindings/thermal/thermal.txt The thermal IP can probe the temperature all around the processor. It may feature several channels, each of them wired to one sensor. +It is possible to setup an overheat interrupt by giving at least one +critical point to any subnode of the thermal-zone node. + Required properties: - compatible: must be one of: * marvell,armada-ap806-thermal - reg: register range associated with the thermal functions. Optional properties: +- interrupts: overheat interrupt handle. Should point to line 18 of the + SEI irqchip. See interrupt-controller/interrupts.txt - #thermal-sensor-cells: shall be <1> when thermal-zones subnodes refer to this IP and represents the channel ID. There is one sensor per channel. O refers to the thermal IP internal channel, while positive @@ -133,6 +138,8 @@ ap_syscon1: system-controller@6f8000 { ap_thermal: thermal-sensor@80 { compatible = "marvell,armada-ap806-thermal"; reg = <0x80 0x10>; + interrupt-parent = <&sei>; + interrupts = <18>; #thermal-sensor-cells = <1>; }; }; Modified: vendor/device-tree/dist/Bindings/arm/marvell/cp110-system-controller.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/marvell/cp110-system-controller.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/marvell/cp110-system-controller.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -199,6 +199,9 @@ Thermal: The thermal IP can probe the temperature all around the processor. It may feature several channels, each of them wired to one sensor. +It is possible to setup an overheat interrupt by giving at least one +critical point to any subnode of the thermal-zone node. + For common binding part and usage, refer to Documentation/devicetree/bindings/thermal/thermal.txt @@ -208,6 +211,11 @@ Required properties: - reg: register range associated with the thermal functions. Optional properties: +- interrupts-extended: overheat interrupt handle. Should point to + a line of the ICU-SEI irqchip (116 is what is usually used by the + firmware). The ICU-SEI will redirect towards interrupt line #37 of the + AP SEI which is shared across all CPs. + See interrupt-controller/interrupts.txt - #thermal-sensor-cells: shall be <1> when thermal-zones subnodes refer to this IP and represents the channel ID. There is one sensor per channel. O refers to the thermal IP internal channel. @@ -220,6 +228,7 @@ CP110_LABEL(syscon1): system-controller@6f8000 { CP110_LABEL(thermal): thermal-sensor@70 { compatible = "marvell,armada-cp110-thermal"; reg = <0x70 0x10>; + interrupts-extended = <&CP110_LABEL(icu_sei) 116 IRQ_TYPE_LEVEL_HIGH>; #thermal-sensor-cells = <1>; }; }; Modified: vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,apmixedsys.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,apmixedsys.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,apmixedsys.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -11,6 +11,7 @@ Required Properties: - "mediatek,mt6797-apmixedsys" - "mediatek,mt7622-apmixedsys" - "mediatek,mt7623-apmixedsys", "mediatek,mt2701-apmixedsys" + - "mediatek,mt7629-apmixedsys" - "mediatek,mt8135-apmixedsys" - "mediatek,mt8173-apmixedsys" - #clock-cells: Must be 1 Modified: vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,ethsys.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,ethsys.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,ethsys.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -9,6 +9,7 @@ Required Properties: - "mediatek,mt2701-ethsys", "syscon" - "mediatek,mt7622-ethsys", "syscon" - "mediatek,mt7623-ethsys", "mediatek,mt2701-ethsys", "syscon" + - "mediatek,mt7629-ethsys", "syscon" - #clock-cells: Must be 1 - #reset-cells: Must be 1 Modified: vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,infracfg.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,infracfg.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,infracfg.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -12,6 +12,7 @@ Required Properties: - "mediatek,mt6797-infracfg", "syscon" - "mediatek,mt7622-infracfg", "syscon" - "mediatek,mt7623-infracfg", "mediatek,mt2701-infracfg", "syscon" + - "mediatek,mt7629-infracfg", "syscon" - "mediatek,mt8135-infracfg", "syscon" - "mediatek,mt8173-infracfg", "syscon" - #clock-cells: Must be 1 Modified: vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,pciesys.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,pciesys.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,pciesys.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -7,6 +7,7 @@ Required Properties: - compatible: Should be: - "mediatek,mt7622-pciesys", "syscon" + - "mediatek,mt7629-pciesys", "syscon" - #clock-cells: Must be 1 - #reset-cells: Must be 1 Modified: vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,pericfg.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,pericfg.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,pericfg.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -11,6 +11,7 @@ Required Properties: - "mediatek,mt2712-pericfg", "syscon" - "mediatek,mt7622-pericfg", "syscon" - "mediatek,mt7623-pericfg", "mediatek,mt2701-pericfg", "syscon" + - "mediatek,mt7629-pericfg", "syscon" - "mediatek,mt8135-pericfg", "syscon" - "mediatek,mt8173-pericfg", "syscon" - #clock-cells: Must be 1 Modified: vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,sgmiisys.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,sgmiisys.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,sgmiisys.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -7,6 +7,7 @@ Required Properties: - compatible: Should be: - "mediatek,mt7622-sgmiisys", "syscon" + - "mediatek,mt7629-sgmiisys", "syscon" - #clock-cells: Must be 1 The SGMIISYS controller uses the common clk binding from Modified: vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,ssusbsys.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,ssusbsys.txt Wed Apr 10 17:31:00 2019 (r346088) +++ vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,ssusbsys.txt Wed Apr 10 17:56:06 2019 (r346089) @@ -7,6 +7,7 @@ Required Properties: - compatible: Should be: - "mediatek,mt7622-ssusbsys", "syscon" + - "mediatek,mt7629-ssusbsys", "syscon" *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Wed Apr 10 17:56:45 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C657A1566B41; Wed, 10 Apr 2019 17:56:45 +0000 (UTC) (envelope-from manu@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 6764B835AB; Wed, 10 Apr 2019 17:56:45 +0000 (UTC) (envelope-from manu@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 25C6B26099; Wed, 10 Apr 2019 17:56:45 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AHuj06066319; Wed, 10 Apr 2019 17:56:45 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AHujro066318; Wed, 10 Apr 2019 17:56:45 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201904101756.x3AHujro066318@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Wed, 10 Apr 2019 17:56:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r346090 - vendor/device-tree/5.0 X-SVN-Group: vendor X-SVN-Commit-Author: manu X-SVN-Commit-Paths: vendor/device-tree/5.0 X-SVN-Commit-Revision: 346090 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6764B835AB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 17:56:46 -0000 Author: manu Date: Wed Apr 10 17:56:44 2019 New Revision: 346090 URL: https://svnweb.freebsd.org/changeset/base/346090 Log: Tag import of DTS files from Linux 5.0 Added: vendor/device-tree/5.0/ - copied from r346089, vendor/device-tree/dist/ From owner-svn-src-all@freebsd.org Wed Apr 10 18:02:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 061771566E44; Wed, 10 Apr 2019 18:02:13 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg1-x52e.google.com (mail-pg1-x52e.google.com [IPv6:2607:f8b0:4864:20::52e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 79BD0838D1; Wed, 10 Apr 2019 18:02:12 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg1-x52e.google.com with SMTP id y3so1991461pgk.12; Wed, 10 Apr 2019 11:02:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=LOcvp28Qn6g0Nrsg/mUOyBeHFwWVUiw9OxHNLzy2xH0=; b=Zd6+fCiEyYv77Do99sDXPqQMnuR/pOK1ipKDvy2ccnmDkrONHZmrEAsjLGfYSmqhQm Bj6ulj1CIjRCm9MupIgYq8zYuujTDH02p5pA51ARHIUtXqmBvxhfFiXpkSFq//Fqb84f vWvFgHIB9BjBg747ywvTZKtADWS72SvI3UsnXv5dIpClEehg2o7f0icBbuZbHFbLkCc0 MIUdKrfNC7w2jRwLRY27wjNJlAOJa6QSXKsTDkVIbTC/Bg4BRB1dPQUTNkizoBlCoyzb xQHRNYotHIGpDjXMA8n84Eo7vMox++bTXzpzrFdrUiLUIQiUKW3EL3fzrJwXlSIjOmcW WgQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=LOcvp28Qn6g0Nrsg/mUOyBeHFwWVUiw9OxHNLzy2xH0=; b=OK5CAFiUw8gIV5o6kQUGkCV6zy4st9w/v/BE/rLIGAm3EKxxqH9lZORmN8+5c7mtpR ddvhfmhXTQ58MnSB95TIGb6BvJty+Nu7wDbTO9IJ8ggWaWDu3gFQ0c8aMQrAObh8HWjn Tvr+DBHr9jDSCqlE9yWRBpFC4MKTtRB0KLLHABWefK3rQV3krWYTRA2ywCVJlBwnbHpv wAUPASt0gaE1UiACKtqFKSSUe4ekVZMEXrDt4aJJ3/SfRf/+wq/cL0ggbX7Octj7kX2G ALscwh67AWP7bjWQS499eayUf+OIKtJ7HyB5QQON2O/H42nAMbNS6Nhy64C9CowxwwtC wPaQ== X-Gm-Message-State: APjAAAXl/NjexvKO0m/OXpzmVrtF82FgZkrJ14CDZ46lAQcxcSGFxXpv k6i0Ywthxdy29YJJUk9eu9U= X-Google-Smtp-Source: APXvYqwL/aRdpTMOkm0R/ue8mcZNdYhUKvYyDnPSPW/mI4Gn5XZWBA4fkZmIWg3EkHFS0A4ER9EBAg== X-Received: by 2002:a62:4351:: with SMTP id q78mr45850173pfa.86.1554919330280; Wed, 10 Apr 2019 11:02:10 -0700 (PDT) Received: from ?IPv6:2607:fb90:822a:6269:7883:c4a8:e284:632e? ([2607:fb90:822a:6269:7883:c4a8:e284:632e]) by smtp.gmail.com with ESMTPSA id s5sm41665005pgv.8.2019.04.10.11.02.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 10 Apr 2019 11:02:09 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r346081 - head/cddl/usr.sbin/zfsd From: Enji Cooper X-Mailer: iPhone Mail (16E227) In-Reply-To: <20190410155509.GU1923@kib.kiev.ua> Date: Wed, 10 Apr 2019 11:02:08 -0700 Cc: Edward Tomasz Napierala , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <4BDE4771-EA33-4746-851E-674EF31D0174@gmail.com> References: <201904101342.x3ADgbXM033389@repo.freebsd.org> <20190410155509.GU1923@kib.kiev.ua> To: Konstantin Belousov X-Rspamd-Queue-Id: 79BD0838D1 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.977,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 18:02:13 -0000 > On Apr 10, 2019, at 08:55, Konstantin Belousov wrote= : >=20 >> On Wed, Apr 10, 2019 at 01:42:37PM +0000, Edward Tomasz Napierala wrote: >> Author: trasz >> Date: Wed Apr 10 13:42:37 2019 >> New Revision: 346081 >> URL: https://svnweb.freebsd.org/changeset/base/346081 >>=20 >> Log: >> Make zfsd(8) build obey CFLAGS. >>=20 >> Reviewed by: imp >> Obtained from: CheriBSD >> MFC after: 2 weeks >> Sponsored by: DARPA, AFRL >> Differential Revision: https://reviews.freebsd.org/D19865 >>=20 >> Modified: >> head/cddl/usr.sbin/zfsd/Makefile.common >>=20 >> Modified: head/cddl/usr.sbin/zfsd/Makefile.common >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D >> --- head/cddl/usr.sbin/zfsd/Makefile.common Wed Apr 10 13:41:34 2019 = (r346080) >> +++ head/cddl/usr.sbin/zfsd/Makefile.common Wed Apr 10 13:42:37 2019 = (r346081) >> @@ -30,7 +30,7 @@ INCFLAGS+=3D -I${SRCTOP}/sys/cddl/contrib/opensolaris/u= t >> INCFLAGS+=3D -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/fs/zfs >> INCFLAGS+=3D -I${SRCTOP}/cddl/usr.sbin >>=20 >> -CFLAGS=3D -g -DNEED_SOLARIS_BOOLEAN ${INCFLAGS} >> +CFLAGS+=3D -g -DNEED_SOLARIS_BOOLEAN ${INCFLAGS} > Why the flags unconditionally set -g ? It shouldn=E2=80=99t be explicitly set. That=E2=80=99s what DEBUG_FLAGS is f= or. -Enji= From owner-svn-src-all@freebsd.org Wed Apr 10 18:15:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BA0C215682D5; Wed, 10 Apr 2019 18:15:39 +0000 (UTC) (envelope-from manu@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 3534E8420A; Wed, 10 Apr 2019 18:15:39 +0000 (UTC) (envelope-from manu@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 E14E82640E; Wed, 10 Apr 2019 18:15:38 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AIFcsO076546; Wed, 10 Apr 2019 18:15:38 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AIFafG076535; Wed, 10 Apr 2019 18:15:36 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201904101815.x3AIFafG076535@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Wed, 10 Apr 2019 18:15:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346092 - in head/sys/gnu/dts: arm arm64/allwinner arm64/altera arm64/amlogic arm64/arm arm64/exynos arm64/freescale arm64/hisilicon arm64/marvell arm64/mediatek arm64/nvidia arm64/qcom... X-SVN-Group: head X-SVN-Commit-Author: manu X-SVN-Commit-Paths: in head/sys/gnu/dts: arm arm64/allwinner arm64/altera arm64/amlogic arm64/arm arm64/exynos arm64/freescale arm64/hisilicon arm64/marvell arm64/mediatek arm64/nvidia arm64/qcom arm64/renesas arm64/rock... X-SVN-Commit-Revision: 346092 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3534E8420A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 18:15:40 -0000 Author: manu Date: Wed Apr 10 18:15:36 2019 New Revision: 346092 URL: https://svnweb.freebsd.org/changeset/base/346092 Log: Import DTS files from Linux 5.0 MFC after: 2 months Added: - copied unchanged from r346089, vendor/device-tree/dist/src/arm/am33xx-l4.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/am437x-l4.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/aspeed-bmc-facebook-cmm.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/bcm2836-rpi.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/bcm4708-linksys-ea6500-v2.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/dra7-l4.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/facebook-bmc-flash-layout.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/imx6dl-emcon-avari.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/imx6q-emcon-avari.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/imx6qdl-emcon-avari.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/imx6qdl-emcon.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/imx6ul-pico-pi.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/imx6ul-pico.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/imx7d-pico-hobbit.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/imx7d-sdb-reva.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/imx7ulp-evk.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/imx7ulp.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/omap5-l4.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/pxa300-raumfeld-common.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/pxa300-raumfeld-connector.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/pxa300-raumfeld-controller.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/pxa300-raumfeld-speaker-l.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/pxa300-raumfeld-speaker-m.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/pxa300-raumfeld-speaker-one.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/pxa300-raumfeld-speaker-s.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/pxa300-raumfeld-tuneable-clock.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/r8a7744-iwg20d-q7-dbcm-ca.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/r8a7744-iwg20d-q7.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/r8a7744-iwg20m.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/r8a7744.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/rda8810pl-orangepi-2g-iot.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/rda8810pl-orangepi-i96.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/rda8810pl.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/rk3188-bqedison2qc.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/sun8i-h3-mapleboard-mp130.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/sun8i-t3-cqa3t-bv3.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/suniv-f1c100s-licheepi-nano.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/suniv-f1c100s.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm/vf610-bk4.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm/vf610-zii-scu4-aib.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/allwinner/sun50i-h5-emlid-neutis-n5.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/allwinner/sun50i-h6-orangepi-lite2.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/allwinner/sun50i-h6-orangepi.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s805x-libretech-ac.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905d-phicomm-n1.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/freescale/fsl-ls1012a-frwy.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/freescale/fsl-ls1028a-qds.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/freescale/fsl-ls1028a-rdb.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/freescale/fsl-ls1028a.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/freescale/fsl-lx2160a-qds.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/freescale/fsl-lx2160a-rdb.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/freescale/fsl-lx2160a.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/freescale/imx8mq-evk.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/freescale/imx8mq-pinfunc.h - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/freescale/imx8mq.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/hisilicon/hikey970-pinctrl.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/marvell/armada-8040-mcbin-singleshot.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/marvell/armada-8040-mcbin.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/qcom/msm8998-pins.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/qcom/pms405.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/qcom/qcs404-evb-1000.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/qcom/qcs404-evb-4000.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/qcom/qcs404-evb.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/qcom/qcs404.dtsi - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/rockchip/rk3399-gru-scarlet-inx.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/rockchip/rk3399-gru-scarlet-kd.dts - copied unchanged from r346089, vendor/device-tree/dist/src/arm64/rockchip/rk3399-gru-scarlet.dtsi - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/clock/imx7ulp-clock.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/clock/imx8-clock.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/clock/imx8mq-clock.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/clock/mt7629-clk.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/clock/qcom,gpucc-sdm845.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/clock/qcom,lpass-sdm845.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/clock/suniv-ccu-f1c100s.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/dma/dw-dmac.h - copied from r346089, vendor/device-tree/dist/include/dt-bindings/firmware/ - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/pinctrl/k3.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/pinctrl/mt6797-pinfunc.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/pinctrl/pads-imx8qm.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/pinctrl/pads-imx8qxp.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/pinctrl/r7s9210-pinctrl.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/power/imx8mq-power.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/power/rk3066-power.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/power/rk3188-power.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/regulator/active-semi,8945a-regulator.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/reset/suniv-ccu-f1c100s.h - copied unchanged from r346089, vendor/device-tree/dist/include/dt-bindings/thermal/tegra194-bpmp-thermal.h Directory Properties: head/sys/gnu/dts/arm/am33xx-l4.dtsi (props changed) head/sys/gnu/dts/arm/am437x-l4.dtsi (props changed) head/sys/gnu/dts/arm/aspeed-bmc-facebook-cmm.dts (props changed) head/sys/gnu/dts/arm/bcm2836-rpi.dtsi (props changed) head/sys/gnu/dts/arm/bcm4708-linksys-ea6500-v2.dts (props changed) head/sys/gnu/dts/arm/dra7-l4.dtsi (props changed) head/sys/gnu/dts/arm/facebook-bmc-flash-layout.dtsi (props changed) head/sys/gnu/dts/arm/imx6dl-emcon-avari.dts (props changed) head/sys/gnu/dts/arm/imx6q-emcon-avari.dts (props changed) head/sys/gnu/dts/arm/imx6qdl-emcon-avari.dtsi (props changed) head/sys/gnu/dts/arm/imx6qdl-emcon.dtsi (props changed) head/sys/gnu/dts/arm/imx6ul-pico-pi.dts (props changed) head/sys/gnu/dts/arm/imx6ul-pico.dtsi (props changed) head/sys/gnu/dts/arm/imx7d-pico-hobbit.dts (props changed) head/sys/gnu/dts/arm/imx7d-sdb-reva.dts (props changed) head/sys/gnu/dts/arm/imx7ulp-evk.dts (props changed) head/sys/gnu/dts/arm/imx7ulp.dtsi (props changed) head/sys/gnu/dts/arm/omap5-l4.dtsi (props changed) head/sys/gnu/dts/arm/pxa300-raumfeld-common.dtsi (props changed) head/sys/gnu/dts/arm/pxa300-raumfeld-connector.dts (props changed) head/sys/gnu/dts/arm/pxa300-raumfeld-controller.dts (props changed) head/sys/gnu/dts/arm/pxa300-raumfeld-speaker-l.dts (props changed) head/sys/gnu/dts/arm/pxa300-raumfeld-speaker-m.dts (props changed) head/sys/gnu/dts/arm/pxa300-raumfeld-speaker-one.dts (props changed) head/sys/gnu/dts/arm/pxa300-raumfeld-speaker-s.dts (props changed) head/sys/gnu/dts/arm/pxa300-raumfeld-tuneable-clock.dtsi (props changed) head/sys/gnu/dts/arm/r8a7744-iwg20d-q7-dbcm-ca.dts (props changed) head/sys/gnu/dts/arm/r8a7744-iwg20d-q7.dts (props changed) head/sys/gnu/dts/arm/r8a7744-iwg20m.dtsi (props changed) head/sys/gnu/dts/arm/r8a7744.dtsi (props changed) head/sys/gnu/dts/arm/rda8810pl-orangepi-2g-iot.dts (props changed) head/sys/gnu/dts/arm/rda8810pl-orangepi-i96.dts (props changed) head/sys/gnu/dts/arm/rda8810pl.dtsi (props changed) head/sys/gnu/dts/arm/rk3188-bqedison2qc.dts (props changed) head/sys/gnu/dts/arm/sun8i-h3-mapleboard-mp130.dts (props changed) head/sys/gnu/dts/arm/sun8i-t3-cqa3t-bv3.dts (props changed) head/sys/gnu/dts/arm/suniv-f1c100s-licheepi-nano.dts (props changed) head/sys/gnu/dts/arm/suniv-f1c100s.dtsi (props changed) head/sys/gnu/dts/arm/vf610-bk4.dts (props changed) head/sys/gnu/dts/arm/vf610-zii-scu4-aib.dts (props changed) head/sys/gnu/dts/arm64/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts (props changed) head/sys/gnu/dts/arm64/allwinner/sun50i-h5-emlid-neutis-n5.dtsi (props changed) head/sys/gnu/dts/arm64/allwinner/sun50i-h6-orangepi-lite2.dts (props changed) head/sys/gnu/dts/arm64/allwinner/sun50i-h6-orangepi.dtsi (props changed) head/sys/gnu/dts/arm64/amlogic/meson-gxl-s805x-libretech-ac.dts (props changed) head/sys/gnu/dts/arm64/amlogic/meson-gxl-s905d-phicomm-n1.dts (props changed) head/sys/gnu/dts/arm64/freescale/fsl-ls1012a-frwy.dts (props changed) head/sys/gnu/dts/arm64/freescale/fsl-ls1028a-qds.dts (props changed) head/sys/gnu/dts/arm64/freescale/fsl-ls1028a-rdb.dts (props changed) head/sys/gnu/dts/arm64/freescale/fsl-ls1028a.dtsi (props changed) head/sys/gnu/dts/arm64/freescale/fsl-lx2160a-qds.dts (props changed) head/sys/gnu/dts/arm64/freescale/fsl-lx2160a-rdb.dts (props changed) head/sys/gnu/dts/arm64/freescale/fsl-lx2160a.dtsi (props changed) head/sys/gnu/dts/arm64/freescale/imx8mq-evk.dts (props changed) head/sys/gnu/dts/arm64/freescale/imx8mq-pinfunc.h (props changed) head/sys/gnu/dts/arm64/freescale/imx8mq.dtsi (props changed) head/sys/gnu/dts/arm64/hisilicon/hikey970-pinctrl.dtsi (props changed) head/sys/gnu/dts/arm64/marvell/armada-8040-mcbin-singleshot.dts (props changed) head/sys/gnu/dts/arm64/marvell/armada-8040-mcbin.dtsi (props changed) head/sys/gnu/dts/arm64/qcom/msm8998-pins.dtsi (props changed) head/sys/gnu/dts/arm64/qcom/pms405.dtsi (props changed) head/sys/gnu/dts/arm64/qcom/qcs404-evb-1000.dts (props changed) head/sys/gnu/dts/arm64/qcom/qcs404-evb-4000.dts (props changed) head/sys/gnu/dts/arm64/qcom/qcs404-evb.dtsi (props changed) head/sys/gnu/dts/arm64/qcom/qcs404.dtsi (props changed) head/sys/gnu/dts/arm64/rockchip/rk3399-gru-scarlet-inx.dts (props changed) head/sys/gnu/dts/arm64/rockchip/rk3399-gru-scarlet-kd.dts (props changed) head/sys/gnu/dts/arm64/rockchip/rk3399-gru-scarlet.dtsi (props changed) head/sys/gnu/dts/include/dt-bindings/clock/imx7ulp-clock.h (props changed) head/sys/gnu/dts/include/dt-bindings/clock/imx8-clock.h (props changed) head/sys/gnu/dts/include/dt-bindings/clock/imx8mq-clock.h (props changed) head/sys/gnu/dts/include/dt-bindings/clock/mt7629-clk.h (props changed) head/sys/gnu/dts/include/dt-bindings/clock/qcom,gpucc-sdm845.h (props changed) head/sys/gnu/dts/include/dt-bindings/clock/qcom,lpass-sdm845.h (props changed) head/sys/gnu/dts/include/dt-bindings/clock/suniv-ccu-f1c100s.h (props changed) head/sys/gnu/dts/include/dt-bindings/dma/dw-dmac.h (props changed) head/sys/gnu/dts/include/dt-bindings/firmware/ (props changed) head/sys/gnu/dts/include/dt-bindings/pinctrl/k3.h (props changed) head/sys/gnu/dts/include/dt-bindings/pinctrl/mt6797-pinfunc.h (props changed) head/sys/gnu/dts/include/dt-bindings/pinctrl/pads-imx8qm.h (props changed) head/sys/gnu/dts/include/dt-bindings/pinctrl/pads-imx8qxp.h (props changed) head/sys/gnu/dts/include/dt-bindings/pinctrl/r7s9210-pinctrl.h (props changed) head/sys/gnu/dts/include/dt-bindings/power/imx8mq-power.h (props changed) head/sys/gnu/dts/include/dt-bindings/power/rk3066-power.h (props changed) head/sys/gnu/dts/include/dt-bindings/power/rk3188-power.h (props changed) head/sys/gnu/dts/include/dt-bindings/regulator/active-semi,8945a-regulator.h (props changed) head/sys/gnu/dts/include/dt-bindings/reset/suniv-ccu-f1c100s.h (props changed) head/sys/gnu/dts/include/dt-bindings/thermal/tegra194-bpmp-thermal.h (props changed) Deleted: head/sys/gnu/dts/arm/qcom-apq8064-arrow-sd-600eval-pins.dtsi head/sys/gnu/dts/arm/qcom-apq8064-arrow-sd-600eval.dts Modified: head/sys/gnu/dts/arm/am335x-bone-common.dtsi head/sys/gnu/dts/arm/am335x-boneblue.dts head/sys/gnu/dts/arm/am335x-cm-t335.dts head/sys/gnu/dts/arm/am335x-evm.dts head/sys/gnu/dts/arm/am335x-evmsk.dts head/sys/gnu/dts/arm/am335x-osd3358-sm-red.dts head/sys/gnu/dts/arm/am335x-pdu001.dts head/sys/gnu/dts/arm/am335x-shc.dts head/sys/gnu/dts/arm/am33xx-clocks.dtsi head/sys/gnu/dts/arm/am33xx.dtsi head/sys/gnu/dts/arm/am3517-evm.dts head/sys/gnu/dts/arm/am4372.dtsi head/sys/gnu/dts/arm/am437x-gp-evm.dts head/sys/gnu/dts/arm/am43xx-clocks.dtsi head/sys/gnu/dts/arm/am57xx-beagle-x15-common.dtsi head/sys/gnu/dts/arm/arm-realview-pbx.dtsi head/sys/gnu/dts/arm/armada-xp-db.dts head/sys/gnu/dts/arm/armada-xp-gp.dts head/sys/gnu/dts/arm/armada-xp-lenovo-ix4-300d.dts head/sys/gnu/dts/arm/aspeed-bmc-arm-centriq2400-rep.dts head/sys/gnu/dts/arm/aspeed-bmc-intel-s2600wf.dts head/sys/gnu/dts/arm/aspeed-bmc-opp-lanyang.dts head/sys/gnu/dts/arm/aspeed-bmc-opp-palmetto.dts head/sys/gnu/dts/arm/aspeed-bmc-opp-romulus.dts head/sys/gnu/dts/arm/aspeed-bmc-opp-witherspoon.dts head/sys/gnu/dts/arm/aspeed-bmc-portwell-neptune.dts head/sys/gnu/dts/arm/at91-nattis-2-natte-2.dts head/sys/gnu/dts/arm/at91-sama5d27_som1_ek.dts head/sys/gnu/dts/arm/at91-sama5d2_ptc_ek.dts head/sys/gnu/dts/arm/at91-sama5d2_xplained.dts head/sys/gnu/dts/arm/at91-sama5d4ek.dts head/sys/gnu/dts/arm/at91sam9260.dtsi head/sys/gnu/dts/arm/at91sam9261.dtsi head/sys/gnu/dts/arm/at91sam9263.dtsi head/sys/gnu/dts/arm/at91sam9g15.dtsi head/sys/gnu/dts/arm/at91sam9g20.dtsi head/sys/gnu/dts/arm/at91sam9g25.dtsi head/sys/gnu/dts/arm/at91sam9g25ek.dts head/sys/gnu/dts/arm/at91sam9g35.dtsi head/sys/gnu/dts/arm/at91sam9rl.dtsi head/sys/gnu/dts/arm/at91sam9x25.dtsi head/sys/gnu/dts/arm/at91sam9x35.dtsi head/sys/gnu/dts/arm/at91sam9x5.dtsi head/sys/gnu/dts/arm/at91sam9x5_can.dtsi head/sys/gnu/dts/arm/at91sam9x5_isi.dtsi head/sys/gnu/dts/arm/at91sam9x5_lcd.dtsi head/sys/gnu/dts/arm/at91sam9x5_macb0.dtsi head/sys/gnu/dts/arm/at91sam9x5_macb1.dtsi head/sys/gnu/dts/arm/at91sam9x5_usart3.dtsi head/sys/gnu/dts/arm/axp81x.dtsi head/sys/gnu/dts/arm/bcm-nsp.dtsi head/sys/gnu/dts/arm/bcm2835-rpi-zero-w.dts head/sys/gnu/dts/arm/bcm2835-rpi-zero.dts head/sys/gnu/dts/arm/bcm2835-rpi.dtsi head/sys/gnu/dts/arm/bcm2836-rpi-2-b.dts head/sys/gnu/dts/arm/bcm2837-rpi-3-b-plus.dts head/sys/gnu/dts/arm/bcm2837-rpi-3-b.dts head/sys/gnu/dts/arm/bcm2837-rpi-cm3.dtsi head/sys/gnu/dts/arm/bcm47081.dtsi head/sys/gnu/dts/arm/bcm4709.dtsi head/sys/gnu/dts/arm/bcm47094.dtsi head/sys/gnu/dts/arm/bcm47189-tenda-ac9.dts head/sys/gnu/dts/arm/bcm5301x.dtsi head/sys/gnu/dts/arm/bcm53573.dtsi head/sys/gnu/dts/arm/bcm63138.dtsi head/sys/gnu/dts/arm/bcm958522er.dts head/sys/gnu/dts/arm/bcm958525er.dts head/sys/gnu/dts/arm/bcm958525xmc.dts head/sys/gnu/dts/arm/bcm958622hr.dts head/sys/gnu/dts/arm/bcm958623hr.dts head/sys/gnu/dts/arm/bcm958625hr.dts head/sys/gnu/dts/arm/bcm958625k.dts head/sys/gnu/dts/arm/bcm963138dvt.dts head/sys/gnu/dts/arm/bcm988312hr.dts head/sys/gnu/dts/arm/da850-evm.dts head/sys/gnu/dts/arm/da850-lcdk.dts head/sys/gnu/dts/arm/da850.dtsi head/sys/gnu/dts/arm/dra7-evm-common.dtsi head/sys/gnu/dts/arm/dra7.dtsi head/sys/gnu/dts/arm/dra72-evm-common.dtsi head/sys/gnu/dts/arm/dra72x.dtsi head/sys/gnu/dts/arm/dra74x.dtsi head/sys/gnu/dts/arm/dra76x.dtsi head/sys/gnu/dts/arm/dra7xx-clocks.dtsi head/sys/gnu/dts/arm/emev2.dtsi head/sys/gnu/dts/arm/exynos3250-artik5.dtsi head/sys/gnu/dts/arm/exynos3250-monk.dts head/sys/gnu/dts/arm/exynos3250-rinato.dts head/sys/gnu/dts/arm/exynos3250.dtsi head/sys/gnu/dts/arm/exynos4210-trats.dts head/sys/gnu/dts/arm/exynos4210.dtsi head/sys/gnu/dts/arm/exynos4412-itop-scp-core.dtsi head/sys/gnu/dts/arm/exynos4412-midas.dtsi head/sys/gnu/dts/arm/exynos4412-odroid-common.dtsi head/sys/gnu/dts/arm/exynos4412-odroidu3.dts head/sys/gnu/dts/arm/exynos4412-prime.dtsi head/sys/gnu/dts/arm/exynos4412.dtsi head/sys/gnu/dts/arm/exynos5250-arndale.dts head/sys/gnu/dts/arm/exynos5250.dtsi head/sys/gnu/dts/arm/exynos5420-arndale-octa.dts head/sys/gnu/dts/arm/exynos5420-pinctrl.dtsi head/sys/gnu/dts/arm/exynos5420-smdk5420.dts head/sys/gnu/dts/arm/exynos5422-odroid-core.dtsi head/sys/gnu/dts/arm/exynos5422-odroidhc1.dts head/sys/gnu/dts/arm/exynos5422-odroidxu3-audio.dtsi head/sys/gnu/dts/arm/exynos5422-odroidxu3-common.dtsi head/sys/gnu/dts/arm/exynos5422-odroidxu4.dts head/sys/gnu/dts/arm/gemini-dlink-dir-685.dts head/sys/gnu/dts/arm/gemini-dlink-dns-313.dts head/sys/gnu/dts/arm/gemini-nas4220b.dts head/sys/gnu/dts/arm/gemini-rut1xx.dts head/sys/gnu/dts/arm/gemini-sl93512r.dts head/sys/gnu/dts/arm/gemini-sq201.dts head/sys/gnu/dts/arm/gemini-wbd111.dts head/sys/gnu/dts/arm/gemini-wbd222.dts head/sys/gnu/dts/arm/gemini.dtsi head/sys/gnu/dts/arm/imx1-ads.dts head/sys/gnu/dts/arm/imx1-apf9328.dts head/sys/gnu/dts/arm/imx1.dtsi head/sys/gnu/dts/arm/imx23-evk.dts head/sys/gnu/dts/arm/imx23-olinuxino.dts head/sys/gnu/dts/arm/imx23-sansa.dts head/sys/gnu/dts/arm/imx23-stmp378x_devb.dts head/sys/gnu/dts/arm/imx23-xfi3.dts head/sys/gnu/dts/arm/imx23.dtsi head/sys/gnu/dts/arm/imx25-eukrea-cpuimx25.dtsi head/sys/gnu/dts/arm/imx25-karo-tx25.dts head/sys/gnu/dts/arm/imx25-pdk.dts head/sys/gnu/dts/arm/imx25.dtsi head/sys/gnu/dts/arm/imx27-apf27.dts head/sys/gnu/dts/arm/imx27-eukrea-cpuimx27.dtsi head/sys/gnu/dts/arm/imx27-pdk.dts head/sys/gnu/dts/arm/imx27-phytec-phycard-s-som.dtsi head/sys/gnu/dts/arm/imx27-phytec-phycore-som.dtsi head/sys/gnu/dts/arm/imx27.dtsi head/sys/gnu/dts/arm/imx28-apf28.dts head/sys/gnu/dts/arm/imx28-apx4devkit.dts head/sys/gnu/dts/arm/imx28-cfa10036.dts head/sys/gnu/dts/arm/imx28-duckbill-2-485.dts head/sys/gnu/dts/arm/imx28-duckbill-2-enocean.dts head/sys/gnu/dts/arm/imx28-duckbill-2-spi.dts head/sys/gnu/dts/arm/imx28-duckbill-2.dts head/sys/gnu/dts/arm/imx28-duckbill.dts head/sys/gnu/dts/arm/imx28-eukrea-mbmx283lc.dts head/sys/gnu/dts/arm/imx28-eukrea-mbmx287lc.dts head/sys/gnu/dts/arm/imx28-evk.dts head/sys/gnu/dts/arm/imx28-m28.dtsi head/sys/gnu/dts/arm/imx28-m28cu3.dts head/sys/gnu/dts/arm/imx28-m28evk.dts head/sys/gnu/dts/arm/imx28-sps1.dts head/sys/gnu/dts/arm/imx28-ts4600.dts head/sys/gnu/dts/arm/imx28-tx28.dts head/sys/gnu/dts/arm/imx28.dtsi head/sys/gnu/dts/arm/imx31-bug.dts head/sys/gnu/dts/arm/imx31-lite.dts head/sys/gnu/dts/arm/imx31.dtsi head/sys/gnu/dts/arm/imx35-eukrea-cpuimx35.dtsi head/sys/gnu/dts/arm/imx35-pdk.dts head/sys/gnu/dts/arm/imx35.dtsi head/sys/gnu/dts/arm/imx50-evk.dts head/sys/gnu/dts/arm/imx50.dtsi head/sys/gnu/dts/arm/imx51-apf51.dts head/sys/gnu/dts/arm/imx51-babbage.dts head/sys/gnu/dts/arm/imx51-digi-connectcore-som.dtsi head/sys/gnu/dts/arm/imx51-eukrea-cpuimx51.dtsi head/sys/gnu/dts/arm/imx51-ts4800.dts head/sys/gnu/dts/arm/imx51-zii-rdu1.dts head/sys/gnu/dts/arm/imx51-zii-scu2-mezz.dts head/sys/gnu/dts/arm/imx51-zii-scu3-esb.dts head/sys/gnu/dts/arm/imx51.dtsi head/sys/gnu/dts/arm/imx53-ard.dts head/sys/gnu/dts/arm/imx53-cx9020.dts head/sys/gnu/dts/arm/imx53-m53.dtsi head/sys/gnu/dts/arm/imx53-qsb-common.dtsi head/sys/gnu/dts/arm/imx53-smd.dts head/sys/gnu/dts/arm/imx53-tqma53.dtsi head/sys/gnu/dts/arm/imx53-tx53.dtsi head/sys/gnu/dts/arm/imx53-usbarmory.dts head/sys/gnu/dts/arm/imx53-voipac-dmm-668.dtsi head/sys/gnu/dts/arm/imx53.dtsi head/sys/gnu/dts/arm/imx6dl-apf6dev.dts head/sys/gnu/dts/arm/imx6dl-aristainetos2_4.dts head/sys/gnu/dts/arm/imx6dl-aristainetos2_7.dts head/sys/gnu/dts/arm/imx6dl-aristainetos_4.dts head/sys/gnu/dts/arm/imx6dl-aristainetos_7.dts head/sys/gnu/dts/arm/imx6dl-colibri-eval-v3.dts head/sys/gnu/dts/arm/imx6dl-dfi-fs700-m60.dts head/sys/gnu/dts/arm/imx6dl-mamoj.dts head/sys/gnu/dts/arm/imx6dl-phytec-pfla02.dtsi head/sys/gnu/dts/arm/imx6dl-rex-basic.dts head/sys/gnu/dts/arm/imx6dl-riotboard.dts head/sys/gnu/dts/arm/imx6dl-ts4900.dts head/sys/gnu/dts/arm/imx6dl-ts7970.dts head/sys/gnu/dts/arm/imx6dl-wandboard-revb1.dts head/sys/gnu/dts/arm/imx6dl-wandboard-revd1.dts head/sys/gnu/dts/arm/imx6dl-wandboard.dts head/sys/gnu/dts/arm/imx6dl.dtsi head/sys/gnu/dts/arm/imx6q-apf6dev.dts head/sys/gnu/dts/arm/imx6q-arm2.dts head/sys/gnu/dts/arm/imx6q-b450v3.dts head/sys/gnu/dts/arm/imx6q-b650v3.dts head/sys/gnu/dts/arm/imx6q-b850v3.dts head/sys/gnu/dts/arm/imx6q-ba16.dtsi head/sys/gnu/dts/arm/imx6q-bx50v3.dtsi head/sys/gnu/dts/arm/imx6q-cm-fx6.dts head/sys/gnu/dts/arm/imx6q-dfi-fs700-m60.dts head/sys/gnu/dts/arm/imx6q-dhcom-som.dtsi head/sys/gnu/dts/arm/imx6q-display5.dtsi head/sys/gnu/dts/arm/imx6q-dmo-edmqmx6.dts head/sys/gnu/dts/arm/imx6q-evi.dts head/sys/gnu/dts/arm/imx6q-gk802.dts head/sys/gnu/dts/arm/imx6q-gw5400-a.dts head/sys/gnu/dts/arm/imx6q-h100.dts head/sys/gnu/dts/arm/imx6q-kp-tpc.dts head/sys/gnu/dts/arm/imx6q-marsboard.dts head/sys/gnu/dts/arm/imx6q-mccmon6.dts head/sys/gnu/dts/arm/imx6q-novena.dts head/sys/gnu/dts/arm/imx6q-phytec-pfla02.dtsi head/sys/gnu/dts/arm/imx6q-pistachio.dts head/sys/gnu/dts/arm/imx6q-rex-pro.dts head/sys/gnu/dts/arm/imx6q-sbc6x.dts head/sys/gnu/dts/arm/imx6q-tbs2910.dts head/sys/gnu/dts/arm/imx6q-ts4900.dts head/sys/gnu/dts/arm/imx6q-ts7970.dts head/sys/gnu/dts/arm/imx6q-wandboard-revb1.dts head/sys/gnu/dts/arm/imx6q-wandboard-revd1.dts head/sys/gnu/dts/arm/imx6q-wandboard.dts head/sys/gnu/dts/arm/imx6q-zii-rdu2.dts head/sys/gnu/dts/arm/imx6q.dtsi head/sys/gnu/dts/arm/imx6qdl-apalis.dtsi head/sys/gnu/dts/arm/imx6qdl-cubox-i.dtsi head/sys/gnu/dts/arm/imx6qdl-gw51xx.dtsi head/sys/gnu/dts/arm/imx6qdl-gw52xx.dtsi head/sys/gnu/dts/arm/imx6qdl-gw53xx.dtsi head/sys/gnu/dts/arm/imx6qdl-gw54xx.dtsi head/sys/gnu/dts/arm/imx6qdl-gw551x.dtsi head/sys/gnu/dts/arm/imx6qdl-gw552x.dtsi head/sys/gnu/dts/arm/imx6qdl-gw553x.dtsi head/sys/gnu/dts/arm/imx6qdl-gw560x.dtsi head/sys/gnu/dts/arm/imx6qdl-gw5903.dtsi head/sys/gnu/dts/arm/imx6qdl-gw5904.dtsi head/sys/gnu/dts/arm/imx6qdl-hummingboard.dtsi head/sys/gnu/dts/arm/imx6qdl-hummingboard2.dtsi head/sys/gnu/dts/arm/imx6qdl-icore-rqs.dtsi head/sys/gnu/dts/arm/imx6qdl-icore.dtsi head/sys/gnu/dts/arm/imx6qdl-nit6xlite.dtsi head/sys/gnu/dts/arm/imx6qdl-nitrogen6_max.dtsi head/sys/gnu/dts/arm/imx6qdl-nitrogen6_som2.dtsi head/sys/gnu/dts/arm/imx6qdl-nitrogen6x.dtsi head/sys/gnu/dts/arm/imx6qdl-phytec-pfla02.dtsi head/sys/gnu/dts/arm/imx6qdl-sabreauto.dtsi head/sys/gnu/dts/arm/imx6qdl-sabrelite.dtsi head/sys/gnu/dts/arm/imx6qdl-sabresd.dtsi head/sys/gnu/dts/arm/imx6qdl-tx6.dtsi head/sys/gnu/dts/arm/imx6qdl-udoo.dtsi head/sys/gnu/dts/arm/imx6qdl-var-dart.dtsi head/sys/gnu/dts/arm/imx6qdl-wandboard-revb1.dtsi head/sys/gnu/dts/arm/imx6qdl-wandboard-revc1.dtsi head/sys/gnu/dts/arm/imx6qdl-wandboard-revd1.dtsi head/sys/gnu/dts/arm/imx6qdl-zii-rdu2.dtsi head/sys/gnu/dts/arm/imx6qdl.dtsi head/sys/gnu/dts/arm/imx6qp-wandboard-revd1.dts head/sys/gnu/dts/arm/imx6qp-zii-rdu2.dts head/sys/gnu/dts/arm/imx6sl-evk.dts head/sys/gnu/dts/arm/imx6sl-warp.dts head/sys/gnu/dts/arm/imx6sl.dtsi head/sys/gnu/dts/arm/imx6sll-evk.dts head/sys/gnu/dts/arm/imx6sll.dtsi head/sys/gnu/dts/arm/imx6sx-nitrogen6sx.dts head/sys/gnu/dts/arm/imx6sx-sabreauto.dts head/sys/gnu/dts/arm/imx6sx-sdb-reva.dts head/sys/gnu/dts/arm/imx6sx-sdb-sai.dts head/sys/gnu/dts/arm/imx6sx-sdb.dts head/sys/gnu/dts/arm/imx6sx-sdb.dtsi head/sys/gnu/dts/arm/imx6sx-softing-vining-2000.dts head/sys/gnu/dts/arm/imx6sx-udoo-neo-basic.dts head/sys/gnu/dts/arm/imx6sx-udoo-neo-extended.dts head/sys/gnu/dts/arm/imx6sx-udoo-neo-full.dts head/sys/gnu/dts/arm/imx6sx.dtsi head/sys/gnu/dts/arm/imx6ul-14x14-evk.dtsi head/sys/gnu/dts/arm/imx6ul-ccimx6ulsbcpro.dts head/sys/gnu/dts/arm/imx6ul-ccimx6ulsom.dtsi head/sys/gnu/dts/arm/imx6ul-geam.dts head/sys/gnu/dts/arm/imx6ul-isiot.dtsi head/sys/gnu/dts/arm/imx6ul-litesom.dtsi head/sys/gnu/dts/arm/imx6ul-opos6ul.dtsi head/sys/gnu/dts/arm/imx6ul-pico-hobbit.dts head/sys/gnu/dts/arm/imx6ul-tx6ul.dtsi head/sys/gnu/dts/arm/imx6ul.dtsi head/sys/gnu/dts/arm/imx6ull-14x14-evk.dts head/sys/gnu/dts/arm/imx6ull-colibri-nonwifi.dtsi head/sys/gnu/dts/arm/imx6ull-colibri-wifi.dtsi head/sys/gnu/dts/arm/imx6ull.dtsi head/sys/gnu/dts/arm/imx6ulz-14x14-evk.dts head/sys/gnu/dts/arm/imx6ulz.dtsi head/sys/gnu/dts/arm/imx7d-cl-som-imx7.dts head/sys/gnu/dts/arm/imx7d-colibri-emmc.dtsi head/sys/gnu/dts/arm/imx7d-colibri.dtsi head/sys/gnu/dts/arm/imx7d-nitrogen7.dts head/sys/gnu/dts/arm/imx7d-pico-pi.dts head/sys/gnu/dts/arm/imx7d-pico.dtsi head/sys/gnu/dts/arm/imx7d-sdb.dts head/sys/gnu/dts/arm/imx7d.dtsi head/sys/gnu/dts/arm/imx7s-colibri.dtsi head/sys/gnu/dts/arm/imx7s-warp.dts head/sys/gnu/dts/arm/imx7s.dtsi head/sys/gnu/dts/arm/iwg20d-q7-common.dtsi head/sys/gnu/dts/arm/kirkwood-dnskw.dtsi head/sys/gnu/dts/arm/ls1021a-moxa-uc-8410a.dts head/sys/gnu/dts/arm/ls1021a.dtsi head/sys/gnu/dts/arm/meson.dtsi head/sys/gnu/dts/arm/meson6-atv1200.dts head/sys/gnu/dts/arm/meson6.dtsi head/sys/gnu/dts/arm/meson8-minix-neo-x8.dts head/sys/gnu/dts/arm/meson8.dtsi head/sys/gnu/dts/arm/meson8b-ec100.dts head/sys/gnu/dts/arm/meson8b-mxq.dts head/sys/gnu/dts/arm/meson8b-odroidc1.dts head/sys/gnu/dts/arm/meson8b.dtsi head/sys/gnu/dts/arm/meson8m2-mxiii-plus.dts head/sys/gnu/dts/arm/meson8m2.dtsi head/sys/gnu/dts/arm/mmp2.dtsi head/sys/gnu/dts/arm/motorola-cpcap-mapphone.dtsi head/sys/gnu/dts/arm/mt7623.dtsi head/sys/gnu/dts/arm/omap3-gta04.dtsi head/sys/gnu/dts/arm/omap3-n900.dts head/sys/gnu/dts/arm/omap3-n950-n9.dtsi head/sys/gnu/dts/arm/omap4-droid4-xt894.dts head/sys/gnu/dts/arm/omap4-l4.dtsi head/sys/gnu/dts/arm/omap4-sdp.dts head/sys/gnu/dts/arm/omap5-board-common.dtsi head/sys/gnu/dts/arm/omap5-cm-t54.dts head/sys/gnu/dts/arm/omap5.dtsi head/sys/gnu/dts/arm/pxa27x.dtsi head/sys/gnu/dts/arm/pxa2xx.dtsi head/sys/gnu/dts/arm/pxa3xx.dtsi head/sys/gnu/dts/arm/qcom-apq8084.dtsi head/sys/gnu/dts/arm/qcom-msm8974-lge-nexus5-hammerhead.dts head/sys/gnu/dts/arm/qcom-msm8974.dtsi head/sys/gnu/dts/arm/r8a7740.dtsi head/sys/gnu/dts/arm/r8a7743-iwg20m.dtsi head/sys/gnu/dts/arm/r8a7743.dtsi head/sys/gnu/dts/arm/r8a77470-iwg23s-sbc.dts head/sys/gnu/dts/arm/r8a77470.dtsi head/sys/gnu/dts/arm/r8a7790-lager.dts head/sys/gnu/dts/arm/r8a7791-koelsch.dts head/sys/gnu/dts/arm/r8a7791-porter.dts head/sys/gnu/dts/arm/r9a06g032.dtsi head/sys/gnu/dts/arm/rk3066a.dtsi head/sys/gnu/dts/arm/rk3188-px3-evb.dts head/sys/gnu/dts/arm/rk3188-radxarock.dts head/sys/gnu/dts/arm/rk3188.dtsi head/sys/gnu/dts/arm/rk322x.dtsi head/sys/gnu/dts/arm/rk3288-rock2-som.dtsi head/sys/gnu/dts/arm/rk3288-veyron-mickey.dts head/sys/gnu/dts/arm/rk3288.dtsi head/sys/gnu/dts/arm/rk3xxx.dtsi head/sys/gnu/dts/arm/rv1108.dtsi head/sys/gnu/dts/arm/s5pv210.dtsi head/sys/gnu/dts/arm/sama5d2.dtsi head/sys/gnu/dts/arm/sama5d4.dtsi head/sys/gnu/dts/arm/sh73a0.dtsi head/sys/gnu/dts/arm/socfpga.dtsi head/sys/gnu/dts/arm/socfpga_arria10.dtsi head/sys/gnu/dts/arm/socfpga_arria10_socdk.dtsi head/sys/gnu/dts/arm/socfpga_arria10_socdk_nand.dts head/sys/gnu/dts/arm/socfpga_arria10_socdk_qspi.dts head/sys/gnu/dts/arm/socfpga_arria10_socdk_sdmmc.dts head/sys/gnu/dts/arm/socfpga_arria5.dtsi head/sys/gnu/dts/arm/socfpga_arria5_socdk.dts head/sys/gnu/dts/arm/socfpga_cyclone5.dtsi head/sys/gnu/dts/arm/socfpga_cyclone5_de0_nano_soc.dts head/sys/gnu/dts/arm/socfpga_cyclone5_mcv.dtsi head/sys/gnu/dts/arm/socfpga_cyclone5_mcvevk.dts head/sys/gnu/dts/arm/socfpga_cyclone5_socdk.dts head/sys/gnu/dts/arm/socfpga_cyclone5_sockit.dts head/sys/gnu/dts/arm/socfpga_cyclone5_socrates.dts head/sys/gnu/dts/arm/socfpga_cyclone5_sodia.dts head/sys/gnu/dts/arm/socfpga_cyclone5_vining_fpga.dts head/sys/gnu/dts/arm/socfpga_vt.dts head/sys/gnu/dts/arm/sun4i-a10-inet9f-rev03.dts head/sys/gnu/dts/arm/sun4i-a10-pcduino.dts head/sys/gnu/dts/arm/sun4i-a10.dtsi head/sys/gnu/dts/arm/sun5i-a10s-auxtek-t003.dts head/sys/gnu/dts/arm/sun5i-a10s-auxtek-t004.dts head/sys/gnu/dts/arm/sun5i-a10s-mk802.dts head/sys/gnu/dts/arm/sun5i-a10s-olinuxino-micro.dts head/sys/gnu/dts/arm/sun5i-a10s-r7-tv-dongle.dts head/sys/gnu/dts/arm/sun5i-a10s-wobo-i5.dts head/sys/gnu/dts/arm/sun5i-a10s.dtsi head/sys/gnu/dts/arm/sun5i-a13-empire-electronix-d709.dts head/sys/gnu/dts/arm/sun5i-a13-hsg-h702.dts head/sys/gnu/dts/arm/sun5i-a13-licheepi-one.dts head/sys/gnu/dts/arm/sun5i-a13-olinuxino-micro.dts head/sys/gnu/dts/arm/sun5i-a13-olinuxino.dts head/sys/gnu/dts/arm/sun5i-a13-utoo-p66.dts head/sys/gnu/dts/arm/sun5i-a13.dtsi head/sys/gnu/dts/arm/sun5i-gr8-chip-pro.dts head/sys/gnu/dts/arm/sun5i-gr8-evb.dts head/sys/gnu/dts/arm/sun5i-gr8.dtsi head/sys/gnu/dts/arm/sun5i-r8-chip.dts head/sys/gnu/dts/arm/sun5i-reference-design-tablet.dtsi head/sys/gnu/dts/arm/sun5i.dtsi head/sys/gnu/dts/arm/sun6i-a31-app4-evb1.dts head/sys/gnu/dts/arm/sun6i-a31-colombus.dts head/sys/gnu/dts/arm/sun6i-a31-hummingbird.dts head/sys/gnu/dts/arm/sun6i-a31-i7.dts head/sys/gnu/dts/arm/sun6i-a31-m9.dts head/sys/gnu/dts/arm/sun6i-a31-mele-a1000g-quad.dts head/sys/gnu/dts/arm/sun6i-a31.dtsi head/sys/gnu/dts/arm/sun6i-a31s-colorfly-e708-q1.dts head/sys/gnu/dts/arm/sun6i-a31s-cs908.dts head/sys/gnu/dts/arm/sun6i-a31s-inet-q972.dts head/sys/gnu/dts/arm/sun6i-a31s-primo81.dts head/sys/gnu/dts/arm/sun6i-a31s-sina31s-core.dtsi head/sys/gnu/dts/arm/sun6i-a31s-sina31s.dts head/sys/gnu/dts/arm/sun6i-a31s-sinovoip-bpi-m2.dts head/sys/gnu/dts/arm/sun6i-a31s-yones-toptech-bs1078-v2.dts head/sys/gnu/dts/arm/sun6i-reference-design-tablet.dtsi head/sys/gnu/dts/arm/sun7i-a20-bananapi-m1-plus.dts head/sys/gnu/dts/arm/sun7i-a20-bananapi.dts head/sys/gnu/dts/arm/sun7i-a20-bananapro.dts head/sys/gnu/dts/arm/sun7i-a20-cubieboard2.dts head/sys/gnu/dts/arm/sun7i-a20-cubietruck.dts head/sys/gnu/dts/arm/sun7i-a20-hummingbird.dts head/sys/gnu/dts/arm/sun7i-a20-i12-tvbox.dts head/sys/gnu/dts/arm/sun7i-a20-icnova-swac.dts head/sys/gnu/dts/arm/sun7i-a20-itead-ibox.dts head/sys/gnu/dts/arm/sun7i-a20-lamobo-r1.dts head/sys/gnu/dts/arm/sun7i-a20-m3.dts head/sys/gnu/dts/arm/sun7i-a20-mk808c.dts head/sys/gnu/dts/arm/sun7i-a20-olimex-som-evb-emmc.dts head/sys/gnu/dts/arm/sun7i-a20-olimex-som-evb.dts head/sys/gnu/dts/arm/sun7i-a20-olimex-som204-evb-emmc.dts head/sys/gnu/dts/arm/sun7i-a20-olimex-som204-evb.dts head/sys/gnu/dts/arm/sun7i-a20-olinuxino-lime.dts head/sys/gnu/dts/arm/sun7i-a20-olinuxino-lime2-emmc.dts head/sys/gnu/dts/arm/sun7i-a20-olinuxino-lime2.dts head/sys/gnu/dts/arm/sun7i-a20-olinuxino-micro-emmc.dts head/sys/gnu/dts/arm/sun7i-a20-olinuxino-micro.dts head/sys/gnu/dts/arm/sun7i-a20-orangepi-mini.dts head/sys/gnu/dts/arm/sun7i-a20-orangepi.dts head/sys/gnu/dts/arm/sun7i-a20-pcduino3-nano.dts head/sys/gnu/dts/arm/sun7i-a20-pcduino3.dts head/sys/gnu/dts/arm/sun7i-a20-wexler-tab7200.dts head/sys/gnu/dts/arm/sun7i-a20-wits-pro-a20-dkt.dts head/sys/gnu/dts/arm/sun7i-a20.dtsi head/sys/gnu/dts/arm/sun8i-a23-a33.dtsi head/sys/gnu/dts/arm/sun8i-a23-evb.dts head/sys/gnu/dts/arm/sun8i-a23-gt90h-v4.dts head/sys/gnu/dts/arm/sun8i-a23-polaroid-mid2407pxe03.dts head/sys/gnu/dts/arm/sun8i-a23-polaroid-mid2809pxe04.dts head/sys/gnu/dts/arm/sun8i-a23.dtsi head/sys/gnu/dts/arm/sun8i-a33-ga10h-v1.1.dts head/sys/gnu/dts/arm/sun8i-a33-inet-d978-rev2.dts head/sys/gnu/dts/arm/sun8i-a33-olinuxino.dts head/sys/gnu/dts/arm/sun8i-a33-sinlinx-sina33.dts head/sys/gnu/dts/arm/sun8i-a33.dtsi head/sys/gnu/dts/arm/sun8i-a83t-bananapi-m3.dts head/sys/gnu/dts/arm/sun8i-a83t-cubietruck-plus.dts head/sys/gnu/dts/arm/sun8i-a83t-tbs-a711.dts head/sys/gnu/dts/arm/sun8i-a83t.dtsi head/sys/gnu/dts/arm/sun8i-h3-beelink-x2.dts head/sys/gnu/dts/arm/sun8i-h3-orangepi-plus.dts head/sys/gnu/dts/arm/sun8i-h3.dtsi head/sys/gnu/dts/arm/sun8i-q8-common.dtsi head/sys/gnu/dts/arm/sun8i-r16-bananapi-m2m.dts head/sys/gnu/dts/arm/sun8i-r16-nintendo-nes-classic.dts head/sys/gnu/dts/arm/sun8i-r16-parrot.dts head/sys/gnu/dts/arm/sun8i-r40.dtsi head/sys/gnu/dts/arm/sun8i-reference-design-tablet.dtsi head/sys/gnu/dts/arm/sun8i-v3s-licheepi-zero-dock.dts head/sys/gnu/dts/arm/sun8i-v3s-licheepi-zero.dts head/sys/gnu/dts/arm/sun8i-v3s.dtsi head/sys/gnu/dts/arm/sunxi-h3-h5.dtsi head/sys/gnu/dts/arm/sunxi-itead-core-common.dtsi head/sys/gnu/dts/arm/sunxi-reference-design-tablet.dtsi head/sys/gnu/dts/arm/tegra124-nyan.dtsi head/sys/gnu/dts/arm/tegra124.dtsi head/sys/gnu/dts/arm/tegra20.dtsi head/sys/gnu/dts/arm/uniphier-ld4.dtsi head/sys/gnu/dts/arm/uniphier-pro4.dtsi head/sys/gnu/dts/arm/uniphier-pxs2.dtsi head/sys/gnu/dts/arm/uniphier-sld8.dtsi head/sys/gnu/dts/arm/vexpress-v2m-rs1.dtsi head/sys/gnu/dts/arm/vexpress-v2m.dtsi head/sys/gnu/dts/arm/vexpress-v2p-ca15-tc1.dts head/sys/gnu/dts/arm/vexpress-v2p-ca15_a7.dts head/sys/gnu/dts/arm/vexpress-v2p-ca5s.dts head/sys/gnu/dts/arm/vexpress-v2p-ca9.dts head/sys/gnu/dts/arm/vf500-colibri.dtsi head/sys/gnu/dts/arm/vf500.dtsi head/sys/gnu/dts/arm/vf610-colibri.dtsi head/sys/gnu/dts/arm/vf610-cosmic.dts head/sys/gnu/dts/arm/vf610-twr.dts head/sys/gnu/dts/arm/vf610-zii-cfu1.dts head/sys/gnu/dts/arm/vf610-zii-dev.dtsi head/sys/gnu/dts/arm/vf610-zii-ssmb-spu3.dts head/sys/gnu/dts/arm/vf610m4-colibri.dts head/sys/gnu/dts/arm/vf610m4.dtsi head/sys/gnu/dts/arm/zynq-7000.dtsi head/sys/gnu/dts/arm64/allwinner/axp803.dtsi head/sys/gnu/dts/arm64/allwinner/sun50i-a64-bananapi-m64.dts head/sys/gnu/dts/arm64/allwinner/sun50i-a64-orangepi-win.dts head/sys/gnu/dts/arm64/allwinner/sun50i-a64-pine64.dts head/sys/gnu/dts/arm64/allwinner/sun50i-a64-pinebook.dts head/sys/gnu/dts/arm64/allwinner/sun50i-a64-sopine-baseboard.dts head/sys/gnu/dts/arm64/allwinner/sun50i-a64-sopine.dtsi head/sys/gnu/dts/arm64/allwinner/sun50i-a64.dtsi head/sys/gnu/dts/arm64/allwinner/sun50i-h5.dtsi head/sys/gnu/dts/arm64/allwinner/sun50i-h6-orangepi-one-plus.dts head/sys/gnu/dts/arm64/allwinner/sun50i-h6-pine-h64.dts head/sys/gnu/dts/arm64/allwinner/sun50i-h6.dtsi head/sys/gnu/dts/arm64/altera/socfpga_stratix10.dtsi head/sys/gnu/dts/arm64/amlogic/meson-axg-s400.dts head/sys/gnu/dts/arm64/amlogic/meson-axg.dtsi head/sys/gnu/dts/arm64/amlogic/meson-gx-p23x-q20x.dtsi head/sys/gnu/dts/arm64/amlogic/meson-gx.dtsi head/sys/gnu/dts/arm64/amlogic/meson-gxbb-nanopi-k2.dts head/sys/gnu/dts/arm64/amlogic/meson-gxbb-nexbox-a95x.dts head/sys/gnu/dts/arm64/amlogic/meson-gxbb-odroidc2.dts head/sys/gnu/dts/arm64/amlogic/meson-gxbb-p20x.dtsi head/sys/gnu/dts/arm64/amlogic/meson-gxbb-vega-s95.dtsi head/sys/gnu/dts/arm64/amlogic/meson-gxbb-wetek.dtsi head/sys/gnu/dts/arm64/amlogic/meson-gxbb.dtsi head/sys/gnu/dts/arm64/amlogic/meson-gxl-s905d-p230.dts head/sys/gnu/dts/arm64/amlogic/meson-gxl-s905x-hwacom-amazetv.dts head/sys/gnu/dts/arm64/amlogic/meson-gxl-s905x-khadas-vim.dts head/sys/gnu/dts/arm64/amlogic/meson-gxl-s905x-libretech-cc.dts head/sys/gnu/dts/arm64/amlogic/meson-gxl-s905x-nexbox-a95x.dts head/sys/gnu/dts/arm64/amlogic/meson-gxl-s905x-p212.dts head/sys/gnu/dts/arm64/amlogic/meson-gxl-s905x-p212.dtsi head/sys/gnu/dts/arm64/amlogic/meson-gxl.dtsi head/sys/gnu/dts/arm64/amlogic/meson-gxm-khadas-vim2.dts head/sys/gnu/dts/arm64/amlogic/meson-gxm-nexbox-a1.dts head/sys/gnu/dts/arm64/amlogic/meson-gxm-rbox-pro.dts head/sys/gnu/dts/arm64/arm/rtsm_ve-aemv8a.dts head/sys/gnu/dts/arm64/arm/rtsm_ve-motherboard.dtsi head/sys/gnu/dts/arm64/arm/vexpress-v2f-1xv7-ca53x2.dts head/sys/gnu/dts/arm64/arm/vexpress-v2m-rs1.dtsi head/sys/gnu/dts/arm64/exynos/exynos5433-tm2-common.dtsi head/sys/gnu/dts/arm64/exynos/exynos5433-tmu.dtsi head/sys/gnu/dts/arm64/exynos/exynos5433.dtsi head/sys/gnu/dts/arm64/freescale/fsl-ls1012a.dtsi head/sys/gnu/dts/arm64/freescale/fsl-ls1043a-qds.dts head/sys/gnu/dts/arm64/freescale/fsl-ls1043a.dtsi head/sys/gnu/dts/arm64/freescale/fsl-ls1046a-qds.dts head/sys/gnu/dts/arm64/freescale/fsl-ls1046a-rdb.dts head/sys/gnu/dts/arm64/freescale/fsl-ls1046a.dtsi head/sys/gnu/dts/arm64/freescale/fsl-ls1088a.dtsi head/sys/gnu/dts/arm64/freescale/fsl-ls2088a.dtsi head/sys/gnu/dts/arm64/freescale/fsl-ls208xa-qds.dtsi head/sys/gnu/dts/arm64/freescale/fsl-ls208xa.dtsi head/sys/gnu/dts/arm64/hisilicon/hi3660-hikey960.dts head/sys/gnu/dts/arm64/hisilicon/hi3660.dtsi head/sys/gnu/dts/arm64/hisilicon/hi3670-hikey970.dts head/sys/gnu/dts/arm64/hisilicon/hi3670.dtsi head/sys/gnu/dts/arm64/hisilicon/hi3798cv200-poplar.dts head/sys/gnu/dts/arm64/hisilicon/hi6220-hikey.dts head/sys/gnu/dts/arm64/hisilicon/hi6220.dtsi head/sys/gnu/dts/arm64/marvell/armada-3720-espressobin.dts head/sys/gnu/dts/arm64/marvell/armada-37xx.dtsi head/sys/gnu/dts/arm64/marvell/armada-8040-clearfog-gt-8k.dts head/sys/gnu/dts/arm64/marvell/armada-8040-mcbin.dts head/sys/gnu/dts/arm64/marvell/armada-ap806.dtsi head/sys/gnu/dts/arm64/mediatek/mt7622.dtsi head/sys/gnu/dts/arm64/mediatek/mt8173.dtsi head/sys/gnu/dts/arm64/nvidia/tegra186-p2771-0000.dts head/sys/gnu/dts/arm64/nvidia/tegra186-p3310.dtsi head/sys/gnu/dts/arm64/nvidia/tegra186.dtsi head/sys/gnu/dts/arm64/nvidia/tegra194-p2888.dtsi head/sys/gnu/dts/arm64/nvidia/tegra194-p2972-0000.dts head/sys/gnu/dts/arm64/nvidia/tegra194.dtsi head/sys/gnu/dts/arm64/nvidia/tegra210-p2597.dtsi head/sys/gnu/dts/arm64/nvidia/tegra210.dtsi head/sys/gnu/dts/arm64/qcom/apq8096-db820c.dtsi head/sys/gnu/dts/arm64/qcom/msm8916-pins.dtsi head/sys/gnu/dts/arm64/qcom/msm8916.dtsi head/sys/gnu/dts/arm64/qcom/msm8996-pins.dtsi head/sys/gnu/dts/arm64/qcom/msm8996.dtsi head/sys/gnu/dts/arm64/qcom/msm8998-mtp.dtsi head/sys/gnu/dts/arm64/qcom/msm8998.dtsi head/sys/gnu/dts/arm64/qcom/pm8998.dtsi head/sys/gnu/dts/arm64/qcom/sdm845.dtsi head/sys/gnu/dts/arm64/renesas/r8a774a1.dtsi head/sys/gnu/dts/arm64/renesas/r8a7795-es1-salvator-x.dts head/sys/gnu/dts/arm64/renesas/r8a7795-es1.dtsi head/sys/gnu/dts/arm64/renesas/r8a7795-salvator-x.dts head/sys/gnu/dts/arm64/renesas/r8a7795-salvator-xs.dts head/sys/gnu/dts/arm64/renesas/r8a7795.dtsi head/sys/gnu/dts/arm64/renesas/r8a7796.dtsi head/sys/gnu/dts/arm64/renesas/r8a77965.dtsi head/sys/gnu/dts/arm64/renesas/r8a77970.dtsi head/sys/gnu/dts/arm64/renesas/r8a77980.dtsi head/sys/gnu/dts/arm64/renesas/r8a77990-ebisu.dts head/sys/gnu/dts/arm64/renesas/r8a77990.dtsi head/sys/gnu/dts/arm64/renesas/r8a77995-draak.dts head/sys/gnu/dts/arm64/renesas/r8a77995.dtsi head/sys/gnu/dts/arm64/renesas/salvator-common.dtsi head/sys/gnu/dts/arm64/renesas/ulcb.dtsi head/sys/gnu/dts/arm64/rockchip/rk3328-rock64.dts head/sys/gnu/dts/arm64/rockchip/rk3328.dtsi head/sys/gnu/dts/arm64/rockchip/rk3368.dtsi head/sys/gnu/dts/arm64/rockchip/rk3399-ficus.dts head/sys/gnu/dts/arm64/rockchip/rk3399-gru-bob.dts head/sys/gnu/dts/arm64/rockchip/rk3399-gru-chromebook.dtsi head/sys/gnu/dts/arm64/rockchip/rk3399-gru-kevin.dts head/sys/gnu/dts/arm64/rockchip/rk3399-gru.dtsi head/sys/gnu/dts/arm64/rockchip/rk3399-rock960.dts head/sys/gnu/dts/arm64/rockchip/rk3399-rockpro64.dts head/sys/gnu/dts/arm64/rockchip/rk3399-sapphire-excavator.dts head/sys/gnu/dts/arm64/rockchip/rk3399-sapphire.dtsi head/sys/gnu/dts/arm64/rockchip/rk3399.dtsi head/sys/gnu/dts/arm64/socionext/uniphier-ld20.dtsi head/sys/gnu/dts/arm64/sprd/sc9836.dtsi head/sys/gnu/dts/arm64/sprd/sc9860.dtsi head/sys/gnu/dts/arm64/ti/k3-am65-main.dtsi head/sys/gnu/dts/arm64/ti/k3-am65-mcu.dtsi head/sys/gnu/dts/arm64/ti/k3-am65-wakeup.dtsi head/sys/gnu/dts/arm64/ti/k3-am65.dtsi head/sys/gnu/dts/arm64/ti/k3-am654-base-board.dts head/sys/gnu/dts/arm64/xilinx/zynqmp-clk.dtsi head/sys/gnu/dts/arm64/xilinx/zynqmp-zcu100-revC.dts head/sys/gnu/dts/arm64/xilinx/zynqmp-zcu102-revA.dts head/sys/gnu/dts/arm64/xilinx/zynqmp-zcu106-revA.dts head/sys/gnu/dts/arm64/xilinx/zynqmp-zcu111-revA.dts head/sys/gnu/dts/arm64/xilinx/zynqmp.dtsi head/sys/gnu/dts/include/dt-bindings/clock/bcm2835-aux.h head/sys/gnu/dts/include/dt-bindings/clock/bcm2835.h head/sys/gnu/dts/include/dt-bindings/clock/gxbb-clkc.h head/sys/gnu/dts/include/dt-bindings/clock/imx6qdl-clock.h head/sys/gnu/dts/include/dt-bindings/clock/meson8b-clkc.h head/sys/gnu/dts/include/dt-bindings/clock/qcom,gcc-msm8998.h head/sys/gnu/dts/include/dt-bindings/clock/qcom,gcc-sdm845.h head/sys/gnu/dts/include/dt-bindings/clock/qcom,rpmcc.h head/sys/gnu/dts/include/dt-bindings/clock/r8a7795-cpg-mssr.h head/sys/gnu/dts/include/dt-bindings/clock/r8a7796-cpg-mssr.h head/sys/gnu/dts/include/dt-bindings/clock/r8a77995-cpg-mssr.h head/sys/gnu/dts/include/dt-bindings/clock/rk3328-cru.h head/sys/gnu/dts/include/dt-bindings/clock/sun8i-de2.h head/sys/gnu/dts/include/dt-bindings/gpio/tegra186-gpio.h head/sys/gnu/dts/include/dt-bindings/input/linux-event-codes.h head/sys/gnu/dts/include/dt-bindings/mailbox/tegra186-hsp.h head/sys/gnu/dts/include/dt-bindings/media/xilinx-vip.h head/sys/gnu/dts/include/dt-bindings/pinctrl/bcm2835.h head/sys/gnu/dts/include/dt-bindings/power/r8a77970-sysc.h head/sys/gnu/dts/include/dt-bindings/power/r8a77980-sysc.h head/sys/gnu/dts/include/dt-bindings/power/raspberrypi-power.h head/sys/gnu/dts/include/dt-bindings/reset/amlogic,meson-axg-reset.h head/sys/gnu/dts/include/dt-bindings/reset/sun8i-de2.h head/sys/gnu/dts/include/dt-bindings/sound/qcom,q6afe.h Directory Properties: head/sys/gnu/dts/arm/ (props changed) head/sys/gnu/dts/arm64/ (props changed) head/sys/gnu/dts/include/ (props changed) Modified: head/sys/gnu/dts/arm/am335x-bone-common.dtsi ============================================================================== --- head/sys/gnu/dts/arm/am335x-bone-common.dtsi Wed Apr 10 18:12:31 2019 (r346091) +++ head/sys/gnu/dts/arm/am335x-bone-common.dtsi Wed Apr 10 18:15:36 2019 (r346092) @@ -419,6 +419,6 @@ }; &rtc { - clocks = <&clk_32768_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&clk_32768_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; clock-names = "ext-clk", "int-clk"; }; Modified: head/sys/gnu/dts/arm/am335x-boneblue.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-boneblue.dts Wed Apr 10 18:12:31 2019 (r346091) +++ head/sys/gnu/dts/arm/am335x-boneblue.dts Wed Apr 10 18:15:36 2019 (r346092) @@ -515,7 +515,7 @@ &rtc { system-power-controller; - clocks = <&clk_32768_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&clk_32768_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; clock-names = "ext-clk", "int-clk"; }; Modified: head/sys/gnu/dts/arm/am335x-cm-t335.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-cm-t335.dts Wed Apr 10 18:12:31 2019 (r346091) +++ head/sys/gnu/dts/arm/am335x-cm-t335.dts Wed Apr 10 18:15:36 2019 (r346092) @@ -393,7 +393,7 @@ status = "okay"; &epwmss0 { status = "okay"; - ecap0: ecap@48300100 { + ecap0: ecap@100 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&ecap0_pins>; Modified: head/sys/gnu/dts/arm/am335x-evm.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-evm.dts Wed Apr 10 18:12:31 2019 (r346091) +++ head/sys/gnu/dts/arm/am335x-evm.dts Wed Apr 10 18:15:36 2019 (r346092) @@ -519,7 +519,7 @@ &epwmss0 { status = "okay"; - ecap0: ecap@48300100 { + ecap0: ecap@100 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&ecap0_pins>; @@ -729,7 +729,7 @@ &cpsw_emac0 { phy-handle = <ðphy0>; - phy-mode = "rgmii-txid"; + phy-mode = "rgmii-id"; }; &tscadc { @@ -797,6 +797,6 @@ }; &rtc { - clocks = <&clk_32768_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&clk_32768_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; clock-names = "ext-clk", "int-clk"; }; Modified: head/sys/gnu/dts/arm/am335x-evmsk.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-evmsk.dts Wed Apr 10 18:12:31 2019 (r346091) +++ head/sys/gnu/dts/arm/am335x-evmsk.dts Wed Apr 10 18:15:36 2019 (r346092) @@ -540,7 +540,7 @@ &epwmss2 { status = "okay"; - ecap2: ecap@48304100 { + ecap2: ecap@100 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&ecap2_pins>; @@ -651,13 +651,13 @@ &cpsw_emac0 { phy-handle = <ðphy0>; - phy-mode = "rgmii-txid"; + phy-mode = "rgmii-id"; dual_emac_res_vlan = <1>; }; &cpsw_emac1 { phy-handle = <ðphy1>; - phy-mode = "rgmii-txid"; + phy-mode = "rgmii-id"; dual_emac_res_vlan = <2>; }; @@ -738,6 +738,6 @@ }; &rtc { - clocks = <&clk_32768_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&clk_32768_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; clock-names = "ext-clk", "int-clk"; }; Modified: head/sys/gnu/dts/arm/am335x-osd3358-sm-red.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-osd3358-sm-red.dts Wed Apr 10 18:12:31 2019 (r346091) +++ head/sys/gnu/dts/arm/am335x-osd3358-sm-red.dts Wed Apr 10 18:15:36 2019 (r346092) @@ -456,6 +456,6 @@ }; &rtc { - clocks = <&clk_32768_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&clk_32768_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; clock-names = "ext-clk", "int-clk"; }; Modified: head/sys/gnu/dts/arm/am335x-pdu001.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-pdu001.dts Wed Apr 10 18:12:31 2019 (r346091) +++ head/sys/gnu/dts/arm/am335x-pdu001.dts Wed Apr 10 18:15:36 2019 (r346092) @@ -585,7 +585,7 @@ bus-width = <4>; pinctrl-names = "default"; pinctrl-0 = <&mmc2_pins>; - cd-gpios = <&gpio2 2 GPIO_ACTIVE_LOW>; + cd-gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>; }; &sham { Modified: head/sys/gnu/dts/arm/am335x-shc.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-shc.dts Wed Apr 10 18:12:31 2019 (r346091) +++ head/sys/gnu/dts/arm/am335x-shc.dts Wed Apr 10 18:15:36 2019 (r346092) @@ -138,7 +138,7 @@ &epwmss1 { status = "okay"; - ehrpwm1: pwm@48302200 { + ehrpwm1: pwm@200 { pinctrl-names = "default"; pinctrl-0 = <&ehrpwm1_pins>; status = "okay"; @@ -205,7 +205,7 @@ pinctrl-1 = <&cpsw_sleep>; status = "okay"; slaves = <1>; - cpsw_emac0: slave@4a100200 { + cpsw_emac0: slave@200 { phy-mode = "mii"; phy-handle = <ðernetphy0>; }; @@ -215,7 +215,7 @@ pinctrl-names = "default"; pinctrl-0 = <&mmc1_pins>; bus-width = <0x4>; - cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>; + cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; cd-inverted; max-frequency = <26000000>; vmmc-supply = <&vmmcsd_fixed>; Modified: head/sys/gnu/dts/arm/am33xx-clocks.dtsi ============================================================================== --- head/sys/gnu/dts/arm/am33xx-clocks.dtsi Wed Apr 10 18:12:31 2019 (r346091) +++ head/sys/gnu/dts/arm/am33xx-clocks.dtsi Wed Apr 10 18:15:36 2019 (r346092) @@ -334,49 +334,49 @@ timer1_fck: timer1_fck@528 { #clock-cells = <0>; compatible = "ti,mux-clock"; - clocks = <&sys_clkin_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>, <&tclkin_ck>, <&clk_rc32k_ck>, <&clk_32768_ck>; + clocks = <&sys_clkin_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>, <&tclkin_ck>, <&clk_rc32k_ck>, <&clk_32768_ck>; reg = <0x0528>; }; timer2_fck: timer2_fck@508 { #clock-cells = <0>; compatible = "ti,mux-clock"; - clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; reg = <0x0508>; }; timer3_fck: timer3_fck@50c { #clock-cells = <0>; compatible = "ti,mux-clock"; - clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; reg = <0x050c>; }; timer4_fck: timer4_fck@510 { #clock-cells = <0>; compatible = "ti,mux-clock"; - clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; reg = <0x0510>; }; timer5_fck: timer5_fck@518 { #clock-cells = <0>; compatible = "ti,mux-clock"; - clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; reg = <0x0518>; }; timer6_fck: timer6_fck@51c { #clock-cells = <0>; compatible = "ti,mux-clock"; - clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; reg = <0x051c>; }; timer7_fck: timer7_fck@504 { #clock-cells = <0>; compatible = "ti,mux-clock"; - clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; reg = <0x0504>; }; @@ -407,7 +407,7 @@ wdt1_fck: wdt1_fck@538 { #clock-cells = <0>; compatible = "ti,mux-clock"; - clocks = <&clk_rc32k_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&clk_rc32k_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; reg = <0x0538>; }; @@ -477,7 +477,7 @@ gpio0_dbclk_mux_ck: gpio0_dbclk_mux_ck@53c { #clock-cells = <0>; compatible = "ti,mux-clock"; - clocks = <&clk_rc32k_ck>, <&clk_32768_ck>, <&l4_per_clkctrl AM3_CLKDIV32K_CLKCTRL 0>; + clocks = <&clk_rc32k_ck>, <&clk_32768_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; reg = <0x053c>; }; @@ -539,86 +539,140 @@ }; &prcm { - l4_per_cm: l4_per_cm@0 { + per_cm: per-cm@0 { compatible = "ti,omap4-cm"; - reg = <0x0 0x200>; + reg = <0x0 0x400>; #address-cells = <1>; #size-cells = <1>; - ranges = <0 0x0 0x200>; + ranges = <0 0x0 0x400>; - l4_per_clkctrl: clk@14 { + l4ls_clkctrl: l4ls-clkctrl@38 { compatible = "ti,clkctrl"; - reg = <0x14 0x13c>; + reg = <0x38 0x2c>, <0x6c 0x28>, <0xac 0xc>, <0xc0 0x1c>, <0xec 0xc>, <0x10c 0x8>, <0x130 0x4>; #clock-cells = <2>; }; + + l3s_clkctrl: l3s-clkctrl@1c { + compatible = "ti,clkctrl"; + reg = <0x1c 0x4>, <0x30 0x8>, <0x68 0x4>, <0xf8 0x4>; + #clock-cells = <2>; + }; + + l3_clkctrl: l3-clkctrl@24 { + compatible = "ti,clkctrl"; + reg = <0x24 0xc>, <0x94 0x10>, <0xbc 0x4>, <0xdc 0x8>, <0xfc 0x8>; + #clock-cells = <2>; + }; + + l4hs_clkctrl: l4hs-clkctrl@120 { + compatible = "ti,clkctrl"; + reg = <0x120 0x4>; + #clock-cells = <2>; + }; + + pruss_ocp_clkctrl: pruss-ocp-clkctrl@e8 { + compatible = "ti,clkctrl"; + reg = <0xe8 0x4>; + #clock-cells = <2>; + }; + + cpsw_125mhz_clkctrl: cpsw-125mhz-clkctrl@0 { + compatible = "ti,clkctrl"; + reg = <0x0 0x18>; + #clock-cells = <2>; + }; + + lcdc_clkctrl: lcdc-clkctrl@18 { + compatible = "ti,clkctrl"; + reg = <0x18 0x4>; + #clock-cells = <2>; + }; + + clk_24mhz_clkctrl: clk-24mhz-clkctrl@14c { + compatible = "ti,clkctrl"; + reg = <0x14c 0x4>; + #clock-cells = <2>; + }; }; - l4_wkup_cm: l4_wkup_cm@400 { + wkup_cm: wkup-cm@400 { compatible = "ti,omap4-cm"; reg = <0x400 0x100>; #address-cells = <1>; #size-cells = <1>; ranges = <0 0x400 0x100>; - l4_wkup_clkctrl: clk@4 { + l4_wkup_clkctrl: l4-wkup-clkctrl@0 { compatible = "ti,clkctrl"; - reg = <0x4 0xd4>; + reg = <0x0 0x10>, <0xb4 0x24>; #clock-cells = <2>; }; + + l3_aon_clkctrl: l3-aon-clkctrl@14 { + compatible = "ti,clkctrl"; + reg = <0x14 0x4>; + #clock-cells = <2>; + }; + + l4_wkup_aon_clkctrl: l4-wkup-aon-clkctrl@b0 { + compatible = "ti,clkctrl"; + reg = <0xb0 0x4>; + #clock-cells = <2>; + }; }; - mpu_cm: mpu_cm@600 { + mpu_cm: mpu-cm@600 { compatible = "ti,omap4-cm"; reg = <0x600 0x100>; #address-cells = <1>; #size-cells = <1>; ranges = <0 0x600 0x100>; - mpu_clkctrl: clk@4 { + mpu_clkctrl: mpu-clkctrl@0 { compatible = "ti,clkctrl"; - reg = <0x4 0x4>; + reg = <0x0 0x8>; #clock-cells = <2>; }; }; - l4_rtc_cm: l4_rtc_cm@800 { + l4_rtc_cm: l4-rtc-cm@800 { compatible = "ti,omap4-cm"; reg = <0x800 0x100>; #address-cells = <1>; #size-cells = <1>; ranges = <0 0x800 0x100>; - l4_rtc_clkctrl: clk@0 { + l4_rtc_clkctrl: l4-rtc-clkctrl@0 { compatible = "ti,clkctrl"; reg = <0x0 0x4>; #clock-cells = <2>; }; }; - gfx_l3_cm: gfx_l3_cm@900 { + gfx_l3_cm: gfx-l3-cm@900 { compatible = "ti,omap4-cm"; reg = <0x900 0x100>; #address-cells = <1>; #size-cells = <1>; ranges = <0 0x900 0x100>; - gfx_l3_clkctrl: clk@4 { + gfx_l3_clkctrl: gfx-l3-clkctrl@0 { compatible = "ti,clkctrl"; - reg = <0x4 0x4>; + reg = <0x0 0x8>; #clock-cells = <2>; }; }; - l4_cefuse_cm: l4_cefuse_cm@a00 { + l4_cefuse_cm: l4-cefuse-cm@a00 { compatible = "ti,omap4-cm"; reg = <0xa00 0x100>; #address-cells = <1>; #size-cells = <1>; ranges = <0 0xa00 0x100>; - l4_cefuse_clkctrl: clk@20 { + l4_cefuse_clkctrl: l4-cefuse-clkctrl@0 { compatible = "ti,clkctrl"; - reg = <0x20 0x4>; + reg = <0x0 0x24>; #clock-cells = <2>; }; }; Copied: head/sys/gnu/dts/arm/am33xx-l4.dtsi (from r346089, vendor/device-tree/dist/src/arm/am33xx-l4.dtsi) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/gnu/dts/arm/am33xx-l4.dtsi Wed Apr 10 18:15:36 2019 (r346092, copy of r346089, vendor/device-tree/dist/src/arm/am33xx-l4.dtsi) @@ -0,0 +1,2132 @@ +&l4_wkup { /* 0x44c00000 */ + compatible = "ti,am33xx-l4-wkup", "simple-bus"; + reg = <0x44c00000 0x800>, + <0x44c00800 0x800>, + <0x44c01000 0x400>, + <0x44c01400 0x400>; + reg-names = "ap", "la", "ia0", "ia1"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x00000000 0x44c00000 0x100000>, /* segment 0 */ + <0x00100000 0x44d00000 0x100000>, /* segment 1 */ + <0x00200000 0x44e00000 0x100000>; /* segment 2 */ + + segment@0 { /* 0x44c00000 */ + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x00000000 0x00000000 0x000800>, /* ap 0 */ + <0x00000800 0x00000800 0x000800>, /* ap 1 */ + <0x00001000 0x00001000 0x000400>, /* ap 2 */ + <0x00001400 0x00001400 0x000400>; /* ap 3 */ + }; + + segment@100000 { /* 0x44d00000 */ + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x00000000 0x00100000 0x004000>, /* ap 4 */ + <0x00004000 0x00104000 0x001000>, /* ap 5 */ + <0x00080000 0x00180000 0x002000>, /* ap 6 */ + <0x00082000 0x00182000 0x001000>; /* ap 7 */ + + target-module@0 { /* 0x44d00000, ap 4 28.0 */ + compatible = "ti,sysc-omap4", "ti,sysc"; + reg = <0x0 0x4>; + reg-names = "rev"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x0 0x4000>; + status = "disabled"; + }; + + target-module@80000 { /* 0x44d80000, ap 6 10.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x80000 0x2000>; + }; + }; + + segment@200000 { /* 0x44e00000 */ + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x00000000 0x00200000 0x002000>, /* ap 8 */ + <0x00002000 0x00202000 0x001000>, /* ap 9 */ + <0x00003000 0x00203000 0x001000>, /* ap 10 */ + <0x00004000 0x00204000 0x001000>, /* ap 11 */ + <0x00005000 0x00205000 0x001000>, /* ap 12 */ + <0x00006000 0x00206000 0x001000>, /* ap 13 */ + <0x00007000 0x00207000 0x001000>, /* ap 14 */ + <0x00008000 0x00208000 0x001000>, /* ap 15 */ + <0x00009000 0x00209000 0x001000>, /* ap 16 */ + <0x0000a000 0x0020a000 0x001000>, /* ap 17 */ + <0x0000b000 0x0020b000 0x001000>, /* ap 18 */ + <0x0000c000 0x0020c000 0x001000>, /* ap 19 */ + <0x0000d000 0x0020d000 0x001000>, /* ap 20 */ + <0x0000f000 0x0020f000 0x001000>, /* ap 21 */ + <0x00010000 0x00210000 0x010000>, /* ap 22 */ + <0x00020000 0x00220000 0x010000>, /* ap 23 */ + <0x00030000 0x00230000 0x001000>, /* ap 24 */ + <0x00031000 0x00231000 0x001000>, /* ap 25 */ + <0x00032000 0x00232000 0x001000>, /* ap 26 */ + <0x00033000 0x00233000 0x001000>, /* ap 27 */ + <0x00034000 0x00234000 0x001000>, /* ap 28 */ + <0x00035000 0x00235000 0x001000>, /* ap 29 */ + <0x00036000 0x00236000 0x001000>, /* ap 30 */ + <0x00037000 0x00237000 0x001000>, /* ap 31 */ + <0x00038000 0x00238000 0x001000>, /* ap 32 */ + <0x00039000 0x00239000 0x001000>, /* ap 33 */ + <0x0003a000 0x0023a000 0x001000>, /* ap 34 */ + <0x0003e000 0x0023e000 0x001000>, /* ap 35 */ + <0x0003f000 0x0023f000 0x001000>, /* ap 36 */ + <0x0000e000 0x0020e000 0x001000>, /* ap 37 */ + <0x00040000 0x00240000 0x040000>, /* ap 38 */ + <0x00080000 0x00280000 0x001000>; /* ap 39 */ + + target-module@0 { /* 0x44e00000, ap 8 58.0 */ + compatible = "ti,sysc-omap4", "ti,sysc"; + reg = <0 0x4>; + reg-names = "rev"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x0 0x2000>; + + prcm: prcm@0 { + compatible = "ti,am3-prcm", "simple-bus"; + reg = <0 0x2000>; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0 0 0x2000>; + + prcm_clocks: clocks { + #address-cells = <1>; + #size-cells = <0>; + }; + + prcm_clockdomains: clockdomains { + }; + }; + }; + + target-module@3000 { /* 0x44e03000, ap 10 0a.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x3000 0x1000>; + }; + + target-module@5000 { /* 0x44e05000, ap 12 30.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x5000 0x1000>; + }; + + target-module@7000 { /* 0x44e07000, ap 14 20.0 */ + compatible = "ti,sysc-omap2", "ti,sysc"; + ti,hwmods = "gpio1"; + reg = <0x7000 0x4>, + <0x7010 0x4>, + <0x7114 0x4>; + reg-names = "rev", "sysc", "syss"; + ti,sysc-mask = <(SYSC_OMAP2_ENAWAKEUP | + SYSC_OMAP2_SOFTRESET | + SYSC_OMAP2_AUTOIDLE)>; + ti,sysc-sidle = , + , + , + ; + ti,syss-mask = <1>; + /* Domains (P, C): wkup_pwrdm, l4_wkup_clkdm */ + clocks = <&l4_wkup_clkctrl AM3_L4_WKUP_GPIO1_CLKCTRL 0>, + <&l4_wkup_clkctrl AM3_L4_WKUP_GPIO1_CLKCTRL 18>; + clock-names = "fck", "dbclk"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x7000 0x1000>; + + gpio0: gpio@0 { + compatible = "ti,omap4-gpio"; + gpio-controller; + #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; + reg = <0x0 0x1000>; + interrupts = <96>; + }; + }; + + target-module@9000 { /* 0x44e09000, ap 16 04.0 */ + compatible = "ti,sysc-omap2", "ti,sysc"; + ti,hwmods = "uart1"; + reg = <0x9050 0x4>, + <0x9054 0x4>, + <0x9058 0x4>; + reg-names = "rev", "sysc", "syss"; + ti,sysc-mask = <(SYSC_OMAP2_ENAWAKEUP | + SYSC_OMAP2_SOFTRESET | + SYSC_OMAP2_AUTOIDLE)>; + ti,sysc-sidle = , + , + , + ; + /* Domains (P, C): wkup_pwrdm, l4_wkup_clkdm */ + clocks = <&l4_wkup_clkctrl AM3_L4_WKUP_UART1_CLKCTRL 0>; + clock-names = "fck"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x9000 0x1000>; + + uart0: serial@0 { + compatible = "ti,am3352-uart", "ti,omap3-uart"; + clock-frequency = <48000000>; + reg = <0x0 0x2000>; + interrupts = <72>; + status = "disabled"; + dmas = <&edma 26 0>, <&edma 27 0>; + dma-names = "tx", "rx"; + }; + }; + + target-module@b000 { /* 0x44e0b000, ap 18 48.0 */ + compatible = "ti,sysc-omap2", "ti,sysc"; + ti,hwmods = "i2c1"; + reg = <0xb000 0x8>, + <0xb010 0x8>, + <0xb090 0x8>; + reg-names = "rev", "sysc", "syss"; + ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY | + SYSC_OMAP2_ENAWAKEUP | + SYSC_OMAP2_SOFTRESET | + SYSC_OMAP2_AUTOIDLE)>; + ti,sysc-sidle = , + , + , + ; + ti,syss-mask = <1>; + /* Domains (P, C): wkup_pwrdm, l4_wkup_clkdm */ + clocks = <&l4_wkup_clkctrl AM3_L4_WKUP_I2C1_CLKCTRL 0>; + clock-names = "fck"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0xb000 0x1000>; + + i2c0: i2c@0 { + compatible = "ti,omap4-i2c"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x0 0x1000>; + interrupts = <70>; + status = "disabled"; + }; + }; + + target-module@d000 { /* 0x44e0d000, ap 20 38.0 */ + compatible = "ti,sysc-omap4", "ti,sysc"; + ti,hwmods = "adc_tsc"; + reg = <0xd000 0x4>, + <0xd010 0x4>; + reg-names = "rev", "sysc"; + ti,sysc-sidle = , + , + , + ; + /* Domains (P, C): wkup_pwrdm, l4_wkup_clkdm */ + clocks = <&l4_wkup_clkctrl AM3_L4_WKUP_ADC_TSC_CLKCTRL 0>; + clock-names = "fck"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x00000000 0x0000d000 0x00001000>, + <0x00001000 0x0000e000 0x00001000>; + + tscadc: tscadc@0 { + compatible = "ti,am3359-tscadc"; + reg = <0x0 0x1000>; + interrupts = <16>; + status = "disabled"; + dmas = <&edma 53 0>, <&edma 57 0>; + dma-names = "fifo0", "fifo1"; + + tsc { + compatible = "ti,am3359-tsc"; + }; + am335x_adc: adc { + #io-channel-cells = <1>; + compatible = "ti,am3359-adc"; + }; + }; + }; + + target-module@10000 { /* 0x44e10000, ap 22 0c.0 */ + compatible = "ti,sysc-omap4", "ti,sysc"; + reg = <0x10000 0x4>; + reg-names = "rev"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x00000000 0x00010000 0x00010000>, + <0x00010000 0x00020000 0x00010000>; + + scm: scm@0 { + compatible = "ti,am3-scm", "simple-bus"; + reg = <0x0 0x2000>; + #address-cells = <1>; + #size-cells = <1>; + #pinctrl-cells = <1>; + ranges = <0 0 0x2000>; + + phy_sel: cpsw-phy-sel@650 { + compatible = "ti,am3352-cpsw-phy-sel"; + reg= <0x650 0x4>; + reg-names = "gmii-sel"; + }; + + am33xx_pinmux: pinmux@800 { + compatible = "pinctrl-single"; + reg = <0x800 0x238>; + #address-cells = <1>; + #size-cells = <0>; + #pinctrl-cells = <1>; + pinctrl-single,register-width = <32>; + pinctrl-single,function-mask = <0x7f>; + }; + + scm_conf: scm_conf@0 { + compatible = "syscon", "simple-bus"; + reg = <0x0 0x800>; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0 0 0x800>; + + scm_clocks: clocks { + #address-cells = <1>; + #size-cells = <0>; + }; + }; + + wkup_m3_ipc: wkup_m3_ipc@1324 { + compatible = "ti,am3352-wkup-m3-ipc"; + reg = <0x1324 0x24>; + interrupts = <78>; + ti,rproc = <&wkup_m3>; + mboxes = <&mailbox &mbox_wkupm3>; + }; + + edma_xbar: dma-router@f90 { + compatible = "ti,am335x-edma-crossbar"; + reg = <0xf90 0x40>; + #dma-cells = <3>; + dma-requests = <32>; + dma-masters = <&edma>; + }; + + scm_clockdomains: clockdomains { + }; + }; + }; + + target-module@31000 { /* 0x44e31000, ap 25 40.0 */ + compatible = "ti,sysc-omap2-timer", "ti,sysc"; + ti,hwmods = "timer1"; + reg = <0x31000 0x4>, + <0x31010 0x4>, + <0x31014 0x4>; + reg-names = "rev", "sysc", "syss"; + ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY | + SYSC_OMAP2_SOFTRESET | + SYSC_OMAP2_AUTOIDLE)>; + ti,sysc-sidle = , + , + ; + ti,syss-mask = <1>; + /* Domains (P, C): wkup_pwrdm, l4_wkup_clkdm */ + clocks = <&l4_wkup_clkctrl AM3_L4_WKUP_TIMER1_CLKCTRL 0>; + clock-names = "fck"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x31000 0x1000>; + + timer1: timer@0 { + compatible = "ti,am335x-timer-1ms"; + reg = <0x0 0x400>; + interrupts = <67>; + ti,timer-alwon; + clocks = <&timer1_fck>; + clock-names = "fck"; + }; + }; + + target-module@33000 { /* 0x44e33000, ap 27 18.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x33000 0x1000>; + }; + + target-module@35000 { /* 0x44e35000, ap 29 50.0 */ + compatible = "ti,sysc-omap2", "ti,sysc"; + ti,hwmods = "wd_timer2"; + reg = <0x35000 0x4>, + <0x35010 0x4>, + <0x35014 0x4>; + reg-names = "rev", "sysc", "syss"; + ti,sysc-mask = <(SYSC_OMAP2_EMUFREE | + SYSC_OMAP2_SOFTRESET)>; + ti,sysc-sidle = , + , + , + ; + ti,syss-mask = <1>; + /* Domains (P, C): wkup_pwrdm, l4_wkup_clkdm */ + clocks = <&l4_wkup_clkctrl AM3_L4_WKUP_WD_TIMER2_CLKCTRL 0>; + clock-names = "fck"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x35000 0x1000>; + + wdt2: wdt@0 { + compatible = "ti,omap3-wdt"; + reg = <0x0 0x1000>; + interrupts = <91>; + }; + }; + + target-module@37000 { /* 0x44e37000, ap 31 08.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x37000 0x1000>; + }; + + target-module@39000 { /* 0x44e39000, ap 33 02.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x39000 0x1000>; + }; + + target-module@3e000 { /* 0x44e3e000, ap 35 60.0 */ + compatible = "ti,sysc-omap4-simple", "ti,sysc"; + ti,hwmods = "rtc"; + reg = <0x3e074 0x4>, + <0x3e078 0x4>; + reg-names = "rev", "sysc"; + ti,sysc-sidle = , + , + , + ; + /* Domains (P, C): rtc_pwrdm, l4_rtc_clkdm */ + clocks = <&l4_rtc_clkctrl AM3_L4_RTC_RTC_CLKCTRL 0>; + clock-names = "fck"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x3e000 0x1000>; + + rtc: rtc@0 { + compatible = "ti,am3352-rtc", "ti,da830-rtc"; + reg = <0x0 0x1000>; + interrupts = <75 + 76>; + }; + }; + + target-module@40000 { /* 0x44e40000, ap 38 68.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x40000 0x40000>; + }; + }; +}; + +&l4_fw { /* 0x47c00000 */ + compatible = "ti,am33xx-l4-fw", "simple-bus"; + reg = <0x47c00000 0x800>, + <0x47c00800 0x800>, + <0x47c01000 0x400>; + reg-names = "ap", "la", "ia0"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x00000000 0x47c00000 0x1000000>; /* segment 0 */ + + segment@0 { /* 0x47c00000 */ + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x00000000 0x00000000 0x000800>, /* ap 0 */ + <0x00000800 0x00000800 0x000800>, /* ap 1 */ + <0x00001000 0x00001000 0x000400>, /* ap 2 */ + <0x0000c000 0x0000c000 0x001000>, /* ap 3 */ + <0x0000d000 0x0000d000 0x001000>, /* ap 4 */ + <0x0000e000 0x0000e000 0x001000>, /* ap 5 */ + <0x0000f000 0x0000f000 0x001000>, /* ap 6 */ + <0x00010000 0x00010000 0x001000>, /* ap 7 */ + <0x00011000 0x00011000 0x001000>, /* ap 8 */ + <0x0001a000 0x0001a000 0x001000>, /* ap 9 */ + <0x0001b000 0x0001b000 0x001000>, /* ap 10 */ + <0x00024000 0x00024000 0x001000>, /* ap 11 */ + <0x00025000 0x00025000 0x001000>, /* ap 12 */ + <0x00026000 0x00026000 0x001000>, /* ap 13 */ + <0x00027000 0x00027000 0x001000>, /* ap 14 */ + <0x00030000 0x00030000 0x001000>, /* ap 15 */ + <0x00031000 0x00031000 0x001000>, /* ap 16 */ + <0x00038000 0x00038000 0x001000>, /* ap 17 */ + <0x00039000 0x00039000 0x001000>, /* ap 18 */ + <0x0003a000 0x0003a000 0x001000>, /* ap 19 */ + <0x0003b000 0x0003b000 0x001000>, /* ap 20 */ + <0x0003e000 0x0003e000 0x001000>, /* ap 21 */ + <0x0003f000 0x0003f000 0x001000>, /* ap 22 */ + <0x0003c000 0x0003c000 0x001000>, /* ap 23 */ + <0x00040000 0x00040000 0x001000>, /* ap 24 */ + <0x00046000 0x00046000 0x001000>, /* ap 25 */ + <0x00047000 0x00047000 0x001000>, /* ap 26 */ + <0x00044000 0x00044000 0x001000>, /* ap 27 */ + <0x00045000 0x00045000 0x001000>, /* ap 28 */ + <0x00028000 0x00028000 0x001000>, /* ap 29 */ + <0x00029000 0x00029000 0x001000>, /* ap 30 */ + <0x00032000 0x00032000 0x001000>, /* ap 31 */ + <0x00033000 0x00033000 0x001000>, /* ap 32 */ + <0x0003d000 0x0003d000 0x001000>, /* ap 33 */ + <0x00041000 0x00041000 0x001000>, /* ap 34 */ + <0x00042000 0x00042000 0x001000>, /* ap 35 */ + <0x00043000 0x00043000 0x001000>, /* ap 36 */ + <0x00014000 0x00014000 0x001000>, /* ap 37 */ + <0x00015000 0x00015000 0x001000>; /* ap 38 */ + + target-module@c000 { /* 0x47c0c000, ap 3 04.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0xc000 0x1000>; + }; + + target-module@e000 { /* 0x47c0e000, ap 5 0c.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0xe000 0x1000>; + }; + + target-module@10000 { /* 0x47c10000, ap 7 20.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x10000 0x1000>; + }; + + target-module@14000 { /* 0x47c14000, ap 37 3c.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x14000 0x1000>; + }; + + target-module@1a000 { /* 0x47c1a000, ap 9 08.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x1a000 0x1000>; + }; + + target-module@24000 { /* 0x47c24000, ap 11 28.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x24000 0x1000>; + }; + + target-module@26000 { /* 0x47c26000, ap 13 30.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x26000 0x1000>; + }; + + target-module@28000 { /* 0x47c28000, ap 29 40.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x28000 0x1000>; + }; + + target-module@30000 { /* 0x47c30000, ap 15 14.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x30000 0x1000>; + }; + + target-module@32000 { /* 0x47c32000, ap 31 06.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x32000 0x1000>; + }; + + target-module@38000 { /* 0x47c38000, ap 17 18.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x38000 0x1000>; + }; + + target-module@3a000 { /* 0x47c3a000, ap 19 1c.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x3a000 0x1000>; + }; + + target-module@3c000 { /* 0x47c3c000, ap 23 38.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x3c000 0x1000>; + }; + + target-module@3e000 { /* 0x47c3e000, ap 21 10.0 */ + compatible = "ti,sysc"; + status = "disabled"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x3e000 0x1000>; + }; + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Wed Apr 10 18:58:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4B2A41569197; Wed, 10 Apr 2019 18:58:12 +0000 (UTC) (envelope-from rrs@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 D3ED5855E4; Wed, 10 Apr 2019 18:58:11 +0000 (UTC) (envelope-from rrs@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 A158326B0F; Wed, 10 Apr 2019 18:58:11 +0000 (UTC) (envelope-from rrs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AIwBUk097264; Wed, 10 Apr 2019 18:58:11 GMT (envelope-from rrs@FreeBSD.org) Received: (from rrs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AIwB9T097263; Wed, 10 Apr 2019 18:58:11 GMT (envelope-from rrs@FreeBSD.org) Message-Id: <201904101858.x3AIwB9T097263@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rrs set sender to rrs@FreeBSD.org using -f From: Randall Stewart Date: Wed, 10 Apr 2019 18:58:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346094 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: rrs X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 346094 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D3ED5855E4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.980,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 18:58:12 -0000 Author: rrs Date: Wed Apr 10 18:58:11 2019 New Revision: 346094 URL: https://svnweb.freebsd.org/changeset/base/346094 Log: Fix a small bug in the tcp_log_id where the bucket was unlocked and yet the bucket-unlock flag was not changed to false. This can cause a panic if INVARIANTS is on and we go through the right path (though rare). This fixes the correct bug :) Reported by: syzbot+179a1ad49f3c4c215fa2@syzkaller.appspotmail.com Reviewed by: tuexen@ Modified: head/sys/netinet/tcp_log_buf.c Modified: head/sys/netinet/tcp_log_buf.c ============================================================================== --- head/sys/netinet/tcp_log_buf.c Wed Apr 10 18:17:27 2019 (r346093) +++ head/sys/netinet/tcp_log_buf.c Wed Apr 10 18:58:11 2019 (r346094) @@ -752,6 +752,7 @@ refind: RECHECK_INP(); if (tp->t_lib != NULL) { TCPID_BUCKET_UNLOCK(tlb); + bucket_locked = false; tlb = NULL; goto restart; } From owner-svn-src-all@freebsd.org Wed Apr 10 19:18:06 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B7C1C1569791; Wed, 10 Apr 2019 19:18:06 +0000 (UTC) (envelope-from manu@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 5C74385F3D; Wed, 10 Apr 2019 19:18:06 +0000 (UTC) (envelope-from manu@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 2D52426E7E; Wed, 10 Apr 2019 19:18:06 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AJI6Lr008173; Wed, 10 Apr 2019 19:18:06 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AJI6TT008172; Wed, 10 Apr 2019 19:18:06 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201904101918.x3AJI6TT008172@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Wed, 10 Apr 2019 19:18:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346095 - head/sys/dts/arm X-SVN-Group: head X-SVN-Commit-Author: manu X-SVN-Commit-Paths: head/sys/dts/arm X-SVN-Commit-Revision: 346095 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5C74385F3D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 19:18:06 -0000 Author: manu Date: Wed Apr 10 19:18:05 2019 New Revision: 346095 URL: https://svnweb.freebsd.org/changeset/base/346095 Log: arm: dts: Remove some old DTS RPI is using the firmware provided DTS since 12.0 Pandaboard works with the Linux DTS RK* Exynos* and Meson*/Odroid* don't even work with current source code, if someone wants to make them work again they better use the Linux DTS. Deleted: head/sys/dts/arm/bcm2835.dtsi head/sys/dts/arm/bcm2836.dtsi head/sys/dts/arm/exynos5.dtsi head/sys/dts/arm/exynos5250-arndale.dts head/sys/dts/arm/exynos5250-snow.dts head/sys/dts/arm/exynos5250-spring.dts head/sys/dts/arm/exynos5250.dtsi head/sys/dts/arm/exynos5420-arndale-octa.dts head/sys/dts/arm/exynos5420-peach-pit.dts head/sys/dts/arm/exynos5420.dtsi head/sys/dts/arm/meson3.dtsi head/sys/dts/arm/meson8b.dtsi head/sys/dts/arm/odroidc1.dts head/sys/dts/arm/pandaboard-common.dtsi head/sys/dts/arm/pandaboard-es.dts head/sys/dts/arm/pandaboard.dts head/sys/dts/arm/rk3188-radxa-lite.dts head/sys/dts/arm/rk3188-radxa.dts head/sys/dts/arm/rk3188.dtsi head/sys/dts/arm/rpi.dts head/sys/dts/arm/rpi2.dts From owner-svn-src-all@freebsd.org Wed Apr 10 19:27:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7B5861569F1F; Wed, 10 Apr 2019 19:27:15 +0000 (UTC) (envelope-from manu@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 1E2F6865C9; Wed, 10 Apr 2019 19:27:15 +0000 (UTC) (envelope-from manu@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 07A4B27038; Wed, 10 Apr 2019 19:27:15 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AJREBk013139; Wed, 10 Apr 2019 19:27:14 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AJREvt013138; Wed, 10 Apr 2019 19:27:14 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201904101927.x3AJREvt013138@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Wed, 10 Apr 2019 19:27:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346096 - head/sys/arm/conf X-SVN-Group: head X-SVN-Commit-Author: manu X-SVN-Commit-Paths: head/sys/arm/conf X-SVN-Commit-Revision: 346096 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1E2F6865C9 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 19:27:15 -0000 Author: manu Date: Wed Apr 10 19:27:14 2019 New Revision: 346096 URL: https://svnweb.freebsd.org/changeset/base/346096 Log: arm: kernel: Remove old kernel configs Follow up to r346095 All those kernels are either not working or the release have switched to GENERIC Deleted: head/sys/arm/conf/AML8726 head/sys/arm/conf/BEAGLEBONE head/sys/arm/conf/CHROMEBOOK head/sys/arm/conf/CHROMEBOOK-PEACH-PIT head/sys/arm/conf/CHROMEBOOK-PEACH-PIT.hints head/sys/arm/conf/CHROMEBOOK-SNOW head/sys/arm/conf/CHROMEBOOK-SPRING head/sys/arm/conf/CHROMEBOOK.hints head/sys/arm/conf/EXYNOS5.common head/sys/arm/conf/EXYNOS5250 head/sys/arm/conf/EXYNOS5420 head/sys/arm/conf/ODROIDC1 head/sys/arm/conf/PANDABOARD head/sys/arm/conf/PANDABOARD.hints head/sys/arm/conf/RADXA head/sys/arm/conf/RADXA-LITE head/sys/arm/conf/RK3188 head/sys/arm/conf/RPI2 From owner-svn-src-all@freebsd.org Wed Apr 10 19:49:37 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D267D156A7F1; Wed, 10 Apr 2019 19:49:36 +0000 (UTC) (envelope-from kibab@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 6BBD5871E9; Wed, 10 Apr 2019 19:49:36 +0000 (UTC) (envelope-from kibab@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 400CA273DC; Wed, 10 Apr 2019 19:49:36 +0000 (UTC) (envelope-from kibab@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AJnaP8024095; Wed, 10 Apr 2019 19:49:36 GMT (envelope-from kibab@FreeBSD.org) Received: (from kibab@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AJnZ1R024092; Wed, 10 Apr 2019 19:49:35 GMT (envelope-from kibab@FreeBSD.org) Message-Id: <201904101949.x3AJnZ1R024092@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kibab set sender to kibab@FreeBSD.org using -f From: Ilya Bakulin Date: Wed, 10 Apr 2019 19:49:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346097 - in head: sbin/camcontrol sys/cam/mmc sys/dev/mmc X-SVN-Group: head X-SVN-Commit-Author: kibab X-SVN-Commit-Paths: in head: sbin/camcontrol sys/cam/mmc sys/dev/mmc X-SVN-Commit-Revision: 346097 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6BBD5871E9 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 19:49:37 -0000 Author: kibab Date: Wed Apr 10 19:49:35 2019 New Revision: 346097 URL: https://svnweb.freebsd.org/changeset/base/346097 Log: Add new fields to mmc_data in preparation to SDIO CMD53 block mode support SDIO command CMD53 (IO_RW_EXTENDED) allows data transfers using blocks of 1-2048 bytes, with a maximum of 511 blocks per request. Extend mmc_data structure to properly describe such requests, and initialize the new fields in kernel and userland consumers. No actual driver changes happen yet, these will follow in the separate changes. Reviewed by: bz Approved by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D19779 Modified: head/sbin/camcontrol/camcontrol.c head/sys/cam/mmc/mmc_da.c head/sys/dev/mmc/mmcreg.h Modified: head/sbin/camcontrol/camcontrol.c ============================================================================== --- head/sbin/camcontrol/camcontrol.c Wed Apr 10 19:27:14 2019 (r346096) +++ head/sbin/camcontrol/camcontrol.c Wed Apr 10 19:49:35 2019 (r346097) @@ -7788,6 +7788,7 @@ mmcsdcmd(struct cam_device *device, int argc, char **a flags |= CAM_DIR_IN; mmc_data = malloc(mmc_data_len); memset(mmc_data, 0, mmc_data_len); + memset(&mmc_d, 0, sizeof(mmc_d)); mmc_d.len = mmc_data_len; mmc_d.data = mmc_data; mmc_d.flags = MMC_DATA_READ; Modified: head/sys/cam/mmc/mmc_da.c ============================================================================== --- head/sys/cam/mmc/mmc_da.c Wed Apr 10 19:27:14 2019 (r346096) +++ head/sys/cam/mmc/mmc_da.c Wed Apr 10 19:49:35 2019 (r346097) @@ -791,6 +791,11 @@ sddaregister(struct cam_periph *periph, void *arg) softc->state = SDDA_STATE_INIT; softc->mmcdata = (struct mmc_data *)malloc(sizeof(struct mmc_data), M_DEVBUF, M_NOWAIT|M_ZERO); + if (softc->mmcdata == NULL) { + printf("sddaregister: Unable to probe new device. " + "Unable to allocate mmcdata\n"); + return (CAM_REQ_CMP_ERR); + } periph->softc = softc; softc->periph = periph; @@ -889,6 +894,7 @@ mmc_send_ext_csd(struct cam_periph *periph, union ccb struct mmc_data d; KASSERT(buf_len == 512, ("Buffer for ext csd must be 512 bytes")); + memset(&d, 0, sizeof(d)); d.data = rawextcsd; d.len = buf_len; d.flags = MMC_DATA_READ; @@ -1013,6 +1019,7 @@ mmc_sd_switch(struct cam_periph *periph, union ccb *cc int err; memset(res, 0, 64); + memset(&mmc_d, 0, sizeof(mmc_d)); mmc_d.len = 64; mmc_d.data = res; mmc_d.flags = MMC_DATA_READ; @@ -1804,6 +1811,7 @@ sddastart(struct cam_periph *periph, union ccb *start_ mmcio->cmd.flags = MMC_RSP_R1 | MMC_CMD_ADTC; mmcio->cmd.data = softc->mmcdata; + memset(mmcio->cmd.data, 0, sizeof(struct mmc_data)); mmcio->cmd.data->data = bp->bio_data; mmcio->cmd.data->len = 512 * count; mmcio->cmd.data->flags = (bp->bio_cmd == BIO_READ ? MMC_DATA_READ : MMC_DATA_WRITE); Modified: head/sys/dev/mmc/mmcreg.h ============================================================================== --- head/sys/dev/mmc/mmcreg.h Wed Apr 10 19:27:14 2019 (r346096) +++ head/sys/dev/mmc/mmcreg.h Wed Apr 10 19:49:35 2019 (r346097) @@ -197,7 +197,10 @@ struct mmc_data { #define MMC_DATA_READ (1UL << 1) #define MMC_DATA_STREAM (1UL << 2) #define MMC_DATA_MULTI (1UL << 3) +#define MMC_DATA_BLOCK_SIZE (1UL << 4) struct mmc_request *mrq; + size_t block_size; /* block size for CMD53 */ + size_t block_count; /* block count for CMD53 */ }; struct mmc_request { From owner-svn-src-all@freebsd.org Wed Apr 10 19:53:37 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 546E8156AB73; Wed, 10 Apr 2019 19:53:37 +0000 (UTC) (envelope-from kibab@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 E0F818775E; Wed, 10 Apr 2019 19:53:36 +0000 (UTC) (envelope-from kibab@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 CA18F27582; Wed, 10 Apr 2019 19:53:36 +0000 (UTC) (envelope-from kibab@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AJra4p028819; Wed, 10 Apr 2019 19:53:36 GMT (envelope-from kibab@FreeBSD.org) Received: (from kibab@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AJra1Y028818; Wed, 10 Apr 2019 19:53:36 GMT (envelope-from kibab@FreeBSD.org) Message-Id: <201904101953.x3AJra1Y028818@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kibab set sender to kibab@FreeBSD.org using -f From: Ilya Bakulin Date: Wed, 10 Apr 2019 19:53:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346098 - in head/sys: arm/allwinner dev/sdhci X-SVN-Group: head X-SVN-Commit-Author: kibab X-SVN-Commit-Paths: in head/sys: arm/allwinner dev/sdhci X-SVN-Commit-Revision: 346098 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E0F818775E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 19:53:37 -0000 Author: kibab Date: Wed Apr 10 19:53:36 2019 New Revision: 346098 URL: https://svnweb.freebsd.org/changeset/base/346098 Log: Implement CMD53 block mode support for SDHCI and AllWinner-based boards If a custom block size requested, use it, otherwise revert to the previous logic of using just a data size if it's less than MMC_BLOCK_SIZE, and MMC_BLOCK_SIZE otherwise. Reviewed by: bz Approved by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D19783 Modified: head/sys/arm/allwinner/aw_mmc.c head/sys/dev/sdhci/sdhci.c Modified: head/sys/arm/allwinner/aw_mmc.c ============================================================================== --- head/sys/arm/allwinner/aw_mmc.c Wed Apr 10 19:49:35 2019 (r346097) +++ head/sys/arm/allwinner/aw_mmc.c Wed Apr 10 19:53:36 2019 (r346098) @@ -1104,10 +1104,17 @@ aw_mmc_request(device_t bus, device_t child, struct mm } if (cmd->data->flags & MMC_DATA_WRITE) cmdreg |= AW_MMC_CMDR_DIR_WRITE; - blksz = min(cmd->data->len, MMC_SECTOR_SIZE); - AW_MMC_WRITE_4(sc, AW_MMC_BKSR, blksz); - AW_MMC_WRITE_4(sc, AW_MMC_BYCR, cmd->data->len); +#ifdef MMCCAM + if (cmd->data->flags & MMC_DATA_BLOCK_SIZE) { + AW_MMC_WRITE_4(sc, AW_MMC_BKSR, cmd->data->block_size); + AW_MMC_WRITE_4(sc, AW_MMC_BYCR, cmd->data->len); + } else +#endif + { + AW_MMC_WRITE_4(sc, AW_MMC_BKSR, blksz); + AW_MMC_WRITE_4(sc, AW_MMC_BYCR, cmd->data->len); + } } else { imask |= AW_MMC_INT_CMD_DONE; } Modified: head/sys/dev/sdhci/sdhci.c ============================================================================== --- head/sys/dev/sdhci/sdhci.c Wed Apr 10 19:49:35 2019 (r346097) +++ head/sys/dev/sdhci/sdhci.c Wed Apr 10 19:53:36 2019 (r346098) @@ -496,7 +496,13 @@ sdhci_read_block_pio(struct sdhci_slot *slot) buffer = slot->curcmd->data->data; buffer += slot->offset; /* Transfer one block at a time. */ - left = min(512, slot->curcmd->data->len - slot->offset); +#ifdef MMCCAM + if (slot->curcmd->data->flags & MMC_DATA_BLOCK_SIZE) + left = min(slot->curcmd->data->block_size, + slot->curcmd->data->len - slot->offset); + else +#endif + left = min(512, slot->curcmd->data->len - slot->offset); slot->offset += left; /* If we are too fast, broken controllers return zeroes. */ @@ -539,7 +545,13 @@ sdhci_write_block_pio(struct sdhci_slot *slot) buffer = slot->curcmd->data->data; buffer += slot->offset; /* Transfer one block at a time. */ - left = min(512, slot->curcmd->data->len - slot->offset); +#ifdef MMCCAM + if (slot->curcmd->data->flags & MMC_DATA_BLOCK_SIZE) { + left = min(slot->curcmd->data->block_size, + slot->curcmd->data->len - slot->offset); + } else +#endif + left = min(512, slot->curcmd->data->len - slot->offset); slot->offset += left; /* Handle unaligned and aligned buffer cases. */ @@ -1623,9 +1635,9 @@ sdhci_set_transfer_mode(struct sdhci_slot *slot, const return; mode = SDHCI_TRNS_BLK_CNT_EN; - if (data->len > 512) { + if (data->len > 512 || data->block_count > 1) { mode |= SDHCI_TRNS_MULTI; - if (__predict_true( + if (data->block_count == 0 && __predict_true( #ifdef MMCCAM slot->ccb->mmcio.stop.opcode == MMC_STOP_TRANSMISSION && #else @@ -1888,11 +1900,23 @@ sdhci_start_data(struct sdhci_slot *slot, const struct } /* Current data offset for both PIO and DMA. */ slot->offset = 0; - /* Set block size and request border interrupts on the SDMA boundary. */ - blksz = SDHCI_MAKE_BLKSZ(slot->sdma_boundary, ulmin(data->len, 512)); +#ifdef MMCCAM + if (data->flags & MMC_DATA_BLOCK_SIZE) { + /* Set block size and request border interrupts on the SDMA boundary. */ + blksz = SDHCI_MAKE_BLKSZ(slot->sdma_boundary, data->block_size); + blkcnt = data->block_count; + if (__predict_false(sdhci_debug > 0)) + slot_printf(slot, "SDIO Custom block params: blksz: " + "%#10x, blk cnt: %#10x\n", blksz, blkcnt); + } else +#endif + { + /* Set block size and request border interrupts on the SDMA boundary. */ + blksz = SDHCI_MAKE_BLKSZ(slot->sdma_boundary, ulmin(data->len, 512)); + blkcnt = howmany(data->len, 512); + } + WR2(slot, SDHCI_BLOCK_SIZE, blksz); - /* Set block count. */ - blkcnt = howmany(data->len, 512); WR2(slot, SDHCI_BLOCK_COUNT, blkcnt); if (__predict_false(sdhci_debug > 1)) slot_printf(slot, "Blk size: 0x%08x | Blk cnt: 0x%08x\n", @@ -2781,10 +2805,13 @@ sdhci_cam_request(struct sdhci_slot *slot, union ccb * } */ if (__predict_false(sdhci_debug > 1)) { - slot_printf(slot, "CMD%u arg %#x flags %#x dlen %u dflags %#x\n", - mmcio->cmd.opcode, mmcio->cmd.arg, mmcio->cmd.flags, - mmcio->cmd.data != NULL ? (unsigned int) mmcio->cmd.data->len : 0, - mmcio->cmd.data != NULL ? mmcio->cmd.data->flags: 0); + slot_printf(slot, "CMD%u arg %#x flags %#x dlen %u dflags %#x " + "blksz=%zu blkcnt=%zu\n", + mmcio->cmd.opcode, mmcio->cmd.arg, mmcio->cmd.flags, + mmcio->cmd.data != NULL ? (unsigned int) mmcio->cmd.data->len : 0, + mmcio->cmd.data != NULL ? mmcio->cmd.data->flags : 0, + mmcio->cmd.data != NULL ? mmcio->cmd.data->block_size : 0, + mmcio->cmd.data != NULL ? mmcio->cmd.data->block_count : 0); } if (mmcio->cmd.data != NULL) { if (mmcio->cmd.data->len == 0 || mmcio->cmd.data->flags == 0) From owner-svn-src-all@freebsd.org Wed Apr 10 20:11:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5369D156B48A; Wed, 10 Apr 2019 20:11:29 +0000 (UTC) (envelope-from manu@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 E77C3884F6; Wed, 10 Apr 2019 20:11:28 +0000 (UTC) (envelope-from manu@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 C18472789A; Wed, 10 Apr 2019 20:11:28 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AKBSMX036433; Wed, 10 Apr 2019 20:11:28 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AKBSob036432; Wed, 10 Apr 2019 20:11:28 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201904102011.x3AKBSob036432@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Wed, 10 Apr 2019 20:11:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346099 - head/sys/modules/dtb/omap4 X-SVN-Group: head X-SVN-Commit-Author: manu X-SVN-Commit-Paths: head/sys/modules/dtb/omap4 X-SVN-Commit-Revision: 346099 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E77C3884F6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.958,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 20:11:29 -0000 Author: manu Date: Wed Apr 10 20:11:28 2019 New Revision: 346099 URL: https://svnweb.freebsd.org/changeset/base/346099 Log: arm: dtb: Compile the Linux DTS for pandaboards Reported by: ci.freebsd.org Modified: head/sys/modules/dtb/omap4/Makefile Modified: head/sys/modules/dtb/omap4/Makefile ============================================================================== --- head/sys/modules/dtb/omap4/Makefile Wed Apr 10 19:53:36 2019 (r346098) +++ head/sys/modules/dtb/omap4/Makefile Wed Apr 10 20:11:28 2019 (r346099) @@ -2,11 +2,7 @@ # All the dts files for omap4 systems we support. DTS= \ omap4-duovero-parlor.dts \ - pandaboard.dts \ - pandaboard-es.dts - -LINKS= \ - ${DTBDIR}/pandaboard.dtb ${DTBDIR}/omap4-panda.dtb \ - ${DTBDIR}/pandaboard-es.dtb ${DTBDIR}/omap4-panda-es.dtb + omap4-panda.dts \ + omap4-panda-es.dts .include From owner-svn-src-all@freebsd.org Wed Apr 10 20:44:55 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4AB84156C7E4; Wed, 10 Apr 2019 20:44:55 +0000 (UTC) (envelope-from kibab@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 DF2BA8A13F; Wed, 10 Apr 2019 20:44:54 +0000 (UTC) (envelope-from kibab@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 B6AC827E1D; Wed, 10 Apr 2019 20:44:54 +0000 (UTC) (envelope-from kibab@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3AKisPI056129; Wed, 10 Apr 2019 20:44:54 GMT (envelope-from kibab@FreeBSD.org) Received: (from kibab@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3AKisPa056128; Wed, 10 Apr 2019 20:44:54 GMT (envelope-from kibab@FreeBSD.org) Message-Id: <201904102044.x3AKisPa056128@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kibab set sender to kibab@FreeBSD.org using -f From: Ilya Bakulin Date: Wed, 10 Apr 2019 20:44:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346100 - head/sys/dev/mmc X-SVN-Group: head X-SVN-Commit-Author: kibab X-SVN-Commit-Paths: head/sys/dev/mmc X-SVN-Commit-Revision: 346100 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: DF2BA8A13F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 20:44:55 -0000 Author: kibab Date: Wed Apr 10 20:44:54 2019 New Revision: 346100 URL: https://svnweb.freebsd.org/changeset/base/346100 Log: Add some CMD53-related definitions In preparation to adding block mode functions, add necessary definitions. Reviewed by: bz Approved by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D19832 Modified: head/sys/dev/mmc/mmcreg.h Modified: head/sys/dev/mmc/mmcreg.h ============================================================================== --- head/sys/dev/mmc/mmcreg.h Wed Apr 10 20:11:28 2019 (r346099) +++ head/sys/dev/mmc/mmcreg.h Wed Apr 10 20:44:54 2019 (r346100) @@ -549,30 +549,39 @@ struct mmc_request { #define SD_IO_RW_LEN(x) (((x) & 0xFF) << 0) #define SD_IOE_RW_LEN(x) (((x) & 0x1FF) << 0) +#define SD_IOE_RW_ADR(x) (((x) & 0x1FFFF) << 9) +#define SD_IOE_RW_INCR (1u << 26) #define SD_IOE_RW_BLK (1u << 27) +#define SD_IOE_RW_FUNC(x) (((x) & 0x7) << 28) +#define SD_IOE_RW_WR (1u << 31) /* Card Common Control Registers (CCCR) */ -#define SD_IO_CCCR_START 0x00000 -#define SD_IO_CCCR_SIZE 0x100 -#define SD_IO_CCCR_FN_ENABLE 0x02 -#define SD_IO_CCCR_FN_READY 0x03 -#define SD_IO_CCCR_INT_ENABLE 0x04 -#define SD_IO_CCCR_INT_PENDING 0x05 -#define SD_IO_CCCR_CTL 0x06 -#define CCCR_CTL_RES (1 << 3) -#define SD_IO_CCCR_BUS_WIDTH 0x07 +#define SD_IO_CCCR_START 0x00000 /* Offset in F0 address space */ +#define SD_IO_CCCR_SIZE 0x100 /* Total size of CCCR */ +#define SD_IO_CCCR_FN_ENABLE 0x02 /* Enabled functions */ +#define SD_IO_CCCR_FN_READY 0x03 /* Function ready status */ +#define SD_IO_CCCR_INT_ENABLE 0x04 /* Per-function interrupt enable */ +#define SD_IO_CCCR_INT_PENDING 0x05 /* Per-function interrupt pending */ +#define SD_IO_CCCR_CTL 0x06 /* I/O Abort register */ +#define CCCR_CTL_RES (1 << 3) /* Perform SDIO reset */ +#define SD_IO_CCCR_BUS_WIDTH 0x07 /* Bus Width register */ #define CCCR_BUS_WIDTH_4 (1 << 1) #define CCCR_BUS_WIDTH_1 (1 << 0) -#define SD_IO_CCCR_CARDCAP 0x08 -#define SD_IO_CCCR_CISPTR 0x09 /* XXX 9-10, 10-11, or 9-12 */ - +#define SD_IO_CCCR_CARDCAP 0x08 /* SDIO card capabilities */ +#define CCCR_CC_SMB (1 << 1) /* CMD53 block mode support */ +#define SD_IO_CCCR_CISPTR 0x09 /* 0x09 - 0x0B */ +#define SD_IO_CCCR_FN0_BLKSZ 0x10 /* 0x10 - 0x11 */ /* Function Basic Registers (FBR) */ -#define SD_IO_FBR_START 0x00100 -#define SD_IO_FBR_SIZE 0x00700 +#define SD_IO_FBR_START 0x00100 /* Offset in F0 address space */ +#define SD_IO_FBR_SIZE 0x00700 /* Total size of FBR */ +#define SD_IO_FBR_F_SIZE 0x00100 /* Size of each function */ +#define SD_IO_FBR_START_F(n) (SD_IO_FBR_START + (n-1) * SD_IO_FBR_F_SIZE) +#define SD_IO_FBR_CIS_OFFSET 0x9 /* Offset of this function's info block within CIS area */ +#define SD_IO_FBR_IOBLKSZ 0x10 /* Block size for CMD53 block mode operations */ /* Card Information Structure (CIS) */ -#define SD_IO_CIS_START 0x01000 -#define SD_IO_CIS_SIZE 0x17000 +#define SD_IO_CIS_START 0x01000 /* Offset in F0 address space */ +#define SD_IO_CIS_SIZE 0x17000 /* Total size of CIS */ /* CIS tuple codes (based on PC Card 16) */ #define SD_IO_CISTPL_VERS_1 0x15 From owner-svn-src-all@freebsd.org Wed Apr 10 21:45:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1BFF8156E622; Wed, 10 Apr 2019 21:45:27 +0000 (UTC) (envelope-from mm@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 B5FBF8D012; Wed, 10 Apr 2019 21:45:26 +0000 (UTC) (envelope-from mm@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 88BDF8B0; Wed, 10 Apr 2019 21:45:26 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3ALjQ7n089348; Wed, 10 Apr 2019 21:45:26 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3ALjOZX089335; Wed, 10 Apr 2019 21:45:24 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201904102145.x3ALjOZX089335@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Wed, 10 Apr 2019 21:45:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346103 - in stable/12: contrib/libarchive/libarchive contrib/libarchive/libarchive/test lib/libarchive/tests X-SVN-Group: stable-12 X-SVN-Commit-Author: mm X-SVN-Commit-Paths: in stable/12: contrib/libarchive/libarchive contrib/libarchive/libarchive/test lib/libarchive/tests X-SVN-Commit-Revision: 346103 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B5FBF8D012 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.92 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.92)[-0.923,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 21:45:27 -0000 Author: mm Date: Wed Apr 10 21:45:23 2019 New Revision: 346103 URL: https://svnweb.freebsd.org/changeset/base/346103 Log: MFC r345497: Sync libarchive with vendor. Relevant vendor changes: PR #1153: fixed 2 bugs in ZIP reader [1] PR #1143: ensure archive_read_disk_entry_from_file() uses ARCHIVE_READ_DISK Changes to file flags code, support more file flags on FreeBSD: UF_OFFLINE, UF_READONLY, UF_SPARSE, UF_REPARSE, UF_SYSTEM UF_ARCHIVE is not supported by intention (yet) PR: 236300 [1] Added: stable/12/contrib/libarchive/libarchive/test/test_read_format_zip_bz2_hang.zip.uu - copied unchanged from r345497, head/contrib/libarchive/libarchive/test/test_read_format_zip_bz2_hang.zip.uu stable/12/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_1.zipx.uu - copied unchanged from r345497, head/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_1.zipx.uu stable/12/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_2.zipx.uu - copied unchanged from r345497, head/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_2.zipx.uu Modified: stable/12/contrib/libarchive/libarchive/archive_blake2sp_ref.c stable/12/contrib/libarchive/libarchive/archive_entry.c stable/12/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c stable/12/contrib/libarchive/libarchive/archive_read_support_format_rar5.c stable/12/contrib/libarchive/libarchive/archive_read_support_format_zip.c stable/12/contrib/libarchive/libarchive/archive_string.c stable/12/contrib/libarchive/libarchive/archive_write_disk_posix.c stable/12/contrib/libarchive/libarchive/archive_write_set_format_7zip.c stable/12/contrib/libarchive/libarchive/test/test_entry.c stable/12/contrib/libarchive/libarchive/test/test_read_format_rar5.c stable/12/contrib/libarchive/libarchive/test/test_read_format_xar.c stable/12/contrib/libarchive/libarchive/test/test_read_format_zip.c stable/12/lib/libarchive/tests/Makefile Directory Properties: stable/12/ (props changed) Modified: stable/12/contrib/libarchive/libarchive/archive_blake2sp_ref.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/archive_blake2sp_ref.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/archive_blake2sp_ref.c Wed Apr 10 21:45:23 2019 (r346103) @@ -89,7 +89,7 @@ int blake2sp_init( blake2sp_state *S, size_t outlen ) return -1; for( i = 0; i < PARALLELISM_DEGREE; ++i ) - if( blake2sp_init_leaf( S->S[i], outlen, 0, i ) < 0 ) return -1; + if( blake2sp_init_leaf( S->S[i], outlen, 0, (uint32_t)i ) < 0 ) return -1; S->R->last_node = 1; S->S[PARALLELISM_DEGREE - 1]->last_node = 1; @@ -112,7 +112,7 @@ int blake2sp_init_key( blake2sp_state *S, size_t outle return -1; for( i = 0; i < PARALLELISM_DEGREE; ++i ) - if( blake2sp_init_leaf( S->S[i], outlen, keylen, i ) < 0 ) return -1; + if( blake2sp_init_leaf( S->S[i], outlen, keylen, (uint32_t)i ) < 0 ) return -1; S->R->last_node = 1; S->S[PARALLELISM_DEGREE - 1]->last_node = 1; @@ -230,7 +230,7 @@ int blake2sp( void *out, size_t outlen, const void *in if( keylen > BLAKE2S_KEYBYTES ) return -1; for( i = 0; i < PARALLELISM_DEGREE; ++i ) - if( blake2sp_init_leaf( S[i], outlen, keylen, i ) < 0 ) return -1; + if( blake2sp_init_leaf( S[i], outlen, keylen, (uint32_t)i ) < 0 ) return -1; S[PARALLELISM_DEGREE - 1]->last_node = 1; /* mark last node */ Modified: stable/12/contrib/libarchive/libarchive/archive_entry.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/archive_entry.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/archive_entry.c Wed Apr 10 21:45:23 2019 (r346103) @@ -1632,6 +1632,51 @@ _archive_entry_acl_text_l(struct archive_entry *entry, * SUCH DAMAGE. */ +/* + * Supported file flags on FreeBSD and Mac OS: + * sappnd,sappend SF_APPEND + * arch,archived SF_ARCHIVED + * schg,schange,simmutable SF_IMMUTABLE + * sunlnk,sunlink SF_NOUNLINK (FreeBSD only) + * uappnd,uappend UF_APPEND + * compressed UF_COMPRESSED (Mac OS only) + * hidden,uhidden UF_HIDDEN + * uchg,uchange,uimmutable UF_IMMUTABLE + * nodump UF_NODUMP + * uunlnk,uunlink UF_NOUNLINK (FreeBSD only) + * offline,uoffline UF_OFFLINE (FreeBSD only) + * opaque UF_OPAQUE + * rdonly,urdonly,readonly UF_READONLY (FreeBSD only) + * reparse,ureparse UF_REPARSE (FreeBSD only) + * sparse,usparse UF_SPARSE (FreeBSD only) + * system,usystem UF_SYSTEM (FreeBSD only) + * + * See chflags(2) for more information + * + * Supported file attributes on Linux: + * a append only FS_APPEND_FL sappnd + * A no atime updates FS_NOATIME_FL atime + * c compress FS_COMPR_FL compress + * C no copy on write FS_NOCOW_FL cow + * d no dump FS_NODUMP_FL dump + * D synchronous directory updates FS_DIRSYNC_FL dirsync + * i immutable FS_IMMUTABLE_FL schg + * j data journalling FS_JOURNAL_DATA_FL journal + * P project hierarchy FS_PROJINHERIT_FL projinherit + * s secure deletion FS_SECRM_FL securedeletion + * S synchronous updates FS_SYNC_FL sync + * t no tail-merging FS_NOTAIL_FL tail + * T top of directory hierarchy FS_TOPDIR_FL topdir + * u undeletable FS_UNRM_FL undel + * + * See ioctl_iflags(2) for more information + * + * Equivalent file flags supported on FreeBSD / Mac OS and Linux: + * SF_APPEND FS_APPEND_FL sappnd + * SF_IMMUTABLE FS_IMMUTABLE_FL schg + * UF_NODUMP FS_NODUMP_FL nodump + */ + static const struct flag { const char *name; const wchar_t *wname; @@ -1640,190 +1685,149 @@ static const struct flag { } flags[] = { /* Preferred (shorter) names per flag first, all prefixed by "no" */ #ifdef SF_APPEND - { "nosappnd", L"nosappnd", SF_APPEND, 0 }, - { "nosappend", L"nosappend", SF_APPEND, 0 }, + { "nosappnd", L"nosappnd", SF_APPEND, 0}, + { "nosappend", L"nosappend", SF_APPEND, 0}, #endif #if defined(FS_APPEND_FL) /* 'a' */ - { "nosappnd", L"nosappnd", FS_APPEND_FL, 0 }, - { "nosappend", L"nosappend", FS_APPEND_FL, 0 }, + { "nosappnd", L"nosappnd", FS_APPEND_FL, 0}, + { "nosappend", L"nosappend", FS_APPEND_FL, 0}, #elif defined(EXT2_APPEND_FL) /* 'a' */ - { "nosappnd", L"nosappnd", EXT2_APPEND_FL, 0 }, - { "nosappend", L"nosappend", EXT2_APPEND_FL, 0 }, + { "nosappnd", L"nosappnd", EXT2_APPEND_FL, 0}, + { "nosappend", L"nosappend", EXT2_APPEND_FL, 0}, #endif #ifdef SF_ARCHIVED - { "noarch", L"noarch", SF_ARCHIVED, 0 }, - { "noarchived", L"noarchived", SF_ARCHIVED, 0 }, + { "noarch", L"noarch", SF_ARCHIVED, 0}, + { "noarchived", L"noarchived", SF_ARCHIVED, 0}, #endif #ifdef SF_IMMUTABLE - { "noschg", L"noschg", SF_IMMUTABLE, 0 }, - { "noschange", L"noschange", SF_IMMUTABLE, 0 }, - { "nosimmutable", L"nosimmutable", SF_IMMUTABLE, 0 }, + { "noschg", L"noschg", SF_IMMUTABLE, 0}, + { "noschange", L"noschange", SF_IMMUTABLE, 0}, + { "nosimmutable", L"nosimmutable", SF_IMMUTABLE, 0}, #endif #if defined(FS_IMMUTABLE_FL) /* 'i' */ - { "noschg", L"noschg", FS_IMMUTABLE_FL, 0 }, - { "noschange", L"noschange", FS_IMMUTABLE_FL, 0 }, - { "nosimmutable", L"nosimmutable", FS_IMMUTABLE_FL, 0 }, + { "noschg", L"noschg", FS_IMMUTABLE_FL, 0}, + { "noschange", L"noschange", FS_IMMUTABLE_FL, 0}, + { "nosimmutable", L"nosimmutable", FS_IMMUTABLE_FL, 0}, #elif defined(EXT2_IMMUTABLE_FL) /* 'i' */ - { "noschg", L"noschg", EXT2_IMMUTABLE_FL, 0 }, - { "noschange", L"noschange", EXT2_IMMUTABLE_FL, 0 }, - { "nosimmutable", L"nosimmutable", EXT2_IMMUTABLE_FL, 0 }, + { "noschg", L"noschg", EXT2_IMMUTABLE_FL, 0}, + { "noschange", L"noschange", EXT2_IMMUTABLE_FL, 0}, + { "nosimmutable", L"nosimmutable", EXT2_IMMUTABLE_FL, 0}, #endif #ifdef SF_NOUNLINK - { "nosunlnk", L"nosunlnk", SF_NOUNLINK, 0 }, - { "nosunlink", L"nosunlink", SF_NOUNLINK, 0 }, + { "nosunlnk", L"nosunlnk", SF_NOUNLINK, 0}, + { "nosunlink", L"nosunlink", SF_NOUNLINK, 0}, #endif -#ifdef SF_SNAPSHOT - { "nosnapshot", L"nosnapshot", SF_SNAPSHOT, 0 }, -#endif #ifdef UF_APPEND - { "nouappnd", L"nouappnd", UF_APPEND, 0 }, - { "nouappend", L"nouappend", UF_APPEND, 0 }, + { "nouappnd", L"nouappnd", UF_APPEND, 0}, + { "nouappend", L"nouappend", UF_APPEND, 0}, #endif #ifdef UF_IMMUTABLE - { "nouchg", L"nouchg", UF_IMMUTABLE, 0 }, - { "nouchange", L"nouchange", UF_IMMUTABLE, 0 }, - { "nouimmutable", L"nouimmutable", UF_IMMUTABLE, 0 }, + { "nouchg", L"nouchg", UF_IMMUTABLE, 0}, + { "nouchange", L"nouchange", UF_IMMUTABLE, 0}, + { "nouimmutable", L"nouimmutable", UF_IMMUTABLE, 0}, #endif #ifdef UF_NODUMP { "nodump", L"nodump", 0, UF_NODUMP}, #endif #if defined(FS_NODUMP_FL) /* 'd' */ { "nodump", L"nodump", 0, FS_NODUMP_FL}, -#elif defined(EXT2_NODUMP_FL) /* 'd' */ +#elif defined(EXT2_NODUMP_FL) { "nodump", L"nodump", 0, EXT2_NODUMP_FL}, #endif #ifdef UF_OPAQUE - { "noopaque", L"noopaque", UF_OPAQUE, 0 }, + { "noopaque", L"noopaque", UF_OPAQUE, 0}, #endif #ifdef UF_NOUNLINK - { "nouunlnk", L"nouunlnk", UF_NOUNLINK, 0 }, - { "nouunlink", L"nouunlink", UF_NOUNLINK, 0 }, + { "nouunlnk", L"nouunlnk", UF_NOUNLINK, 0}, + { "nouunlink", L"nouunlink", UF_NOUNLINK, 0}, #endif #ifdef UF_COMPRESSED - { "nocompressed",L"nocompressed", UF_COMPRESSED, 0 }, + /* Mac OS */ + { "nocompressed", L"nocompressed", UF_COMPRESSED, 0}, #endif #ifdef UF_HIDDEN - { "nohidden", L"nohidden", UF_HIDDEN, 0 }, + { "nohidden", L"nohidden", UF_HIDDEN, 0}, + { "nouhidden", L"nouhidden", UF_HIDDEN, 0}, #endif -#if defined(FS_UNRM_FL) - { "nouunlink", L"nouunlink", FS_UNRM_FL, 0}, -#elif defined(EXT2_UNRM_FL) - { "nouunlink", L"nouunlink", EXT2_UNRM_FL, 0}, +#ifdef UF_OFFLINE + { "nooffline", L"nooffline", UF_OFFLINE, 0}, + { "nouoffline", L"nouoffline", UF_OFFLINE, 0}, #endif - -#if defined(FS_BTREE_FL) - { "nobtree", L"nobtree", FS_BTREE_FL, 0 }, -#elif defined(EXT2_BTREE_FL) - { "nobtree", L"nobtree", EXT2_BTREE_FL, 0 }, +#ifdef UF_READONLY + { "nordonly", L"nordonly", UF_READONLY, 0}, + { "nourdonly", L"nourdonly", UF_READONLY, 0}, + { "noreadonly", L"noreadonly", UF_READONLY, 0}, #endif - -#if defined(FS_ECOMPR_FL) - { "nocomperr", L"nocomperr", FS_ECOMPR_FL, 0 }, -#elif defined(EXT2_ECOMPR_FL) - { "nocomperr", L"nocomperr", EXT2_ECOMPR_FL, 0 }, +#ifdef UF_SPARSE + { "nosparse", L"nosparse", UF_SPARSE, 0}, + { "nousparse", L"nousparse", UF_SPARSE, 0}, #endif - -#if defined(FS_COMPR_FL) /* 'c' */ - { "nocompress", L"nocompress", FS_COMPR_FL, 0 }, -#elif defined(EXT2_COMPR_FL) /* 'c' */ - { "nocompress", L"nocompress", EXT2_COMPR_FL, 0 }, +#ifdef UF_REPARSE + { "noreparse", L"noreparse", UF_REPARSE, 0}, + { "noureparse", L"noureparse", UF_REPARSE, 0}, #endif - -#if defined(FS_NOATIME_FL) /* 'A' */ - { "noatime", L"noatime", 0, FS_NOATIME_FL}, -#elif defined(EXT2_NOATIME_FL) /* 'A' */ - { "noatime", L"noatime", 0, EXT2_NOATIME_FL}, +#ifdef UF_SYSTEM + { "nosystem", L"nosystem", UF_SYSTEM, 0}, + { "nousystem", L"nousystem", UF_SYSTEM, 0}, #endif +#if defined(FS_UNRM_FL) /* 'u' */ + { "noundel", L"noundel", FS_UNRM_FL, 0}, +#elif defined(EXT2_UNRM_FL) + { "noundel", L"noundel", EXT2_UNRM_FL, 0}, +#endif -#if defined(FS_DIRTY_FL) - { "nocompdirty",L"nocompdirty", FS_DIRTY_FL, 0}, -#elif defined(EXT2_DIRTY_FL) - { "nocompdirty",L"nocompdirty", EXT2_DIRTY_FL, 0}, +#if defined(FS_COMPR_FL) /* 'c' */ + { "nocompress", L"nocompress", FS_COMPR_FL, 0}, +#elif defined(EXT2_COMPR_FL) + { "nocompress", L"nocompress", EXT2_COMPR_FL, 0}, #endif -#if defined(FS_COMPRBLK_FL) -#if defined(FS_NOCOMPR_FL) - { "nocomprblk", L"nocomprblk", FS_COMPRBLK_FL, FS_NOCOMPR_FL}, -#else - { "nocomprblk", L"nocomprblk", FS_COMPRBLK_FL, 0}, +#if defined(FS_NOATIME_FL) /* 'A' */ + { "noatime", L"noatime", 0, FS_NOATIME_FL}, +#elif defined(EXT2_NOATIME_FL) + { "noatime", L"noatime", 0, EXT2_NOATIME_FL}, #endif -#elif defined(EXT2_COMPRBLK_FL) -#if defined(EXT2_NOCOMPR_FL) - { "nocomprblk", L"nocomprblk", EXT2_COMPRBLK_FL, EXT2_NOCOMPR_FL}, -#else - { "nocomprblk", L"nocomprblk", EXT2_COMPRBLK_FL, 0}, -#endif -#endif -#if defined(FS_DIRSYNC_FL) - { "nodirsync", L"nodirsync", FS_DIRSYNC_FL, 0}, +#if defined(FS_DIRSYNC_FL) /* 'D' */ + { "nodirsync", L"nodirsync", FS_DIRSYNC_FL, 0}, #elif defined(EXT2_DIRSYNC_FL) - { "nodirsync", L"nodirsync", EXT2_DIRSYNC_FL, 0}, + { "nodirsync", L"nodirsync", EXT2_DIRSYNC_FL, 0}, #endif -#if defined(FS_INDEX_FL) - { "nohashidx", L"nohashidx", FS_INDEX_FL, 0}, -#elif defined(EXT2_INDEX_FL) - { "nohashidx", L"nohashidx", EXT2_INDEX_FL, 0}, -#endif -#if defined(FS_IMAGIC_FL) - { "noimagic", L"noimagic", FS_IMAGIC_FL, 0}, -#elif defined(EXT2_IMAGIC_FL) - { "noimagic", L"noimagic", EXT2_IMAGIC_FL, 0}, -#endif -#if defined(FS_JOURNAL_DATA_FL) - { "nojournal", L"nojournal", FS_JOURNAL_DATA_FL, 0}, +#if defined(FS_JOURNAL_DATA_FL) /* 'j' */ + { "nojournal-data",L"nojournal-data", FS_JOURNAL_DATA_FL, 0}, + { "nojournal", L"nojournal", FS_JOURNAL_DATA_FL, 0}, #elif defined(EXT3_JOURNAL_DATA_FL) - { "nojournal", L"nojournal", EXT3_JOURNAL_DATA_FL, 0}, + { "nojournal-data",L"nojournal-data", EXT3_JOURNAL_DATA_FL, 0}, + { "nojournal", L"nojournal", EXT3_JOURNAL_DATA_FL, 0}, #endif -#if defined(FS_SECRM_FL) - { "nosecuredeletion",L"nosecuredeletion",FS_SECRM_FL, 0}, +#if defined(FS_SECRM_FL) /* 's' */ + { "nosecdel", L"nosecdel", FS_SECRM_FL, 0}, + { "nosecuredeletion",L"nosecuredeletion",FS_SECRM_FL, 0}, #elif defined(EXT2_SECRM_FL) - { "nosecuredeletion",L"nosecuredeletion",EXT2_SECRM_FL, 0}, + { "nosecdel", L"nosecdel", EXT2_SECRM_FL, 0}, + { "nosecuredeletion",L"nosecuredeletion",EXT2_SECRM_FL, 0}, #endif -#if defined(FS_SYNC_FL) - { "nosync", L"nosync", FS_SYNC_FL, 0}, +#if defined(FS_SYNC_FL) /* 'S' */ + { "nosync", L"nosync", FS_SYNC_FL, 0}, #elif defined(EXT2_SYNC_FL) - { "nosync", L"nosync", EXT2_SYNC_FL, 0}, + { "nosync", L"nosync", EXT2_SYNC_FL, 0}, #endif -#if defined(FS_NOTAIL_FL) - { "notail", L"notail", 0, FS_NOTAIL_FL}, +#if defined(FS_NOTAIL_FL) /* 't' */ + { "notail", L"notail", 0, FS_NOTAIL_FL}, #elif defined(EXT2_NOTAIL_FL) - { "notail", L"notail", 0, EXT2_NOTAIL_FL}, + { "notail", L"notail", 0, EXT2_NOTAIL_FL}, #endif -#if defined(FS_TOPDIR_FL) - { "notopdir", L"notopdir", FS_TOPDIR_FL, 0}, +#if defined(FS_TOPDIR_FL) /* 'T' */ + { "notopdir", L"notopdir", FS_TOPDIR_FL, 0}, #elif defined(EXT2_TOPDIR_FL) - { "notopdir", L"notopdir", EXT2_TOPDIR_FL, 0}, + { "notopdir", L"notopdir", EXT2_TOPDIR_FL, 0}, #endif -#ifdef FS_ENCRYPT_FL - { "noencrypt", L"noencrypt", FS_ENCRYPT_FL, 0}, +#ifdef FS_NOCOW_FL /* 'C' */ + { "nocow", L"nocow", 0, FS_NOCOW_FL}, #endif -#ifdef FS_HUGE_FILE_FL - { "nohugefile", L"nohugefile", FS_HUGE_FILE_FL, 0}, +#ifdef FS_PROJINHERIT_FL /* 'P' */ + { "noprojinherit",L"noprojinherit", FS_PROJINHERIT_FL, 0}, #endif -#ifdef FS_EXTENT_FL - { "noextent", L"noextent", FS_EXTENT_FL, 0}, -#endif -#ifdef FS_EA_INODE_FL - { "noeainode", L"noeainode", FS_EA_INODE_FL, 0}, -#endif -#ifdef FS_EOFBLOCKS_FL - { "noeofblocks",L"noeofblocks", FS_EOFBLOCKS_FL, 0}, -#endif -#ifdef FS_NOCOW_FL - { "nocow", L"nocow", FS_NOCOW_FL, 0}, -#endif -#ifdef FS_INLINE_DATA_FL - { "noinlinedata",L"noinlinedata", FS_INLINE_DATA_FL, 0}, -#endif -#ifdef FS_PROJINHERIT_FL - { "noprojinherit",L"noprojinherit", FS_PROJINHERIT_FL, 0}, -#endif -#if defined(FS_RESERVED_FL) - { "noreserved", L"noreserved", FS_RESERVED_FL, 0}, -#elif defined(EXT2_RESERVED_FL) - { "noreserved", L"noreserved", EXT2_RESERVED_FL, 0}, -#endif - { NULL, NULL, 0, 0 } + { NULL, NULL, 0, 0} }; /* Modified: stable/12/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c Wed Apr 10 21:45:23 2019 (r346103) @@ -163,6 +163,9 @@ archive_read_disk_entry_from_file(struct archive *_a, int initial_fd = fd; int r, r1; + archive_check_magic(_a, ARCHIVE_READ_DISK_MAGIC, ARCHIVE_STATE_ANY, + "archive_read_disk_entry_from_file"); + archive_clear_error(_a); path = archive_entry_sourcepath(entry); if (path == NULL) Modified: stable/12/contrib/libarchive/libarchive/archive_read_support_format_rar5.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/archive_read_support_format_rar5.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/archive_read_support_format_rar5.c Wed Apr 10 21:45:23 2019 (r346103) @@ -517,15 +517,16 @@ static int run_e8e9_filter(struct rar5* rar, struct fi const uint32_t file_size = 0x1000000; ssize_t i; + const int mask = (int)rar->cstate.window_mask; circular_memcpy(rar->cstate.filtered_buf, rar->cstate.window_buf, - rar->cstate.window_mask, + mask, rar->cstate.solid_offset + flt->block_start, rar->cstate.solid_offset + flt->block_start + flt->block_length); for(i = 0; i < flt->block_length - 4;) { uint8_t b = rar->cstate.window_buf[(rar->cstate.solid_offset + - flt->block_start + i++) & rar->cstate.window_mask]; + flt->block_start + i++) & mask]; /* 0xE8 = x86's call (function call) * 0xE9 = x86's jmp (unconditional jump) */ @@ -534,17 +535,17 @@ static int run_e8e9_filter(struct rar5* rar, struct fi uint32_t addr; uint32_t offset = (i + flt->block_start) % file_size; - addr = read_filter_data(rar, (rar->cstate.solid_offset + + addr = read_filter_data(rar, (uint32_t)(rar->cstate.solid_offset + flt->block_start + i) & rar->cstate.window_mask); if(addr & 0x80000000) { if(((addr + offset) & 0x80000000) == 0) { - write_filter_data(rar, i, addr + file_size); + write_filter_data(rar, (uint32_t)i, addr + file_size); } } else { if((addr - file_size) & 0x80000000) { uint32_t naddr = addr - offset; - write_filter_data(rar, i, naddr); + write_filter_data(rar, (uint32_t)i, naddr); } } @@ -558,11 +559,11 @@ static int run_e8e9_filter(struct rar5* rar, struct fi static int run_arm_filter(struct rar5* rar, struct filter_info* flt) { ssize_t i = 0; uint32_t offset; - const int mask = rar->cstate.window_mask; + const int mask = (int)rar->cstate.window_mask; circular_memcpy(rar->cstate.filtered_buf, rar->cstate.window_buf, - rar->cstate.window_mask, + mask, rar->cstate.solid_offset + flt->block_start, rar->cstate.solid_offset + flt->block_start + flt->block_length); @@ -577,7 +578,7 @@ static int run_arm_filter(struct rar5* rar, struct fil offset -= (uint32_t) ((i + flt->block_start) / 4); offset = (offset & 0x00ffffff) | 0xeb000000; - write_filter_data(rar, i, offset); + write_filter_data(rar, (uint32_t)i, offset); } } @@ -643,7 +644,7 @@ static int run_filter(struct archive_read* a, struct f static void push_data(struct archive_read* a, struct rar5* rar, const uint8_t* buf, int64_t idx_begin, int64_t idx_end) { - const int wmask = rar->cstate.window_mask; + const int wmask = (int)rar->cstate.window_mask; const ssize_t solid_write_ptr = (rar->cstate.solid_offset + rar->cstate.last_write_ptr) & wmask; @@ -1716,8 +1717,8 @@ static int process_base_block(struct archive_read* a, rar->generic.split_after = (header_flags & HFL_SPLIT_AFTER) > 0; rar->generic.split_before = (header_flags & HFL_SPLIT_BEFORE) > 0; - rar->generic.size = hdr_size; - rar->generic.last_header_id = header_id; + rar->generic.size = (int)hdr_size; + rar->generic.last_header_id = (int)header_id; rar->main.endarc = 0; /* Those are possible header ids in RARv5. */ @@ -1933,7 +1934,7 @@ static int create_decode_tables(uint8_t* bit_length, } } - quick_data_size = 1 << table->quick_bits; + quick_data_size = (int64_t)1 << table->quick_bits; cur_len = 1; for(code = 0; code < quick_data_size; code++) { int bit_field = code << (16 - table->quick_bits); @@ -2364,7 +2365,7 @@ static int decode_code_length(struct rar5* rar, const static int copy_string(struct archive_read* a, int len, int dist) { struct rar5* rar = get_context(a); - const int cmask = rar->cstate.window_mask; + const int cmask = (int)rar->cstate.window_mask; const int64_t write_ptr = rar->cstate.write_ptr + rar->cstate.solid_offset; int i; @@ -2390,7 +2391,7 @@ static int do_uncompress_block(struct archive_read* a, uint16_t num; int ret; - const int cmask = rar->cstate.window_mask; + const int cmask = (int)rar->cstate.window_mask; const struct compressed_block_header* hdr = &rar->last_block_hdr; const uint8_t bit_size = 1 + bf_bit_size(hdr); Modified: stable/12/contrib/libarchive/libarchive/archive_read_support_format_zip.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/archive_read_support_format_zip.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/archive_read_support_format_zip.c Wed Apr 10 21:45:23 2019 (r346103) @@ -194,6 +194,7 @@ struct zip { ssize_t zipx_ppmd_read_compressed; CPpmd8 ppmd8; char ppmd8_valid; + char ppmd8_stream_failed; struct archive_string_conv *sconv; struct archive_string_conv *sconv_default; @@ -254,9 +255,15 @@ ppmd_read(void* p) { /* Get the handle to current decompression context. */ struct archive_read *a = ((IByteIn*)p)->a; struct zip *zip = (struct zip*) a->format->data; + ssize_t bytes_avail = 0; /* Fetch next byte. */ - const uint8_t* data = __archive_read_ahead(a, 1, NULL); + const uint8_t* data = __archive_read_ahead(a, 1, &bytes_avail); + if(bytes_avail < 1) { + zip->ppmd8_stream_failed = 1; + return 0; + } + __archive_read_consume(a, 1); /* Increment the counter. */ @@ -1750,6 +1757,7 @@ zipx_ppmd8_init(struct archive_read *a, struct zip *zi /* Create a new decompression context. */ __archive_ppmd8_functions.Ppmd8_Construct(&zip->ppmd8); + zip->ppmd8_stream_failed = 0; /* Setup function pointers required by Ppmd8 decompressor. The * 'ppmd_read' function will feed new bytes to the decompressor, @@ -1869,6 +1877,14 @@ zip_read_data_zipx_ppmd(struct archive_read *a, const break; } + /* This field is set by ppmd_read() when there was no more data + * to be read. */ + if(zip->ppmd8_stream_failed) { + archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, + "Truncated PPMd8 file body"); + return (ARCHIVE_FATAL); + } + zip->uncompressed_buffer[consumed_bytes] = (uint8_t) sym; ++consumed_bytes; } while(consumed_bytes < zip->uncompressed_buffer_size); @@ -1902,7 +1918,7 @@ zipx_bzip2_init(struct archive_read *a, struct zip *zi { int r; - /* Deallocate already existing BZ2 decompression context if it + /* Deallocate already existing BZ2 decompression context if it * exists. */ if(zip->bzstream_valid) { BZ2_bzDecompressEnd(&zip->bzstream); @@ -1968,6 +1984,15 @@ zip_read_data_zipx_bzip2(struct archive_read *a, const } in_bytes = zipmin(zip->entry_bytes_remaining, bytes_avail); + if(in_bytes < 1) { + /* libbz2 doesn't complain when caller feeds avail_in == 0. It will + * actually return success in this case, which is undesirable. This is + * why we need to make this check manually. */ + + archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, + "Truncated bzip2 file body"); + return (ARCHIVE_FATAL); + } /* Setup buffer boundaries. */ zip->bzstream.next_in = (char*)(uintptr_t) compressed_buff; Modified: stable/12/contrib/libarchive/libarchive/archive_string.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/archive_string.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/archive_string.c Wed Apr 10 21:45:23 2019 (r346103) @@ -1512,8 +1512,10 @@ get_current_codepage(void) p = strrchr(locale, '.'); if (p == NULL) return (GetACP()); + if (strcmp(p+1, "utf8") == 0) + return CP_UTF8; cp = my_atoi(p+1); - if (cp <= 0) + if ((int)cp <= 0) return (GetACP()); return (cp); } @@ -4050,6 +4052,7 @@ archive_mstring_copy_utf8(struct archive_mstring *aes, { if (utf8 == NULL) { aes->aes_set = 0; + return (0); } aes->aes_set = AES_SET_UTF8; archive_string_empty(&(aes->aes_mbs)); @@ -4064,6 +4067,7 @@ archive_mstring_copy_wcs_len(struct archive_mstring *a { if (wcs == NULL) { aes->aes_set = 0; + return (0); } aes->aes_set = AES_SET_WCS; /* Only WCS form set. */ archive_string_empty(&(aes->aes_mbs)); Modified: stable/12/contrib/libarchive/libarchive/archive_write_disk_posix.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/archive_write_disk_posix.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/archive_write_disk_posix.c Wed Apr 10 21:45:23 2019 (r346103) @@ -2588,8 +2588,11 @@ check_symlinks_fsobj(char *path, int *a_eno, struct ar */ restore_pwd = open(".", O_RDONLY | O_BINARY | O_CLOEXEC); __archive_ensure_cloexec_flag(restore_pwd); - if (restore_pwd < 0) + if (restore_pwd < 0) { + fsobj_error(a_eno, a_estr, errno, + "Could not open ", path); return (ARCHIVE_FATAL); + } head = path; tail = path; last = 0; @@ -3128,12 +3131,14 @@ create_dir(struct archive_write_disk *a, char *path) static int set_ownership(struct archive_write_disk *a) { -#ifndef __CYGWIN__ -/* unfortunately, on win32 there is no 'root' user with uid 0, - so we just have to try the chown and see if it works */ - - /* If we know we can't change it, don't bother trying. */ - if (a->user_uid != 0 && a->user_uid != a->uid) { +#if !defined(__CYGWIN__) && !defined(__linux__) +/* + * On Linux, a process may have the CAP_CHOWN capability. + * On Windows there is no 'root' user with uid 0. + * Elsewhere we can skip calling chown if we are not root and the desired + * user id does not match the current user. + */ + if (a->user_uid != 0 && a->user_uid != a->uid) { archive_set_error(&a->archive, errno, "Can't set UID=%jd", (intmax_t)a->uid); return (ARCHIVE_WARN); @@ -3500,9 +3505,7 @@ set_fflags(struct archive_write_disk *a) struct fixup_entry *le; unsigned long set, clear; int r; - int critical_flags; mode_t mode = archive_entry_mode(a->entry); - /* * Make 'critical_flags' hold all file flags that can't be * immediately restored. For example, on BSD systems, @@ -3518,33 +3521,33 @@ set_fflags(struct archive_write_disk *a) * other programs that might try to muck with files as they're * being restored. */ - /* Hopefully, the compiler will optimize this mess into a constant. */ - critical_flags = 0; + const int critical_flags = 0 #ifdef SF_IMMUTABLE - critical_flags |= SF_IMMUTABLE; + | SF_IMMUTABLE #endif #ifdef UF_IMMUTABLE - critical_flags |= UF_IMMUTABLE; + | UF_IMMUTABLE #endif #ifdef SF_APPEND - critical_flags |= SF_APPEND; + | SF_APPEND #endif #ifdef UF_APPEND - critical_flags |= UF_APPEND; + | UF_APPEND #endif #if defined(FS_APPEND_FL) - critical_flags |= FS_APPEND_FL; + | FS_APPEND_FL #elif defined(EXT2_APPEND_FL) - critical_flags |= EXT2_APPEND_FL; + | EXT2_APPEND_FL #endif #if defined(FS_IMMUTABLE_FL) - critical_flags |= FS_IMMUTABLE_FL; + | FS_IMMUTABLE_FL #elif defined(EXT2_IMMUTABLE_FL) - critical_flags |= EXT2_IMMUTABLE_FL; + | EXT2_IMMUTABLE_FL #endif #ifdef FS_JOURNAL_DATA_FL - critical_flags |= FS_JOURNAL_DATA_FL; + | FS_JOURNAL_DATA_FL #endif + ; if (a->todo & TODO_FFLAGS) { archive_entry_fflags(a->entry, &set, &clear); @@ -3575,29 +3578,27 @@ set_fflags(struct archive_write_disk *a) static int clear_nochange_fflags(struct archive_write_disk *a) { - int nochange_flags; mode_t mode = archive_entry_mode(a->entry); - - /* Hopefully, the compiler will optimize this mess into a constant. */ - nochange_flags = 0; + const int nochange_flags = 0 #ifdef SF_IMMUTABLE - nochange_flags |= SF_IMMUTABLE; + | SF_IMMUTABLE #endif #ifdef UF_IMMUTABLE - nochange_flags |= UF_IMMUTABLE; + | UF_IMMUTABLE #endif #ifdef SF_APPEND - nochange_flags |= SF_APPEND; + | SF_APPEND #endif #ifdef UF_APPEND - nochange_flags |= UF_APPEND; + | UF_APPEND #endif #ifdef EXT2_APPEND_FL - nochange_flags |= EXT2_APPEND_FL; + | EXT2_APPEND_FL #endif #ifdef EXT2_IMMUTABLE_FL - nochange_flags |= EXT2_IMMUTABLE_FL; + | EXT2_IMMUTABLE_FL #endif + ; return (set_fflags_platform(a, a->fd, a->name, mode, 0, nochange_flags)); @@ -3613,8 +3614,22 @@ set_fflags_platform(struct archive_write_disk *a, int mode_t mode, unsigned long set, unsigned long clear) { int r; - + const int sf_mask = 0 +#ifdef SF_APPEND + | SF_APPEND +#endif +#ifdef SF_ARCHIVED + | SF_ARCHIVED +#endif +#ifdef SF_IMMUTABLE + | SF_IMMUTABLE +#endif +#ifdef SF_NOUNLINK + | SF_NOUNLINK +#endif + ; (void)mode; /* UNUSED */ + if (set == 0 && clear == 0) return (ARCHIVE_OK); @@ -3629,6 +3644,12 @@ set_fflags_platform(struct archive_write_disk *a, int a->st.st_flags &= ~clear; a->st.st_flags |= set; + + /* Only super-user may change SF_* flags */ + + if (a->user_uid != 0) + a->st.st_flags &= ~sf_mask; + #ifdef HAVE_FCHFLAGS /* If platform has fchflags() and we were given an fd, use it. */ if (fd >= 0 && fchflags(fd, a->st.st_flags) == 0) @@ -3670,22 +3691,6 @@ set_fflags_platform(struct archive_write_disk *a, int int ret; int myfd = fd; int newflags, oldflags; - int sf_mask = 0; - - if (set == 0 && clear == 0) - return (ARCHIVE_OK); - /* Only regular files and dirs can have flags. */ - if (!S_ISREG(mode) && !S_ISDIR(mode)) - return (ARCHIVE_OK); - - /* If we weren't given an fd, open it ourselves. */ - if (myfd < 0) { - myfd = open(name, O_RDONLY | O_NONBLOCK | O_BINARY | O_CLOEXEC); - __archive_ensure_cloexec_flag(myfd); - } - if (myfd < 0) - return (ARCHIVE_OK); - /* * Linux has no define for the flags that are only settable by * the root user. This code may seem a little complex, but @@ -3693,19 +3698,36 @@ set_fflags_platform(struct archive_write_disk *a, int * defines. (?) The code below degrades reasonably gracefully * if sf_mask is incomplete. */ + const int sf_mask = 0 #if defined(FS_IMMUTABLE_FL) - sf_mask |= FS_IMMUTABLE_FL; + | FS_IMMUTABLE_FL #elif defined(EXT2_IMMUTABLE_FL) - sf_mask |= EXT2_IMMUTABLE_FL; + | EXT2_IMMUTABLE_FL #endif #if defined(FS_APPEND_FL) - sf_mask |= FS_APPEND_FL; + | FS_APPEND_FL #elif defined(EXT2_APPEND_FL) - sf_mask |= EXT2_APPEND_FL; + | EXT2_APPEND_FL #endif #if defined(FS_JOURNAL_DATA_FL) - sf_mask |= FS_JOURNAL_DATA_FL; + | FS_JOURNAL_DATA_FL #endif + ; + + if (set == 0 && clear == 0) + return (ARCHIVE_OK); + /* Only regular files and dirs can have flags. */ + if (!S_ISREG(mode) && !S_ISDIR(mode)) + return (ARCHIVE_OK); + + /* If we weren't given an fd, open it ourselves. */ + if (myfd < 0) { + myfd = open(name, O_RDONLY | O_NONBLOCK | O_BINARY | O_CLOEXEC); + __archive_ensure_cloexec_flag(myfd); + } + if (myfd < 0) + return (ARCHIVE_OK); + /* * XXX As above, this would be way simpler if we didn't have * to read the current flags from disk. XXX Modified: stable/12/contrib/libarchive/libarchive/archive_write_set_format_7zip.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/archive_write_set_format_7zip.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/archive_write_set_format_7zip.c Wed Apr 10 21:45:23 2019 (r346103) @@ -439,7 +439,8 @@ _7z_write_header(struct archive_write *a, struct archi r = file_new(a, entry, &file); if (r < ARCHIVE_WARN) { - file_free(file); + if (file != NULL) + file_free(file); return (r); } if (file->size == 0 && file->dir) { Modified: stable/12/contrib/libarchive/libarchive/test/test_entry.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/test/test_entry.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/test/test_entry.c Wed Apr 10 21:45:23 2019 (r346103) @@ -336,7 +336,7 @@ DEFINE_TEST(test_entry) /* Converting fflags bitmap to string is currently system-dependent. */ /* TODO: Make this system-independent. */ assertEqualString(archive_entry_fflags_text(e), - "uappnd,nouchg,nodump,noopaque,uunlnk"); + "uappnd,nouchg,nodump,noopaque,uunlnk,nosystem"); /* Test archive_entry_copy_fflags_text_w() */ archive_entry_copy_fflags_text_w(e, L" ,nouappnd, nouchg, dump,uunlnk"); archive_entry_fflags(e, &set, &clear); Modified: stable/12/contrib/libarchive/libarchive/test/test_read_format_rar5.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/test/test_read_format_rar5.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/test/test_read_format_rar5.c Wed Apr 10 21:45:23 2019 (r346103) @@ -96,7 +96,7 @@ int extract_one(struct archive* a, struct archive_entr int ret = 1; uint32_t computed_crc; - fsize = archive_entry_size(ae); + fsize = (la_ssize_t) archive_entry_size(ae); buf = malloc(fsize); if(buf == NULL) return 1; @@ -110,13 +110,13 @@ int extract_one(struct archive* a, struct archive_entr computed_crc = crc32(0, buf, fsize); assertEqualInt(computed_crc, crc); ret = 0; - + fn_exit: free(buf); return ret; } -DEFINE_TEST(test_read_format_rar5_stored) +DEFINE_TEST(test_read_format_rar5_stored) { const char helloworld_txt[] = "hello libarchive test suite!\n"; la_ssize_t file_size = sizeof(helloworld_txt) - 1; @@ -143,7 +143,7 @@ DEFINE_TEST(test_read_format_rar5_stored) DEFINE_TEST(test_read_format_rar5_compressed) { const int DATA_SIZE = 1200; - uint8_t buff[DATA_SIZE]; + uint8_t buff[1200]; PROLOGUE("test_read_format_rar5_compressed.rar"); @@ -161,7 +161,7 @@ DEFINE_TEST(test_read_format_rar5_compressed) DEFINE_TEST(test_read_format_rar5_multiple_files) { const int DATA_SIZE = 4096; - uint8_t buff[DATA_SIZE]; + uint8_t buff[4096]; PROLOGUE("test_read_format_rar5_multiple_files.rar"); @@ -173,7 +173,7 @@ DEFINE_TEST(test_read_format_rar5_multiple_files) assertEqualInt(DATA_SIZE, archive_entry_size(ae)); assertA(DATA_SIZE == archive_read_data(a, buff, DATA_SIZE)); assertA(verify_data(buff, 1, DATA_SIZE)); - + assertA(0 == archive_read_next_header(a, &ae)); assertEqualString("test2.bin", archive_entry_pathname(ae)); assertEqualInt(DATA_SIZE, archive_entry_size(ae)); @@ -207,7 +207,7 @@ DEFINE_TEST(test_read_format_rar5_multiple_files) DEFINE_TEST(test_read_format_rar5_multiple_files_solid) { const int DATA_SIZE = 4096; - uint8_t buff[DATA_SIZE]; + uint8_t buff[4096]; PROLOGUE("test_read_format_rar5_multiple_files_solid.rar"); @@ -216,7 +216,7 @@ DEFINE_TEST(test_read_format_rar5_multiple_files_solid assertEqualInt(DATA_SIZE, archive_entry_size(ae)); assertA(DATA_SIZE == archive_read_data(a, buff, DATA_SIZE)); assertA(verify_data(buff, 1, DATA_SIZE)); - + assertA(0 == archive_read_next_header(a, &ae)); assertEqualString("test2.bin", archive_entry_pathname(ae)); assertEqualInt(DATA_SIZE, archive_entry_size(ae)); @@ -309,7 +309,7 @@ DEFINE_TEST(test_read_format_rar5_multiarchive_skip_al DEFINE_TEST(test_read_format_rar5_blake2) { const la_ssize_t proper_size = 814; - uint8_t buf[proper_size]; + uint8_t buf[814]; PROLOGUE("test_read_format_rar5_blake2.rar"); assertA(0 == archive_read_next_header(a, &ae)); @@ -334,7 +334,7 @@ DEFINE_TEST(test_read_format_rar5_arm_filter) * test. */ const la_ssize_t proper_size = 90808; - uint8_t buf[proper_size]; + uint8_t buf[90808]; PROLOGUE("test_read_format_rar5_arm.rar"); assertA(0 == archive_read_next_header(a, &ae)); @@ -598,7 +598,7 @@ DEFINE_TEST(test_read_format_rar5_multiarchive_solid_s EPILOGUE(); } -DEFINE_TEST(test_read_format_rar5_solid_skip_all) +DEFINE_TEST(test_read_format_rar5_solid_skip_all) { const char* reffile = "test_read_format_rar5_solid.rar"; @@ -623,7 +623,7 @@ DEFINE_TEST(test_read_format_rar5_solid_skip_all) EPILOGUE(); } -DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_first) +DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_first) { const char* reffile = "test_read_format_rar5_solid.rar"; @@ -649,7 +649,7 @@ DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_f EPILOGUE(); } -DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_second) +DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_second) { const char* reffile = "test_read_format_rar5_solid.rar"; Modified: stable/12/contrib/libarchive/libarchive/test/test_read_format_xar.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/test/test_read_format_xar.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/test/test_read_format_xar.c Wed Apr 10 21:45:23 2019 (r346103) @@ -799,7 +799,7 @@ static void verify(unsigned char *d, size_t s, static void verifyB(unsigned char *d, size_t s) { struct archive* a; struct archive_entry *entry = NULL; - la_int64_t buf_size; + size_t buf_size; unsigned char *buf; assert((a = archive_read_new()) != NULL); @@ -826,20 +826,20 @@ static void verifyB(unsigned char *d, size_t s) { // f1, content "onetwothree\n", size 12 bytes assertA(0 == archive_read_next_header(a, &entry)); - buf_size = archive_entry_size(entry); + buf_size = (size_t) archive_entry_size(entry); assertA(buf_size == 12); buf = (unsigned char*) malloc(buf_size); assertA(NULL != buf); - assertA(buf_size == archive_read_data(a, buf, buf_size)); + assertA(buf_size == (size_t) archive_read_data(a, buf, buf_size)); free(buf); // f2, content "fourfivesix\n", size 12 bytes assertA(0 == archive_read_next_header(a, &entry)); - buf_size = archive_entry_size(entry); + buf_size = (size_t) archive_entry_size(entry); assertA(buf_size == 12); buf = (unsigned char*) malloc(buf_size); assertA(NULL != buf); - assertA(buf_size == archive_read_data(a, buf, buf_size)); + assertA(buf_size == (size_t) archive_read_data(a, buf, buf_size)); free(buf); assertEqualInt(ARCHIVE_OK, archive_read_free(a)); Modified: stable/12/contrib/libarchive/libarchive/test/test_read_format_zip.c ============================================================================== --- stable/12/contrib/libarchive/libarchive/test/test_read_format_zip.c Wed Apr 10 21:29:37 2019 (r346102) +++ stable/12/contrib/libarchive/libarchive/test/test_read_format_zip.c Wed Apr 10 21:45:23 2019 (r346103) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Wed Apr 10 21:46:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ED999156E735; Wed, 10 Apr 2019 21:46:09 +0000 (UTC) (envelope-from mm@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 A0AA48D22D; Wed, 10 Apr 2019 21:46:09 +0000 (UTC) (envelope-from mm@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 5EBBC8B2; Wed, 10 Apr 2019 21:46:09 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3ALk9Zg089450; Wed, 10 Apr 2019 21:46:09 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3ALk6xv089437; Wed, 10 Apr 2019 21:46:06 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201904102146.x3ALk6xv089437@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Wed, 10 Apr 2019 21:46:06 +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: r346104 - in stable/11: contrib/libarchive/libarchive contrib/libarchive/libarchive/test lib/libarchive/tests X-SVN-Group: stable-11 X-SVN-Commit-Author: mm X-SVN-Commit-Paths: in stable/11: contrib/libarchive/libarchive contrib/libarchive/libarchive/test lib/libarchive/tests X-SVN-Commit-Revision: 346104 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A0AA48D22D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.92 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.92)[-0.923,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 21:46:10 -0000 Author: mm Date: Wed Apr 10 21:46:06 2019 New Revision: 346104 URL: https://svnweb.freebsd.org/changeset/base/346104 Log: MFC r345497: Sync libarchive with vendor. Relevant vendor changes: PR #1153: fixed 2 bugs in ZIP reader [1] PR #1143: ensure archive_read_disk_entry_from_file() uses ARCHIVE_READ_DISK Changes to file flags code, support more file flags on FreeBSD: UF_OFFLINE, UF_READONLY, UF_SPARSE, UF_REPARSE, UF_SYSTEM UF_ARCHIVE is not supported by intention (yet) PR: 236300 [1] Added: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_bz2_hang.zip.uu - copied unchanged from r345497, head/contrib/libarchive/libarchive/test/test_read_format_zip_bz2_hang.zip.uu stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_1.zipx.uu - copied unchanged from r345497, head/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_1.zipx.uu stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_2.zipx.uu - copied unchanged from r345497, head/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_2.zipx.uu Modified: stable/11/contrib/libarchive/libarchive/archive_blake2sp_ref.c stable/11/contrib/libarchive/libarchive/archive_entry.c stable/11/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c stable/11/contrib/libarchive/libarchive/archive_read_support_format_rar5.c stable/11/contrib/libarchive/libarchive/archive_read_support_format_zip.c stable/11/contrib/libarchive/libarchive/archive_string.c stable/11/contrib/libarchive/libarchive/archive_write_disk_posix.c stable/11/contrib/libarchive/libarchive/archive_write_set_format_7zip.c stable/11/contrib/libarchive/libarchive/test/test_entry.c stable/11/contrib/libarchive/libarchive/test/test_read_format_rar5.c stable/11/contrib/libarchive/libarchive/test/test_read_format_xar.c stable/11/contrib/libarchive/libarchive/test/test_read_format_zip.c stable/11/lib/libarchive/tests/Makefile Directory Properties: stable/11/ (props changed) Modified: stable/11/contrib/libarchive/libarchive/archive_blake2sp_ref.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/archive_blake2sp_ref.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/archive_blake2sp_ref.c Wed Apr 10 21:46:06 2019 (r346104) @@ -89,7 +89,7 @@ int blake2sp_init( blake2sp_state *S, size_t outlen ) return -1; for( i = 0; i < PARALLELISM_DEGREE; ++i ) - if( blake2sp_init_leaf( S->S[i], outlen, 0, i ) < 0 ) return -1; + if( blake2sp_init_leaf( S->S[i], outlen, 0, (uint32_t)i ) < 0 ) return -1; S->R->last_node = 1; S->S[PARALLELISM_DEGREE - 1]->last_node = 1; @@ -112,7 +112,7 @@ int blake2sp_init_key( blake2sp_state *S, size_t outle return -1; for( i = 0; i < PARALLELISM_DEGREE; ++i ) - if( blake2sp_init_leaf( S->S[i], outlen, keylen, i ) < 0 ) return -1; + if( blake2sp_init_leaf( S->S[i], outlen, keylen, (uint32_t)i ) < 0 ) return -1; S->R->last_node = 1; S->S[PARALLELISM_DEGREE - 1]->last_node = 1; @@ -230,7 +230,7 @@ int blake2sp( void *out, size_t outlen, const void *in if( keylen > BLAKE2S_KEYBYTES ) return -1; for( i = 0; i < PARALLELISM_DEGREE; ++i ) - if( blake2sp_init_leaf( S[i], outlen, keylen, i ) < 0 ) return -1; + if( blake2sp_init_leaf( S[i], outlen, keylen, (uint32_t)i ) < 0 ) return -1; S[PARALLELISM_DEGREE - 1]->last_node = 1; /* mark last node */ Modified: stable/11/contrib/libarchive/libarchive/archive_entry.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/archive_entry.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/archive_entry.c Wed Apr 10 21:46:06 2019 (r346104) @@ -1632,6 +1632,51 @@ _archive_entry_acl_text_l(struct archive_entry *entry, * SUCH DAMAGE. */ +/* + * Supported file flags on FreeBSD and Mac OS: + * sappnd,sappend SF_APPEND + * arch,archived SF_ARCHIVED + * schg,schange,simmutable SF_IMMUTABLE + * sunlnk,sunlink SF_NOUNLINK (FreeBSD only) + * uappnd,uappend UF_APPEND + * compressed UF_COMPRESSED (Mac OS only) + * hidden,uhidden UF_HIDDEN + * uchg,uchange,uimmutable UF_IMMUTABLE + * nodump UF_NODUMP + * uunlnk,uunlink UF_NOUNLINK (FreeBSD only) + * offline,uoffline UF_OFFLINE (FreeBSD only) + * opaque UF_OPAQUE + * rdonly,urdonly,readonly UF_READONLY (FreeBSD only) + * reparse,ureparse UF_REPARSE (FreeBSD only) + * sparse,usparse UF_SPARSE (FreeBSD only) + * system,usystem UF_SYSTEM (FreeBSD only) + * + * See chflags(2) for more information + * + * Supported file attributes on Linux: + * a append only FS_APPEND_FL sappnd + * A no atime updates FS_NOATIME_FL atime + * c compress FS_COMPR_FL compress + * C no copy on write FS_NOCOW_FL cow + * d no dump FS_NODUMP_FL dump + * D synchronous directory updates FS_DIRSYNC_FL dirsync + * i immutable FS_IMMUTABLE_FL schg + * j data journalling FS_JOURNAL_DATA_FL journal + * P project hierarchy FS_PROJINHERIT_FL projinherit + * s secure deletion FS_SECRM_FL securedeletion + * S synchronous updates FS_SYNC_FL sync + * t no tail-merging FS_NOTAIL_FL tail + * T top of directory hierarchy FS_TOPDIR_FL topdir + * u undeletable FS_UNRM_FL undel + * + * See ioctl_iflags(2) for more information + * + * Equivalent file flags supported on FreeBSD / Mac OS and Linux: + * SF_APPEND FS_APPEND_FL sappnd + * SF_IMMUTABLE FS_IMMUTABLE_FL schg + * UF_NODUMP FS_NODUMP_FL nodump + */ + static const struct flag { const char *name; const wchar_t *wname; @@ -1640,190 +1685,149 @@ static const struct flag { } flags[] = { /* Preferred (shorter) names per flag first, all prefixed by "no" */ #ifdef SF_APPEND - { "nosappnd", L"nosappnd", SF_APPEND, 0 }, - { "nosappend", L"nosappend", SF_APPEND, 0 }, + { "nosappnd", L"nosappnd", SF_APPEND, 0}, + { "nosappend", L"nosappend", SF_APPEND, 0}, #endif #if defined(FS_APPEND_FL) /* 'a' */ - { "nosappnd", L"nosappnd", FS_APPEND_FL, 0 }, - { "nosappend", L"nosappend", FS_APPEND_FL, 0 }, + { "nosappnd", L"nosappnd", FS_APPEND_FL, 0}, + { "nosappend", L"nosappend", FS_APPEND_FL, 0}, #elif defined(EXT2_APPEND_FL) /* 'a' */ - { "nosappnd", L"nosappnd", EXT2_APPEND_FL, 0 }, - { "nosappend", L"nosappend", EXT2_APPEND_FL, 0 }, + { "nosappnd", L"nosappnd", EXT2_APPEND_FL, 0}, + { "nosappend", L"nosappend", EXT2_APPEND_FL, 0}, #endif #ifdef SF_ARCHIVED - { "noarch", L"noarch", SF_ARCHIVED, 0 }, - { "noarchived", L"noarchived", SF_ARCHIVED, 0 }, + { "noarch", L"noarch", SF_ARCHIVED, 0}, + { "noarchived", L"noarchived", SF_ARCHIVED, 0}, #endif #ifdef SF_IMMUTABLE - { "noschg", L"noschg", SF_IMMUTABLE, 0 }, - { "noschange", L"noschange", SF_IMMUTABLE, 0 }, - { "nosimmutable", L"nosimmutable", SF_IMMUTABLE, 0 }, + { "noschg", L"noschg", SF_IMMUTABLE, 0}, + { "noschange", L"noschange", SF_IMMUTABLE, 0}, + { "nosimmutable", L"nosimmutable", SF_IMMUTABLE, 0}, #endif #if defined(FS_IMMUTABLE_FL) /* 'i' */ - { "noschg", L"noschg", FS_IMMUTABLE_FL, 0 }, - { "noschange", L"noschange", FS_IMMUTABLE_FL, 0 }, - { "nosimmutable", L"nosimmutable", FS_IMMUTABLE_FL, 0 }, + { "noschg", L"noschg", FS_IMMUTABLE_FL, 0}, + { "noschange", L"noschange", FS_IMMUTABLE_FL, 0}, + { "nosimmutable", L"nosimmutable", FS_IMMUTABLE_FL, 0}, #elif defined(EXT2_IMMUTABLE_FL) /* 'i' */ - { "noschg", L"noschg", EXT2_IMMUTABLE_FL, 0 }, - { "noschange", L"noschange", EXT2_IMMUTABLE_FL, 0 }, - { "nosimmutable", L"nosimmutable", EXT2_IMMUTABLE_FL, 0 }, + { "noschg", L"noschg", EXT2_IMMUTABLE_FL, 0}, + { "noschange", L"noschange", EXT2_IMMUTABLE_FL, 0}, + { "nosimmutable", L"nosimmutable", EXT2_IMMUTABLE_FL, 0}, #endif #ifdef SF_NOUNLINK - { "nosunlnk", L"nosunlnk", SF_NOUNLINK, 0 }, - { "nosunlink", L"nosunlink", SF_NOUNLINK, 0 }, + { "nosunlnk", L"nosunlnk", SF_NOUNLINK, 0}, + { "nosunlink", L"nosunlink", SF_NOUNLINK, 0}, #endif -#ifdef SF_SNAPSHOT - { "nosnapshot", L"nosnapshot", SF_SNAPSHOT, 0 }, -#endif #ifdef UF_APPEND - { "nouappnd", L"nouappnd", UF_APPEND, 0 }, - { "nouappend", L"nouappend", UF_APPEND, 0 }, + { "nouappnd", L"nouappnd", UF_APPEND, 0}, + { "nouappend", L"nouappend", UF_APPEND, 0}, #endif #ifdef UF_IMMUTABLE - { "nouchg", L"nouchg", UF_IMMUTABLE, 0 }, - { "nouchange", L"nouchange", UF_IMMUTABLE, 0 }, - { "nouimmutable", L"nouimmutable", UF_IMMUTABLE, 0 }, + { "nouchg", L"nouchg", UF_IMMUTABLE, 0}, + { "nouchange", L"nouchange", UF_IMMUTABLE, 0}, + { "nouimmutable", L"nouimmutable", UF_IMMUTABLE, 0}, #endif #ifdef UF_NODUMP { "nodump", L"nodump", 0, UF_NODUMP}, #endif #if defined(FS_NODUMP_FL) /* 'd' */ { "nodump", L"nodump", 0, FS_NODUMP_FL}, -#elif defined(EXT2_NODUMP_FL) /* 'd' */ +#elif defined(EXT2_NODUMP_FL) { "nodump", L"nodump", 0, EXT2_NODUMP_FL}, #endif #ifdef UF_OPAQUE - { "noopaque", L"noopaque", UF_OPAQUE, 0 }, + { "noopaque", L"noopaque", UF_OPAQUE, 0}, #endif #ifdef UF_NOUNLINK - { "nouunlnk", L"nouunlnk", UF_NOUNLINK, 0 }, - { "nouunlink", L"nouunlink", UF_NOUNLINK, 0 }, + { "nouunlnk", L"nouunlnk", UF_NOUNLINK, 0}, + { "nouunlink", L"nouunlink", UF_NOUNLINK, 0}, #endif #ifdef UF_COMPRESSED - { "nocompressed",L"nocompressed", UF_COMPRESSED, 0 }, + /* Mac OS */ + { "nocompressed", L"nocompressed", UF_COMPRESSED, 0}, #endif #ifdef UF_HIDDEN - { "nohidden", L"nohidden", UF_HIDDEN, 0 }, + { "nohidden", L"nohidden", UF_HIDDEN, 0}, + { "nouhidden", L"nouhidden", UF_HIDDEN, 0}, #endif -#if defined(FS_UNRM_FL) - { "nouunlink", L"nouunlink", FS_UNRM_FL, 0}, -#elif defined(EXT2_UNRM_FL) - { "nouunlink", L"nouunlink", EXT2_UNRM_FL, 0}, +#ifdef UF_OFFLINE + { "nooffline", L"nooffline", UF_OFFLINE, 0}, + { "nouoffline", L"nouoffline", UF_OFFLINE, 0}, #endif - -#if defined(FS_BTREE_FL) - { "nobtree", L"nobtree", FS_BTREE_FL, 0 }, -#elif defined(EXT2_BTREE_FL) - { "nobtree", L"nobtree", EXT2_BTREE_FL, 0 }, +#ifdef UF_READONLY + { "nordonly", L"nordonly", UF_READONLY, 0}, + { "nourdonly", L"nourdonly", UF_READONLY, 0}, + { "noreadonly", L"noreadonly", UF_READONLY, 0}, #endif - -#if defined(FS_ECOMPR_FL) - { "nocomperr", L"nocomperr", FS_ECOMPR_FL, 0 }, -#elif defined(EXT2_ECOMPR_FL) - { "nocomperr", L"nocomperr", EXT2_ECOMPR_FL, 0 }, +#ifdef UF_SPARSE + { "nosparse", L"nosparse", UF_SPARSE, 0}, + { "nousparse", L"nousparse", UF_SPARSE, 0}, #endif - -#if defined(FS_COMPR_FL) /* 'c' */ - { "nocompress", L"nocompress", FS_COMPR_FL, 0 }, -#elif defined(EXT2_COMPR_FL) /* 'c' */ - { "nocompress", L"nocompress", EXT2_COMPR_FL, 0 }, +#ifdef UF_REPARSE + { "noreparse", L"noreparse", UF_REPARSE, 0}, + { "noureparse", L"noureparse", UF_REPARSE, 0}, #endif - -#if defined(FS_NOATIME_FL) /* 'A' */ - { "noatime", L"noatime", 0, FS_NOATIME_FL}, -#elif defined(EXT2_NOATIME_FL) /* 'A' */ - { "noatime", L"noatime", 0, EXT2_NOATIME_FL}, +#ifdef UF_SYSTEM + { "nosystem", L"nosystem", UF_SYSTEM, 0}, + { "nousystem", L"nousystem", UF_SYSTEM, 0}, #endif +#if defined(FS_UNRM_FL) /* 'u' */ + { "noundel", L"noundel", FS_UNRM_FL, 0}, +#elif defined(EXT2_UNRM_FL) + { "noundel", L"noundel", EXT2_UNRM_FL, 0}, +#endif -#if defined(FS_DIRTY_FL) - { "nocompdirty",L"nocompdirty", FS_DIRTY_FL, 0}, -#elif defined(EXT2_DIRTY_FL) - { "nocompdirty",L"nocompdirty", EXT2_DIRTY_FL, 0}, +#if defined(FS_COMPR_FL) /* 'c' */ + { "nocompress", L"nocompress", FS_COMPR_FL, 0}, +#elif defined(EXT2_COMPR_FL) + { "nocompress", L"nocompress", EXT2_COMPR_FL, 0}, #endif -#if defined(FS_COMPRBLK_FL) -#if defined(FS_NOCOMPR_FL) - { "nocomprblk", L"nocomprblk", FS_COMPRBLK_FL, FS_NOCOMPR_FL}, -#else - { "nocomprblk", L"nocomprblk", FS_COMPRBLK_FL, 0}, +#if defined(FS_NOATIME_FL) /* 'A' */ + { "noatime", L"noatime", 0, FS_NOATIME_FL}, +#elif defined(EXT2_NOATIME_FL) + { "noatime", L"noatime", 0, EXT2_NOATIME_FL}, #endif -#elif defined(EXT2_COMPRBLK_FL) -#if defined(EXT2_NOCOMPR_FL) - { "nocomprblk", L"nocomprblk", EXT2_COMPRBLK_FL, EXT2_NOCOMPR_FL}, -#else - { "nocomprblk", L"nocomprblk", EXT2_COMPRBLK_FL, 0}, -#endif -#endif -#if defined(FS_DIRSYNC_FL) - { "nodirsync", L"nodirsync", FS_DIRSYNC_FL, 0}, +#if defined(FS_DIRSYNC_FL) /* 'D' */ + { "nodirsync", L"nodirsync", FS_DIRSYNC_FL, 0}, #elif defined(EXT2_DIRSYNC_FL) - { "nodirsync", L"nodirsync", EXT2_DIRSYNC_FL, 0}, + { "nodirsync", L"nodirsync", EXT2_DIRSYNC_FL, 0}, #endif -#if defined(FS_INDEX_FL) - { "nohashidx", L"nohashidx", FS_INDEX_FL, 0}, -#elif defined(EXT2_INDEX_FL) - { "nohashidx", L"nohashidx", EXT2_INDEX_FL, 0}, -#endif -#if defined(FS_IMAGIC_FL) - { "noimagic", L"noimagic", FS_IMAGIC_FL, 0}, -#elif defined(EXT2_IMAGIC_FL) - { "noimagic", L"noimagic", EXT2_IMAGIC_FL, 0}, -#endif -#if defined(FS_JOURNAL_DATA_FL) - { "nojournal", L"nojournal", FS_JOURNAL_DATA_FL, 0}, +#if defined(FS_JOURNAL_DATA_FL) /* 'j' */ + { "nojournal-data",L"nojournal-data", FS_JOURNAL_DATA_FL, 0}, + { "nojournal", L"nojournal", FS_JOURNAL_DATA_FL, 0}, #elif defined(EXT3_JOURNAL_DATA_FL) - { "nojournal", L"nojournal", EXT3_JOURNAL_DATA_FL, 0}, + { "nojournal-data",L"nojournal-data", EXT3_JOURNAL_DATA_FL, 0}, + { "nojournal", L"nojournal", EXT3_JOURNAL_DATA_FL, 0}, #endif -#if defined(FS_SECRM_FL) - { "nosecuredeletion",L"nosecuredeletion",FS_SECRM_FL, 0}, +#if defined(FS_SECRM_FL) /* 's' */ + { "nosecdel", L"nosecdel", FS_SECRM_FL, 0}, + { "nosecuredeletion",L"nosecuredeletion",FS_SECRM_FL, 0}, #elif defined(EXT2_SECRM_FL) - { "nosecuredeletion",L"nosecuredeletion",EXT2_SECRM_FL, 0}, + { "nosecdel", L"nosecdel", EXT2_SECRM_FL, 0}, + { "nosecuredeletion",L"nosecuredeletion",EXT2_SECRM_FL, 0}, #endif -#if defined(FS_SYNC_FL) - { "nosync", L"nosync", FS_SYNC_FL, 0}, +#if defined(FS_SYNC_FL) /* 'S' */ + { "nosync", L"nosync", FS_SYNC_FL, 0}, #elif defined(EXT2_SYNC_FL) - { "nosync", L"nosync", EXT2_SYNC_FL, 0}, + { "nosync", L"nosync", EXT2_SYNC_FL, 0}, #endif -#if defined(FS_NOTAIL_FL) - { "notail", L"notail", 0, FS_NOTAIL_FL}, +#if defined(FS_NOTAIL_FL) /* 't' */ + { "notail", L"notail", 0, FS_NOTAIL_FL}, #elif defined(EXT2_NOTAIL_FL) - { "notail", L"notail", 0, EXT2_NOTAIL_FL}, + { "notail", L"notail", 0, EXT2_NOTAIL_FL}, #endif -#if defined(FS_TOPDIR_FL) - { "notopdir", L"notopdir", FS_TOPDIR_FL, 0}, +#if defined(FS_TOPDIR_FL) /* 'T' */ + { "notopdir", L"notopdir", FS_TOPDIR_FL, 0}, #elif defined(EXT2_TOPDIR_FL) - { "notopdir", L"notopdir", EXT2_TOPDIR_FL, 0}, + { "notopdir", L"notopdir", EXT2_TOPDIR_FL, 0}, #endif -#ifdef FS_ENCRYPT_FL - { "noencrypt", L"noencrypt", FS_ENCRYPT_FL, 0}, +#ifdef FS_NOCOW_FL /* 'C' */ + { "nocow", L"nocow", 0, FS_NOCOW_FL}, #endif -#ifdef FS_HUGE_FILE_FL - { "nohugefile", L"nohugefile", FS_HUGE_FILE_FL, 0}, +#ifdef FS_PROJINHERIT_FL /* 'P' */ + { "noprojinherit",L"noprojinherit", FS_PROJINHERIT_FL, 0}, #endif -#ifdef FS_EXTENT_FL - { "noextent", L"noextent", FS_EXTENT_FL, 0}, -#endif -#ifdef FS_EA_INODE_FL - { "noeainode", L"noeainode", FS_EA_INODE_FL, 0}, -#endif -#ifdef FS_EOFBLOCKS_FL - { "noeofblocks",L"noeofblocks", FS_EOFBLOCKS_FL, 0}, -#endif -#ifdef FS_NOCOW_FL - { "nocow", L"nocow", FS_NOCOW_FL, 0}, -#endif -#ifdef FS_INLINE_DATA_FL - { "noinlinedata",L"noinlinedata", FS_INLINE_DATA_FL, 0}, -#endif -#ifdef FS_PROJINHERIT_FL - { "noprojinherit",L"noprojinherit", FS_PROJINHERIT_FL, 0}, -#endif -#if defined(FS_RESERVED_FL) - { "noreserved", L"noreserved", FS_RESERVED_FL, 0}, -#elif defined(EXT2_RESERVED_FL) - { "noreserved", L"noreserved", EXT2_RESERVED_FL, 0}, -#endif - { NULL, NULL, 0, 0 } + { NULL, NULL, 0, 0} }; /* Modified: stable/11/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c Wed Apr 10 21:46:06 2019 (r346104) @@ -163,6 +163,9 @@ archive_read_disk_entry_from_file(struct archive *_a, int initial_fd = fd; int r, r1; + archive_check_magic(_a, ARCHIVE_READ_DISK_MAGIC, ARCHIVE_STATE_ANY, + "archive_read_disk_entry_from_file"); + archive_clear_error(_a); path = archive_entry_sourcepath(entry); if (path == NULL) Modified: stable/11/contrib/libarchive/libarchive/archive_read_support_format_rar5.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/archive_read_support_format_rar5.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/archive_read_support_format_rar5.c Wed Apr 10 21:46:06 2019 (r346104) @@ -517,15 +517,16 @@ static int run_e8e9_filter(struct rar5* rar, struct fi const uint32_t file_size = 0x1000000; ssize_t i; + const int mask = (int)rar->cstate.window_mask; circular_memcpy(rar->cstate.filtered_buf, rar->cstate.window_buf, - rar->cstate.window_mask, + mask, rar->cstate.solid_offset + flt->block_start, rar->cstate.solid_offset + flt->block_start + flt->block_length); for(i = 0; i < flt->block_length - 4;) { uint8_t b = rar->cstate.window_buf[(rar->cstate.solid_offset + - flt->block_start + i++) & rar->cstate.window_mask]; + flt->block_start + i++) & mask]; /* 0xE8 = x86's call (function call) * 0xE9 = x86's jmp (unconditional jump) */ @@ -534,17 +535,17 @@ static int run_e8e9_filter(struct rar5* rar, struct fi uint32_t addr; uint32_t offset = (i + flt->block_start) % file_size; - addr = read_filter_data(rar, (rar->cstate.solid_offset + + addr = read_filter_data(rar, (uint32_t)(rar->cstate.solid_offset + flt->block_start + i) & rar->cstate.window_mask); if(addr & 0x80000000) { if(((addr + offset) & 0x80000000) == 0) { - write_filter_data(rar, i, addr + file_size); + write_filter_data(rar, (uint32_t)i, addr + file_size); } } else { if((addr - file_size) & 0x80000000) { uint32_t naddr = addr - offset; - write_filter_data(rar, i, naddr); + write_filter_data(rar, (uint32_t)i, naddr); } } @@ -558,11 +559,11 @@ static int run_e8e9_filter(struct rar5* rar, struct fi static int run_arm_filter(struct rar5* rar, struct filter_info* flt) { ssize_t i = 0; uint32_t offset; - const int mask = rar->cstate.window_mask; + const int mask = (int)rar->cstate.window_mask; circular_memcpy(rar->cstate.filtered_buf, rar->cstate.window_buf, - rar->cstate.window_mask, + mask, rar->cstate.solid_offset + flt->block_start, rar->cstate.solid_offset + flt->block_start + flt->block_length); @@ -577,7 +578,7 @@ static int run_arm_filter(struct rar5* rar, struct fil offset -= (uint32_t) ((i + flt->block_start) / 4); offset = (offset & 0x00ffffff) | 0xeb000000; - write_filter_data(rar, i, offset); + write_filter_data(rar, (uint32_t)i, offset); } } @@ -643,7 +644,7 @@ static int run_filter(struct archive_read* a, struct f static void push_data(struct archive_read* a, struct rar5* rar, const uint8_t* buf, int64_t idx_begin, int64_t idx_end) { - const int wmask = rar->cstate.window_mask; + const int wmask = (int)rar->cstate.window_mask; const ssize_t solid_write_ptr = (rar->cstate.solid_offset + rar->cstate.last_write_ptr) & wmask; @@ -1716,8 +1717,8 @@ static int process_base_block(struct archive_read* a, rar->generic.split_after = (header_flags & HFL_SPLIT_AFTER) > 0; rar->generic.split_before = (header_flags & HFL_SPLIT_BEFORE) > 0; - rar->generic.size = hdr_size; - rar->generic.last_header_id = header_id; + rar->generic.size = (int)hdr_size; + rar->generic.last_header_id = (int)header_id; rar->main.endarc = 0; /* Those are possible header ids in RARv5. */ @@ -1933,7 +1934,7 @@ static int create_decode_tables(uint8_t* bit_length, } } - quick_data_size = 1 << table->quick_bits; + quick_data_size = (int64_t)1 << table->quick_bits; cur_len = 1; for(code = 0; code < quick_data_size; code++) { int bit_field = code << (16 - table->quick_bits); @@ -2364,7 +2365,7 @@ static int decode_code_length(struct rar5* rar, const static int copy_string(struct archive_read* a, int len, int dist) { struct rar5* rar = get_context(a); - const int cmask = rar->cstate.window_mask; + const int cmask = (int)rar->cstate.window_mask; const int64_t write_ptr = rar->cstate.write_ptr + rar->cstate.solid_offset; int i; @@ -2390,7 +2391,7 @@ static int do_uncompress_block(struct archive_read* a, uint16_t num; int ret; - const int cmask = rar->cstate.window_mask; + const int cmask = (int)rar->cstate.window_mask; const struct compressed_block_header* hdr = &rar->last_block_hdr; const uint8_t bit_size = 1 + bf_bit_size(hdr); Modified: stable/11/contrib/libarchive/libarchive/archive_read_support_format_zip.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/archive_read_support_format_zip.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/archive_read_support_format_zip.c Wed Apr 10 21:46:06 2019 (r346104) @@ -194,6 +194,7 @@ struct zip { ssize_t zipx_ppmd_read_compressed; CPpmd8 ppmd8; char ppmd8_valid; + char ppmd8_stream_failed; struct archive_string_conv *sconv; struct archive_string_conv *sconv_default; @@ -254,9 +255,15 @@ ppmd_read(void* p) { /* Get the handle to current decompression context. */ struct archive_read *a = ((IByteIn*)p)->a; struct zip *zip = (struct zip*) a->format->data; + ssize_t bytes_avail = 0; /* Fetch next byte. */ - const uint8_t* data = __archive_read_ahead(a, 1, NULL); + const uint8_t* data = __archive_read_ahead(a, 1, &bytes_avail); + if(bytes_avail < 1) { + zip->ppmd8_stream_failed = 1; + return 0; + } + __archive_read_consume(a, 1); /* Increment the counter. */ @@ -1750,6 +1757,7 @@ zipx_ppmd8_init(struct archive_read *a, struct zip *zi /* Create a new decompression context. */ __archive_ppmd8_functions.Ppmd8_Construct(&zip->ppmd8); + zip->ppmd8_stream_failed = 0; /* Setup function pointers required by Ppmd8 decompressor. The * 'ppmd_read' function will feed new bytes to the decompressor, @@ -1869,6 +1877,14 @@ zip_read_data_zipx_ppmd(struct archive_read *a, const break; } + /* This field is set by ppmd_read() when there was no more data + * to be read. */ + if(zip->ppmd8_stream_failed) { + archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, + "Truncated PPMd8 file body"); + return (ARCHIVE_FATAL); + } + zip->uncompressed_buffer[consumed_bytes] = (uint8_t) sym; ++consumed_bytes; } while(consumed_bytes < zip->uncompressed_buffer_size); @@ -1902,7 +1918,7 @@ zipx_bzip2_init(struct archive_read *a, struct zip *zi { int r; - /* Deallocate already existing BZ2 decompression context if it + /* Deallocate already existing BZ2 decompression context if it * exists. */ if(zip->bzstream_valid) { BZ2_bzDecompressEnd(&zip->bzstream); @@ -1968,6 +1984,15 @@ zip_read_data_zipx_bzip2(struct archive_read *a, const } in_bytes = zipmin(zip->entry_bytes_remaining, bytes_avail); + if(in_bytes < 1) { + /* libbz2 doesn't complain when caller feeds avail_in == 0. It will + * actually return success in this case, which is undesirable. This is + * why we need to make this check manually. */ + + archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, + "Truncated bzip2 file body"); + return (ARCHIVE_FATAL); + } /* Setup buffer boundaries. */ zip->bzstream.next_in = (char*)(uintptr_t) compressed_buff; Modified: stable/11/contrib/libarchive/libarchive/archive_string.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/archive_string.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/archive_string.c Wed Apr 10 21:46:06 2019 (r346104) @@ -1512,8 +1512,10 @@ get_current_codepage(void) p = strrchr(locale, '.'); if (p == NULL) return (GetACP()); + if (strcmp(p+1, "utf8") == 0) + return CP_UTF8; cp = my_atoi(p+1); - if (cp <= 0) + if ((int)cp <= 0) return (GetACP()); return (cp); } @@ -4050,6 +4052,7 @@ archive_mstring_copy_utf8(struct archive_mstring *aes, { if (utf8 == NULL) { aes->aes_set = 0; + return (0); } aes->aes_set = AES_SET_UTF8; archive_string_empty(&(aes->aes_mbs)); @@ -4064,6 +4067,7 @@ archive_mstring_copy_wcs_len(struct archive_mstring *a { if (wcs == NULL) { aes->aes_set = 0; + return (0); } aes->aes_set = AES_SET_WCS; /* Only WCS form set. */ archive_string_empty(&(aes->aes_mbs)); Modified: stable/11/contrib/libarchive/libarchive/archive_write_disk_posix.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/archive_write_disk_posix.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/archive_write_disk_posix.c Wed Apr 10 21:46:06 2019 (r346104) @@ -2588,8 +2588,11 @@ check_symlinks_fsobj(char *path, int *a_eno, struct ar */ restore_pwd = open(".", O_RDONLY | O_BINARY | O_CLOEXEC); __archive_ensure_cloexec_flag(restore_pwd); - if (restore_pwd < 0) + if (restore_pwd < 0) { + fsobj_error(a_eno, a_estr, errno, + "Could not open ", path); return (ARCHIVE_FATAL); + } head = path; tail = path; last = 0; @@ -3128,12 +3131,14 @@ create_dir(struct archive_write_disk *a, char *path) static int set_ownership(struct archive_write_disk *a) { -#ifndef __CYGWIN__ -/* unfortunately, on win32 there is no 'root' user with uid 0, - so we just have to try the chown and see if it works */ - - /* If we know we can't change it, don't bother trying. */ - if (a->user_uid != 0 && a->user_uid != a->uid) { +#if !defined(__CYGWIN__) && !defined(__linux__) +/* + * On Linux, a process may have the CAP_CHOWN capability. + * On Windows there is no 'root' user with uid 0. + * Elsewhere we can skip calling chown if we are not root and the desired + * user id does not match the current user. + */ + if (a->user_uid != 0 && a->user_uid != a->uid) { archive_set_error(&a->archive, errno, "Can't set UID=%jd", (intmax_t)a->uid); return (ARCHIVE_WARN); @@ -3500,9 +3505,7 @@ set_fflags(struct archive_write_disk *a) struct fixup_entry *le; unsigned long set, clear; int r; - int critical_flags; mode_t mode = archive_entry_mode(a->entry); - /* * Make 'critical_flags' hold all file flags that can't be * immediately restored. For example, on BSD systems, @@ -3518,33 +3521,33 @@ set_fflags(struct archive_write_disk *a) * other programs that might try to muck with files as they're * being restored. */ - /* Hopefully, the compiler will optimize this mess into a constant. */ - critical_flags = 0; + const int critical_flags = 0 #ifdef SF_IMMUTABLE - critical_flags |= SF_IMMUTABLE; + | SF_IMMUTABLE #endif #ifdef UF_IMMUTABLE - critical_flags |= UF_IMMUTABLE; + | UF_IMMUTABLE #endif #ifdef SF_APPEND - critical_flags |= SF_APPEND; + | SF_APPEND #endif #ifdef UF_APPEND - critical_flags |= UF_APPEND; + | UF_APPEND #endif #if defined(FS_APPEND_FL) - critical_flags |= FS_APPEND_FL; + | FS_APPEND_FL #elif defined(EXT2_APPEND_FL) - critical_flags |= EXT2_APPEND_FL; + | EXT2_APPEND_FL #endif #if defined(FS_IMMUTABLE_FL) - critical_flags |= FS_IMMUTABLE_FL; + | FS_IMMUTABLE_FL #elif defined(EXT2_IMMUTABLE_FL) - critical_flags |= EXT2_IMMUTABLE_FL; + | EXT2_IMMUTABLE_FL #endif #ifdef FS_JOURNAL_DATA_FL - critical_flags |= FS_JOURNAL_DATA_FL; + | FS_JOURNAL_DATA_FL #endif + ; if (a->todo & TODO_FFLAGS) { archive_entry_fflags(a->entry, &set, &clear); @@ -3575,29 +3578,27 @@ set_fflags(struct archive_write_disk *a) static int clear_nochange_fflags(struct archive_write_disk *a) { - int nochange_flags; mode_t mode = archive_entry_mode(a->entry); - - /* Hopefully, the compiler will optimize this mess into a constant. */ - nochange_flags = 0; + const int nochange_flags = 0 #ifdef SF_IMMUTABLE - nochange_flags |= SF_IMMUTABLE; + | SF_IMMUTABLE #endif #ifdef UF_IMMUTABLE - nochange_flags |= UF_IMMUTABLE; + | UF_IMMUTABLE #endif #ifdef SF_APPEND - nochange_flags |= SF_APPEND; + | SF_APPEND #endif #ifdef UF_APPEND - nochange_flags |= UF_APPEND; + | UF_APPEND #endif #ifdef EXT2_APPEND_FL - nochange_flags |= EXT2_APPEND_FL; + | EXT2_APPEND_FL #endif #ifdef EXT2_IMMUTABLE_FL - nochange_flags |= EXT2_IMMUTABLE_FL; + | EXT2_IMMUTABLE_FL #endif + ; return (set_fflags_platform(a, a->fd, a->name, mode, 0, nochange_flags)); @@ -3613,8 +3614,22 @@ set_fflags_platform(struct archive_write_disk *a, int mode_t mode, unsigned long set, unsigned long clear) { int r; - + const int sf_mask = 0 +#ifdef SF_APPEND + | SF_APPEND +#endif +#ifdef SF_ARCHIVED + | SF_ARCHIVED +#endif +#ifdef SF_IMMUTABLE + | SF_IMMUTABLE +#endif +#ifdef SF_NOUNLINK + | SF_NOUNLINK +#endif + ; (void)mode; /* UNUSED */ + if (set == 0 && clear == 0) return (ARCHIVE_OK); @@ -3629,6 +3644,12 @@ set_fflags_platform(struct archive_write_disk *a, int a->st.st_flags &= ~clear; a->st.st_flags |= set; + + /* Only super-user may change SF_* flags */ + + if (a->user_uid != 0) + a->st.st_flags &= ~sf_mask; + #ifdef HAVE_FCHFLAGS /* If platform has fchflags() and we were given an fd, use it. */ if (fd >= 0 && fchflags(fd, a->st.st_flags) == 0) @@ -3670,22 +3691,6 @@ set_fflags_platform(struct archive_write_disk *a, int int ret; int myfd = fd; int newflags, oldflags; - int sf_mask = 0; - - if (set == 0 && clear == 0) - return (ARCHIVE_OK); - /* Only regular files and dirs can have flags. */ - if (!S_ISREG(mode) && !S_ISDIR(mode)) - return (ARCHIVE_OK); - - /* If we weren't given an fd, open it ourselves. */ - if (myfd < 0) { - myfd = open(name, O_RDONLY | O_NONBLOCK | O_BINARY | O_CLOEXEC); - __archive_ensure_cloexec_flag(myfd); - } - if (myfd < 0) - return (ARCHIVE_OK); - /* * Linux has no define for the flags that are only settable by * the root user. This code may seem a little complex, but @@ -3693,19 +3698,36 @@ set_fflags_platform(struct archive_write_disk *a, int * defines. (?) The code below degrades reasonably gracefully * if sf_mask is incomplete. */ + const int sf_mask = 0 #if defined(FS_IMMUTABLE_FL) - sf_mask |= FS_IMMUTABLE_FL; + | FS_IMMUTABLE_FL #elif defined(EXT2_IMMUTABLE_FL) - sf_mask |= EXT2_IMMUTABLE_FL; + | EXT2_IMMUTABLE_FL #endif #if defined(FS_APPEND_FL) - sf_mask |= FS_APPEND_FL; + | FS_APPEND_FL #elif defined(EXT2_APPEND_FL) - sf_mask |= EXT2_APPEND_FL; + | EXT2_APPEND_FL #endif #if defined(FS_JOURNAL_DATA_FL) - sf_mask |= FS_JOURNAL_DATA_FL; + | FS_JOURNAL_DATA_FL #endif + ; + + if (set == 0 && clear == 0) + return (ARCHIVE_OK); + /* Only regular files and dirs can have flags. */ + if (!S_ISREG(mode) && !S_ISDIR(mode)) + return (ARCHIVE_OK); + + /* If we weren't given an fd, open it ourselves. */ + if (myfd < 0) { + myfd = open(name, O_RDONLY | O_NONBLOCK | O_BINARY | O_CLOEXEC); + __archive_ensure_cloexec_flag(myfd); + } + if (myfd < 0) + return (ARCHIVE_OK); + /* * XXX As above, this would be way simpler if we didn't have * to read the current flags from disk. XXX Modified: stable/11/contrib/libarchive/libarchive/archive_write_set_format_7zip.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/archive_write_set_format_7zip.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/archive_write_set_format_7zip.c Wed Apr 10 21:46:06 2019 (r346104) @@ -439,7 +439,8 @@ _7z_write_header(struct archive_write *a, struct archi r = file_new(a, entry, &file); if (r < ARCHIVE_WARN) { - file_free(file); + if (file != NULL) + file_free(file); return (r); } if (file->size == 0 && file->dir) { Modified: stable/11/contrib/libarchive/libarchive/test/test_entry.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/test/test_entry.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/test/test_entry.c Wed Apr 10 21:46:06 2019 (r346104) @@ -336,7 +336,7 @@ DEFINE_TEST(test_entry) /* Converting fflags bitmap to string is currently system-dependent. */ /* TODO: Make this system-independent. */ assertEqualString(archive_entry_fflags_text(e), - "uappnd,nouchg,nodump,noopaque,uunlnk"); + "uappnd,nouchg,nodump,noopaque,uunlnk,nosystem"); /* Test archive_entry_copy_fflags_text_w() */ archive_entry_copy_fflags_text_w(e, L" ,nouappnd, nouchg, dump,uunlnk"); archive_entry_fflags(e, &set, &clear); Modified: stable/11/contrib/libarchive/libarchive/test/test_read_format_rar5.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/test/test_read_format_rar5.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/test/test_read_format_rar5.c Wed Apr 10 21:46:06 2019 (r346104) @@ -96,7 +96,7 @@ int extract_one(struct archive* a, struct archive_entr int ret = 1; uint32_t computed_crc; - fsize = archive_entry_size(ae); + fsize = (la_ssize_t) archive_entry_size(ae); buf = malloc(fsize); if(buf == NULL) return 1; @@ -110,13 +110,13 @@ int extract_one(struct archive* a, struct archive_entr computed_crc = crc32(0, buf, fsize); assertEqualInt(computed_crc, crc); ret = 0; - + fn_exit: free(buf); return ret; } -DEFINE_TEST(test_read_format_rar5_stored) +DEFINE_TEST(test_read_format_rar5_stored) { const char helloworld_txt[] = "hello libarchive test suite!\n"; la_ssize_t file_size = sizeof(helloworld_txt) - 1; @@ -143,7 +143,7 @@ DEFINE_TEST(test_read_format_rar5_stored) DEFINE_TEST(test_read_format_rar5_compressed) { const int DATA_SIZE = 1200; - uint8_t buff[DATA_SIZE]; + uint8_t buff[1200]; PROLOGUE("test_read_format_rar5_compressed.rar"); @@ -161,7 +161,7 @@ DEFINE_TEST(test_read_format_rar5_compressed) DEFINE_TEST(test_read_format_rar5_multiple_files) { const int DATA_SIZE = 4096; - uint8_t buff[DATA_SIZE]; + uint8_t buff[4096]; PROLOGUE("test_read_format_rar5_multiple_files.rar"); @@ -173,7 +173,7 @@ DEFINE_TEST(test_read_format_rar5_multiple_files) assertEqualInt(DATA_SIZE, archive_entry_size(ae)); assertA(DATA_SIZE == archive_read_data(a, buff, DATA_SIZE)); assertA(verify_data(buff, 1, DATA_SIZE)); - + assertA(0 == archive_read_next_header(a, &ae)); assertEqualString("test2.bin", archive_entry_pathname(ae)); assertEqualInt(DATA_SIZE, archive_entry_size(ae)); @@ -207,7 +207,7 @@ DEFINE_TEST(test_read_format_rar5_multiple_files) DEFINE_TEST(test_read_format_rar5_multiple_files_solid) { const int DATA_SIZE = 4096; - uint8_t buff[DATA_SIZE]; + uint8_t buff[4096]; PROLOGUE("test_read_format_rar5_multiple_files_solid.rar"); @@ -216,7 +216,7 @@ DEFINE_TEST(test_read_format_rar5_multiple_files_solid assertEqualInt(DATA_SIZE, archive_entry_size(ae)); assertA(DATA_SIZE == archive_read_data(a, buff, DATA_SIZE)); assertA(verify_data(buff, 1, DATA_SIZE)); - + assertA(0 == archive_read_next_header(a, &ae)); assertEqualString("test2.bin", archive_entry_pathname(ae)); assertEqualInt(DATA_SIZE, archive_entry_size(ae)); @@ -309,7 +309,7 @@ DEFINE_TEST(test_read_format_rar5_multiarchive_skip_al DEFINE_TEST(test_read_format_rar5_blake2) { const la_ssize_t proper_size = 814; - uint8_t buf[proper_size]; + uint8_t buf[814]; PROLOGUE("test_read_format_rar5_blake2.rar"); assertA(0 == archive_read_next_header(a, &ae)); @@ -334,7 +334,7 @@ DEFINE_TEST(test_read_format_rar5_arm_filter) * test. */ const la_ssize_t proper_size = 90808; - uint8_t buf[proper_size]; + uint8_t buf[90808]; PROLOGUE("test_read_format_rar5_arm.rar"); assertA(0 == archive_read_next_header(a, &ae)); @@ -598,7 +598,7 @@ DEFINE_TEST(test_read_format_rar5_multiarchive_solid_s EPILOGUE(); } -DEFINE_TEST(test_read_format_rar5_solid_skip_all) +DEFINE_TEST(test_read_format_rar5_solid_skip_all) { const char* reffile = "test_read_format_rar5_solid.rar"; @@ -623,7 +623,7 @@ DEFINE_TEST(test_read_format_rar5_solid_skip_all) EPILOGUE(); } -DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_first) +DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_first) { const char* reffile = "test_read_format_rar5_solid.rar"; @@ -649,7 +649,7 @@ DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_f EPILOGUE(); } -DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_second) +DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_second) { const char* reffile = "test_read_format_rar5_solid.rar"; Modified: stable/11/contrib/libarchive/libarchive/test/test_read_format_xar.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/test/test_read_format_xar.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/test/test_read_format_xar.c Wed Apr 10 21:46:06 2019 (r346104) @@ -799,7 +799,7 @@ static void verify(unsigned char *d, size_t s, static void verifyB(unsigned char *d, size_t s) { struct archive* a; struct archive_entry *entry = NULL; - la_int64_t buf_size; + size_t buf_size; unsigned char *buf; assert((a = archive_read_new()) != NULL); @@ -826,20 +826,20 @@ static void verifyB(unsigned char *d, size_t s) { // f1, content "onetwothree\n", size 12 bytes assertA(0 == archive_read_next_header(a, &entry)); - buf_size = archive_entry_size(entry); + buf_size = (size_t) archive_entry_size(entry); assertA(buf_size == 12); buf = (unsigned char*) malloc(buf_size); assertA(NULL != buf); - assertA(buf_size == archive_read_data(a, buf, buf_size)); + assertA(buf_size == (size_t) archive_read_data(a, buf, buf_size)); free(buf); // f2, content "fourfivesix\n", size 12 bytes assertA(0 == archive_read_next_header(a, &entry)); - buf_size = archive_entry_size(entry); + buf_size = (size_t) archive_entry_size(entry); assertA(buf_size == 12); buf = (unsigned char*) malloc(buf_size); assertA(NULL != buf); - assertA(buf_size == archive_read_data(a, buf, buf_size)); + assertA(buf_size == (size_t) archive_read_data(a, buf, buf_size)); free(buf); assertEqualInt(ARCHIVE_OK, archive_read_free(a)); Modified: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip.c ============================================================================== --- stable/11/contrib/libarchive/libarchive/test/test_read_format_zip.c Wed Apr 10 21:45:23 2019 (r346103) +++ stable/11/contrib/libarchive/libarchive/test/test_read_format_zip.c Wed Apr 10 21:46:06 2019 (r346104) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Wed Apr 10 21:46:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AFD86156E7B5; Wed, 10 Apr 2019 21:46:32 +0000 (UTC) (envelope-from mm@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 0683B8D3B1; Wed, 10 Apr 2019 21:46:31 +0000 (UTC) (envelope-from mm@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 D25FE8B4; Wed, 10 Apr 2019 21:46:30 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3ALkUtu089534; Wed, 10 Apr 2019 21:46:30 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3ALkS77089522; Wed, 10 Apr 2019 21:46:28 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201904102146.x3ALkS77089522@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Wed, 10 Apr 2019 21:46:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r346105 - in stable/10: contrib/libarchive/libarchive contrib/libarchive/libarchive/test lib/libarchive/tests X-SVN-Group: stable-10 X-SVN-Commit-Author: mm X-SVN-Commit-Paths: in stable/10: contrib/libarchive/libarchive contrib/libarchive/libarchive/test lib/libarchive/tests X-SVN-Commit-Revision: 346105 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0683B8D3B1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.92 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.92)[-0.923,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 21:46:33 -0000 Author: mm Date: Wed Apr 10 21:46:28 2019 New Revision: 346105 URL: https://svnweb.freebsd.org/changeset/base/346105 Log: MFC r345497: Sync libarchive with vendor. Relevant vendor changes: PR #1153: fixed 2 bugs in ZIP reader [1] PR #1143: ensure archive_read_disk_entry_from_file() uses ARCHIVE_READ_DISK Changes to file flags code, support more file flags on FreeBSD: UF_OFFLINE, UF_READONLY, UF_SPARSE, UF_REPARSE, UF_SYSTEM UF_ARCHIVE is not supported by intention (yet) PR: 236300 [1] Added: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_bz2_hang.zip.uu - copied unchanged from r345497, head/contrib/libarchive/libarchive/test/test_read_format_zip_bz2_hang.zip.uu stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_1.zipx.uu - copied unchanged from r345497, head/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_1.zipx.uu stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_2.zipx.uu - copied unchanged from r345497, head/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_crash_2.zipx.uu Modified: stable/10/contrib/libarchive/libarchive/archive_blake2sp_ref.c stable/10/contrib/libarchive/libarchive/archive_entry.c stable/10/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c stable/10/contrib/libarchive/libarchive/archive_read_support_format_rar5.c stable/10/contrib/libarchive/libarchive/archive_read_support_format_zip.c stable/10/contrib/libarchive/libarchive/archive_string.c stable/10/contrib/libarchive/libarchive/archive_write_disk_posix.c stable/10/contrib/libarchive/libarchive/archive_write_set_format_7zip.c stable/10/contrib/libarchive/libarchive/test/test_entry.c stable/10/contrib/libarchive/libarchive/test/test_read_format_rar5.c stable/10/contrib/libarchive/libarchive/test/test_read_format_xar.c stable/10/contrib/libarchive/libarchive/test/test_read_format_zip.c stable/10/lib/libarchive/tests/Makefile Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/libarchive/libarchive/archive_blake2sp_ref.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/archive_blake2sp_ref.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/archive_blake2sp_ref.c Wed Apr 10 21:46:28 2019 (r346105) @@ -89,7 +89,7 @@ int blake2sp_init( blake2sp_state *S, size_t outlen ) return -1; for( i = 0; i < PARALLELISM_DEGREE; ++i ) - if( blake2sp_init_leaf( S->S[i], outlen, 0, i ) < 0 ) return -1; + if( blake2sp_init_leaf( S->S[i], outlen, 0, (uint32_t)i ) < 0 ) return -1; S->R->last_node = 1; S->S[PARALLELISM_DEGREE - 1]->last_node = 1; @@ -112,7 +112,7 @@ int blake2sp_init_key( blake2sp_state *S, size_t outle return -1; for( i = 0; i < PARALLELISM_DEGREE; ++i ) - if( blake2sp_init_leaf( S->S[i], outlen, keylen, i ) < 0 ) return -1; + if( blake2sp_init_leaf( S->S[i], outlen, keylen, (uint32_t)i ) < 0 ) return -1; S->R->last_node = 1; S->S[PARALLELISM_DEGREE - 1]->last_node = 1; @@ -230,7 +230,7 @@ int blake2sp( void *out, size_t outlen, const void *in if( keylen > BLAKE2S_KEYBYTES ) return -1; for( i = 0; i < PARALLELISM_DEGREE; ++i ) - if( blake2sp_init_leaf( S[i], outlen, keylen, i ) < 0 ) return -1; + if( blake2sp_init_leaf( S[i], outlen, keylen, (uint32_t)i ) < 0 ) return -1; S[PARALLELISM_DEGREE - 1]->last_node = 1; /* mark last node */ Modified: stable/10/contrib/libarchive/libarchive/archive_entry.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/archive_entry.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/archive_entry.c Wed Apr 10 21:46:28 2019 (r346105) @@ -1632,6 +1632,51 @@ _archive_entry_acl_text_l(struct archive_entry *entry, * SUCH DAMAGE. */ +/* + * Supported file flags on FreeBSD and Mac OS: + * sappnd,sappend SF_APPEND + * arch,archived SF_ARCHIVED + * schg,schange,simmutable SF_IMMUTABLE + * sunlnk,sunlink SF_NOUNLINK (FreeBSD only) + * uappnd,uappend UF_APPEND + * compressed UF_COMPRESSED (Mac OS only) + * hidden,uhidden UF_HIDDEN + * uchg,uchange,uimmutable UF_IMMUTABLE + * nodump UF_NODUMP + * uunlnk,uunlink UF_NOUNLINK (FreeBSD only) + * offline,uoffline UF_OFFLINE (FreeBSD only) + * opaque UF_OPAQUE + * rdonly,urdonly,readonly UF_READONLY (FreeBSD only) + * reparse,ureparse UF_REPARSE (FreeBSD only) + * sparse,usparse UF_SPARSE (FreeBSD only) + * system,usystem UF_SYSTEM (FreeBSD only) + * + * See chflags(2) for more information + * + * Supported file attributes on Linux: + * a append only FS_APPEND_FL sappnd + * A no atime updates FS_NOATIME_FL atime + * c compress FS_COMPR_FL compress + * C no copy on write FS_NOCOW_FL cow + * d no dump FS_NODUMP_FL dump + * D synchronous directory updates FS_DIRSYNC_FL dirsync + * i immutable FS_IMMUTABLE_FL schg + * j data journalling FS_JOURNAL_DATA_FL journal + * P project hierarchy FS_PROJINHERIT_FL projinherit + * s secure deletion FS_SECRM_FL securedeletion + * S synchronous updates FS_SYNC_FL sync + * t no tail-merging FS_NOTAIL_FL tail + * T top of directory hierarchy FS_TOPDIR_FL topdir + * u undeletable FS_UNRM_FL undel + * + * See ioctl_iflags(2) for more information + * + * Equivalent file flags supported on FreeBSD / Mac OS and Linux: + * SF_APPEND FS_APPEND_FL sappnd + * SF_IMMUTABLE FS_IMMUTABLE_FL schg + * UF_NODUMP FS_NODUMP_FL nodump + */ + static const struct flag { const char *name; const wchar_t *wname; @@ -1640,190 +1685,149 @@ static const struct flag { } flags[] = { /* Preferred (shorter) names per flag first, all prefixed by "no" */ #ifdef SF_APPEND - { "nosappnd", L"nosappnd", SF_APPEND, 0 }, - { "nosappend", L"nosappend", SF_APPEND, 0 }, + { "nosappnd", L"nosappnd", SF_APPEND, 0}, + { "nosappend", L"nosappend", SF_APPEND, 0}, #endif #if defined(FS_APPEND_FL) /* 'a' */ - { "nosappnd", L"nosappnd", FS_APPEND_FL, 0 }, - { "nosappend", L"nosappend", FS_APPEND_FL, 0 }, + { "nosappnd", L"nosappnd", FS_APPEND_FL, 0}, + { "nosappend", L"nosappend", FS_APPEND_FL, 0}, #elif defined(EXT2_APPEND_FL) /* 'a' */ - { "nosappnd", L"nosappnd", EXT2_APPEND_FL, 0 }, - { "nosappend", L"nosappend", EXT2_APPEND_FL, 0 }, + { "nosappnd", L"nosappnd", EXT2_APPEND_FL, 0}, + { "nosappend", L"nosappend", EXT2_APPEND_FL, 0}, #endif #ifdef SF_ARCHIVED - { "noarch", L"noarch", SF_ARCHIVED, 0 }, - { "noarchived", L"noarchived", SF_ARCHIVED, 0 }, + { "noarch", L"noarch", SF_ARCHIVED, 0}, + { "noarchived", L"noarchived", SF_ARCHIVED, 0}, #endif #ifdef SF_IMMUTABLE - { "noschg", L"noschg", SF_IMMUTABLE, 0 }, - { "noschange", L"noschange", SF_IMMUTABLE, 0 }, - { "nosimmutable", L"nosimmutable", SF_IMMUTABLE, 0 }, + { "noschg", L"noschg", SF_IMMUTABLE, 0}, + { "noschange", L"noschange", SF_IMMUTABLE, 0}, + { "nosimmutable", L"nosimmutable", SF_IMMUTABLE, 0}, #endif #if defined(FS_IMMUTABLE_FL) /* 'i' */ - { "noschg", L"noschg", FS_IMMUTABLE_FL, 0 }, - { "noschange", L"noschange", FS_IMMUTABLE_FL, 0 }, - { "nosimmutable", L"nosimmutable", FS_IMMUTABLE_FL, 0 }, + { "noschg", L"noschg", FS_IMMUTABLE_FL, 0}, + { "noschange", L"noschange", FS_IMMUTABLE_FL, 0}, + { "nosimmutable", L"nosimmutable", FS_IMMUTABLE_FL, 0}, #elif defined(EXT2_IMMUTABLE_FL) /* 'i' */ - { "noschg", L"noschg", EXT2_IMMUTABLE_FL, 0 }, - { "noschange", L"noschange", EXT2_IMMUTABLE_FL, 0 }, - { "nosimmutable", L"nosimmutable", EXT2_IMMUTABLE_FL, 0 }, + { "noschg", L"noschg", EXT2_IMMUTABLE_FL, 0}, + { "noschange", L"noschange", EXT2_IMMUTABLE_FL, 0}, + { "nosimmutable", L"nosimmutable", EXT2_IMMUTABLE_FL, 0}, #endif #ifdef SF_NOUNLINK - { "nosunlnk", L"nosunlnk", SF_NOUNLINK, 0 }, - { "nosunlink", L"nosunlink", SF_NOUNLINK, 0 }, + { "nosunlnk", L"nosunlnk", SF_NOUNLINK, 0}, + { "nosunlink", L"nosunlink", SF_NOUNLINK, 0}, #endif -#ifdef SF_SNAPSHOT - { "nosnapshot", L"nosnapshot", SF_SNAPSHOT, 0 }, -#endif #ifdef UF_APPEND - { "nouappnd", L"nouappnd", UF_APPEND, 0 }, - { "nouappend", L"nouappend", UF_APPEND, 0 }, + { "nouappnd", L"nouappnd", UF_APPEND, 0}, + { "nouappend", L"nouappend", UF_APPEND, 0}, #endif #ifdef UF_IMMUTABLE - { "nouchg", L"nouchg", UF_IMMUTABLE, 0 }, - { "nouchange", L"nouchange", UF_IMMUTABLE, 0 }, - { "nouimmutable", L"nouimmutable", UF_IMMUTABLE, 0 }, + { "nouchg", L"nouchg", UF_IMMUTABLE, 0}, + { "nouchange", L"nouchange", UF_IMMUTABLE, 0}, + { "nouimmutable", L"nouimmutable", UF_IMMUTABLE, 0}, #endif #ifdef UF_NODUMP { "nodump", L"nodump", 0, UF_NODUMP}, #endif #if defined(FS_NODUMP_FL) /* 'd' */ { "nodump", L"nodump", 0, FS_NODUMP_FL}, -#elif defined(EXT2_NODUMP_FL) /* 'd' */ +#elif defined(EXT2_NODUMP_FL) { "nodump", L"nodump", 0, EXT2_NODUMP_FL}, #endif #ifdef UF_OPAQUE - { "noopaque", L"noopaque", UF_OPAQUE, 0 }, + { "noopaque", L"noopaque", UF_OPAQUE, 0}, #endif #ifdef UF_NOUNLINK - { "nouunlnk", L"nouunlnk", UF_NOUNLINK, 0 }, - { "nouunlink", L"nouunlink", UF_NOUNLINK, 0 }, + { "nouunlnk", L"nouunlnk", UF_NOUNLINK, 0}, + { "nouunlink", L"nouunlink", UF_NOUNLINK, 0}, #endif #ifdef UF_COMPRESSED - { "nocompressed",L"nocompressed", UF_COMPRESSED, 0 }, + /* Mac OS */ + { "nocompressed", L"nocompressed", UF_COMPRESSED, 0}, #endif #ifdef UF_HIDDEN - { "nohidden", L"nohidden", UF_HIDDEN, 0 }, + { "nohidden", L"nohidden", UF_HIDDEN, 0}, + { "nouhidden", L"nouhidden", UF_HIDDEN, 0}, #endif -#if defined(FS_UNRM_FL) - { "nouunlink", L"nouunlink", FS_UNRM_FL, 0}, -#elif defined(EXT2_UNRM_FL) - { "nouunlink", L"nouunlink", EXT2_UNRM_FL, 0}, +#ifdef UF_OFFLINE + { "nooffline", L"nooffline", UF_OFFLINE, 0}, + { "nouoffline", L"nouoffline", UF_OFFLINE, 0}, #endif - -#if defined(FS_BTREE_FL) - { "nobtree", L"nobtree", FS_BTREE_FL, 0 }, -#elif defined(EXT2_BTREE_FL) - { "nobtree", L"nobtree", EXT2_BTREE_FL, 0 }, +#ifdef UF_READONLY + { "nordonly", L"nordonly", UF_READONLY, 0}, + { "nourdonly", L"nourdonly", UF_READONLY, 0}, + { "noreadonly", L"noreadonly", UF_READONLY, 0}, #endif - -#if defined(FS_ECOMPR_FL) - { "nocomperr", L"nocomperr", FS_ECOMPR_FL, 0 }, -#elif defined(EXT2_ECOMPR_FL) - { "nocomperr", L"nocomperr", EXT2_ECOMPR_FL, 0 }, +#ifdef UF_SPARSE + { "nosparse", L"nosparse", UF_SPARSE, 0}, + { "nousparse", L"nousparse", UF_SPARSE, 0}, #endif - -#if defined(FS_COMPR_FL) /* 'c' */ - { "nocompress", L"nocompress", FS_COMPR_FL, 0 }, -#elif defined(EXT2_COMPR_FL) /* 'c' */ - { "nocompress", L"nocompress", EXT2_COMPR_FL, 0 }, +#ifdef UF_REPARSE + { "noreparse", L"noreparse", UF_REPARSE, 0}, + { "noureparse", L"noureparse", UF_REPARSE, 0}, #endif - -#if defined(FS_NOATIME_FL) /* 'A' */ - { "noatime", L"noatime", 0, FS_NOATIME_FL}, -#elif defined(EXT2_NOATIME_FL) /* 'A' */ - { "noatime", L"noatime", 0, EXT2_NOATIME_FL}, +#ifdef UF_SYSTEM + { "nosystem", L"nosystem", UF_SYSTEM, 0}, + { "nousystem", L"nousystem", UF_SYSTEM, 0}, #endif +#if defined(FS_UNRM_FL) /* 'u' */ + { "noundel", L"noundel", FS_UNRM_FL, 0}, +#elif defined(EXT2_UNRM_FL) + { "noundel", L"noundel", EXT2_UNRM_FL, 0}, +#endif -#if defined(FS_DIRTY_FL) - { "nocompdirty",L"nocompdirty", FS_DIRTY_FL, 0}, -#elif defined(EXT2_DIRTY_FL) - { "nocompdirty",L"nocompdirty", EXT2_DIRTY_FL, 0}, +#if defined(FS_COMPR_FL) /* 'c' */ + { "nocompress", L"nocompress", FS_COMPR_FL, 0}, +#elif defined(EXT2_COMPR_FL) + { "nocompress", L"nocompress", EXT2_COMPR_FL, 0}, #endif -#if defined(FS_COMPRBLK_FL) -#if defined(FS_NOCOMPR_FL) - { "nocomprblk", L"nocomprblk", FS_COMPRBLK_FL, FS_NOCOMPR_FL}, -#else - { "nocomprblk", L"nocomprblk", FS_COMPRBLK_FL, 0}, +#if defined(FS_NOATIME_FL) /* 'A' */ + { "noatime", L"noatime", 0, FS_NOATIME_FL}, +#elif defined(EXT2_NOATIME_FL) + { "noatime", L"noatime", 0, EXT2_NOATIME_FL}, #endif -#elif defined(EXT2_COMPRBLK_FL) -#if defined(EXT2_NOCOMPR_FL) - { "nocomprblk", L"nocomprblk", EXT2_COMPRBLK_FL, EXT2_NOCOMPR_FL}, -#else - { "nocomprblk", L"nocomprblk", EXT2_COMPRBLK_FL, 0}, -#endif -#endif -#if defined(FS_DIRSYNC_FL) - { "nodirsync", L"nodirsync", FS_DIRSYNC_FL, 0}, +#if defined(FS_DIRSYNC_FL) /* 'D' */ + { "nodirsync", L"nodirsync", FS_DIRSYNC_FL, 0}, #elif defined(EXT2_DIRSYNC_FL) - { "nodirsync", L"nodirsync", EXT2_DIRSYNC_FL, 0}, + { "nodirsync", L"nodirsync", EXT2_DIRSYNC_FL, 0}, #endif -#if defined(FS_INDEX_FL) - { "nohashidx", L"nohashidx", FS_INDEX_FL, 0}, -#elif defined(EXT2_INDEX_FL) - { "nohashidx", L"nohashidx", EXT2_INDEX_FL, 0}, -#endif -#if defined(FS_IMAGIC_FL) - { "noimagic", L"noimagic", FS_IMAGIC_FL, 0}, -#elif defined(EXT2_IMAGIC_FL) - { "noimagic", L"noimagic", EXT2_IMAGIC_FL, 0}, -#endif -#if defined(FS_JOURNAL_DATA_FL) - { "nojournal", L"nojournal", FS_JOURNAL_DATA_FL, 0}, +#if defined(FS_JOURNAL_DATA_FL) /* 'j' */ + { "nojournal-data",L"nojournal-data", FS_JOURNAL_DATA_FL, 0}, + { "nojournal", L"nojournal", FS_JOURNAL_DATA_FL, 0}, #elif defined(EXT3_JOURNAL_DATA_FL) - { "nojournal", L"nojournal", EXT3_JOURNAL_DATA_FL, 0}, + { "nojournal-data",L"nojournal-data", EXT3_JOURNAL_DATA_FL, 0}, + { "nojournal", L"nojournal", EXT3_JOURNAL_DATA_FL, 0}, #endif -#if defined(FS_SECRM_FL) - { "nosecuredeletion",L"nosecuredeletion",FS_SECRM_FL, 0}, +#if defined(FS_SECRM_FL) /* 's' */ + { "nosecdel", L"nosecdel", FS_SECRM_FL, 0}, + { "nosecuredeletion",L"nosecuredeletion",FS_SECRM_FL, 0}, #elif defined(EXT2_SECRM_FL) - { "nosecuredeletion",L"nosecuredeletion",EXT2_SECRM_FL, 0}, + { "nosecdel", L"nosecdel", EXT2_SECRM_FL, 0}, + { "nosecuredeletion",L"nosecuredeletion",EXT2_SECRM_FL, 0}, #endif -#if defined(FS_SYNC_FL) - { "nosync", L"nosync", FS_SYNC_FL, 0}, +#if defined(FS_SYNC_FL) /* 'S' */ + { "nosync", L"nosync", FS_SYNC_FL, 0}, #elif defined(EXT2_SYNC_FL) - { "nosync", L"nosync", EXT2_SYNC_FL, 0}, + { "nosync", L"nosync", EXT2_SYNC_FL, 0}, #endif -#if defined(FS_NOTAIL_FL) - { "notail", L"notail", 0, FS_NOTAIL_FL}, +#if defined(FS_NOTAIL_FL) /* 't' */ + { "notail", L"notail", 0, FS_NOTAIL_FL}, #elif defined(EXT2_NOTAIL_FL) - { "notail", L"notail", 0, EXT2_NOTAIL_FL}, + { "notail", L"notail", 0, EXT2_NOTAIL_FL}, #endif -#if defined(FS_TOPDIR_FL) - { "notopdir", L"notopdir", FS_TOPDIR_FL, 0}, +#if defined(FS_TOPDIR_FL) /* 'T' */ + { "notopdir", L"notopdir", FS_TOPDIR_FL, 0}, #elif defined(EXT2_TOPDIR_FL) - { "notopdir", L"notopdir", EXT2_TOPDIR_FL, 0}, + { "notopdir", L"notopdir", EXT2_TOPDIR_FL, 0}, #endif -#ifdef FS_ENCRYPT_FL - { "noencrypt", L"noencrypt", FS_ENCRYPT_FL, 0}, +#ifdef FS_NOCOW_FL /* 'C' */ + { "nocow", L"nocow", 0, FS_NOCOW_FL}, #endif -#ifdef FS_HUGE_FILE_FL - { "nohugefile", L"nohugefile", FS_HUGE_FILE_FL, 0}, +#ifdef FS_PROJINHERIT_FL /* 'P' */ + { "noprojinherit",L"noprojinherit", FS_PROJINHERIT_FL, 0}, #endif -#ifdef FS_EXTENT_FL - { "noextent", L"noextent", FS_EXTENT_FL, 0}, -#endif -#ifdef FS_EA_INODE_FL - { "noeainode", L"noeainode", FS_EA_INODE_FL, 0}, -#endif -#ifdef FS_EOFBLOCKS_FL - { "noeofblocks",L"noeofblocks", FS_EOFBLOCKS_FL, 0}, -#endif -#ifdef FS_NOCOW_FL - { "nocow", L"nocow", FS_NOCOW_FL, 0}, -#endif -#ifdef FS_INLINE_DATA_FL - { "noinlinedata",L"noinlinedata", FS_INLINE_DATA_FL, 0}, -#endif -#ifdef FS_PROJINHERIT_FL - { "noprojinherit",L"noprojinherit", FS_PROJINHERIT_FL, 0}, -#endif -#if defined(FS_RESERVED_FL) - { "noreserved", L"noreserved", FS_RESERVED_FL, 0}, -#elif defined(EXT2_RESERVED_FL) - { "noreserved", L"noreserved", EXT2_RESERVED_FL, 0}, -#endif - { NULL, NULL, 0, 0 } + { NULL, NULL, 0, 0} }; /* Modified: stable/10/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c Wed Apr 10 21:46:28 2019 (r346105) @@ -163,6 +163,9 @@ archive_read_disk_entry_from_file(struct archive *_a, int initial_fd = fd; int r, r1; + archive_check_magic(_a, ARCHIVE_READ_DISK_MAGIC, ARCHIVE_STATE_ANY, + "archive_read_disk_entry_from_file"); + archive_clear_error(_a); path = archive_entry_sourcepath(entry); if (path == NULL) Modified: stable/10/contrib/libarchive/libarchive/archive_read_support_format_rar5.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/archive_read_support_format_rar5.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/archive_read_support_format_rar5.c Wed Apr 10 21:46:28 2019 (r346105) @@ -507,15 +507,16 @@ static int run_e8e9_filter(struct rar5* rar, struct fi const uint32_t file_size = 0x1000000; ssize_t i; + const int mask = (int)rar->cstate.window_mask; circular_memcpy(rar->cstate.filtered_buf, rar->cstate.window_buf, - rar->cstate.window_mask, + mask, rar->cstate.solid_offset + flt->block_start, rar->cstate.solid_offset + flt->block_start + flt->block_length); for(i = 0; i < flt->block_length - 4;) { uint8_t b = rar->cstate.window_buf[(rar->cstate.solid_offset + - flt->block_start + i++) & rar->cstate.window_mask]; + flt->block_start + i++) & mask]; /* 0xE8 = x86's call (function call) * 0xE9 = x86's jmp (unconditional jump) */ @@ -524,17 +525,17 @@ static int run_e8e9_filter(struct rar5* rar, struct fi uint32_t addr; uint32_t offset = (i + flt->block_start) % file_size; - addr = read_filter_data(rar, (rar->cstate.solid_offset + + addr = read_filter_data(rar, (uint32_t)(rar->cstate.solid_offset + flt->block_start + i) & rar->cstate.window_mask); if(addr & 0x80000000) { if(((addr + offset) & 0x80000000) == 0) { - write_filter_data(rar, i, addr + file_size); + write_filter_data(rar, (uint32_t)i, addr + file_size); } } else { if((addr - file_size) & 0x80000000) { uint32_t naddr = addr - offset; - write_filter_data(rar, i, naddr); + write_filter_data(rar, (uint32_t)i, naddr); } } @@ -548,11 +549,11 @@ static int run_e8e9_filter(struct rar5* rar, struct fi static int run_arm_filter(struct rar5* rar, struct filter_info* flt) { ssize_t i = 0; uint32_t offset; - const int mask = rar->cstate.window_mask; + const int mask = (int)rar->cstate.window_mask; circular_memcpy(rar->cstate.filtered_buf, rar->cstate.window_buf, - rar->cstate.window_mask, + mask, rar->cstate.solid_offset + flt->block_start, rar->cstate.solid_offset + flt->block_start + flt->block_length); @@ -567,7 +568,7 @@ static int run_arm_filter(struct rar5* rar, struct fil offset -= (uint32_t) ((i + flt->block_start) / 4); offset = (offset & 0x00ffffff) | 0xeb000000; - write_filter_data(rar, i, offset); + write_filter_data(rar, (uint32_t)i, offset); } } @@ -633,7 +634,7 @@ static int run_filter(struct archive_read* a, struct f static void push_data(struct archive_read* a, struct rar5* rar, const uint8_t* buf, int64_t idx_begin, int64_t idx_end) { - const int wmask = rar->cstate.window_mask; + const int wmask = (int)rar->cstate.window_mask; const ssize_t solid_write_ptr = (rar->cstate.solid_offset + rar->cstate.last_write_ptr) & wmask; @@ -1703,8 +1704,8 @@ static int process_base_block(struct archive_read* a, rar->generic.split_after = (header_flags & HFL_SPLIT_AFTER) > 0; rar->generic.split_before = (header_flags & HFL_SPLIT_BEFORE) > 0; - rar->generic.size = hdr_size; - rar->generic.last_header_id = header_id; + rar->generic.size = (int)hdr_size; + rar->generic.last_header_id = (int)header_id; rar->main.endarc = 0; /* Those are possible header ids in RARv5. */ @@ -1920,7 +1921,7 @@ static int create_decode_tables(uint8_t* bit_length, } } - quick_data_size = 1 << table->quick_bits; + quick_data_size = (int64_t)1 << table->quick_bits; cur_len = 1; for(code = 0; code < quick_data_size; code++) { int bit_field = code << (16 - table->quick_bits); @@ -2351,7 +2352,7 @@ static int decode_code_length(struct rar5* rar, const static int copy_string(struct archive_read* a, int len, int dist) { struct rar5* rar = get_context(a); - const int cmask = rar->cstate.window_mask; + const int cmask = (int)rar->cstate.window_mask; const int64_t write_ptr = rar->cstate.write_ptr + rar->cstate.solid_offset; int i; @@ -2377,7 +2378,7 @@ static int do_uncompress_block(struct archive_read* a, uint16_t num; int ret; - const int cmask = rar->cstate.window_mask; + const int cmask = (int)rar->cstate.window_mask; const struct compressed_block_header* hdr = &rar->last_block_hdr; const uint8_t bit_size = 1 + hdr->block_flags.bit_size; Modified: stable/10/contrib/libarchive/libarchive/archive_read_support_format_zip.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/archive_read_support_format_zip.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/archive_read_support_format_zip.c Wed Apr 10 21:46:28 2019 (r346105) @@ -194,6 +194,7 @@ struct zip { ssize_t zipx_ppmd_read_compressed; CPpmd8 ppmd8; char ppmd8_valid; + char ppmd8_stream_failed; struct archive_string_conv *sconv; struct archive_string_conv *sconv_default; @@ -254,9 +255,15 @@ ppmd_read(void* p) { /* Get the handle to current decompression context. */ struct archive_read *a = ((IByteIn*)p)->a; struct zip *zip = (struct zip*) a->format->data; + ssize_t bytes_avail = 0; /* Fetch next byte. */ - const uint8_t* data = __archive_read_ahead(a, 1, NULL); + const uint8_t* data = __archive_read_ahead(a, 1, &bytes_avail); + if(bytes_avail < 1) { + zip->ppmd8_stream_failed = 1; + return 0; + } + __archive_read_consume(a, 1); /* Increment the counter. */ @@ -1750,6 +1757,7 @@ zipx_ppmd8_init(struct archive_read *a, struct zip *zi /* Create a new decompression context. */ __archive_ppmd8_functions.Ppmd8_Construct(&zip->ppmd8); + zip->ppmd8_stream_failed = 0; /* Setup function pointers required by Ppmd8 decompressor. The * 'ppmd_read' function will feed new bytes to the decompressor, @@ -1869,6 +1877,14 @@ zip_read_data_zipx_ppmd(struct archive_read *a, const break; } + /* This field is set by ppmd_read() when there was no more data + * to be read. */ + if(zip->ppmd8_stream_failed) { + archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, + "Truncated PPMd8 file body"); + return (ARCHIVE_FATAL); + } + zip->uncompressed_buffer[consumed_bytes] = (uint8_t) sym; ++consumed_bytes; } while(consumed_bytes < zip->uncompressed_buffer_size); @@ -1902,7 +1918,7 @@ zipx_bzip2_init(struct archive_read *a, struct zip *zi { int r; - /* Deallocate already existing BZ2 decompression context if it + /* Deallocate already existing BZ2 decompression context if it * exists. */ if(zip->bzstream_valid) { BZ2_bzDecompressEnd(&zip->bzstream); @@ -1968,6 +1984,15 @@ zip_read_data_zipx_bzip2(struct archive_read *a, const } in_bytes = zipmin(zip->entry_bytes_remaining, bytes_avail); + if(in_bytes < 1) { + /* libbz2 doesn't complain when caller feeds avail_in == 0. It will + * actually return success in this case, which is undesirable. This is + * why we need to make this check manually. */ + + archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, + "Truncated bzip2 file body"); + return (ARCHIVE_FATAL); + } /* Setup buffer boundaries. */ zip->bzstream.next_in = (char*)(uintptr_t) compressed_buff; Modified: stable/10/contrib/libarchive/libarchive/archive_string.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/archive_string.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/archive_string.c Wed Apr 10 21:46:28 2019 (r346105) @@ -1512,8 +1512,10 @@ get_current_codepage(void) p = strrchr(locale, '.'); if (p == NULL) return (GetACP()); + if (strcmp(p+1, "utf8") == 0) + return CP_UTF8; cp = my_atoi(p+1); - if (cp <= 0) + if ((int)cp <= 0) return (GetACP()); return (cp); } @@ -4050,6 +4052,7 @@ archive_mstring_copy_utf8(struct archive_mstring *aes, { if (utf8 == NULL) { aes->aes_set = 0; + return (0); } aes->aes_set = AES_SET_UTF8; archive_string_empty(&(aes->aes_mbs)); @@ -4064,6 +4067,7 @@ archive_mstring_copy_wcs_len(struct archive_mstring *a { if (wcs == NULL) { aes->aes_set = 0; + return (0); } aes->aes_set = AES_SET_WCS; /* Only WCS form set. */ archive_string_empty(&(aes->aes_mbs)); Modified: stable/10/contrib/libarchive/libarchive/archive_write_disk_posix.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/archive_write_disk_posix.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/archive_write_disk_posix.c Wed Apr 10 21:46:28 2019 (r346105) @@ -2563,8 +2563,11 @@ check_symlinks_fsobj(char *path, int *a_eno, struct ar */ restore_pwd = open(".", O_RDONLY | O_BINARY | O_CLOEXEC); __archive_ensure_cloexec_flag(restore_pwd); - if (restore_pwd < 0) + if (restore_pwd < 0) { + fsobj_error(a_eno, a_estr, errno, + "Could not open ", path); return (ARCHIVE_FATAL); + } head = path; tail = path; last = 0; @@ -3103,12 +3106,14 @@ create_dir(struct archive_write_disk *a, char *path) static int set_ownership(struct archive_write_disk *a) { -#ifndef __CYGWIN__ -/* unfortunately, on win32 there is no 'root' user with uid 0, - so we just have to try the chown and see if it works */ - - /* If we know we can't change it, don't bother trying. */ - if (a->user_uid != 0 && a->user_uid != a->uid) { +#if !defined(__CYGWIN__) && !defined(__linux__) +/* + * On Linux, a process may have the CAP_CHOWN capability. + * On Windows there is no 'root' user with uid 0. + * Elsewhere we can skip calling chown if we are not root and the desired + * user id does not match the current user. + */ + if (a->user_uid != 0 && a->user_uid != a->uid) { archive_set_error(&a->archive, errno, "Can't set UID=%jd", (intmax_t)a->uid); return (ARCHIVE_WARN); @@ -3475,9 +3480,7 @@ set_fflags(struct archive_write_disk *a) struct fixup_entry *le; unsigned long set, clear; int r; - int critical_flags; mode_t mode = archive_entry_mode(a->entry); - /* * Make 'critical_flags' hold all file flags that can't be * immediately restored. For example, on BSD systems, @@ -3493,33 +3496,33 @@ set_fflags(struct archive_write_disk *a) * other programs that might try to muck with files as they're * being restored. */ - /* Hopefully, the compiler will optimize this mess into a constant. */ - critical_flags = 0; + const int critical_flags = 0 #ifdef SF_IMMUTABLE - critical_flags |= SF_IMMUTABLE; + | SF_IMMUTABLE #endif #ifdef UF_IMMUTABLE - critical_flags |= UF_IMMUTABLE; + | UF_IMMUTABLE #endif #ifdef SF_APPEND - critical_flags |= SF_APPEND; + | SF_APPEND #endif #ifdef UF_APPEND - critical_flags |= UF_APPEND; + | UF_APPEND #endif #if defined(FS_APPEND_FL) - critical_flags |= FS_APPEND_FL; + | FS_APPEND_FL #elif defined(EXT2_APPEND_FL) - critical_flags |= EXT2_APPEND_FL; + | EXT2_APPEND_FL #endif #if defined(FS_IMMUTABLE_FL) - critical_flags |= FS_IMMUTABLE_FL; + | FS_IMMUTABLE_FL #elif defined(EXT2_IMMUTABLE_FL) - critical_flags |= EXT2_IMMUTABLE_FL; + | EXT2_IMMUTABLE_FL #endif #ifdef FS_JOURNAL_DATA_FL - critical_flags |= FS_JOURNAL_DATA_FL; + | FS_JOURNAL_DATA_FL #endif + ; if (a->todo & TODO_FFLAGS) { archive_entry_fflags(a->entry, &set, &clear); @@ -3550,29 +3553,27 @@ set_fflags(struct archive_write_disk *a) static int clear_nochange_fflags(struct archive_write_disk *a) { - int nochange_flags; mode_t mode = archive_entry_mode(a->entry); - - /* Hopefully, the compiler will optimize this mess into a constant. */ - nochange_flags = 0; + const int nochange_flags = 0 #ifdef SF_IMMUTABLE - nochange_flags |= SF_IMMUTABLE; + | SF_IMMUTABLE #endif #ifdef UF_IMMUTABLE - nochange_flags |= UF_IMMUTABLE; + | UF_IMMUTABLE #endif #ifdef SF_APPEND - nochange_flags |= SF_APPEND; + | SF_APPEND #endif #ifdef UF_APPEND - nochange_flags |= UF_APPEND; + | UF_APPEND #endif #ifdef EXT2_APPEND_FL - nochange_flags |= EXT2_APPEND_FL; + | EXT2_APPEND_FL #endif #ifdef EXT2_IMMUTABLE_FL - nochange_flags |= EXT2_IMMUTABLE_FL; + | EXT2_IMMUTABLE_FL #endif + ; return (set_fflags_platform(a, a->fd, a->name, mode, 0, nochange_flags)); @@ -3588,8 +3589,22 @@ set_fflags_platform(struct archive_write_disk *a, int mode_t mode, unsigned long set, unsigned long clear) { int r; - + const int sf_mask = 0 +#ifdef SF_APPEND + | SF_APPEND +#endif +#ifdef SF_ARCHIVED + | SF_ARCHIVED +#endif +#ifdef SF_IMMUTABLE + | SF_IMMUTABLE +#endif +#ifdef SF_NOUNLINK + | SF_NOUNLINK +#endif + ; (void)mode; /* UNUSED */ + if (set == 0 && clear == 0) return (ARCHIVE_OK); @@ -3604,6 +3619,12 @@ set_fflags_platform(struct archive_write_disk *a, int a->st.st_flags &= ~clear; a->st.st_flags |= set; + + /* Only super-user may change SF_* flags */ + + if (a->user_uid != 0) + a->st.st_flags &= ~sf_mask; + #ifdef HAVE_FCHFLAGS /* If platform has fchflags() and we were given an fd, use it. */ if (fd >= 0 && fchflags(fd, a->st.st_flags) == 0) @@ -3645,22 +3666,6 @@ set_fflags_platform(struct archive_write_disk *a, int int ret; int myfd = fd; int newflags, oldflags; - int sf_mask = 0; - - if (set == 0 && clear == 0) - return (ARCHIVE_OK); - /* Only regular files and dirs can have flags. */ - if (!S_ISREG(mode) && !S_ISDIR(mode)) - return (ARCHIVE_OK); - - /* If we weren't given an fd, open it ourselves. */ - if (myfd < 0) { - myfd = open(name, O_RDONLY | O_NONBLOCK | O_BINARY | O_CLOEXEC); - __archive_ensure_cloexec_flag(myfd); - } - if (myfd < 0) - return (ARCHIVE_OK); - /* * Linux has no define for the flags that are only settable by * the root user. This code may seem a little complex, but @@ -3668,19 +3673,36 @@ set_fflags_platform(struct archive_write_disk *a, int * defines. (?) The code below degrades reasonably gracefully * if sf_mask is incomplete. */ + const int sf_mask = 0 #if defined(FS_IMMUTABLE_FL) - sf_mask |= FS_IMMUTABLE_FL; + | FS_IMMUTABLE_FL #elif defined(EXT2_IMMUTABLE_FL) - sf_mask |= EXT2_IMMUTABLE_FL; + | EXT2_IMMUTABLE_FL #endif #if defined(FS_APPEND_FL) - sf_mask |= FS_APPEND_FL; + | FS_APPEND_FL #elif defined(EXT2_APPEND_FL) - sf_mask |= EXT2_APPEND_FL; + | EXT2_APPEND_FL #endif #if defined(FS_JOURNAL_DATA_FL) - sf_mask |= FS_JOURNAL_DATA_FL; + | FS_JOURNAL_DATA_FL #endif + ; + + if (set == 0 && clear == 0) + return (ARCHIVE_OK); + /* Only regular files and dirs can have flags. */ + if (!S_ISREG(mode) && !S_ISDIR(mode)) + return (ARCHIVE_OK); + + /* If we weren't given an fd, open it ourselves. */ + if (myfd < 0) { + myfd = open(name, O_RDONLY | O_NONBLOCK | O_BINARY | O_CLOEXEC); + __archive_ensure_cloexec_flag(myfd); + } + if (myfd < 0) + return (ARCHIVE_OK); + /* * XXX As above, this would be way simpler if we didn't have * to read the current flags from disk. XXX Modified: stable/10/contrib/libarchive/libarchive/archive_write_set_format_7zip.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/archive_write_set_format_7zip.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/archive_write_set_format_7zip.c Wed Apr 10 21:46:28 2019 (r346105) @@ -439,7 +439,8 @@ _7z_write_header(struct archive_write *a, struct archi r = file_new(a, entry, &file); if (r < ARCHIVE_WARN) { - file_free(file); + if (file != NULL) + file_free(file); return (r); } if (file->size == 0 && file->dir) { Modified: stable/10/contrib/libarchive/libarchive/test/test_entry.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/test/test_entry.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/test/test_entry.c Wed Apr 10 21:46:28 2019 (r346105) @@ -336,7 +336,7 @@ DEFINE_TEST(test_entry) /* Converting fflags bitmap to string is currently system-dependent. */ /* TODO: Make this system-independent. */ assertEqualString(archive_entry_fflags_text(e), - "uappnd,nouchg,nodump,noopaque,uunlnk"); + "uappnd,nouchg,nodump,noopaque,uunlnk,nosystem"); /* Test archive_entry_copy_fflags_text_w() */ archive_entry_copy_fflags_text_w(e, L" ,nouappnd, nouchg, dump,uunlnk"); archive_entry_fflags(e, &set, &clear); Modified: stable/10/contrib/libarchive/libarchive/test/test_read_format_rar5.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/test/test_read_format_rar5.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/test/test_read_format_rar5.c Wed Apr 10 21:46:28 2019 (r346105) @@ -95,7 +95,7 @@ int extract_one(struct archive* a, struct archive_entr int ret = 1; uint32_t computed_crc; - fsize = archive_entry_size(ae); + fsize = (la_ssize_t) archive_entry_size(ae); buf = malloc(fsize); if(buf == NULL) return 1; @@ -109,13 +109,13 @@ int extract_one(struct archive* a, struct archive_entr computed_crc = crc32(0, buf, fsize); assertEqualInt(computed_crc, crc); ret = 0; - + fn_exit: free(buf); return ret; } -DEFINE_TEST(test_read_format_rar5_stored) +DEFINE_TEST(test_read_format_rar5_stored) { const char helloworld_txt[] = "hello libarchive test suite!\n"; la_ssize_t file_size = sizeof(helloworld_txt) - 1; @@ -142,7 +142,7 @@ DEFINE_TEST(test_read_format_rar5_stored) DEFINE_TEST(test_read_format_rar5_compressed) { const int DATA_SIZE = 1200; - uint8_t buff[DATA_SIZE]; + uint8_t buff[1200]; PROLOGUE("test_read_format_rar5_compressed.rar"); @@ -160,7 +160,7 @@ DEFINE_TEST(test_read_format_rar5_compressed) DEFINE_TEST(test_read_format_rar5_multiple_files) { const int DATA_SIZE = 4096; - uint8_t buff[DATA_SIZE]; + uint8_t buff[4096]; PROLOGUE("test_read_format_rar5_multiple_files.rar"); @@ -172,7 +172,7 @@ DEFINE_TEST(test_read_format_rar5_multiple_files) assertEqualInt(DATA_SIZE, archive_entry_size(ae)); assertA(DATA_SIZE == archive_read_data(a, buff, DATA_SIZE)); assertA(verify_data(buff, 1, DATA_SIZE)); - + assertA(0 == archive_read_next_header(a, &ae)); assertEqualString("test2.bin", archive_entry_pathname(ae)); assertEqualInt(DATA_SIZE, archive_entry_size(ae)); @@ -206,7 +206,7 @@ DEFINE_TEST(test_read_format_rar5_multiple_files) DEFINE_TEST(test_read_format_rar5_multiple_files_solid) { const int DATA_SIZE = 4096; - uint8_t buff[DATA_SIZE]; + uint8_t buff[4096]; PROLOGUE("test_read_format_rar5_multiple_files_solid.rar"); @@ -215,7 +215,7 @@ DEFINE_TEST(test_read_format_rar5_multiple_files_solid assertEqualInt(DATA_SIZE, archive_entry_size(ae)); assertA(DATA_SIZE == archive_read_data(a, buff, DATA_SIZE)); assertA(verify_data(buff, 1, DATA_SIZE)); - + assertA(0 == archive_read_next_header(a, &ae)); assertEqualString("test2.bin", archive_entry_pathname(ae)); assertEqualInt(DATA_SIZE, archive_entry_size(ae)); @@ -308,7 +308,7 @@ DEFINE_TEST(test_read_format_rar5_multiarchive_skip_al DEFINE_TEST(test_read_format_rar5_blake2) { const la_ssize_t proper_size = 814; - uint8_t buf[proper_size]; + uint8_t buf[814]; PROLOGUE("test_read_format_rar5_blake2.rar"); assertA(0 == archive_read_next_header(a, &ae)); @@ -333,7 +333,7 @@ DEFINE_TEST(test_read_format_rar5_arm_filter) * test. */ const la_ssize_t proper_size = 90808; - uint8_t buf[proper_size]; + uint8_t buf[90808]; PROLOGUE("test_read_format_rar5_arm.rar"); assertA(0 == archive_read_next_header(a, &ae)); @@ -597,7 +597,7 @@ DEFINE_TEST(test_read_format_rar5_multiarchive_solid_s EPILOGUE(); } -DEFINE_TEST(test_read_format_rar5_solid_skip_all) +DEFINE_TEST(test_read_format_rar5_solid_skip_all) { const char* reffile = "test_read_format_rar5_solid.rar"; @@ -622,7 +622,7 @@ DEFINE_TEST(test_read_format_rar5_solid_skip_all) EPILOGUE(); } -DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_first) +DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_first) { const char* reffile = "test_read_format_rar5_solid.rar"; @@ -648,7 +648,7 @@ DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_f EPILOGUE(); } -DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_second) +DEFINE_TEST(test_read_format_rar5_solid_skip_all_but_second) { const char* reffile = "test_read_format_rar5_solid.rar"; Modified: stable/10/contrib/libarchive/libarchive/test/test_read_format_xar.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/test/test_read_format_xar.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/test/test_read_format_xar.c Wed Apr 10 21:46:28 2019 (r346105) @@ -799,7 +799,7 @@ static void verify(unsigned char *d, size_t s, static void verifyB(unsigned char *d, size_t s) { struct archive* a; struct archive_entry *entry = NULL; - la_int64_t buf_size; + size_t buf_size; unsigned char *buf; assert((a = archive_read_new()) != NULL); @@ -826,20 +826,20 @@ static void verifyB(unsigned char *d, size_t s) { // f1, content "onetwothree\n", size 12 bytes assertA(0 == archive_read_next_header(a, &entry)); - buf_size = archive_entry_size(entry); + buf_size = (size_t) archive_entry_size(entry); assertA(buf_size == 12); buf = (unsigned char*) malloc(buf_size); assertA(NULL != buf); - assertA(buf_size == archive_read_data(a, buf, buf_size)); + assertA(buf_size == (size_t) archive_read_data(a, buf, buf_size)); free(buf); // f2, content "fourfivesix\n", size 12 bytes assertA(0 == archive_read_next_header(a, &entry)); - buf_size = archive_entry_size(entry); + buf_size = (size_t) archive_entry_size(entry); assertA(buf_size == 12); buf = (unsigned char*) malloc(buf_size); assertA(NULL != buf); - assertA(buf_size == archive_read_data(a, buf, buf_size)); + assertA(buf_size == (size_t) archive_read_data(a, buf, buf_size)); free(buf); assertEqualInt(ARCHIVE_OK, archive_read_free(a)); Modified: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip.c ============================================================================== --- stable/10/contrib/libarchive/libarchive/test/test_read_format_zip.c Wed Apr 10 21:46:06 2019 (r346104) +++ stable/10/contrib/libarchive/libarchive/test/test_read_format_zip.c Wed Apr 10 21:46:28 2019 (r346105) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Thu Apr 11 00:39:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B9F91571E79; Thu, 11 Apr 2019 00:39:08 +0000 (UTC) (envelope-from cem@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 A23926BDF4; Thu, 11 Apr 2019 00:39:07 +0000 (UTC) (envelope-from cem@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 439FE254E; Thu, 11 Apr 2019 00:39:07 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3B0d6hh079354; Thu, 11 Apr 2019 00:39:06 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3B0d6ES079353; Thu, 11 Apr 2019 00:39:06 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201904110039.x3B0d6ES079353@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Thu, 11 Apr 2019 00:39:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346110 - head/usr.bin/sort X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/usr.bin/sort X-SVN-Commit-Revision: 346110 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A23926BDF4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.93)[-0.934,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 00:39:08 -0000 Author: cem Date: Thu Apr 11 00:39:06 2019 New Revision: 346110 URL: https://svnweb.freebsd.org/changeset/base/346110 Log: sort(1): Whitespace and style cleanup No functional change. Sponsored by: Dell EMC Isilon Modified: head/usr.bin/sort/sort.c Modified: head/usr.bin/sort/sort.c ============================================================================== --- head/usr.bin/sort/sort.c Wed Apr 10 22:26:59 2019 (r346109) +++ head/usr.bin/sort/sort.c Thu Apr 11 00:39:06 2019 (r346110) @@ -566,55 +566,57 @@ static bool set_sort_modifier(struct sort_mods *sm, int c) { - if (sm) { - switch (c){ - case 'b': - sm->bflag = true; - break; - case 'd': - sm->dflag = true; - break; - case 'f': - sm->fflag = true; - break; - case 'g': - sm->gflag = true; - need_hint = true; - break; - case 'i': - sm->iflag = true; - break; - case 'R': - sm->Rflag = true; - need_random = true; - break; - case 'M': - initialise_months(); - sm->Mflag = true; - need_hint = true; - break; - case 'n': - sm->nflag = true; - need_hint = true; - print_symbols_on_debug = true; - break; - case 'r': - sm->rflag = true; - break; - case 'V': - sm->Vflag = true; - break; - case 'h': - sm->hflag = true; - need_hint = true; - print_symbols_on_debug = true; - break; - default: - return false; - } - sort_opts_vals.complex_sort = true; - sm->func = get_sort_func(sm); + if (sm == NULL) + return (true); + + switch (c){ + case 'b': + sm->bflag = true; + break; + case 'd': + sm->dflag = true; + break; + case 'f': + sm->fflag = true; + break; + case 'g': + sm->gflag = true; + need_hint = true; + break; + case 'i': + sm->iflag = true; + break; + case 'R': + sm->Rflag = true; + need_random = true; + break; + case 'M': + initialise_months(); + sm->Mflag = true; + need_hint = true; + break; + case 'n': + sm->nflag = true; + need_hint = true; + print_symbols_on_debug = true; + break; + case 'r': + sm->rflag = true; + break; + case 'V': + sm->Vflag = true; + break; + case 'h': + sm->hflag = true; + need_hint = true; + print_symbols_on_debug = true; + break; + default: + return (false); } + + sort_opts_vals.complex_sort = true; + sm->func = get_sort_func(sm); return (true); } @@ -910,54 +912,50 @@ fix_obsolete_keys(int *argc, char **argv) static void set_random_seed(void) { - if (need_random) { + if (strcmp(random_source, DEFAULT_RANDOM_SORT_SEED_FILE) == 0) { + FILE* fseed; + MD5_CTX ctx; + char rsd[MAX_DEFAULT_RANDOM_SEED_DATA_SIZE]; + size_t sz = 0; - if (strcmp(random_source, DEFAULT_RANDOM_SORT_SEED_FILE) == 0) { - FILE* fseed; - MD5_CTX ctx; - char rsd[MAX_DEFAULT_RANDOM_SEED_DATA_SIZE]; - size_t sz = 0; + fseed = openfile(random_source, "r"); + while (!feof(fseed)) { + int cr; - fseed = openfile(random_source, "r"); - while (!feof(fseed)) { - int cr; + cr = fgetc(fseed); + if (cr == EOF) + break; - cr = fgetc(fseed); - if (cr == EOF) - break; + rsd[sz++] = (char) cr; - rsd[sz++] = (char) cr; + if (sz >= MAX_DEFAULT_RANDOM_SEED_DATA_SIZE) + break; + } - if (sz >= MAX_DEFAULT_RANDOM_SEED_DATA_SIZE) - break; - } + closefile(fseed, random_source); - closefile(fseed, random_source); + MD5Init(&ctx); + MD5Update(&ctx, rsd, sz); - MD5Init(&ctx); - MD5Update(&ctx, rsd, sz); + random_seed = MD5End(&ctx, NULL); + random_seed_size = strlen(random_seed); - random_seed = MD5End(&ctx, NULL); - random_seed_size = strlen(random_seed); + } else { + MD5_CTX ctx; + char *b; - } else { - MD5_CTX ctx; - char *b; + MD5Init(&ctx); + b = MD5File(random_source, NULL); + if (b == NULL) + err(2, NULL); - MD5Init(&ctx); - b = MD5File(random_source, NULL); - if (b == NULL) - err(2, NULL); - - random_seed = b; - random_seed_size = strlen(b); - } - - MD5Init(&md5_ctx); - if(random_seed_size>0) { - MD5Update(&md5_ctx, random_seed, random_seed_size); - } + random_seed = b; + random_seed_size = strlen(b); } + MD5Init(&md5_ctx); + if(random_seed_size>0) { + MD5Update(&md5_ctx, random_seed, random_seed_size); + } } /* @@ -1226,7 +1224,8 @@ main(int argc, char **argv) } } - set_random_seed(); + if (need_random) + set_random_seed(); /* Case when the outfile equals one of the input files: */ if (strcmp(outfile, "-")) { From owner-svn-src-all@freebsd.org Thu Apr 11 00:41:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7C15E1572090; Thu, 11 Apr 2019 00:41:08 +0000 (UTC) (envelope-from ygy@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 242B16BFB7; Thu, 11 Apr 2019 00:41:08 +0000 (UTC) (envelope-from ygy@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 EAEC02699; Thu, 11 Apr 2019 00:41:07 +0000 (UTC) (envelope-from ygy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3B0f7sM081759; Thu, 11 Apr 2019 00:41:07 GMT (envelope-from ygy@FreeBSD.org) Received: (from ygy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3B0f7RP081758; Thu, 11 Apr 2019 00:41:07 GMT (envelope-from ygy@FreeBSD.org) Message-Id: <201904110041.x3B0f7RP081758@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ygy set sender to ygy@FreeBSD.org using -f From: Guangyuan Yang Date: Thu, 11 Apr 2019 00:41:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346111 - stable/12/share/man/man4 X-SVN-Group: stable-12 X-SVN-Commit-Author: ygy X-SVN-Commit-Paths: stable/12/share/man/man4 X-SVN-Commit-Revision: 346111 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 242B16BFB7 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.93)[-0.928,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 00:41:08 -0000 Author: ygy (doc committer) Date: Thu Apr 11 00:41:07 2019 New Revision: 346111 URL: https://svnweb.freebsd.org/changeset/base/346111 Log: MFC r345887: Rewrite intro(4) man page. - Remove issues that no longer apply thanks to devfs - Add language pointing out devfs's role and referencing its config - Add a "historical notes" section and move discussion of block vs character devs to it, including pointing out the removal of block devs - Modernize some examples PR: 236970 Submitted by: andrew@tao173.riddles.org.uk Reviewed by: 0mp Differential Revision: https://reviews.freebsd.org/D19799 Modified: stable/12/share/man/man4/intro.4 Directory Properties: stable/12/ (props changed) Modified: stable/12/share/man/man4/intro.4 ============================================================================== --- stable/12/share/man/man4/intro.4 Thu Apr 11 00:39:06 2019 (r346110) +++ stable/12/share/man/man4/intro.4 Thu Apr 11 00:41:07 2019 (r346111) @@ -1,5 +1,6 @@ .\" .\" Copyright (c) 1996 David E. O'Brien, Joerg Wunsch +.\" Copyright (c) 2019 Andrew Gierth .\" .\" All rights reserved. .\" @@ -25,7 +26,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 20, 1996 +.Dd April 3, 2019 .Dt INTRO 4 .Os .Sh NAME @@ -45,14 +46,13 @@ without any particular underlying hardware. A typical example for the latter class is .Pa /dev/mem , -a loophole where the physical memory can be accessed using the regular -file access semantics. +a mechanism whereby the physical memory can be accessed using file +access semantics. .Pp -The device abstraction generally provides a common set of system calls -layered on top of them, which are dispatched to the corresponding -device driver by the upper layers of the kernel. -The set of system -calls available for devices is chosen from +The device abstraction generally provides a common set of system +calls, which are dispatched to the corresponding device driver by the +upper layers of the kernel. +The set of system calls available for devices is chosen from .Xr open 2 , .Xr close 2 , .Xr read 2 , @@ -61,77 +61,56 @@ calls available for devices is chosen from .Xr select 2 , and .Xr mmap 2 . -Not all drivers implement all system calls, for example, calling +Not all drivers implement all system calls; for example, calling .Xr mmap 2 -on terminal devices is likely to be not useful at all. +on a keyboard device is not likely to be useful. +.Pp +Aspects of the device abstraction have changed significantly in +.Fx +over the past two decades. +The section +.Sx Historical Notes +describes some of the more important differences. .Ss Accessing Devices -Most of the devices in a -.Ux Ns --like operating system are accessed -through so-called +Most of the devices in +.Fx +are accessed through .Em device nodes , sometimes also called .Em special files . -They are usually located under the directory +They are located within instances of the +.Xr devfs 5 +filesystem, which is conventionally mounted on the directory .Pa /dev in the file system hierarchy (see also .Xr hier 7 ) . .Pp -Note that this could lead to an inconsistent state, where either there -are device nodes that do not have a configured driver associated with -them, or there may be drivers that have successfully probed for their -devices, but cannot be accessed since the corresponding device node is -still missing. -In the first case, any attempt to reference the device -through the device node will result in an error, returned by the upper -layers of the kernel, usually -.Er ENXIO . -In the second case, the device node needs to be created before the -driver and its device will be usable. +The +.Xr devfs 5 +filesystem creates or removes device nodes automatically according to +the physical hardware recognized as present at any given time. +For pseudo-devices, device nodes may be created and removed dynamically +as required, depending on the nature of the device. .Pp -Some devices come in two flavors: -.Em block -and -.Em character -devices, or to use better terms, buffered and unbuffered -(raw) -devices. -The traditional names are reflected by the letters -.Ql b -and -.Ql c -as the file type identification in the output of -.Ql ls -l . -Buffered devices are being accessed through the buffer cache of the -operating system, and they are solely intended to layer a file system -on top of them. -They are normally implemented for disks and disk-like -devices only and, for historical reasons, for tape devices. -.Pp -Raw devices are available for all drivers, including those that also -implement a buffered device. -For the latter group of devices, the -differentiation is conventionally done by prepending the letter -.Ql r -to the path name of the device node, for example -.Pa /dev/rda0 -denotes the raw device for the first SCSI disk, while -.Pa /dev/da0 -is the corresponding device node for the buffered device. -.Pp -Unbuffered devices should be used for all actions that are not related -to file system operations, even if the device in question is a disk -device. -This includes making backups of entire disk partitions, or -to -.Em raw -floppy disks -(i.e., those used like tapes). -.Pp Access restrictions to device nodes are usually subject to the regular file permissions of the device node entry, instead of being enforced directly by the drivers in the kernel. +But since device nodes are not stored persistently between reboots, +those file permissions are set at boot time from rules specified in +.Xr devfs.conf 5 , +or dynamically according to rules defined in +.Xr devfs.rules 5 +or set using the +.Xr devfs 8 +command. +In the latter case, different rules may be used to make different sets +of devices visible within different instances of the +.Xr devfs 5 +filesystem, which may be used, for example, to prevent jailed +subsystems from accessing unsafe devices. +Manual changes to device +node permissions may still be made, but will not persist. .Ss Drivers without device nodes Drivers for network devices do not use device nodes in order to be accessed. @@ -149,12 +128,71 @@ See .Xr config 8 for a detailed description of the files involved. The individual manual pages in this section provide a sample line for the -configuration file in their synopsis portion. -See also the sample config file -.Pa /sys/i386/conf/LINT -(for the -.Em i386 -architecture). +configuration file in their synopsis portions. +See also the files +.Pa /usr/src/sys/conf/NOTES +and +.Pa /usr/src/sys/${ARCH}/conf/NOTES . +.Pp +Drivers need not be statically compiled into the kernel; they may also be +loaded as modules, in which case any device nodes they provide will appear +only after the module is loaded (and has attached to suitable hardware, +if applicable). +.Ss Historical Notes +Prior to +.Fx 6.0 , +device nodes could be created in the traditional way as persistent +entries in the file system. +While such entries can still be created, they no longer function to +access devices. +.Pp +Prior to +.Fx 5.0 , +devices for disk and tape drives existed in two variants, known as +.Em block +and +.Em character +devices, or to use better terms, buffered and unbuffered +(raw) +devices. +The traditional names are reflected by the letters +.Dq Li b +and +.Dq Li c +as the file type identification in the output of +.Dq Li ls -l . +Raw devices were traditionally named with a prefix of +.Dq Li r , +for example +.Pa /dev/rda0 +would denote the raw version of the disk whose buffered device was +.Pa /dev/da0 . +.Em This is no longer the case ; +all disk devices are now +.Dq raw +in the traditional sense, even though they are not given +.Dq Li r +prefixes, and +.Dq buffered +devices no longer exist at all. +.Pp +Buffered devices were accessed through a buffer cache maintained by +the operating system; historically this was the system's primary disk +cache, but in +.Fx +this was rendered obsolete by the introduction of unified virtual +memory management. +Buffered devices could be read or written at any +byte position, with the buffer mechanism handling the reading and +writing of disk blocks. +In contrast, raw disk devices can be read or +written only at positions and lengths that are multiples of the +underlying device block size, and +.Xr write 2 +calls are +.Em synchronous , +not returning to the caller until the data has been handed off to the +device. .Sh SEE ALSO .Xr close 2 , .Xr ioctl 2 , @@ -172,7 +210,9 @@ This manual page first appeared in .Fx 2.1 . .Sh AUTHORS .An -nosplit -This man page has been written by +This man page has been rewritten by +.An Andrew Gierth +from an earlier version written by .An J\(:org Wunsch with initial input by .An David E. O'Brien . From owner-svn-src-all@freebsd.org Thu Apr 11 03:47:54 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D261A1576F42; Thu, 11 Apr 2019 03:47:54 +0000 (UTC) (envelope-from oshogbo@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 73A4072283; Thu, 11 Apr 2019 03:47:54 +0000 (UTC) (envelope-from oshogbo@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 4BB7B494F; Thu, 11 Apr 2019 03:47:54 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3B3lsT2080895; Thu, 11 Apr 2019 03:47:54 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3B3lsnf080894; Thu, 11 Apr 2019 03:47:54 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201904110347.x3B3lsnf080894@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Thu, 11 Apr 2019 03:47:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346112 - head/sys/contrib/libnv X-SVN-Group: head X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: head/sys/contrib/libnv X-SVN-Commit-Revision: 346112 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 73A4072283 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.979,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 03:47:55 -0000 Author: oshogbo Date: Thu Apr 11 03:47:53 2019 New Revision: 346112 URL: https://svnweb.freebsd.org/changeset/base/346112 Log: libnv: fix compilation warnings When building libnv without a debug those arguments are no longer used because assertions will be changed to NOP. Submitted by: Mindaugas Rasiukevicius MFC after: 2 weeks Modified: head/sys/contrib/libnv/nvlist.c Modified: head/sys/contrib/libnv/nvlist.c ============================================================================== --- head/sys/contrib/libnv/nvlist.c Thu Apr 11 00:41:07 2019 (r346111) +++ head/sys/contrib/libnv/nvlist.c Thu Apr 11 03:47:53 2019 (r346112) @@ -324,7 +324,7 @@ nvlist_set_flags(nvlist_t *nvl, int flags) nvl->nvl_flags = flags; } -void +static void nvlist_report_missing(int type, const char *name) { @@ -1374,7 +1374,7 @@ nvlist_first_nvpair(const nvlist_t *nvl) } nvpair_t * -nvlist_next_nvpair(const nvlist_t *nvl, const nvpair_t *nvp) +nvlist_next_nvpair(const nvlist_t *nvl __unused, const nvpair_t *nvp) { nvpair_t *retnvp; @@ -1390,7 +1390,7 @@ nvlist_next_nvpair(const nvlist_t *nvl, const nvpair_t } nvpair_t * -nvlist_prev_nvpair(const nvlist_t *nvl, const nvpair_t *nvp) +nvlist_prev_nvpair(const nvlist_t *nvl __unused, const nvpair_t *nvp) { nvpair_t *retnvp; From owner-svn-src-all@freebsd.org Thu Apr 11 04:21:59 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C7F76157809E; Thu, 11 Apr 2019 04:21:59 +0000 (UTC) (envelope-from oshogbo@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 6DBD473752; Thu, 11 Apr 2019 04:21:59 +0000 (UTC) (envelope-from oshogbo@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 464D55013; Thu, 11 Apr 2019 04:21:59 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3B4Lxn2001149; Thu, 11 Apr 2019 04:21:59 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3B4Lxpf001148; Thu, 11 Apr 2019 04:21:59 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201904110421.x3B4Lxpf001148@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Thu, 11 Apr 2019 04:21:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346113 - head/sys/contrib/libnv X-SVN-Group: head X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: head/sys/contrib/libnv X-SVN-Commit-Revision: 346113 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6DBD473752 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.95)[-0.947,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 04:22:00 -0000 Author: oshogbo Date: Thu Apr 11 04:21:58 2019 New Revision: 346113 URL: https://svnweb.freebsd.org/changeset/base/346113 Log: libnv: fix compilation warnings When building libnv without a debug those arguments are no longer used because assertions will be changed to NOP. Submitted by: Mindaugas Rasiukevicius MFC after: 2 weeks Modified: head/sys/contrib/libnv/nvpair.c Modified: head/sys/contrib/libnv/nvpair.c ============================================================================== --- head/sys/contrib/libnv/nvpair.c Thu Apr 11 03:47:53 2019 (r346112) +++ head/sys/contrib/libnv/nvpair.c Thu Apr 11 04:21:58 2019 (r346113) @@ -108,7 +108,7 @@ struct nvpair_header { void -nvpair_assert(const nvpair_t *nvp) +nvpair_assert(const nvpair_t *nvp __unused) { NVPAIR_ASSERT(nvp); @@ -235,7 +235,8 @@ nvpair_remove_nvlist_array(nvpair_t *nvp) } void -nvpair_remove(struct nvl_head *head, nvpair_t *nvp, const nvlist_t *nvl) +nvpair_remove(struct nvl_head *head, nvpair_t *nvp, + const nvlist_t *nvl __unused) { NVPAIR_ASSERT(nvp); @@ -359,7 +360,7 @@ nvpair_pack_header(const nvpair_t *nvp, unsigned char } unsigned char * -nvpair_pack_null(const nvpair_t *nvp, unsigned char *ptr, +nvpair_pack_null(const nvpair_t *nvp __unused, unsigned char *ptr, size_t *leftp __unused) { From owner-svn-src-all@freebsd.org Thu Apr 11 04:22:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0CF2015780BF; Thu, 11 Apr 2019 04:22:17 +0000 (UTC) (envelope-from cy@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 F2CAB737E2; Thu, 11 Apr 2019 04:22:08 +0000 (UTC) (envelope-from cy@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 CEF81501A; Thu, 11 Apr 2019 04:22:06 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3B4M6n2001224; Thu, 11 Apr 2019 04:22:06 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3B4M6hB001223; Thu, 11 Apr 2019 04:22:06 GMT (envelope-from cy@FreeBSD.org) Message-Id: <201904110422.x3B4M6hB001223@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Thu, 11 Apr 2019 04:22:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346114 - head/sys/contrib/ipfilter/netinet X-SVN-Group: head X-SVN-Commit-Author: cy X-SVN-Commit-Paths: head/sys/contrib/ipfilter/netinet X-SVN-Commit-Revision: 346114 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: F2CAB737E2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.95)[-0.947,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 04:22:17 -0000 Author: cy Date: Thu Apr 11 04:22:06 2019 New Revision: 346114 URL: https://svnweb.freebsd.org/changeset/base/346114 Log: Catch up to r343631: Avoid "pfil: duplicate hook" due to ipf_check_wrapper and ipf_check_wrapper6 being registered under the same pa_rulename. MFC after: 3 days Modified: head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c Modified: head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c ============================================================================== --- head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c Thu Apr 11 04:21:58 2019 (r346113) +++ head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c Thu Apr 11 04:22:06 2019 (r346114) @@ -1344,13 +1344,14 @@ int ipf_pfil_hook(void) { pha.pa_version = PFIL_VERSION; pha.pa_flags = PFIL_IN | PFIL_OUT; pha.pa_modname = "ipfilter"; - pha.pa_rulname = "default"; + pha.pa_rulname = "default-ip4"; pha.pa_func = ipf_check_wrapper; pha.pa_ruleset = NULL; pha.pa_type = PFIL_TYPE_IP4; V_ipf_inet_hook = pfil_add_hook(&pha); #ifdef USE_INET6 + pha.pa_rulname = "default-ip6"; pha.pa_func = ipf_check_wrapper6; pha.pa_type = PFIL_TYPE_IP6; V_ipf_inet6_hook = pfil_add_hook(&pha); From owner-svn-src-all@freebsd.org Thu Apr 11 04:24:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6DA5B157819E; Thu, 11 Apr 2019 04:24:42 +0000 (UTC) (envelope-from oshogbo@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 1370773A8B; Thu, 11 Apr 2019 04:24:42 +0000 (UTC) (envelope-from oshogbo@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 DFC375047; Thu, 11 Apr 2019 04:24:41 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3B4Of9b002089; Thu, 11 Apr 2019 04:24:41 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3B4Ofnq002088; Thu, 11 Apr 2019 04:24:41 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201904110424.x3B4Ofnq002088@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Thu, 11 Apr 2019 04:24:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346115 - head/sys/contrib/libnv X-SVN-Group: head X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: head/sys/contrib/libnv X-SVN-Commit-Revision: 346115 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1370773A8B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.95)[-0.947,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 04:24:42 -0000 Author: oshogbo Date: Thu Apr 11 04:24:41 2019 New Revision: 346115 URL: https://svnweb.freebsd.org/changeset/base/346115 Log: The nvlist_report_missing is also used by the cnvlist. It can't be a static one. Reported by: jenkins MFC after: 2 weeks Modified: head/sys/contrib/libnv/nvlist.c Modified: head/sys/contrib/libnv/nvlist.c ============================================================================== --- head/sys/contrib/libnv/nvlist.c Thu Apr 11 04:22:06 2019 (r346114) +++ head/sys/contrib/libnv/nvlist.c Thu Apr 11 04:24:41 2019 (r346115) @@ -324,7 +324,7 @@ nvlist_set_flags(nvlist_t *nvl, int flags) nvl->nvl_flags = flags; } -static void +void nvlist_report_missing(int type, const char *name) { From owner-svn-src-all@freebsd.org Thu Apr 11 04:51:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 28B5D1578F29; Thu, 11 Apr 2019 04:51:22 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.13]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id CDD91751FF; Thu, 11 Apr 2019 04:51:20 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA id ERgChEVcTldkPERgDhlZuz; Wed, 10 Apr 2019 22:51:18 -0600 X-Authority-Analysis: v=2.3 cv=Ko4zJleN c=1 sm=1 tr=0 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=kj9zAlcOel0A:10 a=oexKYjalfGEA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=V8c2EHtL5EFWLsulWI4A:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id 9A26139F; Wed, 10 Apr 2019 21:51:15 -0700 (PDT) Received: from slippy.cwsent.com (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x3B4pFlq095014; Wed, 10 Apr 2019 21:51:15 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Received: from slippy (cy@localhost) by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x3B4pERf094471; Wed, 10 Apr 2019 21:51:14 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201904110451.x3B4pERf094471@slippy.cwsent.com> X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Cy Schubert cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346114 - head/sys/contrib/ipfilter/netinet In-Reply-To: Message from Cy Schubert of "Thu, 11 Apr 2019 04:22:06 -0000." <201904110422.x3B4M6hB001223@repo.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Wed, 10 Apr 2019 21:51:14 -0700 X-CMAE-Envelope: MS4wfF/xffuA8Aa5Kls5uG+t69bhbOxJWTlkl5aRSij03IIIbMuP8qvsSqHXqP6K5LBdjJTNTVWa50NbJ0SOUmxy+x+9XzW5y8Cbl0SRrTWtxKceGfFhJPFo Ck1gYsiafRAYj4ooqV4Ruf8zbJSoju2fdnQNhorJJRDhpEor17Imm4wNcrf3ss+BfuW3bb0AIiFghnooMnd0PyBbx8Z+3unjYdSu0oAvJdlTU8pc26mmVKad s2nU+Woq8iRJbFFftdtmLTyHYYRDfad7S0ZyzgvK1Qm2R0yKrC+hng2WdTG9c7+v X-Rspamd-Queue-Id: CDD91751FF X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-4.67 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; MV_CASE(0.50)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; HAS_XAW(0.00)[]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; TO_DN_SOME(0.00)[]; REPLYTO_EQ_FROM(0.00)[]; IP_SCORE(-2.51)[ip: (-6.92), ipnet: 64.59.128.0/20(-3.11), asn: 6327(-2.41), country: CA(-0.09)]; MX_GOOD(-0.01)[cached: spqr.komquats.com]; NEURAL_HAM_SHORT(-0.45)[-0.450,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_SPF_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA]; RCVD_TLS_LAST(0.00)[]; RCVD_IN_DNSWL_LOW(-0.10)[13.134.59.64.list.dnswl.org : 127.0.5.1] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 04:51:22 -0000 In message <201904110422.x3B4M6hB001223@repo.freebsd.org>, Cy Schubert writes: > Author: cy > Date: Thu Apr 11 04:22:06 2019 > New Revision: 346114 > URL: https://svnweb.freebsd.org/changeset/base/346114 > > Log: > Catch up to r343631: Avoid "pfil: duplicate hook" due to > ipf_check_wrapper and ipf_check_wrapper6 being registered > under the same pa_rulename. > > MFC after: 3 days This doesn't need to be MFCed after all. It won't hurt if it is but it would be pointless as the r343631 itself hasn't been MFCed. -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Thu Apr 11 05:08:50 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A949D15797F5; Thu, 11 Apr 2019 05:08:50 +0000 (UTC) (envelope-from cem@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 434DE75DBB; Thu, 11 Apr 2019 05:08:50 +0000 (UTC) (envelope-from cem@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 290985725; Thu, 11 Apr 2019 05:08:50 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3B58n2T023792; Thu, 11 Apr 2019 05:08:49 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3B58nFT023791; Thu, 11 Apr 2019 05:08:49 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201904110508.x3B58nFT023791@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Thu, 11 Apr 2019 05:08:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346116 - head/usr.bin/sort X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/usr.bin/sort X-SVN-Commit-Revision: 346116 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 434DE75DBB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 05:08:51 -0000 Author: cem Date: Thu Apr 11 05:08:49 2019 New Revision: 346116 URL: https://svnweb.freebsd.org/changeset/base/346116 Log: sort(1): Simplify and bound random seeding Bound input file processing length to avoid the issue reported in [1]. For simplicity, only allow regular file and character device inputs. For character devices, only allow /dev/random (and /dev/urandom symblink). 32 bytes of random is perfectly sufficient to seed MD5; we don't need any more. Users that want to use large files as seeds are encouraged to truncate those files down to an appropriate input file via tools like sha256(1). (This does not change the sort algorithm of sort -R.) [1]: https://lists.freebsd.org/pipermail/freebsd-hackers/2018-August/053152.html PR: 230792 Reported by: Ali Abdallah Relnotes: yes Modified: head/usr.bin/sort/sort.c Modified: head/usr.bin/sort/sort.c ============================================================================== --- head/usr.bin/sort/sort.c Thu Apr 11 04:24:41 2019 (r346115) +++ head/usr.bin/sort/sort.c Thu Apr 11 05:08:49 2019 (r346116) @@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include @@ -61,13 +62,7 @@ nl_catd catalog; #define OPTIONS "bcCdfghik:Mmno:RrsS:t:T:uVz" -#define DEFAULT_RANDOM_SORT_SEED_FILE ("/dev/random") -#define MAX_DEFAULT_RANDOM_SEED_DATA_SIZE (1024) - static bool need_random; -static const char *random_source = DEFAULT_RANDOM_SORT_SEED_FILE; -static const void *random_seed; -static size_t random_seed_size; MD5_CTX md5_ctx; @@ -907,55 +902,76 @@ fix_obsolete_keys(int *argc, char **argv) } /* - * Set random seed + * Seed random sort */ static void -set_random_seed(void) +get_random_seed(const char *random_source) { - if (strcmp(random_source, DEFAULT_RANDOM_SORT_SEED_FILE) == 0) { - FILE* fseed; - MD5_CTX ctx; - char rsd[MAX_DEFAULT_RANDOM_SEED_DATA_SIZE]; - size_t sz = 0; + char randseed[32]; + struct stat fsb, rsb; + ssize_t rd; + int rsfd; - fseed = openfile(random_source, "r"); - while (!feof(fseed)) { - int cr; + rsfd = -1; + rd = sizeof(randseed); - cr = fgetc(fseed); - if (cr == EOF) - break; + if (random_source == NULL) { + if (getentropy(randseed, sizeof(randseed)) < 0) + err(EX_SOFTWARE, "getentropy"); + goto out; + } - rsd[sz++] = (char) cr; + rsfd = open(random_source, O_RDONLY | O_CLOEXEC); + if (rsfd < 0) + err(EX_NOINPUT, "open: %s", random_source); - if (sz >= MAX_DEFAULT_RANDOM_SEED_DATA_SIZE) - break; - } + if (fstat(rsfd, &fsb) != 0) + err(EX_SOFTWARE, "fstat"); - closefile(fseed, random_source); + if (!S_ISREG(fsb.st_mode) && !S_ISCHR(fsb.st_mode)) + err(EX_USAGE, + "random seed isn't a regular file or /dev/random"); - MD5Init(&ctx); - MD5Update(&ctx, rsd, sz); + /* + * Regular files: read up to maximum seed size and explicitly + * reject longer files. + */ + if (S_ISREG(fsb.st_mode)) { + if (fsb.st_size > (off_t)sizeof(randseed)) + errx(EX_USAGE, "random seed is too large (%jd >" + " %zu)!", (intmax_t)fsb.st_size, + sizeof(randseed)); + else if (fsb.st_size < 1) + errx(EX_USAGE, "random seed is too small (" + "0 bytes)"); - random_seed = MD5End(&ctx, NULL); - random_seed_size = strlen(random_seed); + memset(randseed, 0, sizeof(randseed)); - } else { - MD5_CTX ctx; - char *b; + rd = read(rsfd, randseed, fsb.st_size); + if (rd < 0) + err(EX_SOFTWARE, "reading random seed file %s", + random_source); + if (rd < (ssize_t)fsb.st_size) + errx(EX_SOFTWARE, "short read from %s", random_source); + } else if (S_ISCHR(fsb.st_mode)) { + if (stat("/dev/random", &rsb) < 0) + err(EX_SOFTWARE, "stat"); - MD5Init(&ctx); - b = MD5File(random_source, NULL); - if (b == NULL) - err(2, NULL); + if (fsb.st_dev != rsb.st_dev || + fsb.st_ino != rsb.st_ino) + errx(EX_USAGE, "random seed is a character " + "device other than /dev/random"); - random_seed = b; - random_seed_size = strlen(b); + if (getentropy(randseed, sizeof(randseed)) < 0) + err(EX_SOFTWARE, "getentropy"); } + +out: + if (rsfd >= 0) + close(rsfd); + MD5Init(&md5_ctx); - if(random_seed_size>0) { - MD5Update(&md5_ctx, random_seed, random_seed_size); - } + MD5Update(&md5_ctx, randseed, rd); } /* @@ -965,6 +981,7 @@ int main(int argc, char **argv) { char *outfile, *real_outfile; + char *random_source = NULL; int c, result; bool mef_flags[NUMBER_OF_MUTUALLY_EXCLUSIVE_FLAGS] = { false, false, false, false, false, false }; @@ -1225,7 +1242,7 @@ main(int argc, char **argv) } if (need_random) - set_random_seed(); + get_random_seed(random_source); /* Case when the outfile equals one of the input files: */ if (strcmp(outfile, "-")) { From owner-svn-src-all@freebsd.org Thu Apr 11 08:01:01 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2F2BB157D22B; Thu, 11 Apr 2019 08:01:01 +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 C9FD083A5D; Thu, 11 Apr 2019 08:01:00 +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 8089D73F4; Thu, 11 Apr 2019 08:01:00 +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 x3B810tX013701; Thu, 11 Apr 2019 08:01:00 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3B810P1013695; Thu, 11 Apr 2019 08:01:00 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201904110801.x3B810P1013695@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Thu, 11 Apr 2019 08:01:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346118 - in head/sys: netinet netinet6 X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: in head/sys: netinet netinet6 X-SVN-Commit-Revision: 346118 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C9FD083A5D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 08:01:01 -0000 Author: markj Date: Thu Apr 11 08:00:59 2019 New Revision: 346118 URL: https://svnweb.freebsd.org/changeset/base/346118 Log: Reinitialize multicast source filter structures after invalidation. When leaving a multicast group, a hole may be created in the inpcb's source filter and group membership arrays. To remove the hole, the succeeding array elements are copied over by one entry. The multicast code expects that a newly allocated array element is initialized, but the code which shifts a tail of the array was leaving stale data in the final entry. Fix this by explicitly reinitializing the last entry following such a copy. Reported by: syzbot+f8c3c564ee21d650475e@syzkaller.appspotmail.com Reviewed by: ae MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19872 Modified: head/sys/netinet/in_mcast.c head/sys/netinet6/in6_mcast.c Modified: head/sys/netinet/in_mcast.c ============================================================================== --- head/sys/netinet/in_mcast.c Thu Apr 11 05:11:02 2019 (r346117) +++ head/sys/netinet/in_mcast.c Thu Apr 11 08:00:59 2019 (r346118) @@ -2556,10 +2556,14 @@ out_in_multi_locked: if (is_final) { /* Remove the gap in the membership and filter array. */ + KASSERT(RB_EMPTY(&imf->imf_sources), + ("%s: imf_sources not empty", __func__)); for (++idx; idx < imo->imo_num_memberships; ++idx) { - imo->imo_membership[idx-1] = imo->imo_membership[idx]; - imo->imo_mfilters[idx-1] = imo->imo_mfilters[idx]; + imo->imo_membership[idx - 1] = imo->imo_membership[idx]; + imo->imo_mfilters[idx - 1] = imo->imo_mfilters[idx]; } + imf_init(&imo->imo_mfilters[idx - 1], MCAST_UNDEFINED, + MCAST_EXCLUDE); imo->imo_num_memberships--; } Modified: head/sys/netinet6/in6_mcast.c ============================================================================== --- head/sys/netinet6/in6_mcast.c Thu Apr 11 05:11:02 2019 (r346117) +++ head/sys/netinet6/in6_mcast.c Thu Apr 11 08:00:59 2019 (r346118) @@ -2470,10 +2470,14 @@ in6p_leave_group(struct inpcb *inp, struct sockopt *so if (is_final) { /* Remove the gap in the membership array. */ + KASSERT(RB_EMPTY(&imf->im6f_sources), + ("%s: im6f_sources not empty", __func__)); for (++idx; idx < imo->im6o_num_memberships; ++idx) { - imo->im6o_membership[idx-1] = imo->im6o_membership[idx]; - imo->im6o_mfilters[idx-1] = imo->im6o_mfilters[idx]; + imo->im6o_membership[idx - 1] = imo->im6o_membership[idx]; + imo->im6o_mfilters[idx - 1] = imo->im6o_mfilters[idx]; } + im6f_init(&imo->im6o_mfilters[idx - 1], MCAST_UNDEFINED, + MCAST_EXCLUDE); imo->im6o_num_memberships--; } From owner-svn-src-all@freebsd.org Thu Apr 11 11:21:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9EC50158133B; Thu, 11 Apr 2019 11:21:46 +0000 (UTC) (envelope-from trasz@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 33DE7899E6; Thu, 11 Apr 2019 11:21:46 +0000 (UTC) (envelope-from trasz@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 F405B972A; Thu, 11 Apr 2019 11:21:45 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3BBLjW0023088; Thu, 11 Apr 2019 11:21:45 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BBLj2K023087; Thu, 11 Apr 2019 11:21:45 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201904111121.x3BBLj2K023087@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Thu, 11 Apr 2019 11:21:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346120 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 346120 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 33DE7899E6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 11:21:46 -0000 Author: trasz Date: Thu Apr 11 11:21:45 2019 New Revision: 346120 URL: https://svnweb.freebsd.org/changeset/base/346120 Log: Use shared vnode locks for the ELF interpreter. Reviewed by: kib MFC after: 2 weeks Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D19874 Modified: head/sys/kern/imgact_elf.c Modified: head/sys/kern/imgact_elf.c ============================================================================== --- head/sys/kern/imgact_elf.c Thu Apr 11 08:06:45 2019 (r346119) +++ head/sys/kern/imgact_elf.c Thu Apr 11 11:21:45 2019 (r346120) @@ -716,7 +716,7 @@ __elfN(load_file)(struct proc *p, const char *file, u_ struct nameidata *nd; struct vattr *attr; struct image_params *imgp; - u_long rbase; + u_long flags, rbase; u_long base_addr = 0; int error; @@ -744,7 +744,10 @@ __elfN(load_file)(struct proc *p, const char *file, u_ imgp->object = NULL; imgp->execlabel = NULL; - NDINIT(nd, LOOKUP, LOCKLEAF | FOLLOW, UIO_SYSSPACE, file, curthread); + flags = FOLLOW | LOCKSHARED | LOCKLEAF; + +again: + NDINIT(nd, LOOKUP, flags, UIO_SYSSPACE, file, curthread); if ((error = namei(nd)) != 0) { nd->ni_vp = NULL; goto fail; @@ -759,15 +762,30 @@ __elfN(load_file)(struct proc *p, const char *file, u_ if (error) goto fail; + /* + * Also make certain that the interpreter stays the same, + * so set its VV_TEXT flag, too. Since this function is only + * used to load the interpreter, the VV_TEXT is almost always + * already set. + */ + if (VOP_IS_TEXT(nd->ni_vp) == 0) { + if (VOP_ISLOCKED(nd->ni_vp) != LK_EXCLUSIVE) { + /* + * LK_UPGRADE could have resulted in dropping + * the lock. Just try again from the start, + * this time with exclusive vnode lock. + */ + vput(nd->ni_vp); + flags &= ~LOCKSHARED; + goto again; + } + + VOP_SET_TEXT(nd->ni_vp); + } + error = exec_map_first_page(imgp); if (error) goto fail; - - /* - * Also make certain that the interpreter stays the same, so set - * its VV_TEXT flag, too. - */ - VOP_SET_TEXT(nd->ni_vp); imgp->object = nd->ni_vp->v_object; From owner-svn-src-all@freebsd.org Thu Apr 11 13:01:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A14881583F52; Thu, 11 Apr 2019 13:01:27 +0000 (UTC) (envelope-from emaste@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 E47BD8D2DE; Thu, 11 Apr 2019 13:01:26 +0000 (UTC) (envelope-from emaste@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 BE41BA7C1; Thu, 11 Apr 2019 13:01:26 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3BD1QZI073524; Thu, 11 Apr 2019 13:01:26 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BD1QZr073523; Thu, 11 Apr 2019 13:01:26 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201904111301.x3BD1QZr073523@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Thu, 11 Apr 2019 13:01:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346121 - head X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 346121 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E47BD8D2DE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.977,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:01:27 -0000 Author: emaste Date: Thu Apr 11 13:01:26 2019 New Revision: 346121 URL: https://svnweb.freebsd.org/changeset/base/346121 Log: Cirrus-CI: pass OVMF env var to test script for upcoming changes In review D19876 ian@ has some proposed improvements to the tools/boot/ci-qemu-test.sh script. Start specifying the location of OVMF.fd fetched by the Cirrus-CI build in advance of those changes. Modified: head/.cirrus.yml Modified: head/.cirrus.yml ============================================================================== --- head/.cirrus.yml Thu Apr 11 11:21:45 2019 (r346120) +++ head/.cirrus.yml Thu Apr 11 13:01:26 2019 (r346121) @@ -16,4 +16,4 @@ task: script: - make -j$(sysctl -n hw.ncpu) WITHOUT_TOOLCHAIN=yes buildworld buildkernel test_script: - - sh tools/boot/ci-qemu-test.sh + - OVMF=$(pwd)/OVMF.fd sh tools/boot/ci-qemu-test.sh From owner-svn-src-all@freebsd.org Thu Apr 11 13:11:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5A4D9158448E; Thu, 11 Apr 2019 13:11:22 +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 EE5548DA83; Thu, 11 Apr 2019 13:11:21 +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 9C724A87C; Thu, 11 Apr 2019 13:11:21 +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 x3BDBLmO076298; Thu, 11 Apr 2019 13:11:21 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDBLK2076296; Thu, 11 Apr 2019 13:11:21 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904111311.x3BDBLK2076296@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 11 Apr 2019 13:11:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346122 - in stable/12/sys: cam/ata sys X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: in stable/12/sys: cam/ata sys X-SVN-Commit-Revision: 346122 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: EE5548DA83 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:11:22 -0000 Author: mav Date: Thu Apr 11 13:11:20 2019 New Revision: 346122 URL: https://svnweb.freebsd.org/changeset/base/346122 Log: MFC r345849: List few more ATA commands. Modified: stable/12/sys/cam/ata/ata_all.c stable/12/sys/sys/ata.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cam/ata/ata_all.c ============================================================================== --- stable/12/sys/cam/ata/ata_all.c Thu Apr 11 13:01:26 2019 (r346121) +++ stable/12/sys/cam/ata/ata_all.c Thu Apr 11 13:11:20 2019 (r346122) @@ -215,8 +215,10 @@ ata_op_string(struct ata_cmd *cmd) case 0xe5: return ("CHECK_POWER_MODE"); case 0xe6: return ("SLEEP"); case 0xe7: return ("FLUSHCACHE"); - case 0xe8: return ("WRITE_PM"); + case 0xe8: return ("WRITE_BUFFER/PM"); + case 0xe9: return ("READ_BUFFER_DMA"); case 0xea: return ("FLUSHCACHE48"); + case 0xeb: return ("WRITE_BUFFER_DMA"); case 0xec: return ("ATA_IDENTIFY"); case 0xed: return ("MEDIA_EJECT"); case 0xef: @@ -581,7 +583,12 @@ ata_28bit_cmd(struct ccb_ataio *ataio, uint8_t cmd, ui if (cmd == ATA_READ_DMA || cmd == ATA_READ_DMA_QUEUED || cmd == ATA_WRITE_DMA || - cmd == ATA_WRITE_DMA_QUEUED) + cmd == ATA_WRITE_DMA_QUEUED || + cmd == ATA_TRUSTED_RECEIVE_DMA || + cmd == ATA_TRUSTED_SEND_DMA || + cmd == ATA_DOWNLOAD_MICROCODE_DMA || + cmd == ATA_READ_BUFFER_DMA || + cmd == ATA_WRITE_BUFFER_DMA) ataio->cmd.flags |= CAM_ATAIO_DMA; ataio->cmd.command = cmd; ataio->cmd.features = features; @@ -607,7 +614,8 @@ ata_48bit_cmd(struct ccb_ataio *ataio, uint8_t cmd, ui cmd == ATA_WRITE_DMA_QUEUED_FUA48 || cmd == ATA_WRITE_STREAM_DMA48 || cmd == ATA_DATA_SET_MANAGEMENT || - cmd == ATA_READ_LOG_DMA_EXT) + cmd == ATA_READ_LOG_DMA_EXT || + cmd == ATA_WRITE_LOG_DMA_EXT) ataio->cmd.flags |= CAM_ATAIO_DMA; ataio->cmd.command = cmd; ataio->cmd.features = features; Modified: stable/12/sys/sys/ata.h ============================================================================== --- stable/12/sys/sys/ata.h Thu Apr 11 13:01:26 2019 (r346121) +++ stable/12/sys/sys/ata.h Thu Apr 11 13:11:20 2019 (r346122) @@ -393,6 +393,12 @@ struct ata_params { #define ATA_READ_LOG_DMA_EXT 0x47 /* read log DMA ext - PIO Data-In */ #define ATA_ZAC_MANAGEMENT_IN 0x4a /* ZAC management in */ #define ATA_ZM_REPORT_ZONES 0x00 /* report zones */ +#define ATA_WRITE_LOG_DMA_EXT 0x57 /* WRITE LOG DMA EXT */ +#define ATA_TRUSTED_NON_DATA 0x5b /* TRUSTED NON-DATA */ +#define ATA_TRUSTED_RECEIVE 0x5c /* TRUSTED RECEIVE */ +#define ATA_TRUSTED_RECEIVE_DMA 0x5d /* TRUSTED RECEIVE DMA */ +#define ATA_TRUSTED_SEND 0x5c /* TRUSTED SEND */ +#define ATA_TRUSTED_SEND_DMA 0x5d /* TRUSTED SEND DMA */ #define ATA_READ_FPDMA_QUEUED 0x60 /* read DMA NCQ */ #define ATA_WRITE_FPDMA_QUEUED 0x61 /* write DMA NCQ */ #define ATA_NCQ_NON_DATA 0x63 /* NCQ non-data command */ @@ -417,6 +423,8 @@ struct ata_params { #define ATA_ZM_FINISH_ZONE 0x02 /* finish zone */ #define ATA_ZM_OPEN_ZONE 0x03 /* open zone */ #define ATA_ZM_RWP 0x04 /* reset write pointer */ +#define ATA_DOWNLOAD_MICROCODE 0x92 /* DOWNLOAD MICROCODE */ +#define ATA_DOWNLOAD_MICROCODE_DMA 0x93 /* DOWNLOAD MICROCODE DMA */ #define ATA_PACKET_CMD 0xa0 /* packet command */ #define ATA_ATAPI_IDENTIFY 0xa1 /* get ATAPI params*/ #define ATA_SERVICE 0xa2 /* service command */ @@ -439,8 +447,11 @@ struct ata_params { #define ATA_CHECK_POWER_MODE 0xe5 /* device power mode */ #define ATA_SLEEP 0xe6 /* sleep */ #define ATA_FLUSHCACHE 0xe7 /* flush cache to disk */ +#define ATA_WRITE_BUFFER 0xe8 /* write buffer */ #define ATA_WRITE_PM 0xe8 /* write portmultiplier */ +#define ATA_READ_BUFFER_DMA 0xe9 /* read buffer DMA */ #define ATA_FLUSHCACHE48 0xea /* flush cache to disk */ +#define ATA_WRITE_BUFFER_DMA 0xeb /* write buffer DMA */ #define ATA_ATA_IDENTIFY 0xec /* get ATA params */ #define ATA_SETFEATURES 0xef /* features command */ #define ATA_SF_ENAB_WCACHE 0x02 /* enable write cache */ From owner-svn-src-all@freebsd.org Thu Apr 11 13:11:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2C88615844CC; Thu, 11 Apr 2019 13:11:47 +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 BEF6F8DBE9; Thu, 11 Apr 2019 13:11:46 +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 968A4A9C2; Thu, 11 Apr 2019 13:11:46 +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 x3BDBkla077817; Thu, 11 Apr 2019 13:11:46 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDBkhv077815; Thu, 11 Apr 2019 13:11:46 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904111311.x3BDBkhv077815@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 11 Apr 2019 13:11: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: r346123 - in stable/11/sys: cam/ata sys X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: in stable/11/sys: cam/ata sys X-SVN-Commit-Revision: 346123 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BEF6F8DBE9 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:11:47 -0000 Author: mav Date: Thu Apr 11 13:11:45 2019 New Revision: 346123 URL: https://svnweb.freebsd.org/changeset/base/346123 Log: MFC r345849: List few more ATA commands. Modified: stable/11/sys/cam/ata/ata_all.c stable/11/sys/sys/ata.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ata/ata_all.c ============================================================================== --- stable/11/sys/cam/ata/ata_all.c Thu Apr 11 13:11:20 2019 (r346122) +++ stable/11/sys/cam/ata/ata_all.c Thu Apr 11 13:11:45 2019 (r346123) @@ -213,8 +213,10 @@ ata_op_string(struct ata_cmd *cmd) case 0xe5: return ("CHECK_POWER_MODE"); case 0xe6: return ("SLEEP"); case 0xe7: return ("FLUSHCACHE"); - case 0xe8: return ("WRITE_PM"); + case 0xe8: return ("WRITE_BUFFER/PM"); + case 0xe9: return ("READ_BUFFER_DMA"); case 0xea: return ("FLUSHCACHE48"); + case 0xeb: return ("WRITE_BUFFER_DMA"); case 0xec: return ("ATA_IDENTIFY"); case 0xed: return ("MEDIA_EJECT"); case 0xef: @@ -498,7 +500,12 @@ ata_28bit_cmd(struct ccb_ataio *ataio, uint8_t cmd, ui if (cmd == ATA_READ_DMA || cmd == ATA_READ_DMA_QUEUED || cmd == ATA_WRITE_DMA || - cmd == ATA_WRITE_DMA_QUEUED) + cmd == ATA_WRITE_DMA_QUEUED || + cmd == ATA_TRUSTED_RECEIVE_DMA || + cmd == ATA_TRUSTED_SEND_DMA || + cmd == ATA_DOWNLOAD_MICROCODE_DMA || + cmd == ATA_READ_BUFFER_DMA || + cmd == ATA_WRITE_BUFFER_DMA) ataio->cmd.flags |= CAM_ATAIO_DMA; ataio->cmd.command = cmd; ataio->cmd.features = features; @@ -524,7 +531,8 @@ ata_48bit_cmd(struct ccb_ataio *ataio, uint8_t cmd, ui cmd == ATA_WRITE_DMA_QUEUED_FUA48 || cmd == ATA_WRITE_STREAM_DMA48 || cmd == ATA_DATA_SET_MANAGEMENT || - cmd == ATA_READ_LOG_DMA_EXT) + cmd == ATA_READ_LOG_DMA_EXT || + cmd == ATA_WRITE_LOG_DMA_EXT) ataio->cmd.flags |= CAM_ATAIO_DMA; ataio->cmd.command = cmd; ataio->cmd.features = features; Modified: stable/11/sys/sys/ata.h ============================================================================== --- stable/11/sys/sys/ata.h Thu Apr 11 13:11:20 2019 (r346122) +++ stable/11/sys/sys/ata.h Thu Apr 11 13:11:45 2019 (r346123) @@ -391,6 +391,12 @@ struct ata_params { #define ATA_READ_LOG_DMA_EXT 0x47 /* read log DMA ext - PIO Data-In */ #define ATA_ZAC_MANAGEMENT_IN 0x4a /* ZAC management in */ #define ATA_ZM_REPORT_ZONES 0x00 /* report zones */ +#define ATA_WRITE_LOG_DMA_EXT 0x57 /* WRITE LOG DMA EXT */ +#define ATA_TRUSTED_NON_DATA 0x5b /* TRUSTED NON-DATA */ +#define ATA_TRUSTED_RECEIVE 0x5c /* TRUSTED RECEIVE */ +#define ATA_TRUSTED_RECEIVE_DMA 0x5d /* TRUSTED RECEIVE DMA */ +#define ATA_TRUSTED_SEND 0x5c /* TRUSTED SEND */ +#define ATA_TRUSTED_SEND_DMA 0x5d /* TRUSTED SEND DMA */ #define ATA_READ_FPDMA_QUEUED 0x60 /* read DMA NCQ */ #define ATA_WRITE_FPDMA_QUEUED 0x61 /* write DMA NCQ */ #define ATA_NCQ_NON_DATA 0x63 /* NCQ non-data command */ @@ -415,6 +421,8 @@ struct ata_params { #define ATA_ZM_FINISH_ZONE 0x02 /* finish zone */ #define ATA_ZM_OPEN_ZONE 0x03 /* open zone */ #define ATA_ZM_RWP 0x04 /* reset write pointer */ +#define ATA_DOWNLOAD_MICROCODE 0x92 /* DOWNLOAD MICROCODE */ +#define ATA_DOWNLOAD_MICROCODE_DMA 0x93 /* DOWNLOAD MICROCODE DMA */ #define ATA_PACKET_CMD 0xa0 /* packet command */ #define ATA_ATAPI_IDENTIFY 0xa1 /* get ATAPI params*/ #define ATA_SERVICE 0xa2 /* service command */ @@ -437,8 +445,11 @@ struct ata_params { #define ATA_CHECK_POWER_MODE 0xe5 /* device power mode */ #define ATA_SLEEP 0xe6 /* sleep */ #define ATA_FLUSHCACHE 0xe7 /* flush cache to disk */ +#define ATA_WRITE_BUFFER 0xe8 /* write buffer */ #define ATA_WRITE_PM 0xe8 /* write portmultiplier */ +#define ATA_READ_BUFFER_DMA 0xe9 /* read buffer DMA */ #define ATA_FLUSHCACHE48 0xea /* flush cache to disk */ +#define ATA_WRITE_BUFFER_DMA 0xeb /* write buffer DMA */ #define ATA_ATA_IDENTIFY 0xec /* get ATA params */ #define ATA_SETFEATURES 0xef /* features command */ #define ATA_SF_ENAB_WCACHE 0x02 /* enable write cache */ From owner-svn-src-all@freebsd.org Thu Apr 11 13:12:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6E499158463F; Thu, 11 Apr 2019 13:12:26 +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 E01908DD83; Thu, 11 Apr 2019 13:12:25 +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 B5E67A9F3; Thu, 11 Apr 2019 13:12:25 +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 x3BDCPwF080955; Thu, 11 Apr 2019 13:12:25 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDCPch080954; Thu, 11 Apr 2019 13:12:25 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904111312.x3BDCPch080954@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 11 Apr 2019 13:12:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346124 - stable/12/sys/sys X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/sys/sys X-SVN-Commit-Revision: 346124 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E01908DD83 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:12:26 -0000 Author: mav Date: Thu Apr 11 13:12:25 2019 New Revision: 346124 URL: https://svnweb.freebsd.org/changeset/base/346124 Log: MFC r345850: Fix typos in r345849. Modified: stable/12/sys/sys/ata.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/sys/ata.h ============================================================================== --- stable/12/sys/sys/ata.h Thu Apr 11 13:11:45 2019 (r346123) +++ stable/12/sys/sys/ata.h Thu Apr 11 13:12:25 2019 (r346124) @@ -397,8 +397,8 @@ struct ata_params { #define ATA_TRUSTED_NON_DATA 0x5b /* TRUSTED NON-DATA */ #define ATA_TRUSTED_RECEIVE 0x5c /* TRUSTED RECEIVE */ #define ATA_TRUSTED_RECEIVE_DMA 0x5d /* TRUSTED RECEIVE DMA */ -#define ATA_TRUSTED_SEND 0x5c /* TRUSTED SEND */ -#define ATA_TRUSTED_SEND_DMA 0x5d /* TRUSTED SEND DMA */ +#define ATA_TRUSTED_SEND 0x5e /* TRUSTED SEND */ +#define ATA_TRUSTED_SEND_DMA 0x5f /* TRUSTED SEND DMA */ #define ATA_READ_FPDMA_QUEUED 0x60 /* read DMA NCQ */ #define ATA_WRITE_FPDMA_QUEUED 0x61 /* write DMA NCQ */ #define ATA_NCQ_NON_DATA 0x63 /* NCQ non-data command */ From owner-svn-src-all@freebsd.org Thu Apr 11 13:12:45 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0378B15846AE; Thu, 11 Apr 2019 13:12: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 5C1B48DEA1; Thu, 11 Apr 2019 13:12: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 34DEDA9FC; Thu, 11 Apr 2019 13:12: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 x3BDCiRb081029; Thu, 11 Apr 2019 13:12:44 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDCif1081028; Thu, 11 Apr 2019 13:12:44 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904111312.x3BDCif1081028@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 11 Apr 2019 13:12: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: r346125 - stable/11/sys/sys X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sys/sys X-SVN-Commit-Revision: 346125 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5C1B48DEA1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:12:45 -0000 Author: mav Date: Thu Apr 11 13:12:43 2019 New Revision: 346125 URL: https://svnweb.freebsd.org/changeset/base/346125 Log: MFC r345850: Fix typos in r345849. Modified: stable/11/sys/sys/ata.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/sys/ata.h ============================================================================== --- stable/11/sys/sys/ata.h Thu Apr 11 13:12:25 2019 (r346124) +++ stable/11/sys/sys/ata.h Thu Apr 11 13:12:43 2019 (r346125) @@ -395,8 +395,8 @@ struct ata_params { #define ATA_TRUSTED_NON_DATA 0x5b /* TRUSTED NON-DATA */ #define ATA_TRUSTED_RECEIVE 0x5c /* TRUSTED RECEIVE */ #define ATA_TRUSTED_RECEIVE_DMA 0x5d /* TRUSTED RECEIVE DMA */ -#define ATA_TRUSTED_SEND 0x5c /* TRUSTED SEND */ -#define ATA_TRUSTED_SEND_DMA 0x5d /* TRUSTED SEND DMA */ +#define ATA_TRUSTED_SEND 0x5e /* TRUSTED SEND */ +#define ATA_TRUSTED_SEND_DMA 0x5f /* TRUSTED SEND DMA */ #define ATA_READ_FPDMA_QUEUED 0x60 /* read DMA NCQ */ #define ATA_WRITE_FPDMA_QUEUED 0x61 /* write DMA NCQ */ #define ATA_NCQ_NON_DATA 0x63 /* NCQ non-data command */ From owner-svn-src-all@freebsd.org Thu Apr 11 13:17:52 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4A8D81584862; Thu, 11 Apr 2019 13:17:52 +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 DF18E8E156; Thu, 11 Apr 2019 13:17:51 +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 B2F8DAA00; Thu, 11 Apr 2019 13:17:51 +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 x3BDHpMe081326; Thu, 11 Apr 2019 13:17:51 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDHpMI081325; Thu, 11 Apr 2019 13:17:51 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904111317.x3BDHpMI081325@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 11 Apr 2019 13:17:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346126 - stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 346126 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: DF18E8E156 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:17:52 -0000 Author: mav Date: Thu Apr 11 13:17:51 2019 New Revision: 346126 URL: https://svnweb.freebsd.org/changeset/base/346126 Log: MFC r344926: MFV/ZoL: Fix zfs_vdev_aggregation_limit bounds checking Update the bounds checking for zfs_vdev_aggregation_limit so that it has a floor of zero and a maximum value of the supported block size for the pool. Additionally add an early return when zfs_vdev_aggregation_limit equals zero to disable aggregation. For very fast solid state or memory devices it may be more expensive to perform the aggregation than to issue the IO immediately. Author: Brian Behlendorf zfsonlinux/zfs@a58df6f53687ac6d1dee21f60de41b2552a43201 MFV/ZoL: Cap maximum aggregate IO size Commit 8542ef8 allowed optional IOs to be aggregated beyond the specified aggregation limit. Since the aggregation limit was also used to enforce the maximum block size, setting `zfs_vdev_aggregation_limit=16777216` could result in an attempt to allocate an ABD larger than 16M. Author: Brian Behlendorf Reviewed by: Matthew Ahrens Reviewed-by: George Melikov Reviewed-by: Giuseppe Di Natale Signed-off-by: Brian Behlendorf Closes #6259 Closes #6270 zfsonlinux/zfs@2d678f779aba26a93314c8ee1142c3985fa25cb6 Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:12:43 2019 (r346125) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:17:51 2019 (r346126) @@ -673,13 +673,18 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) zio_link_t *zl = NULL; uint64_t maxgap = 0; uint64_t size; + uint64_t limit; + int maxblocksize; boolean_t stretch; avl_tree_t *t; enum zio_flag flags; ASSERT(MUTEX_HELD(&vq->vq_lock)); - if (zio->io_flags & ZIO_FLAG_DONT_AGGREGATE) + maxblocksize = spa_maxblocksize(vq->vq_vdev->vdev_spa); + limit = MAX(MIN(zfs_vdev_aggregation_limit, maxblocksize), 0); + + if (zio->io_flags & ZIO_FLAG_DONT_AGGREGATE || limit == 0) return (NULL); first = last = zio; @@ -710,7 +715,7 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) t = vdev_queue_type_tree(vq, zio->io_type); while (t != NULL && (dio = AVL_PREV(t, first)) != NULL && (dio->io_flags & ZIO_FLAG_AGG_INHERIT) == flags && - IO_SPAN(dio, last) <= zfs_vdev_aggregation_limit && + IO_SPAN(dio, last) <= limit && IO_GAP(dio, first) <= maxgap && dio->io_type == zio->io_type) { first = dio; @@ -734,8 +739,9 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) */ while ((dio = AVL_NEXT(t, last)) != NULL && (dio->io_flags & ZIO_FLAG_AGG_INHERIT) == flags && - (IO_SPAN(first, dio) <= zfs_vdev_aggregation_limit || + (IO_SPAN(first, dio) <= limit || (dio->io_flags & ZIO_FLAG_OPTIONAL)) && + IO_SPAN(first, dio) <= maxblocksize && IO_GAP(last, dio) <= maxgap && dio->io_type == zio->io_type) { last = dio; @@ -789,7 +795,7 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) return (NULL); size = IO_SPAN(first, last); - ASSERT3U(size, <=, SPA_MAXBLOCKSIZE); + ASSERT3U(size, <=, maxblocksize); aio = zio_vdev_delegated_io(first->io_vd, first->io_offset, abd_alloc_for_io(size, B_TRUE), size, first->io_type, From owner-svn-src-all@freebsd.org Thu Apr 11 13:18:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1E05415848A2; Thu, 11 Apr 2019 13:18:10 +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 AEE418E26F; Thu, 11 Apr 2019 13:18:09 +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 709ABAA01; Thu, 11 Apr 2019 13:18:09 +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 x3BDI9CE081399; Thu, 11 Apr 2019 13:18:09 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDI9CO081398; Thu, 11 Apr 2019 13:18:09 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904111318.x3BDI9CO081398@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 11 Apr 2019 13:18:09 +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: r346127 - stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 346127 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AEE418E26F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:18:10 -0000 Author: mav Date: Thu Apr 11 13:18:09 2019 New Revision: 346127 URL: https://svnweb.freebsd.org/changeset/base/346127 Log: MFC r344926: MFV/ZoL: Fix zfs_vdev_aggregation_limit bounds checking Update the bounds checking for zfs_vdev_aggregation_limit so that it has a floor of zero and a maximum value of the supported block size for the pool. Additionally add an early return when zfs_vdev_aggregation_limit equals zero to disable aggregation. For very fast solid state or memory devices it may be more expensive to perform the aggregation than to issue the IO immediately. Author: Brian Behlendorf zfsonlinux/zfs@a58df6f53687ac6d1dee21f60de41b2552a43201 MFV/ZoL: Cap maximum aggregate IO size Commit 8542ef8 allowed optional IOs to be aggregated beyond the specified aggregation limit. Since the aggregation limit was also used to enforce the maximum block size, setting `zfs_vdev_aggregation_limit=16777216` could result in an attempt to allocate an ABD larger than 16M. Author: Brian Behlendorf Reviewed by: Matthew Ahrens Reviewed-by: George Melikov Reviewed-by: Giuseppe Di Natale Signed-off-by: Brian Behlendorf Closes #6259 Closes #6270 zfsonlinux/zfs@2d678f779aba26a93314c8ee1142c3985fa25cb6 Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:17:51 2019 (r346126) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:18:09 2019 (r346127) @@ -669,13 +669,18 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) zio_link_t *zl = NULL; uint64_t maxgap = 0; uint64_t size; + uint64_t limit; + int maxblocksize; boolean_t stretch; avl_tree_t *t; enum zio_flag flags; ASSERT(MUTEX_HELD(&vq->vq_lock)); - if (zio->io_flags & ZIO_FLAG_DONT_AGGREGATE) + maxblocksize = spa_maxblocksize(vq->vq_vdev->vdev_spa); + limit = MAX(MIN(zfs_vdev_aggregation_limit, maxblocksize), 0); + + if (zio->io_flags & ZIO_FLAG_DONT_AGGREGATE || limit == 0) return (NULL); first = last = zio; @@ -706,7 +711,7 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) t = vdev_queue_type_tree(vq, zio->io_type); while (t != NULL && (dio = AVL_PREV(t, first)) != NULL && (dio->io_flags & ZIO_FLAG_AGG_INHERIT) == flags && - IO_SPAN(dio, last) <= zfs_vdev_aggregation_limit && + IO_SPAN(dio, last) <= limit && IO_GAP(dio, first) <= maxgap && dio->io_type == zio->io_type) { first = dio; @@ -730,8 +735,9 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) */ while ((dio = AVL_NEXT(t, last)) != NULL && (dio->io_flags & ZIO_FLAG_AGG_INHERIT) == flags && - (IO_SPAN(first, dio) <= zfs_vdev_aggregation_limit || + (IO_SPAN(first, dio) <= limit || (dio->io_flags & ZIO_FLAG_OPTIONAL)) && + IO_SPAN(first, dio) <= maxblocksize && IO_GAP(last, dio) <= maxgap && dio->io_type == zio->io_type) { last = dio; @@ -785,7 +791,7 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) return (NULL); size = IO_SPAN(first, last); - ASSERT3U(size, <=, SPA_MAXBLOCKSIZE); + ASSERT3U(size, <=, maxblocksize); aio = zio_vdev_delegated_io(first->io_vd, first->io_offset, abd_alloc_for_io(size, B_TRUE), size, first->io_type, From owner-svn-src-all@freebsd.org Thu Apr 11 13:19:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 08EAE158499C; Thu, 11 Apr 2019 13:19:27 +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 A12B38E444; Thu, 11 Apr 2019 13:19:26 +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 6F797AA02; Thu, 11 Apr 2019 13:19:26 +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 x3BDJQaA081507; Thu, 11 Apr 2019 13:19:26 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDJQIT081506; Thu, 11 Apr 2019 13:19:26 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904111319.x3BDJQIT081506@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 11 Apr 2019 13:19:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346128 - stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 346128 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A12B38E444 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:19:27 -0000 Author: mav Date: Thu Apr 11 13:19:26 2019 New Revision: 346128 URL: https://svnweb.freebsd.org/changeset/base/346128 Log: MFC r344934, r345014: Add separate aggregation limit for non-rotating media. Before sequential scrub patches ZFS never aggregated I/Os above 128KB. Sequential scrub bumped that to 1MB, which motivation I understand for spinning disks, since it should reduce number of head seeks. But for SSDs it makes much less sense to me, especially on FreeBSD, where due to MAXPHYS limitation device will likely still see bunch of 128KB I/Os instead of one large. Having more strict aggregation limit allows to avoid allocation of large memory buffer and memcpy to/from it, that is a serious problem when bandwidth reaches few GB/s. Sponsored by: iXsystems, Inc. Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:18:09 2019 (r346127) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:19:26 2019 (r346128) @@ -178,6 +178,7 @@ int zfs_vdev_async_write_active_max_dirty_percent = 60 * they aren't able to help us aggregate at this level. */ int zfs_vdev_aggregation_limit = 1 << 20; +int zfs_vdev_aggregation_limit_non_rotating = SPA_OLD_MAXBLOCKSIZE; int zfs_vdev_read_gap_limit = 32 << 10; int zfs_vdev_write_gap_limit = 4 << 10; @@ -262,6 +263,9 @@ ZFS_VDEV_QUEUE_KNOB_MAX(initializing); SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, aggregation_limit, CTLFLAG_RWTUN, &zfs_vdev_aggregation_limit, 0, "I/O requests are aggregated up to this size"); +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, aggregation_limit_non_rotating, CTLFLAG_RWTUN, + &zfs_vdev_aggregation_limit_non_rotating, 0, + "I/O requests are aggregated up to this size for non-rotating media"); SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, read_gap_limit, CTLFLAG_RWTUN, &zfs_vdev_read_gap_limit, 0, "Acceptable gap between two reads being aggregated"); @@ -682,7 +686,11 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) ASSERT(MUTEX_HELD(&vq->vq_lock)); maxblocksize = spa_maxblocksize(vq->vq_vdev->vdev_spa); - limit = MAX(MIN(zfs_vdev_aggregation_limit, maxblocksize), 0); + if (vq->vq_vdev->vdev_rotation_rate == VDEV_RATE_NON_ROTATING) + limit = zfs_vdev_aggregation_limit_non_rotating; + else + limit = zfs_vdev_aggregation_limit; + limit = MAX(MIN(limit, maxblocksize), 0); if (zio->io_flags & ZIO_FLAG_DONT_AGGREGATE || limit == 0) return (NULL); From owner-svn-src-all@freebsd.org Thu Apr 11 13:19:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5D5601584A16; Thu, 11 Apr 2019 13:19:47 +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 053558E553; Thu, 11 Apr 2019 13:19:47 +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 B94F9AA03; Thu, 11 Apr 2019 13:19:46 +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 x3BDJkss081580; Thu, 11 Apr 2019 13:19:46 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDJkIR081579; Thu, 11 Apr 2019 13:19:46 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904111319.x3BDJkIR081579@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 11 Apr 2019 13:19: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: r346129 - stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 346129 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 053558E553 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:19:47 -0000 Author: mav Date: Thu Apr 11 13:19:46 2019 New Revision: 346129 URL: https://svnweb.freebsd.org/changeset/base/346129 Log: MFC r344934, r345014: Add separate aggregation limit for non-rotating media. Before sequential scrub patches ZFS never aggregated I/Os above 128KB. Sequential scrub bumped that to 1MB, which motivation I understand for spinning disks, since it should reduce number of head seeks. But for SSDs it makes much less sense to me, especially on FreeBSD, where due to MAXPHYS limitation device will likely still see bunch of 128KB I/Os instead of one large. Having more strict aggregation limit allows to avoid allocation of large memory buffer and memcpy to/from it, that is a serious problem when bandwidth reaches few GB/s. Sponsored by: iXsystems, Inc. Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:19:26 2019 (r346128) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:19:46 2019 (r346129) @@ -178,6 +178,7 @@ int zfs_vdev_async_write_active_max_dirty_percent = 60 * they aren't able to help us aggregate at this level. */ int zfs_vdev_aggregation_limit = 1 << 20; +int zfs_vdev_aggregation_limit_non_rotating = SPA_OLD_MAXBLOCKSIZE; int zfs_vdev_read_gap_limit = 32 << 10; int zfs_vdev_write_gap_limit = 4 << 10; @@ -258,6 +259,9 @@ ZFS_VDEV_QUEUE_KNOB_MAX(trim); SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, aggregation_limit, CTLFLAG_RWTUN, &zfs_vdev_aggregation_limit, 0, "I/O requests are aggregated up to this size"); +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, aggregation_limit_non_rotating, CTLFLAG_RWTUN, + &zfs_vdev_aggregation_limit_non_rotating, 0, + "I/O requests are aggregated up to this size for non-rotating media"); SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, read_gap_limit, CTLFLAG_RWTUN, &zfs_vdev_read_gap_limit, 0, "Acceptable gap between two reads being aggregated"); @@ -678,7 +682,11 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) ASSERT(MUTEX_HELD(&vq->vq_lock)); maxblocksize = spa_maxblocksize(vq->vq_vdev->vdev_spa); - limit = MAX(MIN(zfs_vdev_aggregation_limit, maxblocksize), 0); + if (vq->vq_vdev->vdev_rotation_rate == VDEV_RATE_NON_ROTATING) + limit = zfs_vdev_aggregation_limit_non_rotating; + else + limit = zfs_vdev_aggregation_limit; + limit = MAX(MIN(limit, maxblocksize), 0); if (zio->io_flags & ZIO_FLAG_DONT_AGGREGATE || limit == 0) return (NULL); From owner-svn-src-all@freebsd.org Thu Apr 11 13:20:51 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 006BD1584AE5; Thu, 11 Apr 2019 13:20:51 +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 964DB8E708; Thu, 11 Apr 2019 13:20:50 +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 6E2F7AA1F; Thu, 11 Apr 2019 13:20:50 +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 x3BDKoqi082522; Thu, 11 Apr 2019 13:20:50 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDKn4G082515; Thu, 11 Apr 2019 13:20:49 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904111320.x3BDKn4G082515@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 11 Apr 2019 13:20:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346130 - in stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: in stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys X-SVN-Commit-Revision: 346130 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 964DB8E708 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:20:51 -0000 Author: mav Date: Thu Apr 11 13:20:48 2019 New Revision: 346130 URL: https://svnweb.freebsd.org/changeset/base/346130 Log: MFC r344936: MFV/ZoL: Disable LBA weighting on files and SSDs The LBA weighting makes sense on rotational media where the outer tracks have twice the bandwidth of the inner tracks. However, it is detrimental on nonrotational media such as solid state disks, where the only effect is to ensure that metaslabs enter the best-fit allocation behavior sooner, which is detrimental to performance. It also makes no sense on files where the underlying filesystem can arrange things however it wants. Author: Richard Yao Signed-off-by: Richard Yao Signed-off-by: Brian Behlendorf Closes #3712 zfsonlinux/zfs@fb40095f5f0853946f8150481ca22602d1334dfe To reduce code divergence this merge replaces equivalent but different FreeBSD code detecting non-rotating medium vdevs. Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c Thu Apr 11 13:19:46 2019 (r346129) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c Thu Apr 11 13:20:48 2019 (r346130) @@ -1830,7 +1830,7 @@ metaslab_space_weight(metaslab_t *msp) * In effect, this means that we'll select the metaslab with the most * free bandwidth rather than simply the one with the most free space. */ - if (metaslab_lba_weighting_enabled) { + if (!vd->vdev_nonrot && metaslab_lba_weighting_enabled) { weight = 2 * weight - (msp->ms_id * weight) / vd->vdev_ms_count; ASSERT(weight >= space && weight <= 2 * space); } Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h Thu Apr 11 13:19:46 2019 (r346129) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h Thu Apr 11 13:20:48 2019 (r346130) @@ -235,6 +235,7 @@ struct vdev { vdev_stat_t vdev_stat; /* virtual device statistics */ boolean_t vdev_expanding; /* expand the vdev? */ boolean_t vdev_reopening; /* reopen in progress? */ + boolean_t vdev_nonrot; /* true if solid state */ int vdev_open_error; /* error on last open */ kthread_t *vdev_open_thread; /* thread opening children */ uint64_t vdev_crtxg; /* txg when top-level was added */ @@ -372,9 +373,6 @@ struct vdev { zio_t *vdev_probe_zio; /* root of current probe */ vdev_aux_t vdev_label_aux; /* on-disk aux state */ struct trim_map *vdev_trimmap; /* map on outstanding trims */ - uint16_t vdev_rotation_rate; /* rotational rate of the media */ -#define VDEV_RATE_UNKNOWN 0 -#define VDEV_RATE_NON_ROTATING 1 uint64_t vdev_leaf_zap; /* Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Thu Apr 11 13:19:46 2019 (r346129) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Thu Apr 11 13:20:48 2019 (r346130) @@ -1476,15 +1476,19 @@ vdev_open_children(vdev_t *vd) taskq_t *tq; int children = vd->vdev_children; + vd->vdev_nonrot = B_TRUE; + /* * in order to handle pools on top of zvols, do the opens * in a single thread so that the same thread holds the * spa_namespace_lock */ if (B_TRUE || vdev_uses_zvols(vd)) { - for (int c = 0; c < children; c++) + for (int c = 0; c < children; c++) { vd->vdev_child[c]->vdev_open_error = vdev_open(vd->vdev_child[c]); + vd->vdev_nonrot &= vd->vdev_child[c]->vdev_nonrot; + } return; } tq = taskq_create("vdev_open", children, minclsyspri, @@ -1495,6 +1499,9 @@ vdev_open_children(vdev_t *vd) TQ_SLEEP) != 0); taskq_destroy(tq); + + for (int c = 0; c < children; c++) + vd->vdev_nonrot &= vd->vdev_child[c]->vdev_nonrot; } /* Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c Thu Apr 11 13:19:46 2019 (r346129) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c Thu Apr 11 13:20:48 2019 (r346130) @@ -72,6 +72,9 @@ vdev_file_open(vdev_t *vd, uint64_t *psize, uint64_t * vattr_t vattr; int error; + /* Rotational optimizations only make sense on block devices */ + vd->vdev_nonrot = B_TRUE; + /* * We must have a pathname, and it must be absolute. */ Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Thu Apr 11 13:19:46 2019 (r346129) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Thu Apr 11 13:20:48 2019 (r346130) @@ -88,10 +88,10 @@ vdev_geom_set_rotation_rate(vdev_t *vd, struct g_consu uint16_t rate; error = g_getattr("GEOM::rotation_rate", cp, &rate); - if (error == 0) - vd->vdev_rotation_rate = rate; + if (error == 0 && rate == 1) + vd->vdev_nonrot = B_TRUE; else - vd->vdev_rotation_rate = VDEV_RATE_UNKNOWN; + vd->vdev_nonrot = B_FALSE; } static void Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c Thu Apr 11 13:19:46 2019 (r346129) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c Thu Apr 11 13:20:48 2019 (r346130) @@ -169,7 +169,7 @@ vdev_mirror_load(mirror_map_t *mm, vdev_t *vd, uint64_ load = vdev_queue_length(vd); lastoffset = vdev_queue_lastoffset(vd); - if (vd->vdev_rotation_rate == VDEV_RATE_NON_ROTATING) { + if (vd->vdev_nonrot) { /* Non-rotating media. */ if (lastoffset == zio_offset) return (load + non_rotating_inc); Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:19:46 2019 (r346129) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:20:48 2019 (r346130) @@ -686,7 +686,7 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) ASSERT(MUTEX_HELD(&vq->vq_lock)); maxblocksize = spa_maxblocksize(vq->vq_vdev->vdev_spa); - if (vq->vq_vdev->vdev_rotation_rate == VDEV_RATE_NON_ROTATING) + if (vq->vq_vdev->vdev_nonrot) limit = zfs_vdev_aggregation_limit_non_rotating; else limit = zfs_vdev_aggregation_limit; From owner-svn-src-all@freebsd.org Thu Apr 11 13:21:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 82D6B1584B34; Thu, 11 Apr 2019 13:21:12 +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 244658E861; Thu, 11 Apr 2019 13:21:12 +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 F1022AB41; Thu, 11 Apr 2019 13:21:11 +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 x3BDLBco083323; Thu, 11 Apr 2019 13:21:11 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDLAq1083317; Thu, 11 Apr 2019 13:21:10 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904111321.x3BDLAq1083317@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 11 Apr 2019 13:21: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: r346131 - in stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: in stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys X-SVN-Commit-Revision: 346131 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 244658E861 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:21:12 -0000 Author: mav Date: Thu Apr 11 13:21:10 2019 New Revision: 346131 URL: https://svnweb.freebsd.org/changeset/base/346131 Log: MFC r344936: MFV/ZoL: Disable LBA weighting on files and SSDs The LBA weighting makes sense on rotational media where the outer tracks have twice the bandwidth of the inner tracks. However, it is detrimental on nonrotational media such as solid state disks, where the only effect is to ensure that metaslabs enter the best-fit allocation behavior sooner, which is detrimental to performance. It also makes no sense on files where the underlying filesystem can arrange things however it wants. Author: Richard Yao Signed-off-by: Richard Yao Signed-off-by: Brian Behlendorf Closes #3712 zfsonlinux/zfs@fb40095f5f0853946f8150481ca22602d1334dfe To reduce code divergence this merge replaces equivalent but different FreeBSD code detecting non-rotating medium vdevs. Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c Thu Apr 11 13:20:48 2019 (r346130) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c Thu Apr 11 13:21:10 2019 (r346131) @@ -1830,7 +1830,7 @@ metaslab_space_weight(metaslab_t *msp) * In effect, this means that we'll select the metaslab with the most * free bandwidth rather than simply the one with the most free space. */ - if (metaslab_lba_weighting_enabled) { + if (!vd->vdev_nonrot && metaslab_lba_weighting_enabled) { weight = 2 * weight - (msp->ms_id * weight) / vd->vdev_ms_count; ASSERT(weight >= space && weight <= 2 * space); } Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h Thu Apr 11 13:20:48 2019 (r346130) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h Thu Apr 11 13:21:10 2019 (r346131) @@ -235,6 +235,7 @@ struct vdev { vdev_stat_t vdev_stat; /* virtual device statistics */ boolean_t vdev_expanding; /* expand the vdev? */ boolean_t vdev_reopening; /* reopen in progress? */ + boolean_t vdev_nonrot; /* true if solid state */ int vdev_open_error; /* error on last open */ kthread_t *vdev_open_thread; /* thread opening children */ uint64_t vdev_crtxg; /* txg when top-level was added */ @@ -372,9 +373,6 @@ struct vdev { zio_t *vdev_probe_zio; /* root of current probe */ vdev_aux_t vdev_label_aux; /* on-disk aux state */ struct trim_map *vdev_trimmap; /* map on outstanding trims */ - uint16_t vdev_rotation_rate; /* rotational rate of the media */ -#define VDEV_RATE_UNKNOWN 0 -#define VDEV_RATE_NON_ROTATING 1 uint64_t vdev_leaf_zap; /* Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Thu Apr 11 13:20:48 2019 (r346130) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Thu Apr 11 13:21:10 2019 (r346131) @@ -1476,15 +1476,19 @@ vdev_open_children(vdev_t *vd) taskq_t *tq; int children = vd->vdev_children; + vd->vdev_nonrot = B_TRUE; + /* * in order to handle pools on top of zvols, do the opens * in a single thread so that the same thread holds the * spa_namespace_lock */ if (B_TRUE || vdev_uses_zvols(vd)) { - for (int c = 0; c < children; c++) + for (int c = 0; c < children; c++) { vd->vdev_child[c]->vdev_open_error = vdev_open(vd->vdev_child[c]); + vd->vdev_nonrot &= vd->vdev_child[c]->vdev_nonrot; + } return; } tq = taskq_create("vdev_open", children, minclsyspri, @@ -1495,6 +1499,9 @@ vdev_open_children(vdev_t *vd) TQ_SLEEP) != 0); taskq_destroy(tq); + + for (int c = 0; c < children; c++) + vd->vdev_nonrot &= vd->vdev_child[c]->vdev_nonrot; } /* Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c Thu Apr 11 13:20:48 2019 (r346130) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c Thu Apr 11 13:21:10 2019 (r346131) @@ -72,6 +72,9 @@ vdev_file_open(vdev_t *vd, uint64_t *psize, uint64_t * vattr_t vattr; int error; + /* Rotational optimizations only make sense on block devices */ + vd->vdev_nonrot = B_TRUE; + /* * We must have a pathname, and it must be absolute. */ Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Thu Apr 11 13:20:48 2019 (r346130) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Thu Apr 11 13:21:10 2019 (r346131) @@ -88,10 +88,10 @@ vdev_geom_set_rotation_rate(vdev_t *vd, struct g_consu uint16_t rate; error = g_getattr("GEOM::rotation_rate", cp, &rate); - if (error == 0) - vd->vdev_rotation_rate = rate; + if (error == 0 && rate == 1) + vd->vdev_nonrot = B_TRUE; else - vd->vdev_rotation_rate = VDEV_RATE_UNKNOWN; + vd->vdev_nonrot = B_FALSE; } static void Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c Thu Apr 11 13:20:48 2019 (r346130) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c Thu Apr 11 13:21:10 2019 (r346131) @@ -169,7 +169,7 @@ vdev_mirror_load(mirror_map_t *mm, vdev_t *vd, uint64_ load = vdev_queue_length(vd); lastoffset = vdev_queue_lastoffset(vd); - if (vd->vdev_rotation_rate == VDEV_RATE_NON_ROTATING) { + if (vd->vdev_nonrot) { /* Non-rotating media. */ if (lastoffset == zio_offset) return (load + non_rotating_inc); Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:20:48 2019 (r346130) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c Thu Apr 11 13:21:10 2019 (r346131) @@ -682,7 +682,7 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio) ASSERT(MUTEX_HELD(&vq->vq_lock)); maxblocksize = spa_maxblocksize(vq->vq_vdev->vdev_spa); - if (vq->vq_vdev->vdev_rotation_rate == VDEV_RATE_NON_ROTATING) + if (vq->vq_vdev->vdev_nonrot) limit = zfs_vdev_aggregation_limit_non_rotating; else limit = zfs_vdev_aggregation_limit; From owner-svn-src-all@freebsd.org Thu Apr 11 13:26:30 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 51DE41584D86; Thu, 11 Apr 2019 13:26:30 +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 E8C648EC81; Thu, 11 Apr 2019 13:26:29 +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 C02C4ABB6; Thu, 11 Apr 2019 13:26:29 +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 x3BDQTAa086821; Thu, 11 Apr 2019 13:26:29 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BDQSAA086815; Thu, 11 Apr 2019 13:26:28 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201904111326.x3BDQSAA086815@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Thu, 11 Apr 2019 13:26:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346132 - in head/stand: efi/fdt fdt powerpc/kboot powerpc/ofw uboot/fdt X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in head/stand: efi/fdt fdt powerpc/kboot powerpc/ofw uboot/fdt X-SVN-Commit-Revision: 346132 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E8C648EC81 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 13:26:30 -0000 Author: kevans Date: Thu Apr 11 13:26:28 2019 New Revision: 346132 URL: https://svnweb.freebsd.org/changeset/base/346132 Log: stand: refactor overlay loading a little bit It was pointed out that manually loading a .dtb to be used rather than relying on platform-specific method for loading .dtb will result in overlays not being applied. This was true because overlay loading was hacked into fdt_platform_load_dtb, rather than done in a way more independent from how the .dtb is loaded. Instead, push overlay loading (for now) out into an fdt_platform_load_overlays. This method easily allows ubldr to pull in any fdt_overlays specified in the ub env, and omits overlay-checking on platforms where they're not tested and/or not desired (e.g. powerpc). If we eventually stop caring about fdt_overlays from ubenv (if we ever cared), this method should get chopped out in favor of just calling fdt_load_dtb_overlays() directly. Reported by: Manuel Stühn (freebsdnewbie freenet de) Modified: head/stand/efi/fdt/efi_fdt.c head/stand/fdt/fdt_loader_cmd.c head/stand/fdt/fdt_platform.h head/stand/powerpc/kboot/kbootfdt.c head/stand/powerpc/ofw/ofwfdt.c head/stand/uboot/fdt/uboot_fdt.c Modified: head/stand/efi/fdt/efi_fdt.c ============================================================================== --- head/stand/efi/fdt/efi_fdt.c Thu Apr 11 13:21:10 2019 (r346131) +++ head/stand/efi/fdt/efi_fdt.c Thu Apr 11 13:26:28 2019 (r346132) @@ -52,8 +52,14 @@ fdt_platform_load_dtb(void) return (1); printf("Using DTB provided by EFI at %p.\n", hdr); - fdt_load_dtb_overlays(NULL); return (0); +} + +void +fdt_platform_load_overlays(void) +{ + + fdt_load_dtb_overlays(NULL); } void Modified: head/stand/fdt/fdt_loader_cmd.c ============================================================================== --- head/stand/fdt/fdt_loader_cmd.c Thu Apr 11 13:21:10 2019 (r346131) +++ head/stand/fdt/fdt_loader_cmd.c Thu Apr 11 13:26:28 2019 (r346132) @@ -522,6 +522,7 @@ fdt_setup_fdtp() if (fdt_load_dtb(bfp->f_addr) == 0) { printf("Using DTB from loaded file '%s'.\n", bfp->f_name); + fdt_platform_load_overlays(); return (0); } } @@ -531,12 +532,15 @@ fdt_setup_fdtp() if (fdt_load_dtb_addr(fdt_to_load) == 0) { printf("Using DTB from memory address %p.\n", fdt_to_load); + fdt_platform_load_overlays(); return (0); } } - if (fdt_platform_load_dtb() == 0) + if (fdt_platform_load_dtb() == 0) { + fdt_platform_load_overlays(); return (0); + } /* If there is a dtb compiled into the kernel, use it. */ if ((va = fdt_find_static_dtb()) != 0) { Modified: head/stand/fdt/fdt_platform.h ============================================================================== --- head/stand/fdt/fdt_platform.h Thu Apr 11 13:21:10 2019 (r346131) +++ head/stand/fdt/fdt_platform.h Thu Apr 11 13:26:28 2019 (r346132) @@ -51,6 +51,7 @@ int fdt_setup_fdtp(void); /* The platform library needs to implement these functions */ int fdt_platform_load_dtb(void); +void fdt_platform_load_overlays(void); void fdt_platform_fixups(void); #endif /* FDT_PLATFORM_H */ Modified: head/stand/powerpc/kboot/kbootfdt.c ============================================================================== --- head/stand/powerpc/kboot/kbootfdt.c Thu Apr 11 13:21:10 2019 (r346131) +++ head/stand/powerpc/kboot/kbootfdt.c Thu Apr 11 13:26:28 2019 (r346132) @@ -177,6 +177,12 @@ fdt_platform_load_dtb(void) } void +fdt_platform_load_overlays(void) +{ + +} + +void fdt_platform_fixups(void) { Modified: head/stand/powerpc/ofw/ofwfdt.c ============================================================================== --- head/stand/powerpc/ofw/ofwfdt.c Thu Apr 11 13:21:10 2019 (r346131) +++ head/stand/powerpc/ofw/ofwfdt.c Thu Apr 11 13:26:28 2019 (r346132) @@ -198,6 +198,12 @@ fdt_platform_load_dtb(void) } void +fdt_platform_load_overlays(void) +{ + +} + +void fdt_platform_fixups(void) { Modified: head/stand/uboot/fdt/uboot_fdt.c ============================================================================== --- head/stand/uboot/fdt/uboot_fdt.c Thu Apr 11 13:21:10 2019 (r346131) +++ head/stand/uboot/fdt/uboot_fdt.c Thu Apr 11 13:26:28 2019 (r346132) @@ -103,9 +103,14 @@ fdt_platform_load_dtb(void) } exit: - if (rv == 0) - fdt_load_dtb_overlays(ub_env_get("fdt_overlays")); return (rv); +} + +void +fdt_platform_load_overlays(void) +{ + + fdt_load_dtb_overlays(ub_env_get("fdt_overlays")); } void From owner-svn-src-all@freebsd.org Thu Apr 11 16:26:28 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 15C5215883DE; Thu, 11 Apr 2019 16:26:28 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-it1-f173.google.com (mail-it1-f173.google.com [209.85.166.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 993A46D9B7; Thu, 11 Apr 2019 16:26:27 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-it1-f173.google.com with SMTP id k64so10507354itb.5; Thu, 11 Apr 2019 09:26:27 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:reply-to :from:date:message-id:subject:to:cc; bh=FjZy8WxMn4IV88mdYknSv4QPvQ4miQE75i20Vq3xxJc=; b=Brs8STVo+5+iEWUhrvKP19psROkTEjs/Hy2h9nKAufATlje8aMcpp5n/vPj/U3BIjq c3zNyuIkhKnMYROX5UwYZh9IPTME7cH2Sn8sDMB2g3TnuL8hWV/aX4CbQKHAZMWLGyF0 TSJ2jp2rRlYokfINjuWIfZv8j0aU18JCYX/16qb7g4t/aVDzgQAEyN258mPt/aZm1j+w UpBHU09NS2mlAlR+0056dBlC/UONB6A7EqBTVluQA8SsdiAld6vi2qDpyJWK0H53w2zv 0NSyVcXSL7pewV1KrF3RZiqaLu17wJ7qYbUnW66F7CTUahNxdSTKqMuMgUZOtjJFa9EN 2AFg== X-Gm-Message-State: APjAAAUGkTm+9bbu1TyvP0g78jYUsqU1/ZVSzFeiu13wNhOnLQyNk6CS Oiohjhv6fzygdApiNSkLTpifGWDd X-Google-Smtp-Source: APXvYqxsCUEhpKK2GiPhHLW8YEO069iXKOEK3WWNrF2L9Dd0lp/m8A4TCd3eeyZCNQptkFFRTf+Lmg== X-Received: by 2002:a02:212c:: with SMTP id e44mr35917840jaa.5.1554998366890; Thu, 11 Apr 2019 08:59:26 -0700 (PDT) Received: from mail-it1-f178.google.com (mail-it1-f178.google.com. [209.85.166.178]) by smtp.gmail.com with ESMTPSA id e26sm14970318iom.56.2019.04.11.08.59.26 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 11 Apr 2019 08:59:26 -0700 (PDT) Received: by mail-it1-f178.google.com with SMTP id k64so10349641itb.5; Thu, 11 Apr 2019 08:59:26 -0700 (PDT) X-Received: by 2002:a24:4584:: with SMTP id c4mr9118943itd.163.1554998365847; Thu, 11 Apr 2019 08:59:25 -0700 (PDT) MIME-Version: 1.0 References: <201904111121.x3BBLj2K023087@repo.freebsd.org> In-Reply-To: <201904111121.x3BBLj2K023087@repo.freebsd.org> Reply-To: cem@freebsd.org From: Conrad Meyer Date: Thu, 11 Apr 2019 08:59:14 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r346120 - head/sys/kern To: Edward Tomasz Napierala Cc: src-committers , svn-src-all , svn-src-head Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 993A46D9B7 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 16:26:28 -0000 Hi Edward, I have a question about this change below. On Thu, Apr 11, 2019 at 4:22 AM Edward Tomasz Napierala wrote: > > Author: trasz > Date: Thu Apr 11 11:21:45 2019 > New Revision: 346120 > URL: https://svnweb.freebsd.org/changeset/base/346120 > > Log: > Use shared vnode locks for the ELF interpreter. > > ... > Differential Revision: https://reviews.freebsd.org/D19874 > ... > Modified: head/sys/kern/imgact_elf.c > ============================================================================== > --- head/sys/kern/imgact_elf.c Thu Apr 11 08:06:45 2019 (r346119) > +++ head/sys/kern/imgact_elf.c Thu Apr 11 11:21:45 2019 (r346120) > ... > - NDINIT(nd, LOOKUP, LOCKLEAF | FOLLOW, UIO_SYSSPACE, file, curthread); > + flags = FOLLOW | LOCKSHARED | LOCKLEAF; > + > +again: > + NDINIT(nd, LOOKUP, flags, UIO_SYSSPACE, file, curthread); > if ((error = namei(nd)) != 0) { > ... > @@ -759,15 +762,30 @@ __elfN(load_file)(struct proc *p, const char *file, u_ > ... > + if (VOP_IS_TEXT(nd->ni_vp) == 0) { > + if (VOP_ISLOCKED(nd->ni_vp) != LK_EXCLUSIVE) { > + /* > + * LK_UPGRADE could have resulted in dropping > + * the lock. Just try again from the start, > + * this time with exclusive vnode lock. > + */ > + vput(nd->ni_vp); > + flags &= ~LOCKSHARED; > + goto again; It's unclear to me why we don't attempt LK_UPGRADE first. If upgrade succeeds, we avoid an extra filesystem traversal (namei/lookup). If it fails, of course we can 'goto again' the same as we do unconditionally here. There was some discussion about the topic in the linked phabricator PR with Konstantin, but I did not follow it fully. On the one hand, perhaps VOP_IS_TEXT() is rarely false for common interpreters anyway. On the other hand, there is sort of a renaissance of static linking happening. So maybe the thought is, !VOP_IS_TEXT is likely to be rare, and LK_UPGRADE success even more rare, so why bother writing additional code for it? Thanks, Conrad P.S., It is orthogonal to this discussion, but I don't see any reason for VOP_IS_TEXT to be a vnode_if operation. Neither it, nor VOP_UNSET_TEXT, is ever specialized. They simply check or clear the VV_TEXT flag on the vnode's vflags, respectively. It is common for the kernel to reach out and interact with other vnode vflags directly; e.g., pretty much all other VV_flags, like VV_ROOT. The only specialization of VOP_SET_TEXT is NFSclient, and it is unclear to me why the same requirements NFS client has for setting VV_TEXT do not apply universally. From owner-svn-src-all@freebsd.org Thu Apr 11 17:51:30 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F2E441589E75; Thu, 11 Apr 2019 17:51:29 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 061D470724; Thu, 11 Apr 2019 17:51:28 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id x3BHpKF1092990 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Thu, 11 Apr 2019 20:51:23 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua x3BHpKF1092990 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id x3BHpKrt092989; Thu, 11 Apr 2019 20:51:20 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Thu, 11 Apr 2019 20:51:20 +0300 From: Konstantin Belousov To: Conrad Meyer Cc: Edward Tomasz Napierala , src-committers , svn-src-all , svn-src-head Subject: Re: svn commit: r346120 - head/sys/kern Message-ID: <20190411175120.GX1923@kib.kiev.ua> References: <201904111121.x3BBLj2K023087@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.11.4 (2019-03-13) X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on tom.home X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 17:51:30 -0000 On Thu, Apr 11, 2019 at 08:59:14AM -0700, Conrad Meyer wrote: > Hi Edward, > > I have a question about this change below. > > On Thu, Apr 11, 2019 at 4:22 AM Edward Tomasz Napierala > wrote: > > > > Author: trasz > > Date: Thu Apr 11 11:21:45 2019 > > New Revision: 346120 > > URL: https://svnweb.freebsd.org/changeset/base/346120 > > > > Log: > > Use shared vnode locks for the ELF interpreter. > > > > ... > > Differential Revision: https://reviews.freebsd.org/D19874 > > ... > > Modified: head/sys/kern/imgact_elf.c > > ============================================================================== > > --- head/sys/kern/imgact_elf.c Thu Apr 11 08:06:45 2019 (r346119) > > +++ head/sys/kern/imgact_elf.c Thu Apr 11 11:21:45 2019 (r346120) > > ... > > - NDINIT(nd, LOOKUP, LOCKLEAF | FOLLOW, UIO_SYSSPACE, file, curthread); > > + flags = FOLLOW | LOCKSHARED | LOCKLEAF; > > + > > +again: > > + NDINIT(nd, LOOKUP, flags, UIO_SYSSPACE, file, curthread); > > if ((error = namei(nd)) != 0) { > > ... > > @@ -759,15 +762,30 @@ __elfN(load_file)(struct proc *p, const char *file, u_ > > ... > > + if (VOP_IS_TEXT(nd->ni_vp) == 0) { > > + if (VOP_ISLOCKED(nd->ni_vp) != LK_EXCLUSIVE) { > > + /* > > + * LK_UPGRADE could have resulted in dropping > > + * the lock. Just try again from the start, > > + * this time with exclusive vnode lock. > > + */ > > + vput(nd->ni_vp); > > + flags &= ~LOCKSHARED; > > + goto again; > > It's unclear to me why we don't attempt LK_UPGRADE first. If upgrade > succeeds, we avoid an extra filesystem traversal (namei/lookup). If > it fails, of course we can 'goto again' the same as we do > unconditionally here. LK_UPGRADE drops the vnode lock, this was discussed in the phab review. Perhaps you can do LK_TRYUPGRADE first, by the cost of even more complicated code then was in the initial review, if fixed. > > There was some discussion about the topic in the linked phabricator PR > with Konstantin, but I did not follow it fully. > > On the one hand, perhaps VOP_IS_TEXT() is rarely false for common > interpreters anyway. On the other hand, there is sort of a > renaissance of static linking happening. Statically linked binaries do not need interpreter. > So maybe the thought is, > !VOP_IS_TEXT is likely to be rare, and LK_UPGRADE success even more > rare, so why bother writing additional code for it? I do not understand the question. > > Thanks, > Conrad > > P.S., It is orthogonal to this discussion, but I don't see any reason > for VOP_IS_TEXT to be a vnode_if operation. Neither it, nor > VOP_UNSET_TEXT, is ever specialized. They simply check or clear the > VV_TEXT flag on the vnode's vflags, respectively. It is common for > the kernel to reach out and interact with other vnode vflags directly; > e.g., pretty much all other VV_flags, like VV_ROOT. The only > specialization of VOP_SET_TEXT is NFSclient, and it is unclear to me > why the same requirements NFS client has for setting VV_TEXT do not > apply universally. VOP is bypassed, unlike direct vnode flags access. As result, when you execute file on nullfs, VV_TEXT is set on the lower vnode, instead of the upper nullfs vnode. If lower vnode is not marked by VV_TEXT, EBUSY does not work. This was described in the commit log where VOPs were introduced. From owner-svn-src-all@freebsd.org Thu Apr 11 19:23:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0FDEB1568026; Thu, 11 Apr 2019 19:23:43 +0000 (UTC) (envelope-from onwahe@gmail.com) Received: from mail-io1-xd32.google.com (mail-io1-xd32.google.com [IPv6:2607:f8b0:4864:20::d32]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8728E72F8F; Thu, 11 Apr 2019 19:23:42 +0000 (UTC) (envelope-from onwahe@gmail.com) Received: by mail-io1-xd32.google.com with SMTP id f6so6372699iop.3; Thu, 11 Apr 2019 12:23:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=RBJ8iU7GhfjOS8M+xW+v8QeOwFowwTwAYUuM1LfQzNw=; b=T1wTSeI0ah1kqxR/pVIhdCbDcPKwd+5eN6/+OSFijTq51gmH8cK2z37I8X9yKkIr6E ydNiDMmjyv9qQp3u80/DiF7TC3FZ31u6DGwvTUWls7NqyPOZ/h50ul7QMCYdKYmtrLfM gNFwKymZ3g1GsfoNGZgaHDXB76aC+fVR7LbCBQWkXLzgDDahXHeUO0oJazxgIYgOUAn+ sQT5jsDkQ4qOxt08CaqpokPci5OLQuexk+HAK8jvcZWrm38sJBG2bzcTL9sJL6FVBhGL 0TwSSZejwIs1Nt/JCJw4cJoalFtpFeRJg8exZ6rxwTKiv314s76l1q1TBDCNi9Ii0o2s jGYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=RBJ8iU7GhfjOS8M+xW+v8QeOwFowwTwAYUuM1LfQzNw=; b=JCnv0ySoH5hNm7HLUEjfymN0YV/XWyZE/L7YbuV21O3ghfbpWcGPpfWAY5dGCoo8pr uvtaHDiqrhFgAT6uMtt4cPbVdPHPM8JoCfsVVbTOm7Q041Lg5HhzBwHcqyHzLahqiNcB 5rZIqIqcRFzwehzCDIs8gDX0vE4rvFNVAMIye4YKx0WKCkkChxhtslXo45OwE3QSfjB5 9+5Wm01LP4yKDTWHHH2t6HiFP6ecMk3bzOtLTyjXMOmiN2bwcyIJ0ZGhKPeeRcAzWu5Z WPBv3ektPMQ9KCmsQvrxxApSpilGubeSw8L7JfNro8zM1juSTkYgB6XEeVjONXkCa9j7 Iwbw== X-Gm-Message-State: APjAAAWyqDOVd7JEGtGwsIn5NG8S9/GLd2+PAiGzo6s51M1LNzN/IZxA GGHuWtN0sF1ypcRpE5pB9a5UHuJMQahZU2Wey5xjng== X-Google-Smtp-Source: APXvYqyf98A20VaMho/1StvYnrPggw+Qzpzx01+Ro2F5w9Azpnn2fj1Mf7wu5cCLNSGaSXK7oou4ODedQK1m4aX1sDU= X-Received: by 2002:a5d:840d:: with SMTP id i13mr27332648ion.186.1555010621484; Thu, 11 Apr 2019 12:23:41 -0700 (PDT) MIME-Version: 1.0 References: <201904101927.x3AJREvt013138@repo.freebsd.org> In-Reply-To: <201904101927.x3AJREvt013138@repo.freebsd.org> From: Svatopluk Kraus Date: Thu, 11 Apr 2019 21:23:35 +0200 Message-ID: Subject: Re: svn commit: r346096 - head/sys/arm/conf To: Emmanuel Vadot Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 8728E72F8F X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 19:23:43 -0000 I understand the reason for GENERIC. But are we so blind that we will delete everything that is not GENERIC? In other words, why to delete nice specific KERNEL configurations for boards we support when only reason I see is that GENERIC is so cool for some people? Svatopluk Kraus On Wed, Apr 10, 2019 at 9:27 PM Emmanuel Vadot wrote: > > Author: manu > Date: Wed Apr 10 19:27:14 2019 > New Revision: 346096 > URL: https://svnweb.freebsd.org/changeset/base/346096 > > Log: > arm: kernel: Remove old kernel configs > > Follow up to r346095 > All those kernels are either not working or the release have switched > to GENERIC > > Deleted: > head/sys/arm/conf/AML8726 > head/sys/arm/conf/BEAGLEBONE > head/sys/arm/conf/CHROMEBOOK > head/sys/arm/conf/CHROMEBOOK-PEACH-PIT > head/sys/arm/conf/CHROMEBOOK-PEACH-PIT.hints > head/sys/arm/conf/CHROMEBOOK-SNOW > head/sys/arm/conf/CHROMEBOOK-SPRING > head/sys/arm/conf/CHROMEBOOK.hints > head/sys/arm/conf/EXYNOS5.common > head/sys/arm/conf/EXYNOS5250 > head/sys/arm/conf/EXYNOS5420 > head/sys/arm/conf/ODROIDC1 > head/sys/arm/conf/PANDABOARD > head/sys/arm/conf/PANDABOARD.hints > head/sys/arm/conf/RADXA > head/sys/arm/conf/RADXA-LITE > head/sys/arm/conf/RK3188 > head/sys/arm/conf/RPI2 > From owner-svn-src-all@freebsd.org Thu Apr 11 20:39:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 647E9156982D; Thu, 11 Apr 2019 20:39:13 +0000 (UTC) (envelope-from tuexen@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 0AB5D7557A; Thu, 11 Apr 2019 20:39:13 +0000 (UTC) (envelope-from tuexen@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 D59E6F668; Thu, 11 Apr 2019 20:39:12 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3BKdCJM012936; Thu, 11 Apr 2019 20:39:12 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3BKdC7o012935; Thu, 11 Apr 2019 20:39:12 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <201904112039.x3BKdC7o012935@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Thu, 11 Apr 2019 20:39:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346134 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 346134 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0AB5D7557A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Apr 2019 20:39:13 -0000 Author: tuexen Date: Thu Apr 11 20:39:12 2019 New Revision: 346134 URL: https://svnweb.freebsd.org/changeset/base/346134 Log: Fix an SCTP related locking issue. Don't report that the TCB_SEND_LOCK is owned, when it is not. This issue was found by running syzkaller. MFC after: 1 week Modified: head/sys/netinet/sctputil.c Modified: head/sys/netinet/sctputil.c ============================================================================== --- head/sys/netinet/sctputil.c Thu Apr 11 17:20:15 2019 (r346133) +++ head/sys/netinet/sctputil.c Thu Apr 11 20:39:12 2019 (r346134) @@ -3995,7 +3995,7 @@ sctp_abort_notification(struct sctp_tcb *stcb, uint8_t return; } /* Tell them we lost the asoc */ - sctp_report_all_outbound(stcb, error, 1, so_locked); + sctp_report_all_outbound(stcb, error, 0, so_locked); if (from_peer) { sctp_ulp_notify(SCTP_NOTIFY_ASSOC_REM_ABORTED, stcb, error, abort, so_locked); } else { From owner-svn-src-all@freebsd.org Fri Apr 12 00:31:24 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 382D0156E06B; Fri, 12 Apr 2019 00:31:24 +0000 (UTC) (envelope-from emaste@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 C989584578; Fri, 12 Apr 2019 00:31:23 +0000 (UTC) (envelope-from emaste@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 8ABDC19DA2; Fri, 12 Apr 2019 00:31:23 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3C0VNqp034305; Fri, 12 Apr 2019 00:31:23 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3C0VNUc034303; Fri, 12 Apr 2019 00:31:23 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201904120031.x3C0VNUc034303@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 12 Apr 2019 00:31:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346142 - in stable/12/libexec/rtld-elf: arm mips X-SVN-Group: stable-12 X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: in stable/12/libexec/rtld-elf: arm mips X-SVN-Commit-Revision: 346142 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C989584578 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 00:31:24 -0000 Author: emaste Date: Fri Apr 12 00:31:22 2019 New Revision: 346142 URL: https://svnweb.freebsd.org/changeset/base/346142 Log: MFC r345693, 345694: rtld: attempt to fix reloc_nonplt_object TLS allocation on arm and mips allocate_tls_offset returns true on success. This still needs more testing and review, but this change is consistent with other archs. PR: 236880 Reported by: Andrew Gierth (arm) Sponsored by: The FreeBSD Foundation Modified: stable/12/libexec/rtld-elf/arm/reloc.c stable/12/libexec/rtld-elf/mips/reloc.c Directory Properties: stable/12/ (props changed) Modified: stable/12/libexec/rtld-elf/arm/reloc.c ============================================================================== --- stable/12/libexec/rtld-elf/arm/reloc.c Fri Apr 12 00:15:36 2019 (r346141) +++ stable/12/libexec/rtld-elf/arm/reloc.c Fri Apr 12 00:31:22 2019 (r346142) @@ -319,7 +319,7 @@ reloc_nonplt_object(Obj_Entry *obj, const Elf_Rel *rel if (def == NULL) return -1; - if (!defobj->tls_done && allocate_tls_offset(obj)) + if (!defobj->tls_done && !allocate_tls_offset(obj)) return -1; tmp = (Elf_Addr)def->st_value + defobj->tlsoffset; Modified: stable/12/libexec/rtld-elf/mips/reloc.c ============================================================================== --- stable/12/libexec/rtld-elf/mips/reloc.c Fri Apr 12 00:15:36 2019 (r346141) +++ stable/12/libexec/rtld-elf/mips/reloc.c Fri Apr 12 00:31:22 2019 (r346142) @@ -588,7 +588,7 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int if (def == NULL) return -1; - if (!defobj->tls_done && allocate_tls_offset(obj)) + if (!defobj->tls_done && !allocate_tls_offset(obj)) return -1; val += (Elf_Addr)def->st_value - TLS_DTP_OFFSET; @@ -616,7 +616,7 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int if (def == NULL) return -1; - if (!defobj->tls_done && allocate_tls_offset(obj)) + if (!defobj->tls_done && !allocate_tls_offset(obj)) return -1; val += (Elf_Addr)(def->st_value + defobj->tlsoffset From owner-svn-src-all@freebsd.org Fri Apr 12 00:44:35 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1AB10156E479; Fri, 12 Apr 2019 00:44:35 +0000 (UTC) (envelope-from jhibbits@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 ACA5084CC2; Fri, 12 Apr 2019 00:44:34 +0000 (UTC) (envelope-from jhibbits@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 84EE11A0A7; Fri, 12 Apr 2019 00:44:34 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3C0iYZS043774; Fri, 12 Apr 2019 00:44:34 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3C0iY1k043773; Fri, 12 Apr 2019 00:44:34 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201904120044.x3C0iY1k043773@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Fri, 12 Apr 2019 00:44:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346143 - in head/sys/powerpc: include powerpc X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: in head/sys/powerpc: include powerpc X-SVN-Commit-Revision: 346143 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: ACA5084CC2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_SHORT(-0.94)[-0.945,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 00:44:35 -0000 Author: jhibbits Date: Fri Apr 12 00:44:33 2019 New Revision: 346143 URL: https://svnweb.freebsd.org/changeset/base/346143 Log: powerpc64: Increase the nap level on power9 idling The POWER9 documentation specifies that levels 0-3 are the 'lightest' sleep level, meaning lowest latency and with no state loss. However, state 3 is not implemented, and is instead reserved for future chips. This now properly configures the PSSCR, specifying state 2 as the lowest level to enter, but request level 0 for quickest sleep level. If the OCC determines that the CPU can enter states 1 or 2 it will trigger the transition to those states on demand. MFC after: 1 week Modified: head/sys/powerpc/include/spr.h head/sys/powerpc/powerpc/cpu.c Modified: head/sys/powerpc/include/spr.h ============================================================================== --- head/sys/powerpc/include/spr.h Fri Apr 12 00:31:22 2019 (r346142) +++ head/sys/powerpc/include/spr.h Fri Apr 12 00:44:33 2019 (r346143) @@ -412,6 +412,19 @@ #define SPR_MD_RAM0 0x339 /* ..8 IMMU RAM entry read reg 0 */ #define SPR_MD_RAM1 0x33a /* ..8 IMMU RAM entry read reg 1 */ #define SPR_PSSCR 0x357 /* Processor Stop Status and Control Register (ISA 3.0) */ +#define PSSCR_PLS_S 60 +#define PSSCR_PLS_M (0xf << PSSCR_PLS_S) +#define PSSCR_SD (1 << 22) +#define PSSCR_ESL (1 << 21) +#define PSSCR_EC (1 << 20) +#define PSSCR_PSLL_S 16 +#define PSSCR_PSLL_M (0xf << PSSCR_PSLL_S) +#define PSSCR_TR_S 8 +#define PSSCR_TR_M (0x3 << PSSCR_TR_S) +#define PSSCR_MTL_S 4 +#define PSSCR_MTL_M (0xf << PSSCR_MTL_S) +#define PSSCR_RL_S 0 +#define PSSCR_RL_M (0xf << PSSCR_RL_S) #define SPR_PMCR 0x374 /* Processor Management Control Register */ #define SPR_UMMCR2 0x3a0 /* .6. User Monitor Mode Control Register 2 */ #define SPR_UMMCR0 0x3a8 /* .6. User Monitor Mode Control Register 0 */ Modified: head/sys/powerpc/powerpc/cpu.c ============================================================================== --- head/sys/powerpc/powerpc/cpu.c Fri Apr 12 00:31:22 2019 (r346142) +++ head/sys/powerpc/powerpc/cpu.c Fri Apr 12 00:44:33 2019 (r346143) @@ -787,7 +787,6 @@ cpu_idle_booke(sbintime_t sbt) static void cpu_idle_powerx(sbintime_t sbt) { - /* Sleeping when running on one cpu gives no advantages - avoid it */ if (smp_started == 0) return; @@ -816,7 +815,8 @@ cpu_idle_power9(sbintime_t sbt) /* Suspend external interrupts until stop instruction completes. */ mtmsr(msr & ~PSL_EE); /* Set the stop state to lowest latency, wake up to next instruction */ - mtspr(SPR_PSSCR, 0); + /* Set maximum transition level to 2, for deepest lossless sleep. */ + mtspr(SPR_PSSCR, (2 << PSSCR_MTL_S) | (0 << PSSCR_RL_S)); /* "stop" instruction (PowerISA 3.0) */ __asm __volatile (".long 0x4c0002e4"); /* From owner-svn-src-all@freebsd.org Fri Apr 12 00:53:32 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7408F156E6EB; Fri, 12 Apr 2019 00:53:32 +0000 (UTC) (envelope-from jhibbits@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 0AE05850F4; Fri, 12 Apr 2019 00:53:32 +0000 (UTC) (envelope-from jhibbits@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 D528A1A24C; Fri, 12 Apr 2019 00:53:31 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3C0rVru048936; Fri, 12 Apr 2019 00:53:31 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3C0rVj7048933; Fri, 12 Apr 2019 00:53:31 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201904120053.x3C0rVj7048933@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Fri, 12 Apr 2019 00:53:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346144 - in head/sys/powerpc: include powerpc X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: in head/sys/powerpc: include powerpc X-SVN-Commit-Revision: 346144 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0AE05850F4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.94)[-0.945,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 00:53:32 -0000 Author: jhibbits Date: Fri Apr 12 00:53:30 2019 New Revision: 346144 URL: https://svnweb.freebsd.org/changeset/base/346144 Log: powerpc: Adjust priority NOPs, and make them functions PowerISA 2.07 and PowerISA 3.0 both specify special NOPs for priority adjustments, with "medium" priority being normal. We had been setting medium-low as our normal priority. Rather than guess each time as to what we want and the right NOP, wrap them in inline functions, and replace the occurrances of the NOPs with the functions. Also, make DELAY() drop to very low priority while waiting, so we don't burn CPU. Coupled with r346143, this shaves off a modest 5-8% on buildworld times with -j72. There may be more room for improvement with judicious use of these NOPs. MFC after: 2 weeks Modified: head/sys/powerpc/include/cpufunc.h head/sys/powerpc/powerpc/machdep.c head/sys/powerpc/powerpc/mp_machdep.c Modified: head/sys/powerpc/include/cpufunc.h ============================================================================== --- head/sys/powerpc/include/cpufunc.h Fri Apr 12 00:44:33 2019 (r346143) +++ head/sys/powerpc/include/cpufunc.h Fri Apr 12 00:53:30 2019 (r346144) @@ -212,6 +212,43 @@ get_pcpu(void) return (ret); } +/* "NOP" operations to signify priorities to the kernel. */ +static __inline void +nop_prio_vlow(void) +{ + __asm __volatile("or 31,31,31"); +} + +static __inline void +nop_prio_low(void) +{ + __asm __volatile("or 1,1,1"); +} + +static __inline void +nop_prio_mlow(void) +{ + __asm __volatile("or 6,6,6"); +} + +static __inline void +nop_prio_medium(void) +{ + __asm __volatile("or 2,2,2"); +} + +static __inline void +nop_prio_mhigh(void) +{ + __asm __volatile("or 5,5,5"); +} + +static __inline void +nop_prio_high(void) +{ + __asm __volatile("or 3,3,3"); +} + #endif /* _KERNEL */ #endif /* !_MACHINE_CPUFUNC_H_ */ Modified: head/sys/powerpc/powerpc/machdep.c ============================================================================== --- head/sys/powerpc/powerpc/machdep.c Fri Apr 12 00:44:33 2019 (r346143) +++ head/sys/powerpc/powerpc/machdep.c Fri Apr 12 00:53:30 2019 (r346144) @@ -494,7 +494,7 @@ spinlock_enter(void) td = curthread; if (td->td_md.md_spinlock_count == 0) { - __asm __volatile("or 2,2,2"); /* Set high thread priority */ + nop_prio_mhigh(); msr = intr_disable(); td->td_md.md_spinlock_count = 1; td->td_md.md_saved_msr = msr; @@ -515,7 +515,7 @@ spinlock_exit(void) td->td_md.md_spinlock_count--; if (td->td_md.md_spinlock_count == 0) { intr_restore(msr); - __asm __volatile("or 6,6,6"); /* Set normal thread priority */ + nop_prio_medium(); } } Modified: head/sys/powerpc/powerpc/mp_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/mp_machdep.c Fri Apr 12 00:44:33 2019 (r346143) +++ head/sys/powerpc/powerpc/mp_machdep.c Fri Apr 12 00:53:30 2019 (r346144) @@ -78,8 +78,8 @@ machdep_ap_bootstrap(void) __asm __volatile("msync; isync"); while (ap_letgo == 0) - __asm __volatile("or 31,31,31"); - __asm __volatile("or 6,6,6"); + nop_prio_vlow(); + nop_prio_medium(); /* * Set timebase as soon as possible to meet an implicit rendezvous From owner-svn-src-all@freebsd.org Fri Apr 12 01:03:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6A147156E970; Fri, 12 Apr 2019 01:03:07 +0000 (UTC) (envelope-from sjg@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 1371D85527; Fri, 12 Apr 2019 01:03:07 +0000 (UTC) (envelope-from sjg@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 08B971A408; Fri, 12 Apr 2019 01:03:07 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3C137e9053964; Fri, 12 Apr 2019 01:03:07 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3C1302P053933; Fri, 12 Apr 2019 01:03:00 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201904120103.x3C1302P053933@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Fri, 12 Apr 2019 01:03:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346145 - in stable/12: contrib/bearssl etc/mtree include lib lib/libbearssl lib/libsecureboot lib/libsecureboot/tests sbin sbin/veriexec share/mk stand stand/common stand/ficl stand/fi... X-SVN-Group: stable-12 X-SVN-Commit-Author: sjg X-SVN-Commit-Paths: in stable/12: contrib/bearssl etc/mtree include lib lib/libbearssl lib/libsecureboot lib/libsecureboot/tests sbin sbin/veriexec share/mk stand stand/common stand/ficl stand/ficl32 stand/i386/loader st... X-SVN-Commit-Revision: 346145 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1371D85527 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.94)[-0.945,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 01:03:07 -0000 Author: sjg Date: Fri Apr 12 01:03:00 2019 New Revision: 346145 URL: https://svnweb.freebsd.org/changeset/base/346145 Log: Add support for loader veriexec Also sbin/veriexec for mac_veriexec MFC r343281,344564-344568,344780,344784,345289,346070 Added: stable/12/contrib/bearssl/ - copied from r344564, head/contrib/bearssl/ stable/12/lib/libbearssl/ - copied from r344564, head/lib/libbearssl/ stable/12/lib/libsecureboot/ - copied from r344565, head/lib/libsecureboot/ stable/12/sbin/veriexec/ - copied from r344567, head/sbin/veriexec/ stable/12/tools/build/options/WITH_BEARSSL - copied unchanged from r344566, head/tools/build/options/WITH_BEARSSL stable/12/tools/build/options/WITH_LOADER_VERIEXEC - copied unchanged from r344566, head/tools/build/options/WITH_LOADER_VERIEXEC stable/12/tools/build/options/WITH_VERIEXEC - copied unchanged from r344566, head/tools/build/options/WITH_VERIEXEC Modified: stable/12/etc/mtree/BSD.include.dist stable/12/include/Makefile stable/12/lib/Makefile stable/12/lib/libsecureboot/Makefile.inc stable/12/lib/libsecureboot/tests/Makefile stable/12/lib/libsecureboot/verify_file.c stable/12/sbin/Makefile stable/12/share/mk/src.libnames.mk stable/12/share/mk/src.opts.mk stable/12/stand/common/boot.c stable/12/stand/common/bootstrap.h stable/12/stand/common/interp_forth.c stable/12/stand/common/interp_simple.c stable/12/stand/common/load_elf.c stable/12/stand/common/load_elf_obj.c stable/12/stand/common/module.c stable/12/stand/ficl/Makefile.depend stable/12/stand/ficl/ficl.h stable/12/stand/ficl/fileaccess.c stable/12/stand/ficl32/Makefile.depend stable/12/stand/i386/loader/Makefile.depend stable/12/stand/liblua/Makefile stable/12/stand/liblua/lstd.c stable/12/stand/libsa/Makefile stable/12/stand/libsa/Makefile.depend stable/12/stand/libsa32/Makefile.depend stable/12/stand/loader.mk Directory Properties: stable/12/ (props changed) Modified: stable/12/etc/mtree/BSD.include.dist ============================================================================== --- stable/12/etc/mtree/BSD.include.dist Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/etc/mtree/BSD.include.dist Fri Apr 12 01:03:00 2019 (r346145) @@ -160,6 +160,8 @@ .. usb .. + veriexec + .. vkbd .. wi @@ -353,6 +355,8 @@ mac_mls .. mac_partition + .. + mac_veriexec .. .. ssp Modified: stable/12/include/Makefile ============================================================================== --- stable/12/include/Makefile Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/include/Makefile Fri Apr 12 01:03:00 2019 (r346145) @@ -47,7 +47,7 @@ LSUBDIRS= cam/ata cam/mmc cam/nvme cam/scsi \ dev/hwpmc dev/hyperv \ dev/ic dev/iicbus dev/io dev/mfi dev/mmc dev/nvme \ dev/ofw dev/pbio dev/pci ${_dev_powermac_nvram} dev/ppbus dev/smbus \ - dev/speaker dev/tcp_log dev/vkbd dev/wi \ + dev/speaker dev/tcp_log dev/veriexec dev/vkbd dev/wi \ fs/devfs fs/fdescfs fs/msdosfs fs/nandfs fs/nfs fs/nullfs \ fs/procfs fs/smbfs fs/udf fs/unionfs \ geom/cache geom/concat geom/eli geom/gate geom/journal geom/label \ @@ -60,6 +60,7 @@ LSUBDIRS= cam/ata cam/mmc cam/nvme cam/scsi \ security/audit \ security/mac_biba security/mac_bsdextended security/mac_lomac \ security/mac_mls security/mac_partition \ + security/mac_veriexec \ sys/disk \ ufs/ffs ufs/ufs @@ -157,7 +158,7 @@ copies: .PHONY .META done; \ fi .endfor -.for i in ${LDIRS} ${LSUBDIRS:Ndev/agp:Ndev/acpica:Ndev/bktr:Ndev/evdev:Ndev/hyperv:Ndev/nand:Ndev/pci} ${LSUBSUBDIRS} +.for i in ${LDIRS} ${LSUBDIRS:Ndev/agp:Ndev/acpica:Ndev/bktr:Ndev/evdev:Ndev/hyperv:Ndev/nand:Ndev/pci:Ndev/veriexec} ${LSUBSUBDIRS} cd ${SRCTOP}/sys; \ ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 $i/*.h \ ${SDESTDIR}${INCLUDEDIR}/$i @@ -196,6 +197,9 @@ copies: .PHONY .META cd ${SRCTOP}/sys/dev/pci; \ ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 pcireg.h \ ${SDESTDIR}${INCLUDEDIR}/dev/pci + cd ${SRCTOP}/sys/dev/veriexec; \ + ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 veriexec_ioctl.h \ + ${SDESTDIR}${INCLUDEDIR}/dev/veriexec cd ${SRCTOP}/sys/fs/cd9660/; \ ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ ${SDESTDIR}${INCLUDEDIR}/isofs/cd9660 @@ -264,7 +268,7 @@ symlinks: .PHONY .META ${INSTALL_SYMLINK} ${TAG_ARGS} ../../../sys/$i/$$h ${SDESTDIR}${INCLUDEDIR}/$i; \ done .endfor -.for i in ${LSUBDIRS:Ndev/agp:Ndev/acpica:Ndev/bktr:Ndev/evdev:Ndev/hyperv:Ndev/nand:Ndev/pci} +.for i in ${LSUBDIRS:Ndev/agp:Ndev/acpica:Ndev/bktr:Ndev/evdev:Ndev/hyperv:Ndev/nand:Ndev/pci:Ndev/veriexec} cd ${SRCTOP}/sys/$i; \ for h in *.h; do \ ${INSTALL_SYMLINK} ${TAG_ARGS} ../../../../sys/$i/$$h ${SDESTDIR}${INCLUDEDIR}/$i; \ @@ -311,6 +315,11 @@ symlinks: .PHONY .META for h in pcireg.h; do \ ${INSTALL_SYMLINK} ${TAG_ARGS} ../../../../sys/dev/pci/$$h \ ${SDESTDIR}${INCLUDEDIR}/dev/pci; \ + done + cd ${SRCTOP}/sys/dev/veriexec; \ + for h in veriexec_ioctl.h; do \ + ln -fs ../../../../sys/dev/veriexec/$$h \ + ${SDESTDIR}${INCLUDEDIR}/dev/veriexec; \ done .for i in ${LSUBSUBDIRS} cd ${SRCTOP}/sys/$i; \ Modified: stable/12/lib/Makefile ============================================================================== --- stable/12/lib/Makefile Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/lib/Makefile Fri Apr 12 01:03:00 2019 (r346145) @@ -133,6 +133,7 @@ SUBDIR_DEPEND_libpcap= ofed # NB: keep these sorted by MK_* knobs SUBDIR.${MK_ATM}+= libngatm +SUBDIR.${MK_BEARSSL}+= libbearssl libsecureboot SUBDIR.${MK_BLACKLIST}+=libblacklist SUBDIR.${MK_BLUETOOTH}+=libbluetooth libsdp SUBDIR.${MK_BSNMP}+= libbsnmp @@ -208,6 +209,7 @@ SUBDIR.${MK_TESTS}+= tests SUBDIR.${MK_UNBOUND}+= libunbound SUBDIR.${MK_USB}+= libusbhid libusb SUBDIR.${MK_OFED}+= ofed +SUBDIR.${MK_VERIEXEC}+= libveriexec SUBDIR.${MK_ZFS}+= libbe .if !make(install) Modified: stable/12/lib/libsecureboot/Makefile.inc ============================================================================== --- head/lib/libsecureboot/Makefile.inc Tue Feb 26 06:09:10 2019 (r344565) +++ stable/12/lib/libsecureboot/Makefile.inc Fri Apr 12 01:03:00 2019 (r346145) @@ -92,6 +92,19 @@ VE_HASH_KAT_STR?= vc_PEM XCFLAGS.vets+= -DVE_HASH_KAT_STR=${VE_HASH_KAT_STR} .endif +# this should be updated occassionally this is 2019-01-01Z +SOURCE_DATE_EPOCH?= 1546329600 +.if ${MK_REPRODUCIBLE_BUILD} == "yes" +BUILD_UTC?= ${SOURCE_DATE_EPOCH} +.endif +# BUILD_UTC provides a basis for the loader's notion of time +# By default we use the mtime of BUILD_UTC_FILE +.if empty(BUILD_UTC_FILE) +BUILD_UTC_FILE:= ${.PARSEDIR:tA}/${.PARSEFILE} +.endif +# you can of course set BUILD_UTC to any value you like +BUILD_UTC?= ${${STAT:Ustat} -f %m ${BUILD_UTC_FILE}:L:sh} + # Generate ta.h containing one or more PEM encoded trust anchors in ta_PEM. # # If we are doing self-tests, we define another arrary vc_PEM @@ -110,9 +123,7 @@ ta.h: ${.ALLTARGETS:M[tv]*pem:O:u} ( cat ${.ALLSRC:N*crl*:Mv*.pem} /dev/null | \ file2c -sx 'static const char vc_PEM[] = {' '};'; echo ) >> ${.TARGET} .endif -.if !empty(BUILD_UTC_FILE) - echo '#define BUILD_UTC ${${STAT:Ustat} -f %m ${BUILD_UTC_FILE}:L:sh}' >> ${.TARGET} ${.OODATE:MNOMETA_CMP} -.endif + echo '#define BUILD_UTC ${BUILD_UTC}' >> ${.TARGET} ${.OODATE:MNOMETA_CMP} # This header records our preference for signature extensions. vesigned.o vesigned.po vesigned.pico: vse.h Modified: stable/12/lib/libsecureboot/tests/Makefile ============================================================================== --- head/lib/libsecureboot/tests/Makefile Tue Feb 26 06:09:10 2019 (r344565) +++ stable/12/lib/libsecureboot/tests/Makefile Fri Apr 12 01:03:00 2019 (r346145) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include + PROG= tvo SRCS+= tvo.c Modified: stable/12/lib/libsecureboot/verify_file.c ============================================================================== --- head/lib/libsecureboot/verify_file.c Tue Feb 26 06:09:10 2019 (r344565) +++ stable/12/lib/libsecureboot/verify_file.c Fri Apr 12 01:03:00 2019 (r346145) @@ -368,7 +368,7 @@ verify_file(int fd, const char *filename, off_t off, i return (rc); } - if (severity || verbose) + if (severity || verbose || rc == VE_FINGERPRINT_WRONG) printf("Unverified: %s\n", ve_error_get()); if (rc == VE_FINGERPRINT_UNKNOWN && severity < VE_MUST) rc = VE_UNVERIFIED_OK; Modified: stable/12/sbin/Makefile ============================================================================== --- stable/12/sbin/Makefile Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/sbin/Makefile Fri Apr 12 01:03:00 2019 (r346145) @@ -86,6 +86,7 @@ SUBDIR.${MK_PF}+= pfctl SUBDIR.${MK_PF}+= pflogd SUBDIR.${MK_QUOTAS}+= quotacheck SUBDIR.${MK_ROUTED}+= routed +SUBDIR.${MK_VERIEXEC}+= veriexec SUBDIR.${MK_ZFS}+= bectl SUBDIR.${MK_ZFS}+= zfsbootcfg Modified: stable/12/share/mk/src.libnames.mk ============================================================================== --- stable/12/share/mk/src.libnames.mk Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/share/mk/src.libnames.mk Fri Apr 12 01:03:00 2019 (r346145) @@ -209,6 +209,21 @@ _LIBRARIES+= \ osmvendor .endif +.if ${MK_BEARSSL} == "yes" +_INTERNALLIBS+= \ + bearssl \ + secureboot \ + +LIBBEARSSL?= ${LIBBEARSSLDIR}/libbearssl${PIE_SUFFIX}.a +LIBSECUREBOOT?= ${LIBSECUREBOOTDIR}/libsecureboot${PIE_SUFFIX}.a +.endif + +.if ${MK_VERIEXEC} == "yes" +_INTERNALLIBS+= veriexec + +LIBVERIEXEC?= ${LIBVERIEXECDIR}/libveriexec${PIE_SUFFIX}.a +.endif + # Each library's LIBADD needs to be duplicated here for static linkage of # 2nd+ order consumers. Auto-generating this would be better. _DP_80211= sbuf bsdxml Modified: stable/12/share/mk/src.opts.mk ============================================================================== --- stable/12/share/mk/src.opts.mk Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/share/mk/src.opts.mk Fri Apr 12 01:03:00 2019 (r346145) @@ -191,6 +191,7 @@ __DEFAULT_YES_OPTIONS = \ ZONEINFO __DEFAULT_NO_OPTIONS = \ + BEARSSL \ BSD_GREP \ CLANG_EXTRAS \ DTRACE_TESTS \ @@ -214,6 +215,8 @@ __DEFAULT_NO_OPTIONS = \ __DEFAULT_DEPENDENT_OPTIONS= \ CLANG_FULL/CLANG \ LLVM_TARGET_ALL/CLANG \ + LOADER_VERIEXEC/BEARSSL \ + VERIEXEC/BEARSSL \ # MK_*_SUPPORT options which default to "yes" unless their corresponding # MK_* variable is set to "no". Modified: stable/12/stand/common/boot.c ============================================================================== --- stable/12/stand/common/boot.c Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/common/boot.c Fri Apr 12 01:03:00 2019 (r346145) @@ -106,6 +106,10 @@ command_boot(int argc, char *argv[]) if (archsw.arch_autoload() != 0) return(CMD_ERROR); +#ifdef LOADER_VERIEXEC + verify_pcr_export(); /* for measured boot */ +#endif + /* Call the exec handler from the loader matching the kernel */ file_formats[fp->f_loader]->l_exec(fp); return(CMD_ERROR); Modified: stable/12/stand/common/bootstrap.h ============================================================================== --- stable/12/stand/common/bootstrap.h Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/common/bootstrap.h Fri Apr 12 01:03:00 2019 (r346145) @@ -330,6 +330,9 @@ struct arch_switch /* Probe ZFS pool(s), if needed. */ void (*arch_zfs_probe)(void); + /* Return the hypervisor name/type or NULL if not virtualized. */ + const char *(*arch_hypervisor)(void); + /* For kexec-type loaders, get ksegment structure */ void (*arch_kexec_kseg_get)(int *nseg, void **kseg); }; @@ -344,6 +347,10 @@ time_t time(time_t *tloc); #ifndef CTASSERT #define CTASSERT(x) _Static_assert(x, "compile-time assertion failed") +#endif + +#ifdef LOADER_VERIEXEC +#include #endif #endif /* !_BOOTSTRAP_H_ */ Modified: stable/12/stand/common/interp_forth.c ============================================================================== --- stable/12/stand/common/interp_forth.c Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/common/interp_forth.c Fri Apr 12 01:03:00 2019 (r346145) @@ -282,6 +282,12 @@ bf_init(void) /* try to load and run init file if present */ if ((fd = open("/boot/boot.4th", O_RDONLY)) != -1) { +#ifdef LOADER_VERIEXEC + if (verify_file(fd, "/boot/boot.4th", 0, VE_GUESS) < 0) { + close(fd); + return; + } +#endif (void)ficlExecFD(bf_vm, fd); close(fd); } @@ -378,6 +384,13 @@ interp_include(const char *filename) return(CMD_ERROR); } +#ifdef LOADER_VERIEXEC + if (verify_file(fd, filename, 0, VE_GUESS) < 0) { + close(fd); + sprintf(command_errbuf,"can't verify '%s'", filename); + return(CMD_ERROR); + } +#endif /* * Read the script into memory. */ Modified: stable/12/stand/common/interp_simple.c ============================================================================== --- stable/12/stand/common/interp_simple.c Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/common/interp_simple.c Fri Apr 12 01:03:00 2019 (r346145) @@ -96,6 +96,14 @@ interp_include(const char *filename) return(CMD_ERROR); } +#ifdef LOADER_VERIEXEC + if (verify_file(fd, filename, 0, VE_GUESS) < 0) { + close(fd); + sprintf(command_errbuf,"can't verify '%s'", filename); + return(CMD_ERROR); + } +#endif + /* * Read the script into memory. */ Modified: stable/12/stand/common/load_elf.c ============================================================================== --- stable/12/stand/common/load_elf.c Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/common/load_elf.c Fri Apr 12 01:03:00 2019 (r346145) @@ -245,6 +245,12 @@ __elfN(load_elf_header)(char *filename, elf_file_t ef) goto error; } +#ifdef LOADER_VERIEXEC + if (verify_file(ef->fd, filename, bytes_read, VE_MUST) < 0) { + err = EAUTH; + goto error; + } +#endif return (0); error: Modified: stable/12/stand/common/load_elf_obj.c ============================================================================== --- stable/12/stand/common/load_elf_obj.c Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/common/load_elf_obj.c Fri Apr 12 01:03:00 2019 (r346145) @@ -129,6 +129,13 @@ __elfN(obj_loadfile)(char *filename, uint64_t dest, goto oerr; } +#ifdef LOADER_VERIEXEC + if (verify_file(ef.fd, filename, bytes_read, VE_MUST) < 0) { + err = EAUTH; + goto oerr; + } +#endif + kfp = file_findfile(NULL, __elfN(obj_kerneltype)); if (kfp == NULL) { printf("elf" __XSTRING(__ELF_WORD_SIZE) Modified: stable/12/stand/common/module.c ============================================================================== --- stable/12/stand/common/module.c Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/common/module.c Fri Apr 12 01:03:00 2019 (r346145) @@ -104,9 +104,11 @@ command_load(int argc, char *argv[]) { struct preloaded_file *fp; char *typestr; - int dofile, dokld, ch, error; + char *prefix; + char *skip; + int dflag, dofile, dokld, ch, error; - dokld = dofile = 0; + dflag = dokld = dofile = 0; optind = 1; optreset = 1; typestr = NULL; @@ -114,11 +116,21 @@ command_load(int argc, char *argv[]) command_errmsg = "no filename specified"; return (CMD_CRIT); } - while ((ch = getopt(argc, argv, "kt:")) != -1) { + prefix = skip = NULL; + while ((ch = getopt(argc, argv, "dkp:s:t:")) != -1) { switch(ch) { + case 'd': + dflag++; + break; case 'k': dokld = 1; break; + case 'p': + prefix = optarg; + break; + case 's': + skip = optarg; + break; case 't': typestr = optarg; dofile = 1; @@ -141,6 +153,14 @@ command_load(int argc, char *argv[]) return (CMD_CRIT); } +#ifdef LOADER_VERIEXEC + if (strncmp(typestr, "manifest", 8) == 0) { + if (dflag > 0) + ve_debug_set(dflag); + return (load_manifest(argv[1], prefix, skip, NULL)); + } +#endif + fp = file_findfile(argv[1], typestr); if (fp) { snprintf(command_errbuf, sizeof(command_errbuf), @@ -434,6 +454,15 @@ file_loadraw(const char *fname, char *type, int insert free(name); return(NULL); } + +#ifdef LOADER_VERIEXEC + if (verify_file(fd, name, 0, VE_MUST) < 0) { + sprintf(command_errbuf, "can't verify '%s'", name); + free(name); + close(fd); + return(NULL); + } +#endif if (archsw.arch_loadaddr != NULL) loadaddr = archsw.arch_loadaddr(LOAD_RAW, name, loadaddr); Modified: stable/12/stand/ficl/Makefile.depend ============================================================================== --- stable/12/stand/ficl/Makefile.depend Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/ficl/Makefile.depend Fri Apr 12 01:03:00 2019 (r346145) @@ -2,9 +2,7 @@ # Autogenerated - do NOT edit! DIRDEPS = \ - include \ - include/xlocale \ - lib/msun \ + stand/libsa \ .include Modified: stable/12/stand/ficl/ficl.h ============================================================================== --- stable/12/stand/ficl/ficl.h Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/ficl/ficl.h Fri Apr 12 01:03:00 2019 (r346145) @@ -1157,6 +1157,10 @@ typedef void ficlCompileFcn(FICL_SYSTEM *); DATA_SET(Xficl_compile_set, func) SET_DECLARE(Xficl_compile_set, ficlCompileFcn); +#ifdef LOADER_VERIEXEC +#include +#endif + #ifdef __cplusplus } #endif Modified: stable/12/stand/ficl/fileaccess.c ============================================================================== --- stable/12/stand/ficl/fileaccess.c Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/ficl/fileaccess.c Fri Apr 12 01:03:00 2019 (r346145) @@ -67,14 +67,21 @@ static void ficlFopen(FICL_VM *pVM, char *writeMode) / if (f == NULL) stackPushPtr(pVM->pStack, NULL); else +#ifdef LOADER_VERIEXEC + if (*mode == 'r' && + verify_file(fileno(f), filename, 0, VE_GUESS) < 0) { + fclose(f); + stackPushPtr(pVM->pStack, NULL); + } else +#endif { - ficlFILE *ff = (ficlFILE *)malloc(sizeof(ficlFILE)); - strcpy(ff->filename, filename); - ff->f = f; - stackPushPtr(pVM->pStack, ff); + ficlFILE *ff = (ficlFILE *)malloc(sizeof(ficlFILE)); + strcpy(ff->filename, filename); + ff->f = f; + stackPushPtr(pVM->pStack, ff); - fseek(f, 0, SEEK_SET); - } + fseek(f, 0, SEEK_SET); + } pushIor(pVM, f != NULL); } Modified: stable/12/stand/ficl32/Makefile.depend ============================================================================== --- stable/12/stand/ficl32/Makefile.depend Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/ficl32/Makefile.depend Fri Apr 12 01:03:00 2019 (r346145) @@ -2,9 +2,7 @@ # Autogenerated - do NOT edit! DIRDEPS = \ - include \ - include/xlocale \ - lib/msun \ + stand/libsa \ .include Modified: stable/12/stand/i386/loader/Makefile.depend ============================================================================== --- stable/12/stand/i386/loader/Makefile.depend Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/i386/loader/Makefile.depend Fri Apr 12 01:03:00 2019 (r346145) @@ -2,15 +2,12 @@ # Autogenerated - do NOT edit! DIRDEPS = \ - include \ - include/xlocale \ - stand/ficl32 \ - stand/geli \ - stand/i386/btx/btx \ - stand/i386/btx/btxldr \ - stand/i386/btx/lib \ - stand/i386/libi386 \ - stand/libsa32 \ + stand/${MACHINE_CPUARCH}/btx/btx \ + stand/${MACHINE_CPUARCH}/btx/btxldr \ + stand/${MACHINE_CPUARCH}/btx/lib \ + stand/${MACHINE_CPUARCH}/libi386 \ + stand/ficl \ + stand/libsa \ .include Modified: stable/12/stand/liblua/Makefile ============================================================================== --- stable/12/stand/liblua/Makefile Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/liblua/Makefile Fri Apr 12 01:03:00 2019 (r346145) @@ -35,5 +35,8 @@ CFLAGS+= -I${BOOTSRC}/include -I${LIBLUASRC} -I${LUASR .if ${MACHINE_CPUARCH} == "amd64" && ${DO32:U0} == 0 CFLAGS+= -fPIC .endif +.if ${MK_LOADER_VERIEXEC} == "yes" +CFLAGS+= -I${SRCTOP}/lib/libsecureboot/h -DLOADER_VERIEXEC +.endif .include Modified: stable/12/stand/liblua/lstd.c ============================================================================== --- stable/12/stand/liblua/lstd.c Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/liblua/lstd.c Fri Apr 12 01:03:00 2019 (r346145) @@ -31,6 +31,10 @@ __FBSDID("$FreeBSD$"); #include "lstd.h" #include "math.h" +#ifdef LOADER_VERIEXEC +#include +#endif + FILE * fopen(const char *filename, const char *mode) { @@ -75,6 +79,17 @@ fopen(const char *filename, const char *mode) close(fd); return (NULL); } + +#ifdef LOADER_VERIEXEC + /* only regular files and only reading makes sense */ + if (S_ISREG(st.st_mode) && !(m & O_WRONLY)) { + if (verify_file(fd, filename, 0, VE_GUESS) < 0) { + free(f); + close(fd); + return (NULL); + } + } +#endif f->fd = fd; f->offset = 0; Modified: stable/12/stand/libsa/Makefile ============================================================================== --- stable/12/stand/libsa/Makefile Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/libsa/Makefile Fri Apr 12 01:03:00 2019 (r346145) @@ -164,6 +164,11 @@ SRCS+= explicit_bzero.c .include "${SASRC}/geli/Makefile.inc" .endif +.if ${MK_LOADER_VERIEXEC} == "yes" && ${MK_BEARSSL} == "yes" +.include "${SRCTOP}/lib/libbearssl/Makefile.libsa.inc" +.include "${SRCTOP}/lib/libsecureboot/Makefile.libsa.inc" +.endif + # Maybe ZFS .if ${MK_LOADER_ZFS} == "yes" .include "${SASRC}/zfs/Makefile.inc" Modified: stable/12/stand/libsa/Makefile.depend ============================================================================== --- stable/12/stand/libsa/Makefile.depend Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/libsa/Makefile.depend Fri Apr 12 01:03:00 2019 (r346145) @@ -2,10 +2,6 @@ # Autogenerated - do NOT edit! DIRDEPS = \ - include \ - include/arpa \ - include/xlocale \ - lib/libbz2 \ .include Modified: stable/12/stand/libsa32/Makefile.depend ============================================================================== --- stable/12/stand/libsa32/Makefile.depend Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/libsa32/Makefile.depend Fri Apr 12 01:03:00 2019 (r346145) @@ -2,10 +2,7 @@ # Autogenerated - do NOT edit! DIRDEPS = \ - include \ - include/arpa \ - include/xlocale \ - lib/libbz2 \ + stand/libsa \ .include Modified: stable/12/stand/loader.mk ============================================================================== --- stable/12/stand/loader.mk Fri Apr 12 00:53:30 2019 (r346144) +++ stable/12/stand/loader.mk Fri Apr 12 01:03:00 2019 (r346145) @@ -73,6 +73,10 @@ SRCS+= interp_simple.c .error Unknown interpreter ${LOADER_INTERP} .endif +.if ${MK_LOADER_VERIEXEC} != "no" +CFLAGS+= -DLOADER_VERIEXEC -I${SRCTOP}/lib/libsecureboot/h +.endif + .if defined(BOOT_PROMPT_123) CFLAGS+= -DBOOT_PROMPT_123 .endif Copied: stable/12/tools/build/options/WITH_BEARSSL (from r344566, head/tools/build/options/WITH_BEARSSL) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/tools/build/options/WITH_BEARSSL Fri Apr 12 01:03:00 2019 (r346145, copy of r344566, head/tools/build/options/WITH_BEARSSL) @@ -0,0 +1,11 @@ +.\" $FreeBSD$ +Build the BearSSL library. +.Pp +BearSSL is a tiny SSL library suitable for embedded environments. +For details see +.Lk http://www.BearSSL.org/ +.Pp +This library is currently only used to perform +signature verification and related operations +for Verified Exec and +.Xr loader 8 . Copied: stable/12/tools/build/options/WITH_LOADER_VERIEXEC (from r344566, head/tools/build/options/WITH_LOADER_VERIEXEC) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/tools/build/options/WITH_LOADER_VERIEXEC Fri Apr 12 01:03:00 2019 (r346145, copy of r344566, head/tools/build/options/WITH_LOADER_VERIEXEC) @@ -0,0 +1,7 @@ +.\" $FreeBSD$ +Enable building +.Xr loader 8 +with support for verifcation similar to Verified Exec. +.Pp +It depends on +.Va WITH_BEARSSL Copied: stable/12/tools/build/options/WITH_VERIEXEC (from r344566, head/tools/build/options/WITH_VERIEXEC) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/tools/build/options/WITH_VERIEXEC Fri Apr 12 01:03:00 2019 (r346145, copy of r344566, head/tools/build/options/WITH_VERIEXEC) @@ -0,0 +1,9 @@ +.\" $FreeBSD$ +Enable building +.Xr veriexec 8 +which loads the contents of verified manifests into the kernel +for use by +.Xr mac_veriexec 4 +.Pp +It depends on +.Va WITH_BEARSSL From owner-svn-src-all@freebsd.org Fri Apr 12 02:24:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 01D07156FDD6; Fri, 12 Apr 2019 02:24:07 +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 8F0A2872C6; Fri, 12 Apr 2019 02:24:06 +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 7C6F51B162; Fri, 12 Apr 2019 02:24:06 +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 x3C2O6aS095503; Fri, 12 Apr 2019 02:24:06 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3C2O6bE095502; Fri, 12 Apr 2019 02:24:06 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201904120224.x3C2O6bE095502@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Fri, 12 Apr 2019 02:24:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346146 - stable/12/sbin/fsck_msdosfs X-SVN-Group: stable-12 X-SVN-Commit-Author: delphij X-SVN-Commit-Paths: stable/12/sbin/fsck_msdosfs X-SVN-Commit-Revision: 346146 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8F0A2872C6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.93)[-0.935,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 02:24:07 -0000 Author: delphij Date: Fri Apr 12 02:24:06 2019 New Revision: 346146 URL: https://svnweb.freebsd.org/changeset/base/346146 Log: MFC r345647: Distinguish between lseek errors and read errores. Modified: stable/12/sbin/fsck_msdosfs/dir.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/fsck_msdosfs/dir.c ============================================================================== --- stable/12/sbin/fsck_msdosfs/dir.c Fri Apr 12 01:03:00 2019 (r346145) +++ stable/12/sbin/fsck_msdosfs/dir.c Fri Apr 12 02:24:06 2019 (r346146) @@ -35,6 +35,7 @@ static const char rcsid[] = "$FreeBSD$"; #endif /* not lint */ +#include #include #include #include @@ -329,8 +330,11 @@ delete(int f, struct bootblock *boot, struct fatEntry } off = startcl * boot->bpbSecPerClust + boot->ClusterOffset; off *= boot->bpbBytesPerSec; - if (lseek(f, off, SEEK_SET) != off - || read(f, delbuf, clsz) != clsz) { + if (lseek(f, off, SEEK_SET) != off) { + perr("Unable to lseek to %" PRId64, off); + return FSFATAL; + } + if (read(f, delbuf, clsz) != clsz) { perr("Unable to read directory"); return FSFATAL; } @@ -338,8 +342,11 @@ delete(int f, struct bootblock *boot, struct fatEntry *s = SLOT_DELETED; s += 32; } - if (lseek(f, off, SEEK_SET) != off - || write(f, delbuf, clsz) != clsz) { + if (lseek(f, off, SEEK_SET) != off) { + perr("Unable to lseek to %" PRId64, off); + return FSFATAL; + } + if (write(f, delbuf, clsz) != clsz) { perr("Unable to write directory"); return FSFATAL; } From owner-svn-src-all@freebsd.org Fri Apr 12 02:27:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 47BBC156FE76; Fri, 12 Apr 2019 02:27:04 +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 DDF3B8740E; Fri, 12 Apr 2019 02:27:03 +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 AC4B91B163; Fri, 12 Apr 2019 02:27:03 +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 x3C2R3Kt095675; Fri, 12 Apr 2019 02:27:03 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3C2R3gB095674; Fri, 12 Apr 2019 02:27:03 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201904120227.x3C2R3gB095674@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Fri, 12 Apr 2019 02:27:03 +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: r346147 - stable/11/sbin/fsck_msdosfs X-SVN-Group: stable-11 X-SVN-Commit-Author: delphij X-SVN-Commit-Paths: stable/11/sbin/fsck_msdosfs X-SVN-Commit-Revision: 346147 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: DDF3B8740E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.93)[-0.935,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 02:27:04 -0000 Author: delphij Date: Fri Apr 12 02:27:03 2019 New Revision: 346147 URL: https://svnweb.freebsd.org/changeset/base/346147 Log: MFC r345647: Distinguish between lseek errors and read errores. Modified: stable/11/sbin/fsck_msdosfs/dir.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sbin/fsck_msdosfs/dir.c ============================================================================== --- stable/11/sbin/fsck_msdosfs/dir.c Fri Apr 12 02:24:06 2019 (r346146) +++ stable/11/sbin/fsck_msdosfs/dir.c Fri Apr 12 02:27:03 2019 (r346147) @@ -35,6 +35,7 @@ static const char rcsid[] = "$FreeBSD$"; #endif /* not lint */ +#include #include #include #include @@ -329,8 +330,11 @@ delete(int f, struct bootblock *boot, struct fatEntry } off = startcl * boot->bpbSecPerClust + boot->ClusterOffset; off *= boot->bpbBytesPerSec; - if (lseek(f, off, SEEK_SET) != off - || read(f, delbuf, clsz) != clsz) { + if (lseek(f, off, SEEK_SET) != off) { + perr("Unable to lseek to %" PRId64, off); + return FSFATAL; + } + if (read(f, delbuf, clsz) != clsz) { perr("Unable to read directory"); return FSFATAL; } @@ -338,8 +342,11 @@ delete(int f, struct bootblock *boot, struct fatEntry *s = SLOT_DELETED; s += 32; } - if (lseek(f, off, SEEK_SET) != off - || write(f, delbuf, clsz) != clsz) { + if (lseek(f, off, SEEK_SET) != off) { + perr("Unable to lseek to %" PRId64, off); + return FSFATAL; + } + if (write(f, delbuf, clsz) != clsz) { perr("Unable to write directory"); return FSFATAL; } From owner-svn-src-all@freebsd.org Fri Apr 12 10:10:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 948B7157845C; Fri, 12 Apr 2019 10:10:00 +0000 (UTC) (envelope-from manu@bidouilliste.com) Received: from mail.blih.net (mail.blih.net [212.83.177.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.blih.net", Issuer "mail.blih.net" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id B747D6D517; Fri, 12 Apr 2019 10:09:59 +0000 (UTC) (envelope-from manu@bidouilliste.com) Received: from mail.blih.net (mail.blih.net [212.83.177.182]) by mail.blih.net (OpenSMTPD) with ESMTP id ff019eb2; Fri, 12 Apr 2019 12:09:52 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=bidouilliste.com; h=date :from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-type:content-transfer-encoding; s=mail; bh=qhnFCFDNBiPJRegrSjiRKgO+Wd0=; b=DlBxiJPDV/uJmyR0SbnwTXdor+Us PY/pi8mqhUUk8S/WsT0KAMy7prkm1kMRdbHTTiIMYNlD2LLz2B9OndVdXGLkiI1X cpHCE8wvb4mXlZSRPKJa79xkebHJJcrZgeeJXsqV/CV75J+nFuYlkJmn8IRlo0vJ 2puieo34GRIW6qw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=bidouilliste.com; h=date :from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-type:content-transfer-encoding; q=dns; s= mail; b=FGolKfszleqnMMFbuJnLCuEst1JnymnfdspivC61np1VbCffG7pdfd11 RFH4F/72KYlDbjK66gD1Ohdpl9/43cTEVFCleytjs2M6DcV9Nqqi/6JO5d/CHduy 8JU2LlTrtD9Xg2sJ3bsY1KoMYMUsc3l+9pUcK1WS9F2pyqofzvA= Received: from knuckles.blih.net (ip-9.net-89-3-105.rev.numericable.fr [89.3.105.9]) by mail.blih.net (OpenSMTPD) with ESMTPSA id 7b72fb0b TLS version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO; Fri, 12 Apr 2019 12:09:51 +0200 (CEST) Date: Fri, 12 Apr 2019 12:09:50 +0200 From: Emmanuel Vadot To: Svatopluk Kraus Cc: Emmanuel Vadot , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346096 - head/sys/arm/conf Message-Id: <20190412120950.dd0aae47e93ba7b50aaa47c6@bidouilliste.com> In-Reply-To: References: <201904101927.x3AJREvt013138@repo.freebsd.org> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; amd64-portbld-freebsd13.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: B747D6D517 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.93 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.93)[-0.933,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 10:10:00 -0000 Hi Svatopluk, On Thu, 11 Apr 2019 21:23:35 +0200 Svatopluk Kraus wrote: > I understand the reason for GENERIC. But are we so blind that we will > delete everything that is not GENERIC? In other words, why to delete > nice specific KERNEL configurations for boards we support when only > reason I see is that GENERIC is so cool for some people? That's simple and maybe I should have explain more in the commit message. Those configs aren't tested. All the images that we provide are using GENERIC kernel so we know that GENERIC is tested (somewhat). Those config will also lack update if we need to add a new required pseudo device (like syscon) and maybe it's already the case on some. The only way (for now) that we could produce board specific kernel is to include GENERIC and add a bunch of nodevice "blah", which is not going to happen. We have plan for splitting the GENERIC kernel into soc familly file, then it would be easier for people to have a SoC kernel config. Finaly I guess that when you say "boards we support" you are talking about RPI2, BEAGLEBONE or maybe PANDABOARD. For me those aren't board that we support, those are survivors that had the chance to not die in the past years. No developer care about or work on those boards. > Svatopluk Kraus > > > > On Wed, Apr 10, 2019 at 9:27 PM Emmanuel Vadot wrote: > > > > Author: manu > > Date: Wed Apr 10 19:27:14 2019 > > New Revision: 346096 > > URL: https://svnweb.freebsd.org/changeset/base/346096 > > > > Log: > > arm: kernel: Remove old kernel configs > > > > Follow up to r346095 > > All those kernels are either not working or the release have switched > > to GENERIC > > > > Deleted: > > head/sys/arm/conf/AML8726 > > head/sys/arm/conf/BEAGLEBONE > > head/sys/arm/conf/CHROMEBOOK > > head/sys/arm/conf/CHROMEBOOK-PEACH-PIT > > head/sys/arm/conf/CHROMEBOOK-PEACH-PIT.hints > > head/sys/arm/conf/CHROMEBOOK-SNOW > > head/sys/arm/conf/CHROMEBOOK-SPRING > > head/sys/arm/conf/CHROMEBOOK.hints > > head/sys/arm/conf/EXYNOS5.common > > head/sys/arm/conf/EXYNOS5250 > > head/sys/arm/conf/EXYNOS5420 > > head/sys/arm/conf/ODROIDC1 > > head/sys/arm/conf/PANDABOARD > > head/sys/arm/conf/PANDABOARD.hints > > head/sys/arm/conf/RADXA > > head/sys/arm/conf/RADXA-LITE > > head/sys/arm/conf/RK3188 > > head/sys/arm/conf/RPI2 > > -- Emmanuel Vadot From owner-svn-src-all@freebsd.org Fri Apr 12 10:13:20 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6C9DE1578698; Fri, 12 Apr 2019 10:13:20 +0000 (UTC) (envelope-from bapt@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 19A4F6D97C; Fri, 12 Apr 2019 10:13:20 +0000 (UTC) (envelope-from bapt@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 E45B01FFBA; Fri, 12 Apr 2019 10:13:19 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CADJ1r049701; Fri, 12 Apr 2019 10:13:19 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CADHOd049689; Fri, 12 Apr 2019 10:13:17 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201904121013.x3CADHOd049689@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Fri, 12 Apr 2019 10:13:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346149 - in head: contrib/mandoc usr.bin/mandoc X-SVN-Group: head X-SVN-Commit-Author: bapt X-SVN-Commit-Paths: in head: contrib/mandoc usr.bin/mandoc X-SVN-Commit-Revision: 346149 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 19A4F6D97C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.952,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 10:13:20 -0000 Author: bapt Date: Fri Apr 12 10:13:17 2019 New Revision: 346149 URL: https://svnweb.freebsd.org/changeset/base/346149 Log: Update mandoc to 1.14.5 MFC after: 2 weeks Added: head/contrib/mandoc/arch.c - copied unchanged from r346148, vendor/mandoc/dist/arch.c head/contrib/mandoc/eqn.h - copied unchanged from r346148, vendor/mandoc/dist/eqn.h head/contrib/mandoc/eqn_parse.h - copied unchanged from r346148, vendor/mandoc/dist/eqn_parse.h head/contrib/mandoc/mandoc_msg.c - copied unchanged from r346148, vendor/mandoc/dist/mandoc_msg.c head/contrib/mandoc/mandoc_parse.h - copied unchanged from r346148, vendor/mandoc/dist/mandoc_parse.h head/contrib/mandoc/tbl.h - copied unchanged from r346148, vendor/mandoc/dist/tbl.h head/contrib/mandoc/tbl_int.h - copied unchanged from r346148, vendor/mandoc/dist/tbl_int.h head/contrib/mandoc/tbl_parse.h - copied unchanged from r346148, vendor/mandoc/dist/tbl_parse.h Deleted: head/contrib/mandoc/st.in Modified: head/contrib/mandoc/INSTALL head/contrib/mandoc/LICENSE head/contrib/mandoc/Makefile head/contrib/mandoc/Makefile.depend head/contrib/mandoc/NEWS head/contrib/mandoc/TODO head/contrib/mandoc/apropos.1 head/contrib/mandoc/att.c head/contrib/mandoc/cgi.c head/contrib/mandoc/chars.c head/contrib/mandoc/config.h head/contrib/mandoc/configure head/contrib/mandoc/configure.local.example head/contrib/mandoc/dbm.c head/contrib/mandoc/demandoc.c head/contrib/mandoc/eqn.c head/contrib/mandoc/eqn_html.c head/contrib/mandoc/eqn_term.c head/contrib/mandoc/gmdiff head/contrib/mandoc/html.c head/contrib/mandoc/html.h head/contrib/mandoc/lib.c head/contrib/mandoc/lib.in head/contrib/mandoc/libman.h head/contrib/mandoc/libmandoc.h head/contrib/mandoc/libmdoc.h head/contrib/mandoc/main.c head/contrib/mandoc/main.h head/contrib/mandoc/man.1 head/contrib/mandoc/man.7 head/contrib/mandoc/man.c head/contrib/mandoc/man.conf.5 head/contrib/mandoc/man.h head/contrib/mandoc/man_html.c head/contrib/mandoc/man_macro.c head/contrib/mandoc/man_term.c head/contrib/mandoc/man_validate.c head/contrib/mandoc/manconf.h head/contrib/mandoc/mandoc.1 head/contrib/mandoc/mandoc.3 head/contrib/mandoc/mandoc.c head/contrib/mandoc/mandoc.css head/contrib/mandoc/mandoc.h head/contrib/mandoc/mandoc_char.7 head/contrib/mandoc/mandoc_headers.3 head/contrib/mandoc/mandoc_html.3 head/contrib/mandoc/mandocd.c head/contrib/mandoc/mandocdb.c head/contrib/mandoc/manpath.c head/contrib/mandoc/mansearch.c head/contrib/mandoc/mansearch.h head/contrib/mandoc/mdoc.7 head/contrib/mandoc/mdoc.c head/contrib/mandoc/mdoc.h head/contrib/mandoc/mdoc_argv.c head/contrib/mandoc/mdoc_html.c head/contrib/mandoc/mdoc_macro.c head/contrib/mandoc/mdoc_man.c head/contrib/mandoc/mdoc_markdown.c head/contrib/mandoc/mdoc_state.c head/contrib/mandoc/mdoc_term.c head/contrib/mandoc/mdoc_validate.c head/contrib/mandoc/msec.c head/contrib/mandoc/out.c head/contrib/mandoc/out.h head/contrib/mandoc/preconv.c head/contrib/mandoc/read.c head/contrib/mandoc/roff.7 head/contrib/mandoc/roff.c head/contrib/mandoc/roff.h head/contrib/mandoc/roff_html.c head/contrib/mandoc/roff_int.h head/contrib/mandoc/roff_term.c head/contrib/mandoc/roff_validate.c head/contrib/mandoc/st.c head/contrib/mandoc/tag.c head/contrib/mandoc/tag.h head/contrib/mandoc/tbl.3 head/contrib/mandoc/tbl.7 head/contrib/mandoc/tbl.c head/contrib/mandoc/tbl_data.c head/contrib/mandoc/tbl_html.c head/contrib/mandoc/tbl_layout.c head/contrib/mandoc/tbl_opts.c head/contrib/mandoc/tbl_term.c head/contrib/mandoc/term.c head/contrib/mandoc/term.h head/contrib/mandoc/term_ascii.c head/contrib/mandoc/term_tab.c head/contrib/mandoc/test-getsubopt.c head/contrib/mandoc/test-strcasestr.c head/contrib/mandoc/test-stringlist.c head/contrib/mandoc/test-strptime.c head/contrib/mandoc/test-vasprintf.c head/contrib/mandoc/test-wchar.c head/contrib/mandoc/tree.c head/usr.bin/mandoc/Makefile Directory Properties: head/contrib/mandoc/ (props changed) Modified: head/contrib/mandoc/INSTALL ============================================================================== --- head/contrib/mandoc/INSTALL Fri Apr 12 05:43:01 2019 (r346148) +++ head/contrib/mandoc/INSTALL Fri Apr 12 10:13:17 2019 (r346149) @@ -1,4 +1,4 @@ -$Id: INSTALL,v 1.22 2018/07/31 15:34:00 schwarze Exp $ +$Id: INSTALL,v 1.23 2019/03/06 15:58:10 schwarze Exp $ About the portable mandoc distribution -------------------------------------- @@ -18,7 +18,7 @@ tech@ mailing list, too. Enjoy using the mandoc toolset! -Ingo Schwarze, Karlsruhe, August 2018 +Ingo Schwarze, Karlsruhe, March 2019 Installation @@ -67,7 +67,8 @@ variables into "configure.local" and go back to step 4 7. Optionally run the regression suite. Basically, that amounts to "cd regress && ./regress.pl". But you should probably look at "./mandoc -l regress/regress.pl.1" -first. +first. In particular, regarding Solaris systems, look at the BUGS +section of that manual page. 8. Run "sudo make install". If you intend to build a binary package using some kind of fake root mechanism, you may need a Modified: head/contrib/mandoc/LICENSE ============================================================================== --- head/contrib/mandoc/LICENSE Fri Apr 12 05:43:01 2019 (r346148) +++ head/contrib/mandoc/LICENSE Fri Apr 12 10:13:17 2019 (r346149) @@ -1,8 +1,8 @@ -$Id: LICENSE,v 1.19 2018/07/31 10:18:15 schwarze Exp $ +$Id: LICENSE,v 1.21 2018/11/26 17:11:11 schwarze Exp $ -With the exceptions noted below, all code and documentation -contained in the mandoc toolkit is protected by the Copyright -of the following developers: +With the exceptions noted below, all non-trivial files contained +in the mandoc toolkit are protected by the Copyright of the following +developers: Copyright (c) 2008-2012, 2014 Kristaps Dzonsons Copyright (c) 2010-2018 Ingo Schwarze @@ -12,13 +12,14 @@ Copyright (c) 2013 Franco Fichtner Copyright (c) 2016 Ed Maste Copyright (c) 2017 Michael Stapelberg +Copyright (c) 2017 Anthony Bentley Copyright (c) 1998, 2004, 2010 Todd C. Miller Copyright (c) 2008, 2017 Otto Moerbeek Copyright (c) 2004 Ted Unangst Copyright (c) 1994 Christos Zoulas Copyright (c) 2003, 2007, 2008, 2014 Jason McIntyre -See the individual source files for information about who contributed +See the individual files for information about who contributed to which file during which years. Modified: head/contrib/mandoc/Makefile ============================================================================== --- head/contrib/mandoc/Makefile Fri Apr 12 05:43:01 2019 (r346148) +++ head/contrib/mandoc/Makefile Fri Apr 12 10:13:17 2019 (r346149) @@ -1,7 +1,7 @@ -# $Id: Makefile,v 1.519 2018/07/31 15:34:00 schwarze Exp $ +# $Id: Makefile,v 1.530 2019/03/06 16:08:41 schwarze Exp $ # # Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons -# Copyright (c) 2011, 2013-2018 Ingo Schwarze +# Copyright (c) 2011, 2013-2019 Ingo Schwarze # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above @@ -15,7 +15,7 @@ # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -VERSION = 1.14.4 +VERSION = 1.14.5 # === LIST OF FILES ==================================================== @@ -37,9 +37,9 @@ TESTSRCS = test-be32toh.c \ test-PATH_MAX.c \ test-pledge.c \ test-progname.c \ - test-recvmsg.c \ test-reallocarray.c \ test-recallocarray.c \ + test-recvmsg.c \ test-rewb-bsd.c \ test-rewb-sysv.c \ test-sandbox_init.c \ @@ -54,7 +54,8 @@ TESTSRCS = test-be32toh.c \ test-vasprintf.c \ test-wchar.c -SRCS = att.c \ +SRCS = arch.c \ + att.c \ catman.c \ cgi.c \ chars.c \ @@ -96,6 +97,7 @@ SRCS = att.c \ man_validate.c \ mandoc.c \ mandoc_aux.c \ + mandoc_msg.c \ mandoc_ohash.c \ mandoc_xr.c \ mandocd.c \ @@ -155,13 +157,14 @@ DISTFILES = INSTALL \ dbm_map.h \ demandoc.1 \ eqn.7 \ + eqn.h \ + eqn_parse.h \ gmdiff \ html.h \ lib.in \ libman.h \ libmandoc.h \ libmdoc.h \ - libroff.h \ main.h \ makewhatis.8 \ man.1 \ @@ -184,6 +187,7 @@ DISTFILES = INSTALL \ mandoc_html.3 \ mandoc_malloc.3 \ mandoc_ohash.h \ + mandoc_parse.h \ mandoc_xr.h \ mandocd.8 \ mansearch.3 \ @@ -198,10 +202,12 @@ DISTFILES = INSTALL \ roff.h \ roff_int.h \ soelim.1 \ - st.in \ tag.h \ tbl.3 \ tbl.7 \ + tbl.h \ + tbl_int.h \ + tbl_parse.h \ term.h \ $(SRCS) \ $(TESTSRCS) @@ -230,9 +236,11 @@ LIBROFF_OBJS = eqn.o \ LIBMANDOC_OBJS = $(LIBMAN_OBJS) \ $(LIBMDOC_OBJS) \ $(LIBROFF_OBJS) \ + arch.o \ chars.o \ mandoc.o \ mandoc_aux.o \ + mandoc_msg.o \ mandoc_ohash.o \ mandoc_xr.o \ msec.o \ @@ -320,6 +328,7 @@ SOELIM_OBJS = soelim.o \ WWW_MANS = apropos.1.html \ demandoc.1.html \ man.1.html \ + man.options.1.html \ mandoc.1.html \ soelim.1.html \ man.cgi.3.html \ @@ -336,20 +345,27 @@ WWW_MANS = apropos.1.html \ eqn.7.html \ man.7.html \ mandoc_char.7.html \ - mandocd.8.html \ mdoc.7.html \ roff.7.html \ tbl.7.html \ catman.8.html \ makewhatis.8.html \ man.cgi.8.html \ + mandocd.8.html + +WWW_INCS = eqn.h.html \ + html.h.html \ man.h.html \ manconf.h.html \ mandoc.h.html \ mandoc_aux.h.html \ + mandoc_parse.h.html \ mansearch.h.html \ mdoc.h.html \ - roff.h.html + roff.h.html \ + tbl.h.html \ + tbl_int.h.html \ + tbl_parse.h.html # === USER CONFIGURATION =============================================== @@ -361,9 +377,9 @@ all: mandoc demandoc soelim $(BUILD_TARGETS) Makefile. install: base-install $(INSTALL_TARGETS) -www: $(WWW_MANS) +www: $(WWW_MANS) $(WWW_INCS) -$(WWW_MANS): mandoc +$(WWW_MANS) $(WWW_INCS): mandoc .PHONY: base-install cgi-install install www-install .PHONY: clean distclean depend @@ -382,7 +398,7 @@ clean: rm -f mandocd catman catman.o $(MANDOCD_OBJS) rm -f demandoc $(DEMANDOC_OBJS) rm -f soelim $(SOELIM_OBJS) - rm -f $(WWW_MANS) mandoc.tar.gz mandoc.sha256 + rm -f $(WWW_MANS) $(WWW_INCS) mandoc*.tar.gz mandoc*.sha256 rm -rf *.dSYM base-install: mandoc demandoc soelim @@ -420,8 +436,8 @@ lib-install: libmandoc.a mkdir -p $(DESTDIR)$(INCLUDEDIR) mkdir -p $(DESTDIR)$(MANDIR)/man3 $(INSTALL_LIB) libmandoc.a $(DESTDIR)$(LIBDIR) - $(INSTALL_LIB) man.h mandoc.h mandoc_aux.h mdoc.h roff.h \ - $(DESTDIR)$(INCLUDEDIR) + $(INSTALL_LIB) eqn.h man.h mandoc.h mandoc_aux.h mandoc_parse.h \ + mdoc.h roff.h tbl.h $(DESTDIR)$(INCLUDEDIR) $(INSTALL_MAN) mandoc.3 mandoc_escape.3 mandoc_malloc.3 \ mansearch.3 mchars_alloc.3 tbl.3 $(DESTDIR)$(MANDIR)/man3 @@ -475,11 +491,14 @@ uninstall: rm -f $(DESTDIR)$(MANDIR)/man3/mansearch.3 rm -f $(DESTDIR)$(MANDIR)/man3/mchars_alloc.3 rm -f $(DESTDIR)$(MANDIR)/man3/tbl.3 + rm -f $(DESTDIR)$(INCLUDEDIR)/eqn.h rm -f $(DESTDIR)$(INCLUDEDIR)/man.h rm -f $(DESTDIR)$(INCLUDEDIR)/mandoc.h rm -f $(DESTDIR)$(INCLUDEDIR)/mandoc_aux.h + rm -f $(DESTDIR)$(INCLUDEDIR)/mandoc_parse.h rm -f $(DESTDIR)$(INCLUDEDIR)/mdoc.h rm -f $(DESTDIR)$(INCLUDEDIR)/roff.h + rm -f $(DESTDIR)$(INCLUDEDIR)/tbl.h [ ! -e $(DESTDIR)$(INCLUDEDIR) ] || rmdir $(DESTDIR)$(INCLUDEDIR) regress: all @@ -516,7 +535,9 @@ soelim: $(SOELIM_OBJS) # --- maintainer targets --- www-install: www - $(INSTALL_DATA) $(WWW_MANS) mandoc.css $(HTDOCDIR) + $(INSTALL_DATA) mandoc.css $(HTDOCDIR) + $(INSTALL_DATA) $(WWW_MANS) $(HTDOCDIR)/man + $(INSTALL_DATA) $(WWW_INCS) $(HTDOCDIR)/includes depend: config.h mkdep -f Makefile.depend $(CFLAGS) $(SRCS) @@ -564,6 +585,10 @@ mandoc-$(VERSION).tar.gz: $(DISTFILES) ( cd .dist/ && tar zcf ../$@ mandoc-$(VERSION) ) rm -rf .dist/ +dist-install: dist + $(INSTALL_DATA) mandoc-$(VERSION).tar.gz mandoc-$(VERSION).sha256 \ + $(HTDOCDIR)/snapshots + # === SUFFIX RULES ===================================================== .SUFFIXES: .1 .3 .5 .7 .8 .h @@ -573,5 +598,6 @@ mandoc-$(VERSION).tar.gz: $(DISTFILES) highlight -I $< > $@ .1.1.html .3.3.html .5.5.html .7.7.html .8.8.html: mandoc - ./mandoc -Thtml -Wall,stop \ - -Ostyle=mandoc.css,man=%N.%S.html,includes=%I.html $< > $@ + mandoc -Thtml -Wwarning,stop \ + -O 'style=/mandoc.css,man=/man/%N.%S.html;https://man.openbsd.org/%N.%S,includes=/includes/%I.html' \ + $< > $@ Modified: head/contrib/mandoc/Makefile.depend ============================================================================== --- head/contrib/mandoc/Makefile.depend Fri Apr 12 05:43:01 2019 (r346148) +++ head/contrib/mandoc/Makefile.depend Fri Apr 12 10:13:17 2019 (r346149) @@ -1,6 +1,7 @@ -att.o: att.c config.h mandoc.h roff.h mdoc.h libmdoc.h +arch.o: arch.c config.h roff.h +att.o: att.c config.h roff.h libmdoc.h catman.o: catman.c config.h compat_fts.h -cgi.o: cgi.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h man.h main.h manconf.h mansearch.h cgi.h +cgi.o: cgi.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h man.h mandoc_parse.h main.h manconf.h mansearch.h cgi.h chars.o: chars.c config.h mandoc.h mandoc_aux.h mandoc_ohash.h compat_ohash.h libmandoc.h compat_err.o: compat_err.c config.h compat_fts.o: compat_fts.c config.h compat_fts.h @@ -26,54 +27,55 @@ dba_read.o: dba_read.c mandoc_aux.h mansearch.h dba_ar dba_write.o: dba_write.c config.h dba_write.h dbm.o: dbm.c config.h mansearch.h dbm_map.h dbm.h dbm_map.o: dbm_map.c config.h mansearch.h dbm_map.h dbm.h -demandoc.o: demandoc.c config.h mandoc.h roff.h man.h mdoc.h -eqn.o: eqn.c config.h mandoc_aux.h mandoc.h roff.h libmandoc.h libroff.h -eqn_html.o: eqn_html.c config.h mandoc.h out.h html.h -eqn_term.o: eqn_term.c config.h mandoc.h out.h term.h +demandoc.o: demandoc.c config.h mandoc.h roff.h man.h mdoc.h mandoc_parse.h +eqn.o: eqn.c config.h mandoc_aux.h mandoc.h roff.h eqn.h libmandoc.h eqn_parse.h +eqn_html.o: eqn_html.c config.h mandoc.h eqn.h out.h html.h +eqn_term.o: eqn_term.c config.h eqn.h out.h term.h html.o: html.c config.h mandoc_aux.h mandoc_ohash.h compat_ohash.h mandoc.h roff.h out.h html.h manconf.h main.h -lib.o: lib.c config.h mandoc.h roff.h mdoc.h libmdoc.h lib.in -main.o: main.c config.h mandoc_aux.h mandoc.h mandoc_xr.h roff.h mdoc.h man.h tag.h main.h manconf.h mansearch.h +lib.o: lib.c config.h roff.h libmdoc.h lib.in +main.o: main.c config.h mandoc_aux.h mandoc.h mandoc_xr.h roff.h mdoc.h man.h mandoc_parse.h tag.h main.h manconf.h mansearch.h man.o: man.c config.h mandoc_aux.h mandoc.h roff.h man.h libmandoc.h roff_int.h libman.h man_html.o: man_html.c config.h mandoc_aux.h mandoc.h roff.h man.h out.h html.h main.h man_macro.o: man_macro.c config.h mandoc.h roff.h man.h libmandoc.h roff_int.h libman.h -man_term.o: man_term.c config.h mandoc_aux.h mandoc.h roff.h man.h out.h term.h main.h +man_term.o: man_term.c config.h mandoc_aux.h roff.h man.h out.h term.h main.h man_validate.o: man_validate.c config.h mandoc_aux.h mandoc.h roff.h man.h libmandoc.h roff_int.h libman.h -mandoc.o: mandoc.c config.h mandoc_aux.h mandoc.h roff.h libmandoc.h +mandoc.o: mandoc.c config.h mandoc_aux.h mandoc.h roff.h libmandoc.h roff_int.h mandoc_aux.o: mandoc_aux.c config.h mandoc.h mandoc_aux.h +mandoc_msg.o: mandoc_msg.c mandoc.h mandoc_ohash.o: mandoc_ohash.c mandoc_aux.h mandoc_ohash.h compat_ohash.h mandoc_xr.o: mandoc_xr.c mandoc_aux.h mandoc_ohash.h compat_ohash.h mandoc_xr.h -mandocd.o: mandocd.c config.h mandoc.h roff.h mdoc.h man.h main.h manconf.h -mandocdb.o: mandocdb.c config.h compat_fts.h mandoc_aux.h mandoc_ohash.h compat_ohash.h mandoc.h roff.h mdoc.h man.h manconf.h mansearch.h dba_array.h dba.h +mandocd.o: mandocd.c config.h mandoc.h roff.h mdoc.h man.h mandoc_parse.h main.h manconf.h +mandocdb.o: mandocdb.c config.h compat_fts.h mandoc_aux.h mandoc_ohash.h compat_ohash.h mandoc.h roff.h mdoc.h man.h mandoc_parse.h manconf.h mansearch.h dba_array.h dba.h manpath.o: manpath.c config.h mandoc_aux.h manconf.h -mansearch.o: mansearch.c config.h mandoc.h mandoc_aux.h mandoc_ohash.h compat_ohash.h manconf.h mansearch.h dbm.h +mansearch.o: mansearch.c config.h mandoc_aux.h mandoc_ohash.h compat_ohash.h manconf.h mansearch.h dbm.h mdoc.o: mdoc.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h libmandoc.h roff_int.h libmdoc.h mdoc_argv.o: mdoc_argv.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h libmandoc.h roff_int.h libmdoc.h mdoc_html.o: mdoc_html.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h out.h html.h main.h mdoc_macro.o: mdoc_macro.c config.h mandoc.h roff.h mdoc.h libmandoc.h roff_int.h libmdoc.h mdoc_man.o: mdoc_man.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h man.h out.h main.h mdoc_markdown.o: mdoc_markdown.c mandoc_aux.h mandoc.h roff.h mdoc.h main.h -mdoc_state.o: mdoc_state.c mandoc.h roff.h mdoc.h libmandoc.h libmdoc.h -mdoc_term.o: mdoc_term.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h out.h term.h tag.h main.h +mdoc_state.o: mdoc_state.c mandoc.h roff.h mdoc.h libmandoc.h roff_int.h libmdoc.h +mdoc_term.o: mdoc_term.c config.h mandoc_aux.h roff.h mdoc.h out.h term.h tag.h main.h mdoc_validate.o: mdoc_validate.c config.h mandoc_aux.h mandoc.h mandoc_xr.h roff.h mdoc.h libmandoc.h roff_int.h libmdoc.h msec.o: msec.c config.h mandoc.h libmandoc.h msec.in -out.o: out.c config.h mandoc_aux.h mandoc.h out.h -preconv.o: preconv.c config.h mandoc.h libmandoc.h -read.o: read.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h man.h libmandoc.h -roff.o: roff.c config.h mandoc.h mandoc_aux.h mandoc_ohash.h compat_ohash.h roff.h libmandoc.h roff_int.h libroff.h predefs.in +out.o: out.c config.h mandoc_aux.h tbl.h out.h +preconv.o: preconv.c config.h mandoc.h roff.h mandoc_parse.h libmandoc.h +read.o: read.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h man.h mandoc_parse.h libmandoc.h roff_int.h +roff.o: roff.c config.h mandoc_aux.h mandoc_ohash.h compat_ohash.h mandoc.h roff.h mandoc_parse.h libmandoc.h roff_int.h tbl_parse.h eqn_parse.h predefs.in roff_html.o: roff_html.c mandoc.h roff.h out.h html.h roff_term.o: roff_term.c mandoc.h roff.h out.h term.h roff_validate.o: roff_validate.c mandoc.h roff.h libmandoc.h roff_int.h soelim.o: soelim.c config.h compat_stringlist.h -st.o: st.c config.h mandoc.h roff.h mdoc.h libmdoc.h st.in +st.o: st.c config.h mandoc.h roff.h libmdoc.h tag.o: tag.c config.h mandoc_aux.h mandoc_ohash.h compat_ohash.h tag.h -tbl.o: tbl.c config.h mandoc.h mandoc_aux.h libmandoc.h libroff.h -tbl_data.o: tbl_data.c config.h mandoc.h mandoc_aux.h libmandoc.h libroff.h -tbl_html.o: tbl_html.c config.h mandoc.h out.h html.h -tbl_layout.o: tbl_layout.c config.h mandoc.h mandoc_aux.h libmandoc.h libroff.h -tbl_opts.o: tbl_opts.c config.h mandoc.h libmandoc.h libroff.h -tbl_term.o: tbl_term.c config.h mandoc.h out.h term.h +tbl.o: tbl.c config.h mandoc_aux.h mandoc.h tbl.h libmandoc.h tbl_parse.h tbl_int.h +tbl_data.o: tbl_data.c config.h mandoc_aux.h mandoc.h tbl.h libmandoc.h tbl_int.h +tbl_html.o: tbl_html.c config.h mandoc.h tbl.h out.h html.h +tbl_layout.o: tbl_layout.c config.h mandoc_aux.h mandoc.h tbl.h libmandoc.h tbl_int.h +tbl_opts.o: tbl_opts.c config.h mandoc.h tbl.h libmandoc.h tbl_int.h +tbl_term.o: tbl_term.c config.h mandoc.h tbl.h out.h term.h term.o: term.c config.h mandoc.h mandoc_aux.h out.h term.h main.h term_ascii.o: term_ascii.c config.h mandoc.h mandoc_aux.h out.h term.h manconf.h main.h term_ps.o: term_ps.c config.h mandoc_aux.h out.h term.h manconf.h main.h term_tab.o: term_tab.c mandoc_aux.h out.h term.h -tree.o: tree.c config.h mandoc.h roff.h mdoc.h man.h main.h +tree.o: tree.c config.h mandoc.h roff.h mdoc.h man.h tbl.h eqn.h main.h Modified: head/contrib/mandoc/NEWS ============================================================================== --- head/contrib/mandoc/NEWS Fri Apr 12 05:43:01 2019 (r346148) +++ head/contrib/mandoc/NEWS Fri Apr 12 10:13:17 2019 (r346149) @@ -1,6 +1,80 @@ -$Id: NEWS,v 1.32 2018/08/08 14:47:38 schwarze Exp $ +$Id: NEWS,v 1.34 2019/03/10 09:32:00 schwarze Exp $ This file lists the most important changes in the mandoc.bsd.lv distribution. + +Changes in version 1.14.5, released on March 10, 2019 + + --- MAJOR NEW FEATURES --- + * apropos(1): improve POSIX compliance by accepting case-insensitive + extended regular expressions by default + * new -O tag[=term] output option (open a page at the definition of a term) + * tbl(7) -T html: spanning and horizontal and vertical alignment of cells + * tbl(7) -T html: draw lines on the edges of table cells + * tbl(7) -T utf8: render lines with the Unicode box drawing characters + * mandoc is now able to handle the manual pages of the groff package. + --- MINOR NEW FEATURES --- + * -T html: new option -O toc (table of contents) + * -T html: second argument to -O man to support local and remote links + * mdoc(7) .Bd -centered now fills the text contained in it + * man-ext .SY and .YS macros (synopsis block) + * man-ext .TQ macro (tagged paragraph without vertical space before it) + * tbl(7) \& explicit alignment indicator + * roff(7) .shift, .while, and .return requests + * roff(7) .char request (output glyph definition) + * roff(7) .nop request (no operation) + * roff(7) .ft request: handle the CB, CI, and CR fonts + * roff(7) .if c conditional (character available) + * roff(7) \\$@ escape sequence (insert all macro arguments, quoted) + * roff(7) \*(.T predefined string (interpolate output device name) + * roff(7) \[charNNN] escape sequence (for printable ASCII characters) + * roff(7) \# escape sequence (line continuation with comment) + --- HTML OUTPUT SYNTAX CORRECTIONS --- + * Render .br and \p as
, not as an empty
. + * Render .Pp and .PP as

and automatically close it when needed. + * Stop writing empty list elements for non-compact .Bl -tag lists. + * Do not put

inside if .UR or .MT contain .PP. + * Implement tooltips purely in CSS rather than abusing title= attributes. + --- MINOR FUNCTIONAL IMPROVEMENTS --- + * many improvements to the handling of fill and no-fill mode + * tbl(7): better column widths in the presence of horizontal spans + * several minor improvements to escape sequence handling + * several minor improvements to manual font handling + * portability: autodetect need for _GNU_SOURCE or _OPENBSD_SOURCE + * portability: autodetect whether less(1) supports the -T option + * large numbers of bugfixes of diverse kinds + --- STRUCTURAL IMPROVEMENTS --- + * Disentangle eqn(7) and tbl(7) from other parser header files, + and clean up some parser data structures. + * Substantially simplify error and warning message infrastructure. + --- THANKS TO --- + * John Gardner for crucial help implementing tooltips in CSS. + * Alexander Bluhm, Raphael Graf, Ted Unangst (OpenBSD) + and Daniel Sabogal (Alpine Linux) for patches. + * Anthony Bentley and Jason McIntyre (OpenBSD) for documentation patches, + suggesting new features, bug reports, and useful discussions. + * Kyle Evans and Baptiste Daroussin (FreeBSD) for minor patches. + * Pali Rohar for suggesting multiple new features and for reporting + several bugs and missing features. + * Klemens Nanni (OpenBSD) for suggesting multiple new features. + * Kristaps Dzonsons (bsd.lv), Marc Espie (OpenBSD), Adam Kalisz, + and Laura Morales for suggesting new features. + * Wolfram Schneider and Yuri Pankov (FreeBSD) for reporting missing features. + * Edward Tomasz Napierala (FreeBSD) for suggesting a feature improvement. + * Thomas Klausner (NetBSD) and Sevan Janiyan (SmartOS) + for bug reports and release testing. + * Bryan Steele, Janne Johansson, Kurt Mosiejczuk, Mike Belopuhov, Theo + Buehler, Todd Miller (OpenBSD), Andreas Gustafsson, Christos Zoulas, + Robert Elz (NetBSD), Kurt Jaeger (FreeBSD), Fabio Scotoni, Kelvin + Sherlock, Mark Harris, Orestis Ioannou, Raf Czlonka, and Sean Farrell + for bug reports. + * Ulrich Spoerlein (FreeBSD), Leah Neukirchen (Void Linux), + Matej Cepl (openSUSE), and Jan Stary (MacOS X) for release testing. + * Brian Callahan and Stuart Henderson (OpenBSD) for help + with the OpenBSD groff port. + * Bertrand Garrigues, Branden Robinson, Ralph Corderoy, and Werner + Lemberg (GNU troff) for checking groff patches. + * Scott Cheloha, Theo de Raadt (OpenBSD) + and Natanael Copa (Alpine Linux) for useful discussions. Changes in version 1.14.4, released on August 8, 2018 Modified: head/contrib/mandoc/TODO ============================================================================== --- head/contrib/mandoc/TODO Fri Apr 12 05:43:01 2019 (r346148) +++ head/contrib/mandoc/TODO Fri Apr 12 10:13:17 2019 (r346149) @@ -1,6 +1,6 @@ ************************************************************************ * Official mandoc TODO. -* $Id: TODO,v 1.258 2018/08/06 14:16:30 schwarze Exp $ +* $Id: TODO,v 1.289 2019/03/04 13:01:57 schwarze Exp $ ************************************************************************ Many issues are annotated for difficulty as follows: @@ -38,18 +38,6 @@ are mere guesses, and some may be wrong. --- missing roff features ---------------------------------------------- -- .nop prints its arguments as text, - see groff(7) for an example - -- .ft CB selects constant-width bold font - see groff_out(7) for examples - -- \*(.T prints the device being used, - see groff_char(7) for an example - -- \[charNN], \[charNNN] prints a single-byte codepoint - see groff_char(7) for examples - - .ad (adjust margins) .ad l -- adjust left margin only (flush left) .ad r -- adjust right margin only (flush right) @@ -69,34 +57,11 @@ are mere guesses, and some may be wrong. reported by brad@ Sat, 15 Jan 2011 15:45:23 -0500 loc *** exist *** algo *** size ** imp * -- .while and .shift - found by jca@ in ratpoison(1) Sun, 30 Jun 2013 12:01:09 +0200 - loc * exist ** algo ** size ** imp ** - - \w'' improve width measurements would not be very useful without an expression parser, see below needed for Tcl_NewStringObj(3) via wiz@ Wed, 5 Mar 2014 22:27:43 +0100 loc ** exist *** algo *** size * imp *** -- \\ in high-level macro arguments - Currently, \\ is expanded in two situations: - 1) macro and string definition (roff.c setstrn()) - 2) macro argument parsing (mandoc.c mandoc_getarg()) - For user defined macros, the second happens in time because of ROFF_REPARSE. - But for standard high-level macros, it only happens after entering the - high level parsers, which is too late because the code doesn't get - back to roff.c roff_res() from that point. Because this requires - distinguishing requests, user-defined macros and standard macros - on the roff_res() level, it is hard to solve without the parser reorg. - Found by naddy@ in devel/cutils cobfusc(1) Mon, 16 Feb 2015 19:10:52 +0100 - loc *** exist *** algo *** size ** imp * - -- check for missing roff escape sequences, implement those that are - trivial even if not usually appearing in manual pages, gracefully - ignore the non-trivial ones, document what they are supposed to do - and what mandoc does instead - loc * exist ** algo * size * imp * - --- missing mdoc features ---------------------------------------------- - .Bl -column .Xo support is missing @@ -112,13 +77,6 @@ are mere guesses, and some may be wrong. from jmc@ Wed, 14 Jul 2010 18:10:32 +0100 loc * exist *** algo *** size ** imp ** -- .Bd -centered implies -filled, not -unfilled, which is not - easy to implement; it requires code similar to .ce, which - we don't have either. - Besides, groff has bug causing text right *before* .Bd -centered - to be centered as well. - loc *** exist *** algo ** size ** imp ** (parser reorg would help) - - .Bd -filled should not be the same as .Bd -ragged, but align both the left and right margin. In groff, it is implemented in terms of .ad b, which we don't have either. Found in cksum(1). @@ -174,15 +132,6 @@ are mere guesses, and some may be wrong. --- missing man features ----------------------------------------------- -- .SY and .YS, - used by many groff manual pages - -- preserve punctuation following .ME, - see ditroff(7) for an example - -- .TQ tagged paragraph continuation, - see groff_diff(7) for examples - - groff_www(7) .MTO and .URL These macros were used by the GNU grep(1) man page. The groff_www(7) manual page itself uses them, too. @@ -193,18 +142,10 @@ are mere guesses, and some may be wrong. --- missing tbl features ----------------------------------------------- -- the "s" layout column specifier is used for placement of data - into columns, but ignored during column width calculations - synaptics(4) found by tedu@ Mon, 17 Aug 2015 21:17:42 -0400 - loc * exist ** algo *** size * imp ** - - vertical centering in cells vertically spanned with ^ pali dot rohar at gmail dot com 16 Jul 2018 13:03:35 +0200 loc * exist *** algo *** size ** imp * -- support .ds requests inside tbl(7) code, - see tbl(1) for an example - - support mdoc(7) and man(7) macros inside tbl(7) code; probably requires the parser reorg and letting tbl(7) use roff_node such that macro sets can mix; @@ -212,35 +153,24 @@ are mere guesses, and some may be wrong. loc *** exist ** algo *** size ** imp *** - look at the POSIX manuals in the books/man-pages-posix port, - they use some unsupported tbl(7) features. + they use some unsupported tbl(7) features, mostly macros in tbl(7). loc * exist ** algo ** size ** imp *** - look what Joerg Schilling manual pages use Thu, 19 Mar 2015 18:31:48 +0100 -- use Unicode U+2500 to U+256C for table borders - in tbl(7) -Tutf-8 output - suggested by bentley@ Tue, 14 Oct 2014 04:10:55 -0600 - loc * exist ** algo * size * imp ** - -- implement horizontal and vertical alignment in HTML output - pali dot rohar at gmail dot com 16 Jul 2018 13:03:35 +0200 - loc * exist * algo * size * imp *** - -- implement cell spanning in HTML output - pali dot rohar at gmail dot com 16 Jul 2018 13:03:35 +0200 - loc * exist * algo ** size ** imp ** - -- implement table borders in HTML output - pali dot rohar at gmail dot com 16 Jul 2018 13:03:35 +0200 - loc * exist * algo ** size ** imp ** - --- missing eqn features ----------------------------------------------- - In a matrix, break the output line after each matrix line. - Found in the discussion at CDBUG 2015. - Suggested by Avi Weinstock. - loc * exist * algo * size * imp ** + Found in the discussion at CDBUG 2015. Suggested by Avi Weinstock. + This may not be the ideal solution after all: eqn(7) matrices + are lists of columns, so Avi's proposal would show each *column* + on its own *line*, which is likely to cause confusion. + A better solution, but much harder to implement, would be to + actually show the coordinates of column vectors on different + terminal output lines, using the clumnated output facilities + developed for .Bl -tag, .Bl -column, and also used for tbl(7). + loc * exist * algo ** size ** imp ** - The "size" keyword is parsed, but ignored by the formatter. loc * exist * algo * size * imp * @@ -341,9 +271,6 @@ are mere guesses, and some may be wrong. * formatting issues: ugly output ************************************************************************ -- .UR can nest inside .TP, - see roff(7) for examples - - revisit empty in-line macros look at the difference between "Em x Em ." and "Sq x Em ." Carsten Kunze Fri, 12 Dec 2014 00:15:41 +0100 @@ -400,6 +327,8 @@ are mere guesses, and some may be wrong. - a line starting with "\fB something" counts as starting with whitespace and triggers a line break; found in audio/normalize-mp3(1) + This will become easier once escape sequences are represented + by syntax tree nodes. loc ** exist * algo ** size * imp ** - formatting /usr/local/man/man1/latex2man.1 with groff and mandoc @@ -421,17 +350,6 @@ are mere guesses, and some may be wrong. --- HTML issues -------------------------------------------------------- -- wrap Sh and Ss content into

- Laura Morales 21 Apr 2018 18:10:48 +0200 - (Evaluate whether this is really useful and has no adverse - side effects before implementing; if it is possible, - it does seem cleaner.) - loc ** exist ** algo * size * imp *** - -- format ".IP *" etc. as
    rather than
    - https://github.com/Debian/debiman/issues/67 - loc ** exist ** algo ** size * imp *** - - .Bf at the beginning of a paragraph inserts a bogus 1ex horizontal space, see for example random(3). Introduced in http://mdocml.bsd.lv/cgi-bin/cvsweb/mdoc_html.c.diff?r1=1.91&r2=1.92 @@ -558,18 +476,11 @@ are mere guesses, and some may be wrong. all over mdoc_macro.c and all subtly different. loc ** exist ** algo ** size ** imp ** -- style message about suspicious uses of - vs. \- vs. \(mi - e.g. -1 is likely wrong (from the mdoclint TODO) - - warn about punctuation - e.g. ',' and ';' - at the beginning of a text line, if it is likely intended to follow the preceding output without intervening whitespace, in particular after a macro line (from the mdoclint TODO) -- mandoc_special does not really check the escape sequence, - but just the overall format - loc ** exist ** algo *** size ** imp ** - - makewhatis -p complains about language subdirectories: /usr/local/man//ru: Unknown directory part @@ -578,9 +489,6 @@ are mere guesses, and some may be wrong. * documentation issues ************************************************************************ -- dashes, hyphens, and minus signs in manual pages - jmc@ Fri, 28 Mar 2014 07:19:27 +0000 - - mark macros as: page structure domain, manual domain, general text domain is this useful? @@ -606,10 +514,6 @@ are mere guesses, and some may be wrong. Found by Aaron M. Ucko in the GNU Hurd via Bdale Garbee, https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=829624 -- We use the input line number at several places to distinguish - same-line from different-line input. That plainly doesn't work - with user-defined macros, leading to random breakage. - - Is it possible to further simplify ENDBODY_SPACE? - Find better ways to prevent endless loops @@ -629,8 +533,6 @@ are mere guesses, and some may be wrong. output through libz. - Privilege separation (see OpenSSH). - Enable caching support via HTTP 304 and If-Modified-Since. - - Have Mac OSX systems automatically disable -static compilation of the - CGI: -static isn't supported. ************************************************************************ * to improve in the groff_mdoc(7) macros Modified: head/contrib/mandoc/apropos.1 ============================================================================== --- head/contrib/mandoc/apropos.1 Fri Apr 12 05:43:01 2019 (r346148) +++ head/contrib/mandoc/apropos.1 Fri Apr 12 10:13:17 2019 (r346149) @@ -1,7 +1,7 @@ -.\" $Id: apropos.1,v 1.47 2018/02/23 18:54:02 schwarze Exp $ +.\" $Id: apropos.1,v 1.49 2018/11/22 12:33:52 schwarze Exp $ .\" .\" Copyright (c) 2011, 2012 Kristaps Dzonsons -.\" Copyright (c) 2011, 2012, 2014, 2017 Ingo Schwarze +.\" Copyright (c) 2011,2012,2014,2017,2018 Ingo Schwarze .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above @@ -15,7 +15,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: February 23 2018 $ +.Dd $Mdocdate: November 22 2018 $ .Dt APROPOS 1 .Os .Sh NAME @@ -51,8 +51,7 @@ searches for .Xr makewhatis 8 databases in the default paths stipulated by .Xr man 1 -and uses case-insensitive substring matching -.Pq the Cm = No operator +and uses case-insensitive extended regular expression matching over manual names and descriptions .Pq the Li \&Nm No and Li \&Nd No macro keys . Multiple terms imply pairwise @@ -93,7 +92,7 @@ format. Search for all words in .Ar expression in manual page names only. -The search is case insensitive and matches whole words only. +The search is case-insensitive and matches whole words only. In this mode, macro keys, comparison operators, and logical operators are not available. .It Fl k @@ -123,7 +122,7 @@ Restrict the search to pages for the specified .Xr machine 1 architecture. .Ar arch -is case insensitive. +is case-insensitive. By default, pages for all architectures are shown. .It Fl s Ar section Restrict the search to the specified section of the manual. @@ -199,7 +198,7 @@ Operator .Cm = evaluates a substring, while .Cm \(ti -evaluates a regular expression. +evaluates a case-sensitive extended regular expression. .It Fl i Ar term If .Ar term @@ -208,26 +207,10 @@ is evaluated case-insensitively. Has no effect on substring terms. .El .Pp -Results are sorted according to the following criteria: -.Bl -enum -.It -The manpath directory tree the page is found in, according to the -order specified with -.Fl M , -.Fl m , -the -.Ev MANPATH -environment variable, the -.Xr man.conf 5 -configuration file, or the default documented in -.Xr man.conf 5 . -.It -The section number in ascending numerical order. -.It -The page name in ascending +Results are sorted first according to the section number in ascending +numerical order, then by the page name in ascending .Xr ascii 7 alphabetical order, case-insensitive. -.El .Pp Each output line is formatted as .Pp @@ -339,7 +322,7 @@ function arguments appearing on .Ic \&Fn lines .It Li \&Fn -fuction names marked up with +function names marked up with .Ic \&Fo macros .It Li \&In @@ -407,7 +390,7 @@ Search for .Qq .cf as a substring of manual names and descriptions: .Pp -.Dl $ apropos .cf +.Dl $ apropos =.cf .Pp Include matches for .Qq .cnf @@ -415,9 +398,9 @@ and .Qq .conf as well: .Pp -.Dl $ apropos .cf .cnf .conf +.Dl $ apropos =.cf =.cnf =.conf .Pp -Search in names and descriptions using a regular expression: +Search in names and descriptions using a case-sensitive regular expression: .Pp .Dl $ apropos \(aq\(tiset.?[ug]id\(aq .Pp @@ -448,6 +431,24 @@ The following two invocations are equivalent: .Xr man 1 , .Xr re_format 7 , .Xr makewhatis 8 +.Sh STANDARDS +The +.Nm +utility is compliant with the +.St -p1003.1-2008 +specification of +.Xr man 1 +.Fl k . +.Pp +All options, the +.Nm whatis +command, support for logical operators, macro keys, +substring matching, sorting of results, the environment variables +.Ev MANPAGER +and +.Ev MANPATH , +the database format, and the configuration file +are extensions to that specification. .Sh HISTORY Part of the functionality of .Nm whatis Copied: head/contrib/mandoc/arch.c (from r346148, vendor/mandoc/dist/arch.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/mandoc/arch.c Fri Apr 12 10:13:17 2019 (r346149, copy of r346148, vendor/mandoc/dist/arch.c) @@ -0,0 +1,54 @@ +/* $Id: arch.c,v 1.14 2019/03/04 13:01:57 schwarze Exp $ */ +/* + * Copyright (c) 2017, 2019 Ingo Schwarze + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ +#include "config.h" + +#include + +#include "roff.h" + +int +arch_valid(const char *arch, enum mandoc_os os) +{ + const char *openbsd_arch[] = { + "alpha", "amd64", "arm64", "armv7", "hppa", "i386", + "landisk", "loongson", "luna88k", "macppc", "mips64", + "octeon", "sgi", "socppc", "sparc64", NULL + }; + const char *netbsd_arch[] = { + "acorn26", "acorn32", "algor", "alpha", "amiga", + "arc", "atari", + "bebox", "cats", "cesfic", "cobalt", "dreamcast", + "emips", "evbarm", "evbmips", "evbppc", "evbsh3", "evbsh5", + "hp300", "hpcarm", "hpcmips", "hpcsh", "hppa", + "i386", "ibmnws", "luna68k", + "mac68k", "macppc", "mipsco", "mmeye", "mvme68k", "mvmeppc", + "netwinder", "news68k", "newsmips", "next68k", + "pc532", "playstation2", "pmax", "pmppc", "prep", + "sandpoint", "sbmips", "sgimips", "shark", + "sparc", "sparc64", "sun2", "sun3", + "vax", "walnut", "x68k", "x86", "x86_64", "xen", NULL + }; + const char **arches[] = { NULL, netbsd_arch, openbsd_arch }; + const char **arch_p; + + if ((arch_p = arches[os]) == NULL) + return 1; + for (; *arch_p != NULL; arch_p++) + if (strcmp(*arch_p, arch) == 0) + return 1; + return 0; +} Modified: head/contrib/mandoc/att.c ============================================================================== --- head/contrib/mandoc/att.c Fri Apr 12 05:43:01 2019 (r346148) +++ head/contrib/mandoc/att.c Fri Apr 12 10:13:17 2019 (r346149) @@ -1,4 +1,4 @@ -/* $Id: att.c,v 1.16 2017/06/24 14:38:32 schwarze Exp $ */ +/* $Id: att.c,v 1.18 2018/12/13 11:55:46 schwarze Exp $ */ /* * Copyright (c) 2009 Kristaps Dzonsons * @@ -19,9 +19,7 @@ #include #include -#include "mandoc.h" #include "roff.h" -#include "mdoc.h" #include "libmdoc.h" #define LINE(x, y) \ Modified: head/contrib/mandoc/cgi.c ============================================================================== --- head/contrib/mandoc/cgi.c Fri Apr 12 05:43:01 2019 (r346148) +++ head/contrib/mandoc/cgi.c Fri Apr 12 10:13:17 2019 (r346149) @@ -1,7 +1,7 @@ -/* $Id: cgi.c,v 1.158 2018/05/29 20:32:45 schwarze Exp $ */ +/* $Id: cgi.c,v 1.166 2019/03/06 12:32:41 schwarze Exp $ */ /* * Copyright (c) 2011, 2012 Kristaps Dzonsons - * Copyright (c) 2014, 2015, 2016, 2017 Ingo Schwarze + * Copyright (c) 2014, 2015, 2016, 2017, 2018 Ingo Schwarze * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -38,6 +38,7 @@ #include "roff.h" #include "mdoc.h" #include "man.h" +#include "mandoc_parse.h" #include "main.h" #include "manconf.h" #include "mansearch.h" @@ -69,6 +70,7 @@ enum focus { static void html_print(const char *); static void html_putchar(char); static int http_decode(char *); +static void http_encode(const char *p); static void parse_manpath_conf(struct req *); static void parse_path_info(struct req *req, const char *path); static void parse_query_string(struct req *, const char *); @@ -90,6 +92,7 @@ static void resp_format(const struct req *, const ch static void resp_searchform(const struct req *, enum focus); static void resp_show(const struct req *, const char *); static void set_query_attr(char **, char **); +static int validate_arch(const char *); static int validate_filename(const char *); static int validate_manpath(const struct req *, const char *); static int validate_urifrag(const char *); @@ -316,6 +319,18 @@ http_decode(char *p) } static void +http_encode(const char *p) +{ + for (; *p != '\0'; p++) { + if (isalnum((unsigned char)*p) == 0 && + strchr("-._~", *p) == NULL) + printf("%%%2.2X", (unsigned char)*p); + else + putchar(*p); + } +} + +static void resp_begin_http(int code, const char *msg) { @@ -490,6 +505,18 @@ validate_manpath(const struct req *req, const char* ma } static int +validate_arch(const char *arch) +{ + int i; + + for (i = 0; i < arch_MAX; i++) + if (strcmp(arch, arch_names[i]) == 0) + return 1; + + return 0; +} + +static int validate_filename(const char *file) { @@ -562,9 +589,11 @@ pg_redirect(const struct req *req, const char *name) printf("%s/", req->q.manpath); if (req->q.arch != NULL) printf("%s/", req->q.arch); - printf("%s", name); - if (req->q.sec != NULL) - printf(".%s", req->q.sec); + http_encode(name); + if (req->q.sec != NULL) { + putchar('.'); + http_encode(req->q.sec); + } printf("\r\nContent-Type: text/html; charset=utf-8\r\n\r\n"); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Fri Apr 12 10:50:53 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 13BBA1578DCD; Fri, 12 Apr 2019 10:50:53 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7776F6E790; Fri, 12 Apr 2019 10:50:52 +0000 (UTC) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1]) by gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x3CAojBw075999; Fri, 12 Apr 2019 03:50:45 -0700 (PDT) (envelope-from freebsd@gndrsh.dnsmgr.net) Received: (from freebsd@localhost) by gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x3CAoj7i075998; Fri, 12 Apr 2019 03:50:45 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201904121050.x3CAoj7i075998@gndrsh.dnsmgr.net> Subject: Re: svn commit: r346096 - head/sys/arm/conf In-Reply-To: <20190412120950.dd0aae47e93ba7b50aaa47c6@bidouilliste.com> To: Emmanuel Vadot Date: Fri, 12 Apr 2019 03:50:45 -0700 (PDT) CC: Svatopluk Kraus , Emmanuel Vadot , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 7776F6E790 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 10:50:53 -0000 > > Hi Svatopluk, > > On Thu, 11 Apr 2019 21:23:35 +0200 > Svatopluk Kraus wrote: > > > I understand the reason for GENERIC. But are we so blind that we will > > delete everything that is not GENERIC? In other words, why to delete > > nice specific KERNEL configurations for boards we support when only > > reason I see is that GENERIC is so cool for some people? > > That's simple and maybe I should have explain more in the commit > message. Those configs aren't tested. All the images that we provide > are using GENERIC kernel so we know that GENERIC is tested (somewhat). > Those config will also lack update if we need to add a new required > pseudo device (like syscon) and maybe it's already the case on some. > The only way (for now) that we could produce board specific kernel > is to include GENERIC and add a bunch of nodevice "blah", which is not > going to happen. We have plan for splitting the GENERIC kernel into soc > familly file, then it would be easier for people to have a SoC kernel > config. > Finaly I guess that when you say "boards we support" you are talking > about RPI2, BEAGLEBONE or maybe PANDABOARD. For me those aren't board > that we support, those are survivors that had the chance to not die in > the past years. No developer care about or work on those boards. I just recently asked about the issue I was having when I last tried to run head/sys/arm/conf/CHROMEBOOK-SNOW which iirc is a derived from head/sys/arm/conf/EXYNOS5420 which is documented in the Wiki as to how to build it, pointing to use the kernel config you just deleted. > > Svatopluk Kraus > > > > > > > > On Wed, Apr 10, 2019 at 9:27 PM Emmanuel Vadot wrote: > > > > > > Author: manu > > > Date: Wed Apr 10 19:27:14 2019 > > > New Revision: 346096 > > > URL: https://svnweb.freebsd.org/changeset/base/346096 > > > > > > Log: > > > arm: kernel: Remove old kernel configs > > > > > > Follow up to r346095 > > > All those kernels are either not working or the release have switched > > > to GENERIC > > > > > > Deleted: > > > head/sys/arm/conf/AML8726 > > > head/sys/arm/conf/BEAGLEBONE > > > head/sys/arm/conf/CHROMEBOOK > > > head/sys/arm/conf/CHROMEBOOK-PEACH-PIT > > > head/sys/arm/conf/CHROMEBOOK-PEACH-PIT.hints > > > head/sys/arm/conf/CHROMEBOOK-SNOW > > > head/sys/arm/conf/CHROMEBOOK-SPRING > > > head/sys/arm/conf/CHROMEBOOK.hints > > > head/sys/arm/conf/EXYNOS5.common > > > head/sys/arm/conf/EXYNOS5250 > > > head/sys/arm/conf/EXYNOS5420 > > > head/sys/arm/conf/ODROIDC1 > > > head/sys/arm/conf/PANDABOARD > > > head/sys/arm/conf/PANDABOARD.hints > > > head/sys/arm/conf/RADXA > > > head/sys/arm/conf/RADXA-LITE > > > head/sys/arm/conf/RK3188 > > > head/sys/arm/conf/RPI2 > > > > > > -- > Emmanuel Vadot > > -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Fri Apr 12 11:00:09 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 023401579364; Fri, 12 Apr 2019 11:00:09 +0000 (UTC) (envelope-from manu@bidouilliste.com) Received: from mail.blih.net (mail.blih.net [212.83.177.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.blih.net", Issuer "mail.blih.net" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 3E5F96EDC8; Fri, 12 Apr 2019 11:00:08 +0000 (UTC) (envelope-from manu@bidouilliste.com) Received: from mail.blih.net (mail.blih.net [212.83.177.182]) by mail.blih.net (OpenSMTPD) with ESMTP id 4100f221; Fri, 12 Apr 2019 13:00:06 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=bidouilliste.com; h=date :from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-type:content-transfer-encoding; s=mail; bh=w5qc5POkeeqtUNLJein0yRgcT6E=; b=nU3VWZspe/v5iLr1qTjv1qQjsG+O PK0qGh8FjkLnFL+ixciNtvBTlE+uRGd74x4k2fdKXhMdXYRBSnDp/CvQt137sAde ZqOE0hjUoUoG7nYdwa2wu9d1KDZEX2IfOYU/FsMv9zGt5m3oRjAVrYFyNeSCmobQ QOKix+bfhxRgFFI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=bidouilliste.com; h=date :from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-type:content-transfer-encoding; q=dns; s= mail; b=LBaQqZyc7kBimcYosYPnktyzkRnZ3mA5AGwqU4dq1B86lh+2tHevPF4U A5lCBrEpZpeJreIKR8j187HEowHTKt1Hxq5u64MGRsgXSrEbysk+hpSCc9dtQKnQ 1hKbf99xmLDh29ElXzt6pE/rGRW+RNJLH0bIV7QgkJFiaGTF82U= Received: from knuckles.blih.net (ip-9.net-89-3-105.rev.numericable.fr [89.3.105.9]) by mail.blih.net (OpenSMTPD) with ESMTPSA id 90e48c09 TLS version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO; Fri, 12 Apr 2019 13:00:06 +0200 (CEST) Date: Fri, 12 Apr 2019 13:00:06 +0200 From: Emmanuel Vadot To: rgrimes@freebsd.org Cc: "Rodney W. Grimes" , Svatopluk Kraus , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346096 - head/sys/arm/conf Message-Id: <20190412130006.69c99fa562a4d9b6003856cb@bidouilliste.com> In-Reply-To: <201904121050.x3CAoj7i075998@gndrsh.dnsmgr.net> References: <20190412120950.dd0aae47e93ba7b50aaa47c6@bidouilliste.com> <201904121050.x3CAoj7i075998@gndrsh.dnsmgr.net> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; amd64-portbld-freebsd13.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 3E5F96EDC8 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 11:00:09 -0000 On Fri, 12 Apr 2019 03:50:45 -0700 (PDT) "Rodney W. Grimes" wrote: > > > > Hi Svatopluk, > > > > On Thu, 11 Apr 2019 21:23:35 +0200 > > Svatopluk Kraus wrote: > > > > > I understand the reason for GENERIC. But are we so blind that we will > > > delete everything that is not GENERIC? In other words, why to delete > > > nice specific KERNEL configurations for boards we support when only > > > reason I see is that GENERIC is so cool for some people? > > > > That's simple and maybe I should have explain more in the commit > > message. Those configs aren't tested. All the images that we provide > > are using GENERIC kernel so we know that GENERIC is tested (somewhat). > > Those config will also lack update if we need to add a new required > > pseudo device (like syscon) and maybe it's already the case on some. > > The only way (for now) that we could produce board specific kernel > > is to include GENERIC and add a bunch of nodevice "blah", which is not > > going to happen. We have plan for splitting the GENERIC kernel into soc > > familly file, then it would be easier for people to have a SoC kernel > > config. > > Finaly I guess that when you say "boards we support" you are talking > > about RPI2, BEAGLEBONE or maybe PANDABOARD. For me those aren't board > > that we support, those are survivors that had the chance to not die in > > the past years. No developer care about or work on those boards. > > I just recently asked about the issue I was having when I last > tried to run > head/sys/arm/conf/CHROMEBOOK-SNOW > which iirc is a derived from > head/sys/arm/conf/EXYNOS5420 > which is documented in the Wiki as to how to build it, > pointing to use the kernel config you just deleted. Is there a question ? Even if you managed to compile this kernel and maybe run it, what's next ? Nobody works on this SoC. I will send some reviews in the next weeks to remove some SoC support. > > > Svatopluk Kraus > > > > > > > > > > > > On Wed, Apr 10, 2019 at 9:27 PM Emmanuel Vadot wrote: > > > > > > > > Author: manu > > > > Date: Wed Apr 10 19:27:14 2019 > > > > New Revision: 346096 > > > > URL: https://svnweb.freebsd.org/changeset/base/346096 > > > > > > > > Log: > > > > arm: kernel: Remove old kernel configs > > > > > > > > Follow up to r346095 > > > > All those kernels are either not working or the release have switched > > > > to GENERIC > > > > > > > > Deleted: > > > > head/sys/arm/conf/AML8726 > > > > head/sys/arm/conf/BEAGLEBONE > > > > head/sys/arm/conf/CHROMEBOOK > > > > head/sys/arm/conf/CHROMEBOOK-PEACH-PIT > > > > head/sys/arm/conf/CHROMEBOOK-PEACH-PIT.hints > > > > head/sys/arm/conf/CHROMEBOOK-SNOW > > > > head/sys/arm/conf/CHROMEBOOK-SPRING > > > > head/sys/arm/conf/CHROMEBOOK.hints > > > > head/sys/arm/conf/EXYNOS5.common > > > > head/sys/arm/conf/EXYNOS5250 > > > > head/sys/arm/conf/EXYNOS5420 > > > > head/sys/arm/conf/ODROIDC1 > > > > head/sys/arm/conf/PANDABOARD > > > > head/sys/arm/conf/PANDABOARD.hints > > > > head/sys/arm/conf/RADXA > > > > head/sys/arm/conf/RADXA-LITE > > > > head/sys/arm/conf/RK3188 > > > > head/sys/arm/conf/RPI2 > > > > > > > > > > -- > > Emmanuel Vadot > > > > > > -- > Rod Grimes rgrimes@freebsd.org -- Emmanuel Vadot From owner-svn-src-all@freebsd.org Fri Apr 12 12:46:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C3A47157BF25; Fri, 12 Apr 2019 12:46:26 +0000 (UTC) (envelope-from tychon@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 6575772203; Fri, 12 Apr 2019 12:46:26 +0000 (UTC) (envelope-from tychon@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 3603B21912; Fri, 12 Apr 2019 12:46:26 +0000 (UTC) (envelope-from tychon@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CCkPGv027681; Fri, 12 Apr 2019 12:46:25 GMT (envelope-from tychon@FreeBSD.org) Received: (from tychon@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CCkP2m027680; Fri, 12 Apr 2019 12:46:25 GMT (envelope-from tychon@FreeBSD.org) Message-Id: <201904121246.x3CCkP2m027680@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tychon set sender to tychon@FreeBSD.org using -f From: Tycho Nightingale Date: Fri, 12 Apr 2019 12:46:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346150 - head/sys/vm X-SVN-Group: head X-SVN-Commit-Author: tychon X-SVN-Commit-Paths: head/sys/vm X-SVN-Commit-Revision: 346150 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6575772203 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 12:46:26 -0000 Author: tychon Date: Fri Apr 12 12:46:25 2019 New Revision: 346150 URL: https://svnweb.freebsd.org/changeset/base/346150 Log: for a cache-only zone the destructor tries to destroy a non-existent keg Reviewed by: markj Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D19835 Modified: head/sys/vm/uma_core.c Modified: head/sys/vm/uma_core.c ============================================================================== --- head/sys/vm/uma_core.c Fri Apr 12 10:13:17 2019 (r346149) +++ head/sys/vm/uma_core.c Fri Apr 12 12:46:25 2019 (r346150) @@ -1916,10 +1916,10 @@ zone_dtor(void *arg, int size, void *udata) */ zone_drain_wait(zone, M_WAITOK); /* - * We only destroy kegs from non secondary zones. + * We only destroy kegs from non secondary/non cache zones. */ - if ((keg = zone->uz_keg) != NULL && - (zone->uz_flags & UMA_ZONE_SECONDARY) == 0) { + if ((zone->uz_flags & (UMA_ZONE_SECONDARY | UMA_ZFLAG_CACHE)) == 0) { + keg = zone->uz_keg; rw_wlock(&uma_rwlock); LIST_REMOVE(keg, uk_link); rw_wunlock(&uma_rwlock); From owner-svn-src-all@freebsd.org Fri Apr 12 14:18:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E280E157DC1E; Fri, 12 Apr 2019 14:18:17 +0000 (UTC) (envelope-from trasz@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 565067532A; Fri, 12 Apr 2019 14:18:17 +0000 (UTC) (envelope-from trasz@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 1D01F22845; Fri, 12 Apr 2019 14:18:17 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CEIGJi075038; Fri, 12 Apr 2019 14:18:16 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CEIGRa075037; Fri, 12 Apr 2019 14:18:16 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201904121418.x3CEIGRa075037@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Fri, 12 Apr 2019 14:18:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346151 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 346151 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 565067532A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 14:18:18 -0000 Author: trasz Date: Fri Apr 12 14:18:16 2019 New Revision: 346151 URL: https://svnweb.freebsd.org/changeset/base/346151 Log: Remove unneeded conditionals for sv_ functions - all the ABIs (apart from null_sysvec) define them, so the 'else' branch is never taken. Reviewed by: kib MFC after: 2 weeks Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D19889 Modified: head/sys/kern/kern_exec.c Modified: head/sys/kern/kern_exec.c ============================================================================== --- head/sys/kern/kern_exec.c Fri Apr 12 12:46:25 2019 (r346150) +++ head/sys/kern/kern_exec.c Fri Apr 12 14:18:16 2019 (r346151) @@ -679,23 +679,14 @@ interpret: sys_cap_enter(td, NULL); /* - * Copy out strings (args and env) and initialize stack base + * Copy out strings (args and env) and initialize stack base. */ - if (p->p_sysent->sv_copyout_strings) - stack_base = (*p->p_sysent->sv_copyout_strings)(imgp); - else - stack_base = exec_copyout_strings(imgp); + stack_base = (*p->p_sysent->sv_copyout_strings)(imgp); /* - * If custom stack fixup routine present for this process - * let it do the stack setup. - * Else stuff argument count as first item on stack + * Stack setup. */ - if (p->p_sysent->sv_fixup != NULL) - error = (*p->p_sysent->sv_fixup)(&stack_base, imgp); - else - error = suword(--stack_base, imgp->args->argc) == 0 ? - 0 : EFAULT; + error = (*p->p_sysent->sv_fixup)(&stack_base, imgp); if (error != 0) { vn_lock(imgp->vp, LK_SHARED | LK_RETRY); goto exec_fail_dealloc; @@ -880,11 +871,7 @@ interpret: #endif /* Set values passed into the program in registers. */ - if (p->p_sysent->sv_setregs) - (*p->p_sysent->sv_setregs)(td, imgp, - (u_long)(uintptr_t)stack_base); - else - exec_setregs(td, imgp, (u_long)(uintptr_t)stack_base); + (*p->p_sysent->sv_setregs)(td, imgp, (u_long)(uintptr_t)stack_base); vfs_mark_atime(imgp->vp, td->td_ucred); From owner-svn-src-all@freebsd.org Fri Apr 12 14:28:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 06997157DEBA; Fri, 12 Apr 2019 14:28:46 +0000 (UTC) (envelope-from etnapierala@gmail.com) Received: from mail-oi1-f172.google.com (mail-oi1-f172.google.com [209.85.167.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 91DC275834; Fri, 12 Apr 2019 14:28:45 +0000 (UTC) (envelope-from etnapierala@gmail.com) Received: by mail-oi1-f172.google.com with SMTP id n187so8099378oih.6; Fri, 12 Apr 2019 07:28:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Pk01HWqcJlSl+OHh3Stc+l28ZdzsxcxT1YJViwaW06E=; b=fHvstquL+EvIfMOd0xH9u9CTtr1QRUqBlvMaidlqOqD59sb8o/7BYfLEH5x1HaWAlO wyxzbdZ37PZolPuTwmuzo5e4kGvUFv9sUeU5rg0TrUVZAP5mlJkzqN3iro7McOOu21vJ rQqKS+Ppfg+IOTEZJs+nsIWvUoHYs/TgOeo3/l2W6zM+zTUEp+HdJb67gJMe0Nf88Po4 iV5h8oTnaKax+L90T6E8tkYNs7Gb1iyeFzQ4Ai454bKDQ4ozoPeCnJD5+/OeUysWgCWS sO89pRuol2ILBlt0ueLG6iaYxjcl6YiDYYiQLaMvWcuWlGci7TdmG2jzZDIU9MeMUmrb pD8g== X-Gm-Message-State: APjAAAUt8s5393k+DgiXjafUWBzWb/VEpbMpi5LcWrTLEfKSXdQQBclm nzNo/iMaBIjSW0fxn8FombLQdLyC3z6/QVLeCwsTKw== X-Google-Smtp-Source: APXvYqzRelHR2+08xftsVHssuJsNTVBirfYjdWAK+EbpQjm+WJGDRJ5WY4z56EJ039cXEWj9jk4L8FsCI0DYPS73ubQ= X-Received: by 2002:aca:d595:: with SMTP id m143mr10231633oig.31.1555079318540; Fri, 12 Apr 2019 07:28:38 -0700 (PDT) MIME-Version: 1.0 References: <201904111121.x3BBLj2K023087@repo.freebsd.org> In-Reply-To: From: Edward Napierala Date: Fri, 12 Apr 2019 15:28:26 +0100 Message-ID: Subject: Re: svn commit: r346120 - head/sys/kern To: Conrad Meyer Cc: src-committers , svn-src-all , svn-src-head Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 91DC275834 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.93 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.93)[-0.931,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 14:28:46 -0000 On Thu, 11 Apr 2019 at 17:26, Conrad Meyer wrote: > > Hi Edward, > > I have a question about this change below. > > On Thu, Apr 11, 2019 at 4:22 AM Edward Tomasz Napierala > wrote: > > > > Author: trasz > > Date: Thu Apr 11 11:21:45 2019 > > New Revision: 346120 > > URL: https://svnweb.freebsd.org/changeset/base/346120 > > > > Log: > > Use shared vnode locks for the ELF interpreter. [..] > On the one hand, perhaps VOP_IS_TEXT() is rarely false for common > interpreters anyway. On the other hand, there is sort of a > renaissance of static linking happening. So maybe the thought is, > !VOP_IS_TEXT is likely to be rare, and LK_UPGRADE success even more > rare, so why bother writing additional code for it? Konstantin already answered to most of the points, but regarding this one: that's exactly the case. In a typical case, the number of times this code path will be executed is zero. I'd expect one - when running dynamically linked ELF binary for the first time - but for some reason in that case lookup() returns with the exclusive vnode lock already held. From owner-svn-src-all@freebsd.org Fri Apr 12 14:59:30 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7C9D4157E9D9; Fri, 12 Apr 2019 14:59:30 +0000 (UTC) (envelope-from kib@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 281EB7694B; Fri, 12 Apr 2019 14:59:30 +0000 (UTC) (envelope-from kib@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 B426A22F23; Fri, 12 Apr 2019 14:59:29 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CExTVK001519; Fri, 12 Apr 2019 14:59:29 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CExT54001516; Fri, 12 Apr 2019 14:59:29 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904121459.x3CExT54001516@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 12 Apr 2019 14:59:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346152 - stable/12/sys/vm X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/12/sys/vm X-SVN-Commit-Revision: 346152 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 281EB7694B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 14:59:30 -0000 Author: kib Date: Fri Apr 12 14:59:28 2019 New Revision: 346152 URL: https://svnweb.freebsd.org/changeset/base/346152 Log: MFC r345702,r345954: Eliminate adj_free field from vm_map_entry. Modified: stable/12/sys/vm/vm_kern.c stable/12/sys/vm/vm_map.c stable/12/sys/vm/vm_map.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/vm/vm_kern.c ============================================================================== --- stable/12/sys/vm/vm_kern.c Fri Apr 12 14:18:16 2019 (r346151) +++ stable/12/sys/vm/vm_kern.c Fri Apr 12 14:59:28 2019 (r346152) @@ -641,7 +641,8 @@ kmap_alloc_wait(vm_map_t map, vm_size_t size) * to lock out sleepers/wakers. */ vm_map_lock(map); - if (vm_map_findspace(map, vm_map_min(map), size, &addr) == 0) + addr = vm_map_findspace(map, vm_map_min(map), size); + if (addr + size <= vm_map_max(map)) break; /* no space now; see if we can ever get space */ if (vm_map_max(map) - vm_map_min(map) < size) { Modified: stable/12/sys/vm/vm_map.c ============================================================================== --- stable/12/sys/vm/vm_map.c Fri Apr 12 14:18:16 2019 (r346151) +++ stable/12/sys/vm/vm_map.c Fri Apr 12 14:59:28 2019 (r346152) @@ -132,9 +132,6 @@ static int vmspace_zinit(void *mem, int size, int flag static int vm_map_zinit(void *mem, int ize, int flags); static void _vm_map_init(vm_map_t map, pmap_t pmap, vm_offset_t min, vm_offset_t max); -static int vm_map_alignspace(vm_map_t map, vm_object_t object, - vm_ooffset_t offset, vm_offset_t *addr, vm_size_t length, - vm_offset_t max_addr, vm_offset_t alignment); static void vm_map_entry_deallocate(vm_map_entry_t entry, boolean_t system_map); static void vm_map_entry_dispose(vm_map_t map, vm_map_entry_t entry); static void vm_map_entry_unwire(vm_map_t map, vm_map_entry_t entry); @@ -672,8 +669,51 @@ _vm_map_assert_locked(vm_map_t map, const char *file, #define VM_MAP_ASSERT_LOCKED(map) \ _vm_map_assert_locked(map, LOCK_FILE, LOCK_LINE) + +static void +_vm_map_assert_consistent(vm_map_t map) +{ + vm_map_entry_t entry; + vm_map_entry_t child; + vm_size_t max_left, max_right; + + for (entry = map->header.next; entry != &map->header; + entry = entry->next) { + KASSERT(entry->prev->end <= entry->start, + ("map %p prev->end = %jx, start = %jx", map, + (uintmax_t)entry->prev->end, (uintmax_t)entry->start)); + KASSERT(entry->start < entry->end, + ("map %p start = %jx, end = %jx", map, + (uintmax_t)entry->start, (uintmax_t)entry->end)); + KASSERT(entry->end <= entry->next->start, + ("map %p end = %jx, next->start = %jx", map, + (uintmax_t)entry->end, (uintmax_t)entry->next->start)); + KASSERT(entry->left == NULL || + entry->left->start < entry->start, + ("map %p left->start = %jx, start = %jx", map, + (uintmax_t)entry->left->start, (uintmax_t)entry->start)); + KASSERT(entry->right == NULL || + entry->start < entry->right->start, + ("map %p start = %jx, right->start = %jx", map, + (uintmax_t)entry->start, (uintmax_t)entry->right->start)); + child = entry->left; + max_left = (child != NULL) ? child->max_free : + entry->start - entry->prev->end; + child = entry->right; + max_right = (child != NULL) ? child->max_free : + entry->next->start - entry->end; + KASSERT(entry->max_free == MAX(max_left, max_right), + ("map %p max = %jx, max_left = %jx, max_right = %jx", map, + (uintmax_t)entry->max_free, + (uintmax_t)max_left, (uintmax_t)max_right)); + } +} + +#define VM_MAP_ASSERT_CONSISTENT(map) \ + _vm_map_assert_consistent(map) #else #define VM_MAP_ASSERT_LOCKED(map) +#define VM_MAP_ASSERT_CONSISTENT(map) #endif /* @@ -865,100 +905,117 @@ vm_map_entry_set_behavior(vm_map_entry_t entry, u_char static inline void vm_map_entry_set_max_free(vm_map_entry_t entry) { + vm_map_entry_t child; + vm_size_t max_left, max_right; - entry->max_free = entry->adj_free; - if (entry->left != NULL && entry->left->max_free > entry->max_free) - entry->max_free = entry->left->max_free; - if (entry->right != NULL && entry->right->max_free > entry->max_free) - entry->max_free = entry->right->max_free; + child = entry->left; + max_left = (child != NULL) ? child->max_free : + entry->start - entry->prev->end; + child = entry->right; + max_right = (child != NULL) ? child->max_free : + entry->next->start - entry->end; + entry->max_free = MAX(max_left, max_right); } +#define SPLAY_LEFT_STEP(root, y, rlist, test) do { \ + y = root->left; \ + if (y != NULL && (test)) { \ + /* Rotate right and make y root. */ \ + root->left = y->right; \ + y->right = root; \ + vm_map_entry_set_max_free(root); \ + root = y; \ + y = root->left; \ + } \ + /* Put root on rlist. */ \ + root->left = rlist; \ + rlist = root; \ + root = y; \ +} while (0) + +#define SPLAY_RIGHT_STEP(root, y, llist, test) do { \ + y = root->right; \ + if (y != NULL && (test)) { \ + /* Rotate left and make y root. */ \ + root->right = y->left; \ + y->left = root; \ + vm_map_entry_set_max_free(root); \ + root = y; \ + y = root->right; \ + } \ + /* Put root on llist. */ \ + root->right = llist; \ + llist = root; \ + root = y; \ +} while (0) + /* - * vm_map_entry_splay: - * - * The Sleator and Tarjan top-down splay algorithm with the - * following variation. Max_free must be computed bottom-up, so - * on the downward pass, maintain the left and right spines in - * reverse order. Then, make a second pass up each side to fix - * the pointers and compute max_free. The time bound is O(log n) - * amortized. - * - * The new root is the vm_map_entry containing "addr", or else an - * adjacent entry (lower or higher) if addr is not in the tree. - * - * The map must be locked, and leaves it so. - * - * Returns: the new root. + * Walk down the tree until we find addr or a NULL pointer where addr would go, + * breaking off left and right subtrees of nodes less than, or greater than + * addr. Treat pointers to nodes with max_free < length as NULL pointers. + * llist and rlist are the two sides in reverse order (bottom-up), with llist + * linked by the right pointer and rlist linked by the left pointer in the + * vm_map_entry. */ static vm_map_entry_t -vm_map_entry_splay(vm_offset_t addr, vm_map_entry_t root) +vm_map_splay_split(vm_offset_t addr, vm_size_t length, + vm_map_entry_t root, vm_map_entry_t *out_llist, vm_map_entry_t *out_rlist) { vm_map_entry_t llist, rlist; - vm_map_entry_t ltree, rtree; vm_map_entry_t y; - /* Special case of empty tree. */ - if (root == NULL) - return (root); - - /* - * Pass One: Splay down the tree until we find addr or a NULL - * pointer where addr would go. llist and rlist are the two - * sides in reverse order (bottom-up), with llist linked by - * the right pointer and rlist linked by the left pointer in - * the vm_map_entry. Wait until Pass Two to set max_free on - * the two spines. - */ llist = NULL; rlist = NULL; - for (;;) { - /* root is never NULL in here. */ + while (root != NULL && root->max_free >= length) { if (addr < root->start) { - y = root->left; - if (y == NULL) - break; - if (addr < y->start && y->left != NULL) { - /* Rotate right and put y on rlist. */ - root->left = y->right; - y->right = root; - vm_map_entry_set_max_free(root); - root = y->left; - y->left = rlist; - rlist = y; - } else { - /* Put root on rlist. */ - root->left = rlist; - rlist = root; - root = y; - } + SPLAY_LEFT_STEP(root, y, rlist, + y->max_free >= length && addr < y->start); } else if (addr >= root->end) { - y = root->right; - if (y == NULL) - break; - if (addr >= y->end && y->right != NULL) { - /* Rotate left and put y on llist. */ - root->right = y->left; - y->left = root; - vm_map_entry_set_max_free(root); - root = y->right; - y->right = llist; - llist = y; - } else { - /* Put root on llist. */ - root->right = llist; - llist = root; - root = y; - } + SPLAY_RIGHT_STEP(root, y, llist, + y->max_free >= length && addr >= y->end); } else break; } + *out_llist = llist; + *out_rlist = rlist; + return (root); +} - /* - * Pass Two: Walk back up the two spines, flip the pointers - * and set max_free. The subtrees of the root go at the - * bottom of llist and rlist. - */ - ltree = root->left; +static void +vm_map_splay_findnext(vm_map_entry_t root, vm_map_entry_t *iolist) +{ + vm_map_entry_t rlist, y; + + root = root->right; + rlist = *iolist; + while (root != NULL) + SPLAY_LEFT_STEP(root, y, rlist, true); + *iolist = rlist; +} + +static void +vm_map_splay_findprev(vm_map_entry_t root, vm_map_entry_t *iolist) +{ + vm_map_entry_t llist, y; + + root = root->left; + llist = *iolist; + while (root != NULL) + SPLAY_RIGHT_STEP(root, y, llist, true); + *iolist = llist; +} + +/* + * Walk back up the two spines, flip the pointers and set max_free. The + * subtrees of the root go at the bottom of llist and rlist. + */ +static vm_map_entry_t +vm_map_splay_merge(vm_map_entry_t root, + vm_map_entry_t llist, vm_map_entry_t rlist, + vm_map_entry_t ltree, vm_map_entry_t rtree) +{ + vm_map_entry_t y; + while (llist != NULL) { y = llist->right; llist->right = ltree; @@ -966,7 +1023,6 @@ vm_map_entry_splay(vm_offset_t addr, vm_map_entry_t ro ltree = llist; llist = y; } - rtree = root->right; while (rlist != NULL) { y = rlist->left; rlist->left = rtree; @@ -986,73 +1042,143 @@ vm_map_entry_splay(vm_offset_t addr, vm_map_entry_t ro } /* + * vm_map_entry_splay: + * + * The Sleator and Tarjan top-down splay algorithm with the + * following variation. Max_free must be computed bottom-up, so + * on the downward pass, maintain the left and right spines in + * reverse order. Then, make a second pass up each side to fix + * the pointers and compute max_free. The time bound is O(log n) + * amortized. + * + * The new root is the vm_map_entry containing "addr", or else an + * adjacent entry (lower if possible) if addr is not in the tree. + * + * The map must be locked, and leaves it so. + * + * Returns: the new root. + */ +static vm_map_entry_t +vm_map_entry_splay(vm_offset_t addr, vm_map_entry_t root) +{ + vm_map_entry_t llist, rlist; + + root = vm_map_splay_split(addr, 0, root, &llist, &rlist); + if (root != NULL) { + /* do nothing */ + } else if (llist != NULL) { + /* + * Recover the greatest node in the left + * subtree and make it the root. + */ + root = llist; + llist = root->right; + root->right = NULL; + } else if (rlist != NULL) { + /* + * Recover the least node in the right + * subtree and make it the root. + */ + root = rlist; + rlist = root->left; + root->left = NULL; + } else { + /* There is no root. */ + return (NULL); + } + return (vm_map_splay_merge(root, llist, rlist, + root->left, root->right)); +} + +/* * vm_map_entry_{un,}link: * * Insert/remove entries from maps. */ static void vm_map_entry_link(vm_map_t map, - vm_map_entry_t after_where, vm_map_entry_t entry) { + vm_map_entry_t llist, rlist, root; - CTR4(KTR_VM, - "vm_map_entry_link: map %p, nentries %d, entry %p, after %p", map, - map->nentries, entry, after_where); + CTR3(KTR_VM, + "vm_map_entry_link: map %p, nentries %d, entry %p", map, + map->nentries, entry); VM_MAP_ASSERT_LOCKED(map); - KASSERT(after_where->end <= entry->start, - ("vm_map_entry_link: prev end %jx new start %jx overlap", - (uintmax_t)after_where->end, (uintmax_t)entry->start)); - KASSERT(entry->end <= after_where->next->start, - ("vm_map_entry_link: new end %jx next start %jx overlap", - (uintmax_t)entry->end, (uintmax_t)after_where->next->start)); - map->nentries++; - entry->prev = after_where; - entry->next = after_where->next; - entry->next->prev = entry; - after_where->next = entry; - - if (after_where != &map->header) { - if (after_where != map->root) - vm_map_entry_splay(after_where->start, map->root); - entry->right = after_where->right; - entry->left = after_where; - after_where->right = NULL; - after_where->adj_free = entry->start - after_where->end; - vm_map_entry_set_max_free(after_where); - } else { - entry->right = map->root; - entry->left = NULL; - } - entry->adj_free = entry->next->start - entry->end; - vm_map_entry_set_max_free(entry); + root = map->root; + root = vm_map_splay_split(entry->start, 0, root, &llist, &rlist); + KASSERT(root == NULL, + ("vm_map_entry_link: link object already mapped")); + entry->prev = (llist == NULL) ? &map->header : llist; + entry->next = (rlist == NULL) ? &map->header : rlist; + entry->prev->next = entry->next->prev = entry; + root = vm_map_splay_merge(entry, llist, rlist, NULL, NULL); map->root = entry; + VM_MAP_ASSERT_CONSISTENT(map); } +enum unlink_merge_type { + UNLINK_MERGE_PREV, + UNLINK_MERGE_NONE, + UNLINK_MERGE_NEXT +}; + static void vm_map_entry_unlink(vm_map_t map, - vm_map_entry_t entry) + vm_map_entry_t entry, + enum unlink_merge_type op) { - vm_map_entry_t next, prev, root; + vm_map_entry_t llist, rlist, root, y; VM_MAP_ASSERT_LOCKED(map); - if (entry != map->root) - vm_map_entry_splay(entry->start, map->root); - if (entry->left == NULL) - root = entry->right; - else { - root = vm_map_entry_splay(entry->start, entry->left); - root->right = entry->right; - root->adj_free = entry->next->start - root->end; - vm_map_entry_set_max_free(root); + llist = entry->prev; + rlist = entry->next; + llist->next = rlist; + rlist->prev = llist; + root = map->root; + root = vm_map_splay_split(entry->start, 0, root, &llist, &rlist); + KASSERT(root != NULL, + ("vm_map_entry_unlink: unlink object not mapped")); + + switch (op) { + case UNLINK_MERGE_PREV: + vm_map_splay_findprev(root, &llist); + llist->end = root->end; + y = root->right; + root = llist; + llist = root->right; + root->right = y; + break; + case UNLINK_MERGE_NEXT: + vm_map_splay_findnext(root, &rlist); + rlist->start = root->start; + rlist->offset = root->offset; + y = root->left; + root = rlist; + rlist = root->left; + root->left = y; + break; + case UNLINK_MERGE_NONE: + vm_map_splay_findprev(root, &llist); + vm_map_splay_findnext(root, &rlist); + if (llist != NULL) { + root = llist; + llist = root->right; + root->right = NULL; + } else if (rlist != NULL) { + root = rlist; + rlist = root->left; + root->left = NULL; + } else + root = NULL; + break; } + if (root != NULL) + root = vm_map_splay_merge(root, llist, rlist, + root->left, root->right); map->root = root; - - prev = entry->prev; - next = entry->next; - next->prev = prev; - prev->next = next; + VM_MAP_ASSERT_CONSISTENT(map); map->nentries--; CTR3(KTR_VM, "vm_map_entry_unlink: map %p, nentries %d, entry %p", map, map->nentries, entry); @@ -1061,27 +1187,30 @@ vm_map_entry_unlink(vm_map_t map, /* * vm_map_entry_resize_free: * - * Recompute the amount of free space following a vm_map_entry - * and propagate that value up the tree. Call this function after - * resizing a map entry in-place, that is, without a call to - * vm_map_entry_link() or _unlink(). + * Recompute the amount of free space following a modified vm_map_entry + * and propagate those values up the tree. Call this function after + * resizing a map entry in-place by changing the end value, without a + * call to vm_map_entry_link() or _unlink(). * * The map must be locked, and leaves it so. */ static void vm_map_entry_resize_free(vm_map_t map, vm_map_entry_t entry) { + vm_map_entry_t llist, rlist, root; - /* - * Using splay trees without parent pointers, propagating - * max_free up the tree is done by moving the entry to the - * root and making the change there. - */ - if (entry != map->root) - map->root = vm_map_entry_splay(entry->start, map->root); - - entry->adj_free = entry->next->start - entry->end; - vm_map_entry_set_max_free(entry); + VM_MAP_ASSERT_LOCKED(map); + root = map->root; + root = vm_map_splay_split(entry->start, 0, root, &llist, &rlist); + KASSERT(root != NULL, + ("vm_map_entry_resize_free: resize_free object not mapped")); + vm_map_splay_findnext(root, &rlist); + root->right = NULL; + map->root = vm_map_splay_merge(root, llist, rlist, + root->left, root->right); + VM_MAP_ASSERT_CONSISTENT(map); + CTR3(KTR_VM, "vm_map_entry_resize_free: map %p, nentries %d, entry %p", map, + map->nentries, entry); } /* @@ -1100,7 +1229,7 @@ vm_map_lookup_entry( vm_offset_t address, vm_map_entry_t *entry) /* OUT */ { - vm_map_entry_t cur; + vm_map_entry_t cur, lbound; boolean_t locked; /* @@ -1108,12 +1237,15 @@ vm_map_lookup_entry( * "address" is the map's header. */ cur = map->root; - if (cur == NULL) + if (cur == NULL) { *entry = &map->header; - else if (address >= cur->start && cur->end > address) { + return (FALSE); + } + if (address >= cur->start && cur->end > address) { *entry = cur; return (TRUE); - } else if ((locked = vm_map_locked(map)) || + } + if ((locked = vm_map_locked(map)) || sx_try_upgrade(&map->lock)) { /* * Splay requires a write lock on the map. However, it only @@ -1122,6 +1254,7 @@ vm_map_lookup_entry( * on a temporary upgrade. */ map->root = cur = vm_map_entry_splay(address, cur); + VM_MAP_ASSERT_CONSISTENT(map); if (!locked) sx_downgrade(&map->lock); @@ -1130,35 +1263,30 @@ vm_map_lookup_entry( * is that map entry. Otherwise, the new root is a map entry * immediately before or after "address". */ - if (address >= cur->start) { + if (address < cur->start) { + *entry = &map->header; + return (FALSE); + } + *entry = cur; + return (address < cur->end); + } + /* + * Since the map is only locked for read access, perform a + * standard binary search tree lookup for "address". + */ + lbound = &map->header; + do { + if (address < cur->start) { + cur = cur->left; + } else if (cur->end <= address) { + lbound = cur; + cur = cur->right; + } else { *entry = cur; - if (cur->end > address) - return (TRUE); - } else - *entry = cur->prev; - } else - /* - * Since the map is only locked for read access, perform a - * standard binary search tree lookup for "address". - */ - for (;;) { - if (address < cur->start) { - if (cur->left == NULL) { - *entry = cur->prev; - break; - } - cur = cur->left; - } else if (cur->end > address) { - *entry = cur; - return (TRUE); - } else { - if (cur->right == NULL) { - *entry = cur; - break; - } - cur = cur->right; - } + return (TRUE); } + } while (cur != NULL); + *entry = lbound; return (FALSE); } @@ -1351,7 +1479,7 @@ charged: /* * Insert the new entry into the list */ - vm_map_entry_link(map, prev_entry, new_entry); + vm_map_entry_link(map, new_entry); if ((new_entry->eflags & MAP_ENTRY_GUARD) == 0) map->size += new_entry->end - new_entry->start; @@ -1377,23 +1505,22 @@ charged: * Find the first fit (lowest VM address) for "length" free bytes * beginning at address >= start in the given map. * - * In a vm_map_entry, "adj_free" is the amount of free space - * adjacent (higher address) to this entry, and "max_free" is the - * maximum amount of contiguous free space in its subtree. This - * allows finding a free region in one path down the tree, so - * O(log n) amortized with splay trees. + * In a vm_map_entry, "max_free" is the maximum amount of + * contiguous free space between an entry in its subtree and a + * neighbor of that entry. This allows finding a free region in + * one path down the tree, so O(log n) amortized with splay + * trees. * * The map must be locked, and leaves it so. * - * Returns: 0 on success, and starting address in *addr, - * 1 if insufficient space. + * Returns: starting address if sufficient space, + * vm_map_max(map)-length+1 if insufficient space. */ -int -vm_map_findspace(vm_map_t map, vm_offset_t start, vm_size_t length, - vm_offset_t *addr) /* OUT */ +vm_offset_t +vm_map_findspace(vm_map_t map, vm_offset_t start, vm_size_t length) { - vm_map_entry_t entry; - vm_offset_t st; + vm_map_entry_t llist, rlist, root, y; + vm_size_t left_length; /* * Request must fit within min/max VM address and must avoid @@ -1401,57 +1528,87 @@ vm_map_findspace(vm_map_t map, vm_offset_t start, vm_s */ start = MAX(start, vm_map_min(map)); if (start + length > vm_map_max(map) || start + length < start) - return (1); + return (vm_map_max(map) - length + 1); /* Empty tree means wide open address space. */ - if (map->root == NULL) { - *addr = start; - return (0); - } + if (map->root == NULL) + return (start); /* * After splay, if start comes before root node, then there * must be a gap from start to the root. */ - map->root = vm_map_entry_splay(start, map->root); - if (start + length <= map->root->start) { - *addr = start; - return (0); + root = vm_map_splay_split(start, length, map->root, + &llist, &rlist); + if (root != NULL) + start = root->end; + else if (rlist != NULL) { + root = rlist; + rlist = root->left; + root->left = NULL; + } else { + root = llist; + llist = root->right; + root->right = NULL; } + map->root = vm_map_splay_merge(root, llist, rlist, + root->left, root->right); + VM_MAP_ASSERT_CONSISTENT(map); + if (start + length <= root->start) + return (start); /* * Root is the last node that might begin its gap before * start, and this is the last comparison where address * wrap might be a problem. */ - st = (start > map->root->end) ? start : map->root->end; - if (length <= map->root->end + map->root->adj_free - st) { - *addr = st; - return (0); - } + if (root->right == NULL && + start + length <= vm_map_max(map)) + return (start); /* With max_free, can immediately tell if no solution. */ - entry = map->root->right; - if (entry == NULL || length > entry->max_free) - return (1); + if (root->right == NULL || length > root->right->max_free) + return (vm_map_max(map) - length + 1); /* - * Search the right subtree in the order: left subtree, root, - * right subtree (first fit). The previous splay implies that - * all regions in the right subtree have addresses > start. + * Splay for the least large-enough gap in the right subtree. */ - while (entry != NULL) { - if (entry->left != NULL && entry->left->max_free >= length) - entry = entry->left; - else if (entry->adj_free >= length) { - *addr = entry->end; - return (0); - } else - entry = entry->right; + llist = NULL; + rlist = NULL; + for (left_length = 0; ; + left_length = root->left != NULL ? + root->left->max_free : root->start - llist->end) { + if (length <= left_length) + SPLAY_LEFT_STEP(root, y, rlist, + length <= (y->left != NULL ? + y->left->max_free : y->start - llist->end)); + else + SPLAY_RIGHT_STEP(root, y, llist, + length > (y->left != NULL ? + y->left->max_free : y->start - root->end)); + if (root == NULL) + break; } - - /* Can't get here, so panic if we do. */ - panic("vm_map_findspace: max_free corrupt"); + root = llist; + llist = root->right; + if ((y = rlist) == NULL) + root->right = NULL; + else { + rlist = y->left; + y->left = NULL; + root->right = y->right; + } + root = vm_map_splay_merge(root, llist, rlist, + root->left, root->right); + if (y != NULL) { + y->right = root->right; + vm_map_entry_set_max_free(y); + root->right = y; + vm_map_entry_set_max_free(root); + } + map->root = root; + VM_MAP_ASSERT_CONSISTENT(map); + return (root->end); } int @@ -1532,8 +1689,9 @@ vm_map_alignspace(vm_map_t map, vm_object_t object, vm VM_MAP_ASSERT_LOCKED(map); free_addr = *addr; - KASSERT(!vm_map_findspace(map, free_addr, length, addr) && - free_addr == *addr, ("caller provided insufficient free space")); + KASSERT(free_addr == vm_map_findspace(map, free_addr, length), + ("caller failed to provide space %d at address %p", + (int)length, (void*)free_addr)); for (;;) { /* * At the start of every iteration, the free space at address @@ -1559,8 +1717,10 @@ vm_map_alignspace(vm_map_t map, vm_object_t object, vm * be a valid address, in which case vm_map_findspace() cannot * be relied upon to fail. */ - if (aligned_addr < free_addr || - vm_map_findspace(map, aligned_addr, length, addr) || + if (aligned_addr < free_addr) + return (KERN_NO_SPACE); + *addr = vm_map_findspace(map, aligned_addr, length); + if (*addr + length > vm_map_max(map) || (max_addr != 0 && *addr + length > max_addr)) return (KERN_NO_SPACE); free_addr = *addr; @@ -1672,22 +1832,27 @@ again: gap = vm_map_max(map) > MAP_32BIT_MAX_ADDR && (max_addr == 0 || max_addr > MAP_32BIT_MAX_ADDR) ? aslr_pages_rnd_64[pidx] : aslr_pages_rnd_32[pidx]; - if (vm_map_findspace(map, curr_min_addr, length + - gap * pagesizes[pidx], addr)) + *addr = vm_map_findspace(map, curr_min_addr, + length + gap * pagesizes[pidx]); + if (*addr + length + gap * pagesizes[pidx] > + vm_map_max(map)) goto again; /* And randomize the start address. */ *addr += (arc4random() % gap) * pagesizes[pidx]; if (max_addr != 0 && *addr + length > max_addr) goto again; - } else if (vm_map_findspace(map, curr_min_addr, length, addr) || - (max_addr != 0 && *addr + length > max_addr)) { - if (cluster) { - cluster = false; - MPASS(try == 1); - goto again; + } else { + *addr = vm_map_findspace(map, curr_min_addr, length); + if (*addr + length > vm_map_max(map) || + (max_addr != 0 && *addr + length > max_addr)) { + if (cluster) { + cluster = false; + MPASS(try == 1); + goto again; + } + rv = KERN_NO_SPACE; + goto done; } - rv = KERN_NO_SPACE; - goto done; } if (find_space != VMFS_ANY_SPACE && @@ -1825,18 +1990,12 @@ vm_map_simplify_entry(vm_map_t map, vm_map_entry_t ent return; prev = entry->prev; if (vm_map_mergeable_neighbors(prev, entry)) { - vm_map_entry_unlink(map, prev); - entry->start = prev->start; - entry->offset = prev->offset; - if (entry->prev != &map->header) - vm_map_entry_resize_free(map, entry->prev); + vm_map_entry_unlink(map, prev, UNLINK_MERGE_NEXT); vm_map_merged_neighbor_dispose(map, prev); } next = entry->next; if (vm_map_mergeable_neighbors(entry, next)) { - vm_map_entry_unlink(map, next); - entry->end = next->end; - vm_map_entry_resize_free(map, entry); + vm_map_entry_unlink(map, next, UNLINK_MERGE_PREV); vm_map_merged_neighbor_dispose(map, next); } } @@ -1914,7 +2073,7 @@ _vm_map_clip_start(vm_map_t map, vm_map_entry_t entry, if (new_entry->cred != NULL) crhold(entry->cred); - vm_map_entry_link(map, entry->prev, new_entry); + vm_map_entry_link(map, new_entry); if ((entry->eflags & MAP_ENTRY_IS_SUB_MAP) == 0) { vm_object_reference(new_entry->object.vm_object); @@ -1996,7 +2155,7 @@ _vm_map_clip_end(vm_map_t map, vm_map_entry_t entry, v if (new_entry->cred != NULL) crhold(entry->cred); - vm_map_entry_link(map, entry, new_entry); + vm_map_entry_link(map, new_entry); if ((entry->eflags & MAP_ENTRY_IS_SUB_MAP) == 0) { vm_object_reference(new_entry->object.vm_object); @@ -3132,7 +3291,7 @@ vm_map_entry_delete(vm_map_t map, vm_map_entry_t entry vm_pindex_t offidxstart, offidxend, count, size1; vm_size_t size; - vm_map_entry_unlink(map, entry); + vm_map_entry_unlink(map, entry, UNLINK_MERGE_NONE); object = entry->object.vm_object; if ((entry->eflags & MAP_ENTRY_GUARD) != 0) { @@ -3675,8 +3834,7 @@ vmspace_fork(struct vmspace *vm1, vm_ooffset_t *fork_c * Insert the entry into the new map -- we know we're * inserting at the end of the new map. */ - vm_map_entry_link(new_map, new_map->header.prev, - new_entry); + vm_map_entry_link(new_map, new_entry); vmspace_map_entry_forked(vm1, vm2, new_entry); /* @@ -3703,8 +3861,7 @@ vmspace_fork(struct vmspace *vm1, vm_ooffset_t *fork_c new_entry->wired_count = 0; new_entry->object.vm_object = NULL; new_entry->cred = NULL; - vm_map_entry_link(new_map, new_map->header.prev, - new_entry); + vm_map_entry_link(new_map, new_entry); vmspace_map_entry_forked(vm1, vm2, new_entry); vm_map_copy_entry(old_map, new_map, old_entry, new_entry, fork_charge); @@ -3727,8 +3884,7 @@ vmspace_fork(struct vmspace *vm1, vm_ooffset_t *fork_c new_entry->max_protection = old_entry->max_protection; new_entry->inheritance = VM_INHERIT_ZERO; - vm_map_entry_link(new_map, new_map->header.prev, - new_entry); + vm_map_entry_link(new_map, new_entry); vmspace_map_entry_forked(vm1, vm2, new_entry); new_entry->cred = curthread->td_ucred; Modified: stable/12/sys/vm/vm_map.h ============================================================================== --- stable/12/sys/vm/vm_map.h Fri Apr 12 14:18:16 2019 (r346151) +++ stable/12/sys/vm/vm_map.h Fri Apr 12 14:59:28 2019 (r346152) @@ -106,7 +106,7 @@ struct vm_map_entry { vm_offset_t start; /* start address */ vm_offset_t end; /* end address */ vm_offset_t next_read; /* vaddr of the next sequential read */ - vm_size_t adj_free; /* amount of adjacent free space */ + vm_size_t pad_adj_free; /* pad */ vm_size_t max_free; /* max free space in subtree */ union vm_map_object object; /* object I point to */ vm_ooffset_t offset; /* offset into object */ @@ -402,7 +402,7 @@ int vm_map_find_min(vm_map_t, vm_object_t, vm_ooffset_ vm_size_t, vm_offset_t, vm_offset_t, int, vm_prot_t, vm_prot_t, int); int vm_map_fixed(vm_map_t, vm_object_t, vm_ooffset_t, vm_offset_t, vm_size_t, vm_prot_t, vm_prot_t, int); -int vm_map_findspace (vm_map_t, vm_offset_t, vm_size_t, vm_offset_t *); +vm_offset_t vm_map_findspace(vm_map_t, vm_offset_t, vm_size_t); int vm_map_inherit (vm_map_t, vm_offset_t, vm_offset_t, vm_inherit_t); void vm_map_init(vm_map_t, pmap_t, vm_offset_t, vm_offset_t); int vm_map_insert (vm_map_t, vm_object_t, vm_ooffset_t, vm_offset_t, vm_offset_t, vm_prot_t, vm_prot_t, int); From owner-svn-src-all@freebsd.org Fri Apr 12 15:00:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 660D2157EA97; Fri, 12 Apr 2019 15:00:43 +0000 (UTC) (envelope-from kib@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 091A776AB8; Fri, 12 Apr 2019 15:00:43 +0000 (UTC) (envelope-from kib@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 D8BFC22F35; Fri, 12 Apr 2019 15:00:42 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CF0gpZ002401; Fri, 12 Apr 2019 15:00:42 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CF0gDc002400; Fri, 12 Apr 2019 15:00:42 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904121500.x3CF0gDc002400@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 12 Apr 2019 15:00:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346153 - stable/12/sys/kern X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/12/sys/kern X-SVN-Commit-Revision: 346153 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 091A776AB8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 15:00:43 -0000 Author: kib Date: Fri Apr 12 15:00:42 2019 New Revision: 346153 URL: https://svnweb.freebsd.org/changeset/base/346153 Log: MFC r345955: vn_vmap_seekhole(): align running offset to the block boundary. Modified: stable/12/sys/kern/vfs_vnops.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/kern/vfs_vnops.c ============================================================================== --- stable/12/sys/kern/vfs_vnops.c Fri Apr 12 14:59:28 2019 (r346152) +++ stable/12/sys/kern/vfs_vnops.c Fri Apr 12 15:00:42 2019 (r346153) @@ -2163,7 +2163,8 @@ vn_bmap_seekhole(struct vnode *vp, u_long cmd, off_t * goto unlock; } bsize = vp->v_mount->mnt_stat.f_iosize; - for (bn = noff / bsize; noff < va.va_size; bn++, noff += bsize) { + for (bn = noff / bsize; noff < va.va_size; bn++, noff += bsize - + noff % bsize) { error = VOP_BMAP(vp, bn, NULL, &bnp, NULL, NULL); if (error == EOPNOTSUPP) { error = ENOTTY; From owner-svn-src-all@freebsd.org Fri Apr 12 15:02:31 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A66A8157ECA3; Fri, 12 Apr 2019 15:02:31 +0000 (UTC) (envelope-from kib@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 466D276F2B; Fri, 12 Apr 2019 15:02:31 +0000 (UTC) (envelope-from kib@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 20B68230C9; Fri, 12 Apr 2019 15:02:31 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CF2Vmm006654; Fri, 12 Apr 2019 15:02:31 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CF2Vae006653; Fri, 12 Apr 2019 15:02:31 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904121502.x3CF2Vae006653@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 12 Apr 2019 15:02:31 +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: r346154 - stable/11/sys/kern X-SVN-Group: stable-11 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/11/sys/kern X-SVN-Commit-Revision: 346154 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 466D276F2B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 15:02:31 -0000 Author: kib Date: Fri Apr 12 15:02:30 2019 New Revision: 346154 URL: https://svnweb.freebsd.org/changeset/base/346154 Log: MFC r345955: vn_vmap_seekhole(): align running offset to the block boundary. Modified: stable/11/sys/kern/vfs_vnops.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/kern/vfs_vnops.c ============================================================================== --- stable/11/sys/kern/vfs_vnops.c Fri Apr 12 15:00:42 2019 (r346153) +++ stable/11/sys/kern/vfs_vnops.c Fri Apr 12 15:02:30 2019 (r346154) @@ -2180,7 +2180,8 @@ vn_bmap_seekhole(struct vnode *vp, u_long cmd, off_t * goto unlock; } bsize = vp->v_mount->mnt_stat.f_iosize; - for (bn = noff / bsize; noff < va.va_size; bn++, noff += bsize) { + for (bn = noff / bsize; noff < va.va_size; bn++, noff += bsize - + noff % bsize) { error = VOP_BMAP(vp, bn, NULL, &bnp, NULL, NULL); if (error == EOPNOTSUPP) { error = ENOTTY; From owner-svn-src-all@freebsd.org Fri Apr 12 15:12:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E9B12157EF40; Fri, 12 Apr 2019 15:12:13 +0000 (UTC) (envelope-from kib@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 9485977436; Fri, 12 Apr 2019 15:12:13 +0000 (UTC) (envelope-from kib@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 6B85923255; Fri, 12 Apr 2019 15:12:13 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CFCD2B011883; Fri, 12 Apr 2019 15:12:13 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CFC8cQ011859; Fri, 12 Apr 2019 15:12:08 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904121512.x3CFC8cQ011859@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 12 Apr 2019 15:12:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346155 - in stable/12: lib/libc/aarch64 lib/libc/amd64 lib/libc/arm lib/libc/gen lib/libc/i386 lib/libc/include lib/libc/mips lib/libc/powerpc lib/libc/powerpc64 lib/libc/riscv lib/lib... X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in stable/12: lib/libc/aarch64 lib/libc/amd64 lib/libc/arm lib/libc/gen lib/libc/i386 lib/libc/include lib/libc/mips lib/libc/powerpc lib/libc/powerpc64 lib/libc/riscv lib/libc/sparc64 lib/libc/sys li... X-SVN-Commit-Revision: 346155 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9485977436 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 15:12:14 -0000 Author: kib Date: Fri Apr 12 15:12:08 2019 New Revision: 346155 URL: https://svnweb.freebsd.org/changeset/base/346155 Log: MFC r345703: Fix initial exec TLS mode for dynamically loaded shared objects. Added: stable/12/lib/libc/aarch64/static_tls.h - copied unchanged from r345703, head/lib/libc/aarch64/static_tls.h stable/12/lib/libc/amd64/static_tls.h - copied unchanged from r345703, head/lib/libc/amd64/static_tls.h stable/12/lib/libc/arm/static_tls.h - copied unchanged from r345703, head/lib/libc/arm/static_tls.h stable/12/lib/libc/i386/static_tls.h - copied unchanged from r345703, head/lib/libc/i386/static_tls.h stable/12/lib/libc/mips/static_tls.h - copied unchanged from r345703, head/lib/libc/mips/static_tls.h stable/12/lib/libc/powerpc/static_tls.h - copied unchanged from r345703, head/lib/libc/powerpc/static_tls.h stable/12/lib/libc/powerpc64/static_tls.h - copied unchanged from r345703, head/lib/libc/powerpc64/static_tls.h stable/12/lib/libc/riscv/static_tls.h - copied unchanged from r345703, head/lib/libc/riscv/static_tls.h stable/12/lib/libc/sparc64/static_tls.h - copied unchanged from r345703, head/lib/libc/sparc64/static_tls.h stable/12/lib/libthr/arch/aarch64/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/aarch64/include/pthread_tls.h stable/12/lib/libthr/arch/amd64/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/amd64/include/pthread_tls.h stable/12/lib/libthr/arch/arm/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/arm/include/pthread_tls.h stable/12/lib/libthr/arch/i386/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/i386/include/pthread_tls.h stable/12/lib/libthr/arch/mips/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/mips/include/pthread_tls.h stable/12/lib/libthr/arch/powerpc/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/powerpc/include/pthread_tls.h stable/12/lib/libthr/arch/riscv/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/riscv/include/pthread_tls.h stable/12/lib/libthr/arch/sparc64/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/sparc64/include/pthread_tls.h Modified: stable/12/lib/libc/gen/Symbol.map stable/12/lib/libc/gen/elf_utils.c stable/12/lib/libc/include/libc_private.h stable/12/lib/libc/sys/interposing_table.c stable/12/lib/libthr/Makefile stable/12/lib/libthr/pthread.map stable/12/lib/libthr/thread/thr_list.c stable/12/lib/libthr/thread/thr_private.h stable/12/libexec/rtld-elf/rtld.c stable/12/libexec/rtld-elf/rtld.h Directory Properties: stable/12/ (props changed) Copied: stable/12/lib/libc/aarch64/static_tls.h (from r345703, head/lib/libc/aarch64/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libc/aarch64/static_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libc/aarch64/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_AARCH64_STATIC_TLS_H +#define _LIBC_AARCH64_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("mrs %x0, tpidr_el0" : "=r" (tlsbase)); + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libc/amd64/static_tls.h (from r345703, head/lib/libc/amd64/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libc/amd64/static_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libc/amd64/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_AMD64_STATIC_TLS_H +#define _LIBC_AMD64_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("movq %%fs:0, %0" : "=r" (tlsbase)); + tlsbase -= offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libc/arm/static_tls.h (from r345703, head/lib/libc/arm/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libc/arm/static_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libc/arm/static_tls.h) @@ -0,0 +1,51 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_ARM_STATIC_TLS_H +#define _LIBC_ARM_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + +#ifdef ARM_TP_ADDRESS + tlsbase = *(uintptr_t *)ARM_TP_ADDRESS; +#else + __asm __volatile("mrc p15, 0, %0, c13, c0, 3" : "=r" (tlsbase)); +#endif + + tlsbase += offset; + return (tlsbase); +} + +#endif Modified: stable/12/lib/libc/gen/Symbol.map ============================================================================== --- stable/12/lib/libc/gen/Symbol.map Fri Apr 12 15:02:30 2019 (r346154) +++ stable/12/lib/libc/gen/Symbol.map Fri Apr 12 15:12:08 2019 (r346155) @@ -542,6 +542,7 @@ FBSDprivate_1.0 { __libc_tcdrain; __elf_aux_vector; + __pthread_distribute_static_tls; __pthread_map_stacks_exec; __fillcontextx; __fillcontextx2; Modified: stable/12/lib/libc/gen/elf_utils.c ============================================================================== --- stable/12/lib/libc/gen/elf_utils.c Fri Apr 12 15:02:30 2019 (r346154) +++ stable/12/lib/libc/gen/elf_utils.c Fri Apr 12 15:12:08 2019 (r346155) @@ -34,10 +34,13 @@ #include #include #include +#include #include "libc_private.h" +#include "static_tls.h" int __elf_phdr_match_addr(struct dl_phdr_info *, void *); void __pthread_map_stacks_exec(void); +void __pthread_distribute_static_tls(size_t, void *, size_t, size_t); int __elf_phdr_match_addr(struct dl_phdr_info *phdr_info, void *addr) @@ -96,4 +99,25 @@ __pthread_map_stacks_exec(void) { ((void (*)(void))__libc_interposing[INTERPOS_map_stacks_exec])(); +} + +void +__libc_distribute_static_tls(size_t offset, void *src, size_t len, + size_t total_len) +{ + uintptr_t tlsbase; + + tlsbase = _libc_get_static_tls_base(offset); + memcpy((void *)tlsbase, src, len); + memset((char *)tlsbase + len, 0, total_len - len); +} + +#pragma weak __pthread_distribute_static_tls +void +__pthread_distribute_static_tls(size_t offset, void *src, size_t len, + size_t total_len) +{ + + ((void (*)(size_t, void *, size_t, size_t))__libc_interposing[ + INTERPOS_distribute_static_tls])(offset, src, len, total_len); } Copied: stable/12/lib/libc/i386/static_tls.h (from r345703, head/lib/libc/i386/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libc/i386/static_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libc/i386/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_I386_STATIC_TLS_H +#define _LIBC_I386_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("movl %%gs:0, %0" : "=r" (tlsbase)); + tlsbase -= offset; + return (tlsbase); +} + +#endif Modified: stable/12/lib/libc/include/libc_private.h ============================================================================== --- stable/12/lib/libc/include/libc_private.h Fri Apr 12 15:02:30 2019 (r346154) +++ stable/12/lib/libc/include/libc_private.h Fri Apr 12 15:12:08 2019 (r346155) @@ -235,6 +235,7 @@ enum { INTERPOS_map_stacks_exec, INTERPOS_fdatasync, INTERPOS_clock_nanosleep, + INTERPOS_distribute_static_tls, INTERPOS_MAX }; @@ -413,6 +414,8 @@ struct dl_phdr_info; int __elf_phdr_match_addr(struct dl_phdr_info *, void *); void __init_elf_aux_vector(void); void __libc_map_stacks_exec(void); +void __libc_distribute_static_tls(__size_t, void *, __size_t, __size_t); +__uintptr_t __libc_static_tls_base(__size_t); void _pthread_cancel_enter(int); void _pthread_cancel_leave(int); Copied: stable/12/lib/libc/mips/static_tls.h (from r345703, head/lib/libc/mips/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libc/mips/static_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libc/mips/static_tls.h) @@ -0,0 +1,64 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_MIPS_STATIC_TLS_H +#define _LIBC_MIPS_STATIC_TLS_H + +#include + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + +#if defined(__mips_n64) + __asm__ __volatile__ ( + ".set\tpush\n\t" + ".set\tmips64r2\n\t" + "rdhwr\t%0, $29\n\t" + ".set\tpop" + : "=r" (tlsbase)); + tlsbase -= TLS_TP_OFFSET + TLS_TCB_SIZE; +#else /* mips 32 */ + __asm__ __volatile__ ( + ".set\tpush\n\t" + ".set\tmips32r2\n\t" + "rdhwr\t%0, $29\n\t" + ".set\tpop" + : "=r" (tlsbase)); + tlsbase -= TLS_TP_OFFSET + TLS_TCB_SIZE; +#endif /* ! __mips_n64 */ + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libc/powerpc/static_tls.h (from r345703, head/lib/libc/powerpc/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libc/powerpc/static_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libc/powerpc/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_POWERPC_STATIC_TLS_H +#define _LIBC_POWERPC_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("mr %0,2" : "=r"(tlsbase)); + tlsbase += offset - 0x7008; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libc/powerpc64/static_tls.h (from r345703, head/lib/libc/powerpc64/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libc/powerpc64/static_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libc/powerpc64/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_POWERPC64_STATIC_TLS_H +#define _LIBC_POWERPC64_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("mr %0,13" : "=r"(tlsbase)); + tlsbase += offset - 0x7010; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libc/riscv/static_tls.h (from r345703, head/lib/libc/riscv/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libc/riscv/static_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libc/riscv/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_RISCV_STATIC_TLS_H +#define _LIBC_RISCV_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("mv %0, tp" : "=r"(tlsbase)); + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libc/sparc64/static_tls.h (from r345703, head/lib/libc/sparc64/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libc/sparc64/static_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libc/sparc64/static_tls.h) @@ -0,0 +1,44 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_SPARC64_STATIC_TLS_H +#define _LIBC_SPARC64_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + register uintptr_t tlsbase __asm("%g7"); + + return (tlsbase + offset); +} + +#endif Modified: stable/12/lib/libc/sys/interposing_table.c ============================================================================== --- stable/12/lib/libc/sys/interposing_table.c Fri Apr 12 15:02:30 2019 (r346154) +++ stable/12/lib/libc/sys/interposing_table.c Fri Apr 12 15:12:08 2019 (r346155) @@ -81,6 +81,7 @@ interpos_func_t __libc_interposing[INTERPOS_MAX] = { SLOT(map_stacks_exec, __libc_map_stacks_exec), SLOT(fdatasync, __sys_fdatasync), SLOT(clock_nanosleep, __sys_clock_nanosleep), + SLOT(distribute_static_tls, __libc_distribute_static_tls), }; #undef SLOT Modified: stable/12/lib/libthr/Makefile ============================================================================== --- stable/12/lib/libthr/Makefile Fri Apr 12 15:02:30 2019 (r346154) +++ stable/12/lib/libthr/Makefile Fri Apr 12 15:12:08 2019 (r346155) @@ -16,8 +16,10 @@ SHLIB_MAJOR= 3 NO_WTHREAD_SAFETY=1 NO_WCAST_ALIGN.gcc=1 # for gcc 4.2 CFLAGS+=-DPTHREAD_KERNEL -CFLAGS+=-I${SRCTOP}/lib/libc/include -I${.CURDIR}/thread \ - -I${SRCTOP}/include +CFLAGS+=-I${SRCTOP}/lib/libc/include +CFLAGS+=-I${SRCTOP}/lib/libc/${MACHINE_CPUARCH} +CFLAGS+=-I${.CURDIR}/thread +CFLAGS+=-I${SRCTOP}/include CFLAGS+=-I${.CURDIR}/arch/${MACHINE_CPUARCH}/include CFLAGS+=-I${.CURDIR}/sys CFLAGS+=-I${SRCTOP}/libexec/rtld-elf Copied: stable/12/lib/libthr/arch/aarch64/include/pthread_tls.h (from r345703, head/lib/libthr/arch/aarch64/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libthr/arch/aarch64/include/pthread_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libthr/arch/aarch64/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_AARCH64_PTHREAD_TLS_H +#define _ARCH_AARCH64_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libthr/arch/amd64/include/pthread_tls.h (from r345703, head/lib/libthr/arch/amd64/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libthr/arch/amd64/include/pthread_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libthr/arch/amd64/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_AMD64_PTHREAD_TLS_H +#define _ARCH_AMD64_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase -= offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libthr/arch/arm/include/pthread_tls.h (from r345703, head/lib/libthr/arch/arm/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libthr/arch/arm/include/pthread_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libthr/arch/arm/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_ARM_PTHREAD_TLS_H +#define _ARCH_ARM_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libthr/arch/i386/include/pthread_tls.h (from r345703, head/lib/libthr/arch/i386/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libthr/arch/i386/include/pthread_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libthr/arch/i386/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_I386_PTHREAD_TLS_H +#define _ARCH_I386_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase -= offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libthr/arch/mips/include/pthread_tls.h (from r345703, head/lib/libthr/arch/mips/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libthr/arch/mips/include/pthread_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libthr/arch/mips/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_MIPS_PTHREAD_TLS_H +#define _ARCH_MIPS_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libthr/arch/powerpc/include/pthread_tls.h (from r345703, head/lib/libthr/arch/powerpc/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libthr/arch/powerpc/include/pthread_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libthr/arch/powerpc/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_POWERPC_PTHREAD_TLS_H +#define _ARCH_POWERPC_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libthr/arch/riscv/include/pthread_tls.h (from r345703, head/lib/libthr/arch/riscv/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libthr/arch/riscv/include/pthread_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libthr/arch/riscv/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_RISCV_PTHREAD_TLS_H +#define _ARCH_RISCV_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/12/lib/libthr/arch/sparc64/include/pthread_tls.h (from r345703, head/lib/libthr/arch/sparc64/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/lib/libthr/arch/sparc64/include/pthread_tls.h Fri Apr 12 15:12:08 2019 (r346155, copy of r345703, head/lib/libthr/arch/sparc64/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_SPARC64_PTHREAD_TLS_H +#define _ARCH_SPARC64_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase -= offset; + return (tlsbase); +} + +#endif Modified: stable/12/lib/libthr/pthread.map ============================================================================== --- stable/12/lib/libthr/pthread.map Fri Apr 12 15:02:30 2019 (r346154) +++ stable/12/lib/libthr/pthread.map Fri Apr 12 15:12:08 2019 (r346155) @@ -137,6 +137,7 @@ FBSDprivate_1.0 { __pthread_mutex_lock; __pthread_mutex_timedlock; __pthread_mutex_trylock; + __pthread_distribute_static_tls; _pthread_atfork; _pthread_barrier_destroy; _pthread_barrier_init; Modified: stable/12/lib/libthr/thread/thr_list.c ============================================================================== --- stable/12/lib/libthr/thread/thr_list.c Fri Apr 12 15:02:30 2019 (r346154) +++ stable/12/lib/libthr/thread/thr_list.c Fri Apr 12 15:12:08 2019 (r346155) @@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" #include "thr_private.h" +#include "static_tls.h" /*#define DEBUG_THREAD_LIST */ #ifdef DEBUG_THREAD_LIST @@ -361,4 +362,36 @@ _thr_find_thread(struct pthread *curthread, struct pth } THREAD_LIST_UNLOCK(curthread); return (ret); +} + +#include "pthread_tls.h" + +static void +thr_distribute_static_tls(uintptr_t tlsbase, void *src, size_t len, + size_t total_len) +{ + + memcpy((void *)tlsbase, src, len); + memset((char *)tlsbase + len, 0, total_len - len); +} + +void +__pthread_distribute_static_tls(size_t offset, void *src, size_t len, + size_t total_len) +{ + struct pthread *curthread, *thrd; + uintptr_t tlsbase; + + if (!_thr_is_inited()) { + tlsbase = _libc_get_static_tls_base(offset); + thr_distribute_static_tls(tlsbase, src, len, total_len); + return; + } + curthread = _get_curthread(); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Fri Apr 12 15:15:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D4F90157F098; Fri, 12 Apr 2019 15:15:32 +0000 (UTC) (envelope-from kib@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 83AAA776AB; Fri, 12 Apr 2019 15:15:32 +0000 (UTC) (envelope-from kib@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 714FC2326E; Fri, 12 Apr 2019 15:15:32 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CFFWIr012098; Fri, 12 Apr 2019 15:15:32 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CFFRA8012071; Fri, 12 Apr 2019 15:15:27 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904121515.x3CFFRA8012071@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 12 Apr 2019 15:15:27 +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: r346156 - in stable/11: lib/libc/aarch64 lib/libc/amd64 lib/libc/arm lib/libc/gen lib/libc/i386 lib/libc/include lib/libc/mips lib/libc/powerpc lib/libc/powerpc64 lib/libc/riscv lib/lib... X-SVN-Group: stable-11 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in stable/11: lib/libc/aarch64 lib/libc/amd64 lib/libc/arm lib/libc/gen lib/libc/i386 lib/libc/include lib/libc/mips lib/libc/powerpc lib/libc/powerpc64 lib/libc/riscv lib/libc/sparc64 lib/libc/sys li... X-SVN-Commit-Revision: 346156 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 83AAA776AB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 15:15:33 -0000 Author: kib Date: Fri Apr 12 15:15:27 2019 New Revision: 346156 URL: https://svnweb.freebsd.org/changeset/base/346156 Log: MFC r345703: Fix initial exec TLS mode for dynamically loaded shared objects. Added: stable/11/lib/libc/aarch64/static_tls.h - copied unchanged from r345703, head/lib/libc/aarch64/static_tls.h stable/11/lib/libc/amd64/static_tls.h - copied unchanged from r345703, head/lib/libc/amd64/static_tls.h stable/11/lib/libc/arm/static_tls.h - copied unchanged from r345703, head/lib/libc/arm/static_tls.h stable/11/lib/libc/i386/static_tls.h - copied unchanged from r345703, head/lib/libc/i386/static_tls.h stable/11/lib/libc/mips/static_tls.h - copied unchanged from r345703, head/lib/libc/mips/static_tls.h stable/11/lib/libc/powerpc/static_tls.h - copied unchanged from r345703, head/lib/libc/powerpc/static_tls.h stable/11/lib/libc/powerpc64/static_tls.h - copied unchanged from r345703, head/lib/libc/powerpc64/static_tls.h stable/11/lib/libc/riscv/static_tls.h - copied unchanged from r345703, head/lib/libc/riscv/static_tls.h stable/11/lib/libc/sparc64/static_tls.h - copied unchanged from r345703, head/lib/libc/sparc64/static_tls.h stable/11/lib/libthr/arch/aarch64/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/aarch64/include/pthread_tls.h stable/11/lib/libthr/arch/amd64/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/amd64/include/pthread_tls.h stable/11/lib/libthr/arch/arm/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/arm/include/pthread_tls.h stable/11/lib/libthr/arch/i386/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/i386/include/pthread_tls.h stable/11/lib/libthr/arch/mips/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/mips/include/pthread_tls.h stable/11/lib/libthr/arch/powerpc/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/powerpc/include/pthread_tls.h stable/11/lib/libthr/arch/riscv/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/riscv/include/pthread_tls.h stable/11/lib/libthr/arch/sparc64/include/pthread_tls.h - copied unchanged from r345703, head/lib/libthr/arch/sparc64/include/pthread_tls.h Modified: stable/11/lib/libc/gen/Symbol.map stable/11/lib/libc/gen/elf_utils.c stable/11/lib/libc/include/libc_private.h stable/11/lib/libc/sys/interposing_table.c stable/11/lib/libthr/Makefile stable/11/lib/libthr/pthread.map stable/11/lib/libthr/thread/thr_list.c stable/11/lib/libthr/thread/thr_private.h stable/11/libexec/rtld-elf/rtld.c stable/11/libexec/rtld-elf/rtld.h Directory Properties: stable/11/ (props changed) Copied: stable/11/lib/libc/aarch64/static_tls.h (from r345703, head/lib/libc/aarch64/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libc/aarch64/static_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libc/aarch64/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_AARCH64_STATIC_TLS_H +#define _LIBC_AARCH64_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("mrs %x0, tpidr_el0" : "=r" (tlsbase)); + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libc/amd64/static_tls.h (from r345703, head/lib/libc/amd64/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libc/amd64/static_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libc/amd64/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_AMD64_STATIC_TLS_H +#define _LIBC_AMD64_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("movq %%fs:0, %0" : "=r" (tlsbase)); + tlsbase -= offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libc/arm/static_tls.h (from r345703, head/lib/libc/arm/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libc/arm/static_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libc/arm/static_tls.h) @@ -0,0 +1,51 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_ARM_STATIC_TLS_H +#define _LIBC_ARM_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + +#ifdef ARM_TP_ADDRESS + tlsbase = *(uintptr_t *)ARM_TP_ADDRESS; +#else + __asm __volatile("mrc p15, 0, %0, c13, c0, 3" : "=r" (tlsbase)); +#endif + + tlsbase += offset; + return (tlsbase); +} + +#endif Modified: stable/11/lib/libc/gen/Symbol.map ============================================================================== --- stable/11/lib/libc/gen/Symbol.map Fri Apr 12 15:12:08 2019 (r346155) +++ stable/11/lib/libc/gen/Symbol.map Fri Apr 12 15:15:27 2019 (r346156) @@ -545,6 +545,7 @@ FBSDprivate_1.0 { __libc_tcdrain; __elf_aux_vector; + __pthread_distribute_static_tls; __pthread_map_stacks_exec; __fillcontextx; __fillcontextx2; Modified: stable/11/lib/libc/gen/elf_utils.c ============================================================================== --- stable/11/lib/libc/gen/elf_utils.c Fri Apr 12 15:12:08 2019 (r346155) +++ stable/11/lib/libc/gen/elf_utils.c Fri Apr 12 15:15:27 2019 (r346156) @@ -32,10 +32,13 @@ #include #include #include +#include #include "libc_private.h" +#include "static_tls.h" int __elf_phdr_match_addr(struct dl_phdr_info *, void *); void __pthread_map_stacks_exec(void); +void __pthread_distribute_static_tls(size_t, void *, size_t, size_t); int __elf_phdr_match_addr(struct dl_phdr_info *phdr_info, void *addr) @@ -81,4 +84,25 @@ __pthread_map_stacks_exec(void) { ((void (*)(void))__libc_interposing[INTERPOS_map_stacks_exec])(); +} + +void +__libc_distribute_static_tls(size_t offset, void *src, size_t len, + size_t total_len) +{ + uintptr_t tlsbase; + + tlsbase = _libc_get_static_tls_base(offset); + memcpy((void *)tlsbase, src, len); + memset((char *)tlsbase + len, 0, total_len - len); +} + +#pragma weak __pthread_distribute_static_tls +void +__pthread_distribute_static_tls(size_t offset, void *src, size_t len, + size_t total_len) +{ + + ((void (*)(size_t, void *, size_t, size_t))__libc_interposing[ + INTERPOS_distribute_static_tls])(offset, src, len, total_len); } Copied: stable/11/lib/libc/i386/static_tls.h (from r345703, head/lib/libc/i386/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libc/i386/static_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libc/i386/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_I386_STATIC_TLS_H +#define _LIBC_I386_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("movl %%gs:0, %0" : "=r" (tlsbase)); + tlsbase -= offset; + return (tlsbase); +} + +#endif Modified: stable/11/lib/libc/include/libc_private.h ============================================================================== --- stable/11/lib/libc/include/libc_private.h Fri Apr 12 15:12:08 2019 (r346155) +++ stable/11/lib/libc/include/libc_private.h Fri Apr 12 15:15:27 2019 (r346156) @@ -233,6 +233,7 @@ enum { INTERPOS_map_stacks_exec, INTERPOS_fdatasync, INTERPOS_clock_nanosleep, + INTERPOS_distribute_static_tls, INTERPOS_MAX }; @@ -403,6 +404,8 @@ struct dl_phdr_info; int __elf_phdr_match_addr(struct dl_phdr_info *, void *); void __init_elf_aux_vector(void); void __libc_map_stacks_exec(void); +void __libc_distribute_static_tls(__size_t, void *, __size_t, __size_t); +__uintptr_t __libc_static_tls_base(__size_t); void _pthread_cancel_enter(int); void _pthread_cancel_leave(int); Copied: stable/11/lib/libc/mips/static_tls.h (from r345703, head/lib/libc/mips/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libc/mips/static_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libc/mips/static_tls.h) @@ -0,0 +1,64 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_MIPS_STATIC_TLS_H +#define _LIBC_MIPS_STATIC_TLS_H + +#include + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + +#if defined(__mips_n64) + __asm__ __volatile__ ( + ".set\tpush\n\t" + ".set\tmips64r2\n\t" + "rdhwr\t%0, $29\n\t" + ".set\tpop" + : "=r" (tlsbase)); + tlsbase -= TLS_TP_OFFSET + TLS_TCB_SIZE; +#else /* mips 32 */ + __asm__ __volatile__ ( + ".set\tpush\n\t" + ".set\tmips32r2\n\t" + "rdhwr\t%0, $29\n\t" + ".set\tpop" + : "=r" (tlsbase)); + tlsbase -= TLS_TP_OFFSET + TLS_TCB_SIZE; +#endif /* ! __mips_n64 */ + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libc/powerpc/static_tls.h (from r345703, head/lib/libc/powerpc/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libc/powerpc/static_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libc/powerpc/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_POWERPC_STATIC_TLS_H +#define _LIBC_POWERPC_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("mr %0,2" : "=r"(tlsbase)); + tlsbase += offset - 0x7008; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libc/powerpc64/static_tls.h (from r345703, head/lib/libc/powerpc64/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libc/powerpc64/static_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libc/powerpc64/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_POWERPC64_STATIC_TLS_H +#define _LIBC_POWERPC64_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("mr %0,13" : "=r"(tlsbase)); + tlsbase += offset - 0x7010; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libc/riscv/static_tls.h (from r345703, head/lib/libc/riscv/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libc/riscv/static_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libc/riscv/static_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_RISCV_STATIC_TLS_H +#define _LIBC_RISCV_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + uintptr_t tlsbase; + + __asm __volatile("mv %0, tp" : "=r"(tlsbase)); + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libc/sparc64/static_tls.h (from r345703, head/lib/libc/sparc64/static_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libc/sparc64/static_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libc/sparc64/static_tls.h) @@ -0,0 +1,44 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _LIBC_SPARC64_STATIC_TLS_H +#define _LIBC_SPARC64_STATIC_TLS_H + +static __inline uintptr_t +_libc_get_static_tls_base(size_t offset) +{ + register uintptr_t tlsbase __asm("%g7"); + + return (tlsbase + offset); +} + +#endif Modified: stable/11/lib/libc/sys/interposing_table.c ============================================================================== --- stable/11/lib/libc/sys/interposing_table.c Fri Apr 12 15:12:08 2019 (r346155) +++ stable/11/lib/libc/sys/interposing_table.c Fri Apr 12 15:15:27 2019 (r346156) @@ -81,6 +81,7 @@ interpos_func_t __libc_interposing[INTERPOS_MAX] = { SLOT(map_stacks_exec, __libc_map_stacks_exec), SLOT(fdatasync, __sys_fdatasync), SLOT(clock_nanosleep, __sys_clock_nanosleep), + SLOT(distribute_static_tls, __libc_distribute_static_tls), }; #undef SLOT Modified: stable/11/lib/libthr/Makefile ============================================================================== --- stable/11/lib/libthr/Makefile Fri Apr 12 15:12:08 2019 (r346155) +++ stable/11/lib/libthr/Makefile Fri Apr 12 15:15:27 2019 (r346156) @@ -19,8 +19,10 @@ SHLIB_MAJOR= 3 WARNS?= 3 NO_WTHREAD_SAFETY=1 CFLAGS+=-DPTHREAD_KERNEL -CFLAGS+=-I${SRCTOP}/lib/libc/include -I${.CURDIR}/thread \ - -I${SRCTOP}/include +CFLAGS+=-I${SRCTOP}/lib/libc/include +CFLAGS+=-I${SRCTOP}/lib/libc/${MACHINE_CPUARCH} +CFLAGS+=-I${.CURDIR}/thread +CFLAGS+=-I${SRCTOP}/include CFLAGS+=-I${.CURDIR}/arch/${MACHINE_CPUARCH}/include CFLAGS+=-I${.CURDIR}/sys CFLAGS+=-I${SRCTOP}/libexec/rtld-elf Copied: stable/11/lib/libthr/arch/aarch64/include/pthread_tls.h (from r345703, head/lib/libthr/arch/aarch64/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libthr/arch/aarch64/include/pthread_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libthr/arch/aarch64/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_AARCH64_PTHREAD_TLS_H +#define _ARCH_AARCH64_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libthr/arch/amd64/include/pthread_tls.h (from r345703, head/lib/libthr/arch/amd64/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libthr/arch/amd64/include/pthread_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libthr/arch/amd64/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_AMD64_PTHREAD_TLS_H +#define _ARCH_AMD64_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase -= offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libthr/arch/arm/include/pthread_tls.h (from r345703, head/lib/libthr/arch/arm/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libthr/arch/arm/include/pthread_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libthr/arch/arm/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_ARM_PTHREAD_TLS_H +#define _ARCH_ARM_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libthr/arch/i386/include/pthread_tls.h (from r345703, head/lib/libthr/arch/i386/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libthr/arch/i386/include/pthread_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libthr/arch/i386/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_I386_PTHREAD_TLS_H +#define _ARCH_I386_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase -= offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libthr/arch/mips/include/pthread_tls.h (from r345703, head/lib/libthr/arch/mips/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libthr/arch/mips/include/pthread_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libthr/arch/mips/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_MIPS_PTHREAD_TLS_H +#define _ARCH_MIPS_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libthr/arch/powerpc/include/pthread_tls.h (from r345703, head/lib/libthr/arch/powerpc/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libthr/arch/powerpc/include/pthread_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libthr/arch/powerpc/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_POWERPC_PTHREAD_TLS_H +#define _ARCH_POWERPC_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libthr/arch/riscv/include/pthread_tls.h (from r345703, head/lib/libthr/arch/riscv/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libthr/arch/riscv/include/pthread_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libthr/arch/riscv/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_RISCV_PTHREAD_TLS_H +#define _ARCH_RISCV_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase += offset; + return (tlsbase); +} + +#endif Copied: stable/11/lib/libthr/arch/sparc64/include/pthread_tls.h (from r345703, head/lib/libthr/arch/sparc64/include/pthread_tls.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/lib/libthr/arch/sparc64/include/pthread_tls.h Fri Apr 12 15:15:27 2019 (r346156, copy of r345703, head/lib/libthr/arch/sparc64/include/pthread_tls.h) @@ -0,0 +1,46 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _ARCH_SPARC64_PTHREAD_TLS_H +#define _ARCH_SPARC64_PTHREAD_TLS_H + +static __inline uintptr_t +_get_static_tls_base(struct pthread *thr, size_t offset) +{ + uintptr_t tlsbase; + + tlsbase = (uintptr_t)thr->tcb; + tlsbase -= offset; + return (tlsbase); +} + +#endif Modified: stable/11/lib/libthr/pthread.map ============================================================================== --- stable/11/lib/libthr/pthread.map Fri Apr 12 15:12:08 2019 (r346155) +++ stable/11/lib/libthr/pthread.map Fri Apr 12 15:15:27 2019 (r346156) @@ -137,6 +137,7 @@ FBSDprivate_1.0 { __pthread_mutex_lock; __pthread_mutex_timedlock; __pthread_mutex_trylock; + __pthread_distribute_static_tls; _pthread_atfork; _pthread_barrier_destroy; _pthread_barrier_init; Modified: stable/11/lib/libthr/thread/thr_list.c ============================================================================== --- stable/11/lib/libthr/thread/thr_list.c Fri Apr 12 15:12:08 2019 (r346155) +++ stable/11/lib/libthr/thread/thr_list.c Fri Apr 12 15:15:27 2019 (r346156) @@ -37,6 +37,7 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" #include "thr_private.h" +#include "static_tls.h" /*#define DEBUG_THREAD_LIST */ #ifdef DEBUG_THREAD_LIST @@ -359,4 +360,36 @@ _thr_find_thread(struct pthread *curthread, struct pth } THREAD_LIST_UNLOCK(curthread); return (ret); +} + +#include "pthread_tls.h" + +static void +thr_distribute_static_tls(uintptr_t tlsbase, void *src, size_t len, + size_t total_len) +{ + + memcpy((void *)tlsbase, src, len); + memset((char *)tlsbase + len, 0, total_len - len); +} + +void +__pthread_distribute_static_tls(size_t offset, void *src, size_t len, + size_t total_len) +{ + struct pthread *curthread, *thrd; + uintptr_t tlsbase; + + if (!_thr_is_inited()) { + tlsbase = _libc_get_static_tls_base(offset); + thr_distribute_static_tls(tlsbase, src, len, total_len); + return; + } + curthread = _get_curthread(); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Fri Apr 12 15:20:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 993FA157F1B7; Fri, 12 Apr 2019 15:20:11 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D3814778D5; Fri, 12 Apr 2019 15:20:07 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id x3CFJw8W052294 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 12 Apr 2019 18:20:01 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua x3CFJw8W052294 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id x3CFJwLA052293; Fri, 12 Apr 2019 18:19:58 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 12 Apr 2019 18:19:58 +0300 From: Konstantin Belousov To: Edward Napierala Cc: Conrad Meyer , src-committers , svn-src-all , svn-src-head Subject: Re: svn commit: r346120 - head/sys/kern Message-ID: <20190412151958.GB1923@kib.kiev.ua> References: <201904111121.x3BBLj2K023087@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.11.4 (2019-03-13) X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on tom.home X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 15:20:11 -0000 On Fri, Apr 12, 2019 at 03:28:26PM +0100, Edward Napierala wrote: > On Thu, 11 Apr 2019 at 17:26, Conrad Meyer wrote: > > > > Hi Edward, > > > > I have a question about this change below. > > > > On Thu, Apr 11, 2019 at 4:22 AM Edward Tomasz Napierala > > wrote: > > > > > > Author: trasz > > > Date: Thu Apr 11 11:21:45 2019 > > > New Revision: 346120 > > > URL: https://svnweb.freebsd.org/changeset/base/346120 > > > > > > Log: > > > Use shared vnode locks for the ELF interpreter. > > [..] > > > On the one hand, perhaps VOP_IS_TEXT() is rarely false for common > > interpreters anyway. On the other hand, there is sort of a > > renaissance of static linking happening. So maybe the thought is, > > !VOP_IS_TEXT is likely to be rare, and LK_UPGRADE success even more > > rare, so why bother writing additional code for it? > > Konstantin already answered to most of the points, but regarding > this one: that's exactly the case. In a typical case, the number of times > this code path will be executed is zero. I'd expect one - when running > dynamically linked ELF binary for the first time - but for some reason in > that case lookup() returns with the exclusive vnode lock already held. This is strange. Which filesystem do you use ? From owner-svn-src-all@freebsd.org Fri Apr 12 15:30:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 854C1157F4B9; Fri, 12 Apr 2019 15:30:17 +0000 (UTC) (envelope-from etnapierala@gmail.com) Received: from mail-ot1-f47.google.com (mail-ot1-f47.google.com [209.85.210.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2013577F1F; Fri, 12 Apr 2019 15:30:16 +0000 (UTC) (envelope-from etnapierala@gmail.com) Received: by mail-ot1-f47.google.com with SMTP id d24so8703016otl.11; Fri, 12 Apr 2019 08:30:16 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Bwp9OI+PryeC3EcGPyQ0PgZsrrXnl2dGeRy67DQHpic=; b=OwnB6xJmEfy+3wbJ15CI60j6TNBholbJllTrCqUdIdCCl9VulESgMo6sXBZ9gZTZEF uFLdHZ7xpQjx87QDVUN9EaGlpC/iK7e/4kQ/4WWW69lSrAfC68J0Bhcv0ybMBs8QAoGK w+euKDRGqakBK+87NHwVkK6sP4E9SeswERrFR1+5hWP9usUUWGYmWon/F7ot9xPu0P0+ 9rkRTLBRgUiZnESS0iEeXaTHNgHpJUoaFEupP+AUkOB8UejYaLZFy96Y6g5rfpVGaDFe X9/9il7ppYF97R9JhQ1waSYvNY0tNmgV8xUR4ylnpUu0mI19Ual//cbbOK8bWW163J/m ezOA== X-Gm-Message-State: APjAAAV6pswsykzKXTBXQBD/R9WcjeSdan5aNsV8glx0anbzzS5xXYpa b+O2aZqyenQmrBcpNwa+IscYZqBtjz73mPKrSRw= X-Google-Smtp-Source: APXvYqx0xzJWVnnam48qekdL5Qu6An59iXF166Zu8S2wh8CpVMlgoGQKU1jJp6qHfxU1tDGkVaJxwzbu22/ozuv8djs= X-Received: by 2002:a9d:27e9:: with SMTP id c96mr37823246otb.206.1555082626454; Fri, 12 Apr 2019 08:23:46 -0700 (PDT) MIME-Version: 1.0 References: <201904111121.x3BBLj2K023087@repo.freebsd.org> <20190412151958.GB1923@kib.kiev.ua> In-Reply-To: <20190412151958.GB1923@kib.kiev.ua> From: Edward Napierala Date: Fri, 12 Apr 2019 16:23:35 +0100 Message-ID: Subject: Re: svn commit: r346120 - head/sys/kern To: Konstantin Belousov Cc: Conrad Meyer , src-committers , svn-src-all , svn-src-head Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 2013577F1F X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.945,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 15:30:17 -0000 On Fri, 12 Apr 2019 at 16:20, Konstantin Belousov wrote: > > On Fri, Apr 12, 2019 at 03:28:26PM +0100, Edward Napierala wrote: > > On Thu, 11 Apr 2019 at 17:26, Conrad Meyer wrote: > > > > > > Hi Edward, > > > > > > I have a question about this change below. > > > > > > On Thu, Apr 11, 2019 at 4:22 AM Edward Tomasz Napierala > > > wrote: > > > > > > > > Author: trasz > > > > Date: Thu Apr 11 11:21:45 2019 > > > > New Revision: 346120 > > > > URL: https://svnweb.freebsd.org/changeset/base/346120 > > > > > > > > Log: > > > > Use shared vnode locks for the ELF interpreter. > > > > [..] > > > > > On the one hand, perhaps VOP_IS_TEXT() is rarely false for common > > > interpreters anyway. On the other hand, there is sort of a > > > renaissance of static linking happening. So maybe the thought is, > > > !VOP_IS_TEXT is likely to be rare, and LK_UPGRADE success even more > > > rare, so why bother writing additional code for it? > > > > Konstantin already answered to most of the points, but regarding > > this one: that's exactly the case. In a typical case, the number of times > > this code path will be executed is zero. I'd expect one - when running > > dynamically linked ELF binary for the first time - but for some reason in > > that case lookup() returns with the exclusive vnode lock already held. > > This is strange. Which filesystem do you use ? UFS. From owner-svn-src-all@freebsd.org Fri Apr 12 16:43:45 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 96D001581085; Fri, 12 Apr 2019 16:43:45 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf1-x42b.google.com (mail-pf1-x42b.google.com [IPv6:2607:f8b0:4864:20::42b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 12DF182D76; Fri, 12 Apr 2019 16:43:45 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf1-x42b.google.com with SMTP id c207so5411364pfc.7; Fri, 12 Apr 2019 09:43:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=mU6fAFE3OvYtMtBNVmFfrWQvphk1gvSs1jnvE13qY/8=; b=Vikw/DozW8MPeKADRwdVEygurJCnSXSmpXz25m7ldefGlmsUZ0JDSO1VnscVW03ot9 2qBOMHmFKBCvoaPhPnX3SiU6R9Tx3ulYkcX4HqqLJayMaK6/2FDbeiHiNS7RCudNj7ns 1i2OZBFZhxKW2j+aBPDaWbEgbCEafhinRn2+/u9KSYS7KjKNuPwNDSGex6ybMVhxbin4 fMSI6okpBy4xmZVTrng51t3aUTG7NgD6a3mnvgW3rbgjd8B/ppunj/WqFPDpmnujX6VO 5K9h6REYpe0Om88ayihcjA2FvnCwacgDTFbwhFnb7vyFS4g/RB6D4+9/SxG6ASLx1/FQ W11A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=mU6fAFE3OvYtMtBNVmFfrWQvphk1gvSs1jnvE13qY/8=; b=a7Zc6/Yb6PVppp+Jm1UAFCFo0Aj8NNFOgXSfVqU+/MUqvMOFyywkTHpwMsZuvkcSCE 3+pblI5iPBOMzmZXsmIlYLXrOZVVApNcYrwY2iwLxf3jpne81Rg1FjlmcphayRyoXJDm 1/4rn4hpXvpWyZuqLdfZR/vSw6KWHYFlTKa6HrwwFjY/KL4kKFmcR6dt3Rd53WvWBy1k sf21ih6jo3Eh534F7fwIodCxLHjD7Ssh5tKNKeFS61vlTbJYU7HRhrVTsJkSbhgdrtxk FtDF7lgnLgizN7xZlUpiPsQPxc4jecoVPvYJ5DVzrZ/hyznq/28L5wKLjmMlJdZ6nkLb t2Vg== X-Gm-Message-State: APjAAAWDNOgGzyxAj6O5wJVTiTgUeppoHD39aN+8ZPRGddEJEFluqxim LebAMFvyCL+weFfA2XKI1AktXgfZMbg= X-Google-Smtp-Source: APXvYqyNaQXiWL6G6LGjgEMax3c0ROk2BC3zNH7UxxAgCQgQqcd7sT3JlCxz9zfyM2BSC9xCGWE6Qw== X-Received: by 2002:a63:61d7:: with SMTP id v206mr55397769pgb.349.1555087423453; Fri, 12 Apr 2019 09:43:43 -0700 (PDT) Received: from [192.168.20.7] (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id h20sm60891004pfj.40.2019.04.12.09.43.41 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 12 Apr 2019 09:43:42 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) Subject: Re: svn commit: r346150 - head/sys/vm From: Enji Cooper In-Reply-To: <201904121246.x3CCkP2m027680@repo.freebsd.org> Date: Fri, 12 Apr 2019 09:43:41 -0700 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: 7bit Message-Id: <94A39E35-A8E0-42A4-8467-096D4AAD0F89@gmail.com> References: <201904121246.x3CCkP2m027680@repo.freebsd.org> To: Tycho Nightingale X-Mailer: Apple Mail (2.3445.102.3) X-Rspamd-Queue-Id: 12DF182D76 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 16:43:45 -0000 > On Apr 12, 2019, at 5:46 AM, Tycho Nightingale wrote: > > Author: tychon > Date: Fri Apr 12 12:46:25 2019 > New Revision: 346150 > URL: https://svnweb.freebsd.org/changeset/base/346150 > > Log: > for a cache-only zone the destructor tries to destroy a non-existent keg > > Reviewed by: markj > Sponsored by: Dell EMC Isilon > Differential Revision: https://reviews.freebsd.org/D19835 Hi Tycho! Is the goal of this change to prevent a panic (with an INVARIANTS kernel)? Thank you! -Enji From owner-svn-src-all@freebsd.org Fri Apr 12 17:07:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 19DFB1581945; Fri, 12 Apr 2019 17:07:04 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E392A83A3B; Fri, 12 Apr 2019 17:07:02 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id x3CH6sp9077561 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 12 Apr 2019 20:06:58 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua x3CH6sp9077561 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id x3CH6sJu077560; Fri, 12 Apr 2019 20:06:54 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 12 Apr 2019 20:06:54 +0300 From: Konstantin Belousov To: Edward Napierala Cc: Conrad Meyer , src-committers , svn-src-all , svn-src-head Subject: Re: svn commit: r346120 - head/sys/kern Message-ID: <20190412170654.GI1923@kib.kiev.ua> References: <201904111121.x3BBLj2K023087@repo.freebsd.org> <20190412151958.GB1923@kib.kiev.ua> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.11.4 (2019-03-13) X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on tom.home X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 17:07:04 -0000 On Fri, Apr 12, 2019 at 04:23:35PM +0100, Edward Napierala wrote: > On Fri, 12 Apr 2019 at 16:20, Konstantin Belousov wrote: > > > > On Fri, Apr 12, 2019 at 03:28:26PM +0100, Edward Napierala wrote: > > > On Thu, 11 Apr 2019 at 17:26, Conrad Meyer wrote: > > > > > > > > Hi Edward, > > > > > > > > I have a question about this change below. > > > > > > > > On Thu, Apr 11, 2019 at 4:22 AM Edward Tomasz Napierala > > > > wrote: > > > > > > > > > > Author: trasz > > > > > Date: Thu Apr 11 11:21:45 2019 > > > > > New Revision: 346120 > > > > > URL: https://svnweb.freebsd.org/changeset/base/346120 > > > > > > > > > > Log: > > > > > Use shared vnode locks for the ELF interpreter. > > > > > > [..] > > > > > > > On the one hand, perhaps VOP_IS_TEXT() is rarely false for common > > > > interpreters anyway. On the other hand, there is sort of a > > > > renaissance of static linking happening. So maybe the thought is, > > > > !VOP_IS_TEXT is likely to be rare, and LK_UPGRADE success even more > > > > rare, so why bother writing additional code for it? > > > > > > Konstantin already answered to most of the points, but regarding > > > this one: that's exactly the case. In a typical case, the number of times > > > this code path will be executed is zero. I'd expect one - when running > > > dynamically linked ELF binary for the first time - but for some reason in > > > that case lookup() returns with the exclusive vnode lock already held. > > > > This is strange. Which filesystem do you use ? > > UFS. I see. UFS has to use exclusive locking in ffs_vget() when the vnode is created, i.e. de-facto when inode is read from the volume. See the manipulations of flags in ffs_vgetf() right after vfs_hash_get() was unable to find a cached vnode. But if you just installed new /libexec/ld-elf.so.1, or the binary uses some other interpreter which was written right before the execve(2) call, then vnode most likely is still cached and is returned shared-locked. Use this scenario to actually test the code. From owner-svn-src-all@freebsd.org Fri Apr 12 17:11:51 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9C4DB1581B9E; Fri, 12 Apr 2019 17:11:51 +0000 (UTC) (envelope-from kib@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 3D9F183E9E; Fri, 12 Apr 2019 17:11:51 +0000 (UTC) (envelope-from kib@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 E06AD246BC; Fri, 12 Apr 2019 17:11:50 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CHBoHH075069; Fri, 12 Apr 2019 17:11:50 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CHBoeu075068; Fri, 12 Apr 2019 17:11:50 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904121711.x3CHBoeu075068@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 12 Apr 2019 17:11:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346157 - head/sys/fs/tmpfs X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/fs/tmpfs X-SVN-Commit-Revision: 346157 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3D9F183E9E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.952,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 17:11:51 -0000 Author: kib Date: Fri Apr 12 17:11:50 2019 New Revision: 346157 URL: https://svnweb.freebsd.org/changeset/base/346157 Log: Ignore doomed vnodes in tmpfs_update_mtime(). Otherwise we might dereference NULL vp->v_data after VP_TO_TMPFS_NODE(). Reported and tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/fs/tmpfs/tmpfs_vfsops.c Modified: head/sys/fs/tmpfs/tmpfs_vfsops.c ============================================================================== --- head/sys/fs/tmpfs/tmpfs_vfsops.c Fri Apr 12 15:15:27 2019 (r346156) +++ head/sys/fs/tmpfs/tmpfs_vfsops.c Fri Apr 12 17:11:50 2019 (r346157) @@ -173,7 +173,7 @@ tmpfs_update_mtime(struct mount *mp, bool lazy) * metadata changes now. */ if (!lazy || (obj->flags & OBJ_TMPFS_DIRTY) != 0) { - if (vget(vp, LK_EXCLUSIVE | LK_RETRY | LK_INTERLOCK, + if (vget(vp, LK_EXCLUSIVE | LK_INTERLOCK, curthread) != 0) continue; tmpfs_check_mtime(vp); From owner-svn-src-all@freebsd.org Fri Apr 12 17:27:20 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2AFEC1581EEE; Fri, 12 Apr 2019 17:27:20 +0000 (UTC) (envelope-from kib@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 BB88C84A2F; Fri, 12 Apr 2019 17:27:19 +0000 (UTC) (envelope-from kib@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 92B9D2489B; Fri, 12 Apr 2019 17:27:19 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CHRJaQ080840; Fri, 12 Apr 2019 17:27:19 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CHRJnh080839; Fri, 12 Apr 2019 17:27:19 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201904121727.x3CHRJnh080839@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 12 Apr 2019 17:27:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346158 - head/lib/libthr/thread X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/lib/libthr/thread X-SVN-Commit-Revision: 346158 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BB88C84A2F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.952,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 17:27:20 -0000 Author: kib Date: Fri Apr 12 17:27:19 2019 New Revision: 346158 URL: https://svnweb.freebsd.org/changeset/base/346158 Log: Do not access mutex memory after unlock. PR: 237195 Reported by: freebsd@hurrikhan.eu Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/lib/libthr/thread/thr_mutex.c Modified: head/lib/libthr/thread/thr_mutex.c ============================================================================== --- head/lib/libthr/thread/thr_mutex.c Fri Apr 12 17:11:50 2019 (r346157) +++ head/lib/libthr/thread/thr_mutex.c Fri Apr 12 17:27:19 2019 (r346158) @@ -949,7 +949,7 @@ mutex_unlock_common(struct pthread_mutex *m, bool cv, { struct pthread *curthread; uint32_t id; - int deferred, error, robust; + int deferred, error, private, robust; if (__predict_false(m <= THR_MUTEX_DESTROYED)) { if (m == THR_MUTEX_DESTROYED) @@ -967,6 +967,7 @@ mutex_unlock_common(struct pthread_mutex *m, bool cv, return (EPERM); error = 0; + private = (m->m_flags & PMUTEX_FLAG_PRIVATE) != 0; if (__predict_false(PMUTEX_TYPE(m->m_flags) == PTHREAD_MUTEX_RECURSIVE && m->m_count > 0)) { m->m_count--; @@ -991,7 +992,7 @@ mutex_unlock_common(struct pthread_mutex *m, bool cv, if (robust) _mutex_leave_robust(curthread, m); } - if (!cv && m->m_flags & PMUTEX_FLAG_PRIVATE) + if (!cv && private) THR_CRITICAL_LEAVE(curthread); return (error); } From owner-svn-src-all@freebsd.org Fri Apr 12 17:50:09 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 812531582393; Fri, 12 Apr 2019 17:50:09 +0000 (UTC) (envelope-from herbert@gojira.at) Received: from mail.bsd4all.net (mail.bsd4all.net [IPv6:2a01:4f8:191:217b::25]) (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 "mail.bsd4all.net", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B2DA685662; Fri, 12 Apr 2019 17:50:08 +0000 (UTC) (envelope-from herbert@gojira.at) Date: Fri, 12 Apr 2019 19:49:56 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=gojira.at; s=mail201809; t=1555091397; bh=7TrZKg1wOQAptoLLdd5h6ZD18ROw0+OKaJz15pwWRSQ=; h=Date:Message-ID:From:To:Cc:Subject:MIME-Version:Content-Type; b=R47dYkdWBMtPuczoADi03Hee1pAjQG0s2Kt0ddMEZ8cp6C0oK3zbyfFvKKadLRew3 j1qYA9UYOvX7niP9snT0R0v653xwOK9OnjmHGUQFi0sSvPk5mT52fFoTuQ+TPdB01X mTW7EA8lyjBLfMtVfbzFCq11tmIkmwZuiTBgTS8F9h7H58u9oQx1+wrqIYxdJeIQ+x AVix38cMzGJncGCbioORDpVQuTmLx/uFWFtp6SjYWIo8CCO+YKOFSeYIj8CSG43VwY r38GDLTRvjXHGgxq9xtAqEFuzmDrIs8kT2NvO5ecj1f3V/V2zhszjbEGHKfXZu8bNi vd9yyYUp40AHw== Message-ID: <87o95bf70b.wl-herbert@gojira.at> From: "Herbert J. Skuhra" To: "Simon J. Gerraty" Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: Re: svn commit: r346145 - in stable/12: contrib/bearssl etc/mtree include lib lib/libbearssl lib/libsecureboot lib/libsecureboot/tests sbin sbin/veriexec share/mk stand stand/common stand/ficl stand/fi... In-Reply-To: <201904120103.x3C1302P053933@repo.freebsd.org> References: <201904120103.x3C1302P053933@repo.freebsd.org> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM/1.14.9 (=?ISO-8859-4?Q?Goj=F2?=) APEL/10.8 EasyPG/1.0.0 Emacs/27.0 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: B2DA685662 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 17:50:09 -0000 On Fri, 12 Apr 2019 03:03:00 +0200, "Simon J. Gerraty" wrote: > > Author: sjg > Date: Fri Apr 12 01:03:00 2019 > New Revision: 346145 > URL: https://svnweb.freebsd.org/changeset/base/346145 > > Log: > Add support for loader veriexec > > Also sbin/veriexec for mac_veriexec > > MFC r343281,344564-344568,344780,344784,345289,346070 Partly MFC r344853? -- Herbert From owner-svn-src-all@freebsd.org Fri Apr 12 18:13:58 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DF33A1582BAF; Fri, 12 Apr 2019 18:13:58 +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 82CED86589; Fri, 12 Apr 2019 18:13:58 +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 5D27A25112; Fri, 12 Apr 2019 18:13:58 +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 x3CIDw5l006815; Fri, 12 Apr 2019 18:13:58 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CIDwow006814; Fri, 12 Apr 2019 18:13:58 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904121813.x3CIDwow006814@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 12 Apr 2019 18:13:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346159 - head/usr.sbin/bhyve X-SVN-Group: head X-SVN-Commit-Author: mav X-SVN-Commit-Paths: head/usr.sbin/bhyve X-SVN-Commit-Revision: 346159 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 82CED86589 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 18:13:59 -0000 Author: mav Date: Fri Apr 12 18:13:57 2019 New Revision: 346159 URL: https://svnweb.freebsd.org/changeset/base/346159 Log: Fix thread name buffer overflow. MFC after: 1 week Modified: head/usr.sbin/bhyve/pci_virtio_scsi.c Modified: head/usr.sbin/bhyve/pci_virtio_scsi.c ============================================================================== --- head/usr.sbin/bhyve/pci_virtio_scsi.c Fri Apr 12 17:27:19 2019 (r346158) +++ head/usr.sbin/bhyve/pci_virtio_scsi.c Fri Apr 12 18:13:57 2019 (r346159) @@ -634,7 +634,7 @@ pci_vtscsi_init_queue(struct pci_vtscsi_softc *sc, struct pci_vtscsi_queue *queue, int num) { struct pci_vtscsi_worker *worker; - char threadname[16]; + char tname[MAXCOMLEN + 1]; int i; queue->vsq_sc = sc; @@ -653,8 +653,8 @@ pci_vtscsi_init_queue(struct pci_vtscsi_softc *sc, pthread_create(&worker->vsw_thread, NULL, &pci_vtscsi_proc, (void *)worker); - sprintf(threadname, "virtio-scsi:%d-%d", num, i); - pthread_set_name_np(worker->vsw_thread, threadname); + snprintf(tname, sizeof(tname), "vtscsi:%d-%d", num, i); + pthread_set_name_np(worker->vsw_thread, tname); LIST_INSERT_HEAD(&queue->vsq_workers, worker, vsw_link); } From owner-svn-src-all@freebsd.org Fri Apr 12 18:35:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9A15315830D0; Fri, 12 Apr 2019 18:35:15 +0000 (UTC) (envelope-from lwhsu@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 DD97986E93; Fri, 12 Apr 2019 18:35:14 +0000 (UTC) (envelope-from lwhsu@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 A9D0D2545E; Fri, 12 Apr 2019 18:35:14 +0000 (UTC) (envelope-from lwhsu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CIZE4g017601; Fri, 12 Apr 2019 18:35:14 GMT (envelope-from lwhsu@FreeBSD.org) Received: (from lwhsu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CIZETP017600; Fri, 12 Apr 2019 18:35:14 GMT (envelope-from lwhsu@FreeBSD.org) Message-Id: <201904121835.x3CIZETP017600@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: lwhsu set sender to lwhsu@FreeBSD.org using -f From: Li-Wen Hsu Date: Fri, 12 Apr 2019 18:35:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346160 - head/usr.bin/mandoc X-SVN-Group: head X-SVN-Commit-Author: lwhsu X-SVN-Commit-Paths: head/usr.bin/mandoc X-SVN-Commit-Revision: 346160 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: DD97986E93 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 18:35:15 -0000 Author: lwhsu Date: Fri Apr 12 18:35:14 2019 New Revision: 346160 URL: https://svnweb.freebsd.org/changeset/base/346160 Log: Suppress old gcc warning about null format string This is workaround to make head build on gcc using architectures Sponsored by: The FreeBSD Foundation MFC-with: r346149 Modified: head/usr.bin/mandoc/Makefile Modified: head/usr.bin/mandoc/Makefile ============================================================================== --- head/usr.bin/mandoc/Makefile Fri Apr 12 18:13:57 2019 (r346159) +++ head/usr.bin/mandoc/Makefile Fri Apr 12 18:35:14 2019 (r346160) @@ -97,6 +97,8 @@ SRCS= ${LIB_SRCS} \ WARNS?= 3 CFLAGS+= -DHAVE_CONFIG_H \ -I${SRCTOP}/lib/libopenbsd/ +# This can be removed after swtiching to newer gcc +CFLAGS.gcc+= -Wno-format LIBADD= openbsd z .include From owner-svn-src-all@freebsd.org Fri Apr 12 18:43:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5D2A21583406; Fri, 12 Apr 2019 18:43:14 +0000 (UTC) (envelope-from sjg@juniper.net) Received: from mx0a-00273201.pphosted.com (mx0a-00273201.pphosted.com [208.84.65.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.pphosted.com", Issuer "Thawte RSA CA 2018" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C251687500; Fri, 12 Apr 2019 18:43:13 +0000 (UTC) (envelope-from sjg@juniper.net) Received: from pps.filterd (m0108156.ppops.net [127.0.0.1]) by mx0a-00273201.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x3CIYU9m016023; Fri, 12 Apr 2019 11:43:10 -0700 Received: from nam01-sn1-obe.outbound.protection.outlook.com (mail-sn1nam01lp2050.outbound.protection.outlook.com [104.47.32.50]) by mx0a-00273201.pphosted.com with ESMTP id 2rtu2srnd4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Fri, 12 Apr 2019 11:43:10 -0700 Received: from SN4PR0501CA0146.namprd05.prod.outlook.com (2603:10b6:803:2c::24) by SN6PR05MB4239.namprd05.prod.outlook.com (2603:10b6:805:28::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1792.8; Fri, 12 Apr 2019 18:43:07 +0000 Received: from BY2NAM05FT030.eop-nam05.prod.protection.outlook.com (2a01:111:f400:7e52::208) by SN4PR0501CA0146.outlook.office365.com (2603:10b6:803:2c::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.1792.8 via Frontend Transport; Fri, 12 Apr 2019 18:43:06 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning juniper.net discourages use of 66.129.239.13 as permitted sender) Received: from P-EXFEND-EQX-02.jnpr.net (66.129.239.13) by BY2NAM05FT030.mail.protection.outlook.com (10.152.100.167) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA) id 15.20.1792.7 via Frontend Transport; Fri, 12 Apr 2019 18:43:06 +0000 Received: from P-EXBEND-EQX-01.jnpr.net (10.104.8.52) by P-EXFEND-EQX-02.jnpr.net (10.104.8.55) with Microsoft SMTP Server (TLS) id 15.0.847.32; Fri, 12 Apr 2019 11:43:06 -0700 Received: from P-EXBEND-EQX-02.jnpr.net (10.104.8.53) by P-EXBEND-EQX-01.jnpr.net (10.104.8.52) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Fri, 12 Apr 2019 11:43:05 -0700 Received: from p-mailhub01.juniper.net (10.104.20.6) by P-EXBEND-EQX-02.jnpr.net (10.104.8.53) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Fri, 12 Apr 2019 11:43:05 -0700 Received: from kaos.jnpr.net (kaos.jnpr.net [172.23.50.162]) by p-mailhub01.juniper.net (8.14.4/8.11.3) with ESMTP id x3CIh3fh018947; Fri, 12 Apr 2019 11:43:03 -0700 (envelope-from sjg@juniper.net) Received: by kaos.jnpr.net (Postfix, from userid 1377) id 33F217C887; Fri, 12 Apr 2019 11:43:03 -0700 (PDT) Received: from kaos.jnpr.net (localhost [127.0.0.1]) by kaos.jnpr.net (Postfix) with ESMTP id 324D77C886; Fri, 12 Apr 2019 11:43:03 -0700 (PDT) To: "Herbert J. Skuhra" , CC: , , , , Subject: Re: svn commit: r346145 - in stable/12: contrib/bearssl etc/mtree include lib lib/libbearssl lib/libsecureboot lib/libsecureboot/tests sbin sbin/veriexec share/mk stand stand/common stand/ficl stand/fi... In-Reply-To: <87o95bf70b.wl-herbert@gojira.at> References: <201904120103.x3C1302P053933@repo.freebsd.org> <87o95bf70b.wl-herbert@gojira.at> Comments: In-reply-to: "Herbert J. Skuhra" message dated "Fri, 12 Apr 2019 19:49:56 +0200." From: "Simon J. Gerraty" X-Mailer: MH-E 8.6+git; nmh 1.7.1; GNU Emacs 26.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <9636.1555094583.1@kaos.jnpr.net> Date: Fri, 12 Apr 2019 11:43:03 -0700 Message-ID: <14402.1555094583@kaos.jnpr.net> X-EXCLAIMER-MD-CONFIG: e3cb0ff2-54e7-4646-8a04-0dae4ac7b136 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:66.129.239.13; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10019020)(136003)(346002)(376002)(39860400002)(396003)(2980300002)(189003)(199004)(316002)(86362001)(90966002)(76176011)(7696005)(229853002)(46406003)(54906003)(8936002)(126002)(476003)(97876018)(11346002)(7126003)(336012)(110136005)(117636001)(69596002)(478600001)(356004)(486006)(68736007)(16586007)(97756001)(47776003)(5660300002)(55016002)(9686003)(446003)(53936002)(4744005)(50226002)(105596002)(4326008)(6266002)(305945005)(97736004)(23726003)(26005)(81166006)(81156014)(106466001)(77096007)(186003)(2906002)(53416004)(50466002)(8676002)(76506005)(107886003)(6246003); DIR:OUT; SFP:1102; SCL:1; SRVR:SN6PR05MB4239; H:P-EXFEND-EQX-02.jnpr.net; FPR:; SPF:SoftFail; LANG:en; PTR:InfoDomainNonexistent; MX:1; A:1; X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4ccb6607-4eef-4a77-6f72-08d6bf76b3cc X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4710095)(4711036)(2017052603328); SRVR:SN6PR05MB4239; X-MS-TrafficTypeDiagnostic: SN6PR05MB4239: X-Microsoft-Antispam-PRVS: X-Forefront-PRVS: 0005B05917 X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: 4C7o20vyNwbdrI8PHy1yEbqfFmoxfNtHhmLG7dmiehY8VcOy8Xqy/saWZWzIFxPC/qrxg97XbIUc1RSyTRNlCaTLa19TmbNnWCNhY/7dr3Xf0bsYOrYoiZsZNBfYrvCBbct9wK3YDrSW/nue+Vk/lWhfm2gODTb/iiBP/iby0AWAvpwAehlgtzcFKyOLYeMXUP1nvY3Ux3UwaJ5IlZOIkDx65tLaTgoJhuyQxNBtb2XaRGfsuP6Ks7Axmpv2tZQB77SideMbbb20haNwOqQYe+Z+C+H9QIUXYL3eym1xmBc3gOczT1R1++SyYMlEUMwUvWN2+QsS0NGqAkFPtP9dXpUuIGOnJJgHNj0j9zO8d8EvZs76WZc93IYMRNv4xnsBOTv6mc2nZNmIzs2lLq3uyYjWo2EmWuulxVCX5QFDEU8= X-OriginatorOrg: juniper.net X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2019 18:43:06.2448 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4ccb6607-4eef-4a77-6f72-08d6bf76b3cc X-MS-Exchange-CrossTenant-Id: bea78b3c-4cdb-4130-854a-1d193232e5f4 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=bea78b3c-4cdb-4130-854a-1d193232e5f4; Ip=[66.129.239.13]; Helo=[P-EXFEND-EQX-02.jnpr.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR05MB4239 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-04-12_10:, , signatures=0 X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=851 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1904120125 X-Rspamd-Queue-Id: C251687500 X-Spamd-Bar: ------ X-Spamd-Result: default: False [-6.98 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 18:43:14 -0000 Herbert J. Skuhra wrote: > On Fri, 12 Apr 2019 03:03:00 +0200, "Simon J. Gerraty" wrote: > > Also sbin/veriexec for mac_veriexec > > > > MFC r343281,344564-344568,344780,344784,345289,346070 > > Partly MFC r344853? Once the semihalf guys MFC their bits, that should apply in toto but would it not be more correct to just run makeman ? From owner-svn-src-all@freebsd.org Fri Apr 12 18:53:50 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 429C915836E9; Fri, 12 Apr 2019 18:53:50 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pl1-x641.google.com (mail-pl1-x641.google.com [IPv6:2607:f8b0:4864:20::641]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9EA7387D22; Fri, 12 Apr 2019 18:53:49 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pl1-x641.google.com with SMTP id ck15so5556803plb.3; Fri, 12 Apr 2019 11:53:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=uk0OB20tesp9reowQTeBm/DB1OIyuoe42IoOngOM568=; b=kGJhUZ6BR+oZacs0WTiau7gMsjvfh0S+xrHz7MCH+qquew9wFmyc+YEggtLgT4N7oq 5T/MNI84QZNj5Z9nHB3fsttqpjlF7QVgzHq1Gz4ZTE+JBqksFek66fbbX9PcpfmDSoYt 8JrwzQjqCGYzhw+pghqxVKcIQYPUPbV9XJR27fS6mMd5qAMF0Mq+DANIkomosz1+7j32 mfmQg6hGMN2lTWWCBK1ORJbHEHrT6UoG/eRxQZt/n0SVpqP8xG/7TOSHSPJn+PJFOS58 5kKFlGzutppsqQw36N4K5XoImlCkaaoyUV89+rLLhyv+xAeLp5xM7enIXunZfOickbDP fdeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=uk0OB20tesp9reowQTeBm/DB1OIyuoe42IoOngOM568=; b=GlBmkh47NFvCre0M4CSGrM0iXwnXYAIrbeS0b/QmeM6xW5XqHITtSKexThREo9d26y nblMPl2vpQV3bHxawLHFsPMGu1Z5cwmRhL9kIpuvPXaW3FJ4GVzq/tXGT5hn/3GCVInl uEpyGwE1teo2IliNgkg/9iwr6nqUP/AqKSUcqMLJ/Jxlu7Xk73C2dqd8GIzKcAMUylQa TC/Om5LIhb5mCsfso0YS8w4LW8dYjAhTraudWnPrG5Xx6L4ZdCpoIy2JcFlZzGu7tlLO tmF++N5E7Bw8mTYpi2ZZmU/XtZgoVBmlvhW4aUNQ9J8rjRTvSGcdL4pzPlVJQrfNunv6 BT0Q== X-Gm-Message-State: APjAAAWxP53OiPNq1gnykXAPX+qWleAWPUrQwuysDPWskt+yrB3dShyF FaywA2xI2H/xNA0TonRWxIbirlWVPIg= X-Google-Smtp-Source: APXvYqyd8YzXJuHw+TRo2T5bOqRGm4OraEXVb/luyvUeXpqFpSI5IUx7ize06YNr2PLZ/TZL/SsSGg== X-Received: by 2002:a17:902:b489:: with SMTP id y9mr50623702plr.17.1555095228001; Fri, 12 Apr 2019 11:53:48 -0700 (PDT) Received: from [192.168.20.7] (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id s9sm30096542pfe.183.2019.04.12.11.53.47 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 12 Apr 2019 11:53:47 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) Subject: Re: svn commit: r346160 - head/usr.bin/mandoc From: Enji Cooper In-Reply-To: <201904121835.x3CIZETP017600@repo.freebsd.org> Date: Fri, 12 Apr 2019 11:53:45 -0700 Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <5DF1F115-692D-48B7-A52C-AD1BF5E738E5@gmail.com> References: <201904121835.x3CIZETP017600@repo.freebsd.org> To: Li-Wen Hsu X-Mailer: Apple Mail (2.3445.102.3) X-Rspamd-Queue-Id: 9EA7387D22 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.99)[-0.985,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 18:53:50 -0000 > On Apr 12, 2019, at 11:35 AM, Li-Wen Hsu wrote: >=20 > Author: lwhsu > Date: Fri Apr 12 18:35:14 2019 > New Revision: 346160 > URL: https://svnweb.freebsd.org/changeset/base/346160 >=20 > Log: > Suppress old gcc warning about null format string >=20 > This is workaround to make head build on gcc using architectures >=20 > Sponsored by: The FreeBSD Foundation > MFC-with: r346149 >=20 > Modified: > head/usr.bin/mandoc/Makefile >=20 > Modified: head/usr.bin/mandoc/Makefile > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/usr.bin/mandoc/Makefile Fri Apr 12 18:13:57 2019 = (r346159) > +++ head/usr.bin/mandoc/Makefile Fri Apr 12 18:35:14 2019 = (r346160) > @@ -97,6 +97,8 @@ SRCS=3D ${LIB_SRCS} \ > WARNS?=3D 3 > CFLAGS+=3D -DHAVE_CONFIG_H \ > -I${SRCTOP}/lib/libopenbsd/ > +# This can be removed after swtiching to newer gcc > +CFLAGS.gcc+=3D -Wno-format > LIBADD=3D openbsd z >=20 > .include Couldn=E2=80=99t this be fixed upstream and pulled back in, = instead of ignoring the warning? Cheers, -Enji= From owner-svn-src-all@freebsd.org Fri Apr 12 18:54:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 582571583708; Fri, 12 Apr 2019 18:54:10 +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 EB4D187E13; Fri, 12 Apr 2019 18:54:09 +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 C5558257EA; Fri, 12 Apr 2019 18:54:09 +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 x3CIs9Wv028294; Fri, 12 Apr 2019 18:54:09 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CIs96c028293; Fri, 12 Apr 2019 18:54:09 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201904121854.x3CIs96c028293@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 12 Apr 2019 18:54:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346161 - head/sys/dev/virtio/scsi X-SVN-Group: head X-SVN-Commit-Author: mav X-SVN-Commit-Paths: head/sys/dev/virtio/scsi X-SVN-Commit-Revision: 346161 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: EB4D187E13 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 18:54:10 -0000 Author: mav Date: Fri Apr 12 18:54:09 2019 New Revision: 346161 URL: https://svnweb.freebsd.org/changeset/base/346161 Log: Fix SCSI sense data pass through. MFC after: 1 week Sponsored by: iXsystems, Inc. Modified: head/sys/dev/virtio/scsi/virtio_scsi.c Modified: head/sys/dev/virtio/scsi/virtio_scsi.c ============================================================================== --- head/sys/dev/virtio/scsi/virtio_scsi.c Fri Apr 12 18:35:14 2019 (r346160) +++ head/sys/dev/virtio/scsi/virtio_scsi.c Fri Apr 12 18:54:09 2019 (r346161) @@ -1310,8 +1310,7 @@ vtscsi_complete_scsi_cmd_response(struct vtscsi_softc else csio->sense_resid = 0; - bzero(&csio->sense_data, sizeof(csio->sense_data)); - memcpy(cmd_resp->sense, &csio->sense_data, + memcpy(&csio->sense_data, cmd_resp->sense, csio->sense_len - csio->sense_resid); } From owner-svn-src-all@freebsd.org Fri Apr 12 19:02:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 74FFD15839BB; Fri, 12 Apr 2019 19:02:15 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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 "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 19A6B88308; Fri, 12 Apr 2019 19:02:15 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-3.local (unknown [IPv6:2601:648:8880:1e30:8de7:ac87:e932:dc2b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 52A68D9B2; Fri, 12 Apr 2019 19:02:14 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r346145 - in stable/12: contrib/bearssl etc/mtree include lib lib/libbearssl lib/libsecureboot lib/libsecureboot/tests sbin sbin/veriexec share/mk stand stand/common stand/ficl stand/fi... To: "Simon J. Gerraty" , "Herbert J. Skuhra" Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org References: <201904120103.x3C1302P053933@repo.freebsd.org> <87o95bf70b.wl-herbert@gojira.at> <14402.1555094583@kaos.jnpr.net> From: John Baldwin Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <3b07eef9-ef5a-8925-3d64-bb6f2bcfdc6b@FreeBSD.org> Date: Fri, 12 Apr 2019 12:02:12 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <14402.1555094583@kaos.jnpr.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 19A6B88308 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 19:02:15 -0000 On 4/12/19 11:43 AM, Simon J. Gerraty wrote: > Herbert J. Skuhra wrote: > >> On Fri, 12 Apr 2019 03:03:00 +0200, "Simon J. Gerraty" wrote: >>> Also sbin/veriexec for mac_veriexec >>> >>> MFC r343281,344564-344568,344780,344784,345289,346070 >> >> Partly MFC r344853? > > Once the semihalf guys MFC their bits, that should apply in toto > but would it not be more correct to just run makeman ? Yes, I would just run makeman and commit the result. Ideally you'd have included that in the original MFC even, but a followup commit is fine. I don't think it's really useful to try to MFC the 344853 change as-is. -- John Baldwin From owner-svn-src-all@freebsd.org Fri Apr 12 19:05:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9B4141583A75; Fri, 12 Apr 2019 19:05:43 +0000 (UTC) (envelope-from gjb@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 4EF228859A; Fri, 12 Apr 2019 19:05:43 +0000 (UTC) (envelope-from gjb@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 0FBB725998; Fri, 12 Apr 2019 19:05:43 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CJ5h9r033531; Fri, 12 Apr 2019 19:05:43 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CJ5hVe033530; Fri, 12 Apr 2019 19:05:43 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201904121905.x3CJ5hVe033530@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Fri, 12 Apr 2019 19:05: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: r346163 - stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: stable-11 X-SVN-Commit-Author: gjb X-SVN-Commit-Paths: stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Commit-Revision: 346163 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4EF228859A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 19:05:44 -0000 Author: gjb Date: Fri Apr 12 19:05:42 2019 New Revision: 346163 URL: https://svnweb.freebsd.org/changeset/base/346163 Log: Prune release notes entries from 11.2-RELEASE. Sponsored by: The FreeBSD Foundation Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 19:05:06 2019 (r346162) +++ stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 19:05:42 2019 (r346163) @@ -167,291 +167,19 @@ Userland Application Changes - The &man.ln.1; utility has been updated - to correct the behavior of the -F flag by - unlinking an existing directory before creating a symbolic - link. - - The &man.crontab.1; utility has been - updated to include a new flag, -f, which - forces &man.crontab.5; removal when -r is - used non-interactively. - - The &man.newsyslog.8; utility has been - updated to support RFC5424-compliant - messages when rotating system logs. - - The - &man.sesutil.8; utility has been updated to include - &man.libxo.3; support in output. - - The &man.diskinfo.8; utility has been - updated to include two new flags, -s which - displays the disk identity (usually the serial number), and - -p which displays the physical path to the - disk in a storage controller. The -s and - -p flags are mutually exclusive, and cannot - be used with any other flags. - - The &man.diskinfo.8; utility has also - been updated to include device model when the - -s flag is used. - - The &man.top.1; utility has been updated - to allow filtering on multiple user names when the - -U flag is used. - - The &man.bsdgrep.1; utility has been - updated to include a rgrep hard link to - &man.grep.1;, which when used is equivalent to - grep -r. - - The &man.bsdgrep.1; utility has been - updated to address various issues with pattern matching - behavior. - - The &man.umount.8; utility has been - updated to include a new flag, -N, which - is used to forcefully unmount an NFS - mounted filesystem. - - The &man.pw.8; utility has been updated - to properly handle empty secondary group lists as an argument - to the -G flag when using the - usermod subcommand. - - The &man.getconf.1; utility has been - updated to include a new flag, -a, which - prints the name and value of all system or path configuration - values to &man.stdout.4; or optionally a file as an argument - to -a. - - The &man.ps.1; utility has been updated - to reflect realtime and idle priorities in state flags. - - The &man.ps.1; utility has been updated - to display if a process is running with &man.capsicum.4; - capability mode, indicated by C. - - The &man.cpucontrol.8; utility has been - updated to include a new flag, -n, that - disables the default microcode update search path when - used. - - The &man.fsck.ffs.8; utility has been - updated to prevent a filesystem from being reported as - modified when only the timestamp in the superblock is - updated. - - The &man.diskinfo.8; utility has been - updated to display disk rotation rate and if - TRIM/UNMAP is supported - by the disk. - - The &man.rsh.1; utility has been updated - to include a new flag, -N, which disables - shutdown of a socket sending path when used. - - The &man.pfctl.8; utility has been - updated to allow route-to to properly - handle network interfaces with multiple IP - addresses. - - The &man.camcontrol.8; utility has - been updated to include ZAC (Zoned-device - ATA command set) information when the - identify subcommand is used. - - The &man.pw.8; utility has been updated - to correct handling of account expiration periods. - - The &man.mdmfs.8; utility has been - updated to support &man.tmpfs.5;. - - The &man.lint.1; utility is not longer - built by default. The WITH_LINT - &man.src.conf.5; option has been added to enable building and - installing the utility. - - The &man.cpucontrol.8; utility has been - updated to include a new flag, -e, which is - used to re-evaluate reported CPU features - after applying firmware updates. - - - The &man.cpucontrol.8; -e flag should - only be used after microcode update have been applied to all - CPUs in the system, otherwise system - instability may be experienced if processor features are not - identical across the system. - - - The &man.indent.1; utility has been - updated to respect the SIMPLE_BACKUP_SUFFIX - environment variable if set. - - The &man.du.1; utility has been updated - to include the --si long option, which is - used to display output in "human-readable" output in - powers of 1000. - - The &man.df.1; utility has been updated - to include the --si long option, which is - an alias to -H. - - The &man.service.8; utility has been - updated to include a new flag, -j, which is - used to interact with services running within a &man.jail.8;. - The argument to -j can be either the name - or numeric jail ID. - - The &man.fsck.ffs.8; utility has been - updated to exit with a non-zero status when the filesystem is - not repaired. - - The &man.nvmecontrol.8; utility has been - updated to print the full 128 bit value for - SMART data, instead of the hexadecimal - value. - - The &man.nvmecontrol.8; utility has been - updated to include control options for Western Digital® - HGST drives. The new options are cap-diag, - get-crash-dump, - drive-log, purge, and - purge-monitor. - - The &man.dhclient.8; utility has been - updated to be more compliant with RFC2131 - by setting the source address field in the - IP header to 0 when - sending a DHCPREQUEST message to attempt to - obtain a previously-assigned IP - address. - - The &man.pw.8; utility has been updated to - allow the @ and ! - characters in the GECOS field. - - The &man.ps.1; utility has been updated - to include a jail keyword, which when used - will list the name of a &man.jail.8; instead of the numeric - ID. - - The &man.mlx5tool.8; utility has been - added, which is used to manage Connect-X 4 and - Connect-X 5 devices supported by &man.mlx5io.4;. - - The &man.sysctl.8; utility has been - updated to support setting an array of values to nodes. Prior - to this change, &man.sysctl.8; could only set one value to - a node that may return multiple values when queried. - - The &man.ifconfig.8; utility has been - updated to include a random option, which - when used with the ether option, generates - a random MAC address for an - interface. - - The &man.efibootmgr.8; utility has been - added, which is used to manipulate the EFI - boot manager. - - The &man.etdump.1; utility has been - added, which is used to view El Torito boot catalog - information. - - The &man.mount.8; utility has been - updated to allow fallback to mount media read-only if an - attempt to mount write-protected media read-write fails. This - behavior is disabled by default, and can be requested with the - new autoro option. - - The - &man.makefs.8; utility has been updated to default the block - and fragment sizes to match that of &man.newfs.8;, 32K and 4K, - respectively. - - The - &man.pwd.mkdb.8; utility has been updated to emit a notice - that legacy database support will be removed effective - &os; 12 when the -l flag is - used. +   Contributed Software - The &man.libarchive.3; library has been - updated to version 3.3.2. - - The &man.libxo.3; library has been - updated to version 0.8.4. - - Subversion - has been updated to version 1.9.7. - - The &man.dtc.1; utility has been updated - to upstream commit 9ce35ff8. - - The &man.file.1; utility has been - updated to version 5.32. - - OpenSSH has - been updated to version 7.5p1. - - The &man.mandoc.1; utility has been - updated to version 1.14.3. - - The &man.tcpdump.1; utility has been - updated to version 4.9.2. - - The NTP utilities - have been updated to version 4.2.8p11. - - The &man.less.1; utility has been - updated to upstream version v530. - - The bmake - utility has been updated to upstream version 20180222. - - The BSD-licensed - &man.diff.1; utility has been imported from OpenBSD, which is - installed if WITHOUT_GNU_DIFF is set in - &man.src.conf.5;, and otherwise not installed by - default. - - OpenSSL has - been updated to version 1.0.2o. - - The clang, - llvm, - lld, - lldb, and - compiler-rt utilities as well as - libc++ have been updated to upstream - version 6.0.0. - - Timezone data files have been updated to - version 2018e. +   Installation and Configuration Tools - The &man.bsdinstall.8; installer has been - updated to default to UEFI-only - boot. +   @@ -534,15 +262,7 @@ Device Drivers - The &man.mlx5io.4; driver has been added, - providing an interface to manage supported Connect-X 4 - and Connect-X 5 network adapters. - - The &man.cxgbe.4; driver has been updated - to firmware version 1.16.63.0 for T4, T5, and T6 network - adapters. +   @@ -569,27 +289,7 @@ Hardware Support - Support for the TAIO - USB multi-protocol adapter - (TUMPA) has been added. - - The &man.cm.4; and &man.fpa.4; drivers - have been marked as deprecated, and will be removed in - &os; 12. - - The &man.ixgb.4; driver has been marked - as deprecated, and will be removed in &os; 12. - - The &man.nxge.4; driver has been marked - as deprecated, and will be removed in &os; 12. - - The - &man.lmc.4; driver has been marked as deprecated, and will be - removed in &os; 12. - - The &man.vxge.4; driver has been marked - as deprecated, and will be removed in &os; 12. +   @@ -633,13 +333,7 @@ <literal>geom(4)</literal> - The geom_aes, - geom_bsd, geom_mbr, - geom_sunlabel &man.geom.4; classes have - been marked as deprecated. They have been replaced by the - geom_part class in &os; 7, and removed - from the GENERIC kernel configurations in - &os; 8, and will be removed in &os; 12. +   @@ -652,10 +346,7 @@ Boot Loader Changes - The length of GELI - passphrases entered when booting a system with encrypted disks - is now hidden by default. See the configuration options in - &man.geli.8; to restore the previous behavior. +   @@ -732,24 +423,7 @@ Integration Changes - Amazon® EC2™ instances now - keep their clocks synchronized using the Amazon Time Sync - Service, the NTP service internal to the - EC2™ infrastructure. - - The - &arch.i386; memory stick image installer have been changed - to use the MBR partitioning scheme, which - addresses a boot issue from a GPT partition - scheme in non-UEFI mode. - - The - &os; installation ISO medium creation tools - have been updated to generate hybrid images for &arch.amd64;, - supporting both BIOS and - EFI. The ISO image can - now be written to a memory stick as well as being used as - a CD image. +   From owner-svn-src-all@freebsd.org Fri Apr 12 19:05:45 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 07C391583A7B; Fri, 12 Apr 2019 19:05:45 +0000 (UTC) (envelope-from gjb@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 A00078859B; Fri, 12 Apr 2019 19:05:44 +0000 (UTC) (envelope-from gjb@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 38E1A25999; Fri, 12 Apr 2019 19:05:44 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CJ5i1v033577; Fri, 12 Apr 2019 19:05:44 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CJ5i5S033576; Fri, 12 Apr 2019 19:05:44 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201904121905.x3CJ5i5S033576@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Fri, 12 Apr 2019 19:05: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: r346164 - stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: stable-11 X-SVN-Commit-Author: gjb X-SVN-Commit-Paths: stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Commit-Revision: 346164 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A00078859B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 19:05:45 -0000 Author: gjb Date: Fri Apr 12 19:05:43 2019 New Revision: 346164 URL: https://svnweb.freebsd.org/changeset/base/346164 Log: Bump copyright year. Sponsored by: The FreeBSD Foundation Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 19:05:42 2019 (r346163) +++ stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 19:05:43 2019 (r346164) @@ -27,7 +27,7 @@ - 2018 + 2019 The &os; Documentation Project From owner-svn-src-all@freebsd.org Fri Apr 12 19:05:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8000C1583AA8; Fri, 12 Apr 2019 19:05:47 +0000 (UTC) (envelope-from gjb@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 1FAA4885D0; Fri, 12 Apr 2019 19:05:47 +0000 (UTC) (envelope-from gjb@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 7EB0C2599B; Fri, 12 Apr 2019 19:05:46 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CJ5keu033663; Fri, 12 Apr 2019 19:05:46 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CJ5kqt033662; Fri, 12 Apr 2019 19:05:46 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201904121905.x3CJ5kqt033662@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Fri, 12 Apr 2019 19:05: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: r346166 - stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: stable-11 X-SVN-Commit-Author: gjb X-SVN-Commit-Paths: stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Commit-Revision: 346166 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1FAA4885D0 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 19:05:47 -0000 Author: gjb Date: Fri Apr 12 19:05:46 2019 New Revision: 346166 URL: https://svnweb.freebsd.org/changeset/base/346166 Log: Release notes documentation: - r340611, rc.initdiskless support for auxiliary RAM. - r340966, rcorder(8) rc.resume support. - r341792, jail.conf(5) definition moved in rc.d/jail script. - r341794, 340.noid periodic(8) no longer decends to jail(8)s. - r342103, PATH now set in system crontab(5). - r343046, rc_service addition to rc.subr(8). - r343469, devd.conf(5) update to prevent duplicate hostapd(8) and wpa_supplicant(8) startup. Sponsored by: The FreeBSD Foundation Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 19:05:44 2019 (r346165) +++ stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 19:05:46 2019 (r346166) @@ -161,7 +161,14 @@ Userland Configuration Changes -   + The system &man.crontab.5;, + /etc/crontab, has been updated to set + PATH for consistency with the &man.cron.8; + daemon. + + The default &man.devd.conf.5; has been + updated to prevent duplicated &man.hostapd.8; and + &man.wpa.supplicant.8; startup via &man.devd.8;. @@ -230,14 +237,33 @@ <filename class="directory">/etc/rc.d</filename> Scripts -   + Support for auxiliary + RAM has been added to + /etc/rc.initdiskless. + + The &man.rcorder.8; utility has been + updated to add support for + /etc/rc.resume. + + The jail_conf + definition, which defaults to + /etc/jail.conf, has been moved from + the &man.jail.8; &man.rc.8; script to + /etc/defaults/rc.conf. + + The rc_service + variable has been added to &man.rc.subr.8;, which defaults to + the path of the service being executed in case the service + needs to re-invoke itself. <filename class="directory">/etc/periodic</filename> Scripts -   + The &man.periodic.8; weekly + 340.noid script has been updated to + prevent decending into the root directory of jails. From owner-svn-src-all@freebsd.org Fri Apr 12 19:05:50 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 517A91583AD3; Fri, 12 Apr 2019 19:05:50 +0000 (UTC) (envelope-from gjb@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 E16A588627; Fri, 12 Apr 2019 19:05:49 +0000 (UTC) (envelope-from gjb@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 A9A9E2599C; Fri, 12 Apr 2019 19:05:47 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CJ5l56033706; Fri, 12 Apr 2019 19:05:47 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CJ5l4t033705; Fri, 12 Apr 2019 19:05:47 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201904121905.x3CJ5l4t033705@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Fri, 12 Apr 2019 19:05:47 +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: r346167 - stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: stable-11 X-SVN-Commit-Author: gjb X-SVN-Commit-Paths: stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Commit-Revision: 346167 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E16A588627 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 19:05:50 -0000 Author: gjb Date: Fri Apr 12 19:05:47 2019 New Revision: 346167 URL: https://svnweb.freebsd.org/changeset/base/346167 Log: Release notes documentation: - r336040, jail(8) name support for cpuset(1), sockstat(1), ipfw(8), and ugidfw(8). - r336328, newfs_msdos(8) '-T' (timestamp) option added. - r337461, ipfw(8) new rule options added. - r338364, dd(1) status=progress support. - r338451, last(1) libxo(3) support. - r339160, diff(1) '-B' and '--ignore-blank-lines' support. - r341758, bhyve(8) support for NumLock, ScrollLock and keypad keys. - r342706, ktrdump(8) '-l' (live) support. - r343538, newfs(8) and tunefs(8) support for '_' in label names. - r343251, gzip(1) '-l' xz(1) support. - r344020, pfctl(8) reference to net.pf.request_maxcount if a table definition fails. - r344490, fdisk(8) support for sectors larger than 2048 bytes. - r344052, newfs(8) and tunefs(8) support for '-' in label names. - r345561, sh(1) '-o pipefail'. - r345878, patch(1) exit successfully if fed a 0-length patch. Remove a stray entry leftover from 11.2-RELEASE. Sponsored by: The FreeBSD Foundation Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 19:05:46 2019 (r346166) +++ stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 19:05:47 2019 (r346167) @@ -174,7 +174,60 @@ Userland Application Changes -   + The &man.cpuset.1;, &man.sockstat.1;, + &man.ipfw.8;, and &man.ugidfw.8; utilities have been updated + to support &man.jail.8; names. + + The &man.newfs.msdos.8; utililty has + been updated to include a new flag, -T, + which is used to specify the timestamp for build + reproducibility. + + The &man.last.1; utility has been + updated to include &man.libxo.3; support. + + The &man.dd.1; utility has been updated + to add a new statusoperand, + progress, which reports the current status + on a single line every second. + + The &man.diff.1; utility has been + updated to implement -B and + --ignore-blank-lines support. + + The &man.fdisk.8; utility has been + updated to support sectors larger than 2048 bytes. + + The &man.ktrdump.8; utility has been + updated to include the -l flag which + enables "live" mode when specified. + + The &man.gzip.1; utility has been + updated to add -l support for &man.xz.1; + files. + + The &man.newfs.8; and &man.tunefs.8; + utilities have been updated to allow underscores in label + names. + + The &man.pfctl.8; utility has been + updated to provide more clear output and reference the + net.pf.request_maxcount &man.sysctl.8; + if a defined table is too large. + + The &man.newfs.8; and &man.tunefs.8; + utilities have been updated to allow dashes in label + names. + + The &man.sh.1; utility has been updated + to add the pipefail option which allows + checking the exit status of all commands in a pipeline more + easily. + + The &man.patch.1; utility has been + updated to exit successfully if the input patch file is + zero-length. @@ -365,8 +418,10 @@ Virtualization Support - Support for &man.virtio.console.4; has - been added to &man.bhyve.4;. + Support + for PS/2 scan codes for + NumLock, ScrollLock, and + numerical keypad keys has been added to &man.bhyve.8;. @@ -435,7 +490,10 @@ General Network Changes -   + The &man.ipfw.8; firewall has been + updated to include new rule options, + record-state, set-limit, + and defer-action. From owner-svn-src-all@freebsd.org Fri Apr 12 19:05:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E55D81583A81; Fri, 12 Apr 2019 19:05:45 +0000 (UTC) (envelope-from gjb@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 8B1C3885A8; Fri, 12 Apr 2019 19:05:45 +0000 (UTC) (envelope-from gjb@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 595CC2599A; Fri, 12 Apr 2019 19:05:45 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CJ5jfN033620; Fri, 12 Apr 2019 19:05:45 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CJ5j9E033619; Fri, 12 Apr 2019 19:05:45 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201904121905.x3CJ5j9E033619@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Fri, 12 Apr 2019 19:05:45 +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: r346165 - stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: stable-11 X-SVN-Commit-Author: gjb X-SVN-Commit-Paths: stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Commit-Revision: 346165 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8B1C3885A8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 19:05:46 -0000 Author: gjb Date: Fri Apr 12 19:05:44 2019 New Revision: 346165 URL: https://svnweb.freebsd.org/changeset/base/346165 Log: Release notes documentation: - r334607, xz(1) 5.2.4. - r337817, WPA 2.6. - r337827, file(1) 5.34. - r338414, ELF Tool Chain r3614. - r338795, libarchive(3) 3.3.3. - r339100, lld '-z interpose' support added. - r343079, file(1) dumpdate reporting fix. - r344213, clang (and related) 7.0.1. - r344220, lualoader merged. - r344604, OpenSSL 1.0.2r. - r344884, ntpd 4.2.8p13. - r345670, tzdata 2019a. Sponsored by: The FreeBSD Foundation Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 19:05:43 2019 (r346164) +++ stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 19:05:44 2019 (r346165) @@ -173,7 +173,51 @@ Contributed Software -   + The &man.xz.1; utility has been updated + to version 5.2.4. + + The WPA + utilities have been updated to version 2.6. + + The &man.file.1; utility has been + updated to version 5.34. + + The + ELF Tool Chain has been updated to + version r3614. + + The &man.libarchive.3; library has been + updated to version 3.3.3, with additional fixes from + upstream. + + The + lld utility has been updated to add + -z interpose, marking the object file as + an interposer. + + The &man.file.1; utility has been + updated to fix incorrect date reporting for &man.dump.8; + files. + + The clang, + llvm, + lld, + lldb, and + compiler-rt utilities as well as + libc++ have been updated to + upstream version 7.0.1. + + The LUA + &man.loader.8; has been merged. + + OpenSSL has + been updated to version 1.0.2r. + + The &man.ntpd.8; utilities have been + updated to version 4.2.8p13. + + Timezone data files have been updated to + version 2019a. From owner-svn-src-all@freebsd.org Fri Apr 12 20:03:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E2D221584E7B; Fri, 12 Apr 2019 20:03:38 +0000 (UTC) (envelope-from dim@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 879978A5B4; Fri, 12 Apr 2019 20:03:38 +0000 (UTC) (envelope-from dim@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 58F68263A5; Fri, 12 Apr 2019 20:03:38 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CK3cxo065152; Fri, 12 Apr 2019 20:03:38 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CK3VkH064957; Fri, 12 Apr 2019 20:03:31 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201904122003.x3CK3VkH064957@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 12 Apr 2019 20:03:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346168 - in stable/12: . contrib/compiler-rt contrib/compiler-rt/include/sanitizer contrib/compiler-rt/include/xray contrib/compiler-rt/lib/asan contrib/compiler-rt/lib/builtins contri... X-SVN-Group: stable-12 X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in stable/12: . contrib/compiler-rt contrib/compiler-rt/include/sanitizer contrib/compiler-rt/include/xray contrib/compiler-rt/lib/asan contrib/compiler-rt/lib/builtins contrib/compiler-rt/lib/builtin... X-SVN-Commit-Revision: 346168 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 879978A5B4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 20:03:40 -0000 Author: dim Date: Fri Apr 12 20:03:27 2019 New Revision: 346168 URL: https://svnweb.freebsd.org/changeset/base/346168 Log: Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp 8.0.0 final release r356365. MFC r340287 (by emaste): Consolidate gcov entries in OptionalObsoleteFiles Sponsored by: The FreeBSD Foundation MFC r340289 (by emaste): llvm-cov: also install as gcov (if GNU gcov is disabled) llvm-cov provides a gcov-compatible interface when invoked as gcov. Reviewed by: dim, markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D17923 MFC r340296 (by emaste): Move llvm-profdata build into MK_LLVM_COV block llvm-profdata is used with llvm-cov for code coverage (although llvm-cov can also operate independently in a gcov-compatible mode). Although llvm-profdata can be used independently of llvm-cov it makes sense to group these under one option. Also handle these in OptionalObsoleteFiles.inc while here. Sponsored by: The FreeBSD Foundation MFC r340300 (by emaste): libllvm: Move SampleProfWriter to SRCS_MIN It is required by llvm-profdata, now built by default under the LLVM_COV knob. The additional complexity that would come from avoiding building it if CLANG_EXTRAS and LLVM_COV are both disabled is not worth the small savings in build time. Sponsored by: The FreeBSD Foundation MFC r340972 (by emaste): llvm-objdump: initial man page Based on llvm-objdump's online documentation and usage information. This serves as a starting point; additional detail and cleanup still required. Also being submitted upstream in LLVM review D54864. I expect to use this bespoke copy while we have LLVM 6.0 or 7.0 in FreeBSD; when we update to LLVM 8.0 it should be upstream and we will switch to it. PR: 233437 Reviewed by: bcr (man formatting) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D18309 MFC r340973 (by emaste): llvm-objdump.1: remove invalid options Some options appear in llvm-objdump's usage information as a side effect of its option parsing implementation and are not actually llvm-objdump options. Reported in LLVM review https://reviews.llvm.org/D54864. Reported by: Fangrui Song Sponsored by: The FreeBSD Foundation MFC r340975 (by emaste): llvm-objdump.1: fix igor / mandoc -Tlint warnings Accidentally omitted from r340972. MFC r341055 (by emaste): llvm-objdump.1: remove more unintentional options Some options come from static constructors in LLVM libraries and are automatically added to llvm's usage output. They're not really supposed to be llvm-objdump options. Reported by: Fangrui Song in LLVM review D54864 Sponsored by: The FreeBSD Foundation MFC r344779: Upgrade our copies of clang, llvm, lld, lldb, compiler-rt and libc++ to the upstream release_80 branch r355313 (effectively, 8.0.0 rc3). The release will follow very soon, but no more functional changes are expected. Release notes for llvm, clang and lld 8.0.0 will soon be available here: PR: 236062 Relnotes: yes MFC r344798 (by emaste): libllvm: promote WithColor and xxhash to SRCS_MIN The armv6 build failed in CI due to missing symbols (from these two source files) in the bootstrap Clang. This affected only armv6 because other Clang-using archs are using LLD as the bootstrap linker, and thus include SRCS_MIW via LLD_BOOTSTRAP. Reported by: CI, via lwhsu Sponsored by: The FreeBSD Foundation MFC r344825: Add a few missed files to the MK_LLVM_TARGET_BPF=yes case, otherwise clang and various other executables will fail to link with undefined symbols. Reported by: O. Hartmann MFC r344852: Put in a temporary workaround for what is likely a gcc 6 bug (it does not occur with gcc 7 or later). This should prevent the following error from breaking the head-amd64-gcc CI builds: In file included from /workspace/src/contrib/llvm/tools/lldb/source/API/SBMemoryRegionInfo.cpp:14:0: /workspace/src/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h:128:54: error: 'template lldb_private::MemoryRegionInfos::MemoryRegionInfos(_InputIterator, _InputIterator, const allocator_type&)' inherited from 'std::__1::vector' using std::vector::vector; ^~~~~~ /workspace/src/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h:128:54: error: conflicts with version inherited from 'std::__1::vector' Reported by: CI MFC r344896: Pull in r354937 from upstream clang trunk (by Jörg Sonnenberger): Fix inline assembler constraint validation The current constraint logic is both too lax and too strict. It fails for input outside the [INT_MIN..INT_MAX] range, but it also implicitly accepts 0 as value when it should not. Adjust logic to handle both correctly. Differential Revision: https://reviews.llvm.org/D58649 Pull in r355491 from upstream clang trunk (by Hans Wennborg): Inline asm constraints: allow ICE-like pointers for the "n" constraint (PR40890) Apparently GCC allows this, and there's code relying on it (see bug). The idea is to allow expression that would have been allowed if they were cast to int. So I based the code on how such a cast would be done (the CK_PointerToIntegral case in IntExprEvaluator::VisitCastExpr()). Differential Revision: https://reviews.llvm.org/D58821 These should fix assertions and errors when using the inline assembly "n" constraint in certain ways. In case of devel/valgrind, a pointer was used as the input for the constraint, which lead to "Assertion failed: (isInt() && "Invalid accessor"), function getInt". In case of math/secp256k1, a very large integer value was used as input for the constraint, which lead to "error: value '4624529908474429119' out of range for constraint 'n'". PR: 236216, 236194 MFC r344951: Merge llvm, clang, compiler-rt, libc++, lld, and lldb release_80 branch r355677 (effectively, 8.0.0 rc4), resolve conflicts, and bump version numbers. PR: 236062 MFC r345018: Merge LLVM libunwind trunk r351319, from just before upstream's release_80 branch point. Afterwards, we will merge the rest of the changes in the actual release_80 branch. PR: 236062 MFC r345019: Merge LLVM libunwind release_80 branch r355677 (effectively, 8.0.0 rc4). PR: 236062 MFC r345021: Pull in r355854 from upstream llvm trunk (by Jonas Paulsson): [RegAlloc] Avoid compile time regression with multiple copy hints. As a fix for https://bugs.llvm.org/show_bug.cgi?id=40986 ("excessive compile time building opencollada"), this patch makes sure that no phys reg is hinted more than once from getRegAllocationHints(). This handles the case were many virtual registers are assigned to the same physreg. The previous compile time fix (r343686) in weightCalcHelper() only made sure that physical/virtual registers are passed no more than once to addRegAllocationHint(). Review: Dimitry Andric, Quentin Colombet https://reviews.llvm.org/D59201 This should fix a hang when compiling certain generated .cpp files in the graphics/opencollada port. PR: 236313 MFC r345068 (by jhb): Move libunwind out of contrib/llvm/projects. Move LLVM's libunwind to its own contrib/ directory similar to other runtime libraries like libc++ and libcxxrt. Reviewed by: dim, emaste Differential Revision: https://reviews.freebsd.org/D19534 MFC r345073: Revert r308867 (which was originally committed in the clang390-import project branch): Work around LLVM PR30879, which is about a bad interaction between X86 Call Frame Optimization on i386 and libunwind, by disallowing the optimization for i386-freebsd12. This should fix some instances of broken exception handling when frame pointers are omitted, in particular some unittests run during the build of editors/libreoffice. This hack will be removed as soon as upstream has implemented a more permanent fix for this problem. And indeed, after r345018 and r345019, which updated LLVM libunwind to the most recent version, the above workaround is no longer needed. The upstream commit which fixed this is: https://llvm.org/viewvc/llvm-project?view=revision&revision=292723 Specifically, 32 bit (i386-freebsd) executables optimized with omitted frame pointers and Call Frame Optimization should now behave correctly when a C++ exception is thrown, and the stack is unwound. Upstream PR: https://llvm.org/bugs/show_bug.cgi?id=30879 PR: 236062 MFC r345152: Merge llvm, clang, compiler-rt, libc++, libunwind, lld, and lldb release_80 branch r356034 (effectively, 8.0.0 rc5), resolve conflicts, and bump version numbers. PR: 236062 MFC r345231: Add LLVM openmp trunk r351319 (just before the release_80 branch point) to contrib/llvm. This is not yet connected to the build, the glue for that will come in a follow-up commit. PR: 236062 MFC r345232: Bootstrap svn:mergeinfo on contrib/openmp. PR: 236062 MFC r345233: Merge openmp release_80 branch r356034 (effectively, 8.0.0 rc5). PR: 236062 MFC r345234: Add openmp __kmp_gettid() wrapper, using pthread_getthreadid_np(3). This has also been submitted upstream. PR: 236062 MFC r345283: Enable building libomp.so for 32-bit x86. This is done by selectively enabling the functions that save and restore MXCSR, since access to this register requires SSE support. Note that you may run into other issues with OpenMP on i386, since this *not* yet supported upstream, and certainly not extensively tested. PR: 236062, 236582 MFC r345345: Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp 8.0.0 final release r356365. There were no functional changes since the most recent merge, of 8.0.0 rc5. Release notes for llvm, clang, lld and libc++ 8.0.0 are now available: https://llvm.org/releases/8.0.0/docs/ReleaseNotes.html https://llvm.org/releases/8.0.0/tools/clang/docs/ReleaseNotes.html https://llvm.org/releases/8.0.0/tools/lld/docs/ReleaseNotes.html https://llvm.org/releases/8.0.0/projects/libcxx/docs/ReleaseNotes.html PR: 236062 MFC r345349: Pull in r352826 from upstream lld trunk (by Fangrui Song): [ELF] Support --{,no-}allow-shlib-undefined Summary: In ld.bfd/gold, --no-allow-shlib-undefined is the default when linking an executable. This patch implements a check to error on undefined symbols in a shared object, if all of its DT_NEEDED entries are seen. Our approach resembles the one used in gold, achieves a good balance to be useful but not too smart (ld.bfd traces all DSOs and emulates the behavior of a dynamic linker to catch more cases). The error is issued based on the symbol table, different from undefined reference errors issued for relocations. It is most effective when there are DSOs that were not linked with -z defs (e.g. when static sanitizers runtime is used). gold has a comment that some system libraries on GNU/Linux may have spurious undefined references and thus system libraries should be excluded (https://sourceware.org/bugzilla/show_bug.cgi?id=6811). The story may have changed now but we make --allow-shlib-undefined the default for now. Its interaction with -shared can be discussed in the future. Reviewers: ruiu, grimar, pcc, espindola Reviewed By: ruiu Subscribers: joerg, emaste, arichardson, llvm-commits Differential Revision: https://reviews.llvm.org/D57385 Pull in r352943 from upstream lld trunk (by Fangrui Song): [ELF] Default to --no-allow-shlib-undefined for executables Summary: This follows the ld.bfd/gold behavior. The error check is useful as it captures a common type of ld.so undefined symbol errors as link-time errors: // a.cc => a.so (not linked with -z defs) void f(); // f is undefined void g() { f(); } // b.cc => executable with a DT_NEEDED entry on a.so void g(); int main() { g(); } // ld.so errors when g() is executed (lazy binding) or when the program is started (-z now) // symbol lookup error: ... undefined symbol: f Reviewers: ruiu, grimar, pcc, espindola Reviewed By: ruiu Subscribers: llvm-commits, emaste, arichardson Tags: #llvm Differential Revision: https://reviews.llvm.org/D57569 Together, these add support for --no-allow-shlib-undefined, and make it the default for executables, so they will fail to link if any symbols from needed shared libraries are undefined. Reported by: jbeich PR: 236062, 236141 MFC r345449: Pull in r356809 from upstream llvm trunk (by Eli Friedman): [ARM] Don't form "ands" when it isn't scheduled correctly. In r322972/r323136, the iteration here was changed to catch cases at the beginning of a basic block... but we accidentally deleted an important safety check. Restore that check to the way it was. Fixes https://bugs.llvm.org/show_bug.cgi?id=41116 Differential Revision: https://reviews.llvm.org/D59680 This should fix "Assertion failed: (LiveCPSR && "CPSR liveness tracking is wrong!"), function UpdateCPSRUse" errors when building the devel/xwpe port for armv7. PR: 236062, 236568 Added: stable/12/contrib/compiler-rt/lib/builtins/ppc/fixunstfti.c - copied unchanged from r344779, head/contrib/compiler-rt/lib/builtins/ppc/fixunstfti.c stable/12/contrib/compiler-rt/lib/builtins/ppc/floattitf.c - copied unchanged from r344779, head/contrib/compiler-rt/lib/builtins/ppc/floattitf.c stable/12/contrib/compiler-rt/lib/esan/esan_sideline_bsd.cpp - copied unchanged from r344779, head/contrib/compiler-rt/lib/esan/esan_sideline_bsd.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerBuiltins.h - copied unchanged from r344779, head/contrib/compiler-rt/lib/fuzzer/FuzzerBuiltins.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerBuiltinsMsvc.h - copied unchanged from r344779, head/contrib/compiler-rt/lib/fuzzer/FuzzerBuiltinsMsvc.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerExtFunctionsWindows.cpp - copied unchanged from r344779, head/contrib/compiler-rt/lib/fuzzer/FuzzerExtFunctionsWindows.cpp stable/12/contrib/compiler-rt/lib/hwasan/hwasan_checks.h - copied unchanged from r344779, head/contrib/compiler-rt/lib/hwasan/hwasan_checks.h stable/12/contrib/compiler-rt/lib/hwasan/hwasan_memintrinsics.cc - copied unchanged from r344779, head/contrib/compiler-rt/lib/hwasan/hwasan_memintrinsics.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_thread_list.cc - copied unchanged from r344779, head/contrib/compiler-rt/lib/hwasan/hwasan_thread_list.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_thread_list.h - copied unchanged from r344779, head/contrib/compiler-rt/lib/hwasan/hwasan_thread_list.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_local_address_space_view.h - copied unchanged from r344779, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_local_address_space_view.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_netbsd.cc - copied unchanged from r344779, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_netbsd.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cc - copied unchanged from r344779, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h - copied unchanged from r344779, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_ring_buffer.h - copied unchanged from r344779, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_ring_buffer.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_type_traits.cc - copied unchanged from r344779, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_type_traits.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_type_traits.h - copied unchanged from r344779, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_type_traits.h stable/12/contrib/compiler-rt/lib/xray/xray_fdr_controller.h - copied unchanged from r344779, head/contrib/compiler-rt/lib/xray/xray_fdr_controller.h stable/12/contrib/compiler-rt/lib/xray/xray_fdr_log_writer.h - copied unchanged from r344779, head/contrib/compiler-rt/lib/xray/xray_fdr_log_writer.h stable/12/contrib/libc++/include/bit - copied unchanged from r344779, head/contrib/libc++/include/bit - copied from r345068, head/contrib/libunwind/ stable/12/contrib/llvm/include/llvm-c/Error.h - copied unchanged from r344779, head/contrib/llvm/include/llvm-c/Error.h stable/12/contrib/llvm/include/llvm-c/OptRemarks.h - copied unchanged from r344779, head/contrib/llvm/include/llvm-c/OptRemarks.h stable/12/contrib/llvm/include/llvm-c/Transforms/AggressiveInstCombine.h - copied unchanged from r344779, head/contrib/llvm/include/llvm-c/Transforms/AggressiveInstCombine.h stable/12/contrib/llvm/include/llvm-c/Transforms/Coroutines.h - copied unchanged from r344779, head/contrib/llvm/include/llvm-c/Transforms/Coroutines.h stable/12/contrib/llvm/include/llvm/ADT/bit.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/ADT/bit.h stable/12/contrib/llvm/include/llvm/Analysis/GuardUtils.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Analysis/GuardUtils.h stable/12/contrib/llvm/include/llvm/Analysis/IVDescriptors.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Analysis/IVDescriptors.h stable/12/contrib/llvm/include/llvm/Analysis/IndirectCallVisitor.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Analysis/IndirectCallVisitor.h stable/12/contrib/llvm/include/llvm/Analysis/InstructionPrecedenceTracking.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Analysis/InstructionPrecedenceTracking.h stable/12/contrib/llvm/include/llvm/Analysis/LegacyDivergenceAnalysis.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Analysis/LegacyDivergenceAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/OrderedInstructions.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Analysis/OrderedInstructions.h stable/12/contrib/llvm/include/llvm/Analysis/StackSafetyAnalysis.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Analysis/StackSafetyAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/SyncDependenceAnalysis.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Analysis/SyncDependenceAnalysis.h stable/12/contrib/llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h stable/12/contrib/llvm/include/llvm/BinaryFormat/ELFRelocs/MSP430.def - copied unchanged from r344779, head/contrib/llvm/include/llvm/BinaryFormat/ELFRelocs/MSP430.def stable/12/contrib/llvm/include/llvm/BinaryFormat/MsgPack.def - copied unchanged from r344779, head/contrib/llvm/include/llvm/BinaryFormat/MsgPack.def stable/12/contrib/llvm/include/llvm/BinaryFormat/MsgPack.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/BinaryFormat/MsgPack.h stable/12/contrib/llvm/include/llvm/BinaryFormat/MsgPackReader.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/BinaryFormat/MsgPackReader.h stable/12/contrib/llvm/include/llvm/BinaryFormat/MsgPackTypes.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/BinaryFormat/MsgPackTypes.h stable/12/contrib/llvm/include/llvm/BinaryFormat/MsgPackWriter.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/BinaryFormat/MsgPackWriter.h stable/12/contrib/llvm/include/llvm/CodeGen/AsmPrinterHandler.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/CodeGen/AsmPrinterHandler.h stable/12/contrib/llvm/include/llvm/CodeGen/BuiltinGCs.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/CodeGen/BuiltinGCs.h stable/12/contrib/llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h stable/12/contrib/llvm/include/llvm/CodeGen/DebugHandlerBase.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/CodeGen/DebugHandlerBase.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/CSEMIRBuilder.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CSEMIRBuilder.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h stable/12/contrib/llvm/include/llvm/CodeGen/MachinePipeliner.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/CodeGen/MachinePipeliner.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolRecordHelpers.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolRecordHelpers.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeRecordHelpers.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeRecordHelpers.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumFrameData.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumFrameData.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAFrameData.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAFrameData.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBFrameData.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBFrameData.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumGlobals.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumGlobals.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeSymbolEnumerator.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeSymbolEnumerator.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeArray.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeArray.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeBuiltin.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeBuiltin.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeFunctionSig.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeFunctionSig.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypePointer.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypePointer.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeTypedef.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeTypedef.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeUDT.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeUDT.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeVTShape.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeVTShape.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/SymbolCache.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/SymbolCache.h stable/12/contrib/llvm/include/llvm/Demangle/Compiler.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Demangle/Compiler.h stable/12/contrib/llvm/include/llvm/Demangle/ItaniumDemangle.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Demangle/ItaniumDemangle.h stable/12/contrib/llvm/include/llvm/Demangle/MicrosoftDemangle.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Demangle/MicrosoftDemangle.h stable/12/contrib/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h stable/12/contrib/llvm/include/llvm/Demangle/StringView.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Demangle/StringView.h stable/12/contrib/llvm/include/llvm/Demangle/Utility.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Demangle/Utility.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/JITTargetMachineBuilder.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/JITTargetMachineBuilder.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/ThreadSafeModule.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/ThreadSafeModule.h stable/12/contrib/llvm/include/llvm/IR/CFGDiff.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/IR/CFGDiff.h stable/12/contrib/llvm/include/llvm/IR/IntrinsicsRISCV.td - copied unchanged from r344779, head/contrib/llvm/include/llvm/IR/IntrinsicsRISCV.td stable/12/contrib/llvm/include/llvm/IR/PassInstrumentation.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/IR/PassInstrumentation.h stable/12/contrib/llvm/include/llvm/IR/PassTimingInfo.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/IR/PassTimingInfo.h stable/12/contrib/llvm/include/llvm/LTO/SummaryBasedOptimizations.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/LTO/SummaryBasedOptimizations.h stable/12/contrib/llvm/include/llvm/MCA/ - copied from r344779, head/contrib/llvm/include/llvm/MCA/ stable/12/contrib/llvm/include/llvm/Passes/StandardInstrumentations.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Passes/StandardInstrumentations.h stable/12/contrib/llvm/include/llvm/Support/AArch64TargetParser.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Support/AArch64TargetParser.h stable/12/contrib/llvm/include/llvm/Support/ARMTargetParser.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Support/ARMTargetParser.h stable/12/contrib/llvm/include/llvm/Support/BuryPointer.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Support/BuryPointer.h stable/12/contrib/llvm/include/llvm/Support/CFGUpdate.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Support/CFGUpdate.h stable/12/contrib/llvm/include/llvm/Support/FileCheck.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Support/FileCheck.h stable/12/contrib/llvm/include/llvm/Support/ItaniumManglingCanonicalizer.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Support/ItaniumManglingCanonicalizer.h stable/12/contrib/llvm/include/llvm/Support/MSVCErrorWorkarounds.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Support/MSVCErrorWorkarounds.h stable/12/contrib/llvm/include/llvm/Support/SymbolRemappingReader.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Support/SymbolRemappingReader.h stable/12/contrib/llvm/include/llvm/Support/VirtualFileSystem.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Support/VirtualFileSystem.h stable/12/contrib/llvm/include/llvm/Target/TargetPfmCounters.td - copied unchanged from r344779, head/contrib/llvm/include/llvm/Target/TargetPfmCounters.td stable/12/contrib/llvm/include/llvm/TextAPI/ - copied from r344779, head/contrib/llvm/include/llvm/TextAPI/ stable/12/contrib/llvm/include/llvm/Transforms/IPO/HotColdSplitting.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Transforms/IPO/HotColdSplitting.h stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation/ControlHeightReduction.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Transforms/Instrumentation/ControlHeightReduction.h stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation/ThreadSanitizer.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Transforms/Instrumentation/ThreadSanitizer.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/MakeGuardsExplicit.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Transforms/Scalar/MakeGuardsExplicit.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/Scalarizer.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Transforms/Scalar/Scalarizer.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/WarnMissedTransforms.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Transforms/Scalar/WarnMissedTransforms.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/CanonicalizeAliases.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Transforms/Utils/CanonicalizeAliases.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/GuardUtils.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Transforms/Utils/GuardUtils.h stable/12/contrib/llvm/include/llvm/Transforms/Vectorize/LoadStoreVectorizer.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/Transforms/Vectorize/LoadStoreVectorizer.h stable/12/contrib/llvm/include/llvm/XRay/BlockIndexer.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/BlockIndexer.h stable/12/contrib/llvm/include/llvm/XRay/BlockPrinter.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/BlockPrinter.h stable/12/contrib/llvm/include/llvm/XRay/BlockVerifier.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/BlockVerifier.h stable/12/contrib/llvm/include/llvm/XRay/FDRLogBuilder.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/FDRLogBuilder.h stable/12/contrib/llvm/include/llvm/XRay/FDRRecordConsumer.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/FDRRecordConsumer.h stable/12/contrib/llvm/include/llvm/XRay/FDRRecordProducer.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/FDRRecordProducer.h stable/12/contrib/llvm/include/llvm/XRay/FDRRecords.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/FDRRecords.h stable/12/contrib/llvm/include/llvm/XRay/FDRTraceExpander.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/FDRTraceExpander.h stable/12/contrib/llvm/include/llvm/XRay/FDRTraceWriter.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/FDRTraceWriter.h stable/12/contrib/llvm/include/llvm/XRay/FileHeaderReader.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/FileHeaderReader.h stable/12/contrib/llvm/include/llvm/XRay/Profile.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/Profile.h stable/12/contrib/llvm/include/llvm/XRay/RecordPrinter.h - copied unchanged from r344779, head/contrib/llvm/include/llvm/XRay/RecordPrinter.h stable/12/contrib/llvm/include/llvm/module.extern.modulemap - copied unchanged from r344779, head/contrib/llvm/include/llvm/module.extern.modulemap stable/12/contrib/llvm/include/llvm/module.install.modulemap - copied unchanged from r344779, head/contrib/llvm/include/llvm/module.install.modulemap stable/12/contrib/llvm/lib/Analysis/GuardUtils.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Analysis/GuardUtils.cpp stable/12/contrib/llvm/lib/Analysis/IVDescriptors.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Analysis/IVDescriptors.cpp stable/12/contrib/llvm/lib/Analysis/InstructionPrecedenceTracking.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Analysis/InstructionPrecedenceTracking.cpp stable/12/contrib/llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/OrderedInstructions.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Analysis/OrderedInstructions.cpp stable/12/contrib/llvm/lib/Analysis/StackSafetyAnalysis.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Analysis/StackSafetyAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/SyncDependenceAnalysis.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Analysis/SyncDependenceAnalysis.cpp stable/12/contrib/llvm/lib/BinaryFormat/AMDGPUMetadataVerifier.cpp - copied unchanged from r344779, head/contrib/llvm/lib/BinaryFormat/AMDGPUMetadataVerifier.cpp stable/12/contrib/llvm/lib/BinaryFormat/MsgPackReader.cpp - copied unchanged from r344779, head/contrib/llvm/lib/BinaryFormat/MsgPackReader.cpp stable/12/contrib/llvm/lib/BinaryFormat/MsgPackTypes.cpp - copied unchanged from r344779, head/contrib/llvm/lib/BinaryFormat/MsgPackTypes.cpp stable/12/contrib/llvm/lib/BinaryFormat/MsgPackWriter.cpp - copied unchanged from r344779, head/contrib/llvm/lib/BinaryFormat/MsgPackWriter.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp - copied unchanged from r344779, head/contrib/llvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/WasmException.cpp - copied unchanged from r344779, head/contrib/llvm/lib/CodeGen/AsmPrinter/WasmException.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/WasmException.h - copied unchanged from r344779, head/contrib/llvm/lib/CodeGen/AsmPrinter/WasmException.h stable/12/contrib/llvm/lib/CodeGen/GlobalISel/CSEInfo.cpp - copied unchanged from r344779, head/contrib/llvm/lib/CodeGen/GlobalISel/CSEInfo.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp - copied unchanged from r344779, head/contrib/llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/GISelChangeObserver.cpp - copied unchanged from r344779, head/contrib/llvm/lib/CodeGen/GlobalISel/GISelChangeObserver.cpp stable/12/contrib/llvm/lib/CodeGen/InterleavedLoadCombinePass.cpp - copied unchanged from r344779, head/contrib/llvm/lib/CodeGen/InterleavedLoadCombinePass.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/SymbolRecordHelpers.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/CodeView/SymbolRecordHelpers.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeRecordHelpers.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/CodeView/TypeRecordHelpers.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumFrameData.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumFrameData.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAFrameData.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAFrameData.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumGlobals.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumGlobals.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSymbolEnumerator.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSymbolEnumerator.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeArray.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeArray.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeBuiltin.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeBuiltin.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeEnum.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeEnum.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeFunctionSig.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeFunctionSig.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypePointer.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypePointer.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeTypedef.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeTypedef.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeUDT.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeUDT.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeVTShape.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeVTShape.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/SymbolCache.cpp - copied unchanged from r344779, head/contrib/llvm/lib/DebugInfo/PDB/Native/SymbolCache.cpp stable/12/contrib/llvm/lib/Demangle/MicrosoftDemangleNodes.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Demangle/MicrosoftDemangleNodes.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/JITTargetMachineBuilder.cpp - copied unchanged from r344779, head/contrib/llvm/lib/ExecutionEngine/Orc/JITTargetMachineBuilder.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp - copied unchanged from r344779, head/contrib/llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/ThreadSafeModule.cpp - copied unchanged from r344779, head/contrib/llvm/lib/ExecutionEngine/Orc/ThreadSafeModule.cpp stable/12/contrib/llvm/lib/IR/PassInstrumentation.cpp - copied unchanged from r344779, head/contrib/llvm/lib/IR/PassInstrumentation.cpp stable/12/contrib/llvm/lib/IR/PassTimingInfo.cpp - copied unchanged from r344779, head/contrib/llvm/lib/IR/PassTimingInfo.cpp stable/12/contrib/llvm/lib/LTO/SummaryBasedOptimizations.cpp - copied unchanged from r344779, head/contrib/llvm/lib/LTO/SummaryBasedOptimizations.cpp stable/12/contrib/llvm/lib/MC/MCParser/WasmAsmParser.cpp - copied unchanged from r344779, head/contrib/llvm/lib/MC/MCParser/WasmAsmParser.cpp stable/12/contrib/llvm/lib/MCA/ - copied from r344779, head/contrib/llvm/lib/MCA/ stable/12/contrib/llvm/lib/OptRemarks/ - copied from r344779, head/contrib/llvm/lib/OptRemarks/ stable/12/contrib/llvm/lib/Passes/StandardInstrumentations.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Passes/StandardInstrumentations.cpp stable/12/contrib/llvm/lib/Support/AArch64TargetParser.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Support/AArch64TargetParser.cpp stable/12/contrib/llvm/lib/Support/ARMTargetParser.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Support/ARMTargetParser.cpp stable/12/contrib/llvm/lib/Support/BuryPointer.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Support/BuryPointer.cpp stable/12/contrib/llvm/lib/Support/FileCheck.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Support/FileCheck.cpp stable/12/contrib/llvm/lib/Support/ItaniumManglingCanonicalizer.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Support/ItaniumManglingCanonicalizer.cpp stable/12/contrib/llvm/lib/Support/SymbolRemappingReader.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Support/SymbolRemappingReader.cpp stable/12/contrib/llvm/lib/Support/VirtualFileSystem.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Support/VirtualFileSystem.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64BranchTargets.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/AArch64/AArch64BranchTargets.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64CompressJumpTables.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/AArch64/AArch64CompressJumpTables.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64PfmCounters.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/AArch64/AArch64PfmCounters.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64PreLegalizerCombiner.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/AArch64/AArch64PreLegalizerCombiner.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM4.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM4.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedPredExynos.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/AArch64/AArch64SchedPredExynos.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedPredicates.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/AArch64/AArch64SchedPredicates.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SpeculationHardening.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/AArch64/AArch64SpeculationHardening.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUFixFunctionBitcasts.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUFixFunctionBitcasts.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIAddIMGInit.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/AMDGPU/SIAddIMGInit.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIFixupVectorISel.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/AMDGPU/SIFixupVectorISel.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIModeRegister.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/AMDGPU/SIModeRegister.cpp stable/12/contrib/llvm/lib/Target/BPF/BPFMIChecking.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/BPF/BPFMIChecking.cpp stable/12/contrib/llvm/lib/Target/BPF/BTF.def - copied unchanged from r344779, head/contrib/llvm/lib/Target/BPF/BTF.def stable/12/contrib/llvm/lib/Target/BPF/BTF.h - copied unchanged from r344779, head/contrib/llvm/lib/Target/BPF/BTF.h stable/12/contrib/llvm/lib/Target/BPF/BTFDebug.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/BPF/BTFDebug.cpp stable/12/contrib/llvm/lib/Target/BPF/BTFDebug.h - copied unchanged from r344779, head/contrib/llvm/lib/Target/BPF/BTFDebug.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepDecoders.h - copied unchanged from r344779, head/contrib/llvm/lib/Target/Hexagon/HexagonDepDecoders.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepMapAsm2Intrin.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/Hexagon/HexagonDepMapAsm2Intrin.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormatsV5.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormatsV5.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV5.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV5.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV66.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV66.td stable/12/contrib/llvm/lib/Target/MSP430/AsmParser/ - copied from r344779, head/contrib/llvm/lib/Target/MSP430/AsmParser/ stable/12/contrib/llvm/lib/Target/MSP430/Disassembler/ - copied from r344779, head/contrib/llvm/lib/Target/MSP430/Disassembler/ stable/12/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430AsmBackend.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430AsmBackend.cpp stable/12/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFObjectWriter.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFStreamer.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFStreamer.cpp stable/12/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430FixupKinds.h - copied unchanged from r344779, head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430FixupKinds.h stable/12/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCCodeEmitter.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsPreLegalizerCombiner.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/Mips/MipsPreLegalizerCombiner.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXProxyRegErasure.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/NVPTX/NVPTXProxyRegErasure.cpp stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.h - copied unchanged from r344779, head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCPfmCounters.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/PowerPC/PPCPfmCounters.td stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h - copied unchanged from r344779, head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h stable/12/contrib/llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp stable/12/contrib/llvm/lib/Target/RISCV/RISCVSystemOperands.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/RISCV/RISCVSystemOperands.td stable/12/contrib/llvm/lib/Target/RISCV/Utils/ - copied from r344779, head/contrib/llvm/lib/Target/RISCV/Utils/ stable/12/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcTargetStreamer.h - copied unchanged from r344779, head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcTargetStreamer.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h - copied unchanged from r344779, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyEHRestoreStackPointer.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyEHRestoreStackPointer.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMemIntrinsicResults.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMemIntrinsicResults.cpp stable/12/contrib/llvm/lib/Target/X86/X86CondBrFolding.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/X86/X86CondBrFolding.cpp stable/12/contrib/llvm/lib/Target/X86/X86DiscriminateMemOps.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/X86/X86DiscriminateMemOps.cpp stable/12/contrib/llvm/lib/Target/X86/X86InsertPrefetch.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Target/X86/X86InsertPrefetch.cpp stable/12/contrib/llvm/lib/Target/X86/X86ScheduleBdVer2.td - copied unchanged from r344779, head/contrib/llvm/lib/Target/X86/X86ScheduleBdVer2.td stable/12/contrib/llvm/lib/Testing/Support/SupportHelpers.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Testing/Support/SupportHelpers.cpp stable/12/contrib/llvm/lib/TextAPI/ - copied from r344779, head/contrib/llvm/lib/TextAPI/ stable/12/contrib/llvm/lib/Transforms/IPO/HotColdSplitting.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Transforms/IPO/HotColdSplitting.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/MakeGuardsExplicit.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Transforms/Scalar/MakeGuardsExplicit.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/WarnMissedTransforms.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Transforms/Scalar/WarnMissedTransforms.cpp stable/12/contrib/llvm/lib/Transforms/Utils/CanonicalizeAliases.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Transforms/Utils/CanonicalizeAliases.cpp stable/12/contrib/llvm/lib/Transforms/Utils/GuardUtils.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Transforms/Utils/GuardUtils.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanSLP.cpp - copied unchanged from r344779, head/contrib/llvm/lib/Transforms/Vectorize/VPlanSLP.cpp stable/12/contrib/llvm/lib/XRay/BlockIndexer.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/BlockIndexer.cpp stable/12/contrib/llvm/lib/XRay/BlockPrinter.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/BlockPrinter.cpp stable/12/contrib/llvm/lib/XRay/BlockVerifier.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/BlockVerifier.cpp stable/12/contrib/llvm/lib/XRay/FDRRecordProducer.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/FDRRecordProducer.cpp stable/12/contrib/llvm/lib/XRay/FDRRecords.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/FDRRecords.cpp stable/12/contrib/llvm/lib/XRay/FDRTraceExpander.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/FDRTraceExpander.cpp stable/12/contrib/llvm/lib/XRay/FDRTraceWriter.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/FDRTraceWriter.cpp stable/12/contrib/llvm/lib/XRay/FileHeaderReader.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/FileHeaderReader.cpp stable/12/contrib/llvm/lib/XRay/LogBuilderConsumer.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/LogBuilderConsumer.cpp stable/12/contrib/llvm/lib/XRay/Profile.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/Profile.cpp stable/12/contrib/llvm/lib/XRay/RecordInitializer.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/RecordInitializer.cpp stable/12/contrib/llvm/lib/XRay/RecordPrinter.cpp - copied unchanged from r344779, head/contrib/llvm/lib/XRay/RecordPrinter.cpp stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTContextAllocate.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/AST/ASTContextAllocate.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTDumperUtils.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/AST/ASTDumperUtils.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTImporterLookupTable.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/AST/ASTImporterLookupTable.h stable/12/contrib/llvm/tools/clang/include/clang/AST/AttrVisitor.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/AST/AttrVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/FormatString.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/AST/FormatString.h stable/12/contrib/llvm/tools/clang/include/clang/AST/OSLog.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/AST/OSLog.h stable/12/contrib/llvm/tools/clang/include/clang/AST/TemplateArgumentVisitor.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/AST/TemplateArgumentVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/TextNodeDumper.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/AST/TextNodeDumper.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ExprMutationAnalyzer.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ExprMutationAnalyzer.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/SelectorExtras.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Analysis/SelectorExtras.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/CodeGenOptions.def - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/CodeGenOptions.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/CodeGenOptions.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/CodeGenOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticAST.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticAST.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticAnalysis.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticAnalysis.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticComment.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticComment.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCrossTU.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCrossTU.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriver.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriver.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontend.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontend.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLex.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLex.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParse.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParse.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticRefactoring.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticRefactoring.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSema.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSema.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSerialization.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSerialization.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/FixedPoint.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/FixedPoint.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/MSP430Target.def - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/MSP430Target.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/OpenCLExtensionTypes.def - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Basic/OpenCLExtensionTypes.def stable/12/contrib/llvm/tools/clang/include/clang/Driver/DarwinSDKInfo.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Driver/DarwinSDKInfo.h stable/12/contrib/llvm/tools/clang/include/clang/Parse/LoopHint.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Parse/LoopHint.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/PCHContainerOperations.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/Serialization/PCHContainerOperations.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/BuiltinCheckerRegistration.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/BuiltinCheckerRegistration.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/RetainSummaryManager.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/RetainSummaryManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/CheckerRegistry.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/CheckerRegistry.h stable/12/contrib/llvm/tools/clang/lib/AST/ASTImporterLookupTable.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/AST/ASTImporterLookupTable.cpp stable/12/contrib/llvm/tools/clang/lib/AST/FormatString.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/AST/FormatString.cpp stable/12/contrib/llvm/tools/clang/lib/AST/FormatStringParsing.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/AST/FormatStringParsing.h stable/12/contrib/llvm/tools/clang/lib/AST/OSLog.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/AST/OSLog.cpp stable/12/contrib/llvm/tools/clang/lib/AST/PrintfFormatString.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/AST/PrintfFormatString.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ScanfFormatString.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/AST/ScanfFormatString.cpp stable/12/contrib/llvm/tools/clang/lib/AST/TextNodeDumper.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/AST/TextNodeDumper.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ExprMutationAnalyzer.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Analysis/ExprMutationAnalyzer.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/CodeGenOptions.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Basic/CodeGenOptions.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/FixedPoint.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Basic/FixedPoint.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/ARC.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Basic/Targets/ARC.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/ARC.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Basic/Targets/ARC.h stable/12/contrib/llvm/tools/clang/lib/Driver/DarwinSDKInfo.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Driver/DarwinSDKInfo.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hurd.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hurd.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hurd.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hurd.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSP430.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSP430.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSP430.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSP430.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCVToolchain.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCVToolchain.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCVToolchain.h - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCVToolchain.h stable/12/contrib/llvm/tools/clang/lib/Serialization/PCHContainerOperations.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/Serialization/PCHContainerOperations.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/EnumCastOutOfRangeChecker.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/EnumCastOutOfRangeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/ - copied from r344779, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/ stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/ - copied from r344779, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/ stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RetainSummaryManager.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RetainSummaryManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/TaintManager.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/TaintManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp - copied unchanged from r344779, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/MSP430.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lld/ELF/Arch/MSP430.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/RISCV.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lld/ELF/Arch/RISCV.cpp stable/12/contrib/llvm/tools/lld/ELF/DWARF.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lld/ELF/DWARF.cpp stable/12/contrib/llvm/tools/lld/ELF/DWARF.h - copied unchanged from r344779, head/contrib/llvm/tools/lld/ELF/DWARF.h stable/12/contrib/llvm/tools/lld/docs/missingkeyfunction.rst - copied unchanged from r344779, head/contrib/llvm/tools/lld/docs/missingkeyfunction.rst stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBInitializerOptions.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/API/SBInitializerOptions.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverScripted.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverScripted.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Highlighter.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Core/Highlighter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/RichManglingContext.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Core/RichManglingContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/SafeMachO.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Host/SafeMachO.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/StackFrameRecognizer.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Target/StackFrameRecognizer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Broadcaster.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Utility/Broadcaster.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Event.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Utility/Event.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Listener.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Utility/Listener.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Predicate.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Utility/Predicate.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/RegisterValue.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Utility/RegisterValue.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Reproducer.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Utility/Reproducer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Scalar.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Utility/Scalar.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/State.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/include/lldb/Utility/State.h stable/12/contrib/llvm/tools/lldb/source/API/SBInitializerOptions.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/API/SBInitializerOptions.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverScripted.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverScripted.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectReproducer.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Commands/CommandObjectReproducer.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectReproducer.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Commands/CommandObjectReproducer.h stable/12/contrib/llvm/tools/lldb/source/Core/Highlighter.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Core/Highlighter.cpp stable/12/contrib/llvm/tools/lldb/source/Core/RichManglingContext.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Core/RichManglingContext.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Architecture/Mips/ - copied from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Architecture/Mips/ stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxOptional.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxOptional.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/MSVCUndecoratedNameParser.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/MSVCUndecoratedNameParser.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/MSVCUndecoratedNameParser.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/MSVCUndecoratedNameParser.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ClangCommon/ - copied from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Language/ClangCommon/ stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/Breakpad/ - copied from r344779, head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/Breakpad/ stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxProcMaps.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxProcMaps.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxProcMaps.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxProcMaps.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationHistory.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationHistory.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationHistory.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationHistory.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationReplayServer.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationReplayServer.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationReplayServer.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationReplayServer.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM64.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM64.h - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Breakpad/ - copied from r344779, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Breakpad/ stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/NativePDB/ - copied from r344779, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/NativePDB/ stable/12/contrib/llvm/tools/lldb/source/Target/StackFrameRecognizer.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Target/StackFrameRecognizer.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Broadcaster.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Utility/Broadcaster.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Event.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Utility/Event.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Listener.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Utility/Listener.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/RegisterValue.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Utility/RegisterValue.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Reproducer.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Utility/Reproducer.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Scalar.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Utility/Scalar.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/State.cpp - copied unchanged from r344779, head/contrib/llvm/tools/lldb/source/Utility/State.cpp stable/12/contrib/llvm/tools/lldb/tools/driver/Options.td - copied unchanged from r344779, head/contrib/llvm/tools/lldb/tools/driver/Options.td stable/12/contrib/llvm/tools/llvm-cov/CoverageExporterLcov.cpp - copied unchanged from r344779, head/contrib/llvm/tools/llvm-cov/CoverageExporterLcov.cpp stable/12/contrib/llvm/tools/llvm-cov/CoverageExporterLcov.h - copied unchanged from r344779, head/contrib/llvm/tools/llvm-cov/CoverageExporterLcov.h stable/12/contrib/llvm/tools/llvm-cxxmap/ - copied from r344779, head/contrib/llvm/tools/llvm-cxxmap/ stable/12/contrib/llvm/tools/llvm-mca/CodeRegionGenerator.cpp - copied unchanged from r344779, head/contrib/llvm/tools/llvm-mca/CodeRegionGenerator.cpp stable/12/contrib/llvm/tools/llvm-mca/CodeRegionGenerator.h - copied unchanged from r344779, head/contrib/llvm/tools/llvm-mca/CodeRegionGenerator.h stable/12/contrib/llvm/tools/llvm-mca/Views/ - copied from r344779, head/contrib/llvm/tools/llvm-mca/Views/ stable/12/contrib/llvm/tools/llvm-mca/include/ - copied from r344779, head/contrib/llvm/tools/llvm-mca/include/ stable/12/contrib/llvm/tools/llvm-mca/lib/ - copied from r344779, head/contrib/llvm/tools/llvm-mca/lib/ stable/12/contrib/llvm/tools/llvm-objcopy/Buffer.cpp - copied unchanged from r344779, head/contrib/llvm/tools/llvm-objcopy/Buffer.cpp stable/12/contrib/llvm/tools/llvm-objcopy/Buffer.h - copied unchanged from r344779, head/contrib/llvm/tools/llvm-objcopy/Buffer.h stable/12/contrib/llvm/tools/llvm-objcopy/COFF/ - copied from r344779, head/contrib/llvm/tools/llvm-objcopy/COFF/ stable/12/contrib/llvm/tools/llvm-objcopy/CopyConfig.cpp - copied unchanged from r344779, head/contrib/llvm/tools/llvm-objcopy/CopyConfig.cpp stable/12/contrib/llvm/tools/llvm-objcopy/CopyConfig.h - copied unchanged from r344779, head/contrib/llvm/tools/llvm-objcopy/CopyConfig.h stable/12/contrib/llvm/tools/llvm-objcopy/ELF/ - copied from r344779, head/contrib/llvm/tools/llvm-objcopy/ELF/ stable/12/contrib/llvm/tools/llvm-xray/xray-fdr-dump.cpp - copied unchanged from r344779, head/contrib/llvm/tools/llvm-xray/xray-fdr-dump.cpp stable/12/contrib/llvm/utils/TableGen/ExegesisEmitter.cpp - copied unchanged from r344779, head/contrib/llvm/utils/TableGen/ExegesisEmitter.cpp stable/12/contrib/openmp/ - copied from r345231, head/contrib/openmp/ stable/12/usr.bin/clang/llvm-objdump/llvm-objdump.1 - copied, changed from r340972, head/usr.bin/clang/llvm-objdump/llvm-objdump.1 Directory Properties: stable/12/contrib/libunwind/ (props changed) Deleted: stable/12/contrib/compiler-rt/lib/builtins/arm64/ stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerExtFunctionsDlsymWin.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerExtFunctionsWeakAlias.cpp stable/12/contrib/libc++/include/experimental/dynarray stable/12/contrib/libc++/src/experimental/filesystem/ stable/12/contrib/llvm/include/llvm/Analysis/IndirectCallSiteVisitor.h stable/12/contrib/llvm/include/llvm/CodeGen/GCs.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeBuiltinSymbol.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumSymbol.h stable/12/contrib/llvm/include/llvm/IR/TypeBuilder.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/OrderedInstructions.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterHandler.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.h stable/12/contrib/llvm/lib/CodeGen/MachinePassRegistry.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeBuiltinSymbol.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumSymbol.cpp stable/12/contrib/llvm/lib/Demangle/Compiler.h stable/12/contrib/llvm/lib/Demangle/StringView.h stable/12/contrib/llvm/lib/Demangle/Utility.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsics.td stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonGatherPacketize.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormatsV4.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsicsV3.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsicsV4.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV4.td stable/12/contrib/llvm/lib/Target/Nios2/InstPrinter/Nios2InstPrinter.cpp stable/12/contrib/llvm/lib/Target/Nios2/InstPrinter/Nios2InstPrinter.h stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2AsmBackend.cpp stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2AsmBackend.h stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2BaseInfo.h stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2ELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2FixupKinds.h stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCAsmInfo.cpp stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCAsmInfo.h stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCExpr.cpp stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCExpr.h stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCTargetDesc.h stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2TargetStreamer.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2.h stable/12/contrib/llvm/lib/Target/Nios2/Nios2.td stable/12/contrib/llvm/lib/Target/Nios2/Nios2AsmPrinter.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2CallingConv.td stable/12/contrib/llvm/lib/Target/Nios2/Nios2FrameLowering.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2FrameLowering.h stable/12/contrib/llvm/lib/Target/Nios2/Nios2ISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2ISelLowering.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2ISelLowering.h stable/12/contrib/llvm/lib/Target/Nios2/Nios2InstrFormats.td stable/12/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.h stable/12/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.td stable/12/contrib/llvm/lib/Target/Nios2/Nios2MCInstLower.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2MachineFunction.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2MachineFunction.h stable/12/contrib/llvm/lib/Target/Nios2/Nios2RegisterInfo.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2RegisterInfo.h stable/12/contrib/llvm/lib/Target/Nios2/Nios2RegisterInfo.td stable/12/contrib/llvm/lib/Target/Nios2/Nios2Schedule.td stable/12/contrib/llvm/lib/Target/Nios2/Nios2Subtarget.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2Subtarget.h stable/12/contrib/llvm/lib/Target/Nios2/Nios2TargetMachine.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2TargetMachine.h stable/12/contrib/llvm/lib/Target/Nios2/Nios2TargetObjectFile.cpp stable/12/contrib/llvm/lib/Target/Nios2/Nios2TargetObjectFile.h stable/12/contrib/llvm/lib/Target/Nios2/Nios2TargetStreamer.h stable/12/contrib/llvm/lib/Target/Nios2/TargetInfo/Nios2TargetInfo.cpp stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h stable/12/contrib/llvm/lib/Target/Sparc/SparcTargetStreamer.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp stable/12/contrib/llvm/lib/Transforms/Utils/OrderedInstructions.cpp stable/12/contrib/llvm/projects/ stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/FormatString.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/OSLog.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/PseudoConstantAnalysis.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNios2.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/VirtualFileSystem.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.def stable/12/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PTHLexer.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PTHManager.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/LoopHint.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/ClangCheckers.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/ObjCRetainCount.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerOptInfo.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerRegistry.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTContext.h stable/12/contrib/llvm/tools/clang/lib/Analysis/FormatString.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/FormatStringParsing.h stable/12/contrib/llvm/tools/clang/lib/Analysis/OSLog.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/PrintfFormatString.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/PseudoConstantAnalysis.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ScanfFormatString.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Nios2.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Nios2.h stable/12/contrib/llvm/tools/clang/lib/Basic/VirtualFileSystem.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/Arch/ stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.h stable/12/contrib/llvm/tools/clang/lib/Frontend/CacheTokens.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/CodeGenOptions.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/PCHContainerOperations.cpp stable/12/contrib/llvm/tools/clang/lib/Headers/cuda/ stable/12/contrib/llvm/tools/clang/lib/Lex/PTHLexer.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationDiagnostics.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationDiagnostics.h stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ClangCheckers.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ClangSACheckers.h stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MisusedMovedObjectChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SelectorExtras.h stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObjectChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerRegistry.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SMTConstraintManager.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Inclusions/CMakeLists.txt stable/12/contrib/llvm/tools/lld/ELF/GdbIndex.cpp stable/12/contrib/llvm/tools/lld/ELF/GdbIndex.h stable/12/contrib/llvm/tools/lld/include/lld/Core/TODO.txt stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Broadcaster.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Event.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Listener.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/RegisterValue.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Scalar.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/State.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Predicate.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeBreakpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/SoftwareBreakpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/GoASTContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/JavaASTContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/OCamlASTContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Either.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/FastDemangle.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Range.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/SafeMachO.h stable/12/contrib/llvm/tools/lldb/source/Core/Broadcaster.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Event.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Listener.cpp stable/12/contrib/llvm/tools/lldb/source/Core/RegisterValue.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Scalar.cpp stable/12/contrib/llvm/tools/lldb/source/Core/State.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Architecture/PPC64/CMakeLists.txt stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoAST.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoLexer.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoLexer.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoParser.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoParser.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/gen_go_ast.py stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/PPC64/CMakeLists.txt stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoFormatterFunctions.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoFormatterFunctions.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoLanguage.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoLanguage.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaFormatterFunctions.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaFormatterFunctions.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaLanguage.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaLanguage.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/OCaml/OCamlLanguage.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/OCaml/OCamlLanguage.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Go/GoLanguageRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Go/GoLanguageRuntime.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Java/JavaLanguageRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Java/JavaLanguageRuntime.h stable/12/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserGo.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserGo.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserJava.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserJava.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserOCaml.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserOCaml.h stable/12/contrib/llvm/tools/lldb/source/Symbol/GoASTContext.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/JavaASTContext.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/OCamlASTContext.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/FastDemangle.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Range.cpp stable/12/contrib/llvm/tools/llvm-mca/Context.cpp stable/12/contrib/llvm/tools/llvm-mca/Context.h stable/12/contrib/llvm/tools/llvm-mca/DispatchStage.cpp stable/12/contrib/llvm/tools/llvm-mca/DispatchStage.h stable/12/contrib/llvm/tools/llvm-mca/DispatchStatistics.cpp stable/12/contrib/llvm/tools/llvm-mca/DispatchStatistics.h stable/12/contrib/llvm/tools/llvm-mca/ExecuteStage.cpp stable/12/contrib/llvm/tools/llvm-mca/ExecuteStage.h stable/12/contrib/llvm/tools/llvm-mca/FetchStage.cpp stable/12/contrib/llvm/tools/llvm-mca/FetchStage.h stable/12/contrib/llvm/tools/llvm-mca/HWEventListener.cpp stable/12/contrib/llvm/tools/llvm-mca/HWEventListener.h stable/12/contrib/llvm/tools/llvm-mca/HardwareUnit.cpp stable/12/contrib/llvm/tools/llvm-mca/HardwareUnit.h stable/12/contrib/llvm/tools/llvm-mca/InstrBuilder.cpp stable/12/contrib/llvm/tools/llvm-mca/InstrBuilder.h stable/12/contrib/llvm/tools/llvm-mca/Instruction.cpp stable/12/contrib/llvm/tools/llvm-mca/Instruction.h stable/12/contrib/llvm/tools/llvm-mca/InstructionInfoView.cpp stable/12/contrib/llvm/tools/llvm-mca/InstructionInfoView.h stable/12/contrib/llvm/tools/llvm-mca/InstructionTables.cpp stable/12/contrib/llvm/tools/llvm-mca/InstructionTables.h stable/12/contrib/llvm/tools/llvm-mca/LSUnit.cpp stable/12/contrib/llvm/tools/llvm-mca/LSUnit.h stable/12/contrib/llvm/tools/llvm-mca/Pipeline.cpp stable/12/contrib/llvm/tools/llvm-mca/Pipeline.h stable/12/contrib/llvm/tools/llvm-mca/RegisterFile.cpp stable/12/contrib/llvm/tools/llvm-mca/RegisterFile.h stable/12/contrib/llvm/tools/llvm-mca/RegisterFileStatistics.cpp stable/12/contrib/llvm/tools/llvm-mca/RegisterFileStatistics.h stable/12/contrib/llvm/tools/llvm-mca/ResourcePressureView.cpp stable/12/contrib/llvm/tools/llvm-mca/ResourcePressureView.h stable/12/contrib/llvm/tools/llvm-mca/RetireControlUnit.cpp stable/12/contrib/llvm/tools/llvm-mca/RetireControlUnit.h stable/12/contrib/llvm/tools/llvm-mca/RetireControlUnitStatistics.cpp stable/12/contrib/llvm/tools/llvm-mca/RetireControlUnitStatistics.h stable/12/contrib/llvm/tools/llvm-mca/RetireStage.cpp stable/12/contrib/llvm/tools/llvm-mca/RetireStage.h stable/12/contrib/llvm/tools/llvm-mca/Scheduler.cpp stable/12/contrib/llvm/tools/llvm-mca/Scheduler.h stable/12/contrib/llvm/tools/llvm-mca/SchedulerStatistics.cpp stable/12/contrib/llvm/tools/llvm-mca/SchedulerStatistics.h stable/12/contrib/llvm/tools/llvm-mca/SourceMgr.h stable/12/contrib/llvm/tools/llvm-mca/Stage.cpp stable/12/contrib/llvm/tools/llvm-mca/Stage.h stable/12/contrib/llvm/tools/llvm-mca/SummaryView.cpp stable/12/contrib/llvm/tools/llvm-mca/SummaryView.h stable/12/contrib/llvm/tools/llvm-mca/Support.cpp stable/12/contrib/llvm/tools/llvm-mca/Support.h stable/12/contrib/llvm/tools/llvm-mca/TimelineView.cpp stable/12/contrib/llvm/tools/llvm-mca/TimelineView.h stable/12/contrib/llvm/tools/llvm-mca/View.cpp stable/12/contrib/llvm/tools/llvm-mca/View.h stable/12/contrib/llvm/tools/llvm-objcopy/Object.cpp stable/12/contrib/llvm/tools/llvm-objcopy/Object.h stable/12/contrib/llvm/tools/llvm-pdbutil/Analyze.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/Analyze.h Modified: stable/12/ObsoleteFiles.inc stable/12/UPDATING stable/12/contrib/compiler-rt/LICENSE.TXT stable/12/contrib/compiler-rt/include/sanitizer/allocator_interface.h stable/12/contrib/compiler-rt/include/sanitizer/common_interface_defs.h stable/12/contrib/compiler-rt/include/sanitizer/hwasan_interface.h stable/12/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h stable/12/contrib/compiler-rt/include/xray/xray_log_interface.h stable/12/contrib/compiler-rt/lib/asan/asan_allocator.h stable/12/contrib/compiler-rt/lib/asan/asan_errors.cc stable/12/contrib/compiler-rt/lib/asan/asan_errors.h stable/12/contrib/compiler-rt/lib/asan/asan_flags.inc stable/12/contrib/compiler-rt/lib/asan/asan_fuchsia.cc stable/12/contrib/compiler-rt/lib/asan/asan_globals.cc stable/12/contrib/compiler-rt/lib/asan/asan_globals_win.cc stable/12/contrib/compiler-rt/lib/asan/asan_internal.h stable/12/contrib/compiler-rt/lib/asan/asan_linux.cc stable/12/contrib/compiler-rt/lib/asan/asan_malloc_linux.cc stable/12/contrib/compiler-rt/lib/asan/asan_malloc_mac.cc stable/12/contrib/compiler-rt/lib/asan/asan_malloc_win.cc stable/12/contrib/compiler-rt/lib/asan/asan_new_delete.cc stable/12/contrib/compiler-rt/lib/asan/asan_posix.cc stable/12/contrib/compiler-rt/lib/asan/asan_report.h stable/12/contrib/compiler-rt/lib/asan/asan_rtems.cc stable/12/contrib/compiler-rt/lib/asan/asan_rtl.cc stable/12/contrib/compiler-rt/lib/asan/asan_thread.cc stable/12/contrib/compiler-rt/lib/asan/asan_win.cc stable/12/contrib/compiler-rt/lib/asan/asan_win_dll_thunk.cc stable/12/contrib/compiler-rt/lib/builtins/arm/addsf3.S stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmp.S stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_cfcmp.S stable/12/contrib/compiler-rt/lib/builtins/clzdi2.c stable/12/contrib/compiler-rt/lib/builtins/cpu_model.c stable/12/contrib/compiler-rt/lib/builtins/ctzdi2.c stable/12/contrib/compiler-rt/lib/builtins/divdc3.c stable/12/contrib/compiler-rt/lib/builtins/divdf3.c stable/12/contrib/compiler-rt/lib/builtins/divsc3.c stable/12/contrib/compiler-rt/lib/builtins/divsf3.c stable/12/contrib/compiler-rt/lib/builtins/divtc3.c stable/12/contrib/compiler-rt/lib/builtins/emutls.c stable/12/contrib/compiler-rt/lib/builtins/fp_lib.h stable/12/contrib/compiler-rt/lib/builtins/gcc_personality_v0.c stable/12/contrib/compiler-rt/lib/builtins/int_lib.h stable/12/contrib/compiler-rt/lib/builtins/int_math.h stable/12/contrib/compiler-rt/lib/builtins/int_types.h stable/12/contrib/compiler-rt/lib/builtins/int_util.c stable/12/contrib/compiler-rt/lib/builtins/int_util.h stable/12/contrib/compiler-rt/lib/builtins/os_version_check.c stable/12/contrib/compiler-rt/lib/builtins/ppc/divtc3.c stable/12/contrib/compiler-rt/lib/cfi/cfi.cc stable/12/contrib/compiler-rt/lib/cfi/cfi_blacklist.txt stable/12/contrib/compiler-rt/lib/dfsan/dfsan.cc stable/12/contrib/compiler-rt/lib/esan/esan_interceptors.cpp stable/12/contrib/compiler-rt/lib/esan/esan_shadow.h stable/12/contrib/compiler-rt/lib/esan/esan_sideline.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerCommand.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerCorpus.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerDefs.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerDriver.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerExtFunctionsWeak.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerFlags.def stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerIO.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerIO.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerIOPosix.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerIOWindows.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerInternal.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerLoop.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerMutate.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerMutate.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerOptions.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerTracePC.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerTracePC.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerUtil.h stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp stable/12/contrib/compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp stable/12/contrib/compiler-rt/lib/hwasan/hwasan.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan.h stable/12/contrib/compiler-rt/lib/hwasan/hwasan_allocator.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_allocator.h stable/12/contrib/compiler-rt/lib/hwasan/hwasan_dynamic_shadow.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_flags.h stable/12/contrib/compiler-rt/lib/hwasan/hwasan_flags.inc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_interceptors.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_interface_internal.h stable/12/contrib/compiler-rt/lib/hwasan/hwasan_linux.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_mapping.h stable/12/contrib/compiler-rt/lib/hwasan/hwasan_new_delete.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_poisoning.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_poisoning.h stable/12/contrib/compiler-rt/lib/hwasan/hwasan_report.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_report.h stable/12/contrib/compiler-rt/lib/hwasan/hwasan_thread.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_thread.h stable/12/contrib/compiler-rt/lib/interception/interception.h stable/12/contrib/compiler-rt/lib/interception/interception_linux.h stable/12/contrib/compiler-rt/lib/interception/interception_win.cc stable/12/contrib/compiler-rt/lib/lsan/lsan_allocator.cc stable/12/contrib/compiler-rt/lib/lsan/lsan_allocator.h stable/12/contrib/compiler-rt/lib/lsan/lsan_common_mac.cc stable/12/contrib/compiler-rt/lib/lsan/lsan_interceptors.cc stable/12/contrib/compiler-rt/lib/msan/msan.cc stable/12/contrib/compiler-rt/lib/msan/msan_allocator.cc stable/12/contrib/compiler-rt/lib/msan/msan_interceptors.cc stable/12/contrib/compiler-rt/lib/msan/msan_linux.cc stable/12/contrib/compiler-rt/lib/profile/GCDAProfiling.c stable/12/contrib/compiler-rt/lib/profile/InstrProfData.inc stable/12/contrib/compiler-rt/lib/profile/InstrProfilingPlatformLinux.c stable/12/contrib/compiler-rt/lib/profile/InstrProfilingPlatformOther.c stable/12/contrib/compiler-rt/lib/profile/InstrProfilingValue.c stable/12/contrib/compiler-rt/lib/profile/WindowsMMap.c stable/12/contrib/compiler-rt/lib/profile/WindowsMMap.h stable/12/contrib/compiler-rt/lib/safestack/safestack.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_bytemap.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_combined.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_internal.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary32.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary64.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_size_class_map.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_x86.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_libcdep.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_fuchsia.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_sections.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_file.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_libc.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_malloc_mac.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_openbsd.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_common.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_linux.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_solaris.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_rtems.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_solaris.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stackdepot.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stackdepot.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_libcdep.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_sparc.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_fuchsia.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_generic.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_aarch64.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_arm.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_x86_64.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscalls_netbsd.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_termination.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_unwind_linux_libcdep.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_defs.h stable/12/contrib/compiler-rt/lib/sanitizer_common/symbolizer/scripts/global_symbols.txt stable/12/contrib/compiler-rt/lib/scudo/scudo_allocator.cpp stable/12/contrib/compiler-rt/lib/scudo/scudo_allocator.h stable/12/contrib/compiler-rt/lib/scudo/scudo_malloc.cpp stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_debugging.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_flags.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_flags.inc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors.h stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_platform.h stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_platform_mac.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_report.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl.h stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_aarch64.S stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_amd64.S stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_suppressions.cc stable/12/contrib/compiler-rt/lib/ubsan/ubsan_checks.inc stable/12/contrib/compiler-rt/lib/ubsan/ubsan_flags.inc stable/12/contrib/compiler-rt/lib/ubsan/ubsan_handlers.cc stable/12/contrib/compiler-rt/lib/ubsan/ubsan_handlers.h stable/12/contrib/compiler-rt/lib/ubsan/ubsan_interface.inc stable/12/contrib/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cc stable/12/contrib/compiler-rt/lib/xray/xray_allocator.h stable/12/contrib/compiler-rt/lib/xray/xray_basic_logging.cc stable/12/contrib/compiler-rt/lib/xray/xray_buffer_queue.cc stable/12/contrib/compiler-rt/lib/xray/xray_buffer_queue.h stable/12/contrib/compiler-rt/lib/xray/xray_defs.h stable/12/contrib/compiler-rt/lib/xray/xray_fdr_log_records.h stable/12/contrib/compiler-rt/lib/xray/xray_fdr_logging.cc stable/12/contrib/compiler-rt/lib/xray/xray_function_call_trie.h stable/12/contrib/compiler-rt/lib/xray/xray_init.cc stable/12/contrib/compiler-rt/lib/xray/xray_interface.cc stable/12/contrib/compiler-rt/lib/xray/xray_profile_collector.cc stable/12/contrib/compiler-rt/lib/xray/xray_profile_collector.h stable/12/contrib/compiler-rt/lib/xray/xray_profiling.cc stable/12/contrib/compiler-rt/lib/xray/xray_profiling_flags.inc stable/12/contrib/compiler-rt/lib/xray/xray_segmented_array.h stable/12/contrib/compiler-rt/lib/xray/xray_trampoline_x86_64.S stable/12/contrib/compiler-rt/lib/xray/xray_tsc.h stable/12/contrib/compiler-rt/lib/xray/xray_utils.cc stable/12/contrib/compiler-rt/lib/xray/xray_utils.h stable/12/contrib/compiler-rt/lib/xray/xray_x86_64.cc stable/12/contrib/libc++/LICENSE.TXT stable/12/contrib/libc++/include/__bit_reference stable/12/contrib/libc++/include/__config stable/12/contrib/libc++/include/__debug stable/12/contrib/libc++/include/__functional_base stable/12/contrib/libc++/include/__hash_table stable/12/contrib/libc++/include/__libcpp_version stable/12/contrib/libc++/include/__locale stable/12/contrib/libc++/include/__mutex_base stable/12/contrib/libc++/include/__node_handle stable/12/contrib/libc++/include/__sso_allocator stable/12/contrib/libc++/include/__string stable/12/contrib/libc++/include/__threading_support stable/12/contrib/libc++/include/__tree stable/12/contrib/libc++/include/__tuple stable/12/contrib/libc++/include/algorithm stable/12/contrib/libc++/include/any stable/12/contrib/libc++/include/array stable/12/contrib/libc++/include/atomic stable/12/contrib/libc++/include/bitset stable/12/contrib/libc++/include/charconv stable/12/contrib/libc++/include/chrono stable/12/contrib/libc++/include/cmath stable/12/contrib/libc++/include/complex stable/12/contrib/libc++/include/cstddef stable/12/contrib/libc++/include/deque stable/12/contrib/libc++/include/exception stable/12/contrib/libc++/include/experimental/any stable/12/contrib/libc++/include/experimental/chrono stable/12/contrib/libc++/include/experimental/coroutine stable/12/contrib/libc++/include/experimental/memory_resource stable/12/contrib/libc++/include/experimental/numeric stable/12/contrib/libc++/include/experimental/optional stable/12/contrib/libc++/include/experimental/ratio stable/12/contrib/libc++/include/experimental/string_view stable/12/contrib/libc++/include/experimental/system_error stable/12/contrib/libc++/include/experimental/tuple stable/12/contrib/libc++/include/filesystem stable/12/contrib/libc++/include/forward_list stable/12/contrib/libc++/include/fstream stable/12/contrib/libc++/include/functional stable/12/contrib/libc++/include/future stable/12/contrib/libc++/include/iomanip stable/12/contrib/libc++/include/iosfwd stable/12/contrib/libc++/include/istream stable/12/contrib/libc++/include/iterator stable/12/contrib/libc++/include/limits stable/12/contrib/libc++/include/list stable/12/contrib/libc++/include/locale stable/12/contrib/libc++/include/map stable/12/contrib/libc++/include/memory stable/12/contrib/libc++/include/module.modulemap stable/12/contrib/libc++/include/mutex stable/12/contrib/libc++/include/new stable/12/contrib/libc++/include/numeric stable/12/contrib/libc++/include/optional stable/12/contrib/libc++/include/ostream stable/12/contrib/libc++/include/random stable/12/contrib/libc++/include/regex stable/12/contrib/libc++/include/scoped_allocator stable/12/contrib/libc++/include/set stable/12/contrib/libc++/include/shared_mutex stable/12/contrib/libc++/include/span stable/12/contrib/libc++/include/sstream stable/12/contrib/libc++/include/stddef.h stable/12/contrib/libc++/include/stdexcept stable/12/contrib/libc++/include/streambuf stable/12/contrib/libc++/include/string stable/12/contrib/libc++/include/string_view stable/12/contrib/libc++/include/thread stable/12/contrib/libc++/include/tuple stable/12/contrib/libc++/include/type_traits stable/12/contrib/libc++/include/typeinfo stable/12/contrib/libc++/include/unordered_map stable/12/contrib/libc++/include/unordered_set stable/12/contrib/libc++/include/utility stable/12/contrib/libc++/include/valarray stable/12/contrib/libc++/include/variant stable/12/contrib/libc++/include/vector stable/12/contrib/libc++/include/version stable/12/contrib/libc++/src/experimental/memory_resource.cpp stable/12/contrib/libc++/src/filesystem/filesystem_common.h stable/12/contrib/libc++/src/filesystem/operations.cpp stable/12/contrib/libc++/src/future.cpp stable/12/contrib/libc++/src/iostream.cpp stable/12/contrib/libc++/src/new.cpp stable/12/contrib/libc++/src/support/runtime/exception_fallback.ipp stable/12/contrib/libc++/src/support/runtime/exception_glibcxx.ipp stable/12/contrib/libc++/src/support/runtime/exception_libcxxrt.ipp stable/12/contrib/libc++/src/support/runtime/exception_msvc.ipp stable/12/contrib/libc++/src/thread.cpp stable/12/contrib/llvm/FREEBSD-Xlist stable/12/contrib/llvm/LICENSE.TXT stable/12/contrib/llvm/include/llvm-c/Core.h stable/12/contrib/llvm/include/llvm-c/DebugInfo.h stable/12/contrib/llvm/include/llvm-c/ExecutionEngine.h stable/12/contrib/llvm/include/llvm-c/OrcBindings.h stable/12/contrib/llvm/include/llvm-c/TargetMachine.h stable/12/contrib/llvm/include/llvm-c/Transforms/Scalar.h stable/12/contrib/llvm/include/llvm-c/Types.h stable/12/contrib/llvm/include/llvm-c/lto.h stable/12/contrib/llvm/include/llvm/ADT/APFloat.h stable/12/contrib/llvm/include/llvm/ADT/APInt.h stable/12/contrib/llvm/include/llvm/ADT/Any.h stable/12/contrib/llvm/include/llvm/ADT/BitVector.h stable/12/contrib/llvm/include/llvm/ADT/DenseMap.h stable/12/contrib/llvm/include/llvm/ADT/DenseSet.h stable/12/contrib/llvm/include/llvm/ADT/GraphTraits.h stable/12/contrib/llvm/include/llvm/ADT/Hashing.h stable/12/contrib/llvm/include/llvm/ADT/ImmutableList.h stable/12/contrib/llvm/include/llvm/ADT/IntervalMap.h stable/12/contrib/llvm/include/llvm/ADT/Optional.h stable/12/contrib/llvm/include/llvm/ADT/PointerIntPair.h stable/12/contrib/llvm/include/llvm/ADT/PointerSumType.h stable/12/contrib/llvm/include/llvm/ADT/PostOrderIterator.h stable/12/contrib/llvm/include/llvm/ADT/STLExtras.h stable/12/contrib/llvm/include/llvm/ADT/SmallBitVector.h stable/12/contrib/llvm/include/llvm/ADT/SmallVector.h stable/12/contrib/llvm/include/llvm/ADT/SparseBitVector.h stable/12/contrib/llvm/include/llvm/ADT/StringExtras.h stable/12/contrib/llvm/include/llvm/ADT/Triple.h stable/12/contrib/llvm/include/llvm/ADT/iterator.h stable/12/contrib/llvm/include/llvm/Analysis/AliasAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/AliasSetTracker.h stable/12/contrib/llvm/include/llvm/Analysis/BasicAliasAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfo.h stable/12/contrib/llvm/include/llvm/Analysis/CFG.h stable/12/contrib/llvm/include/llvm/Analysis/CFGPrinter.h stable/12/contrib/llvm/include/llvm/Analysis/CGSCCPassManager.h stable/12/contrib/llvm/include/llvm/Analysis/CaptureTracking.h stable/12/contrib/llvm/include/llvm/Analysis/CmpInstAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/DemandedBits.h stable/12/contrib/llvm/include/llvm/Analysis/DependenceAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/DivergenceAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/GlobalsModRef.h stable/12/contrib/llvm/include/llvm/Analysis/InlineCost.h stable/12/contrib/llvm/include/llvm/Analysis/InstructionSimplify.h stable/12/contrib/llvm/include/llvm/Analysis/IteratedDominanceFrontier.h stable/12/contrib/llvm/include/llvm/Analysis/LoopAccessAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/LoopInfo.h stable/12/contrib/llvm/include/llvm/Analysis/LoopInfoImpl.h stable/12/contrib/llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/MemoryLocation.h stable/12/contrib/llvm/include/llvm/Analysis/MemorySSA.h stable/12/contrib/llvm/include/llvm/Analysis/MemorySSAUpdater.h stable/12/contrib/llvm/include/llvm/Analysis/MustExecute.h stable/12/contrib/llvm/include/llvm/Analysis/ObjCARCAliasAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/ObjCARCAnalysisUtils.h stable/12/contrib/llvm/include/llvm/Analysis/ObjCARCInstKind.h stable/12/contrib/llvm/include/llvm/Analysis/Passes.h stable/12/contrib/llvm/include/llvm/Analysis/PhiValues.h stable/12/contrib/llvm/include/llvm/Analysis/ProfileSummaryInfo.h stable/12/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h stable/12/contrib/llvm/include/llvm/Analysis/ScopedNoAliasAA.h stable/12/contrib/llvm/include/llvm/Analysis/SparsePropagation.h stable/12/contrib/llvm/include/llvm/Analysis/SyntheticCountsUtils.h stable/12/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.def stable/12/contrib/llvm/include/llvm/Analysis/TargetTransformInfo.h stable/12/contrib/llvm/include/llvm/Analysis/TargetTransformInfoImpl.h stable/12/contrib/llvm/include/llvm/Analysis/TypeBasedAliasAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/TypeMetadataUtils.h stable/12/contrib/llvm/include/llvm/Analysis/ValueTracking.h stable/12/contrib/llvm/include/llvm/Analysis/VectorUtils.h stable/12/contrib/llvm/include/llvm/BinaryFormat/Dwarf.def stable/12/contrib/llvm/include/llvm/BinaryFormat/Dwarf.h stable/12/contrib/llvm/include/llvm/BinaryFormat/ELF.h stable/12/contrib/llvm/include/llvm/BinaryFormat/MachO.h stable/12/contrib/llvm/include/llvm/BinaryFormat/Wasm.h stable/12/contrib/llvm/include/llvm/BinaryFormat/WasmRelocs.def stable/12/contrib/llvm/include/llvm/Bitcode/BitcodeReader.h stable/12/contrib/llvm/include/llvm/Bitcode/LLVMBitCodes.h stable/12/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h stable/12/contrib/llvm/include/llvm/CodeGen/BasicTTIImpl.h stable/12/contrib/llvm/include/llvm/CodeGen/CommandFlags.inc stable/12/contrib/llvm/include/llvm/CodeGen/DwarfStringPoolEntry.h stable/12/contrib/llvm/include/llvm/CodeGen/FunctionLoweringInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/GCMetadata.h stable/12/contrib/llvm/include/llvm/CodeGen/GCMetadataPrinter.h stable/12/contrib/llvm/include/llvm/CodeGen/GCStrategy.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/Combiner.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/ConstantFoldingMIRBuilder.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/GISelWorkList.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/RegisterBankInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/Utils.h stable/12/contrib/llvm/include/llvm/CodeGen/ISDOpcodes.h stable/12/contrib/llvm/include/llvm/CodeGen/LinkAllAsmWriterComponents.h stable/12/contrib/llvm/include/llvm/CodeGen/LinkAllCodegenComponents.h stable/12/contrib/llvm/include/llvm/CodeGen/LiveIntervals.h stable/12/contrib/llvm/include/llvm/CodeGen/LivePhysRegs.h stable/12/contrib/llvm/include/llvm/CodeGen/LiveRegUnits.h stable/12/contrib/llvm/include/llvm/CodeGen/MIRYamlMapping.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineBasicBlock.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineFunction.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineInstr.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineInstrBuilder.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineModuleInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineModuleInfoImpls.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineOutliner.h stable/12/contrib/llvm/include/llvm/CodeGen/MachinePassRegistry.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineRegisterInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineScheduler.h stable/12/contrib/llvm/include/llvm/CodeGen/Passes.h stable/12/contrib/llvm/include/llvm/CodeGen/PreISelIntrinsicLowering.h stable/12/contrib/llvm/include/llvm/CodeGen/PseudoSourceValue.h stable/12/contrib/llvm/include/llvm/CodeGen/RegAllocRegistry.h stable/12/contrib/llvm/include/llvm/CodeGen/RegisterUsageInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/ScheduleDAG.h stable/12/contrib/llvm/include/llvm/CodeGen/ScheduleDAGInstrs.h stable/12/contrib/llvm/include/llvm/CodeGen/SchedulerRegistry.h stable/12/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h stable/12/contrib/llvm/include/llvm/CodeGen/SelectionDAGAddressAnalysis.h stable/12/contrib/llvm/include/llvm/CodeGen/SelectionDAGISel.h stable/12/contrib/llvm/include/llvm/CodeGen/SelectionDAGNodes.h stable/12/contrib/llvm/include/llvm/CodeGen/SlotIndexes.h stable/12/contrib/llvm/include/llvm/CodeGen/StackMaps.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetFrameLowering.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetInstrInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetLowering.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetPassConfig.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetRegisterInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetSubtargetInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/WasmEHFuncInfo.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CVRecord.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeView.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewError.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewRegisters.def stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/RecordSerialization.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDeserializer.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDumper.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolRecord.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeRecord.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeStreamMerger.h stable/12/contrib/llvm/include/llvm/DebugInfo/DIContext.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugPubTable.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRangeList.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRnglists.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFFormValue.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFGdbIndex.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFObject.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFSection.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFTypeUnit.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFUnitIndex.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h stable/12/contrib/llvm/include/llvm/DebugInfo/MSF/MSFError.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIADataStream.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumDebugStreams.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumInjectedSources.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumLineNumbers.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSectionContribs.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSourceFiles.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSymbols.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumTables.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAError.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASession.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/GenericError.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBDataStream.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBEnumChildren.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBSession.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiStream.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiStreamBuilder.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/GSIStreamBuilder.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/GlobalsStream.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/InfoStreamBuilder.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/ModuleDebugStream.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeCompilandSymbol.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumModules.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumTypes.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeExeSymbol.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeRawSymbol.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeSession.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawError.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawTypes.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiHashing.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiStream.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBExtras.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbol.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolBlock.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolData.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolExe.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFunc.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolLabel.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolThunk.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBTypes.h stable/12/contrib/llvm/include/llvm/Demangle/Demangle.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/JITEventListener.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/JITSymbol.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/CompileUtils.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/Core.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/IRCompileLayer.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/IRTransformLayer.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/IndirectionUtils.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/Layer.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/Legacy.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/NullResolver.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/ObjectTransformLayer.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcABISupport.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyld.h stable/12/contrib/llvm/include/llvm/IR/Attributes.h stable/12/contrib/llvm/include/llvm/IR/Attributes.td stable/12/contrib/llvm/include/llvm/IR/BasicBlock.h stable/12/contrib/llvm/include/llvm/IR/CFG.h stable/12/contrib/llvm/include/llvm/IR/CallSite.h stable/12/contrib/llvm/include/llvm/IR/CallingConv.h stable/12/contrib/llvm/include/llvm/IR/Constant.h stable/12/contrib/llvm/include/llvm/IR/Constants.h stable/12/contrib/llvm/include/llvm/IR/DIBuilder.h stable/12/contrib/llvm/include/llvm/IR/DataLayout.h stable/12/contrib/llvm/include/llvm/IR/DebugInfoFlags.def stable/12/contrib/llvm/include/llvm/IR/DebugInfoMetadata.h stable/12/contrib/llvm/include/llvm/IR/DebugLoc.h stable/12/contrib/llvm/include/llvm/IR/DiagnosticInfo.h stable/12/contrib/llvm/include/llvm/IR/DomTreeUpdater.h stable/12/contrib/llvm/include/llvm/IR/Dominators.h stable/12/contrib/llvm/include/llvm/IR/Function.h stable/12/contrib/llvm/include/llvm/IR/GlobalValue.h stable/12/contrib/llvm/include/llvm/IR/IRBuilder.h stable/12/contrib/llvm/include/llvm/IR/IRPrintingPasses.h stable/12/contrib/llvm/include/llvm/IR/InstVisitor.h stable/12/contrib/llvm/include/llvm/IR/InstrTypes.h stable/12/contrib/llvm/include/llvm/IR/Instruction.def stable/12/contrib/llvm/include/llvm/IR/Instruction.h stable/12/contrib/llvm/include/llvm/IR/Instructions.h stable/12/contrib/llvm/include/llvm/IR/IntrinsicInst.h stable/12/contrib/llvm/include/llvm/IR/Intrinsics.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsAArch64.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsAMDGPU.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsHexagon.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsPowerPC.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsWebAssembly.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsX86.td stable/12/contrib/llvm/include/llvm/IR/LLVMContext.h stable/12/contrib/llvm/include/llvm/IR/LegacyPassManager.h stable/12/contrib/llvm/include/llvm/IR/LegacyPassManagers.h stable/12/contrib/llvm/include/llvm/IR/Metadata.h stable/12/contrib/llvm/include/llvm/IR/Module.h stable/12/contrib/llvm/include/llvm/IR/ModuleSummaryIndex.h stable/12/contrib/llvm/include/llvm/IR/ModuleSummaryIndexYAML.h stable/12/contrib/llvm/include/llvm/IR/Operator.h stable/12/contrib/llvm/include/llvm/IR/PassManager.h stable/12/contrib/llvm/include/llvm/IR/PassManagerInternal.h stable/12/contrib/llvm/include/llvm/IR/PatternMatch.h stable/12/contrib/llvm/include/llvm/IR/RuntimeLibcalls.def stable/12/contrib/llvm/include/llvm/IR/Value.h stable/12/contrib/llvm/include/llvm/InitializePasses.h stable/12/contrib/llvm/include/llvm/LTO/Config.h stable/12/contrib/llvm/include/llvm/LTO/LTO.h stable/12/contrib/llvm/include/llvm/LTO/legacy/LTOCodeGenerator.h stable/12/contrib/llvm/include/llvm/LTO/legacy/ThinLTOCodeGenerator.h stable/12/contrib/llvm/include/llvm/LinkAllPasses.h stable/12/contrib/llvm/include/llvm/MC/MCAsmInfoWasm.h stable/12/contrib/llvm/include/llvm/MC/MCAsmMacro.h stable/12/contrib/llvm/include/llvm/MC/MCAssembler.h stable/12/contrib/llvm/include/llvm/MC/MCCodeView.h stable/12/contrib/llvm/include/llvm/MC/MCContext.h stable/12/contrib/llvm/include/llvm/MC/MCDwarf.h stable/12/contrib/llvm/include/llvm/MC/MCELFObjectWriter.h stable/12/contrib/llvm/include/llvm/MC/MCExpr.h stable/12/contrib/llvm/include/llvm/MC/MCInst.h stable/12/contrib/llvm/include/llvm/MC/MCInstrAnalysis.h stable/12/contrib/llvm/include/llvm/MC/MCInstrDesc.h stable/12/contrib/llvm/include/llvm/MC/MCObjectFileInfo.h stable/12/contrib/llvm/include/llvm/MC/MCObjectStreamer.h stable/12/contrib/llvm/include/llvm/MC/MCParser/AsmLexer.h stable/12/contrib/llvm/include/llvm/MC/MCParser/MCAsmLexer.h stable/12/contrib/llvm/include/llvm/MC/MCParser/MCAsmParser.h stable/12/contrib/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h stable/12/contrib/llvm/include/llvm/MC/MCRegisterInfo.h stable/12/contrib/llvm/include/llvm/MC/MCSchedule.h stable/12/contrib/llvm/include/llvm/MC/MCSection.h stable/12/contrib/llvm/include/llvm/MC/MCStreamer.h stable/12/contrib/llvm/include/llvm/MC/MCSymbolWasm.h stable/12/contrib/llvm/include/llvm/MC/MCWasmObjectWriter.h stable/12/contrib/llvm/include/llvm/MC/MCWin64EH.h stable/12/contrib/llvm/include/llvm/MC/MCWinEH.h stable/12/contrib/llvm/include/llvm/Object/COFF.h stable/12/contrib/llvm/include/llvm/Object/ELF.h stable/12/contrib/llvm/include/llvm/Object/ELFObjectFile.h stable/12/contrib/llvm/include/llvm/Object/ELFTypes.h stable/12/contrib/llvm/include/llvm/Object/Error.h stable/12/contrib/llvm/include/llvm/Object/MachO.h stable/12/contrib/llvm/include/llvm/Object/ObjectFile.h stable/12/contrib/llvm/include/llvm/Object/RelocVisitor.h stable/12/contrib/llvm/include/llvm/Object/Wasm.h stable/12/contrib/llvm/include/llvm/Object/WasmTraits.h stable/12/contrib/llvm/include/llvm/ObjectYAML/COFFYAML.h stable/12/contrib/llvm/include/llvm/ObjectYAML/ELFYAML.h stable/12/contrib/llvm/include/llvm/ObjectYAML/WasmYAML.h stable/12/contrib/llvm/include/llvm/Option/OptTable.h stable/12/contrib/llvm/include/llvm/Pass.h stable/12/contrib/llvm/include/llvm/Passes/PassBuilder.h stable/12/contrib/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h stable/12/contrib/llvm/include/llvm/ProfileData/GCOV.h stable/12/contrib/llvm/include/llvm/ProfileData/InstrProf.h stable/12/contrib/llvm/include/llvm/ProfileData/InstrProfReader.h stable/12/contrib/llvm/include/llvm/ProfileData/SampleProf.h stable/12/contrib/llvm/include/llvm/ProfileData/SampleProfReader.h stable/12/contrib/llvm/include/llvm/ProfileData/SampleProfWriter.h stable/12/contrib/llvm/include/llvm/Support/AArch64TargetParser.def stable/12/contrib/llvm/include/llvm/Support/AMDGPUMetadata.h stable/12/contrib/llvm/include/llvm/Support/ARMTargetParser.def stable/12/contrib/llvm/include/llvm/Support/ARMWinEH.h stable/12/contrib/llvm/include/llvm/Support/Allocator.h stable/12/contrib/llvm/include/llvm/Support/BinaryStreamArray.h stable/12/contrib/llvm/include/llvm/Support/BinaryStreamReader.h stable/12/contrib/llvm/include/llvm/Support/Chrono.h stable/12/contrib/llvm/include/llvm/Support/CodeGen.h stable/12/contrib/llvm/include/llvm/Support/CommandLine.h stable/12/contrib/llvm/include/llvm/Support/Compiler.h stable/12/contrib/llvm/include/llvm/Support/Compression.h stable/12/contrib/llvm/include/llvm/Support/Debug.h stable/12/contrib/llvm/include/llvm/Support/DebugCounter.h stable/12/contrib/llvm/include/llvm/Support/Error.h stable/12/contrib/llvm/include/llvm/Support/ErrorHandling.h stable/12/contrib/llvm/include/llvm/Support/FileOutputBuffer.h stable/12/contrib/llvm/include/llvm/Support/FileSystem.h stable/12/contrib/llvm/include/llvm/Support/FormatVariadicDetails.h stable/12/contrib/llvm/include/llvm/Support/GenericDomTree.h stable/12/contrib/llvm/include/llvm/Support/GenericDomTreeConstruction.h stable/12/contrib/llvm/include/llvm/Support/GraphWriter.h stable/12/contrib/llvm/include/llvm/Support/JSON.h stable/12/contrib/llvm/include/llvm/Support/LowLevelTypeImpl.h stable/12/contrib/llvm/include/llvm/Support/Path.h stable/12/contrib/llvm/include/llvm/Support/ScopedPrinter.h stable/12/contrib/llvm/include/llvm/Support/TargetOpcodes.def stable/12/contrib/llvm/include/llvm/Support/TargetParser.h stable/12/contrib/llvm/include/llvm/Support/Threading.h stable/12/contrib/llvm/include/llvm/Support/Timer.h stable/12/contrib/llvm/include/llvm/Support/Win64EH.h stable/12/contrib/llvm/include/llvm/Support/WithColor.h stable/12/contrib/llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h stable/12/contrib/llvm/include/llvm/Support/X86TargetParser.def stable/12/contrib/llvm/include/llvm/Support/YAMLTraits.h stable/12/contrib/llvm/include/llvm/Support/raw_ostream.h stable/12/contrib/llvm/include/llvm/Support/type_traits.h stable/12/contrib/llvm/include/llvm/TableGen/StringMatcher.h stable/12/contrib/llvm/include/llvm/Target/CodeGenCWrappers.h stable/12/contrib/llvm/include/llvm/Target/GenericOpcodes.td stable/12/contrib/llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td stable/12/contrib/llvm/include/llvm/Target/Target.td stable/12/contrib/llvm/include/llvm/Target/TargetInstrPredicate.td stable/12/contrib/llvm/include/llvm/Target/TargetLoweringObjectFile.h stable/12/contrib/llvm/include/llvm/Target/TargetMachine.h stable/12/contrib/llvm/include/llvm/Target/TargetOptions.h stable/12/contrib/llvm/include/llvm/Target/TargetSchedule.td stable/12/contrib/llvm/include/llvm/Target/TargetSelectionDAG.td stable/12/contrib/llvm/include/llvm/Testing/Support/SupportHelpers.h stable/12/contrib/llvm/include/llvm/Transforms/IPO.h stable/12/contrib/llvm/include/llvm/Transforms/IPO/FunctionAttrs.h stable/12/contrib/llvm/include/llvm/Transforms/IPO/FunctionImport.h stable/12/contrib/llvm/include/llvm/Transforms/IPO/SampleProfile.h stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation.h stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation/PGOInstrumentation.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/GVN.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/JumpThreading.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopPassManager.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/SCCP.h stable/12/contrib/llvm/include/llvm/Transforms/Utils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/BuildLibCalls.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/Cloning.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/CodeExtractor.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/Local.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/LoopRotationUtils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/LoopUtils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/ModuleUtils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/PredicateInfo.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/UnrollLoop.h stable/12/contrib/llvm/include/llvm/Transforms/Vectorize.h stable/12/contrib/llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h stable/12/contrib/llvm/include/llvm/Transforms/Vectorize/LoopVectorize.h stable/12/contrib/llvm/include/llvm/XRay/Trace.h stable/12/contrib/llvm/include/llvm/XRay/XRayRecord.h stable/12/contrib/llvm/include/llvm/XRay/YAMLXRayRecord.h stable/12/contrib/llvm/include/llvm/module.modulemap stable/12/contrib/llvm/lib/Analysis/AliasAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp stable/12/contrib/llvm/lib/Analysis/AliasSetTracker.cpp stable/12/contrib/llvm/lib/Analysis/Analysis.cpp stable/12/contrib/llvm/lib/Analysis/BasicAliasAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/BlockFrequencyInfo.cpp stable/12/contrib/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp stable/12/contrib/llvm/lib/Analysis/BranchProbabilityInfo.cpp stable/12/contrib/llvm/lib/Analysis/CFG.cpp stable/12/contrib/llvm/lib/Analysis/CFGPrinter.cpp stable/12/contrib/llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/CFLGraph.h stable/12/contrib/llvm/lib/Analysis/CGSCCPassManager.cpp stable/12/contrib/llvm/lib/Analysis/CallGraph.cpp stable/12/contrib/llvm/lib/Analysis/CallGraphSCCPass.cpp stable/12/contrib/llvm/lib/Analysis/CaptureTracking.cpp stable/12/contrib/llvm/lib/Analysis/CmpInstAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/ConstantFolding.cpp stable/12/contrib/llvm/lib/Analysis/DemandedBits.cpp stable/12/contrib/llvm/lib/Analysis/DependenceAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/DivergenceAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/EHPersonalities.cpp stable/12/contrib/llvm/lib/Analysis/GlobalsModRef.cpp stable/12/contrib/llvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/InlineCost.cpp stable/12/contrib/llvm/lib/Analysis/InstructionSimplify.cpp stable/12/contrib/llvm/lib/Analysis/IteratedDominanceFrontier.cpp stable/12/contrib/llvm/lib/Analysis/LazyCallGraph.cpp stable/12/contrib/llvm/lib/Analysis/LazyValueInfo.cpp stable/12/contrib/llvm/lib/Analysis/Lint.cpp stable/12/contrib/llvm/lib/Analysis/Loads.cpp stable/12/contrib/llvm/lib/Analysis/LoopAccessAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/LoopAnalysisManager.cpp stable/12/contrib/llvm/lib/Analysis/LoopInfo.cpp stable/12/contrib/llvm/lib/Analysis/LoopPass.cpp stable/12/contrib/llvm/lib/Analysis/MemDepPrinter.cpp stable/12/contrib/llvm/lib/Analysis/MemoryDependenceAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/MemoryLocation.cpp stable/12/contrib/llvm/lib/Analysis/MemorySSA.cpp stable/12/contrib/llvm/lib/Analysis/MemorySSAUpdater.cpp stable/12/contrib/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/MustExecute.cpp stable/12/contrib/llvm/lib/Analysis/ObjCARCAliasAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/ObjCARCInstKind.cpp stable/12/contrib/llvm/lib/Analysis/OrderedBasicBlock.cpp stable/12/contrib/llvm/lib/Analysis/PhiValues.cpp stable/12/contrib/llvm/lib/Analysis/ProfileSummaryInfo.cpp stable/12/contrib/llvm/lib/Analysis/RegionPass.cpp stable/12/contrib/llvm/lib/Analysis/ScalarEvolution.cpp stable/12/contrib/llvm/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/ScalarEvolutionExpander.cpp stable/12/contrib/llvm/lib/Analysis/ScopedNoAliasAA.cpp stable/12/contrib/llvm/lib/Analysis/SyntheticCountsUtils.cpp stable/12/contrib/llvm/lib/Analysis/TargetLibraryInfo.cpp stable/12/contrib/llvm/lib/Analysis/TargetTransformInfo.cpp stable/12/contrib/llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/TypeMetadataUtils.cpp stable/12/contrib/llvm/lib/Analysis/ValueTracking.cpp stable/12/contrib/llvm/lib/Analysis/VectorUtils.cpp stable/12/contrib/llvm/lib/AsmParser/LLLexer.cpp stable/12/contrib/llvm/lib/AsmParser/LLParser.cpp stable/12/contrib/llvm/lib/AsmParser/LLParser.h stable/12/contrib/llvm/lib/AsmParser/LLToken.h stable/12/contrib/llvm/lib/BinaryFormat/Dwarf.cpp stable/12/contrib/llvm/lib/BinaryFormat/Magic.cpp stable/12/contrib/llvm/lib/BinaryFormat/Wasm.cpp stable/12/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp stable/12/contrib/llvm/lib/Bitcode/Reader/MetadataLoader.cpp stable/12/contrib/llvm/lib/Bitcode/Reader/MetadataLoader.h stable/12/contrib/llvm/lib/Bitcode/Reader/ValueList.cpp stable/12/contrib/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp stable/12/contrib/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp stable/12/contrib/llvm/lib/CodeGen/Analysis.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DIE.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/ErlangGCPrinter.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/OcamlGCPrinter.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/WinCFGuard.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/WinException.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/WinException.h stable/12/contrib/llvm/lib/CodeGen/AtomicExpandPass.cpp stable/12/contrib/llvm/lib/CodeGen/BranchFolding.cpp stable/12/contrib/llvm/lib/CodeGen/BreakFalseDeps.cpp stable/12/contrib/llvm/lib/CodeGen/BuiltinGCs.cpp stable/12/contrib/llvm/lib/CodeGen/CFIInstrInserter.cpp stable/12/contrib/llvm/lib/CodeGen/CalcSpillWeights.cpp stable/12/contrib/llvm/lib/CodeGen/CodeGen.cpp stable/12/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp stable/12/contrib/llvm/lib/CodeGen/DFAPacketizer.cpp stable/12/contrib/llvm/lib/CodeGen/EarlyIfConversion.cpp stable/12/contrib/llvm/lib/CodeGen/ExpandMemCmp.cpp stable/12/contrib/llvm/lib/CodeGen/ExpandPostRAPseudos.cpp stable/12/contrib/llvm/lib/CodeGen/GCMetadata.cpp stable/12/contrib/llvm/lib/CodeGen/GCRootLowering.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/CallLowering.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/Combiner.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/InstructionSelector.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/LegalityPredicates.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/RegBankSelect.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/Utils.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalMerge.cpp stable/12/contrib/llvm/lib/CodeGen/IfConversion.cpp stable/12/contrib/llvm/lib/CodeGen/ImplicitNullChecks.cpp stable/12/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp stable/12/contrib/llvm/lib/CodeGen/LatencyPriorityQueue.cpp stable/12/contrib/llvm/lib/CodeGen/LiveDebugValues.cpp stable/12/contrib/llvm/lib/CodeGen/LiveDebugVariables.cpp stable/12/contrib/llvm/lib/CodeGen/LiveDebugVariables.h stable/12/contrib/llvm/lib/CodeGen/LiveInterval.cpp stable/12/contrib/llvm/lib/CodeGen/LivePhysRegs.cpp stable/12/contrib/llvm/lib/CodeGen/LiveRangeCalc.cpp stable/12/contrib/llvm/lib/CodeGen/LocalStackSlotAllocation.cpp stable/12/contrib/llvm/lib/CodeGen/MIRCanonicalizerPass.cpp stable/12/contrib/llvm/lib/CodeGen/MIRParser/MILexer.cpp stable/12/contrib/llvm/lib/CodeGen/MIRParser/MILexer.h stable/12/contrib/llvm/lib/CodeGen/MIRParser/MIParser.cpp stable/12/contrib/llvm/lib/CodeGen/MIRParser/MIRParser.cpp stable/12/contrib/llvm/lib/CodeGen/MIRPrinter.cpp stable/12/contrib/llvm/lib/CodeGen/MachineBasicBlock.cpp stable/12/contrib/llvm/lib/CodeGen/MachineBlockPlacement.cpp stable/12/contrib/llvm/lib/CodeGen/MachineCSE.cpp stable/12/contrib/llvm/lib/CodeGen/MachineCombiner.cpp stable/12/contrib/llvm/lib/CodeGen/MachineCopyPropagation.cpp stable/12/contrib/llvm/lib/CodeGen/MachineFunction.cpp stable/12/contrib/llvm/lib/CodeGen/MachineFunctionPass.cpp stable/12/contrib/llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp stable/12/contrib/llvm/lib/CodeGen/MachineInstr.cpp stable/12/contrib/llvm/lib/CodeGen/MachineInstrBundle.cpp stable/12/contrib/llvm/lib/CodeGen/MachineLICM.cpp stable/12/contrib/llvm/lib/CodeGen/MachineModuleInfo.cpp stable/12/contrib/llvm/lib/CodeGen/MachineModuleInfoImpls.cpp stable/12/contrib/llvm/lib/CodeGen/MachineOperand.cpp stable/12/contrib/llvm/lib/CodeGen/MachineOutliner.cpp stable/12/contrib/llvm/lib/CodeGen/MachinePipeliner.cpp stable/12/contrib/llvm/lib/CodeGen/MachineRegisterInfo.cpp stable/12/contrib/llvm/lib/CodeGen/MachineScheduler.cpp stable/12/contrib/llvm/lib/CodeGen/MachineSink.cpp stable/12/contrib/llvm/lib/CodeGen/MachineTraceMetrics.cpp stable/12/contrib/llvm/lib/CodeGen/MachineVerifier.cpp stable/12/contrib/llvm/lib/CodeGen/MacroFusion.cpp stable/12/contrib/llvm/lib/CodeGen/OptimizePHIs.cpp stable/12/contrib/llvm/lib/CodeGen/PHIElimination.cpp stable/12/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp stable/12/contrib/llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp stable/12/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp stable/12/contrib/llvm/lib/CodeGen/PseudoSourceValue.cpp stable/12/contrib/llvm/lib/CodeGen/ReachingDefAnalysis.cpp stable/12/contrib/llvm/lib/CodeGen/RegAllocFast.cpp stable/12/contrib/llvm/lib/CodeGen/RegAllocGreedy.cpp stable/12/contrib/llvm/lib/CodeGen/RegUsageInfoCollector.cpp stable/12/contrib/llvm/lib/CodeGen/RegisterCoalescer.cpp stable/12/contrib/llvm/lib/CodeGen/RegisterPressure.cpp stable/12/contrib/llvm/lib/CodeGen/RegisterUsageInfo.cpp stable/12/contrib/llvm/lib/CodeGen/SafeStack.cpp stable/12/contrib/llvm/lib/CodeGen/SafeStackColoring.cpp stable/12/contrib/llvm/lib/CodeGen/ScalarizeMaskedMemIntrin.cpp stable/12/contrib/llvm/lib/CodeGen/ScheduleDAG.cpp stable/12/contrib/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp stable/12/contrib/llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGVLIW.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGAddressAnalysis.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp stable/12/contrib/llvm/lib/CodeGen/SlotIndexes.cpp stable/12/contrib/llvm/lib/CodeGen/SplitKit.h stable/12/contrib/llvm/lib/CodeGen/StackColoring.cpp stable/12/contrib/llvm/lib/CodeGen/StackMaps.cpp stable/12/contrib/llvm/lib/CodeGen/StackProtector.cpp stable/12/contrib/llvm/lib/CodeGen/StackSlotColoring.cpp stable/12/contrib/llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp stable/12/contrib/llvm/lib/CodeGen/TargetInstrInfo.cpp stable/12/contrib/llvm/lib/CodeGen/TargetLoweringBase.cpp stable/12/contrib/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp stable/12/contrib/llvm/lib/CodeGen/TargetOptionsImpl.cpp stable/12/contrib/llvm/lib/CodeGen/TargetPassConfig.cpp stable/12/contrib/llvm/lib/CodeGen/TargetRegisterInfo.cpp stable/12/contrib/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp stable/12/contrib/llvm/lib/CodeGen/VirtRegMap.cpp stable/12/contrib/llvm/lib/CodeGen/WasmEHPrepare.cpp stable/12/contrib/llvm/lib/CodeGen/WinEHPrepare.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/CVSymbolVisitor.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/CodeViewError.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugCrossImpSubsection.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugFrameDataSubsection.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugStringTableSubsection.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/EnumTables.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeIndex.cpp stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAddr.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAranges.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugPubTable.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRangeList.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFExpression.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFFormValue.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFGdbIndex.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFListTable.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFUnitIndex.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp stable/12/contrib/llvm/lib/DebugInfo/MSF/MSFError.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIADataStream.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumDebugStreams.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumInjectedSources.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumLineNumbers.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSectionContribs.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSourceFiles.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSymbols.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumTables.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAError.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIARawSymbol.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASectionContrib.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASession.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASourceFile.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIATable.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/GenericError.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/DbiStream.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/DbiStreamBuilder.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/GlobalsStream.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/InfoStreamBuilder.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/ModuleDebugStream.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeCompilandSymbol.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumModules.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumTypes.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeExeSymbol.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeRawSymbol.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/RawError.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/TpiHashing.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/TpiStream.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDB.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBExtras.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBInterfaceAnchors.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbol.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolAnnotation.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolBlock.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompilandDetails.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCustom.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolData.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolExe.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFunc.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFuncDebugEnd.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFuncDebugStart.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolLabel.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolPublicSymbol.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolThunk.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeArray.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeBaseClass.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeBuiltin.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeCustom.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeDimension.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeEnum.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFriend.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionArg.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeManaged.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypePointer.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeTypedef.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeUDT.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeVTable.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeVTableShape.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolUnknown.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolUsingNamespace.cpp stable/12/contrib/llvm/lib/DebugInfo/Symbolize/Symbolize.cpp stable/12/contrib/llvm/lib/Demangle/ItaniumDemangle.cpp stable/12/contrib/llvm/lib/Demangle/MicrosoftDemangle.cpp stable/12/contrib/llvm/lib/ExecutionEngine/GDBRegistrationListener.cpp stable/12/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp stable/12/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp stable/12/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h stable/12/contrib/llvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/Core.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/IRCompileLayer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/IRTransformLayer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/LLJIT.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/Layer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/Legacy.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/NullResolver.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/ObjectTransformLayer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcABISupport.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcCBindings.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.h stable/12/contrib/llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/PerfJITEvents/PerfJITEventListener.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/JITSymbol.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCheckerImpl.h stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFThumb.h stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOARM.h stable/12/contrib/llvm/lib/FuzzMutate/IRMutator.cpp stable/12/contrib/llvm/lib/FuzzMutate/RandomIRBuilder.cpp stable/12/contrib/llvm/lib/IR/AsmWriter.cpp stable/12/contrib/llvm/lib/IR/Attributes.cpp stable/12/contrib/llvm/lib/IR/AutoUpgrade.cpp stable/12/contrib/llvm/lib/IR/BasicBlock.cpp stable/12/contrib/llvm/lib/IR/ConstantFold.cpp stable/12/contrib/llvm/lib/IR/Constants.cpp stable/12/contrib/llvm/lib/IR/ConstantsContext.h stable/12/contrib/llvm/lib/IR/Core.cpp stable/12/contrib/llvm/lib/IR/DIBuilder.cpp stable/12/contrib/llvm/lib/IR/DataLayout.cpp stable/12/contrib/llvm/lib/IR/DebugInfo.cpp stable/12/contrib/llvm/lib/IR/DebugInfoMetadata.cpp stable/12/contrib/llvm/lib/IR/DebugLoc.cpp stable/12/contrib/llvm/lib/IR/DiagnosticInfo.cpp stable/12/contrib/llvm/lib/IR/DomTreeUpdater.cpp stable/12/contrib/llvm/lib/IR/Dominators.cpp stable/12/contrib/llvm/lib/IR/Function.cpp stable/12/contrib/llvm/lib/IR/Globals.cpp stable/12/contrib/llvm/lib/IR/IRBuilder.cpp stable/12/contrib/llvm/lib/IR/IRPrintingPasses.cpp stable/12/contrib/llvm/lib/IR/Instruction.cpp stable/12/contrib/llvm/lib/IR/Instructions.cpp stable/12/contrib/llvm/lib/IR/IntrinsicInst.cpp stable/12/contrib/llvm/lib/IR/LLVMContext.cpp stable/12/contrib/llvm/lib/IR/LLVMContextImpl.h stable/12/contrib/llvm/lib/IR/LegacyPassManager.cpp stable/12/contrib/llvm/lib/IR/MDBuilder.cpp stable/12/contrib/llvm/lib/IR/Metadata.cpp stable/12/contrib/llvm/lib/IR/Module.cpp stable/12/contrib/llvm/lib/IR/ModuleSummaryIndex.cpp stable/12/contrib/llvm/lib/IR/SafepointIRVerifier.cpp stable/12/contrib/llvm/lib/IR/Type.cpp stable/12/contrib/llvm/lib/IR/Value.cpp stable/12/contrib/llvm/lib/IR/Verifier.cpp stable/12/contrib/llvm/lib/LTO/LTO.cpp stable/12/contrib/llvm/lib/LTO/LTOBackend.cpp stable/12/contrib/llvm/lib/LTO/LTOCodeGenerator.cpp stable/12/contrib/llvm/lib/LTO/LTOModule.cpp stable/12/contrib/llvm/lib/LTO/ThinLTOCodeGenerator.cpp stable/12/contrib/llvm/lib/LTO/UpdateCompilerUsed.cpp stable/12/contrib/llvm/lib/Linker/IRMover.cpp stable/12/contrib/llvm/lib/MC/ConstantPools.cpp stable/12/contrib/llvm/lib/MC/ELFObjectWriter.cpp stable/12/contrib/llvm/lib/MC/MCAsmInfoCOFF.cpp stable/12/contrib/llvm/lib/MC/MCAsmInfoWasm.cpp stable/12/contrib/llvm/lib/MC/MCAsmStreamer.cpp stable/12/contrib/llvm/lib/MC/MCAssembler.cpp stable/12/contrib/llvm/lib/MC/MCCodeView.cpp stable/12/contrib/llvm/lib/MC/MCContext.cpp stable/12/contrib/llvm/lib/MC/MCDwarf.cpp stable/12/contrib/llvm/lib/MC/MCELFObjectTargetWriter.cpp stable/12/contrib/llvm/lib/MC/MCExpr.cpp stable/12/contrib/llvm/lib/MC/MCFragment.cpp stable/12/contrib/llvm/lib/MC/MCInst.cpp stable/12/contrib/llvm/lib/MC/MCInstrAnalysis.cpp stable/12/contrib/llvm/lib/MC/MCInstrDesc.cpp stable/12/contrib/llvm/lib/MC/MCMachOStreamer.cpp stable/12/contrib/llvm/lib/MC/MCNullStreamer.cpp stable/12/contrib/llvm/lib/MC/MCObjectFileInfo.cpp stable/12/contrib/llvm/lib/MC/MCObjectStreamer.cpp stable/12/contrib/llvm/lib/MC/MCParser/AsmLexer.cpp stable/12/contrib/llvm/lib/MC/MCParser/AsmParser.cpp stable/12/contrib/llvm/lib/MC/MCParser/DarwinAsmParser.cpp stable/12/contrib/llvm/lib/MC/MCParser/ELFAsmParser.cpp stable/12/contrib/llvm/lib/MC/MCParser/MCAsmLexer.cpp stable/12/contrib/llvm/lib/MC/MCParser/MCAsmParser.cpp stable/12/contrib/llvm/lib/MC/MCRegisterInfo.cpp stable/12/contrib/llvm/lib/MC/MCSection.cpp stable/12/contrib/llvm/lib/MC/MCSectionELF.cpp stable/12/contrib/llvm/lib/MC/MCStreamer.cpp stable/12/contrib/llvm/lib/MC/MCWasmStreamer.cpp stable/12/contrib/llvm/lib/MC/MCWin64EH.cpp stable/12/contrib/llvm/lib/MC/MachObjectWriter.cpp stable/12/contrib/llvm/lib/MC/WasmObjectWriter.cpp stable/12/contrib/llvm/lib/MC/WinCOFFObjectWriter.cpp stable/12/contrib/llvm/lib/Object/ArchiveWriter.cpp stable/12/contrib/llvm/lib/Object/Binary.cpp stable/12/contrib/llvm/lib/Object/COFFObjectFile.cpp stable/12/contrib/llvm/lib/Object/ELF.cpp stable/12/contrib/llvm/lib/Object/ELFObjectFile.cpp stable/12/contrib/llvm/lib/Object/Error.cpp stable/12/contrib/llvm/lib/Object/MachOObjectFile.cpp stable/12/contrib/llvm/lib/Object/ModuleSymbolTable.cpp stable/12/contrib/llvm/lib/Object/Object.cpp stable/12/contrib/llvm/lib/Object/ObjectFile.cpp stable/12/contrib/llvm/lib/Object/WasmObjectFile.cpp stable/12/contrib/llvm/lib/Object/WindowsResource.cpp stable/12/contrib/llvm/lib/ObjectYAML/COFFYAML.cpp stable/12/contrib/llvm/lib/ObjectYAML/CodeViewYAMLDebugSections.cpp stable/12/contrib/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp stable/12/contrib/llvm/lib/ObjectYAML/ELFYAML.cpp stable/12/contrib/llvm/lib/ObjectYAML/WasmYAML.cpp stable/12/contrib/llvm/lib/Option/OptTable.cpp stable/12/contrib/llvm/lib/Passes/PassBuilder.cpp stable/12/contrib/llvm/lib/Passes/PassRegistry.def stable/12/contrib/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp stable/12/contrib/llvm/lib/ProfileData/GCOV.cpp stable/12/contrib/llvm/lib/ProfileData/InstrProf.cpp stable/12/contrib/llvm/lib/ProfileData/InstrProfReader.cpp stable/12/contrib/llvm/lib/ProfileData/ProfileSummaryBuilder.cpp stable/12/contrib/llvm/lib/ProfileData/SampleProf.cpp stable/12/contrib/llvm/lib/ProfileData/SampleProfReader.cpp stable/12/contrib/llvm/lib/ProfileData/SampleProfWriter.cpp stable/12/contrib/llvm/lib/Support/APInt.cpp stable/12/contrib/llvm/lib/Support/BinaryStreamError.cpp stable/12/contrib/llvm/lib/Support/COM.cpp stable/12/contrib/llvm/lib/Support/CachePruning.cpp stable/12/contrib/llvm/lib/Support/CodeGenCoverage.cpp stable/12/contrib/llvm/lib/Support/CommandLine.cpp stable/12/contrib/llvm/lib/Support/Compression.cpp stable/12/contrib/llvm/lib/Support/DebugCounter.cpp stable/12/contrib/llvm/lib/Support/Error.cpp stable/12/contrib/llvm/lib/Support/FileOutputBuffer.cpp stable/12/contrib/llvm/lib/Support/FoldingSet.cpp stable/12/contrib/llvm/lib/Support/FormatVariadic.cpp stable/12/contrib/llvm/lib/Support/Hashing.cpp stable/12/contrib/llvm/lib/Support/Host.cpp stable/12/contrib/llvm/lib/Support/JSON.cpp stable/12/contrib/llvm/lib/Support/Locale.cpp stable/12/contrib/llvm/lib/Support/LockFileManager.cpp stable/12/contrib/llvm/lib/Support/Path.cpp stable/12/contrib/llvm/lib/Support/Process.cpp stable/12/contrib/llvm/lib/Support/RandomNumberGenerator.cpp stable/12/contrib/llvm/lib/Support/Signals.cpp stable/12/contrib/llvm/lib/Support/SourceMgr.cpp stable/12/contrib/llvm/lib/Support/StringSaver.cpp stable/12/contrib/llvm/lib/Support/TargetParser.cpp stable/12/contrib/llvm/lib/Support/TargetRegistry.cpp stable/12/contrib/llvm/lib/Support/Timer.cpp stable/12/contrib/llvm/lib/Support/Triple.cpp stable/12/contrib/llvm/lib/Support/Unix/Path.inc stable/12/contrib/llvm/lib/Support/Unix/Signals.inc stable/12/contrib/llvm/lib/Support/Unix/Threading.inc stable/12/contrib/llvm/lib/Support/Windows/Path.inc stable/12/contrib/llvm/lib/Support/Windows/Process.inc stable/12/contrib/llvm/lib/Support/Windows/Program.inc stable/12/contrib/llvm/lib/Support/Windows/Threading.inc stable/12/contrib/llvm/lib/Support/Windows/WindowsSupport.h stable/12/contrib/llvm/lib/Support/WithColor.cpp stable/12/contrib/llvm/lib/Support/YAMLTraits.cpp stable/12/contrib/llvm/lib/Support/raw_ostream.cpp stable/12/contrib/llvm/lib/TableGen/Main.cpp stable/12/contrib/llvm/lib/TableGen/Record.cpp stable/12/contrib/llvm/lib/TableGen/TGLexer.cpp stable/12/contrib/llvm/lib/TableGen/TGLexer.h stable/12/contrib/llvm/lib/TableGen/TGParser.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64A57FPLoadBalancing.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64CallLowering.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64CallLowering.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64CallingConvention.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64FastISel.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstrFormats.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64LegalizerInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64LegalizerInfo.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64MCInstLower.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64MacroFusion.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64RegisterBankInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM1.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM3.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64Schedule.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64SystemOperands.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h stable/12/contrib/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp stable/12/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp stable/12/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp stable/12/contrib/llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp stable/12/contrib/llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.h stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.h stable/12/contrib/llvm/lib/Target/AArch64/SVEInstrFormats.td stable/12/contrib/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPU.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPU.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAliasAnalysis.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAliasAnalysis.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAlwaysInlinePass.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAnnotateKernelFeatures.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUGISel.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUGenRegisterBankInfo.def stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInline.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMacroFusion.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUPTNote.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBanks.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/BUFInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/DSInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/FLATInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/GCNILPSched.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/GCNMinRegStrategy.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/GCNProcessors.td stable/12/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.h stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h stable/12/contrib/llvm/lib/Target/AMDGPU/MIMGInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/R600EmitClauseMarkers.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/R600ISelLowering.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/R600InstrInfo.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/R600InstrInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/R600Instructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/R600MachineScheduler.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIDefines.h stable/12/contrib/llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIFixWWMLiveness.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.h stable/12/contrib/llvm/lib/Target/AMDGPU/SIInsertSkips.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIInstrFormats.td stable/12/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.td stable/12/contrib/llvm/lib/Target/AMDGPU/SIInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/SIIntrinsics.td stable/12/contrib/llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIMachineScheduler.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.td stable/12/contrib/llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SMInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/SOPInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/VOP1Instructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/VOP2Instructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/VOP3Instructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/VOP3PInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/VOPCInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/VOPInstructions.td stable/12/contrib/llvm/lib/Target/ARC/ARCTargetMachine.cpp stable/12/contrib/llvm/lib/Target/ARC/InstPrinter/ARCInstPrinter.cpp stable/12/contrib/llvm/lib/Target/ARM/ARM.td stable/12/contrib/llvm/lib/Target/ARM/ARMAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.h stable/12/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.h stable/12/contrib/llvm/lib/Target/ARM/ARMCallLowering.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMCallLowering.h stable/12/contrib/llvm/lib/Target/ARM/ARMCodeGenPrepare.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMFastISel.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMFrameLowering.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMFrameLowering.h stable/12/contrib/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMISelLowering.h stable/12/contrib/llvm/lib/Target/ARM/ARMInstrFormats.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstrInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMInstrInfo.h stable/12/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstrNEON.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstrThumb.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstrThumb2.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstrVFP.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstructionSelector.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMLegalizerInfo.h stable/12/contrib/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMMacroFusion.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMMacroFusion.h stable/12/contrib/llvm/lib/Target/ARM/ARMParallelDSP.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMSubtarget.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMSubtarget.h stable/12/contrib/llvm/lib/Target/ARM/ARMTargetMachine.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMTargetObjectFile.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMTargetTransformInfo.h stable/12/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp stable/12/contrib/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAddressingModes.h stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMBaseInfo.h stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/ARM/Thumb2InstrInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/Thumb2SizeReduction.cpp stable/12/contrib/llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp stable/12/contrib/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/AVR/AVRISelLowering.cpp stable/12/contrib/llvm/lib/Target/AVR/AVRInstrInfo.td stable/12/contrib/llvm/lib/Target/AVR/AVRRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/AVR/AVRRegisterInfo.td stable/12/contrib/llvm/lib/Target/AVR/AVRTargetMachine.cpp stable/12/contrib/llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp stable/12/contrib/llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp stable/12/contrib/llvm/lib/Target/BPF/BPF.h stable/12/contrib/llvm/lib/Target/BPF/BPFAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/BPF/BPFRegisterInfo.h stable/12/contrib/llvm/lib/Target/BPF/BPFTargetMachine.cpp stable/12/contrib/llvm/lib/Target/BPF/Disassembler/BPFDisassembler.cpp stable/12/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFMCAsmInfo.h stable/12/contrib/llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp stable/12/contrib/llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp stable/12/contrib/llvm/lib/Target/Hexagon/Hexagon.h stable/12/contrib/llvm/lib/Target/Hexagon/Hexagon.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonBitTracker.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonCopyToCombine.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepArch.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepArch.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepIICHVX.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepIICScalar.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepITypes.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepITypes.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepInstrFormats.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepInstrInfo.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepMappings.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepOperands.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepTimingClasses.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonFrameLowering.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonGenInsert.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormats.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsics.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsicsV5.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonPatterns.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonPseudo.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonSchedule.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV60.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV62.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV65.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonSplitConst32AndConst64.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonStoreWidening.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.h stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.cpp stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.h stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCDuplexInfo.cpp stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.cpp stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.h stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonShuffler.cpp stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonShuffler.h stable/12/contrib/llvm/lib/Target/Hexagon/RDFDeadCode.cpp stable/12/contrib/llvm/lib/Target/Hexagon/RDFGraph.cpp stable/12/contrib/llvm/lib/Target/Hexagon/RDFLiveness.cpp stable/12/contrib/llvm/lib/Target/Lanai/LanaiISelLowering.cpp stable/12/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.cpp stable/12/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.h stable/12/contrib/llvm/lib/Target/Lanai/LanaiMemAluCombiner.cpp stable/12/contrib/llvm/lib/Target/Lanai/LanaiTargetMachine.cpp stable/12/contrib/llvm/lib/Target/MSP430/InstPrinter/MSP430InstPrinter.cpp stable/12/contrib/llvm/lib/Target/MSP430/InstPrinter/MSP430InstPrinter.h stable/12/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCAsmInfo.cpp stable/12/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.h stable/12/contrib/llvm/lib/Target/MSP430/MSP430.h stable/12/contrib/llvm/lib/Target/MSP430/MSP430.td stable/12/contrib/llvm/lib/Target/MSP430/MSP430AsmPrinter.cpp stable/12/contrib/llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/MSP430/MSP430ISelLowering.cpp stable/12/contrib/llvm/lib/Target/MSP430/MSP430ISelLowering.h stable/12/contrib/llvm/lib/Target/MSP430/MSP430InstrFormats.td stable/12/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.cpp stable/12/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.h stable/12/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.td stable/12/contrib/llvm/lib/Target/MSP430/MSP430MCInstLower.cpp stable/12/contrib/llvm/lib/Target/MSP430/MSP430RegisterInfo.td stable/12/contrib/llvm/lib/Target/MSP430/MSP430TargetMachine.cpp stable/12/contrib/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp stable/12/contrib/llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsBaseInfo.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsFixupKinds.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/Mips/MicroMips32r6InstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MicroMipsInstrFPU.td stable/12/contrib/llvm/lib/Target/Mips/MicroMipsInstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/MicroMipsInstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MicroMipsSizeReduction.cpp stable/12/contrib/llvm/lib/Target/Mips/Mips.h stable/12/contrib/llvm/lib/Target/Mips/Mips16HardFloat.cpp stable/12/contrib/llvm/lib/Target/Mips/Mips16ISelLowering.cpp stable/12/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.h stable/12/contrib/llvm/lib/Target/Mips/Mips32r6InstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/Mips32r6InstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/Mips64InstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MipsAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsAsmPrinter.h stable/12/contrib/llvm/lib/Target/Mips/MipsBranchExpansion.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsCCState.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsCallLowering.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsCallLowering.h stable/12/contrib/llvm/lib/Target/Mips/MipsCondMov.td stable/12/contrib/llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsFastISel.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsISelLowering.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsISelLowering.h stable/12/contrib/llvm/lib/Target/Mips/MipsInstrFPU.td stable/12/contrib/llvm/lib/Target/Mips/MipsInstrInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsInstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MipsInstructionSelector.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.h stable/12/contrib/llvm/lib/Target/Mips/MipsMCInstLower.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsMSAInstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.h stable/12/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.td stable/12/contrib/llvm/lib/Target/Mips/MipsSEISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsSEISelLowering.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.h stable/12/contrib/llvm/lib/Target/Mips/MipsSchedule.td stable/12/contrib/llvm/lib/Target/Mips/MipsScheduleGeneric.td stable/12/contrib/llvm/lib/Target/Mips/MipsSubtarget.h stable/12/contrib/llvm/lib/Target/Mips/MipsTargetMachine.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsTargetObjectFile.cpp stable/12/contrib/llvm/lib/Target/Mips/TargetInfo/MipsTargetInfo.cpp stable/12/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTX.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTX.td stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXAllocaHoisting.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.td stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXPrologEpilogPass.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h stable/12/contrib/llvm/lib/Target/NVPTX/NVVMReflect.cpp stable/12/contrib/llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp stable/12/contrib/llvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp stable/12/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h stable/12/contrib/llvm/lib/Target/PowerPC/P9InstrResources.td stable/12/contrib/llvm/lib/Target/PowerPC/PPC.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCCallingConv.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCExpandISEL.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCFastISel.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCHazardRecognizers.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrAltivec.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrFormats.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrHTM.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrQPX.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrSPE.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrVSX.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCPreEmitPeephole.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCSchedule.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCSchedule440.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleA2.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500mc.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleE5500.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleG3.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleG4.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleG4Plus.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleG5.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleP7.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleP8.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleP9.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h stable/12/contrib/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp stable/12/contrib/llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp stable/12/contrib/llvm/lib/Target/RISCV/InstPrinter/RISCVInstPrinter.cpp stable/12/contrib/llvm/lib/Target/RISCV/InstPrinter/RISCVInstPrinter.h stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h stable/12/contrib/llvm/lib/Target/RISCV/RISCV.h stable/12/contrib/llvm/lib/Target/RISCV/RISCV.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVFrameLowering.cpp stable/12/contrib/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/RISCV/RISCVISelLowering.cpp stable/12/contrib/llvm/lib/Target/RISCV/RISCVISelLowering.h stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrFormats.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrFormatsC.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfo.cpp stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfo.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoA.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoC.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoD.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoF.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoM.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp stable/12/contrib/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp stable/12/contrib/llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp stable/12/contrib/llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp stable/12/contrib/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp stable/12/contrib/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.h stable/12/contrib/llvm/lib/Target/Sparc/LeonFeatures.td stable/12/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp stable/12/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp stable/12/contrib/llvm/lib/Target/Sparc/Sparc.td stable/12/contrib/llvm/lib/Target/Sparc/SparcAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/Sparc/SparcISelLowering.cpp stable/12/contrib/llvm/lib/Target/Sparc/SparcISelLowering.h stable/12/contrib/llvm/lib/Target/Sparc/SparcInstr64Bit.td stable/12/contrib/llvm/lib/Target/Sparc/SparcInstrAliases.td stable/12/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.td stable/12/contrib/llvm/lib/Target/Sparc/SparcRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/Sparc/SparcRegisterInfo.h stable/12/contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp stable/12/contrib/llvm/lib/Target/Sparc/SparcSubtarget.h stable/12/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.cpp stable/12/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.h stable/12/contrib/llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZElimCompare.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZHazardRecognizer.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.h stable/12/contrib/llvm/lib/Target/SystemZ/SystemZInstrFP.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZInstrFormats.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.h stable/12/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZInstrVector.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZOperators.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.h stable/12/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZSchedule.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ13.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ14.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ196.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZEC12.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZSubtarget.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZSubtarget.h stable/12/contrib/llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h stable/12/contrib/llvm/lib/Target/TargetLoweringObjectFile.cpp stable/12/contrib/llvm/lib/Target/TargetMachine.cpp stable/12/contrib/llvm/lib/Target/TargetMachineC.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.h stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyAsmBackend.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyFixupKinds.h stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.h stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/README.txt stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssembly.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssembly.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCallIndirectFixup.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISD.def stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrCall.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrControl.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrConv.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrExceptRef.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrFormats.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInteger.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrMemory.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerBrUnless.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerGlobalDtors.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyOptimizeLiveIntervals.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyOptimizeReturned.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyPrepareForLiveIntervals.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegColoring.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyReplacePhysRegs.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp stable/12/contrib/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp stable/12/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.h stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.h stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86TargetStreamer.h stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/X86/ShadowCallStack.cpp stable/12/contrib/llvm/lib/Target/X86/Utils/X86ShuffleDecode.cpp stable/12/contrib/llvm/lib/Target/X86/Utils/X86ShuffleDecode.h stable/12/contrib/llvm/lib/Target/X86/X86.h stable/12/contrib/llvm/lib/Target/X86/X86.td stable/12/contrib/llvm/lib/Target/X86/X86AsmPrinter.cpp stable/12/contrib/llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp stable/12/contrib/llvm/lib/Target/X86/X86CallFrameOptimization.cpp stable/12/contrib/llvm/lib/Target/X86/X86CallLowering.cpp stable/12/contrib/llvm/lib/Target/X86/X86CallLowering.h stable/12/contrib/llvm/lib/Target/X86/X86CallingConv.td stable/12/contrib/llvm/lib/Target/X86/X86CmovConversion.cpp stable/12/contrib/llvm/lib/Target/X86/X86DomainReassignment.cpp stable/12/contrib/llvm/lib/Target/X86/X86FastISel.cpp stable/12/contrib/llvm/lib/Target/X86/X86FixupBWInsts.cpp stable/12/contrib/llvm/lib/Target/X86/X86FixupLEAs.cpp stable/12/contrib/llvm/lib/Target/X86/X86FlagsCopyLowering.cpp stable/12/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp stable/12/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp stable/12/contrib/llvm/lib/Target/X86/X86ISelLowering.h stable/12/contrib/llvm/lib/Target/X86/X86Instr3DNow.td stable/12/contrib/llvm/lib/Target/X86/X86InstrAVX512.td stable/12/contrib/llvm/lib/Target/X86/X86InstrArithmetic.td stable/12/contrib/llvm/lib/Target/X86/X86InstrCMovSetCC.td stable/12/contrib/llvm/lib/Target/X86/X86InstrCompiler.td stable/12/contrib/llvm/lib/Target/X86/X86InstrControl.td stable/12/contrib/llvm/lib/Target/X86/X86InstrExtension.td stable/12/contrib/llvm/lib/Target/X86/X86InstrFMA.td stable/12/contrib/llvm/lib/Target/X86/X86InstrFPStack.td stable/12/contrib/llvm/lib/Target/X86/X86InstrFragmentsSIMD.td stable/12/contrib/llvm/lib/Target/X86/X86InstrInfo.cpp stable/12/contrib/llvm/lib/Target/X86/X86InstrInfo.h stable/12/contrib/llvm/lib/Target/X86/X86InstrInfo.td stable/12/contrib/llvm/lib/Target/X86/X86InstrMMX.td stable/12/contrib/llvm/lib/Target/X86/X86InstrSSE.td stable/12/contrib/llvm/lib/Target/X86/X86InstrShiftRotate.td stable/12/contrib/llvm/lib/Target/X86/X86InstrVecCompiler.td stable/12/contrib/llvm/lib/Target/X86/X86InstrXOP.td stable/12/contrib/llvm/lib/Target/X86/X86InstructionSelector.cpp stable/12/contrib/llvm/lib/Target/X86/X86InterleavedAccess.cpp stable/12/contrib/llvm/lib/Target/X86/X86IntrinsicsInfo.h stable/12/contrib/llvm/lib/Target/X86/X86LegalizerInfo.cpp stable/12/contrib/llvm/lib/Target/X86/X86MCInstLower.cpp stable/12/contrib/llvm/lib/Target/X86/X86MacroFusion.cpp stable/12/contrib/llvm/lib/Target/X86/X86MacroFusion.h stable/12/contrib/llvm/lib/Target/X86/X86OptimizeLEAs.cpp stable/12/contrib/llvm/lib/Target/X86/X86PfmCounters.td stable/12/contrib/llvm/lib/Target/X86/X86RegisterBankInfo.cpp stable/12/contrib/llvm/lib/Target/X86/X86RegisterInfo.td stable/12/contrib/llvm/lib/Target/X86/X86RetpolineThunks.cpp stable/12/contrib/llvm/lib/Target/X86/X86SchedBroadwell.td stable/12/contrib/llvm/lib/Target/X86/X86SchedHaswell.td stable/12/contrib/llvm/lib/Target/X86/X86SchedPredicates.td stable/12/contrib/llvm/lib/Target/X86/X86SchedSandyBridge.td stable/12/contrib/llvm/lib/Target/X86/X86SchedSkylakeClient.td stable/12/contrib/llvm/lib/Target/X86/X86SchedSkylakeServer.td stable/12/contrib/llvm/lib/Target/X86/X86Schedule.td stable/12/contrib/llvm/lib/Target/X86/X86ScheduleAtom.td stable/12/contrib/llvm/lib/Target/X86/X86ScheduleBtVer2.td stable/12/contrib/llvm/lib/Target/X86/X86ScheduleSLM.td stable/12/contrib/llvm/lib/Target/X86/X86ScheduleZnver1.td stable/12/contrib/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp stable/12/contrib/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp stable/12/contrib/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.h stable/12/contrib/llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp stable/12/contrib/llvm/lib/Target/X86/X86Subtarget.cpp stable/12/contrib/llvm/lib/Target/X86/X86Subtarget.h stable/12/contrib/llvm/lib/Target/X86/X86TargetMachine.cpp stable/12/contrib/llvm/lib/Target/X86/X86TargetMachine.h stable/12/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.h stable/12/contrib/llvm/lib/Target/X86/X86WinEHState.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreFrameLowering.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreISelLowering.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreRegisterInfo.h stable/12/contrib/llvm/lib/Target/XCore/XCoreTargetMachine.cpp stable/12/contrib/llvm/lib/ToolDrivers/llvm-dlltool/DlltoolDriver.cpp stable/12/contrib/llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp stable/12/contrib/llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp stable/12/contrib/llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombineInternal.h stable/12/contrib/llvm/lib/Transforms/Coroutines/CoroElide.cpp stable/12/contrib/llvm/lib/Transforms/Coroutines/CoroFrame.cpp stable/12/contrib/llvm/lib/Transforms/Coroutines/CoroSplit.cpp stable/12/contrib/llvm/lib/Transforms/Coroutines/Coroutines.cpp stable/12/contrib/llvm/lib/Transforms/IPO/AlwaysInliner.cpp stable/12/contrib/llvm/lib/Transforms/IPO/ArgumentPromotion.cpp stable/12/contrib/llvm/lib/Transforms/IPO/CalledValuePropagation.cpp stable/12/contrib/llvm/lib/Transforms/IPO/ConstantMerge.cpp stable/12/contrib/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp stable/12/contrib/llvm/lib/Transforms/IPO/ExtractGV.cpp stable/12/contrib/llvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp stable/12/contrib/llvm/lib/Transforms/IPO/FunctionAttrs.cpp stable/12/contrib/llvm/lib/Transforms/IPO/FunctionImport.cpp stable/12/contrib/llvm/lib/Transforms/IPO/GlobalDCE.cpp stable/12/contrib/llvm/lib/Transforms/IPO/GlobalOpt.cpp stable/12/contrib/llvm/lib/Transforms/IPO/IPO.cpp stable/12/contrib/llvm/lib/Transforms/IPO/Inliner.cpp stable/12/contrib/llvm/lib/Transforms/IPO/LoopExtractor.cpp stable/12/contrib/llvm/lib/Transforms/IPO/LowerTypeTests.cpp stable/12/contrib/llvm/lib/Transforms/IPO/MergeFunctions.cpp stable/12/contrib/llvm/lib/Transforms/IPO/PartialInlining.cpp stable/12/contrib/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp stable/12/contrib/llvm/lib/Transforms/IPO/PruneEH.cpp stable/12/contrib/llvm/lib/Transforms/IPO/SCCP.cpp stable/12/contrib/llvm/lib/Transforms/IPO/SampleProfile.cpp stable/12/contrib/llvm/lib/Transforms/IPO/SyntheticCountsPropagation.cpp stable/12/contrib/llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp stable/12/contrib/llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineInternal.h stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/CFGMST.h stable/12/contrib/llvm/lib/Transforms/Instrumentation/CGProfile.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/EfficiencySanitizer.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/Instrumentation.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp stable/12/contrib/llvm/lib/Transforms/ObjCARC/ARCRuntimeEntryPoints.h stable/12/contrib/llvm/lib/Transforms/ObjCARC/DependencyAnalysis.cpp stable/12/contrib/llvm/lib/Transforms/ObjCARC/ObjCARC.h stable/12/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp stable/12/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/ADCE.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/BDCE.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/CallSiteSplitting.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/ConstantHoisting.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/ConstantProp.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/DCE.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/DivRemPairs.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/EarlyCSE.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/GVN.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/GVNHoist.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/GVNSink.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/GuardWidening.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LICM.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopDistribute.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopInstSimplify.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopInterchange.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopPassManager.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopPredication.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopRotation.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopSink.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopVersioningLICM.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LowerGuardIntrinsic.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/MergeICmps.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/NewGVN.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/Reassociate.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/SCCP.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/SROA.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/Scalar.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/Scalarizer.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/Sink.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/SpeculateAroundPHIs.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/StructurizeCFG.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp stable/12/contrib/llvm/lib/Transforms/Utils/AddDiscriminators.cpp stable/12/contrib/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp stable/12/contrib/llvm/lib/Transforms/Utils/BuildLibCalls.cpp stable/12/contrib/llvm/lib/Transforms/Utils/CallPromotionUtils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/CloneFunction.cpp stable/12/contrib/llvm/lib/Transforms/Utils/CloneModule.cpp stable/12/contrib/llvm/lib/Transforms/Utils/CodeExtractor.cpp stable/12/contrib/llvm/lib/Transforms/Utils/CtorUtils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/DemoteRegToStack.cpp stable/12/contrib/llvm/lib/Transforms/Utils/EscapeEnumerator.cpp stable/12/contrib/llvm/lib/Transforms/Utils/Evaluator.cpp stable/12/contrib/llvm/lib/Transforms/Utils/FlattenCFG.cpp stable/12/contrib/llvm/lib/Transforms/Utils/FunctionComparator.cpp stable/12/contrib/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp stable/12/contrib/llvm/lib/Transforms/Utils/InlineFunction.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp stable/12/contrib/llvm/lib/Transforms/Utils/Local.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopRotationUtils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopSimplify.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopUnroll.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopUnrollPeel.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopUtils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LowerSwitch.cpp stable/12/contrib/llvm/lib/Transforms/Utils/ModuleUtils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/PredicateInfo.cpp stable/12/contrib/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp stable/12/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp stable/12/contrib/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp stable/12/contrib/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp stable/12/contrib/llvm/lib/Transforms/Utils/SplitModule.cpp stable/12/contrib/llvm/lib/Transforms/Utils/Utils.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlan.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlan.h stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanValue.h stable/12/contrib/llvm/lib/Transforms/Vectorize/Vectorize.cpp stable/12/contrib/llvm/lib/XRay/InstrumentationMap.cpp stable/12/contrib/llvm/lib/XRay/Trace.cpp stable/12/contrib/llvm/tools/bugpoint/CrashDebugger.cpp stable/12/contrib/llvm/tools/bugpoint/ExecutionDriver.cpp stable/12/contrib/llvm/tools/bugpoint/OptimizerDriver.cpp stable/12/contrib/llvm/tools/bugpoint/ToolRunner.cpp stable/12/contrib/llvm/tools/bugpoint/ToolRunner.h stable/12/contrib/llvm/tools/clang/FREEBSD-Xlist stable/12/contrib/llvm/tools/clang/LICENSE.TXT stable/12/contrib/llvm/tools/clang/include/clang-c/Index.h stable/12/contrib/llvm/tools/clang/include/clang/AST/APValue.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTImporter.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTStructuralEquivalence.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTVector.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Attr.h stable/12/contrib/llvm/tools/clang/include/clang/AST/AttrIterator.h stable/12/contrib/llvm/tools/clang/include/clang/AST/BaseSubobject.h stable/12/contrib/llvm/tools/clang/include/clang/AST/CanonicalType.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Comment.h stable/12/contrib/llvm/tools/clang/include/clang/AST/CommentDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/AST/CommentVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Decl.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclFriend.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclObjC.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclOpenMP.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclTemplate.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclarationName.h stable/12/contrib/llvm/tools/clang/include/clang/AST/EvaluatedExprVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Expr.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ExprCXX.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ExprObjC.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ExprOpenMP.h stable/12/contrib/llvm/tools/clang/include/clang/AST/GlobalDecl.h stable/12/contrib/llvm/tools/clang/include/clang/AST/LexicallyOrderedRecursiveASTVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Mangle.h stable/12/contrib/llvm/tools/clang/include/clang/AST/NSAPI.h stable/12/contrib/llvm/tools/clang/include/clang/AST/NestedNameSpecifier.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ODRHash.h stable/12/contrib/llvm/tools/clang/include/clang/AST/OpenMPClause.h stable/12/contrib/llvm/tools/clang/include/clang/AST/OperationKinds.def stable/12/contrib/llvm/tools/clang/include/clang/AST/PrettyPrinter.h stable/12/contrib/llvm/tools/clang/include/clang/AST/RawCommentList.h stable/12/contrib/llvm/tools/clang/include/clang/AST/RecursiveASTVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Stmt.h stable/12/contrib/llvm/tools/clang/include/clang/AST/StmtCXX.h stable/12/contrib/llvm/tools/clang/include/clang/AST/StmtDataCollectors.td stable/12/contrib/llvm/tools/clang/include/clang/AST/StmtObjC.h stable/12/contrib/llvm/tools/clang/include/clang/AST/StmtOpenMP.h stable/12/contrib/llvm/tools/clang/include/clang/AST/StmtVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/TemplateBase.h stable/12/contrib/llvm/tools/clang/include/clang/AST/TemplateName.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Type.h stable/12/contrib/llvm/tools/clang/include/clang/AST/TypeLoc.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchers.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Parser.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/LiveVariables.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/AnalysisDeclContext.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/AnalysisDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/CallGraph.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/CloneDetection.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/ConstructionContext.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/ProgramPoint.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/AlignedAllocation.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/AllDiagnostics.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Attr.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/AttrDocs.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/Builtins.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsAArch64.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsAMDGPU.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsARM.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsHexagon.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsPPC.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsWebAssembly.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86_64.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/Cuda.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DebugInfoOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DeclNodes.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticASTKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommonKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCrossTUKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriverKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontendKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticGroups.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticIDs.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLexKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParseKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/Features.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/FileManager.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/FileSystemStatCache.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/IdentifierTable.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/ObjCRuntime.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/OpenCLExtensions.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/OpenCLOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/PlistSupport.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/SourceLocation.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/SourceManager.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Specifiers.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/StmtNodes.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/TargetBuiltins.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/TargetOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/TypeTraits.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/X86Target.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/XRayInstr.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/arm_neon.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/arm_neon_incl.td stable/12/contrib/llvm/tools/clang/include/clang/CodeGen/CGFunctionInfo.h stable/12/contrib/llvm/tools/clang/include/clang/CodeGen/SwiftCallingConv.h stable/12/contrib/llvm/tools/clang/include/clang/CrossTU/CrossTUDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/CrossTU/CrossTranslationUnit.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Action.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/CC1Options.td stable/12/contrib/llvm/tools/clang/include/clang/Driver/CLCompatOptions.td stable/12/contrib/llvm/tools/clang/include/clang/Driver/Distro.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Driver.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/DriverDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Job.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Options.td stable/12/contrib/llvm/tools/clang/include/clang/Driver/SanitizerArgs.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/ToolChain.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Types.def stable/12/contrib/llvm/tools/clang/include/clang/Format/Format.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/ASTConsumers.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/ASTUnit.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInstance.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInvocation.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/FrontendAction.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/FrontendActions.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/FrontendDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/FrontendOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/LangStandards.def stable/12/contrib/llvm/tools/clang/include/clang/Frontend/PCHContainerOperations.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/PrecompiledPreamble.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/Utils.h stable/12/contrib/llvm/tools/clang/include/clang/Index/IndexDataConsumer.h stable/12/contrib/llvm/tools/clang/include/clang/Index/IndexSymbol.h stable/12/contrib/llvm/tools/clang/include/clang/Index/IndexingAction.h stable/12/contrib/llvm/tools/clang/include/clang/Index/USRGeneration.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/CodeCompletionHandler.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/DirectoryLookup.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/HeaderMap.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearch.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/LexDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/Lexer.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/MacroInfo.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/ModuleMap.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PPCallbacks.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/Pragma.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PreprocessingRecord.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/Preprocessor.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorLexer.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/TokenConcatenation.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/TokenLexer.h stable/12/contrib/llvm/tools/clang/include/clang/Parse/ParseDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Parse/Parser.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteConsumer.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/DeclSpec.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Initialization.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Lookup.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Overload.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/ParsedAttr.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Scope.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/ScopeInfo.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Sema.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/SemaDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ASTBitCodes.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ASTReader.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ASTWriter.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ContinuousRangeMap.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/GlobalModuleIndex.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/SerializationDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/CheckerBase.td stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/Checkers.td stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Analyses.def stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Checker.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeMap.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Regions.def stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTSolver.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/TaintManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/WorkList.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/CheckerRegistration.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/FrontendActions.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/AllTUsExecution.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/ArgumentsAdjusters.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabase.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabasePluginRegistry.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/DiagnosticsYaml.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Execution.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/StandaloneExecution.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Tooling.h stable/12/contrib/llvm/tools/clang/include/clang/module.modulemap stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/ARCMT.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/FileRemapper.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/ObjCMT.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransAPIUses.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransAutoreleasePool.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransGCAttrs.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransGCCalls.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransProtectedScope.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransRetainReleaseDealloc.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransUnbridgedCasts.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransformActions.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/Transforms.cpp stable/12/contrib/llvm/tools/clang/lib/AST/APValue.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ASTContext.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ASTDiagnostic.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ASTDumper.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ASTImporter.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ASTStructuralEquivalence.cpp stable/12/contrib/llvm/tools/clang/lib/AST/CXXInheritance.cpp stable/12/contrib/llvm/tools/clang/lib/AST/CommentLexer.cpp stable/12/contrib/llvm/tools/clang/lib/AST/CommentParser.cpp stable/12/contrib/llvm/tools/clang/lib/AST/CommentSema.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Decl.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclBase.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclCXX.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclObjC.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclOpenMP.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclPrinter.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclTemplate.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclarationName.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Expr.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ExprCXX.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ExprClassification.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ExternalASTMerger.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ItaniumMangle.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Linkage.h stable/12/contrib/llvm/tools/clang/lib/AST/Mangle.cpp stable/12/contrib/llvm/tools/clang/lib/AST/MicrosoftMangle.cpp stable/12/contrib/llvm/tools/clang/lib/AST/NSAPI.cpp stable/12/contrib/llvm/tools/clang/lib/AST/NestedNameSpecifier.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ODRHash.cpp stable/12/contrib/llvm/tools/clang/lib/AST/OpenMPClause.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ParentMap.cpp stable/12/contrib/llvm/tools/clang/lib/AST/RawCommentList.cpp stable/12/contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/AST/SelectorLocationsKind.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Stmt.cpp stable/12/contrib/llvm/tools/clang/lib/AST/StmtCXX.cpp stable/12/contrib/llvm/tools/clang/lib/AST/StmtObjC.cpp stable/12/contrib/llvm/tools/clang/lib/AST/StmtOpenMP.cpp stable/12/contrib/llvm/tools/clang/lib/AST/StmtPrinter.cpp stable/12/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Type.cpp stable/12/contrib/llvm/tools/clang/lib/AST/TypeLoc.cpp stable/12/contrib/llvm/tools/clang/lib/AST/TypePrinter.cpp stable/12/contrib/llvm/tools/clang/lib/AST/VTableBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchFinder.cpp stable/12/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp stable/12/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Parser.cpp stable/12/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Registry.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/AnalysisDeclContext.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/CFG.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/CallGraph.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/CloneDetection.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/Consumed.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/LiveVariables.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ProgramPoint.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ReachableCode.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ThreadSafety.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyCommon.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyTIL.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Attributes.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Builtins.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Cuda.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Diagnostic.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/FileManager.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/FileSystemStatCache.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/IdentifierTable.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Module.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/OpenMPKinds.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/SourceLocation.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/SourceManager.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/TargetInfo.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/AArch64.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/AArch64.h stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/AMDGPU.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/AMDGPU.h stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/ARM.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Hexagon.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Mips.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Mips.h stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/NVPTX.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/OSTargets.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/OSTargets.h stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/PPC.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/PPC.h stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/SPIR.h stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Sparc.h stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/WebAssembly.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/WebAssembly.h stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/X86.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/X86.h stable/12/contrib/llvm/tools/clang/lib/Basic/Version.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGAtomic.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGBuiltin.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCUDANV.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCXX.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCall.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCall.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGClass.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCleanup.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCoroutine.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGDeclCXX.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGException.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExpr.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExprAgg.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExprCXX.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExprComplex.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExprConstant.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExprScalar.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGNonTrivialStruct.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGObjC.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGObjCGNU.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGObjCMac.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenCLRuntime.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenCLRuntime.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayoutBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGStmtOpenMP.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGVTT.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGVTables.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGValue.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenABITypes.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/ConstantEmitter.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CoverageMappingGen.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CoverageMappingGen.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/MacroPPCallbacks.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/MacroPPCallbacks.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/SwiftCallingConv.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/VarBypassDetector.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/VarBypassDetector.h stable/12/contrib/llvm/tools/clang/lib/CrossTU/CrossTranslationUnit.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/Action.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/Compilation.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/Distro.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/Driver.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/Job.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/SanitizerArgs.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChain.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/AMDGPU.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/AMDGPU.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/AArch64.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/AArch64.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/ARM.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/ARM.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Mips.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/X86.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/BareMetal.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Clang.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/CommonArgs.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/CommonArgs.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/CrossWindows.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Cuda.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Cuda.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Darwin.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Darwin.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Fuchsia.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Gnu.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hexagon.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hexagon.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Linux.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Linux.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MinGW.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MinGW.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Minix.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MipsLinux.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/NetBSD.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/NetBSD.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/OpenBSD.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/OpenBSD.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/PS4CPU.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Solaris.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/WebAssembly.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/WebAssembly.h stable/12/contrib/llvm/tools/clang/lib/Driver/Types.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/XRayArgs.cpp stable/12/contrib/llvm/tools/clang/lib/Edit/RewriteObjCFoundationAPI.cpp stable/12/contrib/llvm/tools/clang/lib/Format/BreakableToken.cpp stable/12/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.cpp stable/12/contrib/llvm/tools/clang/lib/Format/Format.cpp stable/12/contrib/llvm/tools/clang/lib/Format/FormatToken.h stable/12/contrib/llvm/tools/clang/lib/Format/FormatTokenLexer.cpp stable/12/contrib/llvm/tools/clang/lib/Format/FormatTokenLexer.h stable/12/contrib/llvm/tools/clang/lib/Format/NamespaceEndCommentsFixer.cpp stable/12/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.cpp stable/12/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.h stable/12/contrib/llvm/tools/clang/lib/Format/UnwrappedLineFormatter.cpp stable/12/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.cpp stable/12/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.h stable/12/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/ASTConsumers.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/ASTMerge.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/ASTUnit.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/ChainedIncludesSource.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/CompilerInvocation.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/CreateInvocationFromCommandLine.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/DependencyFile.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/DiagnosticRenderer.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/FrontendAction.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/FrontendActions.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/InitPreprocessor.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/ModuleDependencyCollector.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/PrecompiledPreamble.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/PrintPreprocessedOutput.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/Rewrite/FrontendActions.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/Rewrite/InclusionRewriter.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteObjC.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/TextDiagnostic.cpp stable/12/contrib/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp stable/12/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_runtime_wrapper.h stable/12/contrib/llvm/tools/clang/lib/Headers/adxintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/altivec.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512bwintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512fintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512pfintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vbmi2intrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vbmiintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vbmivlintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vlbwintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vlintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vlvbmi2intrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/bmiintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/cuda_wrappers/new stable/12/contrib/llvm/tools/clang/lib/Headers/emmintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/float.h stable/12/contrib/llvm/tools/clang/lib/Headers/immintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/intrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/lzcntintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/opencl-c.h stable/12/contrib/llvm/tools/clang/lib/Headers/vecintrin.h stable/12/contrib/llvm/tools/clang/lib/Index/CommentToXML.cpp stable/12/contrib/llvm/tools/clang/lib/Index/IndexBody.cpp stable/12/contrib/llvm/tools/clang/lib/Index/IndexDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Index/IndexSymbol.cpp stable/12/contrib/llvm/tools/clang/lib/Index/IndexTypeSourceInfo.cpp stable/12/contrib/llvm/tools/clang/lib/Index/IndexingAction.cpp stable/12/contrib/llvm/tools/clang/lib/Index/IndexingContext.cpp stable/12/contrib/llvm/tools/clang/lib/Index/SimpleFormatContext.h stable/12/contrib/llvm/tools/clang/lib/Index/USRGeneration.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/HeaderMap.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/HeaderSearch.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/Lexer.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/LiteralSupport.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/MacroInfo.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/ModuleMap.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/PPDirectives.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/PPLexerChange.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/PPMacroExpansion.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/Pragma.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/Preprocessor.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/TokenConcatenation.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseAST.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseCXXInlineMethods.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseDeclCXX.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseExpr.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseExprCXX.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseInit.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseObjc.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseOpenMP.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParsePragma.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseStmt.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseTentative.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/Parser.cpp stable/12/contrib/llvm/tools/clang/lib/Rewrite/HTMLRewrite.cpp stable/12/contrib/llvm/tools/clang/lib/Rewrite/RewriteRope.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/CodeCompleteConsumer.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/DeclSpec.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/IdentifierResolver.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/JumpDiagnostics.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/ParsedAttr.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/ScopeInfo.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/Sema.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaAccess.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaAttr.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaCUDA.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaCXXScopeSpec.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaCast.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaChecking.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaCoroutine.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaDeclAttr.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaDeclCXX.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaDeclObjC.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaExceptionSpec.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaExpr.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaExprMember.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaExprObjC.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaInit.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaLambda.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaLookup.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaObjCProperty.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaOpenMP.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaOverload.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaPseudoObject.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaStmt.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaStmtAttr.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaTemplateDeduction.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiate.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaTemplateVariadic.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaType.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/TreeTransform.h stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTCommon.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTReader.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTReaderDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTReaderStmt.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTWriter.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTWriterDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTWriterStmt.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/GlobalModuleIndex.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ModuleManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationState.h stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BoolAssignmentChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CXXSelfAssignmentChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastToStructChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckObjCInstMethSignature.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CloneChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DebugCheckers.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DeleteWithNonVirtualDtorChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GTestChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/InterCheckerAPI.h stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IvarInvalidationChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/LLVMConventionsChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.h stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocSizeofChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NSAutoreleasePoolChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NSErrorChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NoReturnFunctionChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NonnullGlobalConstantsChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NumberObjectConversionChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCContainersASTChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCPropertyChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PaddingChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerArithChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ReturnUndefChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RunLoopAutoreleaseLeakChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TaintTesterChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TraversalChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TrustNonnullChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefinedArraySubscriptChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VforkChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporter.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CallEvent.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Checker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CommonBugCategories.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/DynamicTypeMap.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Environment.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/LoopWidening.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/MemRegion.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ProgramState.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangedConstraintManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SValBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SVals.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Store.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SymbolManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/WorkList.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/CheckerRegistration.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/ASTDiff/ASTDiff.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/AllTUsExecution.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/ArgumentsAdjusters.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/CompilationDatabase.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Core/Diagnostic.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Core/Lookup.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Core/Replacement.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Execution.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/JSONCompilationDatabase.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/ASTSelection.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Extract/Extract.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/StandaloneExecution.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Tooling.cpp stable/12/contrib/llvm/tools/clang/tools/clang-format/ClangFormat.cpp stable/12/contrib/llvm/tools/clang/tools/driver/cc1_main.cpp stable/12/contrib/llvm/tools/clang/tools/driver/cc1as_main.cpp stable/12/contrib/llvm/tools/clang/tools/driver/cc1gen_reproducer_main.cpp stable/12/contrib/llvm/tools/clang/tools/driver/driver.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangAttrEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangOptionDocEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangSACheckersEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/NeonEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/TableGen.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/TableGenBackends.h stable/12/contrib/llvm/tools/lld/COFF/Chunks.cpp stable/12/contrib/llvm/tools/lld/COFF/Chunks.h stable/12/contrib/llvm/tools/lld/COFF/Config.h stable/12/contrib/llvm/tools/lld/COFF/DLL.cpp stable/12/contrib/llvm/tools/lld/COFF/DLL.h stable/12/contrib/llvm/tools/lld/COFF/Driver.cpp stable/12/contrib/llvm/tools/lld/COFF/Driver.h stable/12/contrib/llvm/tools/lld/COFF/DriverUtils.cpp stable/12/contrib/llvm/tools/lld/COFF/ICF.cpp stable/12/contrib/llvm/tools/lld/COFF/InputFiles.cpp stable/12/contrib/llvm/tools/lld/COFF/InputFiles.h stable/12/contrib/llvm/tools/lld/COFF/LTO.cpp stable/12/contrib/llvm/tools/lld/COFF/MapFile.cpp stable/12/contrib/llvm/tools/lld/COFF/MarkLive.cpp stable/12/contrib/llvm/tools/lld/COFF/MinGW.cpp stable/12/contrib/llvm/tools/lld/COFF/MinGW.h stable/12/contrib/llvm/tools/lld/COFF/Options.td stable/12/contrib/llvm/tools/lld/COFF/PDB.cpp stable/12/contrib/llvm/tools/lld/COFF/PDB.h stable/12/contrib/llvm/tools/lld/COFF/SymbolTable.cpp stable/12/contrib/llvm/tools/lld/COFF/SymbolTable.h stable/12/contrib/llvm/tools/lld/COFF/Symbols.cpp stable/12/contrib/llvm/tools/lld/COFF/Symbols.h stable/12/contrib/llvm/tools/lld/COFF/Writer.cpp stable/12/contrib/llvm/tools/lld/COFF/Writer.h stable/12/contrib/llvm/tools/lld/Common/Args.cpp stable/12/contrib/llvm/tools/lld/Common/ErrorHandler.cpp stable/12/contrib/llvm/tools/lld/Common/Strings.cpp stable/12/contrib/llvm/tools/lld/Common/TargetOptionsCommandFlags.cpp stable/12/contrib/llvm/tools/lld/ELF/AArch64ErrataFix.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/AArch64.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/AMDGPU.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/ARM.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/AVR.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/Hexagon.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/Mips.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/PPC.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/PPC64.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/SPARCV9.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/X86.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/X86_64.cpp stable/12/contrib/llvm/tools/lld/ELF/CMakeLists.txt stable/12/contrib/llvm/tools/lld/ELF/CallGraphSort.cpp stable/12/contrib/llvm/tools/lld/ELF/Config.h stable/12/contrib/llvm/tools/lld/ELF/Driver.cpp stable/12/contrib/llvm/tools/lld/ELF/Driver.h stable/12/contrib/llvm/tools/lld/ELF/DriverUtils.cpp stable/12/contrib/llvm/tools/lld/ELF/EhFrame.cpp stable/12/contrib/llvm/tools/lld/ELF/ICF.cpp stable/12/contrib/llvm/tools/lld/ELF/InputFiles.cpp stable/12/contrib/llvm/tools/lld/ELF/InputFiles.h stable/12/contrib/llvm/tools/lld/ELF/InputSection.cpp stable/12/contrib/llvm/tools/lld/ELF/InputSection.h stable/12/contrib/llvm/tools/lld/ELF/LTO.cpp stable/12/contrib/llvm/tools/lld/ELF/LTO.h stable/12/contrib/llvm/tools/lld/ELF/LinkerScript.cpp stable/12/contrib/llvm/tools/lld/ELF/LinkerScript.h stable/12/contrib/llvm/tools/lld/ELF/MapFile.cpp stable/12/contrib/llvm/tools/lld/ELF/MarkLive.cpp stable/12/contrib/llvm/tools/lld/ELF/Options.td stable/12/contrib/llvm/tools/lld/ELF/OutputSections.cpp stable/12/contrib/llvm/tools/lld/ELF/OutputSections.h stable/12/contrib/llvm/tools/lld/ELF/Relocations.cpp stable/12/contrib/llvm/tools/lld/ELF/Relocations.h stable/12/contrib/llvm/tools/lld/ELF/ScriptLexer.cpp stable/12/contrib/llvm/tools/lld/ELF/ScriptLexer.h stable/12/contrib/llvm/tools/lld/ELF/ScriptParser.cpp stable/12/contrib/llvm/tools/lld/ELF/SymbolTable.cpp stable/12/contrib/llvm/tools/lld/ELF/SymbolTable.h stable/12/contrib/llvm/tools/lld/ELF/Symbols.cpp stable/12/contrib/llvm/tools/lld/ELF/Symbols.h stable/12/contrib/llvm/tools/lld/ELF/SyntheticSections.cpp stable/12/contrib/llvm/tools/lld/ELF/SyntheticSections.h stable/12/contrib/llvm/tools/lld/ELF/Target.cpp stable/12/contrib/llvm/tools/lld/ELF/Target.h stable/12/contrib/llvm/tools/lld/ELF/Thunks.cpp stable/12/contrib/llvm/tools/lld/ELF/Writer.cpp stable/12/contrib/llvm/tools/lld/FREEBSD-Xlist stable/12/contrib/llvm/tools/lld/LICENSE.TXT stable/12/contrib/llvm/tools/lld/docs/NewLLD.rst stable/12/contrib/llvm/tools/lld/docs/README.txt stable/12/contrib/llvm/tools/lld/docs/Readers.rst stable/12/contrib/llvm/tools/lld/docs/ReleaseNotes.rst stable/12/contrib/llvm/tools/lld/docs/WebAssembly.rst stable/12/contrib/llvm/tools/lld/docs/conf.py stable/12/contrib/llvm/tools/lld/docs/index.rst stable/12/contrib/llvm/tools/lld/docs/ld.lld.1 stable/12/contrib/llvm/tools/lld/docs/open_projects.rst stable/12/contrib/llvm/tools/lld/docs/windows_support.rst stable/12/contrib/llvm/tools/lld/include/lld/Common/Args.h stable/12/contrib/llvm/tools/lld/include/lld/Common/ErrorHandler.h stable/12/contrib/llvm/tools/lld/include/lld/Common/LLVM.h stable/12/contrib/llvm/tools/lld/include/lld/Common/Strings.h stable/12/contrib/llvm/tools/lld/include/lld/Common/TargetOptionsCommandFlags.h stable/12/contrib/llvm/tools/lld/include/lld/Common/Threads.h stable/12/contrib/llvm/tools/lld/lib/Driver/DarwinLdDriver.cpp stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp stable/12/contrib/llvm/tools/lld/tools/lld/lld.cpp stable/12/contrib/llvm/tools/lldb/FREEBSD-Xlist stable/12/contrib/llvm/tools/lldb/include/lldb/API/LLDB.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBAddress.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBBreakpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBCommandInterpreter.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBCommandReturnObject.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBDebugger.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBDefines.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBExpressionOptions.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBFileSpec.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBFrame.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBMemoryRegionInfo.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBMemoryRegionInfoList.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBModule.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBProcess.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBStructuredData.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBSymbolContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBTarget.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBThread.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBThreadPlan.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBVariablesOptions.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Breakpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointID.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointIDList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocation.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocationCollection.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocationList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointName.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointOptions.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolver.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverAddress.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverFileLine.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverName.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointSite.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointSiteList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Stoppoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/StoppointLocation.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Watchpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/WatchpointList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/WatchpointOptions.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Address.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/AddressRange.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolver.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolverFileLine.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolverName.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Architecture.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ClangForward.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Communication.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Debugger.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Disassembler.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/DumpDataExtractor.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/EmulateInstruction.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/FileLineResolver.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/FileSpecList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/FormatEntity.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/IOHandler.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/LoadedModuleInfoList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Mangled.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/MappedHash.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Module.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ModuleList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ModuleSpec.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Opcode.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/PluginInterface.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/PluginManager.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/RangeMap.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/STLUtils.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/SearchFilter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Section.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/SourceManager.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/StreamAsynchronousIO.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/StreamBuffer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/StreamFile.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/StructuredDataImpl.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeDenseMap.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeDenseSet.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeSTLMap.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeSTLVector.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeValue.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/UniqueCStringMap.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/UserSettingsController.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Value.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObject.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectCast.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectChild.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResult.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultCast.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultChild.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultImpl.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectDynamicValue.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectMemory.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectRegister.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectSyntheticFilter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectVariable.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/DataVisualization.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/DumpValueObjectOptions.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatCache.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatClasses.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatManager.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormattersContainer.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormattersHelpers.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/LanguageCategory.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/StringPrinter.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeCategory.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeCategoryMap.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeFormat.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeSummary.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeSynthetic.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeValidator.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/ValueObjectPrinter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/DWARFExpression.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/Expression.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionParser.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionVariable.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/FunctionCaller.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/IRExecutionUnit.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/IRMemoryMap.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/LLVMUserExpression.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/Materializer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/REPL.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/UserExpression.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/UtilityFunction.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Debug.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Editline.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/File.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/FileSystem.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostInfoBase.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeThreadBase.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/MonitoringProcessLauncher.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/PipeBase.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/ProcessRunLock.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Socket.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/SocketAddress.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/StringConvert.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Symbols.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/TaskPool.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/XML.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeBreakpointList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeProcessProtocol.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeRegisterContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/openbsd/HostInfoOpenBSD.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/ConnectionFileDescriptorPosix.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/HostProcessPosix.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/PipePosix.h stable/12/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemInitializer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemInitializerCommon.h stable/12/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemLifetimeManager.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandAlias.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandCompletions.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandHistory.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandInterpreter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObject.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObjectMultiword.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObjectRegexCommand.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandOptionValidators.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandReturnObject.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionArgParser.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupBoolean.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupFile.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupFormat.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupOutputFile.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupPlatform.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupString.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupUInt64.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupUUID.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupValueObjectDisplay.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupVariable.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValue.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueArgs.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueArray.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueBoolean.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueChar.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueDictionary.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueEnumeration.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFileSpecList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFormat.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFormatEntity.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueLanguage.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValuePathMappings.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueProperties.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueRegex.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueSInt64.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueString.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueUInt64.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueUUID.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/Options.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/Property.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/ScriptInterpreter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/Block.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTImporter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangExternalASTSourceCommon.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangUtil.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/CompileUnit.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/CompilerType.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/DebugMacros.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/Function.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/LineTable.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectContainer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectFile.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContextScope.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolFile.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolVendor.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/Symtab.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/TypeSystem.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/UnwindPlan.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/UnwindTable.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ABI.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/CPPLanguageRuntime.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/DynamicLoader.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ExecutionContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ExecutionContextScope.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/InstrumentationRuntime.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/InstrumentationRuntimeStopInfo.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Language.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/LanguageRuntime.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Memory.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/MemoryHistory.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ObjCLanguageRuntime.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/OperatingSystem.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/PathMappingList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Platform.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Process.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ProcessLaunchInfo.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ProcessStructReader.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/QueueItem.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/RegisterContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/SectionLoadHistory.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/SectionLoadList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/StackFrame.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/StackFrameList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/StackID.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/StopInfo.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/SystemRuntime.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Target.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/TargetList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Thread.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlan.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanBase.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunction.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunctionUsingABI.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallUserExpression.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanPython.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanRunToAddress.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanShouldStopHere.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepInRange.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepInstruction.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepOut.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepOverRange.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepRange.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepThrough.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepUntil.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanTracer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/UnixSignals.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Unwind.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/ArchSpec.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Baton.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/CompletionRequest.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Connection.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/ConstString.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/DataBufferHeap.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/DataBufferLLVM.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/DataEncoder.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/DataExtractor.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/FileSpec.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Iterable.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/LLDBAssert.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Log.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/RegularExpression.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/SelectHelper.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/SharingPtr.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Status.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Stream.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StreamCallback.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StreamGDBRemote.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StreamString.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StreamTee.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StringExtractor.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StringExtractorGDBRemote.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StringLexer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StringList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StructuredData.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Timer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/UUID.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/UserID.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/VMRange.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-defines.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-enumerations.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-forward.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-private-forward.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-private-interfaces.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-private-types.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-types.h stable/12/contrib/llvm/tools/lldb/include/lldb/module.modulemap stable/12/contrib/llvm/tools/lldb/source/API/SBAddress.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBAttachInfo.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBBreakpoint.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBBreakpointName.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBBreakpointOptionCommon.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBBroadcaster.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBCommandInterpreter.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBCommandReturnObject.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBCompileUnit.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBData.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBDebugger.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBDeclaration.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBError.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBEvent.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBExpressionOptions.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBFileSpec.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBFileSpecList.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBFrame.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBHostOS.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBLaunchInfo.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBLineEntry.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBListener.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBMemoryRegionInfoList.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBModule.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBModuleSpec.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBPlatform.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBProcess.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBProcessInfo.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBQueue.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBSection.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBSourceManager.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBStream.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBStringList.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBStructuredData.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBSymbolContext.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBSymbolContextList.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBTarget.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBThread.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBThreadPlan.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBType.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBTypeCategory.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBTypeEnumMember.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBTypeFilter.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBTypeFormat.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBTypeNameSpecifier.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBTypeSummary.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBTypeSynthetic.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBValue.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBValueList.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBVariablesOptions.cpp stable/12/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.cpp stable/12/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.h stable/12/contrib/llvm/tools/lldb/source/Breakpoint/Breakpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointID.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointIDList.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointList.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocation.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocationCollection.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocationList.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointName.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointOptions.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolver.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverAddress.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverFileLine.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverFileRegex.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverName.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointSite.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointSiteList.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/Stoppoint.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/StoppointCallbackContext.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/StoppointLocation.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/Watchpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/WatchpointList.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/WatchpointOptions.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandCompletions.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectApropos.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectApropos.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpoint.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpointCommand.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpointCommand.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectBugreport.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectBugreport.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectCommands.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectCommands.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectDisassemble.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectDisassemble.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectFrame.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectGUI.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectGUI.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectHelp.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectHelp.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectLanguage.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectLog.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectLog.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectMemory.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectMemory.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectMultiword.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlatform.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlatform.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlugin.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlugin.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectProcess.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectProcess.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectQuit.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectQuit.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectRegister.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectRegister.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectSettings.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectSettings.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectSource.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectSource.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectTarget.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectThread.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectThread.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectType.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectType.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectVersion.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectVersion.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpoint.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpointCommand.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpointCommand.h stable/12/contrib/llvm/tools/lldb/source/Core/Address.cpp stable/12/contrib/llvm/tools/lldb/source/Core/AddressRange.cpp stable/12/contrib/llvm/tools/lldb/source/Core/AddressResolverFileLine.cpp stable/12/contrib/llvm/tools/lldb/source/Core/AddressResolverName.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Communication.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Debugger.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Disassembler.cpp stable/12/contrib/llvm/tools/lldb/source/Core/DumpDataExtractor.cpp stable/12/contrib/llvm/tools/lldb/source/Core/DumpRegisterValue.cpp stable/12/contrib/llvm/tools/lldb/source/Core/DynamicLoader.cpp stable/12/contrib/llvm/tools/lldb/source/Core/EmulateInstruction.cpp stable/12/contrib/llvm/tools/lldb/source/Core/FileLineResolver.cpp stable/12/contrib/llvm/tools/lldb/source/Core/FileSpecList.cpp stable/12/contrib/llvm/tools/lldb/source/Core/FormatEntity.cpp stable/12/contrib/llvm/tools/lldb/source/Core/IOHandler.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Mangled.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Module.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ModuleList.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Opcode.cpp stable/12/contrib/llvm/tools/lldb/source/Core/PluginManager.cpp stable/12/contrib/llvm/tools/lldb/source/Core/SearchFilter.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Section.cpp stable/12/contrib/llvm/tools/lldb/source/Core/SourceManager.cpp stable/12/contrib/llvm/tools/lldb/source/Core/StreamAsynchronousIO.cpp stable/12/contrib/llvm/tools/lldb/source/Core/StreamFile.cpp stable/12/contrib/llvm/tools/lldb/source/Core/UserSettingsController.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Value.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObject.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectCast.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectChild.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResult.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResultChild.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResultImpl.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectDynamicValue.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectList.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectMemory.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectRegister.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectSyntheticFilter.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectVariable.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/CXXFunctionPointer.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/DataVisualization.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/DumpValueObjectOptions.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/FormatCache.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/FormatClasses.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/FormatManager.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/FormattersHelpers.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/LanguageCategory.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/StringPrinter.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/TypeCategory.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/TypeCategoryMap.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/TypeFormat.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/TypeSummary.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/TypeSynthetic.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/TypeValidator.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/ValueObjectPrinter.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/VectorType.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/DWARFExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/ExpressionSourceCode.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/FunctionCaller.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/IRDynamicChecks.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/IRExecutionUnit.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/IRInterpreter.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/IRMemoryMap.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/LLVMUserExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/Materializer.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/REPL.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/UtilityFunction.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/Editline.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/File.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/FileCache.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/FileSystem.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/Host.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/HostInfoBase.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/HostNativeThreadBase.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/HostThread.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/MainLoop.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/MonitoringProcessLauncher.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeRegisterContext.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/ProcessRunLock.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/PseudoTerminal.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/SocketAddress.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/StringConvert.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/Symbols.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/TaskPool.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/XML.cpp stable/12/contrib/llvm/tools/lldb/source/Host/freebsd/Host.cpp stable/12/contrib/llvm/tools/lldb/source/Host/freebsd/HostInfoFreeBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Host/netbsd/Host.cpp stable/12/contrib/llvm/tools/lldb/source/Host/netbsd/HostInfoNetBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Host/openbsd/Host.cpp stable/12/contrib/llvm/tools/lldb/source/Host/openbsd/HostInfoOpenBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp stable/12/contrib/llvm/tools/lldb/source/Host/posix/FileSystem.cpp stable/12/contrib/llvm/tools/lldb/source/Host/posix/HostInfoPosix.cpp stable/12/contrib/llvm/tools/lldb/source/Host/posix/HostProcessPosix.cpp stable/12/contrib/llvm/tools/lldb/source/Host/posix/PipePosix.cpp stable/12/contrib/llvm/tools/lldb/source/Host/posix/ProcessLauncherPosixFork.cpp stable/12/contrib/llvm/tools/lldb/source/Initialization/SystemInitializerCommon.cpp stable/12/contrib/llvm/tools/lldb/source/Initialization/SystemLifetimeManager.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandAlias.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandInterpreter.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandObject.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectRegexCommand.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectScript.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectScript.h stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandReturnObject.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionArgParser.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupArchitecture.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupBoolean.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupFile.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupFormat.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupOutputFile.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupPlatform.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupString.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupUInt64.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupUUID.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupValueObjectDisplay.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupVariable.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupWatchpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValue.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArch.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArgs.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArray.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueBoolean.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueChar.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueDictionary.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueEnumeration.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpec.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpecLIst.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormat.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormatEntity.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueLanguage.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValuePathMappings.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueProperties.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueRegex.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueSInt64.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueString.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueUInt64.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueUUID.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/Options.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/Property.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Architecture/Arm/ArchitectureArm.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Architecture/Arm/ArchitectureArm.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/HexagonDYLDRendezvous.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/AuxVector.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/AuxVector.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionHelper.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangPersistentVariables.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM/EmulationStateARM.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/PPC64/EmulateInstructionPPC64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/ASan/ASanRuntime.h stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/TSan/TSanRuntime.h stable/12/contrib/llvm/tools/lldb/source/Plugins/JITLoader/GDB/JITLoaderGDB.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/JITLoader/GDB/JITLoaderGDB.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusNameParser.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxx.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxBitset.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CF.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/Cocoa.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSArray.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSDictionary.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSError.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSException.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSSet.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSString.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/ObjCLanguage.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjCPlusPlus/ObjCPlusPlusLanguage.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjCPlusPlus/ObjCPlusPlusLanguage.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptExpressionOpts.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptExpressionOpts.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/MemoryHistory/asan/MemoryHistoryASan.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ELFHeader.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.h stable/12/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/FreeBSDThread.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIX.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_mips64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_powerpc.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_x86.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeThreadNetBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/ProcessPOSIXLog.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/ARMUtils.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/GDBRemoteSignals.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/GDBRemoteSignals.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/HistoryThread.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/HistoryUnwind.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/MipsLinuxSignals.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/MipsLinuxSignals.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NetBSDSignals.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NetBSDSignals.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_x86_64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_x86_64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDummy.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDummy.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_powerpc.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextHistory.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextHistory.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLLDB.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLLDB.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_arm.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_arm.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_i386.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_i386.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_x86_64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_x86_64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMemory.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_powerpc.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_powerpc.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_ppc64le.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_ppc64le.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_s390x.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_s390x.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_x86.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_i386.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64le.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_s390x.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/StopInfoMachException.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/ThreadMemory.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindLLDB.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindLLDB.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindMacOSXFrameBackchain.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindMacOSXFrameBackchain.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_ppc64le.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_s390x.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemoteLog.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpParser.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpParser.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpTypes.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpTypes.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_32.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_32.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ThreadMinidump.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ThreadMinidump.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h stable/12/contrib/llvm/tools/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDataExtractor.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAranges.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacro.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDeclContext.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/HashedNameToDIE.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/LogChannelDWARF.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwoDwp.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwp.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwp.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/UniqueDWARFASTType.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/UniqueDWARFASTType.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.h stable/12/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.h stable/12/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.h stable/12/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.h stable/12/contrib/llvm/tools/lldb/source/Symbol/ArmUnwindInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Block.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/ClangASTContext.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/ClangASTImporter.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/ClangExternalASTSourceCallbacks.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/ClangUtil.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/CompactUnwindInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/CompileUnit.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/CompilerType.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/DWARFCallFrameInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/FuncUnwinders.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Function.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/LineEntry.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/ObjectFile.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Symbol.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/SymbolContext.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/SymbolFile.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/SymbolVendor.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Symtab.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Type.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/TypeList.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/TypeMap.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/TypeSystem.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/UnwindPlan.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/UnwindTable.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Variable.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ABI.cpp stable/12/contrib/llvm/tools/lldb/source/Target/CPPLanguageRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ExecutionContext.cpp stable/12/contrib/llvm/tools/lldb/source/Target/InstrumentationRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Target/JITLoader.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Language.cpp stable/12/contrib/llvm/tools/lldb/source/Target/LanguageRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Memory.cpp stable/12/contrib/llvm/tools/lldb/source/Target/MemoryHistory.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ModuleCache.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ObjCLanguageRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Target/OperatingSystem.cpp stable/12/contrib/llvm/tools/lldb/source/Target/PathMappingList.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Platform.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Process.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ProcessInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ProcessLaunchInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Queue.cpp stable/12/contrib/llvm/tools/lldb/source/Target/QueueItem.cpp stable/12/contrib/llvm/tools/lldb/source/Target/RegisterContext.cpp stable/12/contrib/llvm/tools/lldb/source/Target/RegisterNumber.cpp stable/12/contrib/llvm/tools/lldb/source/Target/SectionLoadHistory.cpp stable/12/contrib/llvm/tools/lldb/source/Target/SectionLoadList.cpp stable/12/contrib/llvm/tools/lldb/source/Target/StackFrame.cpp stable/12/contrib/llvm/tools/lldb/source/Target/StackFrameList.cpp stable/12/contrib/llvm/tools/lldb/source/Target/StackID.cpp stable/12/contrib/llvm/tools/lldb/source/Target/StopInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Target/SystemRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Target.cpp stable/12/contrib/llvm/tools/lldb/source/Target/TargetList.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Thread.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadList.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlan.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanBase.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallFunction.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallFunctionUsingABI.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallOnFunctionExit.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallUserExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanPython.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanRunToAddress.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanShouldStopHere.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepInRange.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepInstruction.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOut.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOverRange.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepRange.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepThrough.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepUntil.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanTracer.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadSpec.cpp stable/12/contrib/llvm/tools/lldb/source/Target/UnixSignals.cpp stable/12/contrib/llvm/tools/lldb/source/Target/UnwindAssembly.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/ArchSpec.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/CompletionRequest.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/ConstString.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/DataBufferHeap.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/DataBufferLLVM.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/DataEncoder.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/DataExtractor.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/FileSpec.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/JSON.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/LLDBAssert.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Log.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Logging.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/SelectHelper.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Status.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Stream.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/StreamGDBRemote.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/StreamString.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/StringExtractor.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/StringExtractorGDBRemote.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/StringList.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/StructuredData.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/TildeExpressionResolver.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Timer.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/UUID.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/VASprintf.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/VMRange.cpp stable/12/contrib/llvm/tools/lldb/tools/driver/Driver.cpp stable/12/contrib/llvm/tools/lldb/tools/driver/Driver.h stable/12/contrib/llvm/tools/lldb/tools/driver/Platform.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgSet.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValBase.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValBase.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValConsume.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValFile.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValOptionLong.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValString.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValThreadGrp.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdBase.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdBreak.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdData.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbInfo.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbSet.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbSet.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbShow.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbShow.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdTarget.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdFactory.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnBase.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugSessionInfo.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebuggerHandleEvents.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLog.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnResources.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnResources.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdin.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDataTypes.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriver.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverMain.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverMgr.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDebug.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDebug.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilFileStd.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilMapIdToVariant.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilString.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.h stable/12/contrib/llvm/tools/lldb/tools/lldb-server/lldb-gdbserver.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-server/lldb-platform.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-server/lldb-server.cpp stable/12/contrib/llvm/tools/lli/lli.cpp stable/12/contrib/llvm/tools/llvm-ar/llvm-ar.cpp stable/12/contrib/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp stable/12/contrib/llvm/tools/llvm-cov/CodeCoverage.cpp stable/12/contrib/llvm/tools/llvm-cov/CoverageExporter.h stable/12/contrib/llvm/tools/llvm-cov/CoverageExporterJson.cpp stable/12/contrib/llvm/tools/llvm-cov/CoverageExporterJson.h stable/12/contrib/llvm/tools/llvm-cov/CoverageViewOptions.h stable/12/contrib/llvm/tools/llvm-cov/SourceCoverageView.cpp stable/12/contrib/llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp stable/12/contrib/llvm/tools/llvm-cov/TestingSupport.cpp stable/12/contrib/llvm/tools/llvm-cxxdump/llvm-cxxdump.cpp stable/12/contrib/llvm/tools/llvm-diff/DifferenceEngine.cpp stable/12/contrib/llvm/tools/llvm-dwarfdump/Statistics.cpp stable/12/contrib/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp stable/12/contrib/llvm/tools/llvm-lto/llvm-lto.cpp stable/12/contrib/llvm/tools/llvm-lto2/llvm-lto2.cpp stable/12/contrib/llvm/tools/llvm-mc/llvm-mc.cpp stable/12/contrib/llvm/tools/llvm-mca/CodeRegion.cpp stable/12/contrib/llvm/tools/llvm-mca/CodeRegion.h stable/12/contrib/llvm/tools/llvm-mca/PipelinePrinter.cpp stable/12/contrib/llvm/tools/llvm-mca/PipelinePrinter.h stable/12/contrib/llvm/tools/llvm-mca/llvm-mca.cpp stable/12/contrib/llvm/tools/llvm-nm/llvm-nm.cpp stable/12/contrib/llvm/tools/llvm-objcopy/ObjcopyOpts.td stable/12/contrib/llvm/tools/llvm-objcopy/StripOpts.td stable/12/contrib/llvm/tools/llvm-objcopy/llvm-objcopy.cpp stable/12/contrib/llvm/tools/llvm-objcopy/llvm-objcopy.h stable/12/contrib/llvm/tools/llvm-objdump/COFFDump.cpp stable/12/contrib/llvm/tools/llvm-objdump/ELFDump.cpp stable/12/contrib/llvm/tools/llvm-objdump/MachODump.cpp stable/12/contrib/llvm/tools/llvm-objdump/llvm-objdump.cpp stable/12/contrib/llvm/tools/llvm-objdump/llvm-objdump.h stable/12/contrib/llvm/tools/llvm-pdbutil/DumpOutputStyle.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/DumpOutputStyle.h stable/12/contrib/llvm/tools/llvm-pdbutil/InputFile.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/InputFile.h stable/12/contrib/llvm/tools/llvm-pdbutil/MinimalSymbolDumper.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/MinimalSymbolDumper.h stable/12/contrib/llvm/tools/llvm-pdbutil/MinimalTypeDumper.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/MinimalTypeDumper.h stable/12/contrib/llvm/tools/llvm-pdbutil/PdbYaml.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/PdbYaml.h stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyClassDefinitionDumper.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyCompilandDumper.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyCompilandDumper.h stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyEnumDumper.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyFunctionDumper.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyTypeDumper.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyTypeDumper.h stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyTypedefDumper.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/YAMLOutputStyle.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/YAMLOutputStyle.h stable/12/contrib/llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/llvm-pdbutil.h stable/12/contrib/llvm/tools/llvm-profdata/llvm-profdata.cpp stable/12/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp stable/12/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.h stable/12/contrib/llvm/tools/llvm-readobj/COFFDumper.cpp stable/12/contrib/llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h stable/12/contrib/llvm/tools/llvm-readobj/ELFDumper.cpp stable/12/contrib/llvm/tools/llvm-readobj/MachODumper.cpp stable/12/contrib/llvm/tools/llvm-readobj/ObjDumper.h stable/12/contrib/llvm/tools/llvm-readobj/WasmDumper.cpp stable/12/contrib/llvm/tools/llvm-readobj/llvm-readobj.cpp stable/12/contrib/llvm/tools/llvm-readobj/llvm-readobj.h stable/12/contrib/llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp stable/12/contrib/llvm/tools/llvm-stress/llvm-stress.cpp stable/12/contrib/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-account.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-converter.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-graph.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-stacks.cpp stable/12/contrib/llvm/tools/opt/Debugify.cpp stable/12/contrib/llvm/tools/opt/NewPMDriver.cpp stable/12/contrib/llvm/tools/opt/opt.cpp stable/12/contrib/llvm/utils/TableGen/AsmMatcherEmitter.cpp stable/12/contrib/llvm/utils/TableGen/AsmWriterEmitter.cpp stable/12/contrib/llvm/utils/TableGen/CTagsEmitter.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.h stable/12/contrib/llvm/utils/TableGen/CodeGenInstruction.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenInstruction.h stable/12/contrib/llvm/utils/TableGen/CodeGenIntrinsics.h stable/12/contrib/llvm/utils/TableGen/CodeGenRegisters.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenRegisters.h stable/12/contrib/llvm/utils/TableGen/CodeGenSchedule.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenSchedule.h stable/12/contrib/llvm/utils/TableGen/CodeGenTarget.cpp stable/12/contrib/llvm/utils/TableGen/DAGISelMatcher.cpp stable/12/contrib/llvm/utils/TableGen/DAGISelMatcher.h stable/12/contrib/llvm/utils/TableGen/DAGISelMatcherEmitter.cpp stable/12/contrib/llvm/utils/TableGen/DAGISelMatcherGen.cpp stable/12/contrib/llvm/utils/TableGen/FastISelEmitter.cpp stable/12/contrib/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp stable/12/contrib/llvm/utils/TableGen/GlobalISelEmitter.cpp stable/12/contrib/llvm/utils/TableGen/InfoByHwMode.cpp stable/12/contrib/llvm/utils/TableGen/InfoByHwMode.h stable/12/contrib/llvm/utils/TableGen/InstrDocsEmitter.cpp stable/12/contrib/llvm/utils/TableGen/InstrInfoEmitter.cpp stable/12/contrib/llvm/utils/TableGen/IntrinsicEmitter.cpp stable/12/contrib/llvm/utils/TableGen/PredicateExpander.cpp stable/12/contrib/llvm/utils/TableGen/PredicateExpander.h stable/12/contrib/llvm/utils/TableGen/RegisterInfoEmitter.cpp stable/12/contrib/llvm/utils/TableGen/SearchableTableEmitter.cpp stable/12/contrib/llvm/utils/TableGen/SubtargetEmitter.cpp stable/12/contrib/llvm/utils/TableGen/TableGen.cpp stable/12/contrib/llvm/utils/TableGen/TableGenBackends.h stable/12/contrib/llvm/utils/TableGen/WebAssemblyDisassemblerEmitter.cpp stable/12/contrib/llvm/utils/TableGen/X86ModRMFilters.h stable/12/contrib/llvm/utils/TableGen/X86RecognizableInstr.cpp stable/12/contrib/openmp/runtime/src/kmp.h stable/12/contrib/openmp/runtime/src/kmp_runtime.cpp stable/12/contrib/openmp/runtime/src/kmp_wrapper_getpid.h stable/12/contrib/openmp/runtime/src/ompt-general.cpp stable/12/etc/mtree/BSD.debug.dist stable/12/etc/mtree/BSD.usr.dist stable/12/lib/Makefile stable/12/lib/clang/freebsd_cc_version.h stable/12/lib/clang/headers/Makefile stable/12/lib/clang/include/clang/Basic/Version.inc stable/12/lib/clang/include/clang/Config/config.h stable/12/lib/clang/include/lld/Common/Version.inc stable/12/lib/clang/include/llvm/Config/config.h stable/12/lib/clang/include/llvm/Config/llvm-config.h stable/12/lib/clang/include/llvm/Support/VCSRevision.h stable/12/lib/clang/libclang/Makefile stable/12/lib/clang/liblldb/Makefile stable/12/lib/clang/libllvm/Makefile stable/12/lib/clang/libllvmminimal/Makefile stable/12/lib/libc++/Makefile stable/12/lib/libclang_rt/Makefile.inc stable/12/lib/libclang_rt/asan/Makefile stable/12/lib/libclang_rt/asan_dynamic/Makefile stable/12/lib/libclang_rt/msan/Makefile stable/12/lib/libclang_rt/safestack/Makefile stable/12/lib/libclang_rt/stats/Makefile stable/12/lib/libclang_rt/tsan/Makefile stable/12/lib/libclang_rt/ubsan_standalone/Makefile stable/12/lib/libgcc_eh/Makefile.inc stable/12/sys/sys/param.h stable/12/tools/build/mk/OptionalObsoleteFiles.inc stable/12/usr.bin/clang/Makefile stable/12/usr.bin/clang/lld/Makefile stable/12/usr.bin/clang/lldb/Makefile stable/12/usr.bin/clang/llvm-cov/Makefile stable/12/usr.bin/clang/llvm-mca/Makefile stable/12/usr.bin/clang/llvm-objcopy/Makefile stable/12/usr.bin/clang/llvm-objdump/Makefile stable/12/usr.bin/clang/llvm-pdbutil/Makefile stable/12/usr.bin/clang/llvm-tblgen/Makefile Directory Properties: stable/12/ (props changed) Modified: stable/12/ObsoleteFiles.inc ============================================================================== --- stable/12/ObsoleteFiles.inc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/ObsoleteFiles.inc Fri Apr 12 20:03:27 2019 (r346168) @@ -38,6 +38,158 @@ # xargs -n1 | sort | uniq -d; # done +# 2019mmdd: new libc++ import which bumps version from 7.0.1 to 8.0.0. +OLD_FILES+=usr/include/c++/v1/experimental/dynarray +# 2019mmdd: new clang import which bumps version from 7.0.1 to 8.0.0. +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/allocator_interface.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/asan_interface.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/common_interface_defs.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/coverage_interface.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/dfsan_interface.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/esan_interface.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/hwasan_interface.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/linux_syscall_hooks.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/lsan_interface.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/msan_interface.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/netbsd_syscall_hooks.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/scudo_interface.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/tsan_interface.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/tsan_interface_atomic.h +OLD_DIRS+=usr/lib/clang/7.0.1/include/sanitizer +OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_builtin_vars.h +OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_cmath.h +OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_complex_builtins.h +OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_device_functions.h +OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_intrinsics.h +OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_libdevice_declares.h +OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_math_forward_declares.h +OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_runtime_wrapper.h +OLD_FILES+=usr/lib/clang/7.0.1/include/__stddef_max_align_t.h +OLD_FILES+=usr/lib/clang/7.0.1/include/__wmmintrin_aes.h +OLD_FILES+=usr/lib/clang/7.0.1/include/__wmmintrin_pclmul.h +OLD_FILES+=usr/lib/clang/7.0.1/include/adxintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/altivec.h +OLD_FILES+=usr/lib/clang/7.0.1/include/ammintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/arm64intr.h +OLD_FILES+=usr/lib/clang/7.0.1/include/arm_acle.h +OLD_FILES+=usr/lib/clang/7.0.1/include/arm_fp16.h +OLD_FILES+=usr/lib/clang/7.0.1/include/arm_neon.h +OLD_FILES+=usr/lib/clang/7.0.1/include/armintr.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx2intrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512bitalgintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512bwintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512cdintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512dqintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512erintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512fintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512ifmaintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512ifmavlintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512pfintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vbmi2intrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vbmiintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vbmivlintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlbitalgintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlbwintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlcdintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vldqintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlvbmi2intrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlvnniintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vnniintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vpopcntdqintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vpopcntdqvlintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/avxintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/bmi2intrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/bmiintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/cetintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/cldemoteintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/clflushoptintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/clwbintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/clzerointrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/cpuid.h +OLD_FILES+=usr/lib/clang/7.0.1/include/emmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/f16cintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/fma4intrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/fmaintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/fxsrintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/gfniintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/htmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/htmxlintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/ia32intrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/immintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/invpcidintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/lwpintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/lzcntintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/mm3dnow.h +OLD_FILES+=usr/lib/clang/7.0.1/include/mm_malloc.h +OLD_FILES+=usr/lib/clang/7.0.1/include/mmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/module.modulemap +OLD_FILES+=usr/lib/clang/7.0.1/include/movdirintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/msa.h +OLD_FILES+=usr/lib/clang/7.0.1/include/mwaitxintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/nmmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/opencl-c.h +OLD_FILES+=usr/lib/clang/7.0.1/include/pconfigintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/pkuintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/pmmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/popcntintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/prfchwintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/ptwriteintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/rdseedintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/rtmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/s390intrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/sgxintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/shaintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/smmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/tbmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/tmmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/vadefs.h +OLD_FILES+=usr/lib/clang/7.0.1/include/vaesintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/vecintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/vpclmulqdqintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/waitpkgintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/wbnoinvdintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/wmmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/x86intrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/xmmintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/xopintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/xsavecintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/xsaveintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/xsaveoptintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/xsavesintrin.h +OLD_FILES+=usr/lib/clang/7.0.1/include/xtestintrin.h +OLD_DIRS+=usr/lib/clang/7.0.1/include +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-i386.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-i386.so +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-preinit-i386.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-preinit-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-x86_64.so +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan_cxx-i386.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan_cxx-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.msan-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.msan_cxx-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.profile-arm.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.profile-armhf.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.profile-i386.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.profile-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.safestack-i386.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.safestack-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.stats-i386.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.stats-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.stats_client-i386.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.stats_client-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.tsan-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.tsan_cxx-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_minimal-i386.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_minimal-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_standalone-i386.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_standalone-x86_64.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_standalone_cxx-i386.a +OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_standalone_cxx-x86_64.a +OLD_DIRS+=usr/lib/clang/7.0.1/lib/freebsd +OLD_DIRS+=usr/lib/clang/7.0.1/lib +OLD_DIRS+=usr/lib/clang/7.0.1 # 20190216: new clang import which bumps version from 6.0.1 to 7.0.1. OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/allocator_interface.h OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/asan_interface.h Modified: stable/12/UPDATING ============================================================================== --- stable/12/UPDATING Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/UPDATING Fri Apr 12 20:03:27 2019 (r346168) @@ -16,6 +16,12 @@ from older versions of FreeBSD, try WITHOUT_CLANG and the tip of head, and then rebuild without this option. The bootstrap process from older version of current across the gcc/clang cutover is a bit fragile. +2019mmdd: + Clang, llvm, lld, lldb, compiler-rt and libc++ have been upgraded to + 8.0.0. Please see the 20141231 entry below for information about + prerequisites and upgrading, if you are not already using clang 3.5.0 + or higher. + 20190307: The RETPOLINE option produces non-functional ifunc-using binaries with Clang 7.0.1, and has been forced off (via BROKEN_OPTIONS). Modified: stable/12/contrib/compiler-rt/LICENSE.TXT ============================================================================== --- stable/12/contrib/compiler-rt/LICENSE.TXT Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/LICENSE.TXT Fri Apr 12 20:03:27 2019 (r346168) @@ -14,7 +14,7 @@ Full text of the relevant licenses is included below. University of Illinois/NCSA Open Source License -Copyright (c) 2009-2018 by the contributors listed in CREDITS.TXT +Copyright (c) 2009-2019 by the contributors listed in CREDITS.TXT All rights reserved. Modified: stable/12/contrib/compiler-rt/include/sanitizer/allocator_interface.h ============================================================================== --- stable/12/contrib/compiler-rt/include/sanitizer/allocator_interface.h Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/include/sanitizer/allocator_interface.h Fri Apr 12 20:03:27 2019 (r346168) @@ -82,7 +82,6 @@ extern "C" { Currently available with ASan only. */ void __sanitizer_purge_allocator(void); - #ifdef __cplusplus } // extern "C" #endif Modified: stable/12/contrib/compiler-rt/include/sanitizer/common_interface_defs.h ============================================================================== --- stable/12/contrib/compiler-rt/include/sanitizer/common_interface_defs.h Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/include/sanitizer/common_interface_defs.h Fri Apr 12 20:03:27 2019 (r346168) @@ -124,6 +124,12 @@ extern "C" { // Symbolizes the supplied 'pc' using the format string 'fmt'. // Outputs at most 'out_buf_size' bytes into 'out_buf'. + // If 'out_buf' is not empty then output is zero or more non empty C strings + // followed by single empty C string. Multiple strings can be returned if PC + // corresponds to inlined function. Inlined frames are printed in the order + // from "most-inlined" to the "least-inlined", so the last frame should be the + // not inlined function. + // Inlined frames can be removed with 'symbolize_inline_frames=0'. // The format syntax is described in // lib/sanitizer_common/sanitizer_stacktrace_printer.h. void __sanitizer_symbolize_pc(void *pc, const char *fmt, char *out_buf, Modified: stable/12/contrib/compiler-rt/include/sanitizer/hwasan_interface.h ============================================================================== --- stable/12/contrib/compiler-rt/include/sanitizer/hwasan_interface.h Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/include/sanitizer/hwasan_interface.h Fri Apr 12 20:03:27 2019 (r346168) @@ -19,6 +19,12 @@ #ifdef __cplusplus extern "C" { #endif + // Initialize shadow but not the rest of the runtime. + // Does not call libc unless there is an error. + // Can be called multiple times, or not at all (in which case shadow will + // be initialized in compiler-inserted __hwasan_init() call). + void __hwasan_shadow_init(void); + // This function may be optionally provided by user and should return // a string containing HWASan runtime options. See asan_flags.h for details. const char* __hwasan_default_options(void); @@ -26,6 +32,51 @@ extern "C" { void __hwasan_enable_allocator_tagging(void); void __hwasan_disable_allocator_tagging(void); + // Mark region of memory with the given tag. Both address and size need to be + // 16-byte aligned. + void __hwasan_tag_memory(const volatile void *p, unsigned char tag, + size_t size); + + /// Set pointer tag. Previous tag is lost. + void *__hwasan_tag_pointer(const volatile void *p, unsigned char tag); + + // Set memory tag from the current SP address to the given address to zero. + // This is meant to annotate longjmp and other non-local jumps. + // This function needs to know the (almost) exact destination frame address; + // clearing shadow for the entire thread stack like __asan_handle_no_return + // does would cause false reports. + void __hwasan_handle_longjmp(const void *sp_dst); + + // Libc hook for thread creation. Should be called in the child thread before + // any instrumented code. + void __hwasan_thread_enter(); + + // Libc hook for thread destruction. No instrumented code should run after + // this call. + void __hwasan_thread_exit(); + + // Print shadow and origin for the memory range to stderr in a human-readable + // format. + void __hwasan_print_shadow(const volatile void *x, size_t size); + + // Print one-line report about the memory usage of the current process. + void __hwasan_print_memory_usage(); + + int __sanitizer_posix_memalign(void **memptr, size_t alignment, size_t size); + void * __sanitizer_memalign(size_t alignment, size_t size); + void * __sanitizer_aligned_alloc(size_t alignment, size_t size); + void * __sanitizer___libc_memalign(size_t alignment, size_t size); + void * __sanitizer_valloc(size_t size); + void * __sanitizer_pvalloc(size_t size); + void __sanitizer_free(void *ptr); + void __sanitizer_cfree(void *ptr); + size_t __sanitizer_malloc_usable_size(const void *ptr); + struct mallinfo __sanitizer_mallinfo(); + int __sanitizer_mallopt(int cmd, int value); + void __sanitizer_malloc_stats(void); + void * __sanitizer_calloc(size_t nmemb, size_t size); + void * __sanitizer_realloc(void *ptr, size_t size); + void * __sanitizer_malloc(size_t size); #ifdef __cplusplus } // extern "C" #endif Modified: stable/12/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h ============================================================================== --- stable/12/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h Fri Apr 12 20:03:27 2019 (r346168) @@ -21,8 +21,8 @@ // DO NOT EDIT! THIS FILE HAS BEEN GENERATED! // // Generated with: generate_netbsd_syscalls.awk -// Generated date: 2018-03-03 -// Generated from: syscalls.master,v 1.291 2018/01/06 16:41:23 kamil Exp +// Generated date: 2018-10-30 +// Generated from: syscalls.master,v 1.293 2018/07/31 13:00:13 rjs Exp // //===----------------------------------------------------------------------===// #ifndef SANITIZER_NETBSD_SYSCALL_HOOKS_H @@ -986,7 +986,15 @@ #define __sanitizer_syscall_post_fpathconf(res, fd, name) \ __sanitizer_syscall_post_impl_fpathconf(res, (long long)(fd), \ (long long)(name)) -/* syscall 193 has been skipped */ +#define __sanitizer_syscall_pre_getsockopt2(s, level, name, val, avalsize) \ + __sanitizer_syscall_pre_impl_getsockopt2( \ + (long long)(s), (long long)(level), (long long)(name), (long long)(val), \ + (long long)(avalsize)) +#define __sanitizer_syscall_post_getsockopt2(res, s, level, name, val, \ + avalsize) \ + __sanitizer_syscall_post_impl_getsockopt2( \ + res, (long long)(s), (long long)(level), (long long)(name), \ + (long long)(val), (long long)(avalsize)) #define __sanitizer_syscall_pre_getrlimit(which, rlp) \ __sanitizer_syscall_pre_impl_getrlimit((long long)(which), (long long)(rlp)) #define __sanitizer_syscall_post_getrlimit(res, which, rlp) \ @@ -1752,18 +1760,8 @@ __sanitizer_syscall_post_impl___sigaction_sigtramp( \ res, (long long)(signum), (long long)(nsa), (long long)(osa), \ (long long)(tramp), (long long)(vers)) -#define __sanitizer_syscall_pre_pmc_get_info(ctr, op, args) \ - __sanitizer_syscall_pre_impl_pmc_get_info((long long)(ctr), (long long)(op), \ - (long long)(args)) -#define __sanitizer_syscall_post_pmc_get_info(res, ctr, op, args) \ - __sanitizer_syscall_post_impl_pmc_get_info( \ - res, (long long)(ctr), (long long)(op), (long long)(args)) -#define __sanitizer_syscall_pre_pmc_control(ctr, op, args) \ - __sanitizer_syscall_pre_impl_pmc_control((long long)(ctr), (long long)(op), \ - (long long)(args)) -#define __sanitizer_syscall_post_pmc_control(res, ctr, op, args) \ - __sanitizer_syscall_post_impl_pmc_control( \ - res, (long long)(ctr), (long long)(op), (long long)(args)) +/* syscall 341 has been skipped */ +/* syscall 342 has been skipped */ #define __sanitizer_syscall_pre_rasctl(addr, len, op) \ __sanitizer_syscall_pre_impl_rasctl((long long)(addr), (long long)(len), \ (long long)(op)) @@ -3444,7 +3442,13 @@ void __sanitizer_syscall_post_impl_pathconf(long long void __sanitizer_syscall_pre_impl_fpathconf(long long fd, long long name); void __sanitizer_syscall_post_impl_fpathconf(long long res, long long fd, long long name); -/* syscall 193 has been skipped */ +void __sanitizer_syscall_pre_impl_getsockopt2(long long s, long long level, + long long name, long long val, + long long avalsize); +void __sanitizer_syscall_post_impl_getsockopt2(long long res, long long s, + long long level, long long name, + long long val, + long long avalsize); void __sanitizer_syscall_pre_impl_getrlimit(long long which, long long rlp); void __sanitizer_syscall_post_impl_getrlimit(long long res, long long which, long long rlp); @@ -4001,14 +4005,8 @@ void __sanitizer_syscall_pre_impl___sigaction_sigtramp void __sanitizer_syscall_post_impl___sigaction_sigtramp( long long res, long long signum, long long nsa, long long osa, long long tramp, long long vers); -void __sanitizer_syscall_pre_impl_pmc_get_info(long long ctr, long long op, - long long args); -void __sanitizer_syscall_post_impl_pmc_get_info(long long res, long long ctr, - long long op, long long args); -void __sanitizer_syscall_pre_impl_pmc_control(long long ctr, long long op, - long long args); -void __sanitizer_syscall_post_impl_pmc_control(long long res, long long ctr, - long long op, long long args); +/* syscall 341 has been skipped */ +/* syscall 342 has been skipped */ void __sanitizer_syscall_pre_impl_rasctl(long long addr, long long len, long long op); void __sanitizer_syscall_post_impl_rasctl(long long res, long long addr, Modified: stable/12/contrib/compiler-rt/include/xray/xray_log_interface.h ============================================================================== --- stable/12/contrib/compiler-rt/include/xray/xray_log_interface.h Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/include/xray/xray_log_interface.h Fri Apr 12 20:03:27 2019 (r346168) @@ -158,8 +158,8 @@ struct XRayLogImpl { /// The log initialization routine provided by the implementation, always /// provided with the following parameters: /// - /// - buffer size - /// - maximum number of buffers + /// - buffer size (unused) + /// - maximum number of buffers (unused) /// - a pointer to an argument struct that the implementation MUST handle /// - the size of the argument struct /// @@ -354,26 +354,5 @@ XRayLogFlushStatus __xray_log_process_buffers(void (*P XRayBuffer)); } // extern "C" - -namespace __xray { - -/// DEPRECATED: Use __xray_log_init_mode(...) instead, and provide flag -/// configuration strings to set the options instead. -/// Options used by the LLVM XRay FDR logging implementation. -struct FDRLoggingOptions { - bool ReportErrors = false; - int Fd = -1; -}; - -/// DEPRECATED: Use __xray_log_init_mode(...) instead, and provide flag -/// configuration strings to set the options instead. -/// Options used by the LLVM XRay Basic (Naive) logging implementation. -struct BasicLoggingOptions { - int DurationFilterMicros = 0; - size_t MaxStackDepth = 0; - size_t ThreadBufferSize = 0; -}; - -} // namespace __xray #endif // XRAY_XRAY_LOG_INTERFACE_H Modified: stable/12/contrib/compiler-rt/lib/asan/asan_allocator.h ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_allocator.h Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_allocator.h Fri Apr 12 20:03:27 2019 (r346168) @@ -148,6 +148,7 @@ const uptr kAllocatorSpace = 0x600000000000ULL; const uptr kAllocatorSize = 0x40000000000ULL; // 4T. typedef DefaultSizeClassMap SizeClassMap; # endif +template struct AP64 { // Allocator64 parameters. Deliberately using a short name. static const uptr kSpaceBeg = kAllocatorSpace; static const uptr kSpaceSize = kAllocatorSize; @@ -155,37 +156,57 @@ struct AP64 { // Allocator64 parameters. Deliberately typedef __asan::SizeClassMap SizeClassMap; typedef AsanMapUnmapCallback MapUnmapCallback; static const uptr kFlags = 0; + using AddressSpaceView = AddressSpaceViewTy; }; -typedef SizeClassAllocator64 PrimaryAllocator; +template +using PrimaryAllocatorASVT = SizeClassAllocator64>; +using PrimaryAllocator = PrimaryAllocatorASVT; #else // Fallback to SizeClassAllocator32. static const uptr kRegionSizeLog = 20; static const uptr kNumRegions = SANITIZER_MMAP_RANGE_SIZE >> kRegionSizeLog; # if SANITIZER_WORDSIZE == 32 -typedef FlatByteMap ByteMap; +template +using ByteMapASVT = FlatByteMap; # elif SANITIZER_WORDSIZE == 64 -typedef TwoLevelByteMap<(kNumRegions >> 12), 1 << 12> ByteMap; +template +using ByteMapASVT = + TwoLevelByteMap<(kNumRegions >> 12), 1 << 12, AddressSpaceView>; # endif typedef CompactSizeClassMap SizeClassMap; +template struct AP32 { static const uptr kSpaceBeg = 0; static const u64 kSpaceSize = SANITIZER_MMAP_RANGE_SIZE; static const uptr kMetadataSize = 16; typedef __asan::SizeClassMap SizeClassMap; static const uptr kRegionSizeLog = __asan::kRegionSizeLog; - typedef __asan::ByteMap ByteMap; + using AddressSpaceView = AddressSpaceViewTy; + using ByteMap = __asan::ByteMapASVT; typedef AsanMapUnmapCallback MapUnmapCallback; static const uptr kFlags = 0; }; -typedef SizeClassAllocator32 PrimaryAllocator; +template +using PrimaryAllocatorASVT = SizeClassAllocator32 >; +using PrimaryAllocator = PrimaryAllocatorASVT; #endif // SANITIZER_CAN_USE_ALLOCATOR64 static const uptr kNumberOfSizeClasses = SizeClassMap::kNumClasses; -typedef SizeClassAllocatorLocalCache AllocatorCache; -typedef LargeMmapAllocator SecondaryAllocator; -typedef CombinedAllocator AsanAllocator; +template +using AllocatorCacheASVT = + SizeClassAllocatorLocalCache>; +using AllocatorCache = AllocatorCacheASVT; +template +using SecondaryAllocatorASVT = + LargeMmapAllocator; +template +using AsanAllocatorASVT = + CombinedAllocator, + AllocatorCacheASVT, + SecondaryAllocatorASVT>; +using AsanAllocator = AsanAllocatorASVT; struct AsanThreadLocalMallocStorage { uptr quarantine_cache[16]; Modified: stable/12/contrib/compiler-rt/lib/asan/asan_errors.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_errors.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_errors.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -125,9 +125,8 @@ void ErrorAllocTypeMismatch::Print() { Decorator d; Printf("%s", d.Error()); Report("ERROR: AddressSanitizer: %s (%s vs %s) on %p\n", - scariness.GetDescription(), - alloc_names[alloc_type], dealloc_names[dealloc_type], - addr_description.addr); + scariness.GetDescription(), alloc_names[alloc_type], + dealloc_names[dealloc_type], addr_description.Address()); Printf("%s", d.Default()); CHECK_GT(dealloc_stack->size, 0); scariness.Print(); Modified: stable/12/contrib/compiler-rt/lib/asan/asan_errors.h ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_errors.h Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_errors.h Fri Apr 12 20:03:27 2019 (r346168) @@ -110,8 +110,8 @@ struct ErrorFreeNotMalloced : ErrorBase { struct ErrorAllocTypeMismatch : ErrorBase { const BufferedStackTrace *dealloc_stack; - HeapAddressDescription addr_description; AllocType alloc_type, dealloc_type; + AddressDescription addr_description; ErrorAllocTypeMismatch() = default; // (*) ErrorAllocTypeMismatch(u32 tid, BufferedStackTrace *stack, uptr addr, @@ -119,9 +119,8 @@ struct ErrorAllocTypeMismatch : ErrorBase { : ErrorBase(tid, 10, "alloc-dealloc-mismatch"), dealloc_stack(stack), alloc_type(alloc_type_), - dealloc_type(dealloc_type_) { - GetHeapAddressInformation(addr, 1, &addr_description); - }; + dealloc_type(dealloc_type_), + addr_description(addr, 1, false) {} void Print(); }; Modified: stable/12/contrib/compiler-rt/lib/asan/asan_flags.inc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_flags.inc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_flags.inc Fri Apr 12 20:03:27 2019 (r346168) @@ -152,8 +152,6 @@ ASAN_FLAG(const char *, suppressions, "", "Suppression ASAN_FLAG(bool, halt_on_error, true, "Crash the program after printing the first error report " "(WARNING: USE AT YOUR OWN RISK!)") -ASAN_FLAG(bool, use_odr_indicator, false, - "Use special ODR indicator symbol for ODR violation detection") ASAN_FLAG(bool, allocator_frees_and_returns_null_on_realloc_zero, true, "realloc(p, 0) is equivalent to free(p) by default (Same as the " "POSIX standard). If set to false, realloc(p, 0) will return a " Modified: stable/12/contrib/compiler-rt/lib/asan/asan_fuchsia.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_fuchsia.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_fuchsia.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -190,6 +190,13 @@ static void ThreadExitHook(void *hook, uptr os_id) { AsanThread::TSDDtor(per_thread); } +bool HandleDlopenInit() { + // Not supported on this platform. + static_assert(!SANITIZER_SUPPORTS_INIT_FOR_DLOPEN, + "Expected SANITIZER_SUPPORTS_INIT_FOR_DLOPEN to be false"); + return false; +} + } // namespace __asan // These are declared (in extern "C") by . Modified: stable/12/contrib/compiler-rt/lib/asan/asan_globals.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_globals.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_globals.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -83,9 +83,11 @@ static bool IsAddressNearGlobal(uptr addr, const __asa } static void ReportGlobal(const Global &g, const char *prefix) { - Report("%s Global[%p]: beg=%p size=%zu/%zu name=%s module=%s dyn_init=%zu\n", - prefix, &g, (void *)g.beg, g.size, g.size_with_redzone, g.name, - g.module_name, g.has_dynamic_init); + Report( + "%s Global[%p]: beg=%p size=%zu/%zu name=%s module=%s dyn_init=%zu " + "odr_indicator=%p\n", + prefix, &g, (void *)g.beg, g.size, g.size_with_redzone, g.name, + g.module_name, g.has_dynamic_init, (void *)g.odr_indicator); if (g.location) { Report(" location (%p): name=%s[%p], %d %d\n", g.location, g.location->filename, g.location->filename, g.location->line_no, @@ -133,6 +135,9 @@ enum GlobalSymbolState { // this method in case compiler instruments global variables through their // local aliases. static void CheckODRViolationViaIndicator(const Global *g) { + // Instrumentation requests to skip ODR check. + if (g->odr_indicator == UINTPTR_MAX) + return; u8 *odr_indicator = reinterpret_cast(g->odr_indicator); if (*odr_indicator == UNREGISTERED) { *odr_indicator = REGISTERED; @@ -183,9 +188,7 @@ static void CheckODRViolationViaPoisoning(const Global // This routine chooses between two different methods of ODR violation // detection. static inline bool UseODRIndicator(const Global *g) { - // Use ODR indicator method iff use_odr_indicator flag is set and - // indicator symbol address is not 0. - return flags()->use_odr_indicator && g->odr_indicator > 0; + return g->odr_indicator > 0; } // Register a global variable. @@ -248,7 +251,7 @@ static void UnregisterGlobal(const Global *g) { // implementation. It might not be worth doing anyway. // Release ODR indicator. - if (UseODRIndicator(g)) { + if (UseODRIndicator(g) && g->odr_indicator != UINTPTR_MAX) { u8 *odr_indicator = reinterpret_cast(g->odr_indicator); *odr_indicator = UNREGISTERED; } Modified: stable/12/contrib/compiler-rt/lib/asan/asan_globals_win.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_globals_win.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_globals_win.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -29,7 +29,7 @@ static void call_on_globals(void (*hook)(__asan_global __asan_global *end = &__asan_globals_end; uptr bytediff = (uptr)end - (uptr)start; if (bytediff % sizeof(__asan_global) != 0) { -#ifdef SANITIZER_DLL_THUNK +#if defined(SANITIZER_DLL_THUNK) || defined(SANITIZER_DYNAMIC_RUNTIME_THUNK) __debugbreak(); #else CHECK("corrupt asan global array"); Modified: stable/12/contrib/compiler-rt/lib/asan/asan_internal.h ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_internal.h Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_internal.h Fri Apr 12 20:03:27 2019 (r346168) @@ -111,6 +111,11 @@ void *AsanDlSymNext(const char *sym); void ReserveShadowMemoryRange(uptr beg, uptr end, const char *name); +// Returns `true` iff most of ASan init process should be skipped due to the +// ASan library being loaded via `dlopen()`. Platforms may perform any +// `dlopen()` specific initialization inside this function. +bool HandleDlopenInit(); + // Add convenient macro for interface functions that may be represented as // weak hooks. #define ASAN_MALLOC_HOOK(ptr, size) \ Modified: stable/12/contrib/compiler-rt/lib/asan/asan_linux.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_linux.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_linux.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -248,6 +248,13 @@ void *AsanDlSymNext(const char *sym) { return dlsym(RTLD_NEXT, sym); } +bool HandleDlopenInit() { + // Not supported on this platform. + static_assert(!SANITIZER_SUPPORTS_INIT_FOR_DLOPEN, + "Expected SANITIZER_SUPPORTS_INIT_FOR_DLOPEN to be false"); + return false; +} + } // namespace __asan #endif // SANITIZER_FREEBSD || SANITIZER_LINUX || SANITIZER_NETBSD || Modified: stable/12/contrib/compiler-rt/lib/asan/asan_malloc_linux.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_malloc_linux.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_malloc_linux.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -209,7 +209,7 @@ INTERCEPTOR(struct fake_mallinfo, mallinfo, void) { } INTERCEPTOR(int, mallopt, int cmd, int value) { - return -1; + return 0; } #endif // SANITIZER_INTERCEPT_MALLOPT_AND_MALLINFO Modified: stable/12/contrib/compiler-rt/lib/asan/asan_malloc_mac.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_malloc_mac.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_malloc_mac.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -61,4 +61,25 @@ using namespace __asan; #include "sanitizer_common/sanitizer_malloc_mac.inc" +namespace COMMON_MALLOC_NAMESPACE { +bool HandleDlopenInit() { + static_assert(SANITIZER_SUPPORTS_INIT_FOR_DLOPEN, + "Expected SANITIZER_SUPPORTS_INIT_FOR_DLOPEN to be true"); + // We have no reliable way of knowing how we are being loaded + // so make it a requirement on Apple platforms to set this environment + // variable to indicate that we want to perform initialization via + // dlopen(). + auto init_str = GetEnv("APPLE_ASAN_INIT_FOR_DLOPEN"); + if (!init_str) + return false; + if (internal_strncmp(init_str, "1", 1) != 0) + return false; + // When we are loaded via `dlopen()` path we still initialize the malloc zone + // so Symbolication clients (e.g. `leaks`) that load the ASan allocator can + // find an initialized malloc zone. + InitMallocZoneFields(); + return true; +} +} // namespace COMMON_MALLOC_NAMESPACE + #endif Modified: stable/12/contrib/compiler-rt/lib/asan/asan_malloc_win.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_malloc_win.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_malloc_win.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -14,9 +14,18 @@ #include "sanitizer_common/sanitizer_platform.h" #if SANITIZER_WINDOWS -#define WIN32_LEAN_AND_MEAN -#include +// Intentionally not including windows.h here, to avoid the risk of +// pulling in conflicting declarations of these functions. (With mingw-w64, +// there's a risk of windows.h pulling in stdint.h.) +typedef int BOOL; +typedef void *HANDLE; +typedef const void *LPCVOID; +typedef void *LPVOID; +#define HEAP_ZERO_MEMORY 0x00000008 +#define HEAP_REALLOC_IN_PLACE_ONLY 0x00000010 + + #include "asan_allocator.h" #include "asan_interceptors.h" #include "asan_internal.h" @@ -125,13 +134,18 @@ void *_recalloc_base(void *p, size_t n, size_t elem_si } ALLOCATION_FUNCTION_ATTRIBUTE -size_t _msize(const void *ptr) { +size_t _msize(void *ptr) { GET_CURRENT_PC_BP_SP; (void)sp; return asan_malloc_usable_size(ptr, pc, bp); } ALLOCATION_FUNCTION_ATTRIBUTE +size_t _msize_base(void *ptr) { + return _msize(ptr); +} + +ALLOCATION_FUNCTION_ATTRIBUTE void *_expand(void *memblock, size_t size) { // _expand is used in realloc-like functions to resize the buffer if possible. // We don't want memory to stand still while resizing buffers, so return 0. @@ -226,6 +240,7 @@ void ReplaceSystemMalloc() { TryToOverrideFunction("_recalloc_base", (uptr)_recalloc); TryToOverrideFunction("_recalloc_crt", (uptr)_recalloc); TryToOverrideFunction("_msize", (uptr)_msize); + TryToOverrideFunction("_msize_base", (uptr)_msize); TryToOverrideFunction("_expand", (uptr)_expand); TryToOverrideFunction("_expand_base", (uptr)_expand); Modified: stable/12/contrib/compiler-rt/lib/asan/asan_new_delete.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_new_delete.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_new_delete.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -26,7 +26,7 @@ // anyway by passing extra -export flags to the linker, which is exactly that // dllexport would normally do. We need to export them in order to make the // VS2015 dynamic CRT (MD) work. -#if SANITIZER_WINDOWS +#if SANITIZER_WINDOWS && defined(_MSC_VER) #define CXX_OPERATOR_ATTRIBUTE #define COMMENT_EXPORT(sym) __pragma(comment(linker, "/export:" sym)) #ifdef _WIN64 Modified: stable/12/contrib/compiler-rt/lib/asan/asan_posix.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_posix.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_posix.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -40,6 +40,51 @@ void AsanOnDeadlySignal(int signo, void *siginfo, void // ---------------------- TSD ---------------- {{{1 +#if SANITIZER_NETBSD || SANITIZER_FREEBSD +// Thread Static Data cannot be used in early init on NetBSD and FreeBSD. +// Reuse the Asan TSD API for compatibility with existing code +// with an alternative implementation. + +static void (*tsd_destructor)(void *tsd) = nullptr; + +struct tsd_key { + tsd_key() : key(nullptr) {} + ~tsd_key() { + CHECK(tsd_destructor); + if (key) + (*tsd_destructor)(key); + } + void *key; +}; + +static thread_local struct tsd_key key; + +void AsanTSDInit(void (*destructor)(void *tsd)) { + CHECK(!tsd_destructor); + tsd_destructor = destructor; +} + +void *AsanTSDGet() { + CHECK(tsd_destructor); + return key.key; +} + +void AsanTSDSet(void *tsd) { + CHECK(tsd_destructor); + CHECK(tsd); + CHECK(!key.key); + key.key = tsd; +} + +void PlatformTSDDtor(void *tsd) { + CHECK(tsd_destructor); + CHECK_EQ(key.key, tsd); + key.key = nullptr; + // Make sure that signal handler can not see a stale current thread pointer. + atomic_signal_fence(memory_order_seq_cst); + AsanThread::TSDDtor(tsd); +} +#else static pthread_key_t tsd_key; static bool tsd_key_inited = false; void AsanTSDInit(void (*destructor)(void *tsd)) { @@ -67,6 +112,7 @@ void PlatformTSDDtor(void *tsd) { } AsanThread::TSDDtor(tsd); } +#endif } // namespace __asan #endif // SANITIZER_POSIX Modified: stable/12/contrib/compiler-rt/lib/asan/asan_report.h ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_report.h Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_report.h Fri Apr 12 20:03:27 2019 (r346168) @@ -12,6 +12,9 @@ // ASan-private header for error reporting functions. //===----------------------------------------------------------------------===// +#ifndef ASAN_REPORT_H +#define ASAN_REPORT_H + #include "asan_allocator.h" #include "asan_internal.h" #include "asan_thread.h" @@ -92,3 +95,4 @@ void ReportMacCfReallocUnknown(uptr addr, uptr zone_pt BufferedStackTrace *stack); } // namespace __asan +#endif // ASAN_REPORT_H Modified: stable/12/contrib/compiler-rt/lib/asan/asan_rtems.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_rtems.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_rtems.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -213,6 +213,12 @@ static void HandleExit() { } } +bool HandleDlopenInit() { + // Not supported on this platform. + static_assert(!SANITIZER_SUPPORTS_INIT_FOR_DLOPEN, + "Expected SANITIZER_SUPPORTS_INIT_FOR_DLOPEN to be false"); + return false; +} } // namespace __asan // These are declared (in extern "C") by . Modified: stable/12/contrib/compiler-rt/lib/asan/asan_rtl.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_rtl.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_rtl.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -383,6 +383,19 @@ void PrintAddressSpaceLayout() { kHighShadowBeg > kMidMemEnd); } +#if defined(__thumb__) && defined(__linux__) +#define START_BACKGROUND_THREAD_IN_ASAN_INTERNAL +#endif + +#ifndef START_BACKGROUND_THREAD_IN_ASAN_INTERNAL +static bool UNUSED __local_asan_dyninit = [] { + MaybeStartBackgroudThread(); + SetSoftRssLimitExceededCallback(AsanSoftRssLimitExceededCallback); + + return false; +}(); +#endif + static void AsanInitInternal() { if (LIKELY(asan_inited)) return; SanitizerToolName = "AddressSanitizer"; @@ -396,6 +409,14 @@ static void AsanInitInternal() { // initialization steps look at flags(). InitializeFlags(); + // Stop performing init at this point if we are being loaded via + // dlopen() and the platform supports it. + if (SANITIZER_SUPPORTS_INIT_FOR_DLOPEN && UNLIKELY(HandleDlopenInit())) { + asan_init_is_running = false; + VReport(1, "AddressSanitizer init is being performed for dlopen().\n"); + return; + } + AsanCheckIncompatibleRT(); AsanCheckDynamicRTPrereqs(); AvoidCVE_2016_2143(); @@ -420,6 +441,8 @@ static void AsanInitInternal() { __asan_option_detect_stack_use_after_return = flags()->detect_stack_use_after_return; + __sanitizer::InitializePlatformEarly(); + // Re-exec ourselves if we need to set additional env or command line args. MaybeReexec(); @@ -447,8 +470,10 @@ static void AsanInitInternal() { allocator_options.SetFrom(flags(), common_flags()); InitializeAllocator(allocator_options); +#ifdef START_BACKGROUND_THREAD_IN_ASAN_INTERNAL MaybeStartBackgroudThread(); SetSoftRssLimitExceededCallback(AsanSoftRssLimitExceededCallback); +#endif // On Linux AsanThread::ThreadStart() calls malloc() that's why asan_inited // should be set to 1 prior to initializing the threads. Modified: stable/12/contrib/compiler-rt/lib/asan/asan_thread.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_thread.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_thread.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -223,9 +223,11 @@ void AsanThread::Init(const InitOptions *options) { atomic_store(&stack_switching_, false, memory_order_release); CHECK_EQ(this->stack_size(), 0U); SetThreadStackAndTls(options); - CHECK_GT(this->stack_size(), 0U); - CHECK(AddrIsInMem(stack_bottom_)); - CHECK(AddrIsInMem(stack_top_ - 1)); + if (stack_top_ != stack_bottom_) { + CHECK_GT(this->stack_size(), 0U); + CHECK(AddrIsInMem(stack_bottom_)); + CHECK(AddrIsInMem(stack_top_ - 1)); + } ClearShadowForThreadStackAndTLS(); fake_stack_ = nullptr; if (__asan_option_detect_stack_use_after_return) @@ -289,20 +291,23 @@ void AsanThread::SetThreadStackAndTls(const InitOption DCHECK_EQ(options, nullptr); uptr tls_size = 0; uptr stack_size = 0; - GetThreadStackAndTls(tid() == 0, const_cast(&stack_bottom_), - const_cast(&stack_size), &tls_begin_, &tls_size); + GetThreadStackAndTls(tid() == 0, &stack_bottom_, &stack_size, &tls_begin_, + &tls_size); stack_top_ = stack_bottom_ + stack_size; tls_end_ = tls_begin_ + tls_size; dtls_ = DTLS_Get(); - int local; - CHECK(AddrIsInStack((uptr)&local)); + if (stack_top_ != stack_bottom_) { + int local; + CHECK(AddrIsInStack((uptr)&local)); + } } #endif // !SANITIZER_FUCHSIA && !SANITIZER_RTEMS void AsanThread::ClearShadowForThreadStackAndTLS() { - PoisonShadow(stack_bottom_, stack_top_ - stack_bottom_, 0); + if (stack_top_ != stack_bottom_) + PoisonShadow(stack_bottom_, stack_top_ - stack_bottom_, 0); if (tls_begin_ != tls_end_) { uptr tls_begin_aligned = RoundDownTo(tls_begin_, SHADOW_GRANULARITY); uptr tls_end_aligned = RoundUpTo(tls_end_, SHADOW_GRANULARITY); @@ -314,6 +319,9 @@ void AsanThread::ClearShadowForThreadStackAndTLS() { bool AsanThread::GetStackFrameAccessByAddr(uptr addr, StackFrameAccess *access) { + if (stack_top_ == stack_bottom_) + return false; + uptr bottom = 0; if (AddrIsInStack(addr)) { bottom = stack_bottom(); Modified: stable/12/contrib/compiler-rt/lib/asan/asan_win.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_win.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_win.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -159,6 +159,14 @@ INTERCEPTOR_WINAPI(DWORD, CreateThread, namespace __asan { void InitializePlatformInterceptors() { + // The interceptors were not designed to be removable, so we have to keep this + // module alive for the life of the process. + HMODULE pinned; + CHECK(GetModuleHandleExW(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | + GET_MODULE_HANDLE_EX_FLAG_PIN, + (LPCWSTR)&InitializePlatformInterceptors, + &pinned)); + ASAN_INTERCEPT_FUNC(CreateThread); ASAN_INTERCEPT_FUNC(SetUnhandledExceptionFilter); @@ -312,6 +320,13 @@ int __asan_set_seh_filter() { if (prev_seh_handler != &SEHHandler) default_seh_handler = prev_seh_handler; return 0; +} + +bool HandleDlopenInit() { + // Not supported on this platform. + static_assert(!SANITIZER_SUPPORTS_INIT_FOR_DLOPEN, + "Expected SANITIZER_SUPPORTS_INIT_FOR_DLOPEN to be false"); + return false; } #if !ASAN_DYNAMIC Modified: stable/12/contrib/compiler-rt/lib/asan/asan_win_dll_thunk.cc ============================================================================== --- stable/12/contrib/compiler-rt/lib/asan/asan_win_dll_thunk.cc Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/asan/asan_win_dll_thunk.cc Fri Apr 12 20:03:27 2019 (r346168) @@ -48,6 +48,7 @@ INTERCEPT_WRAP_W_WWW(_recalloc) INTERCEPT_WRAP_W_WWW(_recalloc_base) INTERCEPT_WRAP_W_W(_msize) +INTERCEPT_WRAP_W_W(_msize_base) INTERCEPT_WRAP_W_W(_expand) INTERCEPT_WRAP_W_W(_expand_dbg) Modified: stable/12/contrib/compiler-rt/lib/builtins/arm/addsf3.S ============================================================================== --- stable/12/contrib/compiler-rt/lib/builtins/arm/addsf3.S Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/builtins/arm/addsf3.S Fri Apr 12 20:03:27 2019 (r346168) @@ -178,7 +178,7 @@ LOCAL_LABEL(do_substraction): push {r0, r1, r2, r3} movs r0, r4 - bl __clzsi2 + bl SYMBOL_NAME(__clzsi2) movs r5, r0 pop {r0, r1, r2, r3} // shift = rep_clz(aSignificand) - rep_clz(implicitBit << 3); Modified: stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmp.S ============================================================================== --- stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmp.S Fri Apr 12 19:05:47 2019 (r346167) +++ stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmp.S Fri Apr 12 20:03:27 2019 (r346168) @@ -55,7 +55,7 @@ DEFINE_COMPILERRT_FUNCTION(__aeabi_cdcmpeq) mov ip, #APSR_C msr APSR_nzcvq, ip #else - msr CPSR_f, #APSR_C + msr APSR_nzcvq, #APSR_C *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Fri Apr 12 20:03:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 419F21584E7C; Fri, 12 Apr 2019 20:03:39 +0000 (UTC) (envelope-from lwhsu.freebsd@gmail.com) Received: from mail-yw1-f66.google.com (mail-yw1-f66.google.com [209.85.161.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C657D8A5BA; Fri, 12 Apr 2019 20:03:38 +0000 (UTC) (envelope-from lwhsu.freebsd@gmail.com) Received: by mail-yw1-f66.google.com with SMTP id z9so3822394ywd.6; Fri, 12 Apr 2019 13:03:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=X6NDRV5pJO06b5BWHorTbbR2N6Hw/fi29QZrMYBgIjc=; b=ahMxWbfL0h3oOiwjaGQdPSt/OZEG24XsNFuew4QGhW5OSt5/wJs7GJL1D5RefhkpYN 24DSv0aU+5ESYeHhDwxrWt9kAvCFW8f8Nn0iT6LFJpVbg5NjD9IcN0ZH2sRBAxkPsSOk 5/B6o6JVHEEkLj5Bl16fHZSc3Rkq+3dgzLVqSvJS31ByqXV8jFtkFm/4KSe2Vk9Mmf/h q+V9nPFWlkCeNmNvJ1ooSH1ehI4+/pdVnhq7hhhyJ3Em5ras4dp0A9I3E+eVv2YYd8PM ugRl2knVvTIT4XIWiDrvu85O9Vg06f1wBD4MYEfaKUEStXXh/5qPi3V2nuFahREbStiw tpig== X-Gm-Message-State: APjAAAUNzmnLTqXrLQ6alwiKG2/5is8gfFucFCdpsJldDcxQaihxw+Ho 1YDNx4UgLk6pgcafH27QyY7B1lw3IrA2U6rl7BQ= X-Google-Smtp-Source: APXvYqzd39/FjJWwmTYqxqlg9Q2TiWaQ1HVn2u3yBhbSZ7H1uUxxMQotrrvhDuVf12UhnUuvHWphLiVMArFlHB2bpNU= X-Received: by 2002:a81:4f10:: with SMTP id d16mr46525924ywb.184.1555098942697; Fri, 12 Apr 2019 12:55:42 -0700 (PDT) MIME-Version: 1.0 References: <201904121835.x3CIZETP017600@repo.freebsd.org> <5DF1F115-692D-48B7-A52C-AD1BF5E738E5@gmail.com> In-Reply-To: <5DF1F115-692D-48B7-A52C-AD1BF5E738E5@gmail.com> From: Li-Wen Hsu Date: Sat, 13 Apr 2019 04:55:30 +0900 Message-ID: Subject: Re: svn commit: r346160 - head/usr.bin/mandoc To: Enji Cooper Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: C657D8A5BA X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 20:03:39 -0000 On Sat, Apr 13, 2019 at 3:53 AM Enji Cooper wrote: > > > > On Apr 12, 2019, at 11:35 AM, Li-Wen Hsu wrote: > > > > Author: lwhsu > > Date: Fri Apr 12 18:35:14 2019 > > New Revision: 346160 > > URL: https://svnweb.freebsd.org/changeset/base/346160 > > > > Log: > > Suppress old gcc warning about null format string > > > > This is workaround to make head build on gcc using architectures > > > > Sponsored by: The FreeBSD Foundation > > MFC-with: r346149 > > > > Modified: > > head/usr.bin/mandoc/Makefile > > > > Modified: head/usr.bin/mandoc/Makefile > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D > > --- head/usr.bin/mandoc/Makefile Fri Apr 12 18:13:57 2019 (= r346159) > > +++ head/usr.bin/mandoc/Makefile Fri Apr 12 18:35:14 2019 (= r346160) > > @@ -97,6 +97,8 @@ SRCS=3D ${LIB_SRCS} \ > > WARNS?=3D 3 > > CFLAGS+=3D -DHAVE_CONFIG_H \ > > -I${SRCTOP}/lib/libopenbsd/ > > +# This can be removed after swtiching to newer gcc > > +CFLAGS.gcc+=3D -Wno-format > > LIBADD=3D openbsd z > > > > .include > > Couldn=E2=80=99t this be fixed upstream and pulled back in, inste= ad of ignoring the warning? That's possible, but I don't know how much of the possibility that upstream is willing to fix a warning that only occurs in old versions of gcc, and it looks a false positive to me. I am here to put a band-aid first. Best, Li-Wen From owner-svn-src-all@freebsd.org Fri Apr 12 20:11:09 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F1AF61584FF6; Fri, 12 Apr 2019 20:11:08 +0000 (UTC) (envelope-from tychon@freebsd.org) Received: from pb-smtp1.pobox.com (pb-smtp1.pobox.com [64.147.108.70]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 95FDE8AB84; Fri, 12 Apr 2019 20:11:08 +0000 (UTC) (envelope-from tychon@freebsd.org) Received: from pb-smtp1.pobox.com (unknown [127.0.0.1]) by pb-smtp1.pobox.com (Postfix) with ESMTP id D5B7A133881; Fri, 12 Apr 2019 16:11:01 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=content-type :mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; s=sasl; bh= F378u8Cgqa5KYo5W60fhER7FXQw=; b=lZTjewozXKWLSquspR47B1gCVJWJLeHC z9slRTENZfIVM6iU5laCsxRFdK7Be/ltVcHkPHBJVORzrb4bf9xZWJb3+2aJtpnm zboEy2AWKVBZEldcGl6iwMy9oxsy940g/lJosbCb5kgZbdNpmsNAKmS76LDT9e48 g2nbGrU5ykA= Received: from pb-smtp1.nyi.icgroup.com (unknown [127.0.0.1]) by pb-smtp1.pobox.com (Postfix) with ESMTP id C9AF9133880; Fri, 12 Apr 2019 16:11:01 -0400 (EDT) Received: from [10.0.1.195] (unknown [146.115.68.244]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pb-smtp1.pobox.com (Postfix) with ESMTPSA id DF13613387D; Fri, 12 Apr 2019 16:11:00 -0400 (EDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\)) Subject: Re: svn commit: r346150 - head/sys/vm From: Tycho Nightingale In-Reply-To: <94A39E35-A8E0-42A4-8467-096D4AAD0F89@gmail.com> Date: Fri, 12 Apr 2019 16:10:59 -0400 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <4DA68C34-12A0-4E62-B868-F7BE10CB06BD@freebsd.org> References: <201904121246.x3CCkP2m027680@repo.freebsd.org> <94A39E35-A8E0-42A4-8467-096D4AAD0F89@gmail.com> To: Enji Cooper X-Mailer: Apple Mail (2.3445.9.1) X-Pobox-Relay-ID: 178FEA8A-5D5F-11E9-9CC3-1646B3964D18-09779102!pb-smtp1.pobox.com X-Rspamd-Queue-Id: 95FDE8AB84 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 20:11:09 -0000 > On Apr 12, 2019, at 12:43 PM, Enji Cooper = wrote: >=20 >=20 >> On Apr 12, 2019, at 5:46 AM, Tycho Nightingale = wrote: >>=20 >> Author: tychon >> Date: Fri Apr 12 12:46:25 2019 >> New Revision: 346150 >> URL: https://svnweb.freebsd.org/changeset/base/346150 >>=20 >> Log: >> for a cache-only zone the destructor tries to destroy a non-existent = keg >>=20 >> Reviewed by: markj >> Sponsored by: Dell EMC Isilon >> Differential Revision: https://reviews.freebsd.org/D19835 >=20 >=20 > Hi Tycho! > Is the goal of this change to prevent a panic (with an = INVARIANTS kernel)? > Thank you! > -Enji Hi, The goal of this change is to fix a regression introduced in r343026. = It does cause a panic independent of INVARIANTS. Fortunately there = isn=E2=80=99t currently any in-tree code which triggers the panic. It = does however show up when running with the patch under review in D19845. Tycho From owner-svn-src-all@freebsd.org Fri Apr 12 20:35:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 97CE01585834; Fri, 12 Apr 2019 20:35:12 +0000 (UTC) (envelope-from sjg@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 3C8F28BA11; Fri, 12 Apr 2019 20:35:12 +0000 (UTC) (envelope-from sjg@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 0544C268F6; Fri, 12 Apr 2019 20:35:12 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3CKZB48081322; Fri, 12 Apr 2019 20:35:11 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3CKZBPQ081321; Fri, 12 Apr 2019 20:35:11 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201904122035.x3CKZBPQ081321@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Fri, 12 Apr 2019 20:35:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346169 - stable/12/share/man/man5 X-SVN-Group: stable-12 X-SVN-Commit-Author: sjg X-SVN-Commit-Paths: stable/12/share/man/man5 X-SVN-Commit-Revision: 346169 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3C8F28BA11 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.982,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 20:35:12 -0000 Author: sjg Date: Fri Apr 12 20:35:11 2019 New Revision: 346169 URL: https://svnweb.freebsd.org/changeset/base/346169 Log: Regenerate src.conf.5 for recent changes. Modified: stable/12/share/man/man5/src.conf.5 Modified: stable/12/share/man/man5/src.conf.5 ============================================================================== --- stable/12/share/man/man5/src.conf.5 Fri Apr 12 20:03:27 2019 (r346168) +++ stable/12/share/man/man5/src.conf.5 Fri Apr 12 20:35:11 2019 (r346169) @@ -1,6 +1,6 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. .\" $FreeBSD$ -.Dd November 29, 2018 +.Dd April 12, 2019 .Dt SRC.CONF 5 .Os .Sh NAME @@ -137,6 +137,29 @@ This must be set in the environment, make command line .Pa /etc/src-env.conf , not .Pa /etc/src.conf . +.It Va WITH_BEARSSL +Build the BearSSL library. +.Pp +BearSSL is a tiny SSL library suitable for embedded environments. +For details see +.Lk http://www.BearSSL.org/ +.Pp +This library is currently only used to perform +signature verification and related operations +for Verified Exec and +.Xr loader 8 . +When set, these options are also in effect: +.Pp +.Bl -inset -compact +.It Va WITH_LOADER_VERIEXEC +(unless +.Va WITHOUT_LOADER_VERIEXEC +is set explicitly) +.It Va WITH_VERIEXEC +(unless +.Va WITHOUT_VERIEXEC +is set explicitly) +.El .It Va WITHOUT_BHYVE Set to not build or install .Xr bhyve 8 , @@ -314,6 +337,8 @@ When set, it enforces these options: .It .Va WITHOUT_CTF .It +.Va WITHOUT_LOADER_ZFS +.It .Va WITHOUT_ZFS .El .It Va WITHOUT_CLANG @@ -1066,7 +1091,7 @@ The option should be used rather than this in most cases. .Pp This is a default setting on -riscv/riscv64 and sparc64/sparc64. +arm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64. .It Va WITH_LLVM_TARGET_AARCH64 Set to build LLVM target support for AArch64. The @@ -1074,7 +1099,7 @@ The option should be used rather than this in most cases. .Pp This is a default setting on -amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. +amd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. .It Va WITHOUT_LLVM_TARGET_ALL Set to only build the required LLVM target support. This option is preferred to specific target support options. @@ -1140,7 +1165,7 @@ The option should be used rather than this in most cases. .Pp This is a default setting on -riscv/riscv64 and sparc64/sparc64. +arm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64. .It Va WITH_LLVM_TARGET_MIPS Set to build LLVM target support for MIPS. The @@ -1148,7 +1173,7 @@ The option should be used rather than this in most cases. .Pp This is a default setting on -amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. +amd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. .It Va WITHOUT_LLVM_TARGET_POWERPC Set to not build LLVM target support for PowerPC. The @@ -1156,7 +1181,7 @@ The option should be used rather than this in most cases. .Pp This is a default setting on -riscv/riscv64 and sparc64/sparc64. +arm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64. .It Va WITH_LLVM_TARGET_POWERPC Set to build LLVM target support for PowerPC. The @@ -1164,7 +1189,7 @@ The option should be used rather than this in most cases. .Pp This is a default setting on -amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. +amd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. .It Va WITHOUT_LLVM_TARGET_SPARC Set to not build LLVM target support for SPARC. The @@ -1172,7 +1197,7 @@ The option should be used rather than this in most cases. .Pp This is a default setting on -riscv/riscv64 and sparc64/sparc64. +arm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64. .It Va WITH_LLVM_TARGET_SPARC Set to build LLVM target support for SPARC. The @@ -1180,7 +1205,7 @@ The option should be used rather than this in most cases. .Pp This is a default setting on -amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. +amd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. .It Va WITHOUT_LLVM_TARGET_X86 Set to not build LLVM target support for X86. The @@ -1188,7 +1213,7 @@ The option should be used rather than this in most cases. .Pp This is a default setting on -riscv/riscv64 and sparc64/sparc64. +arm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64. .It Va WITH_LLVM_TARGET_X86 Set to build LLVM target support for X86. The @@ -1196,7 +1221,7 @@ The option should be used rather than this in most cases. .Pp This is a default setting on -amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. +amd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. .It Va WITH_LOADER_FIREWIRE Enable firewire support in /boot/loader on x86. This option is a nop on all other platforms. @@ -1230,6 +1255,15 @@ Set to build ubldr. .Pp This is a default setting on arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. +.It Va WITH_LOADER_VERIEXEC +Enable building +.Xr loader 8 +with support for verifcation similar to Verified Exec. +.Pp +It depends on +.Va WITH_BEARSSL +.It Va WITHOUT_LOADER_ZFS +Set to not build ZFS file system boot loader support. .It Va WITHOUT_LOCALES Set to not build localization files; see .Xr locale 1 . @@ -1820,6 +1854,15 @@ Set to not build user accounting tools such as .Xr lastlogin 8 and .Xr utx 8 . +.It Va WITH_VERIEXEC +Enable building +.Xr veriexec 8 +which loads the contents of verified manifests into the kernel +for use by +.Xr mac_veriexec 4 +.Pp +It depends on +.Va WITH_BEARSSL .It Va WITHOUT_VI Set to not build and install vi, view, ex and related programs. .It Va WITHOUT_VT @@ -1854,7 +1897,7 @@ without support for the IEEE 802.1X protocol and witho support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS protocols (usable only via 802.1X). .It Va WITHOUT_ZFS -Set to not build ZFS file system. +Set to not build ZFS file system kernel module, libraries, and user commands. .It Va WITHOUT_ZONEINFO Set to not build the timezone database. When set, it enforces these options: From owner-svn-src-all@freebsd.org Fri Apr 12 20:35:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 11F0E1585870; Fri, 12 Apr 2019 20:35:40 +0000 (UTC) (envelope-from sjg@juniper.net) Received: from mx0a-00273201.pphosted.com (mx0a-00273201.pphosted.com [208.84.65.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.pphosted.com", Issuer "Thawte RSA CA 2018" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 842688BB22; Fri, 12 Apr 2019 20:35:39 +0000 (UTC) (envelope-from sjg@juniper.net) Received: from pps.filterd (m0108158.ppops.net [127.0.0.1]) by mx0a-00273201.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x3CKYRpr011690; Fri, 12 Apr 2019 13:35:36 -0700 Received: from nam01-bn3-obe.outbound.protection.outlook.com (mail-bn3nam01lp2057.outbound.protection.outlook.com [104.47.33.57]) by mx0a-00273201.pphosted.com with ESMTP id 2rtxt98by4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Fri, 12 Apr 2019 13:35:36 -0700 Received: from SN4PR0501CA0045.namprd05.prod.outlook.com (2603:10b6:803:41::22) by DM6PR05MB4187.namprd05.prod.outlook.com (2603:10b6:5:91::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1813.3; Fri, 12 Apr 2019 20:35:33 +0000 Received: from CO1NAM05FT047.eop-nam05.prod.protection.outlook.com (2a01:111:f400:7e50::204) by SN4PR0501CA0045.outlook.office365.com (2603:10b6:803:41::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.1792.11 via Frontend Transport; Fri, 12 Apr 2019 20:35:32 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning juniper.net discourages use of 66.129.239.12 as permitted sender) Received: from P-EXFEND-EQX-01.jnpr.net (66.129.239.12) by CO1NAM05FT047.mail.protection.outlook.com (10.152.96.162) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.1792.7 via Frontend Transport; Fri, 12 Apr 2019 20:35:31 +0000 Received: from P-EXBEND-EQX-01.jnpr.net (10.104.8.52) by P-EXFEND-EQX-01.jnpr.net (10.104.8.54) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Fri, 12 Apr 2019 13:35:27 -0700 Received: from p-mailhub01.juniper.net (10.104.20.6) by P-EXBEND-EQX-01.jnpr.net (10.104.8.52) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Fri, 12 Apr 2019 13:35:27 -0700 Received: from kaos.jnpr.net (kaos.jnpr.net [172.23.50.162]) by p-mailhub01.juniper.net (8.14.4/8.11.3) with ESMTP id x3CKZPMA010039; Fri, 12 Apr 2019 13:35:25 -0700 (envelope-from sjg@juniper.net) Received: by kaos.jnpr.net (Postfix, from userid 1377) id 54D127C8EB; Fri, 12 Apr 2019 13:35:25 -0700 (PDT) Received: from kaos.jnpr.net (localhost [127.0.0.1]) by kaos.jnpr.net (Postfix) with ESMTP id 530B57C8EA; Fri, 12 Apr 2019 13:35:25 -0700 (PDT) To: John Baldwin CC: "Herbert J. Skuhra" , , , , , Subject: Re: svn commit: r346145 - in stable/12: contrib/bearssl etc/mtree include lib lib/libbearssl lib/libsecureboot lib/libsecureboot/tests sbin sbin/veriexec share/mk stand stand/common stand/ficl stand/fi... In-Reply-To: <3b07eef9-ef5a-8925-3d64-bb6f2bcfdc6b@FreeBSD.org> References: <201904120103.x3C1302P053933@repo.freebsd.org> <87o95bf70b.wl-herbert@gojira.at> <14402.1555094583@kaos.jnpr.net> <3b07eef9-ef5a-8925-3d64-bb6f2bcfdc6b@FreeBSD.org> Comments: In-reply-to: John Baldwin message dated "Fri, 12 Apr 2019 12:02:12 -0700." From: "Simon J. Gerraty" X-Mailer: MH-E 8.6+git; nmh 1.7.1; GNU Emacs 26.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <41432.1555101325.1@kaos.jnpr.net> Date: Fri, 12 Apr 2019 13:35:25 -0700 Message-ID: <46386.1555101325@kaos.jnpr.net> X-EXCLAIMER-MD-CONFIG: e3cb0ff2-54e7-4646-8a04-0dae4ac7b136 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:66.129.239.12; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10019020)(346002)(39860400002)(376002)(396003)(136003)(2980300002)(199004)(189003)(69596002)(53936002)(68736007)(106466001)(97876018)(316002)(50466002)(105596002)(53416004)(76506005)(7696005)(76176011)(97736004)(54906003)(6916009)(4744005)(336012)(117636001)(50226002)(77096007)(5660300002)(186003)(8936002)(81156014)(16586007)(26005)(11346002)(486006)(476003)(126002)(478600001)(81166006)(305945005)(356004)(47776003)(90966002)(8676002)(446003)(229853002)(7126003)(86362001)(97756001)(9686003)(23726003)(6266002)(107886003)(2906002)(6246003)(4326008)(55016002)(93886005)(46406003); DIR:OUT; SFP:1102; SCL:1; SRVR:DM6PR05MB4187; H:P-EXFEND-EQX-01.jnpr.net; FPR:; SPF:SoftFail; LANG:en; PTR:InfoDomainNonexistent; A:1; MX:1; X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 88f58370-33de-4dca-550f-08d6bf86686f X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4710095)(4711036)(2017052603328); SRVR:DM6PR05MB4187; X-MS-TrafficTypeDiagnostic: DM6PR05MB4187: X-Microsoft-Antispam-PRVS: X-Forefront-PRVS: 0005B05917 X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: xFvsI8jw+1udm2n670PXAN3q0ux4WHEoCv36AwjMrQm4pn4rtkmDa9EpRHTvnYSw/z2/RP4sUMevRMG2p/jWyhtYIU4sCcXtAZz85UN6i9SNO1UN/pGdM5TAaOsjFOmgff0Vazw1L0wdYf6STQU+CQzT4RiuspKpFRXFH5XG/lnqbw3lPz+yWXNMS9VoDL7KOrgRMDGwavnE4YnBZsJexFzAA6/4NevHYj9j6Zcvn25Y3mR0ImtxL5RLZt1Feoy9XoCgyy7OSZPhm0Dugb7VEafGoGWwR2do/hSR6+5HOfvLbo4q7dQ/zXwmCqSReZbEkb7zT0eZkSo8UNgGv+rvb/8BRNPWZ1W0+MFTBUZ7DGyRYDiCNdlN/pFnfplz6hs00EObtEVVEiPzhizAlc81+0EuY24M3Iz+orpVkHUw3j8= X-OriginatorOrg: juniper.net X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2019 20:35:31.6292 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 88f58370-33de-4dca-550f-08d6bf86686f X-MS-Exchange-CrossTenant-Id: bea78b3c-4cdb-4130-854a-1d193232e5f4 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=bea78b3c-4cdb-4130-854a-1d193232e5f4; Ip=[66.129.239.12]; Helo=[P-EXFEND-EQX-01.jnpr.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR05MB4187 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-04-12_11:, , signatures=0 X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=778 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1904120137 X-Rspamd-Queue-Id: 842688BB22 X-Spamd-Bar: ------ X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.99)[-0.989,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2019 20:35:40 -0000 John Baldwin wrote: > > but would it not be more correct to just run makeman ? > > Yes, I would just run makeman and commit the result. Ideally you'd > have included that in the original MFC even, but a followup commit > is fine. I don't think it's really useful to try to MFC the 344853 > change as-is. Done. From owner-svn-src-all@freebsd.org Sat Apr 13 00:54:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9B117154EAB8; Sat, 13 Apr 2019 00:54:57 +0000 (UTC) (envelope-from gjb@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 3A009945BD; Sat, 13 Apr 2019 00:54:57 +0000 (UTC) (envelope-from gjb@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 0F46D153D; Sat, 13 Apr 2019 00:54:57 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3D0su2u020469; Sat, 13 Apr 2019 00:54:56 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D0su1n020468; Sat, 13 Apr 2019 00:54:56 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201904130054.x3D0su1n020468@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Sat, 13 Apr 2019 00:54: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: r346171 - stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: stable-11 X-SVN-Commit-Author: gjb X-SVN-Commit-Paths: stable/11/release/doc/en_US.ISO8859-1/relnotes X-SVN-Commit-Revision: 346171 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3A009945BD X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.94)[-0.939,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 00:54:57 -0000 Author: gjb Date: Sat Apr 13 00:54:56 2019 New Revision: 346171 URL: https://svnweb.freebsd.org/changeset/base/346171 Log: Fix some grammar nits. Submitted by: adamw Sponsored by: The FreeBSD Foundation Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Apr 12 23:22:27 2019 (r346170) +++ stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml Sat Apr 13 00:54:56 2019 (r346171) @@ -212,7 +212,7 @@ names. The &man.pfctl.8; utility has been - updated to provide more clear output and reference the + updated to provide clearer output and reference the net.pf.request_maxcount &man.sysctl.8; if a defined table is too large. @@ -221,9 +221,8 @@ names. The &man.sh.1; utility has been updated - to add the pipefail option which allows - checking the exit status of all commands in a pipeline more - easily. + to add the pipefail option which simplifies + checking the exit status of all commands in a pipeline. The &man.patch.1; utility has been updated to exit successfully if the input patch file is From owner-svn-src-all@freebsd.org Sat Apr 13 00:55:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8C98E154EB14 for ; Sat, 13 Apr 2019 00:55:34 +0000 (UTC) (envelope-from asomers@gmail.com) Received: from mail-lj1-f175.google.com (mail-lj1-f175.google.com [209.85.208.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8328A946DC for ; Sat, 13 Apr 2019 00:55:33 +0000 (UTC) (envelope-from asomers@gmail.com) Received: by mail-lj1-f175.google.com with SMTP id y6so10395567ljd.12 for ; Fri, 12 Apr 2019 17:55:33 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:cc; bh=Ctjy8hVxT7Pc4xHKXafFu9vZ6TE5VHOE/5n/YkJBylM=; b=WapGyMxjJ4Xc3wr8JCVLUO9/kU2UNiMRsVsP5VpZ5rRkYgaIidtDO3pHTi0zAGC7tY EJbcyWapoFSzfzPWnK8LebmjaCxXD6/wMJ5XnhUJe5RMOsqJqC7w0M2zNxL9Y+sfYGZk mulr41FcE/0DTDHVzyP1Ly/8snWk87sKegD0UZDiDyH/2I6Yfqv0HYXXT1Jx4abbened SP5ziGmvaO/V9i0Bb0Jjx+1U7k6TqaVDpU+X3J8jMxPDYX/UtXx8q0JGhdujlPGk4W8W TEu2CKgKmRSkILWnI6Mb9fYw6SbbKr1kmQ6O5qx2QbtyQ0845qwo6PdjjP0hcbMxvJ12 UW1Q== X-Gm-Message-State: APjAAAW/2RUp9nKK8bJYEiU78jmXlrDaMTovFTHVWwwxL1mXVs0H4k7t Eu1vM3nPxlmv98Vip9Y9bCy4GQAv1bhnQQP4w4UvDpX11jw= X-Received: by 2002:a2e:8550:: with SMTP id u16mt8417945ljj.11.1555116925638; Fri, 12 Apr 2019 17:55:25 -0700 (PDT) MIME-Version: 1.0 References: <201904101302.x3AD2XKg012359@repo.freebsd.org> In-Reply-To: <201904101302.x3AD2XKg012359@repo.freebsd.org> From: Alan Somers Date: Fri, 12 Apr 2019 18:55:13 -0600 Message-ID: Subject: Re: svn commit: r346078 - head/sys/kern Cc: src-committers , svn-src-all , svn-src-head Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 8328A946DC X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org; spf=pass (mx1.freebsd.org: domain of asomers@gmail.com designates 209.85.208.175 as permitted sender) smtp.mailfrom=asomers@gmail.com X-Spamd-Result: default: False [-1.75 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.99)[-0.986,0]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[svn-src-all@freebsd.org]; DMARC_NA(0.00)[freebsd.org]; NEURAL_HAM_SHORT(-0.41)[-0.414,0]; MIME_TRACE(0.00)[0:+]; TO_DN_ALL(0.00)[]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[175.208.85.209.list.dnswl.org : 127.0.5.0]; MISSING_TO(2.00)[]; RCVD_TLS_LAST(0.00)[]; FORGED_SENDER(0.30)[asomers@freebsd.org,asomers@gmail.com]; R_DKIM_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; FROM_NEQ_ENVFROM(0.00)[asomers@freebsd.org,asomers@gmail.com]; IP_SCORE(-1.34)[ip: (-0.60), ipnet: 209.85.128.0/17(-3.87), asn: 15169(-2.19), country: US(-0.06)]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 00:55:34 -0000 On Wed, Apr 10, 2019 at 7:02 AM Alan Somers wrote: > > Author: asomers > Date: Wed Apr 10 13:02:33 2019 > New Revision: 346078 > URL: https://svnweb.freebsd.org/changeset/base/346078 > > Log: > fix cache_lookup's documentation > > cache_lookup's documentation got dislocated by r324378. Relocate and expand > it. > > Reviewed by: jhb, kib > MFC after: 2 weeks > Sponsored by: The FreeBSD Foundation > > Modified: > head/sys/kern/vfs_cache.c Should've added a Differential Revision: https://reviews.freebsd.org/D19868 to the commit message, sorry! -Alan From owner-svn-src-all@freebsd.org Sat Apr 13 01:16:36 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0BDD21565617; Sat, 13 Apr 2019 01:16:36 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg1-x544.google.com (mail-pg1-x544.google.com [IPv6:2607:f8b0:4864:20::544]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7C3DD95A27; Sat, 13 Apr 2019 01:16:35 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg1-x544.google.com with SMTP id z9so5954258pgu.10; Fri, 12 Apr 2019 18:16:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=XRSes/iCU5+saotM9wxglHk9v7qStNtJVfwMjuzfO64=; b=noFl8RsIl5+LvND48aBYe2NOrdbunKV2u5dCvq9wRUHLfnqlcWpneHZ3QMTpSRZXo+ otJxK7ZfSW4Y3XGzObZ3hmVIxl67u9j+XMCvFe3wJ521gmNDvcdkW9VX79ijNdH5Xxdn SBrbfRyK46e/ChK6wu7F4XVyu97WrOtXgq+2/stNyjvLA1UopgVA67BUYrl0xsdAMIha men7foqJ11Kys/TsER/roQWeUWkKp2ynz6dd5pqsiEAXDUSMugGfF+UTL6tZPBQVFDfh nNcy13wG1HueS1RdE7adIEuNaO/UuHLbgQHabLqd2AOd+872+DNTQqR8MHpsfCco5sTD TTag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=XRSes/iCU5+saotM9wxglHk9v7qStNtJVfwMjuzfO64=; b=XsY4TQEdyptaUZGdCIlT3+G9OQt/bxYD0Ja/O5320tA0WFsIhLXdlXv77u9w6txlsM sjM2EwKl42XQNty7e3mhU2kIYIThWAlFfjmMk2Lkq7YF4/2EeMDy1c1WRixT+b4qSNEw 8zLKgQmbfbDDGAP6Fl1febzhftjC+UmirFu1NmDpoj/BzRqcE5Xx6qZ1I/EXtE/fToFP 7phc8Hh88RpZAAZMc7sq+Gaut1mgr5G9IFC6fHbv8o3m0M4LMUsdA3cv5vrK5MjzTEmg Mhz/P7hrHph5JHK6SKSQtpWFvhawVmBqr4weV/mC/wnH/9dJVWeukNr+Bu3yuAx0qP9C TS9Q== X-Gm-Message-State: APjAAAW98PVE+xEiApO7TIswDp9gK1I58A5ov7BlDndE9csYjxW0CP09 1QVWCblJapIOHp803NpGnmxg4ueFz14= X-Google-Smtp-Source: APXvYqzXgFLx36R9d03X9k3tkPY9gTDH8z6YM+4qMM1qC9WI1XX8MJ275ytVkZbWmONEZ6LKAi77zQ== X-Received: by 2002:a62:ac02:: with SMTP id v2mr61029615pfe.163.1555118193640; Fri, 12 Apr 2019 18:16:33 -0700 (PDT) Received: from [192.168.20.21] (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id o68sm105736075pfi.140.2019.04.12.18.16.32 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 12 Apr 2019 18:16:33 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.8\)) Subject: Re: svn commit: r346150 - head/sys/vm From: "Enji Cooper (yaneurabeya)" In-Reply-To: <4DA68C34-12A0-4E62-B868-F7BE10CB06BD@freebsd.org> Date: Fri, 12 Apr 2019 18:16:32 -0700 Cc: src-committers , svn-src-all , svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <201904121246.x3CCkP2m027680@repo.freebsd.org> <94A39E35-A8E0-42A4-8467-096D4AAD0F89@gmail.com> <4DA68C34-12A0-4E62-B868-F7BE10CB06BD@freebsd.org> To: Tycho Nightingale X-Mailer: Apple Mail (2.3445.104.8) X-Rspamd-Queue-Id: 7C3DD95A27 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 01:16:36 -0000 > On Apr 12, 2019, at 13:10, Tycho Nightingale = wrote: >=20 >> On Apr 12, 2019, at 12:43 PM, Enji Cooper = wrote: >>=20 >>=20 >>> On Apr 12, 2019, at 5:46 AM, Tycho Nightingale = wrote: >>>=20 >>> Author: tychon >>> Date: Fri Apr 12 12:46:25 2019 >>> New Revision: 346150 >>> URL: https://svnweb.freebsd.org/changeset/base/346150 >>>=20 >>> Log: >>> for a cache-only zone the destructor tries to destroy a non-existent = keg >>>=20 >>> Reviewed by: markj >>> Sponsored by: Dell EMC Isilon >>> Differential Revision: https://reviews.freebsd.org/D19835 >>=20 >>=20 >> Hi Tycho! >> Is the goal of this change to prevent a panic (with an = INVARIANTS kernel)? >> Thank you! >> -Enji >=20 > Hi, >=20 > The goal of this change is to fix a regression introduced in r343026. = It does cause a panic independent of INVARIANTS. Fortunately there = isn=E2=80=99t currently any in-tree code which triggers the panic. It = does however show up when running with the patch under review in D19845. Hi again! Thank you for the explanation! This part was missing from the = commit message, hence my question. I wanted to make sure I understood = the change in this commit properly. Cheers! -Enji= From owner-svn-src-all@freebsd.org Sat Apr 13 02:29:32 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E535C1569694; Sat, 13 Apr 2019 02:29:31 +0000 (UTC) (envelope-from jhibbits@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 8A45E97ACD; Sat, 13 Apr 2019 02:29:31 +0000 (UTC) (envelope-from jhibbits@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 60D43249A; Sat, 13 Apr 2019 02:29:31 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3D2TV9N068968; Sat, 13 Apr 2019 02:29:31 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D2TVGN068967; Sat, 13 Apr 2019 02:29:31 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201904130229.x3D2TVGN068967@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 13 Apr 2019 02:29:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346172 - head/sys/powerpc/powerpc X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: head/sys/powerpc/powerpc X-SVN-Commit-Revision: 346172 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8A45E97ACD X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.965,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 02:29:32 -0000 Author: jhibbits Date: Sat Apr 13 02:29:30 2019 New Revision: 346172 URL: https://svnweb.freebsd.org/changeset/base/346172 Log: powerpc: Add file forgotten in r346144 Forgot to add the changes for DELAY(), which lowers priority during the delay period. Also, mark the timebase read as volatile so newer GCC does not optimize it away, as it reportedly does currently. MFC after: 2 weeks MFC with: r346144 Modified: head/sys/powerpc/powerpc/clock.c Modified: head/sys/powerpc/powerpc/clock.c ============================================================================== --- head/sys/powerpc/powerpc/clock.c Sat Apr 13 00:54:56 2019 (r346171) +++ head/sys/powerpc/powerpc/clock.c Sat Apr 13 02:29:30 2019 (r346172) @@ -303,13 +303,16 @@ decr_get_timecount(struct timecounter *tc) void DELAY(int n) { - u_quad_t tb, ttb; + volatile u_quad_t tb; + u_quad_t ttb; TSENTER(); tb = mftb(); ttb = tb + howmany((uint64_t)n * 1000000, ps_per_tick); + nop_prio_vlow(); while (tb < ttb) tb = mftb(); + nop_prio_medium(); TSEXIT(); } From owner-svn-src-all@freebsd.org Sat Apr 13 03:32:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 977D8156ABD3; Sat, 13 Apr 2019 03:32:22 +0000 (UTC) (envelope-from jhibbits@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 3532C6AD81; Sat, 13 Apr 2019 03:32:22 +0000 (UTC) (envelope-from jhibbits@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 04CE030E7; Sat, 13 Apr 2019 03:32:22 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3D3WL6d005784; Sat, 13 Apr 2019 03:32:21 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D3WLgC005780; Sat, 13 Apr 2019 03:32:21 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201904130332.x3D3WLgC005780@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 13 Apr 2019 03:32:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346173 - head/sys/cddl/dev/dtrace/powerpc X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: head/sys/cddl/dev/dtrace/powerpc X-SVN-Commit-Revision: 346173 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3532C6AD81 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 03:32:22 -0000 Author: jhibbits Date: Sat Apr 13 03:32:21 2019 New Revision: 346173 URL: https://svnweb.freebsd.org/changeset/base/346173 Log: powerpc/dtrace: Fix dtrace powerpc asm, and simplify stack walking Fix some execution bugs in the dtrace powerpc asm. addme pulls in the carry flag which we don't want, and the result wasn't recorded anyways, so the following beq to check for exit condition wasn't checking the right condition. Simplify the stack walking in dtrace_isa.c, so there's only a single walker that handles both pc and sp. This should make it easier to follow, and any bugfix that may be needed for walking only needs to be made in one place instead of two now. MFC after: 2 weeks Modified: head/sys/cddl/dev/dtrace/powerpc/dtrace_asm.S head/sys/cddl/dev/dtrace/powerpc/dtrace_isa.c Modified: head/sys/cddl/dev/dtrace/powerpc/dtrace_asm.S ============================================================================== --- head/sys/cddl/dev/dtrace/powerpc/dtrace_asm.S Sat Apr 13 02:29:30 2019 (r346172) +++ head/sys/cddl/dev/dtrace/powerpc/dtrace_asm.S Sat Apr 13 03:32:21 2019 (r346173) @@ -148,14 +148,19 @@ dtrace_copystr(uintptr_t uaddr, uintptr_t kaddr, size_ volatile uint16_t *flags) */ ASENTRY_NOPROF(dtrace_copystr) - addme %r7,%r3 - addme %r8,%r4 + subi %r7,%r3,1 + subi %r8,%r4,1 1: lbzu %r3,1(%r7) stbu %r3,1(%r8) - addme %r5,%r5 + subi %r5,%r5,1 +#ifdef __powerpc64__ + cmpldi %r5,0 +#else + cmplwi %r5,0 +#endif beq 2f - or %r3,%r3,%r3 + cmplwi %r3,0 beq 2f andi. %r0,%r5,0x0fff beq 2f Modified: head/sys/cddl/dev/dtrace/powerpc/dtrace_isa.c ============================================================================== --- head/sys/cddl/dev/dtrace/powerpc/dtrace_isa.c Sat Apr 13 02:29:30 2019 (r346172) +++ head/sys/cddl/dev/dtrace/powerpc/dtrace_isa.c Sat Apr 13 03:32:21 2019 (r346173) @@ -94,11 +94,10 @@ dtrace_sp_inkernel(uintptr_t sp) return (1); } -static __inline uintptr_t -dtrace_next_sp(uintptr_t sp) +static __inline void +dtrace_next_sp_pc(uintptr_t sp, uintptr_t *nsp, uintptr_t *pc) { vm_offset_t callpc; - uintptr_t *r1; struct trapframe *frame; #ifdef __powerpc64__ @@ -115,39 +114,17 @@ dtrace_next_sp(uintptr_t sp) callpc + OFFSET == (vm_offset_t) &asttrapexit)) { /* Access the trap frame */ frame = (struct trapframe *)(sp + FRAME_OFFSET); - r1 = (uintptr_t *)frame->fixreg[1]; - if (r1 == NULL) - return (0); - return (*r1); - } - return (*(uintptr_t*)sp); -} - -static __inline uintptr_t -dtrace_get_pc(uintptr_t sp) -{ - struct trapframe *frame; - vm_offset_t callpc; - -#ifdef __powerpc64__ - callpc = *(vm_offset_t *)(sp + RETURN_OFFSET64); -#else - callpc = *(vm_offset_t *)(sp + RETURN_OFFSET); -#endif - - /* - * trapexit() and asttrapexit() are sentinels - * for kernel stack tracing. - */ - if ((callpc + OFFSET == (vm_offset_t) &trapexit || - callpc + OFFSET == (vm_offset_t) &asttrapexit)) { - /* Access the trap frame */ - frame = (struct trapframe *)(sp + FRAME_OFFSET); - return (frame->srr0); + if (nsp != NULL) + *nsp = frame->fixreg[1]; + if (pc != NULL) + *pc = frame->srr0; } - return (callpc); + if (nsp != NULL) + *nsp = *(uintptr_t *)sp; + if (pc != NULL) + *pc = callpc; } greg_t @@ -179,7 +156,8 @@ dtrace_getpcstack(pc_t *pcstack, int pcstack_limit, in if (!dtrace_sp_inkernel(sp)) break; - callpc = dtrace_get_pc(sp); + osp = sp; + dtrace_next_sp_pc(osp, &sp, &callpc); if (aframes > 0) { aframes--; @@ -190,9 +168,6 @@ dtrace_getpcstack(pc_t *pcstack, int pcstack_limit, in else { pcstack[depth++] = callpc; } - - osp = sp; - sp = dtrace_next_sp(sp); } for (; depth < pcstack_limit; depth++) { @@ -546,7 +521,7 @@ dtrace_getstackdepth(int aframes) else aframes--; osp = sp; - sp = dtrace_next_sp(sp); + dtrace_next_sp_pc(sp, &sp, NULL); } if (depth < aframes) return (0); From owner-svn-src-all@freebsd.org Sat Apr 13 04:03:23 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BF127156B584; Sat, 13 Apr 2019 04:03:22 +0000 (UTC) (envelope-from jhibbits@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 6EAB56B943; Sat, 13 Apr 2019 04:03:22 +0000 (UTC) (envelope-from jhibbits@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 2E0D737B4; Sat, 13 Apr 2019 04:03:22 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3D43M96021240; Sat, 13 Apr 2019 04:03:22 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D43IDd021224; Sat, 13 Apr 2019 04:03:18 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201904130403.x3D43IDd021224@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 13 Apr 2019 04:03:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346174 - in head/sys/powerpc: aim conf include ofw powernv powerpc X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: in head/sys/powerpc: aim conf include ofw powernv powerpc X-SVN-Commit-Revision: 346174 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6EAB56B943 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 04:03:23 -0000 Author: jhibbits Date: Sat Apr 13 04:03:18 2019 New Revision: 346174 URL: https://svnweb.freebsd.org/changeset/base/346174 Log: Add NUMA support to powerpc Summary: Initial NUMA support: - associate CPU with domain - associate memory ranges with domain - identify domain for devices - limit device interrupt binding to appropriate domain - Additionally fixes a bug in the setting of Maxmem which led to only memory attached to the first socket being enabled for DMA A pmap variant can opt in to numa support by by calling `numa_mem_regions` at the end of pmap_bootstrap - registering the corresponding ranges with the VM. This yields a ~20% improvement in build times of llvm on dual socket POWER9 over non-NUMA. Original patch by mmacy. Differential Revision: https://reviews.freebsd.org/D17933 Modified: head/sys/powerpc/aim/mmu_oea64.c head/sys/powerpc/conf/GENERIC64 head/sys/powerpc/include/intr_machdep.h head/sys/powerpc/include/ofw_machdep.h head/sys/powerpc/include/param.h head/sys/powerpc/include/platform.h head/sys/powerpc/include/smp.h head/sys/powerpc/ofw/ofw_machdep.c head/sys/powerpc/ofw/ofw_pcibus.c head/sys/powerpc/powernv/opal_pci.c head/sys/powerpc/powernv/platform_powernv.c head/sys/powerpc/powerpc/intr_machdep.c head/sys/powerpc/powerpc/mp_machdep.c head/sys/powerpc/powerpc/nexus.c head/sys/powerpc/powerpc/platform.c head/sys/powerpc/powerpc/platform_if.m Modified: head/sys/powerpc/aim/mmu_oea64.c ============================================================================== --- head/sys/powerpc/aim/mmu_oea64.c Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/aim/mmu_oea64.c Sat Apr 13 04:03:18 2019 (r346174) @@ -146,8 +146,9 @@ extern void *slbtrap, *slbtrapend; */ static struct mem_region *regions; static struct mem_region *pregions; +static struct numa_mem_region *numa_pregions; static u_int phys_avail_count; -static int regions_sz, pregions_sz; +static int regions_sz, pregions_sz, numapregions_sz; extern void bs_remap_earlyboot(void); @@ -1048,6 +1049,8 @@ moea64_late_bootstrap(mmu_t mmup, vm_offset_t kernelst PMAP_UNLOCK(kernel_pmap); } } + + numa_mem_regions(&numa_pregions, &numapregions_sz); } static void Modified: head/sys/powerpc/conf/GENERIC64 ============================================================================== --- head/sys/powerpc/conf/GENERIC64 Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/conf/GENERIC64 Sat Apr 13 04:03:18 2019 (r346174) @@ -35,6 +35,7 @@ options POWERNV #Non-virtualized OpenPOWER systems options FDT #Flattened Device Tree options SCHED_ULE #ULE scheduler +options NUMA #Non-Uniform Memory Architecture support options PREEMPTION #Enable kernel thread preemption options VIMAGE # Subsystem virtualization, e.g. VNET options INET #InterNETworking Modified: head/sys/powerpc/include/intr_machdep.h ============================================================================== --- head/sys/powerpc/include/intr_machdep.h Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/include/intr_machdep.h Sat Apr 13 04:03:18 2019 (r346174) @@ -54,7 +54,7 @@ u_int powerpc_get_irq(uint32_t, u_int); void powerpc_dispatch_intr(u_int, struct trapframe *); int powerpc_enable_intr(void); int powerpc_setup_intr(const char *, u_int, driver_filter_t, driver_intr_t, - void *, enum intr_type, void **); + void *, enum intr_type, void **, int); int powerpc_teardown_intr(void *); int powerpc_bind_intr(u_int irq, u_char cpu); int powerpc_config_intr(int, enum intr_trigger, enum intr_polarity); Modified: head/sys/powerpc/include/ofw_machdep.h ============================================================================== --- head/sys/powerpc/include/ofw_machdep.h Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/include/ofw_machdep.h Sat Apr 13 04:03:18 2019 (r346174) @@ -47,7 +47,11 @@ boolean_t OF_bootstrap(void); void OF_reboot(void); void ofw_mem_regions(struct mem_region *, int *, struct mem_region *, int *); +void ofw_numa_mem_regions(struct numa_mem_region *, int *); void ofw_quiesce(void); /* Must be called before VM is up! */ void ofw_save_trap_vec(char *); +int ofw_pcibus_get_domain(device_t dev, device_t child, int *domain); +int ofw_pcibus_get_cpus(device_t dev, device_t child, enum cpu_sets op, + size_t setsize, cpuset_t *cpuset); #endif /* _MACHINE_OFW_MACHDEP_H_ */ Modified: head/sys/powerpc/include/param.h ============================================================================== --- head/sys/powerpc/include/param.h Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/include/param.h Sat Apr 13 04:03:18 2019 (r346174) @@ -82,7 +82,7 @@ #endif /* SMP || KLD_MODULE */ #ifndef MAXMEMDOM -#define MAXMEMDOM 1 +#define MAXMEMDOM 8 #endif #define ALIGNBYTES _ALIGNBYTES Modified: head/sys/powerpc/include/platform.h ============================================================================== --- head/sys/powerpc/include/platform.h Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/include/platform.h Sat Apr 13 04:03:18 2019 (r346174) @@ -45,9 +45,16 @@ struct mem_region { uint64_t mr_size; }; +struct numa_mem_region { + uint64_t mr_start; + uint64_t mr_size; + uint64_t mr_domain; +}; + /* Documentation for these functions is in platform_if.m */ void mem_regions(struct mem_region **, int *, struct mem_region **, int *); +void numa_mem_regions(struct numa_mem_region **, int *); vm_offset_t platform_real_maxaddr(void); u_long platform_timebase_freq(struct cpuref *); Modified: head/sys/powerpc/include/smp.h ============================================================================== --- head/sys/powerpc/include/smp.h Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/include/smp.h Sat Apr 13 04:03:18 2019 (r346174) @@ -52,6 +52,7 @@ void ipi_selected(cpuset_t cpus, int ipi); struct cpuref { uintptr_t cr_hwref; u_int cr_cpuid; + u_int cr_domain; }; void pmap_cpu_bootstrap(int); Modified: head/sys/powerpc/ofw/ofw_machdep.c ============================================================================== --- head/sys/powerpc/ofw/ofw_machdep.c Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/ofw/ofw_machdep.c Sat Apr 13 04:03:18 2019 (r346174) @@ -59,6 +59,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -222,11 +223,59 @@ parse_ofw_memory(phandle_t node, const char *prop, str j++; } - sz = j*sizeof(output[0]); - return (sz); + return (j); } +static int +parse_numa_ofw_memory(phandle_t node, const char *prop, + struct numa_mem_region *output) +{ + cell_t address_cells, size_cells; + cell_t OFmem[4 * PHYS_AVAIL_SZ]; + int sz, i, j; + phandle_t phandle; + + sz = 0; + + /* + * Get #address-cells from root node, defaulting to 1 if it cannot + * be found. + */ + phandle = OF_finddevice("/"); + if (OF_getencprop(phandle, "#address-cells", &address_cells, + sizeof(address_cells)) < (ssize_t)sizeof(address_cells)) + address_cells = 1; + if (OF_getencprop(phandle, "#size-cells", &size_cells, + sizeof(size_cells)) < (ssize_t)sizeof(size_cells)) + size_cells = 1; + + /* + * Get memory. + */ + if (node == -1 || (sz = OF_getencprop(node, prop, + OFmem, sizeof(OFmem))) <= 0) + panic("Physical memory map not found"); + + i = 0; + j = 0; + while (i < sz/sizeof(cell_t)) { + output[j].mr_start = OFmem[i++]; + if (address_cells == 2) { + output[j].mr_start <<= 32; + output[j].mr_start += OFmem[i++]; + } + output[j].mr_size = OFmem[i++]; + if (size_cells == 2) { + output[j].mr_size <<= 32; + output[j].mr_size += OFmem[i++]; + } + j++; + } + + return (j); +} + #ifdef FDT static int excise_reserved_regions(struct mem_region *avail, int asz, @@ -408,6 +457,51 @@ excise_fdt_reserved(struct mem_region *avail, int asz) * The available regions need not take the kernel into account. */ void +ofw_numa_mem_regions(struct numa_mem_region *memp, int *memsz) +{ + phandle_t phandle; + int res, count, msz; + char name[31]; + cell_t associativity[5]; + struct numa_mem_region *curmemp; + + msz = 0; + /* + * Get memory from all the /memory nodes. + */ + for (phandle = OF_child(OF_peer(0)); phandle != 0; + phandle = OF_peer(phandle)) { + if (OF_getprop(phandle, "name", name, sizeof(name)) <= 0) + continue; + if (strncmp(name, "memory@", strlen("memory@")) != 0) + continue; + + count = parse_numa_ofw_memory(phandle, "reg", &memp[msz]); + if (count == 0) + continue; + curmemp = &memp[msz]; + res = OF_getproplen(phandle, "ibm,associativity"); + if (res <= 0) + continue; + MPASS(count == 1); + OF_getencprop(phandle, "ibm,associativity", + associativity, res); + curmemp->mr_domain = associativity[3] - 1; + if (bootverbose) + printf("%s %#jx-%#jx domain(%ju)\n", + name, (uintmax_t)curmemp->mr_start, + (uintmax_t)curmemp->mr_start + curmemp->mr_size, + (uintmax_t)curmemp->mr_domain); + msz += count; + } + *memsz = msz; +} +/* + * This is called during powerpc_init, before the system is really initialized. + * It shall provide the total and the available regions of RAM. + * The available regions need not take the kernel into account. + */ +void ofw_mem_regions(struct mem_region *memp, int *memsz, struct mem_region *availp, int *availsz) { @@ -430,7 +524,7 @@ ofw_mem_regions(struct mem_region *memp, int *memsz, continue; res = parse_ofw_memory(phandle, "reg", &memp[msz]); - msz += res/sizeof(struct mem_region); + msz += res; /* * On POWER9 Systems we might have both linux,usable-memory and @@ -446,7 +540,7 @@ ofw_mem_regions(struct mem_region *memp, int *memsz, &availp[asz]); else res = parse_ofw_memory(phandle, "reg", &availp[asz]); - asz += res/sizeof(struct mem_region); + asz += res; } #ifdef FDT Modified: head/sys/powerpc/ofw/ofw_pcibus.c ============================================================================== --- head/sys/powerpc/ofw/ofw_pcibus.c Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/ofw/ofw_pcibus.c Sat Apr 13 04:03:18 2019 (r346174) @@ -38,6 +38,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -80,6 +81,8 @@ static device_method_t ofw_pcibus_methods[] = { DEVMETHOD(bus_child_deleted, ofw_pcibus_child_deleted), DEVMETHOD(bus_child_pnpinfo_str, ofw_pcibus_child_pnpinfo_str_method), DEVMETHOD(bus_rescan, bus_null_rescan), + DEVMETHOD(bus_get_cpus, ofw_pcibus_get_cpus), + DEVMETHOD(bus_get_domain, ofw_pcibus_get_domain), /* PCI interface */ DEVMETHOD(pci_alloc_devinfo, ofw_pcibus_alloc_devinfo), @@ -382,3 +385,76 @@ ofw_pcibus_get_devinfo(device_t bus, device_t dev) return (&dinfo->opd_obdinfo); } +static int +ofw_pcibus_parse_associativity(device_t dev, int *domain) +{ + phandle_t node; + cell_t associativity[5]; + int res; + + if ((node = ofw_bus_get_node(dev)) == -1) { + device_printf(dev, "no ofw node found\n"); + return (ENXIO); + } + res = OF_getproplen(node, "ibm,associativity"); + if (res <= 0) + return (ENXIO); + OF_getencprop(node, "ibm,associativity", + associativity, res); + + *domain = associativity[3] - 1; + if (bootverbose) + device_printf(dev, "domain(%d)\n", *domain); + return (0); +} + +int +ofw_pcibus_get_cpus(device_t dev, device_t child, enum cpu_sets op, size_t setsize, + cpuset_t *cpuset) +{ + int d, error; + + error = ofw_pcibus_parse_associativity(child, &d); + if (error) + return (bus_generic_get_cpus(dev, child, op, setsize, cpuset)); + + switch (op) { + case LOCAL_CPUS: + if (setsize != sizeof(cpuset_t)) + return (EINVAL); + *cpuset = cpuset_domain[d]; + return (0); + case INTR_CPUS: + error = bus_generic_get_cpus(dev, child, op, setsize, cpuset); + if (error != 0) + return (error); + if (setsize != sizeof(cpuset_t)) + return (EINVAL); + CPU_AND(cpuset, &cpuset_domain[d]); + return (0); + default: + return (bus_generic_get_cpus(dev, child, op, setsize, cpuset)); + } + return (0); +} + +/* + * Fetch the NUMA domain for the given device 'dev'. + * + * If a device has a _PXM method, map that to a NUMA domain. + * Otherwise, pass the request up to the parent. + * If there's no matching domain or the domain cannot be + * determined, return ENOENT. + */ +int +ofw_pcibus_get_domain(device_t dev, device_t child, int *domain) +{ + int d, error; + + error = ofw_pcibus_parse_associativity(child, &d); + /* No ofw node; go up a level */ + if (error) + return (bus_generic_get_domain(dev, child, domain)); + *domain = d; + return (0); +} Modified: head/sys/powerpc/powernv/opal_pci.c ============================================================================== --- head/sys/powerpc/powernv/opal_pci.c Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/powernv/opal_pci.c Sat Apr 13 04:03:18 2019 (r346174) @@ -149,6 +149,8 @@ static device_method_t opalpci_methods[] = { /* Bus interface */ DEVMETHOD(bus_get_dma_tag, opalpci_get_dma_tag), + DEVMETHOD(bus_get_cpus, ofw_pcibus_get_cpus), + DEVMETHOD(bus_get_domain, ofw_pcibus_get_domain), DEVMETHOD_END }; @@ -367,7 +369,7 @@ opalpci_attach(device_t dev) tce_size = max_tce_size(dev); maxmem = roundup2(powerpc_ptob(Maxmem), tce_size); entries = round_pow2(maxmem / tce_size); - tce_tbl_size = max(entries * sizeof(uint64_t), 4096); + tce_tbl_size = MAX(entries * sizeof(uint64_t), 4096); if (entries > OPAL_PCI_TCE_MAX_ENTRIES) panic("POWERNV supports only %jdGB of memory space\n", (uintmax_t)((OPAL_PCI_TCE_MAX_ENTRIES * tce_size) >> 30)); Modified: head/sys/powerpc/powernv/platform_powernv.c ============================================================================== --- head/sys/powerpc/powernv/platform_powernv.c Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/powernv/platform_powernv.c Sat Apr 13 04:03:18 2019 (r346174) @@ -65,6 +65,7 @@ static int powernv_probe(platform_t); static int powernv_attach(platform_t); void powernv_mem_regions(platform_t, struct mem_region *phys, int *physsz, struct mem_region *avail, int *availsz); +static void powernv_numa_mem_regions(platform_t plat, struct numa_mem_region *phys, int *physsz); static u_long powernv_timebase_freq(platform_t, struct cpuref *cpuref); static int powernv_smp_first_cpu(platform_t, struct cpuref *cpuref); static int powernv_smp_next_cpu(platform_t, struct cpuref *cpuref); @@ -83,6 +84,7 @@ static platform_method_t powernv_methods[] = { PLATFORMMETHOD(platform_probe, powernv_probe), PLATFORMMETHOD(platform_attach, powernv_attach), PLATFORMMETHOD(platform_mem_regions, powernv_mem_regions), + PLATFORMMETHOD(platform_numa_mem_regions, powernv_numa_mem_regions), PLATFORMMETHOD(platform_timebase_freq, powernv_timebase_freq), PLATFORMMETHOD(platform_smp_ap_init, powernv_smp_ap_init), @@ -250,6 +252,13 @@ powernv_mem_regions(platform_t plat, struct mem_region ofw_mem_regions(phys, physsz, avail, availsz); } +static void +powernv_numa_mem_regions(platform_t plat, struct numa_mem_region *phys, int *physsz) +{ + + ofw_numa_mem_regions(phys, physsz); +} + static u_long powernv_timebase_freq(platform_t plat, struct cpuref *cpuref) { @@ -313,15 +322,13 @@ powernv_cpuref_init(void) if (res > 0 && strcmp(buf, "cpu") == 0) { res = OF_getproplen(cpu, "ibm,ppc-interrupt-server#s"); if (res > 0) { - - OF_getencprop(cpu, "ibm,ppc-interrupt-server#s", interrupt_servers, res); for (a = 0; a < res/sizeof(cell_t); a++) { tmp_cpuref[tmp_cpuref_cnt].cr_hwref = interrupt_servers[a]; tmp_cpuref[tmp_cpuref_cnt].cr_cpuid = tmp_cpuref_cnt; - + tmp_cpuref[tmp_cpuref_cnt].cr_domain = interrupt_servers[a] >> 11; if (interrupt_servers[a] == (uint32_t)powernv_boot_pir) bsp = tmp_cpuref_cnt; @@ -335,11 +342,13 @@ powernv_cpuref_init(void) for (a = bsp; a < tmp_cpuref_cnt; a++) { platform_cpuref[platform_cpuref_cnt].cr_hwref = tmp_cpuref[a].cr_hwref; platform_cpuref[platform_cpuref_cnt].cr_cpuid = platform_cpuref_cnt; + platform_cpuref[platform_cpuref_cnt].cr_domain = tmp_cpuref[a].cr_domain; platform_cpuref_cnt++; } for (a = 0; a < bsp; a++) { platform_cpuref[platform_cpuref_cnt].cr_hwref = tmp_cpuref[a].cr_hwref; platform_cpuref[platform_cpuref_cnt].cr_cpuid = platform_cpuref_cnt; + platform_cpuref[platform_cpuref_cnt].cr_domain = tmp_cpuref[a].cr_domain; platform_cpuref_cnt++; } @@ -356,6 +365,7 @@ powernv_smp_first_cpu(platform_t plat, struct cpuref * cpuref->cr_cpuid = 0; cpuref->cr_hwref = platform_cpuref[0].cr_hwref; + cpuref->cr_domain = platform_cpuref[0].cr_domain; return (0); } @@ -374,6 +384,7 @@ powernv_smp_next_cpu(platform_t plat, struct cpuref *c cpuref->cr_cpuid = platform_cpuref[id].cr_cpuid; cpuref->cr_hwref = platform_cpuref[id].cr_hwref; + cpuref->cr_domain = platform_cpuref[id].cr_domain; return (0); } @@ -384,6 +395,7 @@ powernv_smp_get_bsp(platform_t plat, struct cpuref *cp cpuref->cr_cpuid = platform_cpuref[0].cr_cpuid; cpuref->cr_hwref = platform_cpuref[0].cr_hwref; + cpuref->cr_domain = platform_cpuref[0].cr_domain; return (0); } Modified: head/sys/powerpc/powerpc/intr_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/intr_machdep.c Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/powerpc/intr_machdep.c Sat Apr 13 04:03:18 2019 (r346174) @@ -97,16 +97,17 @@ struct powerpc_intr { struct intr_event *event; long *cntp; void *priv; /* PIC-private data */ - u_int irq; device_t pic; + u_int irq; u_int intline; u_int vector; u_int cntindex; - cpuset_t cpu; - enum intr_trigger trig; - enum intr_polarity pol; int fwcode; int ipi; + int pi_domain; + enum intr_trigger trig; + enum intr_polarity pol; + cpuset_t pi_cpuset; }; struct pic { @@ -203,7 +204,7 @@ smp_intr_init(void *dummy __unused) for (vector = 0; vector < nvectors; vector++) { i = powerpc_intrs[vector]; if (i != NULL && i->event != NULL && i->pic == root_pic) - PIC_BIND(i->pic, i->intline, i->cpu, &i->priv); + PIC_BIND(i->pic, i->intline, i->pi_cpuset, &i->priv); } } SYSINIT(smp_intr_init, SI_SUB_SMP, SI_ORDER_ANY, smp_intr_init, NULL); @@ -256,9 +257,9 @@ intr_lookup(u_int irq) i->ipi = 0; #ifdef SMP - i->cpu = all_cpus; + i->pi_cpuset = all_cpus; #else - CPU_SETOF(0, &i->cpu); + CPU_SETOF(0, &i->pi_cpuset); #endif for (vector = 0; vector < num_io_irqs && vector <= nvectors; @@ -347,12 +348,12 @@ powerpc_assign_intr_cpu(void *arg, int cpu) struct powerpc_intr *i = arg; if (cpu == NOCPU) - i->cpu = all_cpus; + i->pi_cpuset = all_cpus; else - CPU_SETOF(cpu, &i->cpu); + CPU_SETOF(cpu, &i->pi_cpuset); if (!cold && i->pic != NULL && i->pic == root_pic) - PIC_BIND(i->pic, i->intline, i->cpu, &i->priv); + PIC_BIND(i->pic, i->intline, i->pi_cpuset, &i->priv); return (0); #else @@ -469,7 +470,8 @@ powerpc_enable_intr(void) error = powerpc_setup_intr("IPI", MAP_IRQ(piclist[n].node, piclist[n].irqs), powerpc_ipi_handler, NULL, NULL, - INTR_TYPE_MISC | INTR_EXCL, &ipi_cookie); + INTR_TYPE_MISC | INTR_EXCL, &ipi_cookie, + 0 /* domain XXX */); if (error) { printf("unable to setup IPI handler\n"); return (error); @@ -512,7 +514,8 @@ powerpc_enable_intr(void) int powerpc_setup_intr(const char *name, u_int irq, driver_filter_t filter, - driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep) + driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep, + int domain) { struct powerpc_intr *i; int error, enable = 0; @@ -533,7 +536,13 @@ powerpc_setup_intr(const char *name, u_int irq, driver error = intr_event_add_handler(i->event, name, filter, handler, arg, intr_priority(flags), flags, cookiep); - + if (error) + return (error); + i->pi_domain = domain; + if (strcmp(name, "IPI") != 0) { + CPU_ZERO(&i->pi_cpuset); + CPU_COPY(&cpuset_domain[domain], &i->pi_cpuset); + } mtx_lock(&intr_table_lock); intrcnt_setname(i->event->ie_fullname, i->cntindex); mtx_unlock(&intr_table_lock); @@ -551,7 +560,7 @@ powerpc_setup_intr(const char *name, u_int irq, driver PIC_CONFIG(i->pic, i->intline, i->trig, i->pol); if (i->pic == root_pic) - PIC_BIND(i->pic, i->intline, i->cpu, &i->priv); + PIC_BIND(i->pic, i->intline, i->pi_cpuset, &i->priv); if (enable) PIC_ENABLE(i->pic, i->intline, i->vector, Modified: head/sys/powerpc/powerpc/mp_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/mp_machdep.c Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/powerpc/mp_machdep.c Sat Apr 13 04:03:18 2019 (r346174) @@ -182,6 +182,15 @@ cpu_mp_start(void) pc->pc_bsp = 1; } pc->pc_hwref = cpu.cr_hwref; + + if (vm_ndomains > 1) + pc->pc_domain = cpu.cr_domain; + else + pc->pc_domain = 0; + + CPU_SET(pc->pc_cpuid, &cpuset_domain[pc->pc_domain]); + KASSERT(pc->pc_domain < MAXMEMDOM, ("bad domain value %d\n", + pc->pc_domain)); CPU_SET(pc->pc_cpuid, &all_cpus); next: error = platform_smp_next_cpu(&cpu); @@ -205,7 +214,7 @@ cpu_mp_announce(void) pc = pcpu_find(i); if (pc == NULL) continue; - printf("cpu%d: dev=%x", i, (int)pc->pc_hwref); + printf("cpu%d: dev=%x domain=%d ", i, (int)pc->pc_hwref, pc->pc_domain); if (pc->pc_bsp) printf(" (BSP)"); printf("\n"); Modified: head/sys/powerpc/powerpc/nexus.c ============================================================================== --- head/sys/powerpc/powerpc/nexus.c Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/powerpc/nexus.c Sat Apr 13 04:03:18 2019 (r346174) @@ -38,11 +38,13 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include #include #include +#include #include #include @@ -67,6 +69,8 @@ static bus_teardown_intr_t nexus_teardown_intr; static bus_activate_resource_t nexus_activate_resource; static bus_deactivate_resource_t nexus_deactivate_resource; static bus_space_tag_t nexus_get_bus_tag(device_t, device_t); +static int nexus_get_cpus(device_t, device_t, enum cpu_sets, size_t, + cpuset_t *); #ifdef SMP static bus_bind_intr_t nexus_bind_intr; #endif @@ -89,6 +93,7 @@ static device_method_t nexus_methods[] = { #endif DEVMETHOD(bus_config_intr, nexus_config_intr), DEVMETHOD(bus_get_bus_tag, nexus_get_bus_tag), + DEVMETHOD(bus_get_cpus, nexus_get_cpus), /* ofw_bus interface */ DEVMETHOD(ofw_bus_map_intr, nexus_ofw_map_intr), @@ -127,11 +132,13 @@ nexus_setup_intr(device_t bus __unused, device_t child int flags, driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep) { - int error; + int error, domain; if (r == NULL) panic("%s: NULL interrupt resource!", __func__); + if (cookiep != NULL) + *cookiep = NULL; if ((rman_get_flags(r) & RF_SHAREABLE) == 0) flags |= INTR_EXCL; @@ -140,8 +147,13 @@ nexus_setup_intr(device_t bus __unused, device_t child if (error) return (error); + if (bus_get_domain(child, &domain) != 0) { + if(bootverbose) + device_printf(child, "no domain found\n"); + domain = 0; + } error = powerpc_setup_intr(device_get_nameunit(child), - rman_get_start(r), filt, intr, arg, flags, cookiep); + rman_get_start(r), filt, intr, arg, flags, cookiep, domain); return (error); } @@ -162,6 +174,24 @@ nexus_get_bus_tag(device_t bus __unused, device_t chil { return(&bs_be_tag); +} + +static int +nexus_get_cpus(device_t dev, device_t child, enum cpu_sets op, size_t setsize, + cpuset_t *cpuset) +{ + + switch (op) { +#ifdef SMP + case INTR_CPUS: + if (setsize != sizeof(cpuset_t)) + return (EINVAL); + *cpuset = all_cpus; + return (0); +#endif + default: + return (bus_generic_get_cpus(dev, child, op, setsize, cpuset)); + } } #ifdef SMP Modified: head/sys/powerpc/powerpc/platform.c ============================================================================== --- head/sys/powerpc/powerpc/platform.c Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/powerpc/platform.c Sat Apr 13 04:03:18 2019 (r346174) @@ -48,13 +48,16 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include +#include #include #include #include #include #include +#include #include "platform_if.h" @@ -67,9 +70,12 @@ static char plat_name[64] = ""; SYSCTL_STRING(_hw, OID_AUTO, platform, CTLFLAG_RD | CTLFLAG_TUN, plat_name, 0, "Platform currently in use"); +static struct mem_affinity mem_info[VM_PHYSSEG_MAX + 1]; +static int vm_locality_table[MAXMEMDOM * MAXMEMDOM]; static struct mem_region pregions[PHYS_AVAIL_SZ]; +static struct numa_mem_region numa_pregions[PHYS_AVAIL_SZ]; static struct mem_region aregions[PHYS_AVAIL_SZ]; -static int npregions, naregions; +static int nnumapregions, npregions, naregions; /* * Memory region utilities: determine if two regions overlap, @@ -113,6 +119,54 @@ mr_cmp(const void *a, const void *b) } void +numa_mem_regions(struct numa_mem_region **phys, int *physsz) +{ + struct mem_affinity *mi; + int i, j, maxdom, ndomain, offset; + + nnumapregions = 0; + PLATFORM_NUMA_MEM_REGIONS(plat_obj, numa_pregions, &nnumapregions); + + if (physsz != NULL) + *physsz = nnumapregions; + if (phys != NULL) + *phys = numa_pregions; + if (physsz == NULL || phys == NULL) { + printf("unset value\n"); + return; + } + maxdom = 0; + for (i = 0; i < nnumapregions; i++) + if (numa_pregions[i].mr_domain > maxdom) + maxdom = numa_pregions[i].mr_domain; + + mi = mem_info; + for (i = 0; i < nnumapregions; i++, mi++) { + mi->start = numa_pregions[i].mr_start; + mi->end = numa_pregions[i].mr_start + numa_pregions[i].mr_size; + mi->domain = numa_pregions[i].mr_domain; + } + offset = 0; + vm_locality_table[offset] = 10; + ndomain = maxdom + 1; + if (ndomain > 1) { + for (i = 0; i < ndomain; i++) { + for (j = 0; j < ndomain; j++) { + /* + * Not sure what these values should actually be + */ + if (i == j) + vm_locality_table[offset] = 10; + else + vm_locality_table[offset] = 21; + offset++; + } + } + } + vm_phys_register_domains(ndomain, mem_info, vm_locality_table); +} + +void mem_regions(struct mem_region **phys, int *physsz, struct mem_region **avail, int *availsz) { @@ -252,7 +306,7 @@ platform_smp_probe_threads(void) struct cpu_group * cpu_topo(void) { - return (PLATFORM_SMP_TOPO(plat_obj)); + return (PLATFORM_SMP_TOPO(plat_obj)); } #endif Modified: head/sys/powerpc/powerpc/platform_if.m ============================================================================== --- head/sys/powerpc/powerpc/platform_if.m Sat Apr 13 03:32:21 2019 (r346173) +++ head/sys/powerpc/powerpc/platform_if.m Sat Apr 13 04:03:18 2019 (r346174) @@ -130,6 +130,22 @@ METHOD void mem_regions { int *_availsz; }; + +/** + * @brief Return the system's physical memory map. + * + * It shall provide the total RAM with the corresponding domains. + * + * @param _memp Array of physical memory chunks + * @param _memsz Number of physical memory chunks + */ + +METHOD void numa_mem_regions { + platform_t _plat; + struct numa_mem_region *_memp; + int *_memsz; +}; + /** * @brief Return the maximum address accessible in real mode * (for use with hypervisors) From owner-svn-src-all@freebsd.org Sat Apr 13 04:42:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 03D6D156BEBF; Sat, 13 Apr 2019 04:42:19 +0000 (UTC) (envelope-from cem@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 95D5B6CCEE; Sat, 13 Apr 2019 04:42:18 +0000 (UTC) (envelope-from cem@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 58CBE3FF4; Sat, 13 Apr 2019 04:42:18 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3D4gIXF042376; Sat, 13 Apr 2019 04:42:18 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D4gHCf042373; Sat, 13 Apr 2019 04:42:17 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201904130442.x3D4gHCf042373@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Sat, 13 Apr 2019 04:42:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346175 - head/usr.bin/sort X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/usr.bin/sort X-SVN-Commit-Revision: 346175 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 95D5B6CCEE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.947,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 04:42:19 -0000 Author: cem Date: Sat Apr 13 04:42:17 2019 New Revision: 346175 URL: https://svnweb.freebsd.org/changeset/base/346175 Log: sort(1): Memoize MD5 computation to reduce repeated computation Experimentally, reduces sort -R time of a 148160 line corpus from about 3.15s to about 0.93s on this particular system. There's probably room for improvement using some digest other than md5, but I don't want to look at sort(1) anymore. Some discussion of other possible improvements in the Test Plan section of the Differential. PR: 230792 Reviewed by: jhb (earlier version) Differential Revision: https://reviews.freebsd.org/D19885 Modified: head/usr.bin/sort/coll.c head/usr.bin/sort/coll.h head/usr.bin/sort/sort.c Modified: head/usr.bin/sort/coll.c ============================================================================== --- head/usr.bin/sort/coll.c Sat Apr 13 04:03:18 2019 (r346174) +++ head/usr.bin/sort/coll.c Sat Apr 13 04:42:17 2019 (r346175) @@ -981,6 +981,15 @@ hnumcoll(struct key_value *kv1, struct key_value *kv2, return (numcoll_impl(kv1, kv2, offset, true)); } +/* Use hint space to memoize md5 computations, at least. */ +static void +randomcoll_init_hint(struct key_value *kv, void *hash) +{ + + memcpy(kv->hint->v.Rh.cached, hash, sizeof(kv->hint->v.Rh.cached)); + kv->hint->status = HS_INITIALIZED; +} + /* * Implements random sort (-R). */ @@ -991,6 +1000,7 @@ randomcoll(struct key_value *kv1, struct key_value *kv struct bwstring *s1, *s2; MD5_CTX ctx1, ctx2; unsigned char hash1[MD5_DIGEST_LENGTH], hash2[MD5_DIGEST_LENGTH]; + int cmp; s1 = kv1->k; s2 = kv2->k; @@ -1003,6 +1013,14 @@ randomcoll(struct key_value *kv1, struct key_value *kv if (s1 == s2) return (0); + if (kv1->hint->status == HS_INITIALIZED && + kv2->hint->status == HS_INITIALIZED) { + cmp = memcmp(kv1->hint->v.Rh.cached, + kv2->hint->v.Rh.cached, sizeof(kv1->hint->v.Rh.cached)); + if (cmp != 0) + return (cmp); + } + memcpy(&ctx1, &md5_ctx, sizeof(MD5_CTX)); memcpy(&ctx2, &md5_ctx, sizeof(MD5_CTX)); @@ -1011,6 +1029,11 @@ randomcoll(struct key_value *kv1, struct key_value *kv MD5Final(hash1, &ctx1); MD5Final(hash2, &ctx2); + + if (kv1->hint->status == HS_UNINITIALIZED) + randomcoll_init_hint(kv1, hash1); + if (kv2->hint->status == HS_UNINITIALIZED) + randomcoll_init_hint(kv2, hash2); return (memcmp(hash1, hash2, sizeof(hash1))); } Modified: head/usr.bin/sort/coll.h ============================================================================== --- head/usr.bin/sort/coll.h Sat Apr 13 04:03:18 2019 (r346174) +++ head/usr.bin/sort/coll.h Sat Apr 13 04:42:17 2019 (r346175) @@ -65,6 +65,17 @@ struct M_hint }; /* + * Sort hint data for -R + * + * This stores the first 12 bytes of the digest rather than the full output to + * avoid increasing the size of the 'key_hint' object via the 'v' union. + */ +struct R_hint +{ + unsigned char cached[12]; +}; + +/* * Status of a sort hint object */ typedef enum @@ -83,6 +94,7 @@ struct key_hint struct n_hint nh; struct g_hint gh; struct M_hint Mh; + struct R_hint Rh; } v; }; Modified: head/usr.bin/sort/sort.c ============================================================================== --- head/usr.bin/sort/sort.c Sat Apr 13 04:03:18 2019 (r346174) +++ head/usr.bin/sort/sort.c Sat Apr 13 04:42:17 2019 (r346175) @@ -583,6 +583,7 @@ set_sort_modifier(struct sort_mods *sm, int c) break; case 'R': sm->Rflag = true; + need_hint = true; need_random = true; break; case 'M': From owner-svn-src-all@freebsd.org Sat Apr 13 04:46:36 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AE3FB156C1C4; Sat, 13 Apr 2019 04:46:36 +0000 (UTC) (envelope-from imp@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 522536D00C; Sat, 13 Apr 2019 04:46:36 +0000 (UTC) (envelope-from imp@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 2F20B4018; Sat, 13 Apr 2019 04:46:36 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3D4kakS042627; Sat, 13 Apr 2019 04:46:36 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D4kabU042626; Sat, 13 Apr 2019 04:46:36 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201904130446.x3D4kabU042626@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Sat, 13 Apr 2019 04:46:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346176 - head/sys/sys X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/sys/sys X-SVN-Commit-Revision: 346176 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 522536D00C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.94)[-0.944,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 04:46:36 -0000 Author: imp Date: Sat Apr 13 04:46:35 2019 New Revision: 346176 URL: https://svnweb.freebsd.org/changeset/base/346176 Log: Fix sbttons for values > 2s Add test against negative times. Add code to cope with larger values properly. Discussed with: bde@ (quite some time ago, for an earlier version) Modified: head/sys/sys/time.h Modified: head/sys/sys/time.h ============================================================================== --- head/sys/sys/time.h Sat Apr 13 04:42:17 2019 (r346175) +++ head/sys/sys/time.h Sat Apr 13 04:46:35 2019 (r346176) @@ -184,8 +184,18 @@ sbttobt(sbintime_t _sbt) static __inline int64_t sbttons(sbintime_t _sbt) { + uint64_t ns; - return ((1000000000 * _sbt) >> 32); +#ifdef KASSERT + KASSERT(_sbt >= 0, ("Negative values illegal for sbttons: %jx", _sbt)); +#endif + ns = _sbt; + if (ns >= SBT_1S) + ns = (ns >> 32) * 1000000000; + else + ns = 0; + + return (ns + (1000000000 * (_sbt & 0xffffffffu) >> 32)); } static __inline sbintime_t From owner-svn-src-all@freebsd.org Sat Apr 13 06:30:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 30CCB156E4BE; Sat, 13 Apr 2019 06:30:47 +0000 (UTC) (envelope-from imp@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 CC6FB6FB40; Sat, 13 Apr 2019 06:30:46 +0000 (UTC) (envelope-from imp@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 641CE5122; Sat, 13 Apr 2019 06:30:46 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3D6Uk8S095354; Sat, 13 Apr 2019 06:30:46 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D6UjBi095349; Sat, 13 Apr 2019 06:30:45 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201904130630.x3D6UjBi095349@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Sat, 13 Apr 2019 06:30:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346177 - in head/sys: amd64/conf arm/conf conf i386/conf powerpc/conf sparc64/conf X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: in head/sys: amd64/conf arm/conf conf i386/conf powerpc/conf sparc64/conf X-SVN-Commit-Revision: 346177 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: CC6FB6FB40 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 06:30:47 -0000 Author: imp Date: Sat Apr 13 06:30:45 2019 New Revision: 346177 URL: https://svnweb.freebsd.org/changeset/base/346177 Log: Move mpr/mps drivers from per-arch NOTES files into the MI notes file. They are in more arches they they aren't. Add appropriate nodevice directives in powerpc and arm. Modified: head/sys/amd64/conf/NOTES head/sys/arm/conf/NOTES head/sys/conf/NOTES head/sys/i386/conf/NOTES head/sys/powerpc/conf/NOTES head/sys/sparc64/conf/NOTES Modified: head/sys/amd64/conf/NOTES ============================================================================== --- head/sys/amd64/conf/NOTES Sat Apr 13 04:46:35 2019 (r346176) +++ head/sys/amd64/conf/NOTES Sat Apr 13 06:30:45 2019 (r346177) @@ -459,11 +459,6 @@ device imcsmb device isci options ISCI_LOGGING # enable debugging in isci HAL -# LSI-Logic MPT-Fusion drivers -device mpt # LSI-Logic MPT-Fusion -device mps # LSI-Logic MPT-Fusion 2 -device mpr # LSI-Logic MPT-Fusion 3 - # # NVM Express (NVMe) support device nvme # base NVMe driver Modified: head/sys/arm/conf/NOTES ============================================================================== --- head/sys/arm/conf/NOTES Sat Apr 13 04:46:35 2019 (r346176) +++ head/sys/arm/conf/NOTES Sat Apr 13 06:30:45 2019 (r346177) @@ -79,3 +79,7 @@ options KDTRACE_HOOKS # Alternatively include all the DTrace modules #device dtraceall + +# These aren't known to work on arm and/or don't compile +nodevice mpr +nodevice mps Modified: head/sys/conf/NOTES ============================================================================== --- head/sys/conf/NOTES Sat Apr 13 04:46:35 2019 (r346176) +++ head/sys/conf/NOTES Sat Apr 13 06:30:45 2019 (r346177) @@ -1565,6 +1565,8 @@ options TERMINAL_KERN_ATTR=(FG_LIGHTRED|BG_BLACK) # Qlogic ISP 2300 and ISP 2312 2Gb Fibre Channel host adapters. # Qlogic ISP 2322 and ISP 6322 2Gb Fibre Channel host adapters. # ispfw: Firmware module for Qlogic host adapters +# mpr: LSI-Logic MPT/Fusion Gen 3 +# mps: LSI-Logic MPT/Fusion Gen 2 # mpt: LSI-Logic MPT/Fusion 53c1020 or 53c1030 Ultra4 # or FC9x9 Fibre Channel host adapters. # sym: Symbios/Logic 53C8XX family of PCI-SCSI I/O processors: @@ -1594,7 +1596,9 @@ hint.isp.0.topology="nport-only" hint.isp.0.portwnn="w50000000aaaa0000" hint.isp.0.nodewnn="w50000000aaaa0001" device ispfw -device mpt +device mpr # LSI-Logic MPT-Fusion 3 +device mps # LSI-Logic MPT-Fusion 2 +device mpt # LSI-Logic MPT-Fusion device sym device trm Modified: head/sys/i386/conf/NOTES ============================================================================== --- head/sys/i386/conf/NOTES Sat Apr 13 04:46:35 2019 (r346176) +++ head/sys/i386/conf/NOTES Sat Apr 13 06:30:45 2019 (r346177) @@ -690,11 +690,6 @@ device ips device isci options ISCI_LOGGING # enable debugging in isci HAL -# LSI-Logic MPT-Fusion drivers -device mpt # LSI-Logic MPT-Fusion -device mps # LSI-Logic MPT-Fusion 2 -device mpr # LSI-Logic MPT-Fusion 3 - # # NVM Express (NVMe) support device nvme # base NVMe driver Modified: head/sys/powerpc/conf/NOTES ============================================================================== --- head/sys/powerpc/conf/NOTES Sat Apr 13 04:46:35 2019 (r346176) +++ head/sys/powerpc/conf/NOTES Sat Apr 13 06:30:45 2019 (r346177) @@ -80,6 +80,8 @@ nodevice ccr nodevice cxgbe # XXX: builds on powerpc64 only. nodevice cxgbev nodevice fdc +nodevice mpr # no 64-bit atomics +nodevice mps # no 64-bit atomics nodevice ppc nodevice splash # when splash works enable *_saver Modified: head/sys/sparc64/conf/NOTES ============================================================================== --- head/sys/sparc64/conf/NOTES Sat Apr 13 04:46:35 2019 (r346176) +++ head/sys/sparc64/conf/NOTES Sat Apr 13 06:30:45 2019 (r346177) @@ -85,11 +85,6 @@ options SUNKBD_EMULATE_ATKBD # allows to use the AT k options SUNKBD_DFLT_KEYMAP # specify the built-in keymap makeoptions SUNKBD_DFLT_KEYMAP=fr.dvorak -# LSI-Logic MPT-Fusion drivers -device mpt # LSI-Logic MPT-Fusion -device mps # LSI-Logic MPT-Fusion 2 -device mpr # LSI-Logic MPT-Fusion 3 - ##################################################################### # Devices we don't want to deal with From owner-svn-src-all@freebsd.org Sat Apr 13 06:40:32 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 58341156EA4B; Sat, 13 Apr 2019 06:40:32 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail104.syd.optusnet.com.au (mail104.syd.optusnet.com.au [211.29.132.246]) by mx1.freebsd.org (Postfix) with ESMTP id 982E36FF65; Sat, 13 Apr 2019 06:40:31 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail104.syd.optusnet.com.au (Postfix) with ESMTPS id E3CD243AB88; Sat, 13 Apr 2019 16:40:20 +1000 (AEST) Date: Sat, 13 Apr 2019 16:40:19 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Warner Losh cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346176 - head/sys/sys In-Reply-To: <201904130446.x3D4kabU042626@repo.freebsd.org> Message-ID: <20190413150641.N10265@besplex.bde.org> References: <201904130446.x3D4kabU042626@repo.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=UJetJGXy c=1 sm=1 tr=0 cx=a_idp_d a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=kj9zAlcOel0A:10 a=yN3NuX8VpI7eo1ogYXkA:9 a=qm3kaefaaKCe6iHx:21 a=q1I3VDI0TebsFKds:21 a=CjuIK1q_8ugA:10 X-Rspamd-Queue-Id: 982E36FF65 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.981,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 06:40:32 -0000 On Sat, 13 Apr 2019, Warner Losh wrote: > Fix sbttons for values > 2s > > Add test against negative times. Add code to cope with larger values > properly. > > Discussed with: bde@ (quite some time ago, for an earlier version) I am unhappy with previous attempted fixes in this area, and still have large local patches. Old versions supported negative times. This was broken in 2 stages: - use a buggy inline conversion function instead of a working macro - break negative times further when fixing overflow bugs in the inline function - attempt to panic for negative times, but actually do nothing since this is in unreachable code. > Modified: head/sys/sys/time.h > ============================================================================== > --- head/sys/sys/time.h Sat Apr 13 04:42:17 2019 (r346175) > +++ head/sys/sys/time.h Sat Apr 13 04:46:35 2019 (r346176) > @@ -184,8 +184,18 @@ sbttobt(sbintime_t _sbt) > static __inline int64_t > sbttons(sbintime_t _sbt) > { > + uint64_t ns; > > - return ((1000000000 * _sbt) >> 32); sbintime_t is a signed type so as to support negative times. This function returns a signed type so as to support negative times. The original sloppy and fast version with a macro worked for all negative times, modulo the assumption that right shifts propagate the sign bit. It just did _sbt >> 32. The above slower and more accurate version might have worked for negative times similarly, but this is less clear. E.g., if _sbt is -1 second, that is 0xffffffff (-1) in the high 32 bits and 0 in the low 32 bits. Multiplying this by 10**9 doesn't overflow since both terms are signed, and gives a result near -1 in the high bits and the shift works before. I think similarly for all negative values down to the overflow threshold of about -2 seconds. Similarly for the other functions -- the simple shifts just worked (unportably), while all later versions have overflow and/or sign extension bugs. > +#ifdef KASSERT > + KASSERT(_sbt >= 0, ("Negative values illegal for sbttons: %jx", _sbt)); > +#endif KASSERT is never defined here except in code with style bugs. In the kernel, sys/time.h is never included directly except in code with style bugs. It is normally included as part of standard namespace pollution in sys/param.h. Namespace pollution defeats ifdefs like this. KASSERT is only defined in sys/systm.h (except...), so it is never defined when sys/param.h includes sys/time.h (except in code with even worse style bugs, such as including sys/systm.h unsorted before sys/systm.h...). In userland, KASSERT is never defined here except in code with style bugs (such as being chummy with the implementation and defining KASSERT to use here) and in code to demonstrate the brokenness of this header (KASSERT is in the application namespace, so the demonstration can define it as 'syntax error'. > + ns = _sbt; This corrupts the type from signed to unsigned. This has no effect except to ensure breaking negative times. E.g., if the time is not negative, then the conversion doesn't change its value. Ottherwise, the conversion prevents propagation of the sign bit. E.g, if the time is -1 then shifting right the signed value by 32 keeps it as -1, but shifting right the unsigned value gives UINT32_MAX seconds = UINT32_MAX * 10**9 nsec = about 1/4 of UINT64_MAX seconds. Since this and all other possible values in ns are less than 1/4 UINT64_MAX, then are also less than INT64_MAX, so conversion back to a signed type doesn't overflow them back to a negative value. > + if (ns >= SBT_1S) > + ns = (ns >> 32) * 1000000000; > + else > + ns = 0; > + Style bug (extra blank line). In KNF, statements are separated by a semilcolon and a single newline. An extra newline is especially bad when it is used to separate closely related statements like here. > + return (ns + (1000000000 * (_sbt & 0xffffffffu) >> 32)); This seems to be correct, except for its style bugs of spelling the U suffix in lower case. I don't like using the suffix, but the value of plain 0xffffffff after promotion to the type of _sbt is unclear. > } > > static __inline sbintime_t Conversion in the opposite direction is more difficult and buggier. I currently use the following cut down version with only the most important function fixed: XX Index: time.h XX =================================================================== XX --- time.h (revision 346046) XX +++ time.h (working copy) XX @@ -200,8 +200,20 @@ XX sb = (_ns / 1000000000) * SBT_1S; XX _ns = _ns % 1000000000; These divisons are very slow on i386, and not very fast on amd64. They defeat the manual reductions to shifts and multiplications in the rest of the code. This case starts unnecessarily early (at 1 second instead of at the overflow threshold of 4+ seconds). XX } XX +#if 0 XX /* 9223372037 = ceil(2^63 / 1000000000) */ XX sb += ((_ns * 9223372037ull) + 0x7fffffff) >> 31; Current version that I don't like, due to its magic 922* and use of the long long abomination, and wrong magic bias 0x7fffffff (this almost works. IIRC, it gives errors of 1-3 sbintime_t values (fractional nsec) and it is hard to see why the errors are so small since its value makes no sense). XX +#elif 0 XX + sb += (_ns * (((uint64_t)1 << 63) / 500000000 + 1) + 0xffffffff) >> 32; Similar version without the abomination and without the magic numbers divided by 2. The 922* number is bogus for another reason. It is reduced from an 1844* number (== UINT64_MAX divided by some power of 10) so as to avoid overflow for signed values. But the code is supposed to eliminate signed values. It can use the more natural number 1844* or the better expression for it above together with not dividing everything by 2. I now remember one source of the off by 1-3 error. Dividing everything by 2 loses 1 bit, so gives off by 1 errors. Maybe the 0x7fffffff magic number is correct after all. XX +#elif 1 XX + sb += (_ns << 32) / 1000000000 + (_ns == 0 ? 0 : 1); Not the best version, but it is what I have been using. It depends on division being fast or the compiler reducing division to multiplication, and to do this, first notice that _ns has been reduced to 32 bits so the division is not a full 64-bit one. Then always round up except for _ns = 0, and add 1 even if the result is already correctly rounded. This rounding is sloppy and not quite right, but so is the rounding resulting from adding the bias before the shift. XX +#else XX + uint64_t factor, frac; XX + XX + factor = ((uint64_t)1 << 63) / 500000000; XX + frac = ((0 - factor * 1000000000) << 32) / 1000000000; XX + sb += (_ns * factor + ((_ns * frac) >> 32) + 0xffffffff) >> 32; XX +#endif This version is supposed to do correct rounding. It is significantly slower, but not nearly as slow as the mul/div by 10**9 above the threshold. The compiler is supposed to turn the division by 10**9 here into a multiplication, but it looks like I was not careful enough to reduce so that this is possible, so this is very slow on i386 where I didn't test it and not fast on amd64 where I did test it. XX return (sb); XX } XX See also my fixes in calcru1(). These do the scaling more carefully than the above, but the final conversion of the result in usec to a timeval is very slow on i386, etc., as usual because mul/div of 64-bit usec by 10**6 is very slow. More precisely, it is very slow only in the kernel since libkern still uses a very slow method written in C, and merely slow in userland where libgcc uses a method half as good as possible. The old macro versions are also much better in the usual case where the caller doesn't care about accuracy. Bruce From owner-svn-src-all@freebsd.org Sat Apr 13 08:14:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6987115714BC; Sat, 13 Apr 2019 08:14:10 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail106.syd.optusnet.com.au (mail106.syd.optusnet.com.au [211.29.132.42]) by mx1.freebsd.org (Postfix) with ESMTP id 9B63972A8E; Sat, 13 Apr 2019 08:14:09 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail106.syd.optusnet.com.au (Postfix) with ESMTPS id 91D783D7AF0; Sat, 13 Apr 2019 18:14:00 +1000 (AEST) Date: Sat, 13 Apr 2019 18:13:59 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org cc: Warner Losh , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r346176 - head/sys/sys In-Reply-To: <20190413150641.N10265@besplex.bde.org> Message-ID: <20190413170441.N10576@besplex.bde.org> References: <201904130446.x3D4kabU042626@repo.freebsd.org> <20190413150641.N10265@besplex.bde.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=FNpr/6gs c=1 sm=1 tr=0 cx=a_idp_d a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=9cW_t1CCXrUA:10 a=kj9zAlcOel0A:10 a=EbWMYzAKIVLIQpZ_2q8A:9 a=CjuIK1q_8ugA:10 X-Rspamd-Queue-Id: 9B63972A8E X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.98)[-0.980,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 08:14:10 -0000 On Sat, 13 Apr 2019, Bruce Evans wrote: > On Sat, 13 Apr 2019, Warner Losh wrote: > >> Fix sbttons for values > 2s >> >> Add test against negative times. Add code to cope with larger values >> properly. >> >> Discussed with: bde@ (quite some time ago, for an earlier version) > > I am unhappy with previous attempted fixes in this area, and still have large > local patches. > ... >> Modified: head/sys/sys/time.h >> ============================================================================== >> --- head/sys/sys/time.h Sat Apr 13 04:42:17 2019 (r346175) >> +++ head/sys/sys/time.h Sat Apr 13 04:46:35 2019 (r346176) >> @@ -184,8 +184,18 @@ sbttobt(sbintime_t _sbt) >> static __inline int64_t >> sbttons(sbintime_t _sbt) >> { >> + uint64_t ns; >> >> - return ((1000000000 * _sbt) >> 32); >* ... >> + ns = _sbt; >> + if (ns >= SBT_1S) >> + ns = (ns >> 32) * 1000000000; >> + else >> + ns = 0; >> + >... >> + return (ns + (1000000000 * (_sbt & 0xffffffffu) >> 32)); Another style bug: extra parentheses moved from a useful place to a non- useful place. '*' has precedence over '>>', but this combination is unusual so the old code emphasized it using parentheses. '*' has precedence over '+', and this combination is usual so it shouldn't be emphasized using parentheses, but the new code does that and removes the more useful parentheses. >> } sbttous() and sbttoms() are still broken. sbtots() might be pessimized since it calls sbttons with a 32-bit arg that doesn't need the above complications (the compiler would be doing well to see that and replace ns by 0 in the above calculations. Another bug in the above and previous changes: ns is in the application namespace. Adding it defeats the care taken with naming the arg with an underscore. All inline functions in standard and sys headers have this problem. These are under __BSD_VISIBLE, but of course there is no documentation that this reserves the names ns, etc. Better fix based on looking at sbtots(): split _sbt into seconds and nanoseconds unconditially and reassemble using simple expressions. This is almost as efficient on 32-bit arches, since the seconds and nanoseconds fit in 32 bits so reassembly uses 2 32x32 -> 64-bit multiplications instead of 1 64x32 -> 64-bit multiplication. static __inline int64_t sbttons(sbintime_t _sbt) { #ifdef __tooslow if (__predict_false(_sbt == INT64_MIN) return (-1); /* round towards +-Inf to keep non-0 */ #endif #ifdef __maybenottooslow if (__predict_false(_sbt < 0)) return sbttons(-sbt); #endif return (1000000000 * (_sbt >> 32) + (1000000000 * (_sbt & 0xffffffffU)) >> 32); /* XXX rounding? */ } Handling negative values makes it about as messy and slow as the committed version :-(. Rounding is also a problem. It is normal to round times down, but that turns nonzero into zero which is bad for timeouts. The version in my previous reply always adds 1 mainly to avoid this. Conversion to a different representation and back gives double rounding down if rounding is always done, so rarely gives the original value. The file still has phk's comment about rounding down being required, and the changes to the sbintime conversion functions still ignore this. Bruce From owner-svn-src-all@freebsd.org Sat Apr 13 08:50:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EACD215720A0; Sat, 13 Apr 2019 08:50:42 +0000 (UTC) (envelope-from dim@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 8DE8E736E4; Sat, 13 Apr 2019 08:50:42 +0000 (UTC) (envelope-from dim@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 6899768D8; Sat, 13 Apr 2019 08:50:42 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3D8ogIb067719; Sat, 13 Apr 2019 08:50:42 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D8ofr6067716; Sat, 13 Apr 2019 08:50:41 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201904130850.x3D8ofr6067716@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sat, 13 Apr 2019 08:50:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346178 - in stable/12: . sys/amd64/conf X-SVN-Group: stable-12 X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in stable/12: . sys/amd64/conf X-SVN-Commit-Revision: 346178 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8DE8E736E4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.97)[-0.965,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 08:50:43 -0000 Author: dim Date: Sat Apr 13 08:50:41 2019 New Revision: 346178 URL: https://svnweb.freebsd.org/changeset/base/346178 Log: After r346168, put the actual commit dates into UPDATING and ObsoleteFiles.inc. I completely forgot about those, sorry. This is a direct commit to stable/12. Modified: stable/12/ObsoleteFiles.inc stable/12/UPDATING stable/12/sys/amd64/conf/GENERIC Modified: stable/12/ObsoleteFiles.inc ============================================================================== --- stable/12/ObsoleteFiles.inc Sat Apr 13 06:30:45 2019 (r346177) +++ stable/12/ObsoleteFiles.inc Sat Apr 13 08:50:41 2019 (r346178) @@ -38,9 +38,9 @@ # xargs -n1 | sort | uniq -d; # done -# 2019mmdd: new libc++ import which bumps version from 7.0.1 to 8.0.0. +# 20190412: new libc++ import which bumps version from 7.0.1 to 8.0.0. OLD_FILES+=usr/include/c++/v1/experimental/dynarray -# 2019mmdd: new clang import which bumps version from 7.0.1 to 8.0.0. +# 20190412: new clang import which bumps version from 7.0.1 to 8.0.0. OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/allocator_interface.h OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/asan_interface.h OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/common_interface_defs.h Modified: stable/12/UPDATING ============================================================================== --- stable/12/UPDATING Sat Apr 13 06:30:45 2019 (r346177) +++ stable/12/UPDATING Sat Apr 13 08:50:41 2019 (r346178) @@ -16,7 +16,7 @@ from older versions of FreeBSD, try WITHOUT_CLANG and the tip of head, and then rebuild without this option. The bootstrap process from older version of current across the gcc/clang cutover is a bit fragile. -2019mmdd: +20190412: Clang, llvm, lld, lldb, compiler-rt and libc++ have been upgraded to 8.0.0. Please see the 20141231 entry below for information about prerequisites and upgrading, if you are not already using clang 3.5.0 Modified: stable/12/sys/amd64/conf/GENERIC ============================================================================== --- stable/12/sys/amd64/conf/GENERIC Sat Apr 13 06:30:45 2019 (r346177) +++ stable/12/sys/amd64/conf/GENERIC Sat Apr 13 08:50:41 2019 (r346178) @@ -192,6 +192,7 @@ device splash # Splash screen and screen saver supp # syscons is the default console driver, resembling an SCO console device sc options SC_PIXEL_MODE # add support for the raster text mode +options SC_HISTORY_SIZE=2000 # number of history buffer lines # vt is the new video console driver device vt From owner-svn-src-all@freebsd.org Sat Apr 13 08:52:32 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B68741572483; Sat, 13 Apr 2019 08:52:32 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg1-x52e.google.com (mail-pg1-x52e.google.com [IPv6:2607:f8b0:4864:20::52e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 362E573C44; Sat, 13 Apr 2019 08:52:32 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg1-x52e.google.com with SMTP id i2so6285924pgj.11; Sat, 13 Apr 2019 01:52:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=AI8QEjQe+zXGOpdnfNu5Qll/SuC67jwRXKFh4+Tn7+k=; b=hmh7CWvy7/R8d3VD0wFMOQHAFGhiZsfzCw7B1jNCgtLA29/H7HlQaPwGEJiwloC4u4 eOoKlRnfIsskwYBL5z0uN89E4u50mJaREYN/9mUeh02Ig6kpkh/FLdLawFf9Cs2aSf3g ZmTEM0PVUR1FnyPYuCr69DlaqKFzO0BY3fSUbNWqUyAWbTRHuiCUpTJqQCyr+YIY8eR9 BCF3buruMZcS29uyHJcvf85HmIZNEbGH5fOdcJ5NchZrBt2QrnOTsKBkGq1DYRL/Khbw EAs2HPvOpAErP1EOYo0QBW+cvgtGpH6CyxAo5bnySM5gWyx4txuIlZW1AINH8/HJakQj Y00A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=AI8QEjQe+zXGOpdnfNu5Qll/SuC67jwRXKFh4+Tn7+k=; b=O4IAALyBVR+Y4YBEk1c/IRMqErtY2mzsCICETj55MjIy4vIXkp60srQf469OcrhJE1 GWAuz5LwKjuv7La/yOFR3tAfW/lAQ47yB8swf5LB0mV2wf+HZuUAfGK1A7wSj6Wj/ATu plpJnZSItcC8ezggxi17keMbLIWEt8OScRWJtizdQGbcV4BUwwPP/T9abrEk+CrgU9iM CPcCtc+5zy3g15iH0Cwo9xnjfBWGc/nuudo2iOxWZIFI9W7J7ZwUnkQDhHhqk28HhQlW kenoEDVl0uiV4pnU/VAa43itYUoZkL3rCQ4+oDfu1+dsSogdsnp/5pmQ1U8/89qNzy2E C/vA== X-Gm-Message-State: APjAAAWZGazjUrFQJDe34qbzDVqHsovjy2N8f2mkIVPsKR+LIioP3IzN XgyNyjZbo1/lPYzoSkcESxv+KDW0Ang= X-Google-Smtp-Source: APXvYqwKihGm3PJzz3aaQ0XEW3VGPa/PvVQKzOb9rnmY8jmOBo2ULLaJdBvTYILOmSkJj7wTFe+bKQ== X-Received: by 2002:a63:6786:: with SMTP id b128mr58751875pgc.318.1555145550413; Sat, 13 Apr 2019 01:52:30 -0700 (PDT) Received: from [192.168.20.7] (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id y10sm66913423pfm.27.2019.04.13.01.52.29 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 13 Apr 2019 01:52:29 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) Subject: Re: svn commit: r346178 - in stable/12: . sys/amd64/conf From: Enji Cooper In-Reply-To: <201904130850.x3D8ofr6067716@repo.freebsd.org> Date: Sat, 13 Apr 2019 01:52:28 -0700 Cc: src-committers , svn-src-all , svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <0E97BA37-B564-4262-A602-89DFAF532B34@gmail.com> References: <201904130850.x3D8ofr6067716@repo.freebsd.org> To: Dimitry Andric X-Mailer: Apple Mail (2.3445.102.3) X-Rspamd-Queue-Id: 362E573C44 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 08:52:33 -0000 > On Apr 13, 2019, at 1:50 AM, Dimitry Andric wrote: >=20 > Author: dim > Date: Sat Apr 13 08:50:41 2019 > New Revision: 346178 > URL: https://svnweb.freebsd.org/changeset/base/346178 >=20 > Log: > After r346168, put the actual commit dates into UPDATING and > ObsoleteFiles.inc. I completely forgot about those, sorry. >=20 > This is a direct commit to stable/12. >=20 =E2=80=A6 > Modified: stable/12/sys/amd64/conf/GENERIC > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- stable/12/sys/amd64/conf/GENERIC Sat Apr 13 06:30:45 2019 = (r346177) > +++ stable/12/sys/amd64/conf/GENERIC Sat Apr 13 08:50:41 2019 = (r346178) > @@ -192,6 +192,7 @@ device splash # Splash = screen and screen saver supp > # syscons is the default console driver, resembling an SCO console > device sc > options SC_PIXEL_MODE # add support for the raster = text mode > +options SC_HISTORY_SIZE=3D2000 # number of history buffer lines Hi Dimitry, Was this change intentional? Cheers, -Enji= From owner-svn-src-all@freebsd.org Sat Apr 13 08:52:54 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 38E7E15724E3; Sat, 13 Apr 2019 08:52:54 +0000 (UTC) (envelope-from dim@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 7584A741CA; Sat, 13 Apr 2019 08:52:53 +0000 (UTC) (envelope-from dim@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 4F98D6A8B; Sat, 13 Apr 2019 08:52:53 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3D8qrED072696; Sat, 13 Apr 2019 08:52:53 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D8qrOm072695; Sat, 13 Apr 2019 08:52:53 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201904130852.x3D8qrOm072695@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sat, 13 Apr 2019 08:52:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346179 - stable/12/sys/amd64/conf X-SVN-Group: stable-12 X-SVN-Commit-Author: dim X-SVN-Commit-Paths: stable/12/sys/amd64/conf X-SVN-Commit-Revision: 346179 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7584A741CA X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.97)[-0.965,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 08:52:55 -0000 Author: dim Date: Sat Apr 13 08:52:52 2019 New Revision: 346179 URL: https://svnweb.freebsd.org/changeset/base/346179 Log: After r346168, put the actual commit dates into UPDATING and ObsoleteFiles.inc. I completely forgot about those, sorry. This is a direct commit to stable/12. Modified: stable/12/sys/amd64/conf/GENERIC Modified: stable/12/sys/amd64/conf/GENERIC ============================================================================== --- stable/12/sys/amd64/conf/GENERIC Sat Apr 13 08:50:41 2019 (r346178) +++ stable/12/sys/amd64/conf/GENERIC Sat Apr 13 08:52:52 2019 (r346179) @@ -192,7 +192,6 @@ device splash # Splash screen and screen saver supp # syscons is the default console driver, resembling an SCO console device sc options SC_PIXEL_MODE # add support for the raster text mode -options SC_HISTORY_SIZE=2000 # number of history buffer lines # vt is the new video console driver device vt From owner-svn-src-all@freebsd.org Sat Apr 13 08:55:50 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CAE80157262F; Sat, 13 Apr 2019 08:55:50 +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 6F28C74357; Sat, 13 Apr 2019 08:55:50 +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 4AFDB6A8E; Sat, 13 Apr 2019 08:55:50 +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 x3D8toUq072936; Sat, 13 Apr 2019 08:55:50 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D8tnML072933; Sat, 13 Apr 2019 08:55:49 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201904130855.x3D8tnML072933@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Sat, 13 Apr 2019 08:55:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346180 - in stable/12: libexec/rc libexec/rc/rc.d share/man/man5 X-SVN-Group: stable-12 X-SVN-Commit-Author: ae X-SVN-Commit-Paths: in stable/12: libexec/rc libexec/rc/rc.d share/man/man5 X-SVN-Commit-Revision: 346180 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6F28C74357 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.967,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 08:55:51 -0000 Author: ae Date: Sat Apr 13 08:55:49 2019 New Revision: 346180 URL: https://svnweb.freebsd.org/changeset/base/346180 Log: MFC r345450: Add ability to automatically load ipfw_nat64, ipfw_nptv6 and ipfw_pmod modules by declaring corresponding variables in rc.conf. Also document them in rc.conf(5). Submitted by: Dries Michiels Differential Revision: https://reviews.freebsd.org/D19673 MFC r345985: Add firewall_[nat64|nptv6|pmod]_enable variables to /etc/defaults/rc.conf Modified: stable/12/libexec/rc/rc.conf stable/12/libexec/rc/rc.d/ipfw stable/12/share/man/man5/rc.conf.5 Directory Properties: stable/12/ (props changed) Modified: stable/12/libexec/rc/rc.conf ============================================================================== --- stable/12/libexec/rc/rc.conf Sat Apr 13 08:52:52 2019 (r346179) +++ stable/12/libexec/rc/rc.conf Sat Apr 13 08:55:49 2019 (r346180) @@ -178,6 +178,9 @@ firewall_nologports="135-139,445 1026,1027 1433,1434" firewall_nat_enable="NO" # Enable kernel NAT (if firewall_enable == YES) firewall_nat_interface="" # Public interface or IPaddress to use firewall_nat_flags="" # Additional configuration parameters +firewall_nat64_enable="NO" # Enable kernel NAT64 module. +firewall_nptv6_enable="NO" # Enable kernel NPTv6 module. +firewall_pmod_enable="NO" # Enable kernel protocols modification module. dummynet_enable="NO" # Load the dummynet(4) module ipfw_netflow_enable="NO" # Enable netflow logging via ng_netflow ip_portrange_first="NO" # Set first dynamically allocated port Modified: stable/12/libexec/rc/rc.d/ipfw ============================================================================== --- stable/12/libexec/rc/rc.d/ipfw Sat Apr 13 08:52:52 2019 (r346179) +++ stable/12/libexec/rc/rc.d/ipfw Sat Apr 13 08:55:49 2019 (r346180) @@ -34,6 +34,15 @@ ipfw_prestart() if checkyesno firewall_nat_enable; then required_modules="$required_modules ipfw_nat" fi + if checkyesno firewall_nat64_enable; then + required_modules="$required_modules ipfw_nat64" + fi + if checkyesno firewall_nptv6_enable; then + required_modules="$required_modules ipfw_nptv6" + fi + if checkyesno firewall_pmod_enable; then + required_modules="$required_modules ipfw_pmod" + fi } ipfw_start() Modified: stable/12/share/man/man5/rc.conf.5 ============================================================================== --- stable/12/share/man/man5/rc.conf.5 Sat Apr 13 08:52:52 2019 (r346179) +++ stable/12/share/man/man5/rc.conf.5 Sat Apr 13 08:55:49 2019 (r346180) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd October 24, 2018 +.Dd March 21, 2019 .Dt RC.CONF 5 .Os .Sh NAME @@ -571,9 +571,11 @@ equivalent of .Va natd_enable . Setting this to .Dq Li YES -enables kernel NAT. +will automatically load the +.Xr ipfw 8 +NAT kernel module if .Va firewall_enable -must also be set to +is also set to .Dq Li YES . .It Va firewall_nat_interface .Pq Vt str @@ -586,6 +588,36 @@ kernel NAT should run. .It Va firewall_nat_flags .Pq Vt str Additional configuration parameters for kernel NAT should be placed here. +.It Va firewall_nat64_enable +.Pq Vt bool +Setting this to +.Dq Li YES +will automatically load the +.Xr ipfw 8 +NAT64 kernel module if +.Va firewall_enable +is also set to +.Dq Li YES . +.It Va firewall_nptv6_enable +.Pq Vt bool +Setting this to +.Dq Li YES +will automatically load the +.Xr ipfw 8 +NPTv6 kernel module if +.Va firewall_enable +is also set to +.Dq Li YES . +.It Va firewall_pmod_enable +.Pq Vt bool +Setting this to +.Dq Li YES +will automatically load the +.Xr ipfw 8 +pmod kernel module if +.Va firewall_enable +is also set to +.Dq Li YES . .It Va dummynet_enable .Pq Vt bool Setting this to From owner-svn-src-all@freebsd.org Sat Apr 13 08:57:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 05B981572780; Sat, 13 Apr 2019 08:57:07 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from tensor.andric.com (tensor.andric.com [IPv6:2001:470:7a58:1::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "tensor.andric.com", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 97378744FC; Sat, 13 Apr 2019 08:57:06 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from [IPv6:2001:470:7a58::2ce8:e253:1188:d174] (unknown [IPv6:2001:470:7a58:0:2ce8:e253:1188:d174]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 3D2E34121D; Sat, 13 Apr 2019 10:57:05 +0200 (CEST) From: Dimitry Andric Content-Type: multipart/signed; boundary="Apple-Mail=_B83F1325-A5DB-4509-A7A0-06F9EC950EB4"; protocol="application/pgp-signature"; micalg=pgp-sha1 Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.8\)) Subject: Re: svn commit: r346179 - stable/12/sys/amd64/conf Date: Sat, 13 Apr 2019 10:57:04 +0200 References: <201904130852.x3D8qrOm072695@repo.freebsd.org> To: src-committers , svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org In-Reply-To: <201904130852.x3D8qrOm072695@repo.freebsd.org> Message-Id: <83384F85-72A5-4EE5-8F10-E6D8FE9317DF@FreeBSD.org> X-Mailer: Apple Mail (2.3445.104.8) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 08:57:07 -0000 --Apple-Mail=_B83F1325-A5DB-4509-A7A0-06F9EC950EB4 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii On 13 Apr 2019, at 10:52, Dimitry Andric wrote: > > Author: dim > Date: Sat Apr 13 08:52:52 2019 > New Revision: 346179 > URL: https://svnweb.freebsd.org/changeset/base/346179 > > Log: > After r346168, put the actual commit dates into UPDATING and > ObsoleteFiles.inc. I completely forgot about those, sorry. Ugh, and here I used the incorrect commit message file. This was of course meant to revert the accidental commit of an unrelated change in r346178. Sorry for committing from an unclean tree. I shall try to avoid that in the future. -Dimitry --Apple-Mail=_B83F1325-A5DB-4509-A7A0-06F9EC950EB4 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.2 iF0EARECAB0WIQR6tGLSzjX8bUI5T82wXqMKLiCWowUCXLGkYAAKCRCwXqMKLiCW o3p2AJ9m2XHn7IIyILsdeAhXflMF2i2OYwCgvEabUE4hy52J4MO9Phh5CI+iZe8= =t0Tc -----END PGP SIGNATURE----- --Apple-Mail=_B83F1325-A5DB-4509-A7A0-06F9EC950EB4-- From owner-svn-src-all@freebsd.org Sat Apr 13 09:06:38 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 050C61572D54; Sat, 13 Apr 2019 09:06:38 +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 A0057749D1; Sat, 13 Apr 2019 09:06:37 +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 7BB0E6C41; Sat, 13 Apr 2019 09:06:37 +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 x3D96baR077983; Sat, 13 Apr 2019 09:06:37 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3D96aB2077980; Sat, 13 Apr 2019 09:06:36 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201904130906.x3D96aB2077980@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Sat, 13 Apr 2019 09:06:36 +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: r346181 - in stable/11: etc/defaults etc/rc.d share/man/man5 X-SVN-Group: stable-11 X-SVN-Commit-Author: ae X-SVN-Commit-Paths: in stable/11: etc/defaults etc/rc.d share/man/man5 X-SVN-Commit-Revision: 346181 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A0057749D1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.967,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 09:06:38 -0000 Author: ae Date: Sat Apr 13 09:06:36 2019 New Revision: 346181 URL: https://svnweb.freebsd.org/changeset/base/346181 Log: MFC r345450: Add ability to automatically load ipfw_nat64, ipfw_nptv6 and ipfw_pmod modules by declaring corresponding variables in rc.conf. Also document them in rc.conf(5). Submitted by: Dries Michiels Differential Revision: https://reviews.freebsd.org/D19673 MFC r345985: Add firewall_[nat64|nptv6|pmod]_enable variables to /etc/defaults/rc.conf Modified: stable/11/etc/defaults/rc.conf stable/11/etc/rc.d/ipfw stable/11/share/man/man5/rc.conf.5 Directory Properties: stable/11/ (props changed) Modified: stable/11/etc/defaults/rc.conf ============================================================================== --- stable/11/etc/defaults/rc.conf Sat Apr 13 08:55:49 2019 (r346180) +++ stable/11/etc/defaults/rc.conf Sat Apr 13 09:06:36 2019 (r346181) @@ -168,6 +168,9 @@ firewall_nologports="135-139,445 1026,1027 1433,1434" firewall_nat_enable="NO" # Enable kernel NAT (if firewall_enable == YES) firewall_nat_interface="" # Public interface or IPaddress to use firewall_nat_flags="" # Additional configuration parameters +firewall_nat64_enable="NO" # Enable kernel NAT64 module. +firewall_nptv6_enable="NO" # Enable kernel NPTv6 module. +firewall_pmod_enable="NO" # Enable kernel protocols modification module. dummynet_enable="NO" # Load the dummynet(4) module ipfw_netflow_enable="NO" # Enable netflow logging via ng_netflow ip_portrange_first="NO" # Set first dynamically allocated port Modified: stable/11/etc/rc.d/ipfw ============================================================================== --- stable/11/etc/rc.d/ipfw Sat Apr 13 08:55:49 2019 (r346180) +++ stable/11/etc/rc.d/ipfw Sat Apr 13 09:06:36 2019 (r346181) @@ -34,6 +34,15 @@ ipfw_prestart() if checkyesno firewall_nat_enable; then required_modules="$required_modules ipfw_nat" fi + if checkyesno firewall_nat64_enable; then + required_modules="$required_modules ipfw_nat64" + fi + if checkyesno firewall_nptv6_enable; then + required_modules="$required_modules ipfw_nptv6" + fi + if checkyesno firewall_pmod_enable; then + required_modules="$required_modules ipfw_pmod" + fi } ipfw_start() Modified: stable/11/share/man/man5/rc.conf.5 ============================================================================== --- stable/11/share/man/man5/rc.conf.5 Sat Apr 13 08:55:49 2019 (r346180) +++ stable/11/share/man/man5/rc.conf.5 Sat Apr 13 09:06:36 2019 (r346181) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 17, 2017 +.Dd March 21, 2019 .Dt RC.CONF 5 .Os .Sh NAME @@ -568,9 +568,11 @@ equivalent of .Va natd_enable . Setting this to .Dq Li YES -enables kernel NAT. +will automatically load the +.Xr ipfw 8 +NAT kernel module if .Va firewall_enable -must also be set to +is also set to .Dq Li YES . .It Va firewall_nat_interface .Pq Vt str @@ -583,6 +585,36 @@ kernel NAT should run. .It Va firewall_nat_flags .Pq Vt str Additional configuration parameters for kernel NAT should be placed here. +.It Va firewall_nat64_enable +.Pq Vt bool +Setting this to +.Dq Li YES +will automatically load the +.Xr ipfw 8 +NAT64 kernel module if +.Va firewall_enable +is also set to +.Dq Li YES . +.It Va firewall_nptv6_enable +.Pq Vt bool +Setting this to +.Dq Li YES +will automatically load the +.Xr ipfw 8 +NPTv6 kernel module if +.Va firewall_enable +is also set to +.Dq Li YES . +.It Va firewall_pmod_enable +.Pq Vt bool +Setting this to +.Dq Li YES +will automatically load the +.Xr ipfw 8 +pmod kernel module if +.Va firewall_enable +is also set to +.Dq Li YES . .It Va dummynet_enable .Pq Vt bool Setting this to From owner-svn-src-all@freebsd.org Sat Apr 13 09:16:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 030BD1572F77; Sat, 13 Apr 2019 09:16:12 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from tensor.andric.com (tensor.andric.com [IPv6:2001:470:7a58:1::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "tensor.andric.com", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8073E74DE2; Sat, 13 Apr 2019 09:16:11 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from [IPv6:2001:470:7a58::2ce8:e253:1188:d174] (unknown [IPv6:2001:470:7a58:0:2ce8:e253:1188:d174]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 7927241221; Sat, 13 Apr 2019 11:16:10 +0200 (CEST) From: Dimitry Andric Message-Id: Content-Type: multipart/signed; boundary="Apple-Mail=_803A1642-A6E2-4198-9E01-342DAE5B75DF"; protocol="application/pgp-signature"; micalg=pgp-sha1 Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.8\)) Subject: Re: svn commit: r346178 - in stable/12: . sys/amd64/conf Date: Sat, 13 Apr 2019 11:16:09 +0200 In-Reply-To: <0E97BA37-B564-4262-A602-89DFAF532B34@gmail.com> Cc: src-committers , svn-src-all , svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org To: Enji Cooper References: <201904130850.x3D8ofr6067716@repo.freebsd.org> <0E97BA37-B564-4262-A602-89DFAF532B34@gmail.com> X-Mailer: Apple Mail (2.3445.104.8) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 09:16:12 -0000 --Apple-Mail=_803A1642-A6E2-4198-9E01-342DAE5B75DF Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 On 13 Apr 2019, at 10:52, Enji Cooper wrote: >=20 >> On Apr 13, 2019, at 1:50 AM, Dimitry Andric wrote: >>=20 >> Author: dim >> Date: Sat Apr 13 08:50:41 2019 >> New Revision: 346178 >> URL: https://svnweb.freebsd.org/changeset/base/346178 >>=20 >> Log: >> After r346168, put the actual commit dates into UPDATING and >> ObsoleteFiles.inc. I completely forgot about those, sorry. >>=20 >> This is a direct commit to stable/12. >>=20 >=20 > =E2=80=A6 >=20 >> Modified: stable/12/sys/amd64/conf/GENERIC >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- stable/12/sys/amd64/conf/GENERIC Sat Apr 13 06:30:45 2019 = (r346177) >> +++ stable/12/sys/amd64/conf/GENERIC Sat Apr 13 08:50:41 2019 = (r346178) >> @@ -192,6 +192,7 @@ device splash # Splash = screen and screen saver supp >> # syscons is the default console driver, resembling an SCO console >> device sc >> options SC_PIXEL_MODE # add support for the raster = text mode >> +options SC_HISTORY_SIZE=3D2000 # number of history buffer lines >=20 > Hi Dimitry, > Was this change intentional? No, I was committing from an unclean tree, unfortunately. Subversion makes it hard to shuffle around changes, and I messed up, sorry. :( -Dimitry --Apple-Mail=_803A1642-A6E2-4198-9E01-342DAE5B75DF Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.2 iF0EARECAB0WIQR6tGLSzjX8bUI5T82wXqMKLiCWowUCXLGo2QAKCRCwXqMKLiCW o45bAJ9DXJAsmpnLPYaKyCJmDubnct4ufwCgyFjYPuLpPwCIZUdgoCFVX0YvDOM= =JgVz -----END PGP SIGNATURE----- --Apple-Mail=_803A1642-A6E2-4198-9E01-342DAE5B75DF-- From owner-svn-src-all@freebsd.org Sat Apr 13 10:47:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0A5C81574DE9; Sat, 13 Apr 2019 10:47:49 +0000 (UTC) (envelope-from tuexen@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 93DFD77459; Sat, 13 Apr 2019 10:47:48 +0000 (UTC) (envelope-from tuexen@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 698E27D79; Sat, 13 Apr 2019 10:47:48 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3DAlmcN030642; Sat, 13 Apr 2019 10:47:48 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DAlmGP030641; Sat, 13 Apr 2019 10:47:48 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <201904131047.x3DAlmGP030641@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Sat, 13 Apr 2019 10:47:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346182 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 346182 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 93DFD77459 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 10:47:49 -0000 Author: tuexen Date: Sat Apr 13 10:47:47 2019 New Revision: 346182 URL: https://svnweb.freebsd.org/changeset/base/346182 Log: When sending IPv4 packets on a SOCK_RAW socket using the IP_HDRINCL option, ensure that the ip_hl field is valid. Furthermore, ensure that the complete IPv4 header is contained in the first mbuf. Finally, move the length checks before relying on them when accessing fields of the IPv4 header. Reported by: jtl@ Reviewed by: jtl@ MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D19181 Modified: head/sys/netinet/raw_ip.c Modified: head/sys/netinet/raw_ip.c ============================================================================== --- head/sys/netinet/raw_ip.c Sat Apr 13 09:06:36 2019 (r346181) +++ head/sys/netinet/raw_ip.c Sat Apr 13 10:47:47 2019 (r346182) @@ -453,7 +453,7 @@ rip_output(struct mbuf *m, struct socket *so, ...) u_long dst; int flags = ((so->so_options & SO_DONTROUTE) ? IP_ROUTETOIF : 0) | IP_ALLOWBROADCAST; - int cnt; + int cnt, hlen; u_char opttype, optlen, *cp; va_start(ap, so); @@ -509,33 +509,40 @@ rip_output(struct mbuf *m, struct socket *so, ...) m_freem(m); return(EMSGSIZE); } - INP_RLOCK(inp); ip = mtod(m, struct ip *); - error = prison_check_ip4(inp->inp_cred, &ip->ip_src); - if (error != 0) { - INP_RUNLOCK(inp); - m_freem(m); - return (error); + hlen = ip->ip_hl << 2; + if (m->m_len < hlen) { + m = m_pullup(m, hlen); + if (m == NULL) + return (EINVAL); + ip = mtod(m, struct ip *); } + INP_RLOCK(inp); /* * Don't allow both user specified and setsockopt options, * and don't allow packet length sizes that will crash. */ - if (((ip->ip_hl != (sizeof (*ip) >> 2)) && inp->inp_options) - || (ntohs(ip->ip_len) != m->m_pkthdr.len) - || (ntohs(ip->ip_len) < (ip->ip_hl << 2))) { + if ((hlen < sizeof (*ip)) + || ((hlen > sizeof (*ip)) && inp->inp_options) + || (ntohs(ip->ip_len) != m->m_pkthdr.len)) { INP_RUNLOCK(inp); m_freem(m); return (EINVAL); } + error = prison_check_ip4(inp->inp_cred, &ip->ip_src); + if (error != 0) { + INP_RUNLOCK(inp); + m_freem(m); + return (error); + } /* * Don't allow IP options which do not have the required * structure as specified in section 3.1 of RFC 791 on * pages 15-23. */ cp = (u_char *)(ip + 1); - cnt = (ip->ip_hl << 2) - sizeof (struct ip); + cnt = hlen - sizeof (struct ip); for (; cnt > 0; cnt -= optlen, cp += optlen) { opttype = cp[IPOPT_OPTVAL]; if (opttype == IPOPT_EOL) From owner-svn-src-all@freebsd.org Sat Apr 13 11:09:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BF9461575495; Sat, 13 Apr 2019 11:09:43 +0000 (UTC) (envelope-from dim@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 60B8077D74; Sat, 13 Apr 2019 11:09:43 +0000 (UTC) (envelope-from dim@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 3B9A080E2; Sat, 13 Apr 2019 11:09:43 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3DB9h1u040866; Sat, 13 Apr 2019 11:09:43 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DB9gdm040864; Sat, 13 Apr 2019 11:09:42 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201904131109.x3DB9gdm040864@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sat, 13 Apr 2019 11:09:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346183 - in stable/12: . share/mk X-SVN-Group: stable-12 X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in stable/12: . share/mk X-SVN-Commit-Revision: 346183 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 60B8077D74 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.958,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 11:09:44 -0000 Author: dim Date: Sat Apr 13 11:09:42 2019 New Revision: 346183 URL: https://svnweb.freebsd.org/changeset/base/346183 Log: Revert r344898 (by kib), now that clang 8 has been merged: Disable WITH_RETPOLINE on stable/12. It is known that clang 7 generates broken ifunc calls when retpoline is enabled. Since libc uses ifuncs, mark WITH_RETPOLINE as always broken and disabled. To be removed after clang 8 MFC. This is a direct commit to the branch. Reported by: many Tested by: Nikola Mihaylov Reviewed by: emaste Sponsored by: The FreeBSD Foundation Modified: stable/12/UPDATING stable/12/share/mk/src.opts.mk Modified: stable/12/UPDATING ============================================================================== --- stable/12/UPDATING Sat Apr 13 10:47:47 2019 (r346182) +++ stable/12/UPDATING Sat Apr 13 11:09:42 2019 (r346183) @@ -16,6 +16,11 @@ from older versions of FreeBSD, try WITHOUT_CLANG and the tip of head, and then rebuild without this option. The bootstrap process from older version of current across the gcc/clang cutover is a bit fragile. +20190413: + Now Clang 8 has been merged (see the 20190412 entry below), the ifunc + functionality needed for the RETPOLINE option should work properly + again. The RETPOLINE option has been removed from BROKEN_OPTIONS. + 20190412: Clang, llvm, lld, lldb, compiler-rt and libc++ have been upgraded to 8.0.0. Please see the 20141231 entry below for information about Modified: stable/12/share/mk/src.opts.mk ============================================================================== --- stable/12/share/mk/src.opts.mk Sat Apr 13 10:47:47 2019 (r346182) +++ stable/12/share/mk/src.opts.mk Sat Apr 13 11:09:42 2019 (r346183) @@ -369,9 +369,6 @@ BROKEN_OPTIONS+=LOADER_UBOOT BROKEN_OPTIONS+=LOADER_GELI LOADER_LUA .endif -# clang 7.0 -BROKEN_OPTIONS+=RETPOLINE - .if ${__T:Mmips64*} # profiling won't work on MIPS64 because there is only assembly for o32 BROKEN_OPTIONS+=PROFILE From owner-svn-src-all@freebsd.org Sat Apr 13 12:50:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4F0101577F74; Sat, 13 Apr 2019 12:50:48 +0000 (UTC) (envelope-from vmaffione@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 E810B82EEF; Sat, 13 Apr 2019 12:50:47 +0000 (UTC) (envelope-from vmaffione@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 C235E92E8; Sat, 13 Apr 2019 12:50:47 +0000 (UTC) (envelope-from vmaffione@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3DColO7095826; Sat, 13 Apr 2019 12:50:47 GMT (envelope-from vmaffione@FreeBSD.org) Received: (from vmaffione@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DColUk095825; Sat, 13 Apr 2019 12:50:47 GMT (envelope-from vmaffione@FreeBSD.org) Message-Id: <201904131250.x3DColUk095825@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: vmaffione set sender to vmaffione@FreeBSD.org using -f From: Vincenzo Maffione Date: Sat, 13 Apr 2019 12:50:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346184 - head/tests/sys/netmap X-SVN-Group: head X-SVN-Commit-Author: vmaffione X-SVN-Commit-Paths: head/tests/sys/netmap X-SVN-Commit-Revision: 346184 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E810B82EEF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 12:50:48 -0000 Author: vmaffione Date: Sat Apr 13 12:50:47 2019 New Revision: 346184 URL: https://svnweb.freebsd.org/changeset/base/346184 Log: netmap: add test cases for multiple host rings Extend the netmap unit tests with new test cases for the multiple-host-rings feature introduced by r345269. MFC after: 1 week Modified: head/tests/sys/netmap/ctrl-api-test.c Modified: head/tests/sys/netmap/ctrl-api-test.c ============================================================================== --- head/tests/sys/netmap/ctrl-api-test.c Sat Apr 13 11:09:42 2019 (r346183) +++ head/tests/sys/netmap/ctrl-api-test.c Sat Apr 13 12:50:47 2019 (r346184) @@ -50,20 +50,16 @@ #ifdef __FreeBSD__ #include "freebsd_test_suite/macros.h" -#endif - -#ifdef __linux__ -#include -#else - static int eventfd(int x __unused, int y __unused) { errno = ENODEV; return -1; } -#endif /* __linux__ */ +#else /* __linux__ */ +#include +#endif static int exec_command(int argc, const char *const argv[]) @@ -144,6 +140,8 @@ struct TestContext { uint32_t nr_rx_slots; /* slots in rx rings */ uint16_t nr_tx_rings; /* number of tx rings */ uint16_t nr_rx_rings; /* number of rx rings */ + uint16_t nr_host_tx_rings; /* number of host tx rings */ + uint16_t nr_host_rx_rings; /* number of host rx rings */ uint16_t nr_mem_id; /* id of the memory allocator */ uint16_t nr_ringid; /* ring(s) we care about */ uint32_t nr_mode; /* specify NR_REG_* modes */ @@ -242,6 +240,8 @@ port_register(struct TestContext *ctx) req.nr_tx_slots = ctx->nr_tx_slots; req.nr_rx_slots = ctx->nr_rx_slots; req.nr_tx_rings = ctx->nr_tx_rings; + req.nr_host_tx_rings = ctx->nr_host_tx_rings; + req.nr_host_rx_rings = ctx->nr_host_rx_rings; req.nr_rx_rings = ctx->nr_rx_rings; req.nr_extra_bufs = ctx->nr_extra_bufs; ret = ioctl(ctx->fd, NIOCCTRL, &hdr); @@ -255,23 +255,29 @@ port_register(struct TestContext *ctx) printf("nr_rx_slots %u\n", req.nr_rx_slots); printf("nr_tx_rings %u\n", req.nr_tx_rings); printf("nr_rx_rings %u\n", req.nr_rx_rings); + printf("nr_host_tx_rings %u\n", req.nr_host_tx_rings); + printf("nr_host_rx_rings %u\n", req.nr_host_rx_rings); printf("nr_mem_id %u\n", req.nr_mem_id); printf("nr_extra_bufs %u\n", req.nr_extra_bufs); success = req.nr_memsize && (ctx->nr_mode == req.nr_mode) && - (ctx->nr_ringid == req.nr_ringid) && - (ctx->nr_flags == req.nr_flags) && - ((!ctx->nr_tx_slots && req.nr_tx_slots) || - (ctx->nr_tx_slots == req.nr_tx_slots)) && - ((!ctx->nr_rx_slots && req.nr_rx_slots) || - (ctx->nr_rx_slots == req.nr_rx_slots)) && - ((!ctx->nr_tx_rings && req.nr_tx_rings) || - (ctx->nr_tx_rings == req.nr_tx_rings)) && - ((!ctx->nr_rx_rings && req.nr_rx_rings) || - (ctx->nr_rx_rings == req.nr_rx_rings)) && - ((!ctx->nr_mem_id && req.nr_mem_id) || - (ctx->nr_mem_id == req.nr_mem_id)) && - (ctx->nr_extra_bufs == req.nr_extra_bufs); + (ctx->nr_ringid == req.nr_ringid) && + (ctx->nr_flags == req.nr_flags) && + ((!ctx->nr_tx_slots && req.nr_tx_slots) || + (ctx->nr_tx_slots == req.nr_tx_slots)) && + ((!ctx->nr_rx_slots && req.nr_rx_slots) || + (ctx->nr_rx_slots == req.nr_rx_slots)) && + ((!ctx->nr_tx_rings && req.nr_tx_rings) || + (ctx->nr_tx_rings == req.nr_tx_rings)) && + ((!ctx->nr_rx_rings && req.nr_rx_rings) || + (ctx->nr_rx_rings == req.nr_rx_rings)) && + ((!ctx->nr_host_tx_rings && req.nr_host_tx_rings) || + (ctx->nr_host_tx_rings == req.nr_host_tx_rings)) && + ((!ctx->nr_host_rx_rings && req.nr_host_rx_rings) || + (ctx->nr_host_rx_rings == req.nr_host_rx_rings)) && + ((!ctx->nr_mem_id && req.nr_mem_id) || + (ctx->nr_mem_id == req.nr_mem_id)) && + (ctx->nr_extra_bufs == req.nr_extra_bufs); if (!success) { return -1; } @@ -281,6 +287,8 @@ port_register(struct TestContext *ctx) ctx->nr_rx_slots = req.nr_rx_slots; ctx->nr_tx_rings = req.nr_tx_rings; ctx->nr_rx_rings = req.nr_rx_rings; + ctx->nr_host_tx_rings = req.nr_host_tx_rings; + ctx->nr_host_rx_rings = req.nr_host_rx_rings; ctx->nr_mem_id = req.nr_mem_id; ctx->nr_extra_bufs = req.nr_extra_bufs; @@ -448,7 +456,7 @@ port_register_hwall_host(struct TestContext *ctx) } static int -port_register_host(struct TestContext *ctx) +port_register_hostall(struct TestContext *ctx) { ctx->nr_mode = NR_REG_SW; return port_register(ctx); @@ -462,7 +470,7 @@ port_register_hwall(struct TestContext *ctx) } static int -port_register_single_ring_couple(struct TestContext *ctx) +port_register_single_hw_pair(struct TestContext *ctx) { ctx->nr_mode = NR_REG_ONE_NIC; ctx->nr_ringid = 0; @@ -470,6 +478,25 @@ port_register_single_ring_couple(struct TestContext *c } static int +port_register_single_host_pair(struct TestContext *ctx) +{ + ctx->nr_mode = NR_REG_ONE_SW; + ctx->nr_host_tx_rings = 2; + ctx->nr_host_rx_rings = 2; + ctx->nr_ringid = 1; + return port_register(ctx); +} + +static int +port_register_hostall_many(struct TestContext *ctx) +{ + ctx->nr_mode = NR_REG_SW; + ctx->nr_host_tx_rings = 5; + ctx->nr_host_rx_rings = 4; + return port_register(ctx); +} + +static int port_register_hwall_tx(struct TestContext *ctx) { ctx->nr_mode = NR_REG_ALL_NIC; @@ -1701,8 +1728,10 @@ static struct mytest tests[] = { decltest(port_info_get), decltest(port_register_hwall_host), decltest(port_register_hwall), - decltest(port_register_host), - decltest(port_register_single_ring_couple), + decltest(port_register_hostall), + decltest(port_register_single_hw_pair), + decltest(port_register_single_host_pair), + decltest(port_register_hostall_many), decltest(vale_attach_detach), decltest(vale_attach_detach_host_rings), decltest(vale_ephemeral_port_hdr_manipulation), From owner-svn-src-all@freebsd.org Sat Apr 13 13:31:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4FC4C1578945; Sat, 13 Apr 2019 13:31:08 +0000 (UTC) (envelope-from mckusick@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 E0DB583FD8; Sat, 13 Apr 2019 13:31:07 +0000 (UTC) (envelope-from mckusick@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 BDE0098A2; Sat, 13 Apr 2019 13:31:07 +0000 (UTC) (envelope-from mckusick@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3DDV7nE014478; Sat, 13 Apr 2019 13:31:07 GMT (envelope-from mckusick@FreeBSD.org) Received: (from mckusick@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DDV7w1014475; Sat, 13 Apr 2019 13:31:07 GMT (envelope-from mckusick@FreeBSD.org) Message-Id: <201904131331.x3DDV7w1014475@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mckusick set sender to mckusick@FreeBSD.org using -f From: Kirk McKusick Date: Sat, 13 Apr 2019 13:31:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346185 - head/sbin/fsck_ffs X-SVN-Group: head X-SVN-Commit-Author: mckusick X-SVN-Commit-Paths: head/sbin/fsck_ffs X-SVN-Commit-Revision: 346185 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E0DB583FD8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.94)[-0.943,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 13:31:08 -0000 Author: mckusick Date: Sat Apr 13 13:31:06 2019 New Revision: 346185 URL: https://svnweb.freebsd.org/changeset/base/346185 Log: Followup to -r344552 in which fsck_ffs checks for a size past the last allocated block of the file and if that is found, shortens the file to reference the last allocated block thus avoiding having it reference a hole at its end. This update corrects an error where fsck_ffs miscalculated the last logical block of the file when the file contained a large hole. Reported by: Jamie Landeg-Jones Tested by: Peter Holm MFC after: 2 weeks Sponsored by: Netflix Modified: head/sbin/fsck_ffs/fsck.h head/sbin/fsck_ffs/inode.c head/sbin/fsck_ffs/pass1.c Modified: head/sbin/fsck_ffs/fsck.h ============================================================================== --- head/sbin/fsck_ffs/fsck.h Sat Apr 13 12:50:47 2019 (r346184) +++ head/sbin/fsck_ffs/fsck.h Sat Apr 13 13:31:06 2019 (r346185) @@ -231,6 +231,7 @@ struct inodesc { ino_t id_parent; /* for DATA nodes, their parent */ ufs_lbn_t id_lbn; /* logical block number of current block */ ufs2_daddr_t id_blkno; /* current block number being examined */ + int id_level; /* level of indirection of this block */ int id_numfrags; /* number of frags contained in block */ ufs_lbn_t id_lballoc; /* pass1: last LBN that is allocated */ off_t id_filesize; /* for DATA nodes, the size of the directory */ Modified: head/sbin/fsck_ffs/inode.c ============================================================================== --- head/sbin/fsck_ffs/inode.c Sat Apr 13 12:50:47 2019 (r346184) +++ head/sbin/fsck_ffs/inode.c Sat Apr 13 13:31:06 2019 (r346185) @@ -55,7 +55,7 @@ __FBSDID("$FreeBSD$"); static ino_t startinum; -static int iblock(struct inodesc *, long ilevel, off_t isize, int type); +static int iblock(struct inodesc *, off_t isize, int type); int ckinode(union dinode *dp, struct inodesc *idesc) @@ -70,6 +70,8 @@ ckinode(union dinode *dp, struct inodesc *idesc) if (idesc->id_fix != IGNORE) idesc->id_fix = DONTKNOW; idesc->id_lbn = -1; + idesc->id_lballoc = -1; + idesc->id_level = 0; idesc->id_entryno = 0; idesc->id_filesize = DIP(dp, di_size); mode = DIP(dp, di_mode) & IFMT; @@ -122,9 +124,10 @@ ckinode(union dinode *dp, struct inodesc *idesc) sizepb = sblock.fs_bsize; for (i = 0; i < UFS_NIADDR; i++) { sizepb *= NINDIR(&sblock); + idesc->id_level = i + 1; if (DIP(&dino, di_ib[i])) { idesc->id_blkno = DIP(&dino, di_ib[i]); - ret = iblock(idesc, i + 1, remsize, BT_LEVEL1 + i); + ret = iblock(idesc, remsize, BT_LEVEL1 + i); if (ret & STOP) return (ret); } else if (remsize > 0) { @@ -154,7 +157,7 @@ ckinode(union dinode *dp, struct inodesc *idesc) } static int -iblock(struct inodesc *idesc, long ilevel, off_t isize, int type) +iblock(struct inodesc *idesc, off_t isize, int type) { struct bufarea *bp; int i, n, (*func)(struct inodesc *), nif; @@ -172,8 +175,8 @@ iblock(struct inodesc *idesc, long ilevel, off_t isize if (chkrange(idesc->id_blkno, idesc->id_numfrags)) return (SKIP); bp = getdatablk(idesc->id_blkno, sblock.fs_bsize, type); - ilevel--; - for (sizepb = sblock.fs_bsize, i = 0; i < ilevel; i++) + idesc->id_level--; + for (sizepb = sblock.fs_bsize, i = 0; i < idesc->id_level; i++) sizepb *= NINDIR(&sblock); if (howmany(isize, sizepb) > NINDIR(&sblock)) nif = NINDIR(&sblock); @@ -195,19 +198,21 @@ iblock(struct inodesc *idesc, long ilevel, off_t isize flush(fswritefd, bp); } for (i = 0; i < nif; i++) { - if (ilevel == 0) - idesc->id_lbn++; if (IBLK(bp, i)) { idesc->id_blkno = IBLK(bp, i); - if (ilevel == 0) + if (idesc->id_level == 0) { + idesc->id_lbn++; n = (*func)(idesc); - else - n = iblock(idesc, ilevel, isize, type); + } else { + n = iblock(idesc, isize, type); + idesc->id_level++; + } if (n & STOP) { bp->b_flags &= ~B_INUSE; return (n); } } else { + idesc->id_lbn += sizepb / sblock.fs_bsize; if (idesc->id_type == DATA && isize > 0) { /* An empty block in a directory XXX */ getpathname(pathbuf, idesc->id_number, Modified: head/sbin/fsck_ffs/pass1.c ============================================================================== --- head/sbin/fsck_ffs/pass1.c Sat Apr 13 12:50:47 2019 (r346184) +++ head/sbin/fsck_ffs/pass1.c Sat Apr 13 13:31:06 2019 (r346185) @@ -378,7 +378,6 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r idesc->id_type = SNAP; else idesc->id_type = ADDR; - idesc->id_lballoc = -1; (void)ckinode(dp, idesc); if (sblock.fs_magic == FS_UFS2_MAGIC && dp->dp2.di_extsize > 0) { idesc->id_type = ADDR; @@ -565,7 +564,7 @@ pass1check(struct inodesc *idesc) */ idesc->id_entryno++; } - if (idesc->id_lballoc == -1 || idesc->id_lballoc < idesc->id_lbn) + if (idesc->id_level == 0 && idesc->id_lballoc < idesc->id_lbn) idesc->id_lballoc = idesc->id_lbn; return (res); } From owner-svn-src-all@freebsd.org Sat Apr 13 13:59:02 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A2D301579695; Sat, 13 Apr 2019 13:59:02 +0000 (UTC) (envelope-from asomers@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 3E1A484DCE; Sat, 13 Apr 2019 13:59:02 +0000 (UTC) (envelope-from asomers@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 089949D8F; Sat, 13 Apr 2019 13:59:02 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3DDx1Z6030175; Sat, 13 Apr 2019 13:59:01 GMT (envelope-from asomers@FreeBSD.org) Received: (from asomers@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DDx1dR030173; Sat, 13 Apr 2019 13:59:01 GMT (envelope-from asomers@FreeBSD.org) Message-Id: <201904131359.x3DDx1dR030173@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: asomers set sender to asomers@FreeBSD.org using -f From: Alan Somers Date: Sat, 13 Apr 2019 13:59:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346186 - head/share/man/man5 X-SVN-Group: head X-SVN-Commit-Author: asomers X-SVN-Commit-Paths: head/share/man/man5 X-SVN-Commit-Revision: 346186 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3E1A484DCE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.94)[-0.943,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 13:59:02 -0000 Author: asomers Date: Sat Apr 13 13:59:01 2019 New Revision: 346186 URL: https://svnweb.freebsd.org/changeset/base/346186 Log: fusefs: add a fusefs(5) man page PR: 233393 Reported by: tech-lists@zyxst.net Reviewed by: cem MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19651 Added: head/share/man/man5/fusefs.5 (contents, props changed) Modified: head/share/man/man5/Makefile Modified: head/share/man/man5/Makefile ============================================================================== --- head/share/man/man5/Makefile Sat Apr 13 13:31:06 2019 (r346185) +++ head/share/man/man5/Makefile Sat Apr 13 13:59:01 2019 (r346186) @@ -27,6 +27,7 @@ MAN= acct.5 \ forward.5 \ fs.5 \ fstab.5 \ + fusefs.5 \ group.5 \ hosts.5 \ hosts.equiv.5 \ Added: head/share/man/man5/fusefs.5 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/share/man/man5/fusefs.5 Sat Apr 13 13:59:01 2019 (r346186) @@ -0,0 +1,147 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD +.\" +.\" Copyright (c) 2019 The FreeBSD Foundation +.\" +.\" This software was developed by BFF Storage Systems, LLC under sponsorship +.\" from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.Dd April 13, 2019 +.Dt FUSEFS 5 +.Os +.Sh NAME +.Nm fusefs +.Nd "File system in USErspace" +.Sh SYNOPSIS +To link into the kernel: +.Bd -ragged -offset indent +.Cd "options FUSEFS" +.Ed +.Pp +To load as a loadable kernel module: +.Pp +.Dl "kldload fusefs" +.Sh DESCRIPTION +The +.Nm +driver implements a file system that is serviced by a userspace program. +.Pp +There are many uses for +.Nm . +Userspace daemons can access libraries or programming languages that cannot run +in kernel-mode, for example. +.Nm +is also useful for developing and debugging file systems, because a crash of +the daemon will not take down the entire operating system. +Finally, the +.Nm +API is portable. +Many daemons can run on multiple operating systems with minimal modifications. +.Sh SYSCTL VARIABLES +The following variables are available as both +.Xr sysctl 8 +variables and +.Xr loader 8 +tunables: +.Bl -tag -width indent +.It Va vfs.fusefs.kernelabi_major +Major version of the FUSE kernel ABI supported by this driver. +.It Va vfs.fusefs.kernelabi_minor +Minor version of the FUSE kernel ABI supported by this driver. +.It Va vfs.fusefs.data_cache_mode +Controls how +.Nm +will cache file data. +A value of 0 will disable caching entirely. +Every data access will be forwarded to the daemon. +A value of 1 will select write-through caching. +Reads will be cached in the VFS layer as usual. +Writes will be immediately forwarded to the daemon, and also added to the cache. +A value of 2 will select write-back caching. +Reads and writes will both be cached, and writes will occasionally be flushed +to the daemon by the page daemon. +Write-back caching is usually unsafe, especially for FUSE file systems that +require network access. +.It Va vfs.fusefs.lookup_cache_enable +Controls whether +.Nm +will cache lookup responses from the file system. +FUSE file systems indicate whether lookup responses should be cacheable, but +it may be useful to globally disable caching them if a file system is +misbehaving. +.\" Undocumented sysctls +.\" ==================== +.\" Counters: I intend to rename to vfs.fusefs.stats.* for clarity +.\" vfs.fusefs.lookup_cache_{hits, misses} +.\" vfs.fusefs.filehandle_count +.\" vfs.fusefs.ticker_count +.\" vfs.fusefs.node_count +.\" +.\" vfs.fusefs.version - useless since the driver moved in-tree +.\" vfs.fusefs.reclaim_revoked: I don't understand it well-enough +.\" vfs.fusefs.sync_unmount: dead code +.\" vfs.fusefs.enforce_dev_perms: I don't understand it well enough. +.\" vfs.fusefs.init_backgrounded: dead code +.\" vfs.fusefs.iov_credit: I don't understand it well enough +.\" vfs.fusefs.iov_permanent_bufsize: I don't understand it well enough +.\" vfs.fusefs.fix_broken_io: I don't understand it well enough +.\" vfs.fusefs.sync_resize: useless and should be removed +.\" vfs.fusefs.refresh_size: probably useless? +.\" vfs.fusefs.mmap_enable: why is this optional? +.\" vfs.fusefs.data_cache_invalidate: what is this needed for? +.Sh SEE ALSO +.Xr mount_fusefs 8 +.Sh HISTORY +The +.Nm fuse +driver was written as the part of the +.Fx +implementation of the FUSE userspace file system framework (see +.Xr https://github.com/libfuse/libfuse ) +and first appeared in the +.Pa sysutils/fusefs-kmod +port, supporting +.Fx 6.0 . +It was added to the base system in +.Fx 10.0 , +and renamed to +.Nm +for +.Fx 12.1 . +.Sh AUTHORS +.An -nosplit +The +.Nm fuse +driver was originally written by +.An Csaba Henk +as a Google Summer of Code project in 2005. +It was further developed by +.An Ilya Putsikau +during Google Summer of Code 2011, and that version was integrated into the +base system by +.An Attilio Rao Aq Mt attilio@FreeBSD.org . +.Pp +This manual page was written by +.An Alan Somers Aq Mt asomers@FreeBSD.org . From owner-svn-src-all@freebsd.org Sat Apr 13 16:51:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AEBD3157D669; Sat, 13 Apr 2019 16:51:49 +0000 (UTC) (envelope-from cem@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 4C9FB89F56; Sat, 13 Apr 2019 16:51:49 +0000 (UTC) (envelope-from cem@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 27B15BE01; Sat, 13 Apr 2019 16:51:49 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3DGpnEa021815; Sat, 13 Apr 2019 16:51:49 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DGpmhM021813; Sat, 13 Apr 2019 16:51:48 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201904131651.x3DGpmhM021813@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Sat, 13 Apr 2019 16:51:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346187 - in head/usr.bin/hexdump: . tests X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: in head/usr.bin/hexdump: . tests X-SVN-Commit-Revision: 346187 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4C9FB89F56 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.949,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 16:51:49 -0000 Author: cem Date: Sat Apr 13 16:51:48 2019 New Revision: 346187 URL: https://svnweb.freebsd.org/changeset/base/346187 Log: hexdump(1): Exit gracefully on format strings missing conversion PR: 237263 Submitted by: Bojan Petrovic Modified: head/usr.bin/hexdump/hexdump.h head/usr.bin/hexdump/parse.c head/usr.bin/hexdump/tests/hexdump_test.sh Modified: head/usr.bin/hexdump/hexdump.h ============================================================================== --- head/usr.bin/hexdump/hexdump.h Sat Apr 13 13:59:01 2019 (r346186) +++ head/usr.bin/hexdump/hexdump.h Sat Apr 13 16:51:48 2019 (r346187) @@ -88,6 +88,7 @@ void addfile(const char *); void badcnt(const char *); void badconv(const char *); void badfmt(const char *); +void badnoconv(void); void badsfmt(void); void bpad(PR *); void conv_c(PR *, u_char *, size_t); Modified: head/usr.bin/hexdump/parse.c ============================================================================== --- head/usr.bin/hexdump/parse.c Sat Apr 13 13:59:01 2019 (r346186) +++ head/usr.bin/hexdump/parse.c Sat Apr 13 16:51:48 2019 (r346187) @@ -169,7 +169,10 @@ size(FS *fs) * skip any special chars -- save precision in * case it's a %s format. */ - while (strchr(spec + 1, *++fmt)); + while (*++fmt != 0 && strchr(spec + 1, *fmt) != NULL) + ; + if (*fmt == 0) + badnoconv(); if (*fmt == '.' && isdigit(*++fmt)) { prec = atoi(fmt); while (isdigit(*++fmt)); @@ -241,10 +244,16 @@ rewrite(FS *fs) if (fu->bcnt) { sokay = USEBCNT; /* Skip to conversion character. */ - for (++p1; strchr(spec, *p1); ++p1); + while (*++p1 != 0 && strchr(spec, *p1) != NULL) + ; + if (*p1 == 0) + badnoconv(); } else { /* Skip any special chars, field width. */ - while (strchr(spec + 1, *++p1)); + while (*++p1 != 0 && strchr(spec + 1, *p1) != NULL) + ; + if (*p1 == 0) + badnoconv(); if (*p1 == '.' && isdigit(*++p1)) { sokay = USEPREC; prec = atoi(p1); @@ -511,4 +520,10 @@ void badconv(const char *ch) { errx(1, "%%%s: bad conversion character", ch); +} + +void +badnoconv(void) +{ + errx(1, "missing conversion character"); } Modified: head/usr.bin/hexdump/tests/hexdump_test.sh ============================================================================== --- head/usr.bin/hexdump/tests/hexdump_test.sh Sat Apr 13 13:59:01 2019 (r346186) +++ head/usr.bin/hexdump/tests/hexdump_test.sh Sat Apr 13 16:51:48 2019 (r346187) @@ -176,6 +176,19 @@ x_flag_body() hexdump -x "$(atf_get_srcdir)/d_hexdump_c.in" } +atf_test_case no_conv_err +no_conv_err() +{ + atf_set "descr" "Verify missing conversion char error handling" +} +no_conv_err_body() +{ + atf_check -s exit:1 -e ignore \ + hexdump -e '"%"' + atf_check -s exit:1 -e ignore \ + hexdump -e '4/2 "%"' +} + atf_init_test_cases() { atf_add_test_case b_flag @@ -188,4 +201,5 @@ atf_init_test_cases() atf_add_test_case s_flag atf_add_test_case v_flag atf_add_test_case x_flag + atf_add_test_case no_conv_err } From owner-svn-src-all@freebsd.org Sat Apr 13 19:23:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7BC9115810F7; Sat, 13 Apr 2019 19:23:12 +0000 (UTC) (envelope-from np@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 2AECE8F1B0; Sat, 13 Apr 2019 19:23:12 +0000 (UTC) (envelope-from np@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 064B7D844; Sat, 13 Apr 2019 19:23:12 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3DJNCqi004821; Sat, 13 Apr 2019 19:23:12 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DJNBVr004818; Sat, 13 Apr 2019 19:23:11 GMT (envelope-from np@FreeBSD.org) Message-Id: <201904131923.x3DJNBVr004818@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Sat, 13 Apr 2019 19:23:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r346188 - in stable/12/sys/dev/cxgbe: . common X-SVN-Group: stable-12 X-SVN-Commit-Author: np X-SVN-Commit-Paths: in stable/12/sys/dev/cxgbe: . common X-SVN-Commit-Revision: 346188 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2AECE8F1B0 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 19:23:13 -0000 Author: np Date: Sat Apr 13 19:23:11 2019 New Revision: 346188 URL: https://svnweb.freebsd.org/changeset/base/346188 Log: MFC r343666, r343861-r343862, r343923, r343968, r345660, and r345810. r343666: cxgbe(4): Improved error reporting and diagnostics. "slow" interrupt handler: - Expand the list of INT_CAUSE registers known to the driver. - Add decode information for many more bits but decouple it from the rest of intr_info so that it is entirely optional. - Call t4_fatal_err exactly once, and from the top level PL intr handler. t4_fatal_err: - Use t4_shutdown_adapter from the common code to stop the adapter. - Stop servicing slow interrupts after the first fatal one. Driver/firmware interaction: - CH_DUMP_MBOX: note whether the mailbox being dumped is a command or a reply or something else. - Log the raw value of pcie_fw for some errors. - Use correct log levels (debug vs. error). Sponsored by: Chelsio Communications r343861: cxgbe(4): Auto-dump the device log on a mailbox timeout or when the firmware reports an error in pcie_fw. Sponsored by: Chelsio Communications r343862: cxgbe(4): Auto-dump the CIM block's logic analyzer on a TIMER0 interrupt. Sponsored by: Chelsio Communications r343923: cxgbe(4): Delay the panic due to a fatal error by 30s. This lets information logged by the interrupt handler reach the system log before the system goes down. r343968: cxgbe(4): Ignore unused interrupts. Sponsored by: Chelsio Communications r345660: cxgbe(4): Count and clear interrupts generated at the software's request. An interrupt can be requested by setting the F_SWINT bit in PL_PF_CTL. Sponsored by: Chelsio Communications r345810: cxgbe(4): Add a flag to indicate that bits in interrupt cause but not in interrupt enable are not fatal. The firmware sets up all the interrupt enables based on run time configuration, which means the information in the enables is more accurate than what's compiled into the driver. This change also allows the fatal bits to be updated without any changes in the driver in some cases. Sponsored by: Chelsio Communications Modified: stable/12/sys/dev/cxgbe/adapter.h stable/12/sys/dev/cxgbe/common/common.h stable/12/sys/dev/cxgbe/common/t4_hw.c stable/12/sys/dev/cxgbe/t4_main.c stable/12/sys/dev/cxgbe/t4_sge.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/cxgbe/adapter.h ============================================================================== --- stable/12/sys/dev/cxgbe/adapter.h Sat Apr 13 16:51:48 2019 (r346187) +++ stable/12/sys/dev/cxgbe/adapter.h Sat Apr 13 19:23:11 2019 (r346188) @@ -155,7 +155,7 @@ enum { CHK_MBOX_ACCESS = (1 << 2), MASTER_PF = (1 << 3), ADAP_SYSCTL_CTX = (1 << 4), - /* TOM_INIT_DONE= (1 << 5), No longer used */ + ADAP_ERR = (1 << 5), BUF_PACKING_OK = (1 << 6), IS_VF = (1 << 7), @@ -175,6 +175,7 @@ enum { DF_LOAD_FW_ANYTIME = (1 << 1), /* Allow LOAD_FW after init */ DF_DISABLE_TCB_CACHE = (1 << 2), /* Disable TCB cache (T6+) */ DF_DISABLE_CFG_RETRY = (1 << 3), /* Disable fallback config */ + DF_VERBOSE_SLOWINTR = (1 << 4), /* Chatty slow intr handler */ }; #define IS_DOOMED(vi) ((vi)->flags & DOOMED) @@ -893,6 +894,8 @@ struct adapter { const char *last_op; const void *last_op_thr; int last_op_flags; + + int swintr; }; #define ADAPTER_LOCK(sc) mtx_lock(&(sc)->sc_lock) @@ -933,24 +936,6 @@ struct adapter { #define TXQ_LOCK_ASSERT_OWNED(txq) EQ_LOCK_ASSERT_OWNED(&(txq)->eq) #define TXQ_LOCK_ASSERT_NOTOWNED(txq) EQ_LOCK_ASSERT_NOTOWNED(&(txq)->eq) -#define CH_DUMP_MBOX(sc, mbox, data_reg) \ - do { \ - if (sc->debug_flags & DF_DUMP_MBOX) { \ - log(LOG_NOTICE, \ - "%s mbox %u: %016llx %016llx %016llx %016llx " \ - "%016llx %016llx %016llx %016llx\n", \ - device_get_nameunit(sc->dev), mbox, \ - (unsigned long long)t4_read_reg64(sc, data_reg), \ - (unsigned long long)t4_read_reg64(sc, data_reg + 8), \ - (unsigned long long)t4_read_reg64(sc, data_reg + 16), \ - (unsigned long long)t4_read_reg64(sc, data_reg + 24), \ - (unsigned long long)t4_read_reg64(sc, data_reg + 32), \ - (unsigned long long)t4_read_reg64(sc, data_reg + 40), \ - (unsigned long long)t4_read_reg64(sc, data_reg + 48), \ - (unsigned long long)t4_read_reg64(sc, data_reg + 56)); \ - } \ - } while (0) - #define for_each_txq(vi, iter, q) \ for (q = &vi->pi->adapter->sge.txq[vi->first_txq], iter = 0; \ iter < vi->ntxq; ++iter, ++q) @@ -1106,6 +1091,38 @@ t4_use_ldst(struct adapter *sc) #endif } +static inline void +CH_DUMP_MBOX(struct adapter *sc, int mbox, const int reg, + const char *msg, const __be64 *const p, const bool err) +{ + + if (!(sc->debug_flags & DF_DUMP_MBOX) && !err) + return; + if (p != NULL) { + log(err ? LOG_ERR : LOG_DEBUG, + "%s: mbox %u %s %016llx %016llx %016llx %016llx " + "%016llx %016llx %016llx %016llx\n", + device_get_nameunit(sc->dev), mbox, msg, + (long long)be64_to_cpu(p[0]), (long long)be64_to_cpu(p[1]), + (long long)be64_to_cpu(p[2]), (long long)be64_to_cpu(p[3]), + (long long)be64_to_cpu(p[4]), (long long)be64_to_cpu(p[5]), + (long long)be64_to_cpu(p[6]), (long long)be64_to_cpu(p[7])); + } else { + log(err ? LOG_ERR : LOG_DEBUG, + "%s: mbox %u %s %016llx %016llx %016llx %016llx " + "%016llx %016llx %016llx %016llx\n", + device_get_nameunit(sc->dev), mbox, msg, + (long long)t4_read_reg64(sc, reg), + (long long)t4_read_reg64(sc, reg + 8), + (long long)t4_read_reg64(sc, reg + 16), + (long long)t4_read_reg64(sc, reg + 24), + (long long)t4_read_reg64(sc, reg + 32), + (long long)t4_read_reg64(sc, reg + 40), + (long long)t4_read_reg64(sc, reg + 48), + (long long)t4_read_reg64(sc, reg + 56)); + } +} + /* t4_main.c */ extern int t4_ntxq; extern int t4_nrxq; @@ -1150,6 +1167,8 @@ void free_atid(struct adapter *, int); void release_tid(struct adapter *, int, struct sge_wrq *); int cxgbe_media_change(struct ifnet *); void cxgbe_media_status(struct ifnet *, struct ifmediareq *); +bool t4_os_dump_cimla(struct adapter *, int, bool); +void t4_os_dump_devlog(struct adapter *); #ifdef DEV_NETMAP /* t4_netmap.c */ Modified: stable/12/sys/dev/cxgbe/common/common.h ============================================================================== --- stable/12/sys/dev/cxgbe/common/common.h Sat Apr 13 16:51:48 2019 (r346187) +++ stable/12/sys/dev/cxgbe/common/common.h Sat Apr 13 19:23:11 2019 (r346188) @@ -34,10 +34,6 @@ #include "t4_hw.h" -#define GLBL_INTR_MASK (F_CIM | F_MPS | F_PL | F_PCIE | F_MC0 | F_EDC0 | \ - F_EDC1 | F_LE | F_TP | F_MA | F_PM_TX | F_PM_RX | F_ULP_RX | \ - F_CPL_SWITCH | F_SGE | F_ULP_TX) - enum { MAX_NPORTS = 4, /* max # of ports */ SERNUM_LEN = 24, /* Serial # length */ @@ -582,7 +578,7 @@ struct fw_filter_wr; void t4_intr_enable(struct adapter *adapter); void t4_intr_disable(struct adapter *adapter); void t4_intr_clear(struct adapter *adapter); -int t4_slow_intr_handler(struct adapter *adapter); +int t4_slow_intr_handler(struct adapter *adapter, bool verbose); int t4_hash_mac_addr(const u8 *addr); int t4_link_l1cfg(struct adapter *adap, unsigned int mbox, unsigned int port, @@ -622,9 +618,7 @@ int t4_init_sge_params(struct adapter *adapter); int t4_init_tp_params(struct adapter *adap, bool sleep_ok); int t4_filter_field_shift(const struct adapter *adap, int filter_sel); int t4_port_init(struct adapter *adap, int mbox, int pf, int vf, int port_id); -void t4_fatal_err(struct adapter *adapter); -void t4_db_full(struct adapter *adapter); -void t4_db_dropped(struct adapter *adapter); +void t4_fatal_err(struct adapter *adapter, bool fw_error); int t4_set_trace_filter(struct adapter *adapter, const struct trace_params *tp, int filter_index, int enable); void t4_get_trace_filter(struct adapter *adapter, struct trace_params *tp, Modified: stable/12/sys/dev/cxgbe/common/t4_hw.c ============================================================================== --- stable/12/sys/dev/cxgbe/common/t4_hw.c Sat Apr 13 16:51:48 2019 (r346187) +++ stable/12/sys/dev/cxgbe/common/t4_hw.c Sat Apr 13 19:23:11 2019 (r346188) @@ -212,9 +212,11 @@ static void t4_report_fw_error(struct adapter *adap) pcie_fw = t4_read_reg(adap, A_PCIE_FW); if (pcie_fw & F_PCIE_FW_ERR) { - CH_ERR(adap, "Firmware reports adapter error: %s\n", - reason[G_PCIE_FW_EVAL(pcie_fw)]); adap->flags &= ~FW_OK; + CH_ERR(adap, "firmware reports adapter error: %s (0x%08x)\n", + reason[G_PCIE_FW_EVAL(pcie_fw)], pcie_fw); + if (pcie_fw != 0xffffffff) + t4_os_dump_devlog(adap); } } @@ -340,7 +342,6 @@ int t4_wr_mbox_meat_timeout(struct adapter *adap, int u32 v; u64 res; int i, ms, delay_idx, ret, next_tx_check; - const __be64 *p = cmd; u32 data_reg = PF_REG(mbox, A_CIM_PF_MAILBOX_DATA); u32 ctl_reg = PF_REG(mbox, A_CIM_PF_MAILBOX_CTRL); u32 ctl; @@ -351,7 +352,7 @@ int t4_wr_mbox_meat_timeout(struct adapter *adap, int if (adap->flags & CHK_MBOX_ACCESS) ASSERT_SYNCHRONIZED_OP(adap); - if ((size & 15) || size > MBOX_LEN) + if (size <= 0 || (size & 15) || size > MBOX_LEN) return -EINVAL; if (adap->flags & IS_VF) { @@ -381,8 +382,7 @@ int t4_wr_mbox_meat_timeout(struct adapter *adap, int } /* - * If we were unable to gain access, dequeue ourselves from the - * mailbox atomic access list and report the error to our caller. + * If we were unable to gain access, report the error to our caller. */ if (v != X_MBOWNER_PL) { t4_report_fw_error(adap); @@ -398,23 +398,17 @@ int t4_wr_mbox_meat_timeout(struct adapter *adap, int * presaged the firmware crashing ... */ if (ctl & F_MBMSGVALID) { - CH_ERR(adap, "found VALID command in mbox %u: %016llx %016llx " - "%016llx %016llx %016llx %016llx %016llx %016llx\n", - mbox, (unsigned long long)t4_read_reg64(adap, data_reg), - (unsigned long long)t4_read_reg64(adap, data_reg + 8), - (unsigned long long)t4_read_reg64(adap, data_reg + 16), - (unsigned long long)t4_read_reg64(adap, data_reg + 24), - (unsigned long long)t4_read_reg64(adap, data_reg + 32), - (unsigned long long)t4_read_reg64(adap, data_reg + 40), - (unsigned long long)t4_read_reg64(adap, data_reg + 48), - (unsigned long long)t4_read_reg64(adap, data_reg + 56)); + CH_DUMP_MBOX(adap, mbox, data_reg, "VLD", NULL, true); } /* * Copy in the new mailbox command and send it on its way ... */ - for (i = 0; i < size; i += 8, p++) - t4_write_reg64(adap, data_reg + i, be64_to_cpu(*p)); + memset(cmd_rpl, 0, sizeof(cmd_rpl)); + memcpy(cmd_rpl, cmd, size); + CH_DUMP_MBOX(adap, mbox, 0, "cmd", cmd_rpl, false); + for (i = 0; i < ARRAY_SIZE(cmd_rpl); i++) + t4_write_reg64(adap, data_reg + i * 8, be64_to_cpu(cmd_rpl[i])); if (adap->flags & IS_VF) { /* @@ -432,8 +426,6 @@ int t4_wr_mbox_meat_timeout(struct adapter *adap, int t4_read_reg(adap, data_reg); } - CH_DUMP_MBOX(adap, mbox, data_reg); - t4_write_reg(adap, ctl_reg, F_MBMSGVALID | V_MBOWNER(X_MBOWNER_FW)); read_tx_state(adap, &tx_state[0]); /* also flushes the write_reg */ next_tx_check = 1000; @@ -480,10 +472,9 @@ int t4_wr_mbox_meat_timeout(struct adapter *adap, int * Retrieve the command reply and release the mailbox. */ get_mbox_rpl(adap, cmd_rpl, MBOX_LEN/8, data_reg); + CH_DUMP_MBOX(adap, mbox, 0, "rpl", cmd_rpl, false); t4_write_reg(adap, ctl_reg, V_MBOWNER(X_MBOWNER_NONE)); - CH_DUMP_MBOX(adap, mbox, data_reg); - res = be64_to_cpu(cmd_rpl[0]); if (G_FW_CMD_OP(res >> 32) == FW_DEBUG_CMD) { fw_asrt(adap, (struct fw_debug_cmd *)cmd_rpl); @@ -499,27 +490,20 @@ int t4_wr_mbox_meat_timeout(struct adapter *adap, int * the error and also check to see if the firmware reported any * errors ... */ - ret = (pcie_fw & F_PCIE_FW_ERR) ? -ENXIO : -ETIMEDOUT; - CH_ERR(adap, "command %#x in mailbox %d timed out\n", - *(const u8 *)cmd, mbox); + CH_ERR(adap, "command %#x in mbox %d timed out (0x%08x).\n", + *(const u8 *)cmd, mbox, pcie_fw); + CH_DUMP_MBOX(adap, mbox, 0, "cmdsent", cmd_rpl, true); + CH_DUMP_MBOX(adap, mbox, data_reg, "current", NULL, true); - /* If DUMP_MBOX is set the mbox has already been dumped */ - if ((adap->debug_flags & DF_DUMP_MBOX) == 0) { - p = cmd; - CH_ERR(adap, "mbox: %016llx %016llx %016llx %016llx " - "%016llx %016llx %016llx %016llx\n", - (unsigned long long)be64_to_cpu(p[0]), - (unsigned long long)be64_to_cpu(p[1]), - (unsigned long long)be64_to_cpu(p[2]), - (unsigned long long)be64_to_cpu(p[3]), - (unsigned long long)be64_to_cpu(p[4]), - (unsigned long long)be64_to_cpu(p[5]), - (unsigned long long)be64_to_cpu(p[6]), - (unsigned long long)be64_to_cpu(p[7])); + if (pcie_fw & F_PCIE_FW_ERR) { + ret = -ENXIO; + t4_report_fw_error(adap); + } else { + ret = -ETIMEDOUT; + t4_os_dump_devlog(adap); } - t4_report_fw_error(adap); - t4_fatal_err(adap); + t4_fatal_err(adap, true); return ret; } @@ -3965,785 +3949,1369 @@ int t4_restart_aneg(struct adapter *adap, unsigned int return t4_wr_mbox(adap, mbox, &c, sizeof(c), NULL); } -typedef void (*int_handler_t)(struct adapter *adap); +struct intr_details { + u32 mask; + const char *msg; +}; +struct intr_action { + u32 mask; + int arg; + bool (*action)(struct adapter *, int, bool); +}; + +#define NONFATAL_IF_DISABLED 1 struct intr_info { - unsigned int mask; /* bits to check in interrupt status */ - const char *msg; /* message to print or NULL */ - short stat_idx; /* stat counter to increment or -1 */ - unsigned short fatal; /* whether the condition reported is fatal */ - int_handler_t int_handler; /* platform-specific int handler */ + const char *name; /* name of the INT_CAUSE register */ + int cause_reg; /* INT_CAUSE register */ + int enable_reg; /* INT_ENABLE register */ + u32 fatal; /* bits that are fatal */ + int flags; /* hints */ + const struct intr_details *details; + const struct intr_action *actions; }; -/** - * t4_handle_intr_status - table driven interrupt handler - * @adapter: the adapter that generated the interrupt - * @reg: the interrupt status register to process - * @acts: table of interrupt actions - * - * A table driven interrupt handler that applies a set of masks to an - * interrupt status word and performs the corresponding actions if the - * interrupts described by the mask have occurred. The actions include - * optionally emitting a warning or alert message. The table is terminated - * by an entry specifying mask 0. Returns the number of fatal interrupt - * conditions. +static inline char +intr_alert_char(u32 cause, u32 enable, u32 fatal) +{ + + if (cause & fatal) + return ('!'); + if (cause & enable) + return ('*'); + return ('-'); +} + +static void +t4_show_intr_info(struct adapter *adap, const struct intr_info *ii, u32 cause) +{ + u32 enable, fatal, leftover; + const struct intr_details *details; + char alert; + + enable = t4_read_reg(adap, ii->enable_reg); + if (ii->flags & NONFATAL_IF_DISABLED) + fatal = ii->fatal & t4_read_reg(adap, ii->enable_reg); + else + fatal = ii->fatal; + alert = intr_alert_char(cause, enable, fatal); + CH_ALERT(adap, "%c %s 0x%x = 0x%08x, E 0x%08x, F 0x%08x\n", + alert, ii->name, ii->cause_reg, cause, enable, fatal); + + leftover = cause; + for (details = ii->details; details && details->mask != 0; details++) { + u32 msgbits = details->mask & cause; + if (msgbits == 0) + continue; + alert = intr_alert_char(msgbits, enable, ii->fatal); + CH_ALERT(adap, " %c [0x%08x] %s\n", alert, msgbits, + details->msg); + leftover &= ~msgbits; + } + if (leftover != 0 && leftover != cause) + CH_ALERT(adap, " ? [0x%08x]\n", leftover); +} + +/* + * Returns true for fatal error. */ -static int t4_handle_intr_status(struct adapter *adapter, unsigned int reg, - const struct intr_info *acts) +static bool +t4_handle_intr(struct adapter *adap, const struct intr_info *ii, + u32 additional_cause, bool verbose) { - int fatal = 0; - unsigned int mask = 0; - unsigned int status = t4_read_reg(adapter, reg); + u32 cause, fatal; + bool rc; + const struct intr_action *action; - for ( ; acts->mask; ++acts) { - if (!(status & acts->mask)) + /* read and display cause. */ + cause = t4_read_reg(adap, ii->cause_reg); + if (verbose || cause != 0) + t4_show_intr_info(adap, ii, cause); + /* + * The top level interrupt cause is a bit special and we need to ignore + * the bits that are not in the enable. Note that we did display them + * above in t4_show_intr_info but will not clear them. + */ + if (ii->cause_reg == A_PL_INT_CAUSE) + cause &= t4_read_reg(adap, ii->enable_reg); + fatal = cause & ii->fatal; + if (fatal != 0 && ii->flags & NONFATAL_IF_DISABLED) + fatal &= t4_read_reg(adap, ii->enable_reg); + cause |= additional_cause; + if (cause == 0) + return (false); + + rc = fatal != 0; + for (action = ii->actions; action && action->mask != 0; action++) { + if (!(action->mask & cause)) continue; - if (acts->fatal) { - fatal++; - CH_ALERT(adapter, "%s (0x%x)\n", acts->msg, - status & acts->mask); - } else if (acts->msg) - CH_WARN_RATELIMIT(adapter, "%s (0x%x)\n", acts->msg, - status & acts->mask); - if (acts->int_handler) - acts->int_handler(adapter); - mask |= acts->mask; + rc |= (action->action)(adap, action->arg, verbose); } - status &= mask; - if (status) /* clear processed interrupts */ - t4_write_reg(adapter, reg, status); - return fatal; + + /* clear */ + t4_write_reg(adap, ii->cause_reg, cause); + (void)t4_read_reg(adap, ii->cause_reg); + + return (rc); } /* * Interrupt handler for the PCIE module. */ -static void pcie_intr_handler(struct adapter *adapter) +static bool pcie_intr_handler(struct adapter *adap, int arg, bool verbose) { - static const struct intr_info sysbus_intr_info[] = { - { F_RNPP, "RXNP array parity error", -1, 1 }, - { F_RPCP, "RXPC array parity error", -1, 1 }, - { F_RCIP, "RXCIF array parity error", -1, 1 }, - { F_RCCP, "Rx completions control array parity error", -1, 1 }, - { F_RFTP, "RXFT array parity error", -1, 1 }, + static const struct intr_details sysbus_intr_details[] = { + { F_RNPP, "RXNP array parity error" }, + { F_RPCP, "RXPC array parity error" }, + { F_RCIP, "RXCIF array parity error" }, + { F_RCCP, "Rx completions control array parity error" }, + { F_RFTP, "RXFT array parity error" }, { 0 } }; - static const struct intr_info pcie_port_intr_info[] = { - { F_TPCP, "TXPC array parity error", -1, 1 }, - { F_TNPP, "TXNP array parity error", -1, 1 }, - { F_TFTP, "TXFT array parity error", -1, 1 }, - { F_TCAP, "TXCA array parity error", -1, 1 }, - { F_TCIP, "TXCIF array parity error", -1, 1 }, - { F_RCAP, "RXCA array parity error", -1, 1 }, - { F_OTDD, "outbound request TLP discarded", -1, 1 }, - { F_RDPE, "Rx data parity error", -1, 1 }, - { F_TDUE, "Tx uncorrectable data error", -1, 1 }, + static const struct intr_info sysbus_intr_info = { + .name = "PCIE_CORE_UTL_SYSTEM_BUS_AGENT_STATUS", + .cause_reg = A_PCIE_CORE_UTL_SYSTEM_BUS_AGENT_STATUS, + .enable_reg = A_PCIE_CORE_UTL_SYSTEM_BUS_AGENT_INTERRUPT_ENABLE, + .fatal = F_RFTP | F_RCCP | F_RCIP | F_RPCP | F_RNPP, + .flags = 0, + .details = sysbus_intr_details, + .actions = NULL, + }; + static const struct intr_details pcie_port_intr_details[] = { + { F_TPCP, "TXPC array parity error" }, + { F_TNPP, "TXNP array parity error" }, + { F_TFTP, "TXFT array parity error" }, + { F_TCAP, "TXCA array parity error" }, + { F_TCIP, "TXCIF array parity error" }, + { F_RCAP, "RXCA array parity error" }, + { F_OTDD, "outbound request TLP discarded" }, + { F_RDPE, "Rx data parity error" }, + { F_TDUE, "Tx uncorrectable data error" }, { 0 } }; - static const struct intr_info pcie_intr_info[] = { - { F_MSIADDRLPERR, "MSI AddrL parity error", -1, 1 }, - { F_MSIADDRHPERR, "MSI AddrH parity error", -1, 1 }, - { F_MSIDATAPERR, "MSI data parity error", -1, 1 }, - { F_MSIXADDRLPERR, "MSI-X AddrL parity error", -1, 1 }, - { F_MSIXADDRHPERR, "MSI-X AddrH parity error", -1, 1 }, - { F_MSIXDATAPERR, "MSI-X data parity error", -1, 1 }, - { F_MSIXDIPERR, "MSI-X DI parity error", -1, 1 }, - { F_PIOCPLPERR, "PCI PIO completion FIFO parity error", -1, 1 }, - { F_PIOREQPERR, "PCI PIO request FIFO parity error", -1, 1 }, - { F_TARTAGPERR, "PCI PCI target tag FIFO parity error", -1, 1 }, - { F_CCNTPERR, "PCI CMD channel count parity error", -1, 1 }, - { F_CREQPERR, "PCI CMD channel request parity error", -1, 1 }, - { F_CRSPPERR, "PCI CMD channel response parity error", -1, 1 }, - { F_DCNTPERR, "PCI DMA channel count parity error", -1, 1 }, - { F_DREQPERR, "PCI DMA channel request parity error", -1, 1 }, - { F_DRSPPERR, "PCI DMA channel response parity error", -1, 1 }, - { F_HCNTPERR, "PCI HMA channel count parity error", -1, 1 }, - { F_HREQPERR, "PCI HMA channel request parity error", -1, 1 }, - { F_HRSPPERR, "PCI HMA channel response parity error", -1, 1 }, - { F_CFGSNPPERR, "PCI config snoop FIFO parity error", -1, 1 }, - { F_FIDPERR, "PCI FID parity error", -1, 1 }, - { F_INTXCLRPERR, "PCI INTx clear parity error", -1, 1 }, - { F_MATAGPERR, "PCI MA tag parity error", -1, 1 }, - { F_PIOTAGPERR, "PCI PIO tag parity error", -1, 1 }, - { F_RXCPLPERR, "PCI Rx completion parity error", -1, 1 }, - { F_RXWRPERR, "PCI Rx write parity error", -1, 1 }, - { F_RPLPERR, "PCI replay buffer parity error", -1, 1 }, - { F_PCIESINT, "PCI core secondary fault", -1, 1 }, - { F_PCIEPINT, "PCI core primary fault", -1, 1 }, - { F_UNXSPLCPLERR, "PCI unexpected split completion error", -1, - 0 }, + static const struct intr_info pcie_port_intr_info = { + .name = "PCIE_CORE_UTL_PCI_EXPRESS_PORT_STATUS", + .cause_reg = A_PCIE_CORE_UTL_PCI_EXPRESS_PORT_STATUS, + .enable_reg = A_PCIE_CORE_UTL_PCI_EXPRESS_PORT_INTERRUPT_ENABLE, + .fatal = F_TPCP | F_TNPP | F_TFTP | F_TCAP | F_TCIP | F_RCAP | + F_OTDD | F_RDPE | F_TDUE, + .flags = 0, + .details = pcie_port_intr_details, + .actions = NULL, + }; + static const struct intr_details pcie_intr_details[] = { + { F_MSIADDRLPERR, "MSI AddrL parity error" }, + { F_MSIADDRHPERR, "MSI AddrH parity error" }, + { F_MSIDATAPERR, "MSI data parity error" }, + { F_MSIXADDRLPERR, "MSI-X AddrL parity error" }, + { F_MSIXADDRHPERR, "MSI-X AddrH parity error" }, + { F_MSIXDATAPERR, "MSI-X data parity error" }, + { F_MSIXDIPERR, "MSI-X DI parity error" }, + { F_PIOCPLPERR, "PCIe PIO completion FIFO parity error" }, + { F_PIOREQPERR, "PCIe PIO request FIFO parity error" }, + { F_TARTAGPERR, "PCIe target tag FIFO parity error" }, + { F_CCNTPERR, "PCIe CMD channel count parity error" }, + { F_CREQPERR, "PCIe CMD channel request parity error" }, + { F_CRSPPERR, "PCIe CMD channel response parity error" }, + { F_DCNTPERR, "PCIe DMA channel count parity error" }, + { F_DREQPERR, "PCIe DMA channel request parity error" }, + { F_DRSPPERR, "PCIe DMA channel response parity error" }, + { F_HCNTPERR, "PCIe HMA channel count parity error" }, + { F_HREQPERR, "PCIe HMA channel request parity error" }, + { F_HRSPPERR, "PCIe HMA channel response parity error" }, + { F_CFGSNPPERR, "PCIe config snoop FIFO parity error" }, + { F_FIDPERR, "PCIe FID parity error" }, + { F_INTXCLRPERR, "PCIe INTx clear parity error" }, + { F_MATAGPERR, "PCIe MA tag parity error" }, + { F_PIOTAGPERR, "PCIe PIO tag parity error" }, + { F_RXCPLPERR, "PCIe Rx completion parity error" }, + { F_RXWRPERR, "PCIe Rx write parity error" }, + { F_RPLPERR, "PCIe replay buffer parity error" }, + { F_PCIESINT, "PCIe core secondary fault" }, + { F_PCIEPINT, "PCIe core primary fault" }, + { F_UNXSPLCPLERR, "PCIe unexpected split completion error" }, { 0 } }; - - static const struct intr_info t5_pcie_intr_info[] = { - { F_MSTGRPPERR, "Master Response Read Queue parity error", - -1, 1 }, - { F_MSTTIMEOUTPERR, "Master Timeout FIFO parity error", -1, 1 }, - { F_MSIXSTIPERR, "MSI-X STI SRAM parity error", -1, 1 }, - { F_MSIXADDRLPERR, "MSI-X AddrL parity error", -1, 1 }, - { F_MSIXADDRHPERR, "MSI-X AddrH parity error", -1, 1 }, - { F_MSIXDATAPERR, "MSI-X data parity error", -1, 1 }, - { F_MSIXDIPERR, "MSI-X DI parity error", -1, 1 }, - { F_PIOCPLGRPPERR, "PCI PIO completion Group FIFO parity error", - -1, 1 }, - { F_PIOREQGRPPERR, "PCI PIO request Group FIFO parity error", - -1, 1 }, - { F_TARTAGPERR, "PCI PCI target tag FIFO parity error", -1, 1 }, - { F_MSTTAGQPERR, "PCI master tag queue parity error", -1, 1 }, - { F_CREQPERR, "PCI CMD channel request parity error", -1, 1 }, - { F_CRSPPERR, "PCI CMD channel response parity error", -1, 1 }, - { F_DREQWRPERR, "PCI DMA channel write request parity error", - -1, 1 }, - { F_DREQPERR, "PCI DMA channel request parity error", -1, 1 }, - { F_DRSPPERR, "PCI DMA channel response parity error", -1, 1 }, - { F_HREQWRPERR, "PCI HMA channel count parity error", -1, 1 }, - { F_HREQPERR, "PCI HMA channel request parity error", -1, 1 }, - { F_HRSPPERR, "PCI HMA channel response parity error", -1, 1 }, - { F_CFGSNPPERR, "PCI config snoop FIFO parity error", -1, 1 }, - { F_FIDPERR, "PCI FID parity error", -1, 1 }, - { F_VFIDPERR, "PCI INTx clear parity error", -1, 1 }, - { F_MAGRPPERR, "PCI MA group FIFO parity error", -1, 1 }, - { F_PIOTAGPERR, "PCI PIO tag parity error", -1, 1 }, - { F_IPRXHDRGRPPERR, "PCI IP Rx header group parity error", - -1, 1 }, - { F_IPRXDATAGRPPERR, "PCI IP Rx data group parity error", - -1, 1 }, - { F_RPLPERR, "PCI IP replay buffer parity error", -1, 1 }, - { F_IPSOTPERR, "PCI IP SOT buffer parity error", -1, 1 }, - { F_TRGT1GRPPERR, "PCI TRGT1 group FIFOs parity error", -1, 1 }, - { F_READRSPERR, "Outbound read error", -1, - 0 }, + static const struct intr_details t5_pcie_intr_details[] = { + { F_IPGRPPERR, "Parity errors observed by IP" }, + { F_NONFATALERR, "PCIe non-fatal error" }, + { F_READRSPERR, "Outbound read error" }, + { F_TRGT1GRPPERR, "PCIe TRGT1 group FIFOs parity error" }, + { F_IPSOTPERR, "PCIe IP SOT buffer SRAM parity error" }, + { F_IPRETRYPERR, "PCIe IP replay buffer parity error" }, + { F_IPRXDATAGRPPERR, "PCIe IP Rx data group SRAMs parity error" }, + { F_IPRXHDRGRPPERR, "PCIe IP Rx header group SRAMs parity error" }, + { F_PIOTAGQPERR, "PIO tag queue FIFO parity error" }, + { F_MAGRPPERR, "MA group FIFO parity error" }, + { F_VFIDPERR, "VFID SRAM parity error" }, + { F_FIDPERR, "FID SRAM parity error" }, + { F_CFGSNPPERR, "config snoop FIFO parity error" }, + { F_HRSPPERR, "HMA channel response data SRAM parity error" }, + { F_HREQRDPERR, "HMA channel read request SRAM parity error" }, + { F_HREQWRPERR, "HMA channel write request SRAM parity error" }, + { F_DRSPPERR, "DMA channel response data SRAM parity error" }, + { F_DREQRDPERR, "DMA channel write request SRAM parity error" }, + { F_CRSPPERR, "CMD channel response data SRAM parity error" }, + { F_CREQRDPERR, "CMD channel read request SRAM parity error" }, + { F_MSTTAGQPERR, "PCIe master tag queue SRAM parity error" }, + { F_TGTTAGQPERR, "PCIe target tag queue FIFO parity error" }, + { F_PIOREQGRPPERR, "PIO request group FIFOs parity error" }, + { F_PIOCPLGRPPERR, "PIO completion group FIFOs parity error" }, + { F_MSIXDIPERR, "MSI-X DI SRAM parity error" }, + { F_MSIXDATAPERR, "MSI-X data SRAM parity error" }, + { F_MSIXADDRHPERR, "MSI-X AddrH SRAM parity error" }, + { F_MSIXADDRLPERR, "MSI-X AddrL SRAM parity error" }, + { F_MSIXSTIPERR, "MSI-X STI SRAM parity error" }, + { F_MSTTIMEOUTPERR, "Master timeout FIFO parity error" }, + { F_MSTGRPPERR, "Master response read queue SRAM parity error" }, { 0 } }; + struct intr_info pcie_intr_info = { + .name = "PCIE_INT_CAUSE", + .cause_reg = A_PCIE_INT_CAUSE, + .enable_reg = A_PCIE_INT_ENABLE, + .fatal = 0xffffffff, + .flags = NONFATAL_IF_DISABLED, + .details = NULL, + .actions = NULL, + }; + bool fatal = false; - int fat; + if (is_t4(adap)) { + fatal |= t4_handle_intr(adap, &sysbus_intr_info, 0, verbose); + fatal |= t4_handle_intr(adap, &pcie_port_intr_info, 0, verbose); - if (is_t4(adapter)) - fat = t4_handle_intr_status(adapter, - A_PCIE_CORE_UTL_SYSTEM_BUS_AGENT_STATUS, - sysbus_intr_info) + - t4_handle_intr_status(adapter, - A_PCIE_CORE_UTL_PCI_EXPRESS_PORT_STATUS, - pcie_port_intr_info) + - t4_handle_intr_status(adapter, A_PCIE_INT_CAUSE, - pcie_intr_info); - else - fat = t4_handle_intr_status(adapter, A_PCIE_INT_CAUSE, - t5_pcie_intr_info); - if (fat) - t4_fatal_err(adapter); + pcie_intr_info.details = pcie_intr_details; + } else { + pcie_intr_info.details = t5_pcie_intr_details; + } + fatal |= t4_handle_intr(adap, &pcie_intr_info, 0, verbose); + + return (fatal); } /* * TP interrupt handler. */ -static void tp_intr_handler(struct adapter *adapter) +static bool tp_intr_handler(struct adapter *adap, int arg, bool verbose) { - static const struct intr_info tp_intr_info[] = { - { 0x3fffffff, "TP parity error", -1, 1 }, - { F_FLMTXFLSTEMPTY, "TP out of Tx pages", -1, 1 }, + static const struct intr_details tp_intr_details[] = { + { 0x3fffffff, "TP parity error" }, + { F_FLMTXFLSTEMPTY, "TP out of Tx pages" }, { 0 } }; + static const struct intr_info tp_intr_info = { + .name = "TP_INT_CAUSE", + .cause_reg = A_TP_INT_CAUSE, + .enable_reg = A_TP_INT_ENABLE, + .fatal = 0x7fffffff, + .flags = NONFATAL_IF_DISABLED, + .details = tp_intr_details, + .actions = NULL, + }; - if (t4_handle_intr_status(adapter, A_TP_INT_CAUSE, tp_intr_info)) - t4_fatal_err(adapter); + return (t4_handle_intr(adap, &tp_intr_info, 0, verbose)); } /* * SGE interrupt handler. */ -static void sge_intr_handler(struct adapter *adapter) +static bool sge_intr_handler(struct adapter *adap, int arg, bool verbose) { - u64 v; - u32 err; - - static const struct intr_info sge_intr_info[] = { + static const struct intr_info sge_int1_info = { + .name = "SGE_INT_CAUSE1", + .cause_reg = A_SGE_INT_CAUSE1, + .enable_reg = A_SGE_INT_ENABLE1, + .fatal = 0xffffffff, + .flags = NONFATAL_IF_DISABLED, + .details = NULL, + .actions = NULL, + }; + static const struct intr_info sge_int2_info = { + .name = "SGE_INT_CAUSE2", + .cause_reg = A_SGE_INT_CAUSE2, + .enable_reg = A_SGE_INT_ENABLE2, + .fatal = 0xffffffff, + .flags = NONFATAL_IF_DISABLED, + .details = NULL, + .actions = NULL, + }; + static const struct intr_details sge_int3_details[] = { + { F_ERR_FLM_DBP, + "DBP pointer delivery for invalid context or QID" }, + { F_ERR_FLM_IDMA1 | F_ERR_FLM_IDMA0, + "Invalid QID or header request by IDMA" }, + { F_ERR_FLM_HINT, "FLM hint is for invalid context or QID" }, + { F_ERR_PCIE_ERROR3, "SGE PCIe error for DBP thread 3" }, + { F_ERR_PCIE_ERROR2, "SGE PCIe error for DBP thread 2" }, + { F_ERR_PCIE_ERROR1, "SGE PCIe error for DBP thread 1" }, + { F_ERR_PCIE_ERROR0, "SGE PCIe error for DBP thread 0" }, + { F_ERR_TIMER_ABOVE_MAX_QID, + "SGE GTS with timer 0-5 for IQID > 1023" }, { F_ERR_CPL_EXCEED_IQE_SIZE, - "SGE received CPL exceeding IQE size", -1, 1 }, - { F_ERR_INVALID_CIDX_INC, - "SGE GTS CIDX increment too large", -1, 0 }, - { F_ERR_CPL_OPCODE_0, "SGE received 0-length CPL", -1, 0 }, - { F_DBFIFO_LP_INT, NULL, -1, 0, t4_db_full }, + "SGE received CPL exceeding IQE size" }, + { F_ERR_INVALID_CIDX_INC, "SGE GTS CIDX increment too large" }, + { F_ERR_ITP_TIME_PAUSED, "SGE ITP error" }, + { F_ERR_CPL_OPCODE_0, "SGE received 0-length CPL" }, + { F_ERR_DROPPED_DB, "SGE DB dropped" }, { F_ERR_DATA_CPL_ON_HIGH_QID1 | F_ERR_DATA_CPL_ON_HIGH_QID0, - "SGE IQID > 1023 received CPL for FL", -1, 0 }, - { F_ERR_BAD_DB_PIDX3, "SGE DBP 3 pidx increment too large", -1, - 0 }, - { F_ERR_BAD_DB_PIDX2, "SGE DBP 2 pidx increment too large", -1, - 0 }, - { F_ERR_BAD_DB_PIDX1, "SGE DBP 1 pidx increment too large", -1, - 0 }, - { F_ERR_BAD_DB_PIDX0, "SGE DBP 0 pidx increment too large", -1, - 0 }, + "SGE IQID > 1023 received CPL for FL" }, + { F_ERR_BAD_DB_PIDX3 | F_ERR_BAD_DB_PIDX2 | F_ERR_BAD_DB_PIDX1 | + F_ERR_BAD_DB_PIDX0, "SGE DBP pidx increment too large" }, + { F_ERR_ING_PCIE_CHAN, "SGE Ingress PCIe channel mismatch" }, { F_ERR_ING_CTXT_PRIO, - "SGE too many priority ingress contexts", -1, 0 }, - { F_INGRESS_SIZE_ERR, "SGE illegal ingress QID", -1, 0 }, - { F_EGRESS_SIZE_ERR, "SGE illegal egress QID", -1, 0 }, - { F_ERR_PCIE_ERROR0 | F_ERR_PCIE_ERROR1 | - F_ERR_PCIE_ERROR2 | F_ERR_PCIE_ERROR3, - "SGE PCIe error for a DBP thread", -1, 0 }, - { 0 } - }; - - static const struct intr_info t4t5_sge_intr_info[] = { - { F_ERR_DROPPED_DB, NULL, -1, 0, t4_db_dropped }, - { F_DBFIFO_HP_INT, NULL, -1, 0, t4_db_full }, + "Ingress context manager priority user error" }, { F_ERR_EGR_CTXT_PRIO, - "SGE too many priority egress contexts", -1, 0 }, + "Egress context manager priority user error" }, + { F_DBFIFO_HP_INT, "High priority DB FIFO threshold reached" }, + { F_DBFIFO_LP_INT, "Low priority DB FIFO threshold reached" }, + { F_REG_ADDRESS_ERR, "Undefined SGE register accessed" }, + { F_INGRESS_SIZE_ERR, "SGE illegal ingress QID" }, + { F_EGRESS_SIZE_ERR, "SGE illegal egress QID" }, + { 0x0000000f, "SGE context access for invalid queue" }, { 0 } }; - - /* - * For now, treat below interrupts as fatal so that we disable SGE and - * get better debug */ - static const struct intr_info t6_sge_intr_info[] = { + static const struct intr_details t6_sge_int3_details[] = { + { F_ERR_FLM_DBP, + "DBP pointer delivery for invalid context or QID" }, + { F_ERR_FLM_IDMA1 | F_ERR_FLM_IDMA0, + "Invalid QID or header request by IDMA" }, + { F_ERR_FLM_HINT, "FLM hint is for invalid context or QID" }, + { F_ERR_PCIE_ERROR3, "SGE PCIe error for DBP thread 3" }, + { F_ERR_PCIE_ERROR2, "SGE PCIe error for DBP thread 2" }, + { F_ERR_PCIE_ERROR1, "SGE PCIe error for DBP thread 1" }, + { F_ERR_PCIE_ERROR0, "SGE PCIe error for DBP thread 0" }, + { F_ERR_TIMER_ABOVE_MAX_QID, + "SGE GTS with timer 0-5 for IQID > 1023" }, + { F_ERR_CPL_EXCEED_IQE_SIZE, + "SGE received CPL exceeding IQE size" }, + { F_ERR_INVALID_CIDX_INC, "SGE GTS CIDX increment too large" }, + { F_ERR_ITP_TIME_PAUSED, "SGE ITP error" }, + { F_ERR_CPL_OPCODE_0, "SGE received 0-length CPL" }, + { F_ERR_DROPPED_DB, "SGE DB dropped" }, + { F_ERR_DATA_CPL_ON_HIGH_QID1 | F_ERR_DATA_CPL_ON_HIGH_QID0, + "SGE IQID > 1023 received CPL for FL" }, + { F_ERR_BAD_DB_PIDX3 | F_ERR_BAD_DB_PIDX2 | F_ERR_BAD_DB_PIDX1 | + F_ERR_BAD_DB_PIDX0, "SGE DBP pidx increment too large" }, + { F_ERR_ING_PCIE_CHAN, "SGE Ingress PCIe channel mismatch" }, + { F_ERR_ING_CTXT_PRIO, + "Ingress context manager priority user error" }, + { F_ERR_EGR_CTXT_PRIO, + "Egress context manager priority user error" }, + { F_DBP_TBUF_FULL, "SGE DBP tbuf full" }, { F_FATAL_WRE_LEN, - "SGE Actual WRE packet is less than advertized length", - -1, 1 }, + "SGE WRE packet less than advertized length" }, + { F_REG_ADDRESS_ERR, "Undefined SGE register accessed" }, + { F_INGRESS_SIZE_ERR, "SGE illegal ingress QID" }, + { F_EGRESS_SIZE_ERR, "SGE illegal egress QID" }, + { 0x0000000f, "SGE context access for invalid queue" }, { 0 } }; + struct intr_info sge_int3_info = { + .name = "SGE_INT_CAUSE3", + .cause_reg = A_SGE_INT_CAUSE3, + .enable_reg = A_SGE_INT_ENABLE3, + .fatal = F_ERR_CPL_EXCEED_IQE_SIZE, + .flags = 0, + .details = NULL, + .actions = NULL, + }; + static const struct intr_info sge_int4_info = { + .name = "SGE_INT_CAUSE4", + .cause_reg = A_SGE_INT_CAUSE4, + .enable_reg = A_SGE_INT_ENABLE4, + .fatal = 0, + .flags = 0, + .details = NULL, + .actions = NULL, + }; + static const struct intr_info sge_int5_info = { + .name = "SGE_INT_CAUSE5", + .cause_reg = A_SGE_INT_CAUSE5, + .enable_reg = A_SGE_INT_ENABLE5, + .fatal = 0xffffffff, + .flags = NONFATAL_IF_DISABLED, + .details = NULL, + .actions = NULL, + }; + static const struct intr_info sge_int6_info = { + .name = "SGE_INT_CAUSE6", + .cause_reg = A_SGE_INT_CAUSE6, + .enable_reg = A_SGE_INT_ENABLE6, + .fatal = 0, + .flags = 0, + .details = NULL, + .actions = NULL, + }; - v = (u64)t4_read_reg(adapter, A_SGE_INT_CAUSE1) | - ((u64)t4_read_reg(adapter, A_SGE_INT_CAUSE2) << 32); - if (v) { - CH_ALERT(adapter, "SGE parity error (%#llx)\n", - (unsigned long long)v); - t4_write_reg(adapter, A_SGE_INT_CAUSE1, v); - t4_write_reg(adapter, A_SGE_INT_CAUSE2, v >> 32); + bool fatal; + u32 v; + + if (chip_id(adap) <= CHELSIO_T5) { + sge_int3_info.details = sge_int3_details; + } else { + sge_int3_info.details = t6_sge_int3_details; } - v |= t4_handle_intr_status(adapter, A_SGE_INT_CAUSE3, sge_intr_info); - if (chip_id(adapter) <= CHELSIO_T5) - v |= t4_handle_intr_status(adapter, A_SGE_INT_CAUSE3, - t4t5_sge_intr_info); - else - v |= t4_handle_intr_status(adapter, A_SGE_INT_CAUSE3, - t6_sge_intr_info); + fatal = false; + fatal |= t4_handle_intr(adap, &sge_int1_info, 0, verbose); + fatal |= t4_handle_intr(adap, &sge_int2_info, 0, verbose); + fatal |= t4_handle_intr(adap, &sge_int3_info, 0, verbose); + fatal |= t4_handle_intr(adap, &sge_int4_info, 0, verbose); + if (chip_id(adap) >= CHELSIO_T5) + fatal |= t4_handle_intr(adap, &sge_int5_info, 0, verbose); + if (chip_id(adap) >= CHELSIO_T6) + fatal |= t4_handle_intr(adap, &sge_int6_info, 0, verbose); - err = t4_read_reg(adapter, A_SGE_ERROR_STATS); - if (err & F_ERROR_QID_VALID) { - CH_ERR(adapter, "SGE error for queue %u\n", G_ERROR_QID(err)); - if (err & F_UNCAPTURED_ERROR) - CH_ERR(adapter, "SGE UNCAPTURED_ERROR set (clearing)\n"); - t4_write_reg(adapter, A_SGE_ERROR_STATS, F_ERROR_QID_VALID | - F_UNCAPTURED_ERROR); + v = t4_read_reg(adap, A_SGE_ERROR_STATS); + if (v & F_ERROR_QID_VALID) { + CH_ERR(adap, "SGE error for QID %u\n", G_ERROR_QID(v)); + if (v & F_UNCAPTURED_ERROR) + CH_ERR(adap, "SGE UNCAPTURED_ERROR set (clearing)\n"); + t4_write_reg(adap, A_SGE_ERROR_STATS, + F_ERROR_QID_VALID | F_UNCAPTURED_ERROR); } - if (v != 0) - t4_fatal_err(adapter); + return (fatal); } -#define CIM_OBQ_INTR (F_OBQULP0PARERR | F_OBQULP1PARERR | F_OBQULP2PARERR |\ - F_OBQULP3PARERR | F_OBQSGEPARERR | F_OBQNCSIPARERR) -#define CIM_IBQ_INTR (F_IBQTP0PARERR | F_IBQTP1PARERR | F_IBQULPPARERR |\ - F_IBQSGEHIPARERR | F_IBQSGELOPARERR | F_IBQNCSIPARERR) - /* * CIM interrupt handler. */ -static void cim_intr_handler(struct adapter *adapter) +static bool cim_intr_handler(struct adapter *adap, int arg, bool verbose) { - static const struct intr_info cim_intr_info[] = { - { F_PREFDROPINT, "CIM control register prefetch drop", -1, 1 }, - { CIM_OBQ_INTR, "CIM OBQ parity error", -1, 1 }, - { CIM_IBQ_INTR, "CIM IBQ parity error", -1, 1 }, - { F_MBUPPARERR, "CIM mailbox uP parity error", -1, 1 }, - { F_MBHOSTPARERR, "CIM mailbox host parity error", -1, 1 }, - { F_TIEQINPARERRINT, "CIM TIEQ outgoing parity error", -1, 1 }, - { F_TIEQOUTPARERRINT, "CIM TIEQ incoming parity error", -1, 1 }, - { F_TIMER0INT, "CIM TIMER0 interrupt", -1, 1 }, - { 0 } + static const struct intr_action cim_host_intr_actions[] = { + { F_TIMER0INT, 0, t4_os_dump_cimla }, + { 0 }, }; - static const struct intr_info cim_upintr_info[] = { - { F_RSVDSPACEINT, "CIM reserved space access", -1, 1 }, - { F_ILLTRANSINT, "CIM illegal transaction", -1, 1 }, - { F_ILLWRINT, "CIM illegal write", -1, 1 }, - { F_ILLRDINT, "CIM illegal read", -1, 1 }, - { F_ILLRDBEINT, "CIM illegal read BE", -1, 1 }, - { F_ILLWRBEINT, "CIM illegal write BE", -1, 1 }, - { F_SGLRDBOOTINT, "CIM single read from boot space", -1, 1 }, - { F_SGLWRBOOTINT, "CIM single write to boot space", -1, 1 }, - { F_BLKWRBOOTINT, "CIM block write to boot space", -1, 1 }, - { F_SGLRDFLASHINT, "CIM single read from flash space", -1, 1 }, - { F_SGLWRFLASHINT, "CIM single write to flash space", -1, 1 }, - { F_BLKWRFLASHINT, "CIM block write to flash space", -1, 1 }, - { F_SGLRDEEPROMINT, "CIM single EEPROM read", -1, 1 }, - { F_SGLWREEPROMINT, "CIM single EEPROM write", -1, 1 }, - { F_BLKRDEEPROMINT, "CIM block EEPROM read", -1, 1 }, - { F_BLKWREEPROMINT, "CIM block EEPROM write", -1, 1 }, - { F_SGLRDCTLINT , "CIM single read from CTL space", -1, 1 }, - { F_SGLWRCTLINT , "CIM single write to CTL space", -1, 1 }, - { F_BLKRDCTLINT , "CIM block read from CTL space", -1, 1 }, - { F_BLKWRCTLINT , "CIM block write to CTL space", -1, 1 }, - { F_SGLRDPLINT , "CIM single read from PL space", -1, 1 }, - { F_SGLWRPLINT , "CIM single write to PL space", -1, 1 }, - { F_BLKRDPLINT , "CIM block read from PL space", -1, 1 }, - { F_BLKWRPLINT , "CIM block write to PL space", -1, 1 }, - { F_REQOVRLOOKUPINT , "CIM request FIFO overwrite", -1, 1 }, - { F_RSPOVRLOOKUPINT , "CIM response FIFO overwrite", -1, 1 }, - { F_TIMEOUTINT , "CIM PIF timeout", -1, 1 }, - { F_TIMEOUTMAINT , "CIM PIF MA timeout", -1, 1 }, - { 0 } + static const struct intr_details cim_host_intr_details[] = { + /* T6+ */ + { F_PCIE2CIMINTFPARERR, "CIM IBQ PCIe interface parity error" }, + + /* T5+ */ + { F_MA_CIM_INTFPERR, "MA2CIM interface parity error" }, + { F_PLCIM_MSTRSPDATAPARERR, + "PL2CIM master response data parity error" }, + { F_NCSI2CIMINTFPARERR, "CIM IBQ NC-SI interface parity error" }, + { F_SGE2CIMINTFPARERR, "CIM IBQ SGE interface parity error" }, + { F_ULP2CIMINTFPARERR, "CIM IBQ ULP_TX interface parity error" }, + { F_TP2CIMINTFPARERR, "CIM IBQ TP interface parity error" }, + { F_OBQSGERX1PARERR, "CIM OBQ SGE1_RX parity error" }, + { F_OBQSGERX0PARERR, "CIM OBQ SGE0_RX parity error" }, + + /* T4+ */ + { F_TIEQOUTPARERRINT, "CIM TIEQ outgoing FIFO parity error" }, + { F_TIEQINPARERRINT, "CIM TIEQ incoming FIFO parity error" }, + { F_MBHOSTPARERR, "CIM mailbox host read parity error" }, + { F_MBUPPARERR, "CIM mailbox uP parity error" }, + { F_IBQTP0PARERR, "CIM IBQ TP0 parity error" }, + { F_IBQTP1PARERR, "CIM IBQ TP1 parity error" }, + { F_IBQULPPARERR, "CIM IBQ ULP parity error" }, + { F_IBQSGELOPARERR, "CIM IBQ SGE_LO parity error" }, + { F_IBQSGEHIPARERR | F_IBQPCIEPARERR, /* same bit */ + "CIM IBQ PCIe/SGE_HI parity error" }, + { F_IBQNCSIPARERR, "CIM IBQ NC-SI parity error" }, + { F_OBQULP0PARERR, "CIM OBQ ULP0 parity error" }, + { F_OBQULP1PARERR, "CIM OBQ ULP1 parity error" }, + { F_OBQULP2PARERR, "CIM OBQ ULP2 parity error" }, + { F_OBQULP3PARERR, "CIM OBQ ULP3 parity error" }, + { F_OBQSGEPARERR, "CIM OBQ SGE parity error" }, + { F_OBQNCSIPARERR, "CIM OBQ NC-SI parity error" }, + { F_TIMER1INT, "CIM TIMER0 interrupt" }, + { F_TIMER0INT, "CIM TIMER0 interrupt" }, + { F_PREFDROPINT, "CIM control register prefetch drop" }, + { 0} }; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Sat Apr 13 20:43:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C7A1F1582DFC; Sat, 13 Apr 2019 20:43:19 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132]) (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 "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 686BD6B1B6; Sat, 13 Apr 2019 20:43:19 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1033) id 56AC9B174; Sat, 13 Apr 2019 20:43:19 +0000 (UTC) Date: Sat, 13 Apr 2019 20:43:19 +0000 From: Alexey Dokuchaev To: Mateusz Guzik Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344648 - in head: . sys/kern sys/sys Message-ID: <20190413204319.GA92594@FreeBSD.org> References: <201902272256.x1RMutdK085216@repo.freebsd.org> <20190228074750.GA35369@FreeBSD.org> <20190310151140.GB97029@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190310151140.GB97029@FreeBSD.org> User-Agent: Mutt/1.10.1 (2018-07-13) X-Rspamd-Queue-Id: 686BD6B1B6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.89 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.990,0]; NEURAL_HAM_SHORT(-0.90)[-0.900,0]; ASN(0.00)[asn:11403, ipnet:96.47.64.0/20, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 20:43:20 -0000 On Sun, Mar 10, 2019 at 03:11:40PM +0000, Alexey Dokuchaev wrote: > On Thu, Feb 28, 2019 at 07:47:51AM +0000, Alexey Dokuchaev wrote: > > On Wed, Feb 27, 2019 at 10:56:55PM +0000, Mateusz Guzik wrote: > > > New Revision: 344648 > > > URL: https://svnweb.freebsd.org/changeset/base/344648 > > > > > > Log: > > > Rename seq to seqc to avoid namespace clashes with Linux > > > > > > ... > > > Added: > > > head/sys/sys/seqc.h (contents, props changed) > > > Deleted: > > > head/sys/sys/seq.h > > > > Why it was deleted and added as new file instead of being repocopied? > > Retransmit. Retransmit. ./danfe From owner-svn-src-all@freebsd.org Sat Apr 13 20:49:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6826E1583005; Sat, 13 Apr 2019 20:49:17 +0000 (UTC) (envelope-from pfg@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 0B9A86B443; Sat, 13 Apr 2019 20:49:17 +0000 (UTC) (envelope-from pfg@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 DC36EE5FC; Sat, 13 Apr 2019 20:49:16 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3DKnGT3047940; Sat, 13 Apr 2019 20:49:16 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DKnG4H047939; Sat, 13 Apr 2019 20:49:16 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201904132049.x3DKnG4H047939@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Sat, 13 Apr 2019 20:49: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: r346189 - stable/11/sys/fs/ext2fs X-SVN-Group: stable-11 X-SVN-Commit-Author: pfg X-SVN-Commit-Paths: stable/11/sys/fs/ext2fs X-SVN-Commit-Revision: 346189 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0B9A86B443 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 20:49:17 -0000 Author: pfg Date: Sat Apr 13 20:49:16 2019 New Revision: 346189 URL: https://svnweb.freebsd.org/changeset/base/346189 Log: MFC r344755 (by fsu@) Fix integer overflow possibility. Reported by: Christopher Krah, Thomas Barabosch, and Jan-Niclas Hilgert of Fraunhofer FKIE Reported as: FS-2-EXT2-1: Out-of-Bounds Write in nmount (ext2_vget) Reviewed by: pfg MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D19326 Modified: stable/11/sys/fs/ext2fs/ext2_vfsops.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/fs/ext2fs/ext2_vfsops.c ============================================================================== --- stable/11/sys/fs/ext2fs/ext2_vfsops.c Sat Apr 13 19:23:11 2019 (r346188) +++ stable/11/sys/fs/ext2fs/ext2_vfsops.c Sat Apr 13 20:49:16 2019 (r346189) @@ -940,8 +940,8 @@ ext2_vget(struct mount *mp, ino_t ino, int flags, stru struct buf *bp; struct vnode *vp; struct thread *td; - int i, error; - int used_blocks; + unsigned int i, used_blocks; + int error; td = curthread; error = vfs_hash_get(mp, ino, flags, td, vpp, NULL, NULL); From owner-svn-src-all@freebsd.org Sat Apr 13 21:45:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3F0871584164; Sat, 13 Apr 2019 21:45:46 +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 00D3E6CC68; Sat, 13 Apr 2019 21:45:46 +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 B59B5F065; Sat, 13 Apr 2019 21:45:45 +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 x3DLjjIF079392; Sat, 13 Apr 2019 21:45:45 GMT (envelope-from rmacklem@FreeBSD.org) Received: (from rmacklem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DLjjAp079390; Sat, 13 Apr 2019 21:45:45 GMT (envelope-from rmacklem@FreeBSD.org) Message-Id: <201904132145.x3DLjjAp079390@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rmacklem set sender to rmacklem@FreeBSD.org using -f From: Rick Macklem Date: Sat, 13 Apr 2019 21:45:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346190 - head/usr.sbin/nfsdumpstate X-SVN-Group: head X-SVN-Commit-Author: rmacklem X-SVN-Commit-Paths: head/usr.sbin/nfsdumpstate X-SVN-Commit-Revision: 346190 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 00D3E6CC68 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.980,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 21:45:46 -0000 Author: rmacklem Date: Sat Apr 13 21:45:45 2019 New Revision: 346190 URL: https://svnweb.freebsd.org/changeset/base/346190 Log: Fix nfsdumpstate(8) so that it can print out INET6 callback addresses. The patch adds support for printing of INET6 callback addresses. It also adds the #ifdef INET, INET6 as requested by bz@. PR: 223036 Reviewed by: bz, rgrimes MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D19839 Modified: head/usr.sbin/nfsdumpstate/Makefile head/usr.sbin/nfsdumpstate/nfsdumpstate.c Modified: head/usr.sbin/nfsdumpstate/Makefile ============================================================================== --- head/usr.sbin/nfsdumpstate/Makefile Sat Apr 13 20:49:16 2019 (r346189) +++ head/usr.sbin/nfsdumpstate/Makefile Sat Apr 13 21:45:45 2019 (r346190) @@ -1,6 +1,15 @@ # $FreeBSD$ +.include + PROG= nfsdumpstate MAN= nfsdumpstate.8 + +.if ${MK_INET_SUPPORT} != "no" +CFLAGS+= -DINET +.endif +.if ${MK_INET6_SUPPORT} != "no" +CFLAGS+= -DINET6 +.endif .include Modified: head/usr.sbin/nfsdumpstate/nfsdumpstate.c ============================================================================== --- head/usr.sbin/nfsdumpstate/nfsdumpstate.c Sat Apr 13 20:49:16 2019 (r346189) +++ head/usr.sbin/nfsdumpstate/nfsdumpstate.c Sat Apr 13 21:45:45 2019 (r346190) @@ -121,13 +121,14 @@ dump_openstate(void) { struct nfsd_dumplist dumplist; int cnt, i; + char nbuf[INET6_ADDRSTRLEN]; dumplist.ndl_size = DUMPSIZE; dumplist.ndl_list = (void *)dp; if (nfssvc(NFSSVC_DUMPCLIENTS, &dumplist) < 0) errx(1, "Can't perform dump clients syscall"); - printf("%-13s %9.9s %9.9s %9.9s %9.9s %9.9s %9.9s %-15s %s\n", + printf("%-13s %9.9s %9.9s %9.9s %9.9s %9.9s %9.9s %-45s %s\n", "Flags", "OpenOwner", "Open", "LockOwner", "Lock", "Deleg", "OldDeleg", "Clientaddr", "ClientID"); /* @@ -143,9 +144,23 @@ dump_openstate(void) dp[cnt].ndcl_nlocks, dp[cnt].ndcl_ndelegs, dp[cnt].ndcl_nolddelegs); - if (dp[cnt].ndcl_addrfam == AF_INET) - printf("%-15s ", + switch (dp[cnt].ndcl_addrfam) { +#ifdef INET + case AF_INET: + printf("%-45s ", inet_ntoa(dp[cnt].ndcl_cbaddr.sin_addr)); + break; +#endif +#ifdef INET6 + case AF_INET6: + if (inet_ntop(AF_INET6, &dp[cnt].ndcl_cbaddr.sin6_addr, + nbuf, sizeof(nbuf)) != NULL) + printf("%-45s ", nbuf); + else + printf("%-45s ", " "); + break; +#endif + } for (i = 0; i < dp[cnt].ndcl_clid.nclid_idlen; i++) printf("%02x", dp[cnt].ndcl_clid.nclid_id[i]); printf("\n"); From owner-svn-src-all@freebsd.org Sat Apr 13 22:00:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 659A915846AB; Sat, 13 Apr 2019 22:00:10 +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 157D86D3BA; Sat, 13 Apr 2019 22:00:10 +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 C8F42F239; Sat, 13 Apr 2019 22:00:09 +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 x3DM09Qu085071; Sat, 13 Apr 2019 22:00:09 GMT (envelope-from rmacklem@FreeBSD.org) Received: (from rmacklem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DM09dG085066; Sat, 13 Apr 2019 22:00:09 GMT (envelope-from rmacklem@FreeBSD.org) Message-Id: <201904132200.x3DM09dG085066@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rmacklem set sender to rmacklem@FreeBSD.org using -f From: Rick Macklem Date: Sat, 13 Apr 2019 22:00:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346191 - in head/sys: fs/nfsserver modules/nfsd X-SVN-Group: head X-SVN-Commit-Author: rmacklem X-SVN-Commit-Paths: in head/sys: fs/nfsserver modules/nfsd X-SVN-Commit-Revision: 346191 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 157D86D3BA X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.982,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 22:00:10 -0000 Author: rmacklem Date: Sat Apr 13 22:00:09 2019 New Revision: 346191 URL: https://svnweb.freebsd.org/changeset/base/346191 Log: Add support for INET6 addresses to the kernel code that dumps open/lock state. PR#223036 reported that INET6 callback addresses were not printed by nfsdumpstate(8). This kernel patch adds INET6 addresses to the dump structure, so that nfsdumpstate(8) can print them out, post-r346190. The patch also includes the addition of #ifdef INET, INET6 as requested by bz@. PR: 223036 Reviewed by: bz, rgrimes MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D19839 Modified: head/sys/fs/nfsserver/nfs_nfsdserv.c head/sys/fs/nfsserver/nfs_nfsdstate.c head/sys/modules/nfsd/Makefile Modified: head/sys/fs/nfsserver/nfs_nfsdserv.c ============================================================================== --- head/sys/fs/nfsserver/nfs_nfsdserv.c Sat Apr 13 21:45:45 2019 (r346190) +++ head/sys/fs/nfsserver/nfs_nfsdserv.c Sat Apr 13 22:00:09 2019 (r346191) @@ -36,6 +36,8 @@ #include __FBSDID("$FreeBSD$"); +#include "opt_inet.h" +#include "opt_inet6.h" /* * nfs version 2, 3 and 4 server calls to vnode ops * - these routines generally have 3 phases @@ -3677,8 +3679,16 @@ nfsrvd_setclientid(struct nfsrv_descript *nd, __unused int i; int error = 0, idlen; struct nfsclient *clp = NULL; - struct sockaddr_in *rad; - u_char *verf, *ucp, *ucp2, addrbuf[24]; +#ifdef INET + struct sockaddr_in *rin; +#endif +#ifdef INET6 + struct sockaddr_in6 *rin6; +#endif +#if defined(INET) || defined(INET6) + u_char *ucp, *ucp2; +#endif + u_char *verf, *addrbuf; nfsquad_t clientid, confirm; struct thread *p = curthread; @@ -3706,9 +3716,9 @@ nfsrvd_setclientid(struct nfsrv_descript *nd, __unused clp->lc_stateid = malloc(sizeof(struct nfsstatehead) * nfsrv_statehashsize, M_NFSDCLIENT, M_WAITOK); NFSINITSOCKMUTEX(&clp->lc_req.nr_mtx); - clp->lc_req.nr_nam = malloc(sizeof(*clp->lc_req.nr_nam), M_SONAME, + /* Allocated large enough for an AF_INET or AF_INET6 socket. */ + clp->lc_req.nr_nam = malloc(sizeof(struct sockaddr_in6), M_SONAME, M_WAITOK | M_ZERO); - NFSSOCKADDRSIZE(clp->lc_req.nr_nam, sizeof (struct sockaddr_in)); clp->lc_req.nr_cred = NULL; NFSBCOPY(verf, clp->lc_verf, NFSX_VERF); clp->lc_idlen = idlen; @@ -3750,17 +3760,46 @@ nfsrvd_setclientid(struct nfsrv_descript *nd, __unused */ nd->nd_repstat = nfsrv_setclient(nd, &clp, &clientid, &confirm, p); if (nd->nd_repstat == NFSERR_CLIDINUSE) { - if (clp->lc_flags & LCL_TCPCALLBACK) - (void) nfsm_strtom(nd, "tcp", 3); - else - (void) nfsm_strtom(nd, "udp", 3); - rad = NFSSOCKADDR(clp->lc_req.nr_nam, struct sockaddr_in *); - ucp = (u_char *)&rad->sin_addr.s_addr; - ucp2 = (u_char *)&rad->sin_port; - sprintf(addrbuf, "%d.%d.%d.%d.%d.%d", ucp[0] & 0xff, - ucp[1] & 0xff, ucp[2] & 0xff, ucp[3] & 0xff, - ucp2[0] & 0xff, ucp2[1] & 0xff); + /* + * 8 is the maximum length of the port# string. + */ + addrbuf = malloc(INET6_ADDRSTRLEN + 8, M_TEMP, M_WAITOK); + switch (clp->lc_req.nr_nam->sa_family) { +#ifdef INET + case AF_INET: + if (clp->lc_flags & LCL_TCPCALLBACK) + (void) nfsm_strtom(nd, "tcp", 3); + else + (void) nfsm_strtom(nd, "udp", 3); + rin = (struct sockaddr_in *)clp->lc_req.nr_nam; + ucp = (u_char *)&rin->sin_addr.s_addr; + ucp2 = (u_char *)&rin->sin_port; + sprintf(addrbuf, "%d.%d.%d.%d.%d.%d", ucp[0] & 0xff, + ucp[1] & 0xff, ucp[2] & 0xff, ucp[3] & 0xff, + ucp2[0] & 0xff, ucp2[1] & 0xff); + break; +#endif +#ifdef INET6 + case AF_INET6: + if (clp->lc_flags & LCL_TCPCALLBACK) + (void) nfsm_strtom(nd, "tcp6", 4); + else + (void) nfsm_strtom(nd, "udp6", 4); + rin6 = (struct sockaddr_in6 *)clp->lc_req.nr_nam; + ucp = inet_ntop(AF_INET6, &rin6->sin6_addr, addrbuf, + INET6_ADDRSTRLEN); + if (ucp != NULL) + i = strlen(ucp); + else + i = 0; + ucp2 = (u_char *)&rin6->sin6_port; + sprintf(&addrbuf[i], ".%d.%d", ucp2[0] & 0xff, + ucp2[1] & 0xff); + break; +#endif + } (void) nfsm_strtom(nd, addrbuf, strlen(addrbuf)); + free(addrbuf, M_TEMP); } if (clp) { free(clp->lc_req.nr_nam, M_SONAME); @@ -3964,7 +4003,12 @@ nfsrvd_exchangeid(struct nfsrv_descript *nd, __unused uint32_t sp4type, v41flags; uint64_t owner_minor; struct timespec verstime; - struct sockaddr_in *sad, *rad; +#ifdef INET + struct sockaddr_in *sin, *rin; +#endif +#ifdef INET6 + struct sockaddr_in6 *sin6, *rin6; +#endif struct thread *p = curthread; if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) { @@ -3987,16 +4031,31 @@ nfsrvd_exchangeid(struct nfsrv_descript *nd, __unused clp->lc_stateid = malloc(sizeof(struct nfsstatehead) * nfsrv_statehashsize, M_NFSDCLIENT, M_WAITOK); NFSINITSOCKMUTEX(&clp->lc_req.nr_mtx); - clp->lc_req.nr_nam = malloc(sizeof(*clp->lc_req.nr_nam), M_SONAME, + /* Allocated large enough for an AF_INET or AF_INET6 socket. */ + clp->lc_req.nr_nam = malloc(sizeof(struct sockaddr_in6), M_SONAME, M_WAITOK | M_ZERO); - NFSSOCKADDRSIZE(clp->lc_req.nr_nam, sizeof (struct sockaddr_in)); - sad = NFSSOCKADDR(nd->nd_nam, struct sockaddr_in *); - rad = NFSSOCKADDR(clp->lc_req.nr_nam, struct sockaddr_in *); - rad->sin_family = AF_INET; - rad->sin_addr.s_addr = 0; - rad->sin_port = 0; - if (sad->sin_family == AF_INET) - rad->sin_addr.s_addr = sad->sin_addr.s_addr; + switch (nd->nd_nam->sa_family) { +#ifdef INET + case AF_INET: + rin = (struct sockaddr_in *)clp->lc_req.nr_nam; + sin = (struct sockaddr_in *)nd->nd_nam; + rin->sin_family = AF_INET; + rin->sin_len = sizeof(struct sockaddr_in); + rin->sin_port = 0; + rin->sin_addr.s_addr = sin->sin_addr.s_addr; + break; +#endif +#ifdef INET6 + case AF_INET6: + rin6 = (struct sockaddr_in6 *)clp->lc_req.nr_nam; + sin6 = (struct sockaddr_in6 *)nd->nd_nam; + rin6->sin6_family = AF_INET6; + rin6->sin6_len = sizeof(struct sockaddr_in6); + rin6->sin6_port = 0; + rin6->sin6_addr = sin6->sin6_addr; + break; +#endif + } clp->lc_req.nr_cred = NULL; NFSBCOPY(verf, clp->lc_verf, NFSX_VERF); clp->lc_idlen = idlen; Modified: head/sys/fs/nfsserver/nfs_nfsdstate.c ============================================================================== --- head/sys/fs/nfsserver/nfs_nfsdstate.c Sat Apr 13 21:45:45 2019 (r346190) +++ head/sys/fs/nfsserver/nfs_nfsdstate.c Sat Apr 13 22:00:09 2019 (r346191) @@ -30,6 +30,8 @@ #include __FBSDID("$FreeBSD$"); +#include "opt_inet.h" +#include "opt_inet6.h" #ifndef APPLEKEXT #include #include @@ -248,7 +250,12 @@ nfsrv_setclient(struct nfsrv_descript *nd, struct nfsc struct nfsclient *clp = NULL, *new_clp = *new_clpp; int i, error = 0, ret; struct nfsstate *stp, *tstp; - struct sockaddr_in *sad, *rad; +#ifdef INET + struct sockaddr_in *sin, *rin; +#endif +#ifdef INET6 + struct sockaddr_in6 *sin6, *rin6; +#endif struct nfsdsession *sep, *nsep; int zapit = 0, gotit, hasstate = 0, igotlock; static u_int64_t confirm_index = 0; @@ -400,10 +407,24 @@ nfsrv_setclient(struct nfsrv_descript *nd, struct nfsc * If the uid doesn't match, return NFSERR_CLIDINUSE after * filling out the correct ipaddr and portnum. */ - sad = NFSSOCKADDR(new_clp->lc_req.nr_nam, struct sockaddr_in *); - rad = NFSSOCKADDR(clp->lc_req.nr_nam, struct sockaddr_in *); - sad->sin_addr.s_addr = rad->sin_addr.s_addr; - sad->sin_port = rad->sin_port; + switch (clp->lc_req.nr_nam->sa_family) { +#ifdef INET + case AF_INET: + sin = (struct sockaddr_in *)new_clp->lc_req.nr_nam; + rin = (struct sockaddr_in *)clp->lc_req.nr_nam; + sin->sin_addr.s_addr = rin->sin_addr.s_addr; + sin->sin_port = rin->sin_port; + break; +#endif +#ifdef INET6 + case AF_INET6: + sin6 = (struct sockaddr_in6 *)new_clp->lc_req.nr_nam; + rin6 = (struct sockaddr_in6 *)clp->lc_req.nr_nam; + sin6->sin6_addr = rin6->sin6_addr; + sin6->sin6_port = rin6->sin6_port; + break; +#endif + } NFSLOCKV4ROOTMUTEX(); nfsv4_unlock(&nfsv4rootfs_lock, 1); NFSUNLOCKV4ROOTMUTEX(); @@ -956,9 +977,13 @@ nfsrv_dumpaclient(struct nfsclient *clp, struct nfsd_d { struct nfsstate *stp, *openstp, *lckownstp; struct nfslock *lop; - struct sockaddr *sad; - struct sockaddr_in *rad; - struct sockaddr_in6 *rad6; + sa_family_t af; +#ifdef INET + struct sockaddr_in *rin; +#endif +#ifdef INET6 + struct sockaddr_in6 *rin6; +#endif dumpp->ndcl_nopenowners = dumpp->ndcl_nlockowners = 0; dumpp->ndcl_nopens = dumpp->ndcl_nlocks = 0; @@ -966,14 +991,21 @@ nfsrv_dumpaclient(struct nfsclient *clp, struct nfsd_d dumpp->ndcl_flags = clp->lc_flags; dumpp->ndcl_clid.nclid_idlen = clp->lc_idlen; NFSBCOPY(clp->lc_id, dumpp->ndcl_clid.nclid_id, clp->lc_idlen); - sad = NFSSOCKADDR(clp->lc_req.nr_nam, struct sockaddr *); - dumpp->ndcl_addrfam = sad->sa_family; - if (sad->sa_family == AF_INET) { - rad = (struct sockaddr_in *)sad; - dumpp->ndcl_cbaddr.sin_addr = rad->sin_addr; - } else { - rad6 = (struct sockaddr_in6 *)sad; - dumpp->ndcl_cbaddr.sin6_addr = rad6->sin6_addr; + af = clp->lc_req.nr_nam->sa_family; + dumpp->ndcl_addrfam = af; + switch (af) { +#ifdef INET + case AF_INET: + rin = (struct sockaddr_in *)clp->lc_req.nr_nam; + dumpp->ndcl_cbaddr.sin_addr = rin->sin_addr; + break; +#endif +#ifdef INET6 + case AF_INET6: + rin6 = (struct sockaddr_in6 *)clp->lc_req.nr_nam; + dumpp->ndcl_cbaddr.sin6_addr = rin6->sin6_addr; + break; +#endif } /* @@ -1014,9 +1046,13 @@ nfsrv_dumplocks(vnode_t vp, struct nfsd_dumplocks *ldu struct nfslock *lop; int cnt = 0; struct nfslockfile *lfp; - struct sockaddr *sad; - struct sockaddr_in *rad; - struct sockaddr_in6 *rad6; + sa_family_t af; +#ifdef INET + struct sockaddr_in *rin; +#endif +#ifdef INET6 + struct sockaddr_in6 *rin6; +#endif int ret; fhandle_t nfh; @@ -1058,14 +1094,22 @@ nfsrv_dumplocks(vnode_t vp, struct nfsd_dumplocks *ldu ldumpp[cnt].ndlck_clid.nclid_idlen = stp->ls_clp->lc_idlen; NFSBCOPY(stp->ls_clp->lc_id, ldumpp[cnt].ndlck_clid.nclid_id, stp->ls_clp->lc_idlen); - sad=NFSSOCKADDR(stp->ls_clp->lc_req.nr_nam, struct sockaddr *); - ldumpp[cnt].ndlck_addrfam = sad->sa_family; - if (sad->sa_family == AF_INET) { - rad = (struct sockaddr_in *)sad; - ldumpp[cnt].ndlck_cbaddr.sin_addr = rad->sin_addr; - } else { - rad6 = (struct sockaddr_in6 *)sad; - ldumpp[cnt].ndlck_cbaddr.sin6_addr = rad6->sin6_addr; + af = stp->ls_clp->lc_req.nr_nam->sa_family; + ldumpp[cnt].ndlck_addrfam = af; + switch (af) { +#ifdef INET + case AF_INET: + rin = (struct sockaddr_in *)stp->ls_clp->lc_req.nr_nam; + ldumpp[cnt].ndlck_cbaddr.sin_addr = rin->sin_addr; + break; +#endif +#ifdef INET6 + case AF_INET6: + rin6 = (struct sockaddr_in6 *) + stp->ls_clp->lc_req.nr_nam; + ldumpp[cnt].ndlck_cbaddr.sin6_addr = rin6->sin6_addr; + break; +#endif } stp = LIST_NEXT(stp, ls_file); cnt++; @@ -1090,14 +1134,22 @@ nfsrv_dumplocks(vnode_t vp, struct nfsd_dumplocks *ldu ldumpp[cnt].ndlck_clid.nclid_idlen = stp->ls_clp->lc_idlen; NFSBCOPY(stp->ls_clp->lc_id, ldumpp[cnt].ndlck_clid.nclid_id, stp->ls_clp->lc_idlen); - sad=NFSSOCKADDR(stp->ls_clp->lc_req.nr_nam, struct sockaddr *); - ldumpp[cnt].ndlck_addrfam = sad->sa_family; - if (sad->sa_family == AF_INET) { - rad = (struct sockaddr_in *)sad; - ldumpp[cnt].ndlck_cbaddr.sin_addr = rad->sin_addr; - } else { - rad6 = (struct sockaddr_in6 *)sad; - ldumpp[cnt].ndlck_cbaddr.sin6_addr = rad6->sin6_addr; + af = stp->ls_clp->lc_req.nr_nam->sa_family; + ldumpp[cnt].ndlck_addrfam = af; + switch (af) { +#ifdef INET + case AF_INET: + rin = (struct sockaddr_in *)stp->ls_clp->lc_req.nr_nam; + ldumpp[cnt].ndlck_cbaddr.sin_addr = rin->sin_addr; + break; +#endif +#ifdef INET6 + case AF_INET6: + rin6 = (struct sockaddr_in6 *) + stp->ls_clp->lc_req.nr_nam; + ldumpp[cnt].ndlck_cbaddr.sin6_addr = rin6->sin6_addr; + break; +#endif } lop = LIST_NEXT(lop, lo_lckfile); cnt++; @@ -1117,14 +1169,22 @@ nfsrv_dumplocks(vnode_t vp, struct nfsd_dumplocks *ldu ldumpp[cnt].ndlck_clid.nclid_idlen = stp->ls_clp->lc_idlen; NFSBCOPY(stp->ls_clp->lc_id, ldumpp[cnt].ndlck_clid.nclid_id, stp->ls_clp->lc_idlen); - sad=NFSSOCKADDR(stp->ls_clp->lc_req.nr_nam, struct sockaddr *); - ldumpp[cnt].ndlck_addrfam = sad->sa_family; - if (sad->sa_family == AF_INET) { - rad = (struct sockaddr_in *)sad; - ldumpp[cnt].ndlck_cbaddr.sin_addr = rad->sin_addr; - } else { - rad6 = (struct sockaddr_in6 *)sad; - ldumpp[cnt].ndlck_cbaddr.sin6_addr = rad6->sin6_addr; + af = stp->ls_clp->lc_req.nr_nam->sa_family; + ldumpp[cnt].ndlck_addrfam = af; + switch (af) { +#ifdef INET + case AF_INET: + rin = (struct sockaddr_in *)stp->ls_clp->lc_req.nr_nam; + ldumpp[cnt].ndlck_cbaddr.sin_addr = rin->sin_addr; + break; +#endif +#ifdef INET6 + case AF_INET6: + rin6 = (struct sockaddr_in6 *) + stp->ls_clp->lc_req.nr_nam; + ldumpp[cnt].ndlck_cbaddr.sin6_addr = rin6->sin6_addr; + break; +#endif } stp = LIST_NEXT(stp, ls_file); cnt++; @@ -3994,9 +4054,15 @@ nfsrv_getclientipaddr(struct nfsrv_descript *nd, struc { u_int32_t *tl; u_char *cp, *cp2; - int i, j; - struct sockaddr_in *rad, *sad; - u_char protocol[5], addr[24]; + int i, j, maxalen = 0, minalen = 0; + sa_family_t af; +#ifdef INET + struct sockaddr_in *rin, *sin; +#endif +#ifdef INET6 + struct sockaddr_in6 *rin6, *sin6; +#endif + u_char *addr; int error = 0, cantparse = 0; union { in_addr_t ival; @@ -4007,27 +4073,44 @@ nfsrv_getclientipaddr(struct nfsrv_descript *nd, struc u_char cval[2]; } port; - rad = NFSSOCKADDR(clp->lc_req.nr_nam, struct sockaddr_in *); - rad->sin_family = AF_INET; - rad->sin_len = sizeof (struct sockaddr_in); - rad->sin_addr.s_addr = 0; - rad->sin_port = 0; + /* 8 is the maximum length of the port# string. */ + addr = malloc(INET6_ADDRSTRLEN + 8, M_TEMP, M_WAITOK); clp->lc_req.nr_client = NULL; clp->lc_req.nr_lock = 0; + af = AF_UNSPEC; NFSM_DISSECT(tl, u_int32_t *, NFSX_UNSIGNED); i = fxdr_unsigned(int, *tl); if (i >= 3 && i <= 4) { - error = nfsrv_mtostr(nd, protocol, i); + error = nfsrv_mtostr(nd, addr, i); if (error) goto nfsmout; - if (!strcmp(protocol, "tcp")) { +#ifdef INET + if (!strcmp(addr, "tcp")) { clp->lc_flags |= LCL_TCPCALLBACK; clp->lc_req.nr_sotype = SOCK_STREAM; clp->lc_req.nr_soproto = IPPROTO_TCP; - } else if (!strcmp(protocol, "udp")) { + af = AF_INET; + } else if (!strcmp(addr, "udp")) { clp->lc_req.nr_sotype = SOCK_DGRAM; clp->lc_req.nr_soproto = IPPROTO_UDP; - } else { + af = AF_INET; + } +#endif +#ifdef INET6 + if (af == AF_UNSPEC) { + if (!strcmp(addr, "tcp6")) { + clp->lc_flags |= LCL_TCPCALLBACK; + clp->lc_req.nr_sotype = SOCK_STREAM; + clp->lc_req.nr_soproto = IPPROTO_TCP; + af = AF_INET6; + } else if (!strcmp(addr, "udp6")) { + clp->lc_req.nr_sotype = SOCK_DGRAM; + clp->lc_req.nr_soproto = IPPROTO_UDP; + af = AF_INET6; + } + } +#endif + if (af == AF_UNSPEC) { cantparse = 1; } } else { @@ -4038,6 +4121,36 @@ nfsrv_getclientipaddr(struct nfsrv_descript *nd, struc goto nfsmout; } } + /* + * The caller has allocated clp->lc_req.nr_nam to be large enough + * for either AF_INET or AF_INET6 and zeroed out the contents. + * maxalen is set to the maximum length of the host IP address string + * plus 8 for the maximum length of the port#. + * minalen is set to the minimum length of the host IP address string + * plus 4 for the minimum length of the port#. + * These lengths do not include NULL termination, + * so INET[6]_ADDRSTRLEN - 1 is used in the calculations. + */ + switch (af) { +#ifdef INET + case AF_INET: + rin = (struct sockaddr_in *)clp->lc_req.nr_nam; + rin->sin_family = AF_INET; + rin->sin_len = sizeof(struct sockaddr_in); + maxalen = INET_ADDRSTRLEN - 1 + 8; + minalen = 7 + 4; + break; +#endif +#ifdef INET6 + case AF_INET6: + rin6 = (struct sockaddr_in6 *)clp->lc_req.nr_nam; + rin6->sin6_family = AF_INET6; + rin6->sin6_len = sizeof(struct sockaddr_in6); + maxalen = INET6_ADDRSTRLEN - 1 + 8; + minalen = 3 + 4; + break; +#endif + } NFSM_DISSECT(tl, u_int32_t *, NFSX_UNSIGNED); i = fxdr_unsigned(int, *tl); if (i < 0) { @@ -4045,18 +4158,43 @@ nfsrv_getclientipaddr(struct nfsrv_descript *nd, struc goto nfsmout; } else if (i == 0) { cantparse = 1; - } else if (!cantparse && i <= 23 && i >= 11) { + } else if (!cantparse && i <= maxalen && i >= minalen) { error = nfsrv_mtostr(nd, addr, i); if (error) goto nfsmout; /* * Parse out the address fields. We expect 6 decimal numbers - * separated by '.'s. + * separated by '.'s for AF_INET and two decimal numbers + * preceeded by '.'s for AF_INET6. */ - cp = addr; - i = 0; - while (*cp && i < 6) { + cp = NULL; + switch (af) { +#ifdef INET6 + /* + * For AF_INET6, first parse the host address. + */ + case AF_INET6: + cp = strchr(addr, '.'); + if (cp != NULL) { + *cp++ = '\0'; + if (inet_pton(af, addr, &rin6->sin6_addr) == 1) + i = 4; + else { + cp = NULL; + cantparse = 1; + } + } + break; +#endif +#ifdef INET + case AF_INET: + cp = addr; + i = 0; + break; +#endif + } + while (cp != NULL && *cp && i < 6) { cp2 = cp; while (*cp2 && *cp2 != '.') cp2++; @@ -4080,11 +4218,30 @@ nfsrv_getclientipaddr(struct nfsrv_descript *nd, struc i++; } if (!cantparse) { - if (ip.ival != 0x0) { - rad->sin_addr.s_addr = htonl(ip.ival); - rad->sin_port = htons(port.sval); - } else { - cantparse = 1; + /* + * The host address INADDR_ANY is (mis)used to indicate + * "there is no valid callback address". + */ + switch (af) { +#ifdef INET6 + case AF_INET6: + if (!IN6_ARE_ADDR_EQUAL(&rin6->sin6_addr, + &in6addr_any)) + rin6->sin6_port = htons(port.sval); + else + cantparse = 1; + break; +#endif +#ifdef INET + case AF_INET: + if (ip.ival != INADDR_ANY) { + rin->sin_addr.s_addr = htonl(ip.ival); + rin->sin_port = htons(port.sval); + } else { + cantparse = 1; + } + break; +#endif } } } else { @@ -4096,14 +4253,32 @@ nfsrv_getclientipaddr(struct nfsrv_descript *nd, struc } } if (cantparse) { - sad = NFSSOCKADDR(nd->nd_nam, struct sockaddr_in *); - if (sad->sin_family == AF_INET) { - rad->sin_addr.s_addr = sad->sin_addr.s_addr; - rad->sin_port = 0x0; + switch (nd->nd_nam->sa_family) { +#ifdef INET + case AF_INET: + sin = (struct sockaddr_in *)nd->nd_nam; + rin = (struct sockaddr_in *)clp->lc_req.nr_nam; + rin->sin_family = AF_INET; + rin->sin_len = sizeof(struct sockaddr_in); + rin->sin_addr.s_addr = sin->sin_addr.s_addr; + rin->sin_port = 0x0; + break; +#endif +#ifdef INET6 + case AF_INET6: + sin6 = (struct sockaddr_in6 *)nd->nd_nam; + rin6 = (struct sockaddr_in6 *)clp->lc_req.nr_nam; + rin6->sin6_family = AF_INET6; + rin6->sin6_len = sizeof(struct sockaddr_in6); + rin6->sin6_addr = sin6->sin6_addr; + rin6->sin6_port = 0x0; + break; +#endif } clp->lc_program = 0; } nfsmout: + free(addr, M_TEMP); NFSEXITCODE2(error, nd); return (error); } Modified: head/sys/modules/nfsd/Makefile ============================================================================== --- head/sys/modules/nfsd/Makefile Sat Apr 13 21:45:45 2019 (r346190) +++ head/sys/modules/nfsd/Makefile Sat Apr 13 22:00:09 2019 (r346191) @@ -14,6 +14,7 @@ SRCS= vnode_if.h \ nfs_nfsdport.c \ opt_ufs.h \ opt_nfs.h \ + opt_inet.h \ opt_inet6.h \ opt_kgssapi.h From owner-svn-src-all@freebsd.org Sat Apr 13 23:26:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3D5C01585DB7; Sat, 13 Apr 2019 23:26:03 +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 D24476F8EA; Sat, 13 Apr 2019 23:26:02 +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 AB44F1818A; Sat, 13 Apr 2019 23:26:02 +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 x3DNQ2Z7032538; Sat, 13 Apr 2019 23:26:02 GMT (envelope-from rmacklem@FreeBSD.org) Received: (from rmacklem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DNQ2Fv032537; Sat, 13 Apr 2019 23:26:02 GMT (envelope-from rmacklem@FreeBSD.org) Message-Id: <201904132326.x3DNQ2Fv032537@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rmacklem set sender to rmacklem@FreeBSD.org using -f From: Rick Macklem Date: Sat, 13 Apr 2019 23:26:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346192 - head/usr.bin/nfsstat X-SVN-Group: head X-SVN-Commit-Author: rmacklem X-SVN-Commit-Paths: head/usr.bin/nfsstat X-SVN-Commit-Revision: 346192 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D24476F8EA X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 23:26:03 -0000 Author: rmacklem Date: Sat Apr 13 23:26:02 2019 New Revision: 346192 URL: https://svnweb.freebsd.org/changeset/base/346192 Log: Fix printing of the line that starts with "LocalOpen...". When "nfsstat -E -c" was done, the title line starting with "LocalOpen..." was not being displayed. This was introduced by r328588. MFC after: 2 weeks Modified: head/usr.bin/nfsstat/nfsstat.c Modified: head/usr.bin/nfsstat/nfsstat.c ============================================================================== --- head/usr.bin/nfsstat/nfsstat.c Sat Apr 13 22:00:09 2019 (r346191) +++ head/usr.bin/nfsstat/nfsstat.c Sat Apr 13 23:26:02 2019 (r346192) @@ -790,7 +790,7 @@ exp_intpr(int clientOnly, int serverOnly, int nfs41) (uintmax_t)ext_nfsstats.cllocalopenowners); xo_emit("{T:LocalOpen/%13.13s}{T:LocalLown/%13.13s}" - "{T:LocalLock\n"); + "{T:LocalLock/%13.13s}\n"); xo_emit("{:localopen/%13ju}{:locallown/%13ju}" "{:locallock/%13ju}\n", (uintmax_t)ext_nfsstats.cllocalopens, From owner-svn-src-all@freebsd.org Sat Apr 13 23:37:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0241E1586183; Sat, 13 Apr 2019 23:37:29 +0000 (UTC) (envelope-from chuck@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 6E93A70228; Sat, 13 Apr 2019 23:37:28 +0000 (UTC) (envelope-from chuck@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 3B85618335; Sat, 13 Apr 2019 23:37:28 +0000 (UTC) (envelope-from chuck@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x3DNbSEP038622; Sat, 13 Apr 2019 23:37:28 GMT (envelope-from chuck@FreeBSD.org) Received: (from chuck@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x3DNbSHA038621; Sat, 13 Apr 2019 23:37:28 GMT (envelope-from chuck@FreeBSD.org) Message-Id: <201904132337.x3DNbSHA038621@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: chuck set sender to chuck@FreeBSD.org using -f From: Chuck Tuffli Date: Sat, 13 Apr 2019 23:37:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346194 - head/usr.sbin/bhyve X-SVN-Group: head X-SVN-Commit-Author: chuck X-SVN-Commit-Paths: head/usr.sbin/bhyve X-SVN-Commit-Revision: 346194 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6E93A70228 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Apr 2019 23:37:29 -0000 Author: chuck Date: Sat Apr 13 23:37:27 2019 New Revision: 346194 URL: https://svnweb.freebsd.org/changeset/base/346194 Log: Revert r345171 pending review Backing out commit pending further discussion on the PCIe version supported by pseudo (i.e. emulated) devices. See Differential for details. Reviewed by: imp Approved by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D19580 Modified: head/usr.sbin/bhyve/pci_emul.c Modified: head/usr.sbin/bhyve/pci_emul.c ============================================================================== --- head/usr.sbin/bhyve/pci_emul.c Sat Apr 13 23:32:28 2019 (r346193) +++ head/usr.sbin/bhyve/pci_emul.c Sat Apr 13 23:37:27 2019 (r346194) @@ -953,10 +953,7 @@ pci_emul_add_pciecap(struct pci_devinst *pi, int type) bzero(&pciecap, sizeof(pciecap)); pciecap.capid = PCIY_EXPRESS; - pciecap.pcie_capabilities = PCIECAP_VERSION | type; - /* Devices starting with version 1.1 must set the RBER bit */ - if (PCIECAP_VERSION >= 1) - pciecap.dev_capabilities = PCIEM_CAP_ROLE_ERR_RPT; + pciecap.pcie_capabilities = PCIECAP_VERSION | PCIEM_TYPE_ROOT_PORT; pciecap.link_capabilities = 0x411; /* gen1, x1 */ pciecap.link_status = 0x11; /* gen1, x1 */