From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 03:48:40 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 441C68E3; Tue, 1 Jan 2013 03:48:40 +0000 (UTC) (envelope-from andrew@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 26E9C8FC0A; Tue, 1 Jan 2013 03:48:40 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r013meD9074876; Tue, 1 Jan 2013 03:48:40 GMT (envelope-from andrew@svn.freebsd.org) Received: (from andrew@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r013meFP074875; Tue, 1 Jan 2013 03:48:40 GMT (envelope-from andrew@svn.freebsd.org) Message-Id: <201301010348.r013meFP074875@svn.freebsd.org> From: Andrew Turner Date: Tue, 1 Jan 2013 03:48:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244919 - head/sys/arm/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 03:48:40 -0000 Author: andrew Date: Tue Jan 1 03:48:39 2013 New Revision: 244919 URL: http://svnweb.freebsd.org/changeset/base/244919 Log: Document the known values of the RTL release field in the cache is register Modified: head/sys/arm/include/pl310.h Modified: head/sys/arm/include/pl310.h ============================================================================== --- head/sys/arm/include/pl310.h Tue Jan 1 00:45:28 2013 (r244918) +++ head/sys/arm/include/pl310.h Tue Jan 1 03:48:39 2013 (r244919) @@ -37,8 +37,16 @@ #define PL310_CACHE_ID 0x000 #define CACHE_ID_RELEASE_SHIFT 0 #define CACHE_ID_RELEASE_MASK 0x3f +#define CACHE_ID_RELEASE_r0p0 0x00 +#define CACHE_ID_RELEASE_r1p0 0x02 +#define CACHE_ID_RELEASE_r2p0 0x04 +#define CACHE_ID_RELEASE_r3p0 0x05 +#define CACHE_ID_RELEASE_r3p1 0x06 +#define CACHE_ID_RELEASE_r3p2 0x08 +#define CACHE_ID_RELEASE_r3p3 0x09 #define CACHE_ID_PARTNUM_SHIFT 6 #define CACHE_ID_PARTNUM_MASK 0xf +#define CACHE_ID_PARTNUM_VALUE 0x3 #define PL310_CACHE_TYPE 0x004 #define PL310_CTRL 0x100 #define CTRL_ENABLED 0x01 From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 04:05:07 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CE007C47; Tue, 1 Jan 2013 04:05:07 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from smtp-out3.electric.net (smtp-out3.electric.net [72.35.12.187]) by mx1.freebsd.org (Postfix) with ESMTP id A66868FC08; Tue, 1 Jan 2013 04:05:07 +0000 (UTC) Received: from [204.11.168.155] (helo=securemail.onebox.com) by skoda.electric.net with esmtp (Exim 4.77) (envelope-from ) id 1Tpt19-0006fx-Vy; Mon, 31 Dec 2012 19:59:55 -0800 Received: from localhost (unverified [49.226.227.85]) by securemail.onebox.com (Rockliffe SMTPRA 9.3.1) with ESMTP id ; Mon, 31 Dec 2012 22:59:56 -0500 Date: Tue, 1 Jan 2013 16:59:15 +1300 From: Andrew Turner To: Oleksandr Tymoshenko Subject: Re: svn commit: r244914 - in head/sys/arm: arm include ti/omap4 Message-ID: <20130101165915.1f903645@fubar.geek.nz> In-Reply-To: <50E20F2B.7080704@freebsd.org> References: <201212312119.qBVLJi3V009555@svn.freebsd.org> <20130101105353.14492943@fubar.geek.nz> <50E20F2B.7080704@freebsd.org> Organization: SMTP: smtp.paradise.net.nz X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.6; i386-portbld-freebsd8.1) X-Pirate: Arrrr Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 04:05:07 -0000 On Mon, 31 Dec 2012 14:18:19 -0800 Oleksandr Tymoshenko wrote: > On 12/31/2012 1:53 PM, Andrew Turner wrote: > > On Mon, 31 Dec 2012 21:19:44 +0000 (UTC) > > Oleksandr Tymoshenko wrote: > >> Modified: head/sys/arm/arm/pl310.c > >> ============================================================================== > >> --- head/sys/arm/arm/pl310.c Mon Dec 31 21:09:39 2012 > >> (r244913) +++ head/sys/arm/arm/pl310.c Mon Dec 31 21:19:44 > > ... > >> @@ -157,29 +131,46 @@ pl310_wait_background_op(uint32_t off, u > >> static __inline void > >> pl310_cache_sync(void) > >> { > >> - pl310_write4(PL310_CACHE_SYNC, 0); > >> + if ((pl310_softc == NULL) || !pl310_softc->sc_enabled) > >> + return; > >> + > >> +#ifdef PL310_ERRATA_753970 > >> + /* Write uncached PL310 register */ > >> + pl310_write4(pl310_softc, 0x740, 0xffffffff); > >> +#else > >> + pl310_write4(pl310_softc, PL310_CACHE_SYNC, 0xffffffff); > >> +#endif > >> } > > How hard would it be to detect if we need this errata at boot? From > > the errata document it appears to only be present in the r3p0 > > revision of the controller. We can then do something like: > > > > #ifdef PL310_ERRATA_753970 > > if (errata_753970) > > pl310_write4(pl310_softc, 0x740, 0xffffffff); > > else > > #endif > > pl310_write4(pl310_softc, PL310_CACHE_SYNC, 0xffffffff); > > > > > > > I think we can use RTL release field of Cache ID register to > determine actual hardware release > and act accordingly. > > Yes, that appears to be correct, I have committed the known values of the RTL release field, from the ARM documentation, in r244919. I can have a look at detecting which cache controller we are on and adjust our behaviour accordingly but won't have any hardware to test with until the end of the week. Andrew From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 04:35:06 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 9A63BF7A; Tue, 1 Jan 2013 04:35:06 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from smtp-out3.electric.net (smtp-out3.electric.net [72.35.12.188]) by mx1.freebsd.org (Postfix) with ESMTP id 457A48FC12; Tue, 1 Jan 2013 04:35:06 +0000 (UTC) Received: from [204.11.168.155] (helo=securemail.onebox.com) by opel.electric.net with esmtp (Exim 4.77) (envelope-from ) id 1TptZB-00083E-V7; Mon, 31 Dec 2012 20:35:05 -0800 Received: from localhost (unverified [49.226.227.85]) by securemail.onebox.com (Rockliffe SMTPRA 9.3.1) with ESMTP id ; Mon, 31 Dec 2012 23:35:06 -0500 Date: Tue, 1 Jan 2013 17:34:37 +1300 From: Andrew Turner To: Oleksandr Tymoshenko Subject: Re: svn commit: r244914 - in head/sys/arm: arm include ti/omap4 Message-ID: <20130101173437.33f43ce8@fubar.geek.nz> In-Reply-To: <20130101165915.1f903645@fubar.geek.nz> References: <201212312119.qBVLJi3V009555@svn.freebsd.org> <20130101105353.14492943@fubar.geek.nz> <50E20F2B.7080704@freebsd.org> <20130101165915.1f903645@fubar.geek.nz> Organization: SMTP: smtp.paradise.net.nz X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.6; i386-portbld-freebsd8.1) X-Pirate: Arrrr Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/hZkhpjxOqNpMwuDhuhq7=ut" Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 04:35:06 -0000 --MP_/hZkhpjxOqNpMwuDhuhq7=ut Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline On Tue, 1 Jan 2013 16:59:15 +1300 Andrew Turner wrote: > On Mon, 31 Dec 2012 14:18:19 -0800 > Oleksandr Tymoshenko wrote: > > I think we can use RTL release field of Cache ID register to > > determine actual hardware release > > and act accordingly. > > > > > Yes, that appears to be correct, I have committed the known values of > the RTL release field, from the ARM documentation, in r244919. I can > have a look at detecting which cache controller we are on and adjust > our behaviour accordingly but won't have any hardware to test with > until the end of the week. I have this untested patch that should only enable the errata when we detect it is required. Andrew --MP_/hZkhpjxOqNpMwuDhuhq7=ut Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=pl310_errata.diff Index: sys/arm/include/pl310.h =================================================================== --- sys/arm/include/pl310.h (revision 244919) +++ sys/arm/include/pl310.h (working copy) @@ -131,6 +131,7 @@ struct pl310_softc { void* sc_irq_h; int sc_enabled; struct mtx sc_mtx; + u_int sc_rtl_revision; }; /** Index: sys/arm/arm/pl310.c =================================================================== --- sys/arm/arm/pl310.c (revision 244918) +++ sys/arm/arm/pl310.c (working copy) @@ -135,11 +135,12 @@ pl310_cache_sync(void) return; #ifdef PL310_ERRATA_753970 - /* Write uncached PL310 register */ - pl310_write4(pl310_softc, 0x740, 0xffffffff); -#else - pl310_write4(pl310_softc, PL310_CACHE_SYNC, 0xffffffff); + if (sc->sc_rtl_release == CACHE_ID_RELEASE_r3p0) + /* Write uncached PL310 register */ + pl310_write4(pl310_softc, 0x740, 0xffffffff); + else #endif + pl310_write4(pl310_softc, PL310_CACHE_SYNC, 0xffffffff); } @@ -152,13 +153,17 @@ pl310_wbinv_all(void) PL310_LOCK(pl310_softc); #ifdef PL310_ERRATA_727915 - platform_pl310_write_debug(pl310_softc, 3); + if (sc->sc_rtl_release == CACHE_ID_RELEASE_r2p0 || + sc->sc_rtl_release == CACHE_ID_RELEASE_r3p0) + platform_pl310_write_debug(pl310_softc, 3); #endif pl310_write4(pl310_softc, PL310_CLEAN_INV_WAY, g_l2cache_way_mask); pl310_wait_background_op(PL310_CLEAN_INV_WAY, g_l2cache_way_mask); pl310_cache_sync(); #ifdef PL310_ERRATA_727915 - platform_pl310_write_debug(pl310_softc, 0); + if (sc->sc_rtl_release == CACHE_ID_RELEASE_r2p0 || + sc->sc_rtl_release == CACHE_ID_RELEASE_r3p0) + platform_pl310_write_debug(pl310_softc, 0); #endif PL310_UNLOCK(pl310_softc); } @@ -182,27 +187,32 @@ pl310_wbinv_range(vm_paddr_t start, vm_s #ifdef PL310_ERRATA_727915 - platform_pl310_write_debug(pl310_softc, 3); + if (sc->sc_rtl_release == CACHE_ID_RELEASE_r2p0 || + sc->sc_rtl_release == CACHE_ID_RELEASE_r3p0) + platform_pl310_write_debug(pl310_softc, 3); #endif while (size > 0) { #ifdef PL310_ERRATA_588369 - /* - * Errata 588369 says that clean + inv may keep the - * cache line if it was clean, the recommanded workaround - * is to clean then invalidate the cache line, with - * write-back and cache linefill disabled - */ - - pl310_write4(pl310_softc, PL310_CLEAN_LINE_PA, start); - pl310_write4(pl310_softc, PL310_INV_LINE_PA, start); -#else - pl310_write4(pl310_softc, PL310_CLEAN_INV_LINE_PA, start); + if (sc->sc_rtl_release <= CACHE_ID_RELEASE_r1p0) { + /* + * Errata 588369 says that clean + inv may keep the + * cache line if it was clean, the recommanded + * workaround is to clean then invalidate the cache + * line, with write-back and cache linefill disabled. + */ + pl310_write4(pl310_softc, PL310_CLEAN_LINE_PA, start); + pl310_write4(pl310_softc, PL310_INV_LINE_PA, start); + } else #endif + pl310_write4(pl310_softc, PL310_CLEAN_INV_LINE_PA, + start); start += g_l2cache_line_size; size -= g_l2cache_line_size; } #ifdef PL310_ERRATA_727915 - platform_pl310_write_debug(pl310_softc, 0); + if (sc->sc_rtl_release == CACHE_ID_RELEASE_r2p0 || + sc->sc_rtl_release == CACHE_ID_RELEASE_r3p0) + platform_pl310_write_debug(pl310_softc, 0); #endif pl310_cache_sync(); @@ -307,6 +317,8 @@ pl310_attach(device_t dev) pl310_filter, NULL, sc, &sc->sc_irq_h); cache_id = pl310_read4(sc, PL310_CACHE_ID); + sc->sc_rtl_release = (cache_id >> CACHE_ID_RELEASE_SHIFT) & + CACHE_ID_RELEASE_MASK; device_printf(dev, "Part number: 0x%x, release: 0x%x\n", (cache_id >> CACHE_ID_PARTNUM_SHIFT) & CACHE_ID_PARTNUM_MASK, (cache_id >> CACHE_ID_RELEASE_SHIFT) & CACHE_ID_RELEASE_MASK); --MP_/hZkhpjxOqNpMwuDhuhq7=ut-- From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 07:00:43 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 421BBA4B; Tue, 1 Jan 2013 07:00:43 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 259BC8FC0A; Tue, 1 Jan 2013 07:00:43 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0170hRY005358; Tue, 1 Jan 2013 07:00:43 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0170gO2005357; Tue, 1 Jan 2013 07:00:42 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301010700.r0170gO2005357@svn.freebsd.org> From: Xin LI Date: Tue, 1 Jan 2013 07:00:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r244920 - stable/9/sys/dev/arcmsr X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 07:00:43 -0000 Author: delphij Date: Tue Jan 1 07:00:42 2013 New Revision: 244920 URL: http://svnweb.freebsd.org/changeset/base/244920 Log: MFC r244369 (jimharris): Use CAM_DEV_NOT_THERE instead of CAM_SEL_TIMEOUT to report nonexistent LUNs for the virtual processor device. This removes lots of CAM warnings, and follows similar recent changes to tws(4) and twa(4) drivers. Also fix case where CAM_REQ_CMP was getting OR'd with CAM_DEV_NOT_THERE in the nonexistent LUN case, resulting in different CAM status (CAM_UA_TERMIO) getting reported to CAM. This issue existing previously, but was more subtle because it changed CAM_SEL_TIMEOUT to CAM_CMD_TIMEOUT. Sponsored by: Intel Reported and tested by: Willem Jan Withagen Modified: stable/9/sys/dev/arcmsr/arcmsr.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/arcmsr/arcmsr.c ============================================================================== --- stable/9/sys/dev/arcmsr/arcmsr.c Tue Jan 1 03:48:39 2013 (r244919) +++ stable/9/sys/dev/arcmsr/arcmsr.c Tue Jan 1 07:00:42 2013 (r244920) @@ -2432,14 +2432,13 @@ static void arcmsr_bus_reset(struct Adap static void arcmsr_handle_virtual_command(struct AdapterControlBlock *acb, union ccb * pccb) { - pccb->ccb_h.status |= CAM_REQ_CMP; switch (pccb->csio.cdb_io.cdb_bytes[0]) { case INQUIRY: { unsigned char inqdata[36]; char *buffer=pccb->csio.data_ptr; if (pccb->ccb_h.target_lun) { - pccb->ccb_h.status |= CAM_SEL_TIMEOUT; + pccb->ccb_h.status |= CAM_DEV_NOT_THERE; xpt_done(pccb); return; } @@ -2455,6 +2454,7 @@ static void arcmsr_handle_virtual_comman strncpy(&inqdata[16], "RAID controller ", 16); /* Product Identification */ strncpy(&inqdata[32], "R001", 4); /* Product Revision */ memcpy(buffer, inqdata, sizeof(inqdata)); + pccb->ccb_h.status |= CAM_REQ_CMP; xpt_done(pccb); } break; @@ -2464,10 +2464,12 @@ static void arcmsr_handle_virtual_comman pccb->ccb_h.status |= CAM_SCSI_STATUS_ERROR; pccb->csio.scsi_status = SCSI_STATUS_CHECK_COND; } + pccb->ccb_h.status |= CAM_REQ_CMP; xpt_done(pccb); } break; default: + pccb->ccb_h.status |= CAM_REQ_CMP; xpt_done(pccb); } } From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 07:02:34 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 10A6DBBD; Tue, 1 Jan 2013 07:02:34 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E705D8FC08; Tue, 1 Jan 2013 07:02:33 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0172XA0005793; Tue, 1 Jan 2013 07:02:33 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0172Xfd005790; Tue, 1 Jan 2013 07:02:33 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301010702.r0172Xfd005790@svn.freebsd.org> From: Xin LI Date: Tue, 1 Jan 2013 07:02:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r244921 - in stable/9: share/man/man4 sys/dev/arcmsr X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 07:02:34 -0000 Author: delphij Date: Tue Jan 1 07:02:33 2013 New Revision: 244921 URL: http://svnweb.freebsd.org/changeset/base/244921 Log: MFC r244406: Update arcmsr(4) to vendor version 1.20.00.26, this adds support for their new RAID adapter ARC-1214. Many thanks to Areca for continuing to support FreeBSD. Submitted by: 黃清隆 Ching-Lung Huang Modified: stable/9/share/man/man4/arcmsr.4 stable/9/sys/dev/arcmsr/arcmsr.c stable/9/sys/dev/arcmsr/arcmsr.h Directory Properties: stable/9/share/man/man4/ (props changed) stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/share/man/man4/arcmsr.4 ============================================================================== --- stable/9/share/man/man4/arcmsr.4 Tue Jan 1 07:00:42 2013 (r244920) +++ stable/9/share/man/man4/arcmsr.4 Tue Jan 1 07:02:33 2013 (r244921) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 3, 2012 +.Dd December 18, 2012 .Dt ARCMSR 4 .Os .Sh NAME @@ -100,6 +100,8 @@ ARC-1212 .It ARC-1213 .It +ARC-1214 +.It ARC-1220 .It ARC-1222 Modified: stable/9/sys/dev/arcmsr/arcmsr.c ============================================================================== --- stable/9/sys/dev/arcmsr/arcmsr.c Tue Jan 1 07:00:42 2013 (r244920) +++ stable/9/sys/dev/arcmsr/arcmsr.c Tue Jan 1 07:02:33 2013 (r244921) @@ -10,8 +10,7 @@ ****************************************************************************************** ************************************************************************ ** -** Copyright (c) 2004-2010 ARECA Co. Ltd. -** Erich Chen, Taipei Taiwan All rights reserved. +** Copyright (C) 2002 - 2010, Areca Technology Corporation All rights reserved. ** ** Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions @@ -74,6 +73,7 @@ ** 1.20.00.23 01/30/2012 Ching Huang Fixed Request requeued and Retrying command ** 1.20.00.24 06/11/2012 Ching Huang Fixed return sense data condition ** 1.20.00.25 08/17/2012 Ching Huang Fixed hotplug device no function on type A adapter +** 1.20.00.26 12/14/2012 Ching Huang Added support ARC1214 ****************************************************************************************** */ @@ -129,24 +129,10 @@ __FBSDID("$FreeBSD$"); #include #include #include - #define ARCMSR_LOCK_INIT(l, s) mtx_init(l, s, NULL, MTX_DEF) - #define ARCMSR_LOCK_DESTROY(l) mtx_destroy(l) - #define ARCMSR_LOCK_ACQUIRE(l) mtx_lock(l) - #define ARCMSR_LOCK_RELEASE(l) mtx_unlock(l) - #define ARCMSR_LOCK_TRY(l) mtx_trylock(l) - #define arcmsr_htole32(x) htole32(x) - typedef struct mtx arcmsr_lock_t; #else #include #include #include - #define ARCMSR_LOCK_INIT(l, s) simple_lock_init(l) - #define ARCMSR_LOCK_DESTROY(l) - #define ARCMSR_LOCK_ACQUIRE(l) simple_lock(l) - #define ARCMSR_LOCK_RELEASE(l) simple_unlock(l) - #define ARCMSR_LOCK_TRY(l) simple_lock_try(l) - #define arcmsr_htole32(x) (x) - typedef struct simplelock arcmsr_lock_t; #endif #if !defined(CAM_NEW_TRAN_CODE) && __FreeBSD_version >= 700025 @@ -159,23 +145,15 @@ __FBSDID("$FreeBSD$"); #define arcmsr_callout_init(a) callout_init(a); #endif -#define ARCMSR_DRIVER_VERSION "Driver Version 1.20.00.25 2012-08-17" +#define ARCMSR_DRIVER_VERSION "Driver Version 1.20.00.26 2012-12-14" #include -#define SRB_SIZE ((sizeof(struct CommandControlBlock)+0x1f) & 0xffe0) -#define ARCMSR_SRBS_POOL_SIZE (SRB_SIZE * ARCMSR_MAX_FREESRB_NUM) -/* -************************************************************************** -************************************************************************** -*/ -#define CHIP_REG_READ32(s, b, r) bus_space_read_4(acb->btag[b], acb->bhandle[b], offsetof(struct s, r)) -#define CHIP_REG_WRITE32(s, b, r, d) bus_space_write_4(acb->btag[b], acb->bhandle[b], offsetof(struct s, r), d) /* ************************************************************************** ************************************************************************** */ static void arcmsr_free_srb(struct CommandControlBlock *srb); -static struct CommandControlBlock * arcmsr_get_freesrb(struct AdapterControlBlock *acb); -static u_int8_t arcmsr_seek_cmd2abort(union ccb * abortccb); +static struct CommandControlBlock *arcmsr_get_freesrb(struct AdapterControlBlock *acb); +static u_int8_t arcmsr_seek_cmd2abort(union ccb *abortccb); static int arcmsr_probe(device_t dev); static int arcmsr_attach(device_t dev); static int arcmsr_detach(device_t dev); @@ -190,18 +168,20 @@ static void arcmsr_stop_adapter_bgrb(str static void arcmsr_start_adapter_bgrb(struct AdapterControlBlock *acb); static void arcmsr_iop_init(struct AdapterControlBlock *acb); static void arcmsr_flush_adapter_cache(struct AdapterControlBlock *acb); -static void arcmsr_post_ioctldata2iop(struct AdapterControlBlock *acb); +static void arcmsr_Read_iop_rqbuffer_data(struct AdapterControlBlock *acb, struct QBUFFER *prbuffer); +static void arcmsr_Write_data_2iop_wqbuffer(struct AdapterControlBlock *acb); static void arcmsr_abort_allcmd(struct AdapterControlBlock *acb); static void arcmsr_srb_complete(struct CommandControlBlock *srb, int stand_flag); static void arcmsr_iop_reset(struct AdapterControlBlock *acb); static void arcmsr_report_sense_info(struct CommandControlBlock *srb); -static void arcmsr_build_srb(struct CommandControlBlock *srb, bus_dma_segment_t * dm_segs, u_int32_t nseg); -static int arcmsr_iop_message_xfer(struct AdapterControlBlock *acb, union ccb * pccb); +static void arcmsr_build_srb(struct CommandControlBlock *srb, bus_dma_segment_t *dm_segs, u_int32_t nseg); +static int arcmsr_iop_message_xfer(struct AdapterControlBlock *acb, union ccb *pccb); static int arcmsr_resume(device_t dev); static int arcmsr_suspend(device_t dev); static void arcmsr_rescanLun_cb(struct cam_periph *periph, union ccb *ccb); -static void arcmsr_polling_devmap(void* arg); -static void arcmsr_srb_timeout(void* arg); +static void arcmsr_polling_devmap(void *arg); +static void arcmsr_srb_timeout(void *arg); +static void arcmsr_hbd_postqueue_isr(struct AdapterControlBlock *acb); #ifdef ARCMSR_DEBUG1 static void arcmsr_dump_data(struct AdapterControlBlock *acb); #endif @@ -293,12 +273,12 @@ static struct cdevsw arcmsr_cdevsw = { #endif { #if __FreeBSD_version < 503000 - struct AdapterControlBlock *acb=dev->si_drv1; + struct AdapterControlBlock *acb = dev->si_drv1; #else int unit = dev2unit(dev); struct AdapterControlBlock *acb = devclass_get_softc(arcmsr_devclass, unit); #endif - if(acb==NULL) { + if(acb == NULL) { return ENXIO; } return (0); @@ -318,12 +298,12 @@ static struct cdevsw arcmsr_cdevsw = { #endif { #if __FreeBSD_version < 503000 - struct AdapterControlBlock *acb=dev->si_drv1; + struct AdapterControlBlock *acb = dev->si_drv1; #else int unit = dev2unit(dev); struct AdapterControlBlock *acb = devclass_get_softc(arcmsr_devclass, unit); #endif - if(acb==NULL) { + if(acb == NULL) { return ENXIO; } return 0; @@ -343,13 +323,13 @@ static struct cdevsw arcmsr_cdevsw = { #endif { #if __FreeBSD_version < 503000 - struct AdapterControlBlock *acb=dev->si_drv1; + struct AdapterControlBlock *acb = dev->si_drv1; #else int unit = dev2unit(dev); struct AdapterControlBlock *acb = devclass_get_softc(arcmsr_devclass, unit); #endif - if(acb==NULL) { + if(acb == NULL) { return ENXIO; } return (arcmsr_iop_ioctlcmd(acb, ioctl_cmd, arg)); @@ -360,28 +340,34 @@ static struct cdevsw arcmsr_cdevsw = { */ static u_int32_t arcmsr_disable_allintr( struct AdapterControlBlock *acb) { - u_int32_t intmask_org=0; + u_int32_t intmask_org = 0; switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_A: { /* disable all outbound interrupt */ - intmask_org=CHIP_REG_READ32(HBA_MessageUnit, 0, outbound_intmask); /* disable outbound message0 int */ + intmask_org = CHIP_REG_READ32(HBA_MessageUnit, 0, outbound_intmask); /* disable outbound message0 int */ CHIP_REG_WRITE32(HBA_MessageUnit, 0, outbound_intmask, intmask_org|ARCMSR_MU_OUTBOUND_ALL_INTMASKENABLE); } break; case ACB_ADAPTER_TYPE_B: { /* disable all outbound interrupt */ - intmask_org=CHIP_REG_READ32(HBB_DOORBELL, + intmask_org = CHIP_REG_READ32(HBB_DOORBELL, 0, iop2drv_doorbell_mask) & (~ARCMSR_IOP2DRV_MESSAGE_CMD_DONE); /* disable outbound message0 int */ CHIP_REG_WRITE32(HBB_DOORBELL, 0, iop2drv_doorbell_mask, 0); /* disable all interrupt */ } break; case ACB_ADAPTER_TYPE_C: { /* disable all outbound interrupt */ - intmask_org=CHIP_REG_READ32(HBC_MessageUnit, 0, host_int_mask) ; /* disable outbound message0 int */ + intmask_org = CHIP_REG_READ32(HBC_MessageUnit, 0, host_int_mask) ; /* disable outbound message0 int */ CHIP_REG_WRITE32(HBC_MessageUnit, 0, host_int_mask, intmask_org|ARCMSR_HBCMU_ALL_INTMASKENABLE); } break; + case ACB_ADAPTER_TYPE_D: { + /* disable all outbound interrupt */ + intmask_org = CHIP_REG_READ32(HBD_MessageUnit, 0, pcief0_int_enable) ; /* disable outbound message0 int */ + CHIP_REG_WRITE32(HBD_MessageUnit, 0, pcief0_int_enable, ARCMSR_HBDMU_ALL_INT_DISABLE); + } + break; } return (intmask_org); } @@ -396,23 +382,31 @@ static void arcmsr_enable_allintr( struc switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_A: { /* enable outbound Post Queue, outbound doorbell Interrupt */ - mask=~(ARCMSR_MU_OUTBOUND_POSTQUEUE_INTMASKENABLE|ARCMSR_MU_OUTBOUND_DOORBELL_INTMASKENABLE|ARCMSR_MU_OUTBOUND_MESSAGE0_INTMASKENABLE); + mask = ~(ARCMSR_MU_OUTBOUND_POSTQUEUE_INTMASKENABLE|ARCMSR_MU_OUTBOUND_DOORBELL_INTMASKENABLE|ARCMSR_MU_OUTBOUND_MESSAGE0_INTMASKENABLE); CHIP_REG_WRITE32(HBA_MessageUnit, 0, outbound_intmask, intmask_org & mask); acb->outbound_int_enable = ~(intmask_org & mask) & 0x000000ff; } break; case ACB_ADAPTER_TYPE_B: { /* enable ARCMSR_IOP2DRV_MESSAGE_CMD_DONE */ - mask=(ARCMSR_IOP2DRV_DATA_WRITE_OK|ARCMSR_IOP2DRV_DATA_READ_OK|ARCMSR_IOP2DRV_CDB_DONE|ARCMSR_IOP2DRV_MESSAGE_CMD_DONE); + mask = (ARCMSR_IOP2DRV_DATA_WRITE_OK|ARCMSR_IOP2DRV_DATA_READ_OK|ARCMSR_IOP2DRV_CDB_DONE|ARCMSR_IOP2DRV_MESSAGE_CMD_DONE); CHIP_REG_WRITE32(HBB_DOORBELL, 0, iop2drv_doorbell_mask, intmask_org | mask); /*1=interrupt enable, 0=interrupt disable*/ acb->outbound_int_enable = (intmask_org | mask) & 0x0000000f; } break; case ACB_ADAPTER_TYPE_C: { /* enable outbound Post Queue, outbound doorbell Interrupt */ - mask=~(ARCMSR_HBCMU_UTILITY_A_ISR_MASK | ARCMSR_HBCMU_OUTBOUND_DOORBELL_ISR_MASK | ARCMSR_HBCMU_OUTBOUND_POSTQUEUE_ISR_MASK); + mask = ~(ARCMSR_HBCMU_UTILITY_A_ISR_MASK | ARCMSR_HBCMU_OUTBOUND_DOORBELL_ISR_MASK | ARCMSR_HBCMU_OUTBOUND_POSTQUEUE_ISR_MASK); CHIP_REG_WRITE32(HBC_MessageUnit, 0, host_int_mask, intmask_org & mask); - acb->outbound_int_enable= ~(intmask_org & mask) & 0x0000000f; + acb->outbound_int_enable = ~(intmask_org & mask) & 0x0000000f; + } + break; + case ACB_ADAPTER_TYPE_D: { + /* enable outbound Post Queue, outbound doorbell Interrupt */ + mask = ARCMSR_HBDMU_ALL_INT_ENABLE; + CHIP_REG_WRITE32(HBD_MessageUnit, 0, pcief0_int_enable, intmask_org | mask); + CHIP_REG_READ32(HBD_MessageUnit, 0, pcief0_int_enable); + acb->outbound_int_enable = mask; } break; } @@ -424,7 +418,7 @@ static void arcmsr_enable_allintr( struc static u_int8_t arcmsr_hba_wait_msgint_ready(struct AdapterControlBlock *acb) { u_int32_t Index; - u_int8_t Retries=0x00; + u_int8_t Retries = 0x00; do { for(Index=0; Index < 100; Index++) { @@ -444,7 +438,7 @@ static u_int8_t arcmsr_hba_wait_msgint_r static u_int8_t arcmsr_hbb_wait_msgint_ready(struct AdapterControlBlock *acb) { u_int32_t Index; - u_int8_t Retries=0x00; + u_int8_t Retries = 0x00; do { for(Index=0; Index < 100; Index++) { @@ -465,7 +459,7 @@ static u_int8_t arcmsr_hbb_wait_msgint_r static u_int8_t arcmsr_hbc_wait_msgint_ready(struct AdapterControlBlock *acb) { u_int32_t Index; - u_int8_t Retries=0x00; + u_int8_t Retries = 0x00; do { for(Index=0; Index < 100; Index++) { @@ -479,12 +473,32 @@ static u_int8_t arcmsr_hbc_wait_msgint_r return (FALSE); } /* +********************************************************************** +********************************************************************** +*/ +static u_int8_t arcmsr_hbd_wait_msgint_ready(struct AdapterControlBlock *acb) +{ + u_int32_t Index; + u_int8_t Retries = 0x00; + + do { + for(Index=0; Index < 100; Index++) { + if(CHIP_REG_READ32(HBD_MessageUnit, 0, outbound_doorbell) & ARCMSR_HBDMU_IOP2DRV_MESSAGE_CMD_DONE) { + CHIP_REG_WRITE32(HBD_MessageUnit, 0, outbound_doorbell, ARCMSR_HBDMU_IOP2DRV_MESSAGE_CMD_DONE_CLEAR);/*clear interrupt*/ + return TRUE; + } + UDELAY(10000); + }/*max 1 seconds*/ + }while(Retries++ < 20);/*max 20 sec*/ + return (FALSE); +} +/* ************************************************************************ ************************************************************************ */ static void arcmsr_flush_hba_cache(struct AdapterControlBlock *acb) { - int retry_count=30;/* enlarge wait flush adapter cache time: 10 minute */ + int retry_count = 30;/* enlarge wait flush adapter cache time: 10 minute */ CHIP_REG_WRITE32(HBA_MessageUnit, 0, inbound_msgaddr0, ARCMSR_INBOUND_MESG0_FLUSH_CACHE); do { @@ -493,7 +507,7 @@ static void arcmsr_flush_hba_cache(struc } else { retry_count--; } - }while(retry_count!=0); + }while(retry_count != 0); } /* ************************************************************************ @@ -501,7 +515,7 @@ static void arcmsr_flush_hba_cache(struc */ static void arcmsr_flush_hbb_cache(struct AdapterControlBlock *acb) { - int retry_count=30;/* enlarge wait flush adapter cache time: 10 minute */ + int retry_count = 30;/* enlarge wait flush adapter cache time: 10 minute */ CHIP_REG_WRITE32(HBB_DOORBELL, 0, drv2iop_doorbell, ARCMSR_MESSAGE_FLUSH_CACHE); @@ -511,7 +525,7 @@ static void arcmsr_flush_hbb_cache(struc } else { retry_count--; } - }while(retry_count!=0); + }while(retry_count != 0); } /* ************************************************************************ @@ -519,7 +533,7 @@ static void arcmsr_flush_hbb_cache(struc */ static void arcmsr_flush_hbc_cache(struct AdapterControlBlock *acb) { - int retry_count=30;/* enlarge wait flush adapter cache time: 10 minute */ + int retry_count = 30;/* enlarge wait flush adapter cache time: 10 minute */ CHIP_REG_WRITE32(HBC_MessageUnit, 0, inbound_msgaddr0, ARCMSR_INBOUND_MESG0_FLUSH_CACHE); CHIP_REG_WRITE32(HBC_MessageUnit, 0, inbound_doorbell, ARCMSR_HBCMU_DRV2IOP_MESSAGE_CMD_DONE); @@ -529,7 +543,24 @@ static void arcmsr_flush_hbc_cache(struc } else { retry_count--; } - }while(retry_count!=0); + }while(retry_count != 0); +} +/* +************************************************************************ +************************************************************************ +*/ +static void arcmsr_flush_hbd_cache(struct AdapterControlBlock *acb) +{ + int retry_count = 30; /* enlarge wait flush adapter cache time: 10 minute */ + + CHIP_REG_WRITE32(HBD_MessageUnit, 0, inbound_msgaddr0, ARCMSR_INBOUND_MESG0_FLUSH_CACHE); + do { + if(arcmsr_hbd_wait_msgint_ready(acb)) { + break; + } else { + retry_count--; + } + }while(retry_count != 0); } /* ************************************************************************ @@ -550,6 +581,10 @@ static void arcmsr_flush_adapter_cache(s arcmsr_flush_hbc_cache(acb); } break; + case ACB_ADAPTER_TYPE_D: { + arcmsr_flush_hbd_cache(acb); + } + break; } } /* @@ -585,14 +620,14 @@ static void arcmsr_async(void *cb_arg, u { struct AdapterControlBlock *acb; u_int8_t target_id, target_lun; - struct cam_sim * sim; + struct cam_sim *sim; - sim=(struct cam_sim *) cb_arg; + sim = (struct cam_sim *) cb_arg; acb =(struct AdapterControlBlock *) cam_sim_softc(sim); switch (code) { case AC_LOST_DEVICE: - target_id=xpt_path_target_id(path); - target_lun=xpt_path_lun_id(path); + target_id = xpt_path_target_id(path); + target_lun = xpt_path_lun_id(path); if((target_id > ARCMSR_MAX_TARGETID) || (target_lun > ARCMSR_MAX_TARGETLUN)) { break; } @@ -608,7 +643,7 @@ static void arcmsr_async(void *cb_arg, u */ static void arcmsr_report_sense_info(struct CommandControlBlock *srb) { - union ccb * pccb=srb->pccb; + union ccb *pccb = srb->pccb; pccb->ccb_h.status |= CAM_SCSI_STATUS_ERROR; pccb->csio.scsi_status = SCSI_STATUS_CHECK_COND; @@ -658,6 +693,17 @@ static void arcmsr_abort_hbc_allcmd(stru ********************************************************************* ********************************************************************* */ +static void arcmsr_abort_hbd_allcmd(struct AdapterControlBlock *acb) +{ + CHIP_REG_WRITE32(HBD_MessageUnit, 0, inbound_msgaddr0, ARCMSR_INBOUND_MESG0_ABORT_CMD); + if(!arcmsr_hbd_wait_msgint_ready(acb)) { + printf("arcmsr%d: wait 'abort all outstanding command' timeout \n", acb->pci_unit); + } +} +/* +********************************************************************* +********************************************************************* +*/ static void arcmsr_abort_allcmd(struct AdapterControlBlock *acb) { switch (acb->adapter_type) { @@ -673,6 +719,10 @@ static void arcmsr_abort_allcmd(struct A arcmsr_abort_hbc_allcmd(acb); } break; + case ACB_ADAPTER_TYPE_D: { + arcmsr_abort_hbd_allcmd(acb); + } + break; } } /* @@ -681,8 +731,8 @@ static void arcmsr_abort_allcmd(struct A */ static void arcmsr_srb_complete(struct CommandControlBlock *srb, int stand_flag) { - struct AdapterControlBlock *acb=srb->acb; - union ccb * pccb=srb->pccb; + struct AdapterControlBlock *acb = srb->acb; + union ccb *pccb = srb->pccb; if(srb->srb_flags & SRB_FLAG_TIMER_START) callout_stop(&srb->ccb_callout); @@ -697,19 +747,17 @@ static void arcmsr_srb_complete(struct C bus_dmamap_sync(acb->dm_segs_dmat, srb->dm_segs_dmamap, op); bus_dmamap_unload(acb->dm_segs_dmat, srb->dm_segs_dmamap); } - if(stand_flag==1) { + if(stand_flag == 1) { atomic_subtract_int(&acb->srboutstandingcount, 1); if((acb->acb_flags & ACB_F_CAM_DEV_QFRZN) && ( - acb->srboutstandingcount < ARCMSR_RELEASE_SIMQ_LEVEL)) { + acb->srboutstandingcount < (acb->firm_numbers_queue -10))) { acb->acb_flags &= ~ACB_F_CAM_DEV_QFRZN; pccb->ccb_h.status |= CAM_RELEASE_SIMQ; } } if(srb->srb_state != ARCMSR_SRB_TIMEOUT) arcmsr_free_srb(srb); -#ifdef ARCMSR_DEBUG1 acb->pktReturnCount++; -#endif xpt_done(pccb); } /* @@ -720,34 +768,34 @@ static void arcmsr_report_srb_state(stru { int target, lun; - target=srb->pccb->ccb_h.target_id; - lun=srb->pccb->ccb_h.target_lun; + target = srb->pccb->ccb_h.target_id; + lun = srb->pccb->ccb_h.target_lun; if(error == FALSE) { - if(acb->devstate[target][lun]==ARECA_RAID_GONE) { - acb->devstate[target][lun]=ARECA_RAID_GOOD; + if(acb->devstate[target][lun] == ARECA_RAID_GONE) { + acb->devstate[target][lun] = ARECA_RAID_GOOD; } srb->pccb->ccb_h.status |= CAM_REQ_CMP; arcmsr_srb_complete(srb, 1); } else { switch(srb->arcmsr_cdb.DeviceStatus) { case ARCMSR_DEV_SELECT_TIMEOUT: { - if(acb->devstate[target][lun]==ARECA_RAID_GOOD) { + if(acb->devstate[target][lun] == ARECA_RAID_GOOD) { printf( "arcmsr%d: Target=%x, Lun=%x, selection timeout, raid volume was lost\n", acb->pci_unit, target, lun); } - acb->devstate[target][lun]=ARECA_RAID_GONE; + acb->devstate[target][lun] = ARECA_RAID_GONE; srb->pccb->ccb_h.status |= CAM_DEV_NOT_THERE; arcmsr_srb_complete(srb, 1); } break; case ARCMSR_DEV_ABORTED: case ARCMSR_DEV_INIT_FAIL: { - acb->devstate[target][lun]=ARECA_RAID_GONE; + acb->devstate[target][lun] = ARECA_RAID_GONE; srb->pccb->ccb_h.status |= CAM_DEV_NOT_THERE; arcmsr_srb_complete(srb, 1); } break; case SCSISTAT_CHECK_CONDITION: { - acb->devstate[target][lun]=ARECA_RAID_GOOD; + acb->devstate[target][lun] = ARECA_RAID_GOOD; arcmsr_report_sense_info(srb); arcmsr_srb_complete(srb, 1); } @@ -755,7 +803,7 @@ static void arcmsr_report_srb_state(stru default: printf("arcmsr%d: scsi id=%d lun=%d isr got command error done,but got unknow DeviceStatus=0x%x \n" , acb->pci_unit, target, lun ,srb->arcmsr_cdb.DeviceStatus); - acb->devstate[target][lun]=ARECA_RAID_GONE; + acb->devstate[target][lun] = ARECA_RAID_GONE; srb->pccb->ccb_h.status |= CAM_UNCOR_PARITY; /*unknow error or crc error just for retry*/ arcmsr_srb_complete(srb, 1); @@ -774,7 +822,8 @@ static void arcmsr_drain_donequeue(struc /* check if command done with no error*/ switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_C: - srb = (struct CommandControlBlock *)(acb->vir2phy_offset+(flag_srb & 0xFFFFFFE0));/*frame must be 32 bytes aligned*/ + case ACB_ADAPTER_TYPE_D: + srb = (struct CommandControlBlock *)(acb->vir2phy_offset+(flag_srb & 0xFFFFFFE0)); /*frame must be 32 bytes aligned*/ break; case ACB_ADAPTER_TYPE_A: case ACB_ADAPTER_TYPE_B: @@ -782,7 +831,7 @@ static void arcmsr_drain_donequeue(struc srb = (struct CommandControlBlock *)(acb->vir2phy_offset+(flag_srb << 5));/*frame must be 32 bytes aligned*/ break; } - if((srb->acb!=acb) || (srb->srb_state!=ARCMSR_SRB_START)) { + if((srb->acb != acb) || (srb->srb_state != ARCMSR_SRB_START)) { if(srb->srb_state == ARCMSR_SRB_TIMEOUT) { arcmsr_free_srb(srb); printf("arcmsr%d: srb='%p' return srb has been timeouted\n", acb->pci_unit, srb); @@ -799,17 +848,17 @@ static void arcmsr_drain_donequeue(struc ************************************************************************** ************************************************************************** */ -static void arcmsr_srb_timeout(void* arg) +static void arcmsr_srb_timeout(void *arg) { struct CommandControlBlock *srb = (struct CommandControlBlock *)arg; struct AdapterControlBlock *acb; int target, lun; u_int8_t cmd; - target=srb->pccb->ccb_h.target_id; - lun=srb->pccb->ccb_h.target_lun; + target = srb->pccb->ccb_h.target_id; + lun = srb->pccb->ccb_h.target_lun; acb = srb->acb; - ARCMSR_LOCK_ACQUIRE(&acb->qbuffer_lock); + ARCMSR_LOCK_ACQUIRE(&acb->isr_lock); if(srb->srb_state == ARCMSR_SRB_START) { cmd = srb->pccb->csio.cdb_io.cdb_bytes[0]; @@ -819,7 +868,7 @@ static void arcmsr_srb_timeout(void* arg printf("arcmsr%d: scsi id %d lun %d cmd=0x%x srb='%p' ccb command time out!\n", acb->pci_unit, target, lun, cmd, srb); } - ARCMSR_LOCK_RELEASE(&acb->qbuffer_lock); + ARCMSR_LOCK_RELEASE(&acb->isr_lock); #ifdef ARCMSR_DEBUG1 arcmsr_dump_data(acb); #endif @@ -840,10 +889,10 @@ static void arcmsr_done4abort_postqueue( u_int32_t outbound_intstatus; /*clear and abort all outbound posted Q*/ - outbound_intstatus=CHIP_REG_READ32(HBA_MessageUnit, 0, outbound_intstatus) & acb->outbound_int_enable; + outbound_intstatus = CHIP_REG_READ32(HBA_MessageUnit, 0, outbound_intstatus) & acb->outbound_int_enable; CHIP_REG_WRITE32(HBA_MessageUnit, 0, outbound_intstatus, outbound_intstatus);/*clear interrupt*/ while(((flag_srb=CHIP_REG_READ32(HBA_MessageUnit, 0, outbound_queueport)) != 0xFFFFFFFF) && (i++ < ARCMSR_MAX_OUTSTANDING_CMD)) { - error=(flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE0)?TRUE:FALSE; + error = (flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE0)?TRUE:FALSE; arcmsr_drain_donequeue(acb, flag_srb, error); } } @@ -854,26 +903,30 @@ static void arcmsr_done4abort_postqueue( /*clear all outbound posted Q*/ CHIP_REG_WRITE32(HBB_DOORBELL, 0, iop2drv_doorbell, ARCMSR_DOORBELL_INT_CLEAR_PATTERN); /* clear doorbell interrupt */ for(i=0; i < ARCMSR_MAX_HBB_POSTQUEUE; i++) { - if((flag_srb=phbbmu->done_qbuffer[i])!=0) { - phbbmu->done_qbuffer[i]=0; - error=(flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE0)?TRUE:FALSE; + if((flag_srb = phbbmu->done_qbuffer[i]) != 0) { + phbbmu->done_qbuffer[i] = 0; + error = (flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE0)?TRUE:FALSE; arcmsr_drain_donequeue(acb, flag_srb, error); } - phbbmu->post_qbuffer[i]=0; + phbbmu->post_qbuffer[i] = 0; }/*drain reply FIFO*/ - phbbmu->doneq_index=0; - phbbmu->postq_index=0; + phbbmu->doneq_index = 0; + phbbmu->postq_index = 0; } break; case ACB_ADAPTER_TYPE_C: { while((CHIP_REG_READ32(HBC_MessageUnit, 0, host_int_status) & ARCMSR_HBCMU_OUTBOUND_POSTQUEUE_ISR) && (i++ < ARCMSR_MAX_OUTSTANDING_CMD)) { - flag_srb=CHIP_REG_READ32(HBC_MessageUnit, 0, outbound_queueport_low); - error=(flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE1)?TRUE:FALSE; + flag_srb = CHIP_REG_READ32(HBC_MessageUnit, 0, outbound_queueport_low); + error = (flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE1) ? TRUE : FALSE; arcmsr_drain_donequeue(acb, flag_srb, error); } } break; + case ACB_ADAPTER_TYPE_D: { + arcmsr_hbd_postqueue_isr(acb); + } + break; } } /* @@ -888,15 +941,15 @@ static void arcmsr_iop_reset(struct Adap if(acb->srboutstandingcount>0) { /* disable all outbound interrupt */ - intmask_org=arcmsr_disable_allintr(acb); + intmask_org = arcmsr_disable_allintr(acb); /*clear and abort all outbound posted Q*/ arcmsr_done4abort_postqueue(acb); /* talk to iop 331 outstanding command aborted*/ arcmsr_abort_allcmd(acb); - for(i=0;ipsrb_pool[i]; - if(srb->srb_state==ARCMSR_SRB_START) { - srb->srb_state=ARCMSR_SRB_ABORTED; + for(i=0; i < ARCMSR_MAX_FREESRB_NUM; i++) { + srb = acb->psrb_pool[i]; + if(srb->srb_state == ARCMSR_SRB_START) { + srb->srb_state = ARCMSR_SRB_ABORTED; srb->pccb->ccb_h.status |= CAM_REQ_ABORTED; arcmsr_srb_complete(srb, 1); printf("arcmsr%d: scsi id=%d lun=%d srb='%p' aborted\n" @@ -907,13 +960,11 @@ static void arcmsr_iop_reset(struct Adap /* enable all outbound interrupt */ arcmsr_enable_allintr(acb, intmask_org); } - acb->srboutstandingcount=0; - acb->workingsrb_doneindex=0; - acb->workingsrb_startindex=0; -#ifdef ARCMSR_DEBUG1 + acb->srboutstandingcount = 0; + acb->workingsrb_doneindex = 0; + acb->workingsrb_startindex = 0; acb->pktRequestCount = 0; acb->pktReturnCount = 0; -#endif } /* ********************************************************************** @@ -922,67 +973,66 @@ static void arcmsr_iop_reset(struct Adap static void arcmsr_build_srb(struct CommandControlBlock *srb, bus_dma_segment_t *dm_segs, u_int32_t nseg) { - struct ARCMSR_CDB * arcmsr_cdb= &srb->arcmsr_cdb; - u_int8_t * psge=(u_int8_t *)&arcmsr_cdb->u; + struct ARCMSR_CDB *arcmsr_cdb = &srb->arcmsr_cdb; + u_int8_t *psge = (u_int8_t *)&arcmsr_cdb->u; u_int32_t address_lo, address_hi; - union ccb * pccb=srb->pccb; - struct ccb_scsiio * pcsio= &pccb->csio; - u_int32_t arccdbsize=0x30; + union ccb *pccb = srb->pccb; + struct ccb_scsiio *pcsio = &pccb->csio; + u_int32_t arccdbsize = 0x30; memset(arcmsr_cdb, 0, sizeof(struct ARCMSR_CDB)); - arcmsr_cdb->Bus=0; - arcmsr_cdb->TargetID=pccb->ccb_h.target_id; - arcmsr_cdb->LUN=pccb->ccb_h.target_lun; - arcmsr_cdb->Function=1; - arcmsr_cdb->CdbLength=(u_int8_t)pcsio->cdb_len; - arcmsr_cdb->Context=0; + arcmsr_cdb->Bus = 0; + arcmsr_cdb->TargetID = pccb->ccb_h.target_id; + arcmsr_cdb->LUN = pccb->ccb_h.target_lun; + arcmsr_cdb->Function = 1; + arcmsr_cdb->CdbLength = (u_int8_t)pcsio->cdb_len; bcopy(pcsio->cdb_io.cdb_bytes, arcmsr_cdb->Cdb, pcsio->cdb_len); if(nseg != 0) { - struct AdapterControlBlock *acb=srb->acb; + struct AdapterControlBlock *acb = srb->acb; bus_dmasync_op_t op; - u_int32_t length, i, cdb_sgcount=0; + u_int32_t length, i, cdb_sgcount = 0; if((pccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) { - op=BUS_DMASYNC_PREREAD; + op = BUS_DMASYNC_PREREAD; } else { - op=BUS_DMASYNC_PREWRITE; - arcmsr_cdb->Flags|=ARCMSR_CDB_FLAG_WRITE; - srb->srb_flags|=SRB_FLAG_WRITE; + op = BUS_DMASYNC_PREWRITE; + arcmsr_cdb->Flags |= ARCMSR_CDB_FLAG_WRITE; + srb->srb_flags |= SRB_FLAG_WRITE; } bus_dmamap_sync(acb->dm_segs_dmat, srb->dm_segs_dmamap, op); - for(i=0;iaddress=address_lo; - pdma_sg->length=length; + length = arcmsr_htole32(dm_segs[i].ds_len); + address_lo = arcmsr_htole32(dma_addr_lo32(dm_segs[i].ds_addr)); + address_hi = arcmsr_htole32(dma_addr_hi32(dm_segs[i].ds_addr)); + if(address_hi == 0) { + struct SG32ENTRY *pdma_sg = (struct SG32ENTRY *)psge; + pdma_sg->address = address_lo; + pdma_sg->length = length; psge += sizeof(struct SG32ENTRY); arccdbsize += sizeof(struct SG32ENTRY); } else { - u_int32_t sg64s_size=0, tmplength=length; + u_int32_t sg64s_size = 0, tmplength = length; while(1) { u_int64_t span4G, length0; - struct SG64ENTRY * pdma_sg=(struct SG64ENTRY *)psge; + struct SG64ENTRY *pdma_sg = (struct SG64ENTRY *)psge; - span4G=(u_int64_t)address_lo + tmplength; - pdma_sg->addresshigh=address_hi; - pdma_sg->address=address_lo; + span4G = (u_int64_t)address_lo + tmplength; + pdma_sg->addresshigh = address_hi; + pdma_sg->address = address_lo; if(span4G > 0x100000000) { /*see if cross 4G boundary*/ - length0=0x100000000-address_lo; - pdma_sg->length=(u_int32_t)length0|IS_SG64_ADDR; - address_hi=address_hi+1; - address_lo=0; - tmplength=tmplength-(u_int32_t)length0; + length0 = 0x100000000-address_lo; + pdma_sg->length = (u_int32_t)length0 | IS_SG64_ADDR; + address_hi = address_hi+1; + address_lo = 0; + tmplength = tmplength - (u_int32_t)length0; sg64s_size += sizeof(struct SG64ENTRY); psge += sizeof(struct SG64ENTRY); cdb_sgcount++; } else { - pdma_sg->length=tmplength|IS_SG64_ADDR; + pdma_sg->length = tmplength | IS_SG64_ADDR; sg64s_size += sizeof(struct SG64ENTRY); psge += sizeof(struct SG64ENTRY); break; @@ -992,15 +1042,16 @@ static void arcmsr_build_srb(struct Comm } cdb_sgcount++; } - arcmsr_cdb->sgcount=(u_int8_t)cdb_sgcount; - arcmsr_cdb->DataLength=pcsio->dxfer_len; + arcmsr_cdb->sgcount = (u_int8_t)cdb_sgcount; + arcmsr_cdb->DataLength = pcsio->dxfer_len; if( arccdbsize > 256) { - arcmsr_cdb->Flags|=ARCMSR_CDB_FLAG_SGL_BSIZE; + arcmsr_cdb->Flags |= ARCMSR_CDB_FLAG_SGL_BSIZE; } } else { arcmsr_cdb->DataLength = 0; } - srb->arc_cdb_size=arccdbsize; + srb->arc_cdb_size = arccdbsize; + arcmsr_cdb->msgPages = (arccdbsize/256) + ((arccdbsize % 256) ? 1 : 0); } /* ************************************************************************** @@ -1008,46 +1059,45 @@ static void arcmsr_build_srb(struct Comm */ static void arcmsr_post_srb(struct AdapterControlBlock *acb, struct CommandControlBlock *srb) { - u_int32_t cdb_shifted_phyaddr=(u_int32_t) srb->cdb_shifted_phyaddr; - struct ARCMSR_CDB * arcmsr_cdb=(struct ARCMSR_CDB *)&srb->arcmsr_cdb; + u_int32_t cdb_phyaddr_low = (u_int32_t) srb->cdb_phyaddr_low; + struct ARCMSR_CDB *arcmsr_cdb = (struct ARCMSR_CDB *)&srb->arcmsr_cdb; bus_dmamap_sync(acb->srb_dmat, acb->srb_dmamap, (srb->srb_flags & SRB_FLAG_WRITE) ? BUS_DMASYNC_POSTWRITE:BUS_DMASYNC_POSTREAD); atomic_add_int(&acb->srboutstandingcount, 1); - srb->srb_state=ARCMSR_SRB_START; + srb->srb_state = ARCMSR_SRB_START; switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_A: { if(arcmsr_cdb->Flags & ARCMSR_CDB_FLAG_SGL_BSIZE) { - CHIP_REG_WRITE32(HBA_MessageUnit, 0, inbound_queueport, cdb_shifted_phyaddr|ARCMSR_SRBPOST_FLAG_SGL_BSIZE); + CHIP_REG_WRITE32(HBA_MessageUnit, 0, inbound_queueport, cdb_phyaddr_low|ARCMSR_SRBPOST_FLAG_SGL_BSIZE); } else { - CHIP_REG_WRITE32(HBA_MessageUnit, 0, inbound_queueport, cdb_shifted_phyaddr); + CHIP_REG_WRITE32(HBA_MessageUnit, 0, inbound_queueport, cdb_phyaddr_low); } } break; case ACB_ADAPTER_TYPE_B: { - struct HBB_MessageUnit *phbbmu=(struct HBB_MessageUnit *)acb->pmu; + struct HBB_MessageUnit *phbbmu = (struct HBB_MessageUnit *)acb->pmu; int ending_index, index; - index=phbbmu->postq_index; - ending_index=((index+1)%ARCMSR_MAX_HBB_POSTQUEUE); - phbbmu->post_qbuffer[ending_index]=0; + index = phbbmu->postq_index; + ending_index = ((index+1) % ARCMSR_MAX_HBB_POSTQUEUE); + phbbmu->post_qbuffer[ending_index] = 0; if(arcmsr_cdb->Flags & ARCMSR_CDB_FLAG_SGL_BSIZE) { - phbbmu->post_qbuffer[index]= cdb_shifted_phyaddr|ARCMSR_SRBPOST_FLAG_SGL_BSIZE; + phbbmu->post_qbuffer[index] = cdb_phyaddr_low | ARCMSR_SRBPOST_FLAG_SGL_BSIZE; } else { - phbbmu->post_qbuffer[index]= cdb_shifted_phyaddr; + phbbmu->post_qbuffer[index] = cdb_phyaddr_low; } index++; index %= ARCMSR_MAX_HBB_POSTQUEUE; /*if last index number set it to 0 */ - phbbmu->postq_index=index; + phbbmu->postq_index = index; CHIP_REG_WRITE32(HBB_DOORBELL, 0, drv2iop_doorbell, ARCMSR_DRV2IOP_CDB_POSTED); } break; - case ACB_ADAPTER_TYPE_C: - { + case ACB_ADAPTER_TYPE_C: { u_int32_t ccb_post_stamp, arc_cdb_size, cdb_phyaddr_hi32; - arc_cdb_size=(srb->arc_cdb_size>0x300)?0x300:srb->arc_cdb_size; - ccb_post_stamp=(cdb_shifted_phyaddr | ((arc_cdb_size-1) >> 6) | 1); + arc_cdb_size = (srb->arc_cdb_size > 0x300) ? 0x300 : srb->arc_cdb_size; + ccb_post_stamp = (cdb_phyaddr_low | ((arc_cdb_size-1) >> 6) | 1); cdb_phyaddr_hi32 = acb->srb_phyaddr.B.phyadd_high; if(cdb_phyaddr_hi32) { @@ -1060,33 +1110,67 @@ static void arcmsr_post_srb(struct Adapt } } break; + case ACB_ADAPTER_TYPE_D: { + struct HBD_MessageUnit0 *phbdmu = (struct HBD_MessageUnit0 *)acb->pmu; + u_int16_t index_stripped; + u_int16_t postq_index; + struct InBound_SRB *pinbound_srb; + + ARCMSR_LOCK_ACQUIRE(&acb->postDone_lock); + postq_index = phbdmu->postq_index; + pinbound_srb = (struct InBound_SRB *)&phbdmu->post_qbuffer[postq_index & 0xFF]; + pinbound_srb->addressHigh = srb->cdb_phyaddr_high; + pinbound_srb->addressLow = srb->cdb_phyaddr_low; + pinbound_srb->length = srb->arc_cdb_size >> 2; + arcmsr_cdb->Context = srb->cdb_phyaddr_low; + if (postq_index & 0x4000) { + index_stripped = postq_index & 0xFF; + index_stripped += 1; + index_stripped %= ARCMSR_MAX_HBD_POSTQUEUE; + phbdmu->postq_index = index_stripped ? (index_stripped | 0x4000) : index_stripped; + } else { + index_stripped = postq_index; + index_stripped += 1; + index_stripped %= ARCMSR_MAX_HBD_POSTQUEUE; + phbdmu->postq_index = index_stripped ? index_stripped : (index_stripped | 0x4000); + } + CHIP_REG_WRITE32(HBD_MessageUnit, 0, inboundlist_write_pointer, postq_index); + ARCMSR_LOCK_RELEASE(&acb->postDone_lock); + } + break; } } /* ************************************************************************ ************************************************************************ */ -static struct QBUFFER * arcmsr_get_iop_rqbuffer( struct AdapterControlBlock *acb) +static struct QBUFFER *arcmsr_get_iop_rqbuffer( struct AdapterControlBlock *acb) { struct QBUFFER *qbuffer=NULL; switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_A: { - struct HBA_MessageUnit *phbamu=(struct HBA_MessageUnit *)acb->pmu; + struct HBA_MessageUnit *phbamu = (struct HBA_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbamu->message_rbuffer; + qbuffer = (struct QBUFFER *)&phbamu->message_rbuffer; } break; case ACB_ADAPTER_TYPE_B: { - struct HBB_MessageUnit *phbbmu=(struct HBB_MessageUnit *)acb->pmu; + struct HBB_MessageUnit *phbbmu = (struct HBB_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbbmu->hbb_rwbuffer->message_rbuffer; + qbuffer = (struct QBUFFER *)&phbbmu->hbb_rwbuffer->message_rbuffer; } break; case ACB_ADAPTER_TYPE_C: { - struct HBC_MessageUnit *phbcmu=(struct HBC_MessageUnit *)acb->pmu; + struct HBC_MessageUnit *phbcmu = (struct HBC_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbcmu->message_rbuffer; + qbuffer = (struct QBUFFER *)&phbcmu->message_rbuffer; + } + break; + case ACB_ADAPTER_TYPE_D: { + struct HBD_MessageUnit0 *phbdmu = (struct HBD_MessageUnit0 *)acb->pmu; + + qbuffer = (struct QBUFFER *)&phbdmu->phbdmu->message_rbuffer; } break; } @@ -1096,27 +1180,33 @@ static struct QBUFFER * arcmsr_get_iop_r ************************************************************************ ************************************************************************ */ -static struct QBUFFER * arcmsr_get_iop_wqbuffer( struct AdapterControlBlock *acb) +static struct QBUFFER *arcmsr_get_iop_wqbuffer( struct AdapterControlBlock *acb) { - struct QBUFFER *qbuffer=NULL; + struct QBUFFER *qbuffer = NULL; switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_A: { - struct HBA_MessageUnit *phbamu=(struct HBA_MessageUnit *)acb->pmu; + struct HBA_MessageUnit *phbamu = (struct HBA_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbamu->message_wbuffer; + qbuffer = (struct QBUFFER *)&phbamu->message_wbuffer; } break; case ACB_ADAPTER_TYPE_B: { - struct HBB_MessageUnit *phbbmu=(struct HBB_MessageUnit *)acb->pmu; + struct HBB_MessageUnit *phbbmu = (struct HBB_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbbmu->hbb_rwbuffer->message_wbuffer; + qbuffer = (struct QBUFFER *)&phbbmu->hbb_rwbuffer->message_wbuffer; } break; case ACB_ADAPTER_TYPE_C: { - struct HBC_MessageUnit *phbcmu=(struct HBC_MessageUnit *)acb->pmu; + struct HBC_MessageUnit *phbcmu = (struct HBC_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbcmu->message_wbuffer; + qbuffer = (struct QBUFFER *)&phbcmu->message_wbuffer; + } + break; + case ACB_ADAPTER_TYPE_D: { + struct HBD_MessageUnit0 *phbdmu = (struct HBD_MessageUnit0 *)acb->pmu; + + qbuffer = (struct QBUFFER *)&phbdmu->phbdmu->message_wbuffer; } break; } @@ -1143,6 +1233,12 @@ static void arcmsr_iop_message_read(stru /* let IOP know data has been read */ CHIP_REG_WRITE32(HBC_MessageUnit, 0, inbound_doorbell, ARCMSR_HBCMU_DRV2IOP_DATA_READ_OK); } + break; + case ACB_ADAPTER_TYPE_D: { + /* let IOP know data has been read */ + CHIP_REG_WRITE32(HBD_MessageUnit, 0, inbound_doorbell, ARCMSR_HBDMU_DRV2IOP_DATA_OUT_READ); + } + break; } } /* @@ -1176,37 +1272,14 @@ static void arcmsr_iop_message_wrote(str CHIP_REG_WRITE32(HBC_MessageUnit, 0, inbound_doorbell, ARCMSR_HBCMU_DRV2IOP_DATA_WRITE_OK); } break; - } -} -/* -********************************************************************** -********************************************************************** -*/ -static void arcmsr_post_ioctldata2iop(struct AdapterControlBlock *acb) -{ - u_int8_t *pQbuffer; - struct QBUFFER *pwbuffer; - u_int8_t * iop_data; - int32_t allxfer_len=0; - - pwbuffer=arcmsr_get_iop_wqbuffer(acb); - iop_data=(u_int8_t *)pwbuffer->data; - if(acb->acb_flags & ACB_F_MESSAGE_WQBUFFER_READ) { - acb->acb_flags &= (~ACB_F_MESSAGE_WQBUFFER_READ); - while((acb->wqbuf_firstindex!=acb->wqbuf_lastindex) - && (allxfer_len<124)) { - pQbuffer=&acb->wqbuffer[acb->wqbuf_firstindex]; - memcpy(iop_data, pQbuffer, 1); - acb->wqbuf_firstindex++; - acb->wqbuf_firstindex %=ARCMSR_MAX_QBUFFER; /*if last index number set it to 0 */ - iop_data++; - allxfer_len++; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 07:04:26 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1A61AD6A; Tue, 1 Jan 2013 07:04:26 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DA50E8FC0A; Tue, 1 Jan 2013 07:04:25 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0174P3p006270; Tue, 1 Jan 2013 07:04:25 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0174PIh006269; Tue, 1 Jan 2013 07:04:25 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301010704.r0174PIh006269@svn.freebsd.org> From: Xin LI Date: Tue, 1 Jan 2013 07:04:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r244922 - stable/8/sys/dev/arcmsr X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 07:04:26 -0000 Author: delphij Date: Tue Jan 1 07:04:25 2013 New Revision: 244922 URL: http://svnweb.freebsd.org/changeset/base/244922 Log: MFC r244369 (jimharris): Use CAM_DEV_NOT_THERE instead of CAM_SEL_TIMEOUT to report nonexistent LUNs for the virtual processor device. This removes lots of CAM warnings, and follows similar recent changes to tws(4) and twa(4) drivers. Also fix case where CAM_REQ_CMP was getting OR'd with CAM_DEV_NOT_THERE in the nonexistent LUN case, resulting in different CAM status (CAM_UA_TERMIO) getting reported to CAM. This issue existing previously, but was more subtle because it changed CAM_SEL_TIMEOUT to CAM_CMD_TIMEOUT. Sponsored by: Intel Reported and tested by: Willem Jan Withagen Modified: stable/8/sys/dev/arcmsr/arcmsr.c Directory Properties: stable/8/sys/ (props changed) stable/8/sys/dev/ (props changed) stable/8/sys/dev/arcmsr/ (props changed) Modified: stable/8/sys/dev/arcmsr/arcmsr.c ============================================================================== --- stable/8/sys/dev/arcmsr/arcmsr.c Tue Jan 1 07:02:33 2013 (r244921) +++ stable/8/sys/dev/arcmsr/arcmsr.c Tue Jan 1 07:04:25 2013 (r244922) @@ -2432,14 +2432,13 @@ static void arcmsr_bus_reset(struct Adap static void arcmsr_handle_virtual_command(struct AdapterControlBlock *acb, union ccb * pccb) { - pccb->ccb_h.status |= CAM_REQ_CMP; switch (pccb->csio.cdb_io.cdb_bytes[0]) { case INQUIRY: { unsigned char inqdata[36]; char *buffer=pccb->csio.data_ptr; if (pccb->ccb_h.target_lun) { - pccb->ccb_h.status |= CAM_SEL_TIMEOUT; + pccb->ccb_h.status |= CAM_DEV_NOT_THERE; xpt_done(pccb); return; } @@ -2455,6 +2454,7 @@ static void arcmsr_handle_virtual_comman strncpy(&inqdata[16], "RAID controller ", 16); /* Product Identification */ strncpy(&inqdata[32], "R001", 4); /* Product Revision */ memcpy(buffer, inqdata, sizeof(inqdata)); + pccb->ccb_h.status |= CAM_REQ_CMP; xpt_done(pccb); } break; @@ -2464,10 +2464,12 @@ static void arcmsr_handle_virtual_comman pccb->ccb_h.status |= CAM_SCSI_STATUS_ERROR; pccb->csio.scsi_status = SCSI_STATUS_CHECK_COND; } + pccb->ccb_h.status |= CAM_REQ_CMP; xpt_done(pccb); } break; default: + pccb->ccb_h.status |= CAM_REQ_CMP; xpt_done(pccb); } } From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 07:06:18 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 76514ED0; Tue, 1 Jan 2013 07:06:18 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5A15D8FC08; Tue, 1 Jan 2013 07:06:18 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0176IAh006724; Tue, 1 Jan 2013 07:06:18 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0176IM1006720; Tue, 1 Jan 2013 07:06:18 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301010706.r0176IM1006720@svn.freebsd.org> From: Xin LI Date: Tue, 1 Jan 2013 07:06:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r244923 - in stable/8: share/man/man4 sys/dev/arcmsr X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 07:06:18 -0000 Author: delphij Date: Tue Jan 1 07:06:17 2013 New Revision: 244923 URL: http://svnweb.freebsd.org/changeset/base/244923 Log: MFC r244406: Update arcmsr(4) to vendor version 1.20.00.26, this adds support for their new RAID adapter ARC-1214. Many thanks to Areca for continuing to support FreeBSD. Submitted by: 黃清隆 Ching-Lung Huang Modified: stable/8/share/man/man4/arcmsr.4 stable/8/sys/dev/arcmsr/arcmsr.c stable/8/sys/dev/arcmsr/arcmsr.h Directory Properties: stable/8/share/man/man4/ (props changed) stable/8/sys/ (props changed) stable/8/sys/dev/ (props changed) stable/8/sys/dev/arcmsr/ (props changed) Modified: stable/8/share/man/man4/arcmsr.4 ============================================================================== --- stable/8/share/man/man4/arcmsr.4 Tue Jan 1 07:04:25 2013 (r244922) +++ stable/8/share/man/man4/arcmsr.4 Tue Jan 1 07:06:17 2013 (r244923) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 3, 2012 +.Dd December 18, 2012 .Dt ARCMSR 4 .Os .Sh NAME @@ -100,6 +100,8 @@ ARC-1212 .It ARC-1213 .It +ARC-1214 +.It ARC-1220 .It ARC-1222 Modified: stable/8/sys/dev/arcmsr/arcmsr.c ============================================================================== --- stable/8/sys/dev/arcmsr/arcmsr.c Tue Jan 1 07:04:25 2013 (r244922) +++ stable/8/sys/dev/arcmsr/arcmsr.c Tue Jan 1 07:06:17 2013 (r244923) @@ -10,8 +10,7 @@ ****************************************************************************************** ************************************************************************ ** -** Copyright (c) 2004-2010 ARECA Co. Ltd. -** Erich Chen, Taipei Taiwan All rights reserved. +** Copyright (C) 2002 - 2010, Areca Technology Corporation All rights reserved. ** ** Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions @@ -74,6 +73,7 @@ ** 1.20.00.23 01/30/2012 Ching Huang Fixed Request requeued and Retrying command ** 1.20.00.24 06/11/2012 Ching Huang Fixed return sense data condition ** 1.20.00.25 08/17/2012 Ching Huang Fixed hotplug device no function on type A adapter +** 1.20.00.26 12/14/2012 Ching Huang Added support ARC1214 ****************************************************************************************** */ @@ -129,24 +129,10 @@ __FBSDID("$FreeBSD$"); #include #include #include - #define ARCMSR_LOCK_INIT(l, s) mtx_init(l, s, NULL, MTX_DEF) - #define ARCMSR_LOCK_DESTROY(l) mtx_destroy(l) - #define ARCMSR_LOCK_ACQUIRE(l) mtx_lock(l) - #define ARCMSR_LOCK_RELEASE(l) mtx_unlock(l) - #define ARCMSR_LOCK_TRY(l) mtx_trylock(l) - #define arcmsr_htole32(x) htole32(x) - typedef struct mtx arcmsr_lock_t; #else #include #include #include - #define ARCMSR_LOCK_INIT(l, s) simple_lock_init(l) - #define ARCMSR_LOCK_DESTROY(l) - #define ARCMSR_LOCK_ACQUIRE(l) simple_lock(l) - #define ARCMSR_LOCK_RELEASE(l) simple_unlock(l) - #define ARCMSR_LOCK_TRY(l) simple_lock_try(l) - #define arcmsr_htole32(x) (x) - typedef struct simplelock arcmsr_lock_t; #endif #if !defined(CAM_NEW_TRAN_CODE) && __FreeBSD_version >= 700025 @@ -159,23 +145,15 @@ __FBSDID("$FreeBSD$"); #define arcmsr_callout_init(a) callout_init(a); #endif -#define ARCMSR_DRIVER_VERSION "Driver Version 1.20.00.25 2012-08-17" +#define ARCMSR_DRIVER_VERSION "Driver Version 1.20.00.26 2012-12-14" #include -#define SRB_SIZE ((sizeof(struct CommandControlBlock)+0x1f) & 0xffe0) -#define ARCMSR_SRBS_POOL_SIZE (SRB_SIZE * ARCMSR_MAX_FREESRB_NUM) -/* -************************************************************************** -************************************************************************** -*/ -#define CHIP_REG_READ32(s, b, r) bus_space_read_4(acb->btag[b], acb->bhandle[b], offsetof(struct s, r)) -#define CHIP_REG_WRITE32(s, b, r, d) bus_space_write_4(acb->btag[b], acb->bhandle[b], offsetof(struct s, r), d) /* ************************************************************************** ************************************************************************** */ static void arcmsr_free_srb(struct CommandControlBlock *srb); -static struct CommandControlBlock * arcmsr_get_freesrb(struct AdapterControlBlock *acb); -static u_int8_t arcmsr_seek_cmd2abort(union ccb * abortccb); +static struct CommandControlBlock *arcmsr_get_freesrb(struct AdapterControlBlock *acb); +static u_int8_t arcmsr_seek_cmd2abort(union ccb *abortccb); static int arcmsr_probe(device_t dev); static int arcmsr_attach(device_t dev); static int arcmsr_detach(device_t dev); @@ -190,18 +168,20 @@ static void arcmsr_stop_adapter_bgrb(str static void arcmsr_start_adapter_bgrb(struct AdapterControlBlock *acb); static void arcmsr_iop_init(struct AdapterControlBlock *acb); static void arcmsr_flush_adapter_cache(struct AdapterControlBlock *acb); -static void arcmsr_post_ioctldata2iop(struct AdapterControlBlock *acb); +static void arcmsr_Read_iop_rqbuffer_data(struct AdapterControlBlock *acb, struct QBUFFER *prbuffer); +static void arcmsr_Write_data_2iop_wqbuffer(struct AdapterControlBlock *acb); static void arcmsr_abort_allcmd(struct AdapterControlBlock *acb); static void arcmsr_srb_complete(struct CommandControlBlock *srb, int stand_flag); static void arcmsr_iop_reset(struct AdapterControlBlock *acb); static void arcmsr_report_sense_info(struct CommandControlBlock *srb); -static void arcmsr_build_srb(struct CommandControlBlock *srb, bus_dma_segment_t * dm_segs, u_int32_t nseg); -static int arcmsr_iop_message_xfer(struct AdapterControlBlock *acb, union ccb * pccb); +static void arcmsr_build_srb(struct CommandControlBlock *srb, bus_dma_segment_t *dm_segs, u_int32_t nseg); +static int arcmsr_iop_message_xfer(struct AdapterControlBlock *acb, union ccb *pccb); static int arcmsr_resume(device_t dev); static int arcmsr_suspend(device_t dev); static void arcmsr_rescanLun_cb(struct cam_periph *periph, union ccb *ccb); -static void arcmsr_polling_devmap(void* arg); -static void arcmsr_srb_timeout(void* arg); +static void arcmsr_polling_devmap(void *arg); +static void arcmsr_srb_timeout(void *arg); +static void arcmsr_hbd_postqueue_isr(struct AdapterControlBlock *acb); #ifdef ARCMSR_DEBUG1 static void arcmsr_dump_data(struct AdapterControlBlock *acb); #endif @@ -293,12 +273,12 @@ static struct cdevsw arcmsr_cdevsw = { #endif { #if __FreeBSD_version < 503000 - struct AdapterControlBlock *acb=dev->si_drv1; + struct AdapterControlBlock *acb = dev->si_drv1; #else int unit = dev2unit(dev); struct AdapterControlBlock *acb = devclass_get_softc(arcmsr_devclass, unit); #endif - if(acb==NULL) { + if(acb == NULL) { return ENXIO; } return (0); @@ -318,12 +298,12 @@ static struct cdevsw arcmsr_cdevsw = { #endif { #if __FreeBSD_version < 503000 - struct AdapterControlBlock *acb=dev->si_drv1; + struct AdapterControlBlock *acb = dev->si_drv1; #else int unit = dev2unit(dev); struct AdapterControlBlock *acb = devclass_get_softc(arcmsr_devclass, unit); #endif - if(acb==NULL) { + if(acb == NULL) { return ENXIO; } return 0; @@ -343,13 +323,13 @@ static struct cdevsw arcmsr_cdevsw = { #endif { #if __FreeBSD_version < 503000 - struct AdapterControlBlock *acb=dev->si_drv1; + struct AdapterControlBlock *acb = dev->si_drv1; #else int unit = dev2unit(dev); struct AdapterControlBlock *acb = devclass_get_softc(arcmsr_devclass, unit); #endif - if(acb==NULL) { + if(acb == NULL) { return ENXIO; } return (arcmsr_iop_ioctlcmd(acb, ioctl_cmd, arg)); @@ -360,28 +340,34 @@ static struct cdevsw arcmsr_cdevsw = { */ static u_int32_t arcmsr_disable_allintr( struct AdapterControlBlock *acb) { - u_int32_t intmask_org=0; + u_int32_t intmask_org = 0; switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_A: { /* disable all outbound interrupt */ - intmask_org=CHIP_REG_READ32(HBA_MessageUnit, 0, outbound_intmask); /* disable outbound message0 int */ + intmask_org = CHIP_REG_READ32(HBA_MessageUnit, 0, outbound_intmask); /* disable outbound message0 int */ CHIP_REG_WRITE32(HBA_MessageUnit, 0, outbound_intmask, intmask_org|ARCMSR_MU_OUTBOUND_ALL_INTMASKENABLE); } break; case ACB_ADAPTER_TYPE_B: { /* disable all outbound interrupt */ - intmask_org=CHIP_REG_READ32(HBB_DOORBELL, + intmask_org = CHIP_REG_READ32(HBB_DOORBELL, 0, iop2drv_doorbell_mask) & (~ARCMSR_IOP2DRV_MESSAGE_CMD_DONE); /* disable outbound message0 int */ CHIP_REG_WRITE32(HBB_DOORBELL, 0, iop2drv_doorbell_mask, 0); /* disable all interrupt */ } break; case ACB_ADAPTER_TYPE_C: { /* disable all outbound interrupt */ - intmask_org=CHIP_REG_READ32(HBC_MessageUnit, 0, host_int_mask) ; /* disable outbound message0 int */ + intmask_org = CHIP_REG_READ32(HBC_MessageUnit, 0, host_int_mask) ; /* disable outbound message0 int */ CHIP_REG_WRITE32(HBC_MessageUnit, 0, host_int_mask, intmask_org|ARCMSR_HBCMU_ALL_INTMASKENABLE); } break; + case ACB_ADAPTER_TYPE_D: { + /* disable all outbound interrupt */ + intmask_org = CHIP_REG_READ32(HBD_MessageUnit, 0, pcief0_int_enable) ; /* disable outbound message0 int */ + CHIP_REG_WRITE32(HBD_MessageUnit, 0, pcief0_int_enable, ARCMSR_HBDMU_ALL_INT_DISABLE); + } + break; } return (intmask_org); } @@ -396,23 +382,31 @@ static void arcmsr_enable_allintr( struc switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_A: { /* enable outbound Post Queue, outbound doorbell Interrupt */ - mask=~(ARCMSR_MU_OUTBOUND_POSTQUEUE_INTMASKENABLE|ARCMSR_MU_OUTBOUND_DOORBELL_INTMASKENABLE|ARCMSR_MU_OUTBOUND_MESSAGE0_INTMASKENABLE); + mask = ~(ARCMSR_MU_OUTBOUND_POSTQUEUE_INTMASKENABLE|ARCMSR_MU_OUTBOUND_DOORBELL_INTMASKENABLE|ARCMSR_MU_OUTBOUND_MESSAGE0_INTMASKENABLE); CHIP_REG_WRITE32(HBA_MessageUnit, 0, outbound_intmask, intmask_org & mask); acb->outbound_int_enable = ~(intmask_org & mask) & 0x000000ff; } break; case ACB_ADAPTER_TYPE_B: { /* enable ARCMSR_IOP2DRV_MESSAGE_CMD_DONE */ - mask=(ARCMSR_IOP2DRV_DATA_WRITE_OK|ARCMSR_IOP2DRV_DATA_READ_OK|ARCMSR_IOP2DRV_CDB_DONE|ARCMSR_IOP2DRV_MESSAGE_CMD_DONE); + mask = (ARCMSR_IOP2DRV_DATA_WRITE_OK|ARCMSR_IOP2DRV_DATA_READ_OK|ARCMSR_IOP2DRV_CDB_DONE|ARCMSR_IOP2DRV_MESSAGE_CMD_DONE); CHIP_REG_WRITE32(HBB_DOORBELL, 0, iop2drv_doorbell_mask, intmask_org | mask); /*1=interrupt enable, 0=interrupt disable*/ acb->outbound_int_enable = (intmask_org | mask) & 0x0000000f; } break; case ACB_ADAPTER_TYPE_C: { /* enable outbound Post Queue, outbound doorbell Interrupt */ - mask=~(ARCMSR_HBCMU_UTILITY_A_ISR_MASK | ARCMSR_HBCMU_OUTBOUND_DOORBELL_ISR_MASK | ARCMSR_HBCMU_OUTBOUND_POSTQUEUE_ISR_MASK); + mask = ~(ARCMSR_HBCMU_UTILITY_A_ISR_MASK | ARCMSR_HBCMU_OUTBOUND_DOORBELL_ISR_MASK | ARCMSR_HBCMU_OUTBOUND_POSTQUEUE_ISR_MASK); CHIP_REG_WRITE32(HBC_MessageUnit, 0, host_int_mask, intmask_org & mask); - acb->outbound_int_enable= ~(intmask_org & mask) & 0x0000000f; + acb->outbound_int_enable = ~(intmask_org & mask) & 0x0000000f; + } + break; + case ACB_ADAPTER_TYPE_D: { + /* enable outbound Post Queue, outbound doorbell Interrupt */ + mask = ARCMSR_HBDMU_ALL_INT_ENABLE; + CHIP_REG_WRITE32(HBD_MessageUnit, 0, pcief0_int_enable, intmask_org | mask); + CHIP_REG_READ32(HBD_MessageUnit, 0, pcief0_int_enable); + acb->outbound_int_enable = mask; } break; } @@ -424,7 +418,7 @@ static void arcmsr_enable_allintr( struc static u_int8_t arcmsr_hba_wait_msgint_ready(struct AdapterControlBlock *acb) { u_int32_t Index; - u_int8_t Retries=0x00; + u_int8_t Retries = 0x00; do { for(Index=0; Index < 100; Index++) { @@ -444,7 +438,7 @@ static u_int8_t arcmsr_hba_wait_msgint_r static u_int8_t arcmsr_hbb_wait_msgint_ready(struct AdapterControlBlock *acb) { u_int32_t Index; - u_int8_t Retries=0x00; + u_int8_t Retries = 0x00; do { for(Index=0; Index < 100; Index++) { @@ -465,7 +459,7 @@ static u_int8_t arcmsr_hbb_wait_msgint_r static u_int8_t arcmsr_hbc_wait_msgint_ready(struct AdapterControlBlock *acb) { u_int32_t Index; - u_int8_t Retries=0x00; + u_int8_t Retries = 0x00; do { for(Index=0; Index < 100; Index++) { @@ -479,12 +473,32 @@ static u_int8_t arcmsr_hbc_wait_msgint_r return (FALSE); } /* +********************************************************************** +********************************************************************** +*/ +static u_int8_t arcmsr_hbd_wait_msgint_ready(struct AdapterControlBlock *acb) +{ + u_int32_t Index; + u_int8_t Retries = 0x00; + + do { + for(Index=0; Index < 100; Index++) { + if(CHIP_REG_READ32(HBD_MessageUnit, 0, outbound_doorbell) & ARCMSR_HBDMU_IOP2DRV_MESSAGE_CMD_DONE) { + CHIP_REG_WRITE32(HBD_MessageUnit, 0, outbound_doorbell, ARCMSR_HBDMU_IOP2DRV_MESSAGE_CMD_DONE_CLEAR);/*clear interrupt*/ + return TRUE; + } + UDELAY(10000); + }/*max 1 seconds*/ + }while(Retries++ < 20);/*max 20 sec*/ + return (FALSE); +} +/* ************************************************************************ ************************************************************************ */ static void arcmsr_flush_hba_cache(struct AdapterControlBlock *acb) { - int retry_count=30;/* enlarge wait flush adapter cache time: 10 minute */ + int retry_count = 30;/* enlarge wait flush adapter cache time: 10 minute */ CHIP_REG_WRITE32(HBA_MessageUnit, 0, inbound_msgaddr0, ARCMSR_INBOUND_MESG0_FLUSH_CACHE); do { @@ -493,7 +507,7 @@ static void arcmsr_flush_hba_cache(struc } else { retry_count--; } - }while(retry_count!=0); + }while(retry_count != 0); } /* ************************************************************************ @@ -501,7 +515,7 @@ static void arcmsr_flush_hba_cache(struc */ static void arcmsr_flush_hbb_cache(struct AdapterControlBlock *acb) { - int retry_count=30;/* enlarge wait flush adapter cache time: 10 minute */ + int retry_count = 30;/* enlarge wait flush adapter cache time: 10 minute */ CHIP_REG_WRITE32(HBB_DOORBELL, 0, drv2iop_doorbell, ARCMSR_MESSAGE_FLUSH_CACHE); @@ -511,7 +525,7 @@ static void arcmsr_flush_hbb_cache(struc } else { retry_count--; } - }while(retry_count!=0); + }while(retry_count != 0); } /* ************************************************************************ @@ -519,7 +533,7 @@ static void arcmsr_flush_hbb_cache(struc */ static void arcmsr_flush_hbc_cache(struct AdapterControlBlock *acb) { - int retry_count=30;/* enlarge wait flush adapter cache time: 10 minute */ + int retry_count = 30;/* enlarge wait flush adapter cache time: 10 minute */ CHIP_REG_WRITE32(HBC_MessageUnit, 0, inbound_msgaddr0, ARCMSR_INBOUND_MESG0_FLUSH_CACHE); CHIP_REG_WRITE32(HBC_MessageUnit, 0, inbound_doorbell, ARCMSR_HBCMU_DRV2IOP_MESSAGE_CMD_DONE); @@ -529,7 +543,24 @@ static void arcmsr_flush_hbc_cache(struc } else { retry_count--; } - }while(retry_count!=0); + }while(retry_count != 0); +} +/* +************************************************************************ +************************************************************************ +*/ +static void arcmsr_flush_hbd_cache(struct AdapterControlBlock *acb) +{ + int retry_count = 30; /* enlarge wait flush adapter cache time: 10 minute */ + + CHIP_REG_WRITE32(HBD_MessageUnit, 0, inbound_msgaddr0, ARCMSR_INBOUND_MESG0_FLUSH_CACHE); + do { + if(arcmsr_hbd_wait_msgint_ready(acb)) { + break; + } else { + retry_count--; + } + }while(retry_count != 0); } /* ************************************************************************ @@ -550,6 +581,10 @@ static void arcmsr_flush_adapter_cache(s arcmsr_flush_hbc_cache(acb); } break; + case ACB_ADAPTER_TYPE_D: { + arcmsr_flush_hbd_cache(acb); + } + break; } } /* @@ -585,14 +620,14 @@ static void arcmsr_async(void *cb_arg, u { struct AdapterControlBlock *acb; u_int8_t target_id, target_lun; - struct cam_sim * sim; + struct cam_sim *sim; - sim=(struct cam_sim *) cb_arg; + sim = (struct cam_sim *) cb_arg; acb =(struct AdapterControlBlock *) cam_sim_softc(sim); switch (code) { case AC_LOST_DEVICE: - target_id=xpt_path_target_id(path); - target_lun=xpt_path_lun_id(path); + target_id = xpt_path_target_id(path); + target_lun = xpt_path_lun_id(path); if((target_id > ARCMSR_MAX_TARGETID) || (target_lun > ARCMSR_MAX_TARGETLUN)) { break; } @@ -608,7 +643,7 @@ static void arcmsr_async(void *cb_arg, u */ static void arcmsr_report_sense_info(struct CommandControlBlock *srb) { - union ccb * pccb=srb->pccb; + union ccb *pccb = srb->pccb; pccb->ccb_h.status |= CAM_SCSI_STATUS_ERROR; pccb->csio.scsi_status = SCSI_STATUS_CHECK_COND; @@ -658,6 +693,17 @@ static void arcmsr_abort_hbc_allcmd(stru ********************************************************************* ********************************************************************* */ +static void arcmsr_abort_hbd_allcmd(struct AdapterControlBlock *acb) +{ + CHIP_REG_WRITE32(HBD_MessageUnit, 0, inbound_msgaddr0, ARCMSR_INBOUND_MESG0_ABORT_CMD); + if(!arcmsr_hbd_wait_msgint_ready(acb)) { + printf("arcmsr%d: wait 'abort all outstanding command' timeout \n", acb->pci_unit); + } +} +/* +********************************************************************* +********************************************************************* +*/ static void arcmsr_abort_allcmd(struct AdapterControlBlock *acb) { switch (acb->adapter_type) { @@ -673,6 +719,10 @@ static void arcmsr_abort_allcmd(struct A arcmsr_abort_hbc_allcmd(acb); } break; + case ACB_ADAPTER_TYPE_D: { + arcmsr_abort_hbd_allcmd(acb); + } + break; } } /* @@ -681,8 +731,8 @@ static void arcmsr_abort_allcmd(struct A */ static void arcmsr_srb_complete(struct CommandControlBlock *srb, int stand_flag) { - struct AdapterControlBlock *acb=srb->acb; - union ccb * pccb=srb->pccb; + struct AdapterControlBlock *acb = srb->acb; + union ccb *pccb = srb->pccb; if(srb->srb_flags & SRB_FLAG_TIMER_START) callout_stop(&srb->ccb_callout); @@ -697,19 +747,17 @@ static void arcmsr_srb_complete(struct C bus_dmamap_sync(acb->dm_segs_dmat, srb->dm_segs_dmamap, op); bus_dmamap_unload(acb->dm_segs_dmat, srb->dm_segs_dmamap); } - if(stand_flag==1) { + if(stand_flag == 1) { atomic_subtract_int(&acb->srboutstandingcount, 1); if((acb->acb_flags & ACB_F_CAM_DEV_QFRZN) && ( - acb->srboutstandingcount < ARCMSR_RELEASE_SIMQ_LEVEL)) { + acb->srboutstandingcount < (acb->firm_numbers_queue -10))) { acb->acb_flags &= ~ACB_F_CAM_DEV_QFRZN; pccb->ccb_h.status |= CAM_RELEASE_SIMQ; } } if(srb->srb_state != ARCMSR_SRB_TIMEOUT) arcmsr_free_srb(srb); -#ifdef ARCMSR_DEBUG1 acb->pktReturnCount++; -#endif xpt_done(pccb); } /* @@ -720,34 +768,34 @@ static void arcmsr_report_srb_state(stru { int target, lun; - target=srb->pccb->ccb_h.target_id; - lun=srb->pccb->ccb_h.target_lun; + target = srb->pccb->ccb_h.target_id; + lun = srb->pccb->ccb_h.target_lun; if(error == FALSE) { - if(acb->devstate[target][lun]==ARECA_RAID_GONE) { - acb->devstate[target][lun]=ARECA_RAID_GOOD; + if(acb->devstate[target][lun] == ARECA_RAID_GONE) { + acb->devstate[target][lun] = ARECA_RAID_GOOD; } srb->pccb->ccb_h.status |= CAM_REQ_CMP; arcmsr_srb_complete(srb, 1); } else { switch(srb->arcmsr_cdb.DeviceStatus) { case ARCMSR_DEV_SELECT_TIMEOUT: { - if(acb->devstate[target][lun]==ARECA_RAID_GOOD) { + if(acb->devstate[target][lun] == ARECA_RAID_GOOD) { printf( "arcmsr%d: Target=%x, Lun=%x, selection timeout, raid volume was lost\n", acb->pci_unit, target, lun); } - acb->devstate[target][lun]=ARECA_RAID_GONE; + acb->devstate[target][lun] = ARECA_RAID_GONE; srb->pccb->ccb_h.status |= CAM_DEV_NOT_THERE; arcmsr_srb_complete(srb, 1); } break; case ARCMSR_DEV_ABORTED: case ARCMSR_DEV_INIT_FAIL: { - acb->devstate[target][lun]=ARECA_RAID_GONE; + acb->devstate[target][lun] = ARECA_RAID_GONE; srb->pccb->ccb_h.status |= CAM_DEV_NOT_THERE; arcmsr_srb_complete(srb, 1); } break; case SCSISTAT_CHECK_CONDITION: { - acb->devstate[target][lun]=ARECA_RAID_GOOD; + acb->devstate[target][lun] = ARECA_RAID_GOOD; arcmsr_report_sense_info(srb); arcmsr_srb_complete(srb, 1); } @@ -755,7 +803,7 @@ static void arcmsr_report_srb_state(stru default: printf("arcmsr%d: scsi id=%d lun=%d isr got command error done,but got unknow DeviceStatus=0x%x \n" , acb->pci_unit, target, lun ,srb->arcmsr_cdb.DeviceStatus); - acb->devstate[target][lun]=ARECA_RAID_GONE; + acb->devstate[target][lun] = ARECA_RAID_GONE; srb->pccb->ccb_h.status |= CAM_UNCOR_PARITY; /*unknow error or crc error just for retry*/ arcmsr_srb_complete(srb, 1); @@ -774,7 +822,8 @@ static void arcmsr_drain_donequeue(struc /* check if command done with no error*/ switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_C: - srb = (struct CommandControlBlock *)(acb->vir2phy_offset+(flag_srb & 0xFFFFFFE0));/*frame must be 32 bytes aligned*/ + case ACB_ADAPTER_TYPE_D: + srb = (struct CommandControlBlock *)(acb->vir2phy_offset+(flag_srb & 0xFFFFFFE0)); /*frame must be 32 bytes aligned*/ break; case ACB_ADAPTER_TYPE_A: case ACB_ADAPTER_TYPE_B: @@ -782,7 +831,7 @@ static void arcmsr_drain_donequeue(struc srb = (struct CommandControlBlock *)(acb->vir2phy_offset+(flag_srb << 5));/*frame must be 32 bytes aligned*/ break; } - if((srb->acb!=acb) || (srb->srb_state!=ARCMSR_SRB_START)) { + if((srb->acb != acb) || (srb->srb_state != ARCMSR_SRB_START)) { if(srb->srb_state == ARCMSR_SRB_TIMEOUT) { arcmsr_free_srb(srb); printf("arcmsr%d: srb='%p' return srb has been timeouted\n", acb->pci_unit, srb); @@ -799,17 +848,17 @@ static void arcmsr_drain_donequeue(struc ************************************************************************** ************************************************************************** */ -static void arcmsr_srb_timeout(void* arg) +static void arcmsr_srb_timeout(void *arg) { struct CommandControlBlock *srb = (struct CommandControlBlock *)arg; struct AdapterControlBlock *acb; int target, lun; u_int8_t cmd; - target=srb->pccb->ccb_h.target_id; - lun=srb->pccb->ccb_h.target_lun; + target = srb->pccb->ccb_h.target_id; + lun = srb->pccb->ccb_h.target_lun; acb = srb->acb; - ARCMSR_LOCK_ACQUIRE(&acb->qbuffer_lock); + ARCMSR_LOCK_ACQUIRE(&acb->isr_lock); if(srb->srb_state == ARCMSR_SRB_START) { cmd = srb->pccb->csio.cdb_io.cdb_bytes[0]; @@ -819,7 +868,7 @@ static void arcmsr_srb_timeout(void* arg printf("arcmsr%d: scsi id %d lun %d cmd=0x%x srb='%p' ccb command time out!\n", acb->pci_unit, target, lun, cmd, srb); } - ARCMSR_LOCK_RELEASE(&acb->qbuffer_lock); + ARCMSR_LOCK_RELEASE(&acb->isr_lock); #ifdef ARCMSR_DEBUG1 arcmsr_dump_data(acb); #endif @@ -840,10 +889,10 @@ static void arcmsr_done4abort_postqueue( u_int32_t outbound_intstatus; /*clear and abort all outbound posted Q*/ - outbound_intstatus=CHIP_REG_READ32(HBA_MessageUnit, 0, outbound_intstatus) & acb->outbound_int_enable; + outbound_intstatus = CHIP_REG_READ32(HBA_MessageUnit, 0, outbound_intstatus) & acb->outbound_int_enable; CHIP_REG_WRITE32(HBA_MessageUnit, 0, outbound_intstatus, outbound_intstatus);/*clear interrupt*/ while(((flag_srb=CHIP_REG_READ32(HBA_MessageUnit, 0, outbound_queueport)) != 0xFFFFFFFF) && (i++ < ARCMSR_MAX_OUTSTANDING_CMD)) { - error=(flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE0)?TRUE:FALSE; + error = (flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE0)?TRUE:FALSE; arcmsr_drain_donequeue(acb, flag_srb, error); } } @@ -854,26 +903,30 @@ static void arcmsr_done4abort_postqueue( /*clear all outbound posted Q*/ CHIP_REG_WRITE32(HBB_DOORBELL, 0, iop2drv_doorbell, ARCMSR_DOORBELL_INT_CLEAR_PATTERN); /* clear doorbell interrupt */ for(i=0; i < ARCMSR_MAX_HBB_POSTQUEUE; i++) { - if((flag_srb=phbbmu->done_qbuffer[i])!=0) { - phbbmu->done_qbuffer[i]=0; - error=(flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE0)?TRUE:FALSE; + if((flag_srb = phbbmu->done_qbuffer[i]) != 0) { + phbbmu->done_qbuffer[i] = 0; + error = (flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE0)?TRUE:FALSE; arcmsr_drain_donequeue(acb, flag_srb, error); } - phbbmu->post_qbuffer[i]=0; + phbbmu->post_qbuffer[i] = 0; }/*drain reply FIFO*/ - phbbmu->doneq_index=0; - phbbmu->postq_index=0; + phbbmu->doneq_index = 0; + phbbmu->postq_index = 0; } break; case ACB_ADAPTER_TYPE_C: { while((CHIP_REG_READ32(HBC_MessageUnit, 0, host_int_status) & ARCMSR_HBCMU_OUTBOUND_POSTQUEUE_ISR) && (i++ < ARCMSR_MAX_OUTSTANDING_CMD)) { - flag_srb=CHIP_REG_READ32(HBC_MessageUnit, 0, outbound_queueport_low); - error=(flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE1)?TRUE:FALSE; + flag_srb = CHIP_REG_READ32(HBC_MessageUnit, 0, outbound_queueport_low); + error = (flag_srb & ARCMSR_SRBREPLY_FLAG_ERROR_MODE1) ? TRUE : FALSE; arcmsr_drain_donequeue(acb, flag_srb, error); } } break; + case ACB_ADAPTER_TYPE_D: { + arcmsr_hbd_postqueue_isr(acb); + } + break; } } /* @@ -888,15 +941,15 @@ static void arcmsr_iop_reset(struct Adap if(acb->srboutstandingcount>0) { /* disable all outbound interrupt */ - intmask_org=arcmsr_disable_allintr(acb); + intmask_org = arcmsr_disable_allintr(acb); /*clear and abort all outbound posted Q*/ arcmsr_done4abort_postqueue(acb); /* talk to iop 331 outstanding command aborted*/ arcmsr_abort_allcmd(acb); - for(i=0;ipsrb_pool[i]; - if(srb->srb_state==ARCMSR_SRB_START) { - srb->srb_state=ARCMSR_SRB_ABORTED; + for(i=0; i < ARCMSR_MAX_FREESRB_NUM; i++) { + srb = acb->psrb_pool[i]; + if(srb->srb_state == ARCMSR_SRB_START) { + srb->srb_state = ARCMSR_SRB_ABORTED; srb->pccb->ccb_h.status |= CAM_REQ_ABORTED; arcmsr_srb_complete(srb, 1); printf("arcmsr%d: scsi id=%d lun=%d srb='%p' aborted\n" @@ -907,13 +960,11 @@ static void arcmsr_iop_reset(struct Adap /* enable all outbound interrupt */ arcmsr_enable_allintr(acb, intmask_org); } - acb->srboutstandingcount=0; - acb->workingsrb_doneindex=0; - acb->workingsrb_startindex=0; -#ifdef ARCMSR_DEBUG1 + acb->srboutstandingcount = 0; + acb->workingsrb_doneindex = 0; + acb->workingsrb_startindex = 0; acb->pktRequestCount = 0; acb->pktReturnCount = 0; -#endif } /* ********************************************************************** @@ -922,67 +973,66 @@ static void arcmsr_iop_reset(struct Adap static void arcmsr_build_srb(struct CommandControlBlock *srb, bus_dma_segment_t *dm_segs, u_int32_t nseg) { - struct ARCMSR_CDB * arcmsr_cdb= &srb->arcmsr_cdb; - u_int8_t * psge=(u_int8_t *)&arcmsr_cdb->u; + struct ARCMSR_CDB *arcmsr_cdb = &srb->arcmsr_cdb; + u_int8_t *psge = (u_int8_t *)&arcmsr_cdb->u; u_int32_t address_lo, address_hi; - union ccb * pccb=srb->pccb; - struct ccb_scsiio * pcsio= &pccb->csio; - u_int32_t arccdbsize=0x30; + union ccb *pccb = srb->pccb; + struct ccb_scsiio *pcsio = &pccb->csio; + u_int32_t arccdbsize = 0x30; memset(arcmsr_cdb, 0, sizeof(struct ARCMSR_CDB)); - arcmsr_cdb->Bus=0; - arcmsr_cdb->TargetID=pccb->ccb_h.target_id; - arcmsr_cdb->LUN=pccb->ccb_h.target_lun; - arcmsr_cdb->Function=1; - arcmsr_cdb->CdbLength=(u_int8_t)pcsio->cdb_len; - arcmsr_cdb->Context=0; + arcmsr_cdb->Bus = 0; + arcmsr_cdb->TargetID = pccb->ccb_h.target_id; + arcmsr_cdb->LUN = pccb->ccb_h.target_lun; + arcmsr_cdb->Function = 1; + arcmsr_cdb->CdbLength = (u_int8_t)pcsio->cdb_len; bcopy(pcsio->cdb_io.cdb_bytes, arcmsr_cdb->Cdb, pcsio->cdb_len); if(nseg != 0) { - struct AdapterControlBlock *acb=srb->acb; + struct AdapterControlBlock *acb = srb->acb; bus_dmasync_op_t op; - u_int32_t length, i, cdb_sgcount=0; + u_int32_t length, i, cdb_sgcount = 0; if((pccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) { - op=BUS_DMASYNC_PREREAD; + op = BUS_DMASYNC_PREREAD; } else { - op=BUS_DMASYNC_PREWRITE; - arcmsr_cdb->Flags|=ARCMSR_CDB_FLAG_WRITE; - srb->srb_flags|=SRB_FLAG_WRITE; + op = BUS_DMASYNC_PREWRITE; + arcmsr_cdb->Flags |= ARCMSR_CDB_FLAG_WRITE; + srb->srb_flags |= SRB_FLAG_WRITE; } bus_dmamap_sync(acb->dm_segs_dmat, srb->dm_segs_dmamap, op); - for(i=0;iaddress=address_lo; - pdma_sg->length=length; + length = arcmsr_htole32(dm_segs[i].ds_len); + address_lo = arcmsr_htole32(dma_addr_lo32(dm_segs[i].ds_addr)); + address_hi = arcmsr_htole32(dma_addr_hi32(dm_segs[i].ds_addr)); + if(address_hi == 0) { + struct SG32ENTRY *pdma_sg = (struct SG32ENTRY *)psge; + pdma_sg->address = address_lo; + pdma_sg->length = length; psge += sizeof(struct SG32ENTRY); arccdbsize += sizeof(struct SG32ENTRY); } else { - u_int32_t sg64s_size=0, tmplength=length; + u_int32_t sg64s_size = 0, tmplength = length; while(1) { u_int64_t span4G, length0; - struct SG64ENTRY * pdma_sg=(struct SG64ENTRY *)psge; + struct SG64ENTRY *pdma_sg = (struct SG64ENTRY *)psge; - span4G=(u_int64_t)address_lo + tmplength; - pdma_sg->addresshigh=address_hi; - pdma_sg->address=address_lo; + span4G = (u_int64_t)address_lo + tmplength; + pdma_sg->addresshigh = address_hi; + pdma_sg->address = address_lo; if(span4G > 0x100000000) { /*see if cross 4G boundary*/ - length0=0x100000000-address_lo; - pdma_sg->length=(u_int32_t)length0|IS_SG64_ADDR; - address_hi=address_hi+1; - address_lo=0; - tmplength=tmplength-(u_int32_t)length0; + length0 = 0x100000000-address_lo; + pdma_sg->length = (u_int32_t)length0 | IS_SG64_ADDR; + address_hi = address_hi+1; + address_lo = 0; + tmplength = tmplength - (u_int32_t)length0; sg64s_size += sizeof(struct SG64ENTRY); psge += sizeof(struct SG64ENTRY); cdb_sgcount++; } else { - pdma_sg->length=tmplength|IS_SG64_ADDR; + pdma_sg->length = tmplength | IS_SG64_ADDR; sg64s_size += sizeof(struct SG64ENTRY); psge += sizeof(struct SG64ENTRY); break; @@ -992,15 +1042,16 @@ static void arcmsr_build_srb(struct Comm } cdb_sgcount++; } - arcmsr_cdb->sgcount=(u_int8_t)cdb_sgcount; - arcmsr_cdb->DataLength=pcsio->dxfer_len; + arcmsr_cdb->sgcount = (u_int8_t)cdb_sgcount; + arcmsr_cdb->DataLength = pcsio->dxfer_len; if( arccdbsize > 256) { - arcmsr_cdb->Flags|=ARCMSR_CDB_FLAG_SGL_BSIZE; + arcmsr_cdb->Flags |= ARCMSR_CDB_FLAG_SGL_BSIZE; } } else { arcmsr_cdb->DataLength = 0; } - srb->arc_cdb_size=arccdbsize; + srb->arc_cdb_size = arccdbsize; + arcmsr_cdb->msgPages = (arccdbsize/256) + ((arccdbsize % 256) ? 1 : 0); } /* ************************************************************************** @@ -1008,46 +1059,45 @@ static void arcmsr_build_srb(struct Comm */ static void arcmsr_post_srb(struct AdapterControlBlock *acb, struct CommandControlBlock *srb) { - u_int32_t cdb_shifted_phyaddr=(u_int32_t) srb->cdb_shifted_phyaddr; - struct ARCMSR_CDB * arcmsr_cdb=(struct ARCMSR_CDB *)&srb->arcmsr_cdb; + u_int32_t cdb_phyaddr_low = (u_int32_t) srb->cdb_phyaddr_low; + struct ARCMSR_CDB *arcmsr_cdb = (struct ARCMSR_CDB *)&srb->arcmsr_cdb; bus_dmamap_sync(acb->srb_dmat, acb->srb_dmamap, (srb->srb_flags & SRB_FLAG_WRITE) ? BUS_DMASYNC_POSTWRITE:BUS_DMASYNC_POSTREAD); atomic_add_int(&acb->srboutstandingcount, 1); - srb->srb_state=ARCMSR_SRB_START; + srb->srb_state = ARCMSR_SRB_START; switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_A: { if(arcmsr_cdb->Flags & ARCMSR_CDB_FLAG_SGL_BSIZE) { - CHIP_REG_WRITE32(HBA_MessageUnit, 0, inbound_queueport, cdb_shifted_phyaddr|ARCMSR_SRBPOST_FLAG_SGL_BSIZE); + CHIP_REG_WRITE32(HBA_MessageUnit, 0, inbound_queueport, cdb_phyaddr_low|ARCMSR_SRBPOST_FLAG_SGL_BSIZE); } else { - CHIP_REG_WRITE32(HBA_MessageUnit, 0, inbound_queueport, cdb_shifted_phyaddr); + CHIP_REG_WRITE32(HBA_MessageUnit, 0, inbound_queueport, cdb_phyaddr_low); } } break; case ACB_ADAPTER_TYPE_B: { - struct HBB_MessageUnit *phbbmu=(struct HBB_MessageUnit *)acb->pmu; + struct HBB_MessageUnit *phbbmu = (struct HBB_MessageUnit *)acb->pmu; int ending_index, index; - index=phbbmu->postq_index; - ending_index=((index+1)%ARCMSR_MAX_HBB_POSTQUEUE); - phbbmu->post_qbuffer[ending_index]=0; + index = phbbmu->postq_index; + ending_index = ((index+1) % ARCMSR_MAX_HBB_POSTQUEUE); + phbbmu->post_qbuffer[ending_index] = 0; if(arcmsr_cdb->Flags & ARCMSR_CDB_FLAG_SGL_BSIZE) { - phbbmu->post_qbuffer[index]= cdb_shifted_phyaddr|ARCMSR_SRBPOST_FLAG_SGL_BSIZE; + phbbmu->post_qbuffer[index] = cdb_phyaddr_low | ARCMSR_SRBPOST_FLAG_SGL_BSIZE; } else { - phbbmu->post_qbuffer[index]= cdb_shifted_phyaddr; + phbbmu->post_qbuffer[index] = cdb_phyaddr_low; } index++; index %= ARCMSR_MAX_HBB_POSTQUEUE; /*if last index number set it to 0 */ - phbbmu->postq_index=index; + phbbmu->postq_index = index; CHIP_REG_WRITE32(HBB_DOORBELL, 0, drv2iop_doorbell, ARCMSR_DRV2IOP_CDB_POSTED); } break; - case ACB_ADAPTER_TYPE_C: - { + case ACB_ADAPTER_TYPE_C: { u_int32_t ccb_post_stamp, arc_cdb_size, cdb_phyaddr_hi32; - arc_cdb_size=(srb->arc_cdb_size>0x300)?0x300:srb->arc_cdb_size; - ccb_post_stamp=(cdb_shifted_phyaddr | ((arc_cdb_size-1) >> 6) | 1); + arc_cdb_size = (srb->arc_cdb_size > 0x300) ? 0x300 : srb->arc_cdb_size; + ccb_post_stamp = (cdb_phyaddr_low | ((arc_cdb_size-1) >> 6) | 1); cdb_phyaddr_hi32 = acb->srb_phyaddr.B.phyadd_high; if(cdb_phyaddr_hi32) { @@ -1060,33 +1110,67 @@ static void arcmsr_post_srb(struct Adapt } } break; + case ACB_ADAPTER_TYPE_D: { + struct HBD_MessageUnit0 *phbdmu = (struct HBD_MessageUnit0 *)acb->pmu; + u_int16_t index_stripped; + u_int16_t postq_index; + struct InBound_SRB *pinbound_srb; + + ARCMSR_LOCK_ACQUIRE(&acb->postDone_lock); + postq_index = phbdmu->postq_index; + pinbound_srb = (struct InBound_SRB *)&phbdmu->post_qbuffer[postq_index & 0xFF]; + pinbound_srb->addressHigh = srb->cdb_phyaddr_high; + pinbound_srb->addressLow = srb->cdb_phyaddr_low; + pinbound_srb->length = srb->arc_cdb_size >> 2; + arcmsr_cdb->Context = srb->cdb_phyaddr_low; + if (postq_index & 0x4000) { + index_stripped = postq_index & 0xFF; + index_stripped += 1; + index_stripped %= ARCMSR_MAX_HBD_POSTQUEUE; + phbdmu->postq_index = index_stripped ? (index_stripped | 0x4000) : index_stripped; + } else { + index_stripped = postq_index; + index_stripped += 1; + index_stripped %= ARCMSR_MAX_HBD_POSTQUEUE; + phbdmu->postq_index = index_stripped ? index_stripped : (index_stripped | 0x4000); + } + CHIP_REG_WRITE32(HBD_MessageUnit, 0, inboundlist_write_pointer, postq_index); + ARCMSR_LOCK_RELEASE(&acb->postDone_lock); + } + break; } } /* ************************************************************************ ************************************************************************ */ -static struct QBUFFER * arcmsr_get_iop_rqbuffer( struct AdapterControlBlock *acb) +static struct QBUFFER *arcmsr_get_iop_rqbuffer( struct AdapterControlBlock *acb) { struct QBUFFER *qbuffer=NULL; switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_A: { - struct HBA_MessageUnit *phbamu=(struct HBA_MessageUnit *)acb->pmu; + struct HBA_MessageUnit *phbamu = (struct HBA_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbamu->message_rbuffer; + qbuffer = (struct QBUFFER *)&phbamu->message_rbuffer; } break; case ACB_ADAPTER_TYPE_B: { - struct HBB_MessageUnit *phbbmu=(struct HBB_MessageUnit *)acb->pmu; + struct HBB_MessageUnit *phbbmu = (struct HBB_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbbmu->hbb_rwbuffer->message_rbuffer; + qbuffer = (struct QBUFFER *)&phbbmu->hbb_rwbuffer->message_rbuffer; } break; case ACB_ADAPTER_TYPE_C: { - struct HBC_MessageUnit *phbcmu=(struct HBC_MessageUnit *)acb->pmu; + struct HBC_MessageUnit *phbcmu = (struct HBC_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbcmu->message_rbuffer; + qbuffer = (struct QBUFFER *)&phbcmu->message_rbuffer; + } + break; + case ACB_ADAPTER_TYPE_D: { + struct HBD_MessageUnit0 *phbdmu = (struct HBD_MessageUnit0 *)acb->pmu; + + qbuffer = (struct QBUFFER *)&phbdmu->phbdmu->message_rbuffer; } break; } @@ -1096,27 +1180,33 @@ static struct QBUFFER * arcmsr_get_iop_r ************************************************************************ ************************************************************************ */ -static struct QBUFFER * arcmsr_get_iop_wqbuffer( struct AdapterControlBlock *acb) +static struct QBUFFER *arcmsr_get_iop_wqbuffer( struct AdapterControlBlock *acb) { - struct QBUFFER *qbuffer=NULL; + struct QBUFFER *qbuffer = NULL; switch (acb->adapter_type) { case ACB_ADAPTER_TYPE_A: { - struct HBA_MessageUnit *phbamu=(struct HBA_MessageUnit *)acb->pmu; + struct HBA_MessageUnit *phbamu = (struct HBA_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbamu->message_wbuffer; + qbuffer = (struct QBUFFER *)&phbamu->message_wbuffer; } break; case ACB_ADAPTER_TYPE_B: { - struct HBB_MessageUnit *phbbmu=(struct HBB_MessageUnit *)acb->pmu; + struct HBB_MessageUnit *phbbmu = (struct HBB_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbbmu->hbb_rwbuffer->message_wbuffer; + qbuffer = (struct QBUFFER *)&phbbmu->hbb_rwbuffer->message_wbuffer; } break; case ACB_ADAPTER_TYPE_C: { - struct HBC_MessageUnit *phbcmu=(struct HBC_MessageUnit *)acb->pmu; + struct HBC_MessageUnit *phbcmu = (struct HBC_MessageUnit *)acb->pmu; - qbuffer=(struct QBUFFER *)&phbcmu->message_wbuffer; + qbuffer = (struct QBUFFER *)&phbcmu->message_wbuffer; + } + break; + case ACB_ADAPTER_TYPE_D: { + struct HBD_MessageUnit0 *phbdmu = (struct HBD_MessageUnit0 *)acb->pmu; + + qbuffer = (struct QBUFFER *)&phbdmu->phbdmu->message_wbuffer; } break; } @@ -1143,6 +1233,12 @@ static void arcmsr_iop_message_read(stru /* let IOP know data has been read */ CHIP_REG_WRITE32(HBC_MessageUnit, 0, inbound_doorbell, ARCMSR_HBCMU_DRV2IOP_DATA_READ_OK); } + break; + case ACB_ADAPTER_TYPE_D: { + /* let IOP know data has been read */ + CHIP_REG_WRITE32(HBD_MessageUnit, 0, inbound_doorbell, ARCMSR_HBDMU_DRV2IOP_DATA_OUT_READ); + } + break; } } /* @@ -1176,37 +1272,14 @@ static void arcmsr_iop_message_wrote(str CHIP_REG_WRITE32(HBC_MessageUnit, 0, inbound_doorbell, ARCMSR_HBCMU_DRV2IOP_DATA_WRITE_OK); } break; - } -} -/* -********************************************************************** -********************************************************************** -*/ -static void arcmsr_post_ioctldata2iop(struct AdapterControlBlock *acb) -{ - u_int8_t *pQbuffer; - struct QBUFFER *pwbuffer; - u_int8_t * iop_data; - int32_t allxfer_len=0; - - pwbuffer=arcmsr_get_iop_wqbuffer(acb); - iop_data=(u_int8_t *)pwbuffer->data; - if(acb->acb_flags & ACB_F_MESSAGE_WQBUFFER_READ) { - acb->acb_flags &= (~ACB_F_MESSAGE_WQBUFFER_READ); - while((acb->wqbuf_firstindex!=acb->wqbuf_lastindex) - && (allxfer_len<124)) { - pQbuffer=&acb->wqbuffer[acb->wqbuf_firstindex]; - memcpy(iop_data, pQbuffer, 1); - acb->wqbuf_firstindex++; - acb->wqbuf_firstindex %=ARCMSR_MAX_QBUFFER; /*if last index number set it to 0 */ - iop_data++; - allxfer_len++; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 12:48:25 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 3F26910C; Tue, 1 Jan 2013 12:48:25 +0000 (UTC) (envelope-from jilles@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 0B2618FC08; Tue, 1 Jan 2013 12:48:25 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01CmO5r060813; Tue, 1 Jan 2013 12:48:24 GMT (envelope-from jilles@svn.freebsd.org) Received: (from jilles@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01CmOn5060812; Tue, 1 Jan 2013 12:48:24 GMT (envelope-from jilles@svn.freebsd.org) Message-Id: <201301011248.r01CmOn5060812@svn.freebsd.org> From: Jilles Tjoelker Date: Tue, 1 Jan 2013 12:48:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244924 - head/tools/regression/bin/sh/errors X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 12:48:25 -0000 Author: jilles Date: Tue Jan 1 12:48:24 2013 New Revision: 244924 URL: http://svnweb.freebsd.org/changeset/base/244924 Log: sh: Fix a Subversion property. Test scripts should have keywords; only pure output that must match exactly should have keywords disabled. Modified: Directory Properties: head/tools/regression/bin/sh/errors/write-error1.0 (props changed) From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 16:14:49 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 733D5AF0; Tue, 1 Jan 2013 16:14:49 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 37DFB8FC08; Tue, 1 Jan 2013 16:14:49 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01GEnrd093103; Tue, 1 Jan 2013 16:14:49 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01GEmKA093100; Tue, 1 Jan 2013 16:14:48 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201301011614.r01GEmKA093100@svn.freebsd.org> From: Konstantin Belousov Date: Tue, 1 Jan 2013 16:14:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244925 - in head/sys: kern sys ufs/ffs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 16:14:49 -0000 Author: kib Date: Tue Jan 1 16:14:48 2013 New Revision: 244925 URL: http://svnweb.freebsd.org/changeset/base/244925 Log: The process_deferred_inactive() function locks the vnodes of the ufs mount, which means that is must not be called while the snaplock is owned. The vfs_write_resume(9) does call the function as the VFS_SUSP_CLEAN() method, which is too early and falls into the region still protected by snaplock. Add yet another flag for the vfs_write_resume_flags() to avoid calling suspension cleanup handler after the suspend is lifted, and use it in the ffs_snapshot() call to vfs_write_resume. Reported and tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Modified: head/sys/kern/vfs_vnops.c head/sys/sys/vnode.h head/sys/ufs/ffs/ffs_snapshot.c Modified: head/sys/kern/vfs_vnops.c ============================================================================== --- head/sys/kern/vfs_vnops.c Tue Jan 1 12:48:24 2013 (r244924) +++ head/sys/kern/vfs_vnops.c Tue Jan 1 16:14:48 2013 (r244925) @@ -1667,7 +1667,8 @@ vfs_write_resume_flags(struct mount *mp, mp->mnt_writeopcount++; } MNT_IUNLOCK(mp); - VFS_SUSP_CLEAN(mp); + if ((flags & VR_NO_SUSPCLR) == 0) + VFS_SUSP_CLEAN(mp); } else if ((flags & VR_START_WRITE) != 0) { MNT_REF(mp); vn_start_write_locked(mp, 0); Modified: head/sys/sys/vnode.h ============================================================================== --- head/sys/sys/vnode.h Tue Jan 1 12:48:24 2013 (r244924) +++ head/sys/sys/vnode.h Tue Jan 1 16:14:48 2013 (r244925) @@ -393,6 +393,7 @@ extern int vttoif_tab[]; #define V_XSLEEP 0x0004 /* vn_start_write: just return after sleep */ #define VR_START_WRITE 0x0001 /* vfs_write_resume: start write atomically */ +#define VR_NO_SUSPCLR 0x0002 /* vfs_write_resume: do not clear suspension */ #define VREF(vp) vref(vp) Modified: head/sys/ufs/ffs/ffs_snapshot.c ============================================================================== --- head/sys/ufs/ffs/ffs_snapshot.c Tue Jan 1 12:48:24 2013 (r244924) +++ head/sys/ufs/ffs/ffs_snapshot.c Tue Jan 1 16:14:48 2013 (r244925) @@ -687,7 +687,7 @@ out1: /* * Resume operation on filesystem. */ - vfs_write_resume_flags(vp->v_mount, VR_START_WRITE); + vfs_write_resume_flags(vp->v_mount, VR_START_WRITE | VR_NO_SUSPCLR); if (collectsnapstats && starttime.tv_sec > 0) { nanotime(&endtime); timespecsub(&endtime, &starttime); From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:16:51 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DD944C30; Tue, 1 Jan 2013 18:16:51 +0000 (UTC) (envelope-from antoine@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B58188FC08; Tue, 1 Jan 2013 18:16:51 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01IGpet012382; Tue, 1 Jan 2013 18:16:51 GMT (envelope-from antoine@svn.freebsd.org) Received: (from antoine@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01IGoaV012375; Tue, 1 Jan 2013 18:16:50 GMT (envelope-from antoine@svn.freebsd.org) Message-Id: <201301011816.r01IGoaV012375@svn.freebsd.org> From: Antoine Brodin Date: Tue, 1 Jan 2013 18:16:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244926 - head/sys/dev/agp X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:16:51 -0000 Author: antoine Date: Tue Jan 1 18:16:49 2013 New Revision: 244926 URL: http://svnweb.freebsd.org/changeset/base/244926 Log: Remove unneeded semicolons. Reviewed by: md5 of the object files Modified: head/sys/dev/agp/agp_ali.c head/sys/dev/agp/agp_amd.c head/sys/dev/agp/agp_amd64.c head/sys/dev/agp/agp_ati.c head/sys/dev/agp/agp_intel.c head/sys/dev/agp/agp_sis.c head/sys/dev/agp/agp_via.c Modified: head/sys/dev/agp/agp_ali.c ============================================================================== --- head/sys/dev/agp/agp_ali.c Tue Jan 1 16:14:48 2013 (r244925) +++ head/sys/dev/agp/agp_ali.c Tue Jan 1 18:16:49 2013 (r244926) @@ -69,7 +69,7 @@ agp_ali_match(device_t dev) return ("Ali M1541 host to AGP bridge"); case 0x162110b9: return ("Ali M1621 host to AGP bridge"); - }; + } return NULL; } Modified: head/sys/dev/agp/agp_amd.c ============================================================================== --- head/sys/dev/agp/agp_amd.c Tue Jan 1 16:14:48 2013 (r244925) +++ head/sys/dev/agp/agp_amd.c Tue Jan 1 18:16:49 2013 (r244926) @@ -191,7 +191,7 @@ agp_amd_match(device_t dev) return ("AMD 761 host to AGP bridge"); case 0x700c1022: return ("AMD 762 host to AGP bridge"); - }; + } return NULL; } Modified: head/sys/dev/agp/agp_amd64.c ============================================================================== --- head/sys/dev/agp/agp_amd64.c Tue Jan 1 16:14:48 2013 (r244925) +++ head/sys/dev/agp/agp_amd64.c Tue Jan 1 18:16:49 2013 (r244926) @@ -113,7 +113,7 @@ agp_amd64_match(device_t dev) return ("VIA K8T800Pro host to PCI bridge"); case 0x31881106: return ("VIA 8385 host to PCI bridge"); - }; + } return (NULL); } Modified: head/sys/dev/agp/agp_ati.c ============================================================================== --- head/sys/dev/agp/agp_ati.c Tue Jan 1 16:14:48 2013 (r244925) +++ head/sys/dev/agp/agp_ati.c Tue Jan 1 18:16:49 2013 (r244926) @@ -99,7 +99,7 @@ agp_ati_match(device_t dev) return ("ATI RS300_166 AGP bridge"); case 0x58331002: return ("ATI RS300_200 AGP bridge"); - }; + } return NULL; } @@ -199,7 +199,7 @@ agp_ati_attach(device_t dev) default: /* Unknown chipset */ return EINVAL; - }; + } rid = ATI_GART_MMADDR; sc->regs = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, RF_ACTIVE); Modified: head/sys/dev/agp/agp_intel.c ============================================================================== --- head/sys/dev/agp/agp_intel.c Tue Jan 1 16:14:48 2013 (r244925) +++ head/sys/dev/agp/agp_intel.c Tue Jan 1 18:16:49 2013 (r244926) @@ -105,7 +105,7 @@ agp_intel_match(device_t dev) return ("Intel 82845G host to AGP bridge"); case 0x35808086: return ("Intel 82855GM host to AGP bridge"); - }; + } return (NULL); } Modified: head/sys/dev/agp/agp_sis.c ============================================================================== --- head/sys/dev/agp/agp_sis.c Tue Jan 1 16:14:48 2013 (r244925) +++ head/sys/dev/agp/agp_sis.c Tue Jan 1 18:16:49 2013 (r244926) @@ -101,7 +101,7 @@ agp_sis_match(device_t dev) return ("SiS 745 host to AGP bridge"); case 0x07461039: return ("SiS 746 host to AGP bridge"); - }; + } return NULL; } Modified: head/sys/dev/agp/agp_via.c ============================================================================== --- head/sys/dev/agp/agp_via.c Tue Jan 1 16:14:48 2013 (r244925) +++ head/sys/dev/agp/agp_via.c Tue Jan 1 18:16:49 2013 (r244926) @@ -135,7 +135,7 @@ agp_via_match(device_t dev) return ("VIA PT880 host to PCI bridge"); case 0xb1981106: return ("VIA VT83xx/VT87xx/KTxxx/Px8xx host to PCI bridge"); - }; + } return NULL; } From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:25:14 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DACD5E69; Tue, 1 Jan 2013 18:25:14 +0000 (UTC) (envelope-from antoine@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id BD38C8FC08; Tue, 1 Jan 2013 18:25:14 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01IPEkJ013729; Tue, 1 Jan 2013 18:25:14 GMT (envelope-from antoine@svn.freebsd.org) Received: (from antoine@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01IPESx013728; Tue, 1 Jan 2013 18:25:14 GMT (envelope-from antoine@svn.freebsd.org) Message-Id: <201301011825.r01IPESx013728@svn.freebsd.org> From: Antoine Brodin Date: Tue, 1 Jan 2013 18:25:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244927 - head/usr.bin/m4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:25:14 -0000 Author: antoine Date: Tue Jan 1 18:25:14 2013 New Revision: 244927 URL: http://svnweb.freebsd.org/changeset/base/244927 Log: Add missing DPADD. Modified: head/usr.bin/m4/Makefile Modified: head/usr.bin/m4/Makefile ============================================================================== --- head/usr.bin/m4/Makefile Tue Jan 1 18:16:49 2013 (r244926) +++ head/usr.bin/m4/Makefile Tue Jan 1 18:25:14 2013 (r244927) @@ -6,6 +6,7 @@ PROG= m4 CFLAGS+=-DEXTENDED -I${.CURDIR} -I${.CURDIR}/lib +DPADD= ${LIBY} ${LIBL} ${LIBM} LDADD= -ly -ll -lm # clang needs 1 while with gcc we can use 2 #WARNS= 1 From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:26:17 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B1C82FD5; Tue, 1 Jan 2013 18:26:17 +0000 (UTC) (envelope-from gshapiro@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 921DD8FC08; Tue, 1 Jan 2013 18:26:17 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01IQH7N013928; Tue, 1 Jan 2013 18:26:17 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01IQDd3013897; Tue, 1 Jan 2013 18:26:13 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201301011826.r01IQDd3013897@svn.freebsd.org> From: Gregory Neil Shapiro Date: Tue, 1 Jan 2013 18:26:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r244928 - in stable/9/contrib/sendmail: . cf cf/cf cf/feature cf/m4 doc/op include/libmilter include/sm libmilter libmilter/docs src X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:26:17 -0000 Author: gshapiro Date: Tue Jan 1 18:26:12 2013 New Revision: 244928 URL: http://svnweb.freebsd.org/changeset/base/244928 Log: MFC: Merge sendmail 8.14.6 Modified: stable/9/contrib/sendmail/LICENSE stable/9/contrib/sendmail/PGPKEYS stable/9/contrib/sendmail/RELEASE_NOTES stable/9/contrib/sendmail/cf/README stable/9/contrib/sendmail/cf/cf/submit.cf stable/9/contrib/sendmail/cf/feature/ldap_routing.m4 stable/9/contrib/sendmail/cf/m4/proto.m4 stable/9/contrib/sendmail/cf/m4/version.m4 stable/9/contrib/sendmail/doc/op/op.me stable/9/contrib/sendmail/include/libmilter/mfapi.h stable/9/contrib/sendmail/include/sm/clock.h stable/9/contrib/sendmail/include/sm/tailq.h stable/9/contrib/sendmail/libmilter/Makefile.m4 stable/9/contrib/sendmail/libmilter/docs/api.html stable/9/contrib/sendmail/libmilter/docs/smfi_setsymlist.html stable/9/contrib/sendmail/libmilter/docs/smfi_settimeout.html stable/9/contrib/sendmail/libmilter/worker.c stable/9/contrib/sendmail/src/Makefile.m4 stable/9/contrib/sendmail/src/TRACEFLAGS stable/9/contrib/sendmail/src/collect.c stable/9/contrib/sendmail/src/conf.c stable/9/contrib/sendmail/src/daemon.c stable/9/contrib/sendmail/src/deliver.c stable/9/contrib/sendmail/src/headers.c stable/9/contrib/sendmail/src/main.c stable/9/contrib/sendmail/src/map.c stable/9/contrib/sendmail/src/milter.c stable/9/contrib/sendmail/src/parseaddr.c stable/9/contrib/sendmail/src/queue.c stable/9/contrib/sendmail/src/sasl.c stable/9/contrib/sendmail/src/savemail.c stable/9/contrib/sendmail/src/sendmail.h stable/9/contrib/sendmail/src/srvrsmtp.c stable/9/contrib/sendmail/src/stab.c stable/9/contrib/sendmail/src/util.c stable/9/contrib/sendmail/src/version.c Directory Properties: stable/9/contrib/sendmail/ (props changed) Modified: stable/9/contrib/sendmail/LICENSE ============================================================================== --- stable/9/contrib/sendmail/LICENSE Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/LICENSE Tue Jan 1 18:26:12 2013 (r244928) @@ -35,7 +35,7 @@ each of the following conditions is met: forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: - "Copyright (c) 1998-2010 Sendmail, Inc. All rights reserved." + "Copyright (c) 1998-2012 Sendmail, Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor names of their contributors may be used to endorse or promote @@ -78,4 +78,4 @@ each of the following conditions is met: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. -$Revision: 8.17 $, Last updated $Date: 2010/12/03 01:10:00 $, Document 139848.1 +$Revision: 8.18 $, Last updated $Date: 2012/05/15 21:49:03 $, Document 139848.1 Modified: stable/9/contrib/sendmail/PGPKEYS ============================================================================== --- stable/9/contrib/sendmail/PGPKEYS Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/PGPKEYS Tue Jan 1 18:26:12 2013 (r244928) @@ -142,7 +142,149 @@ gpExpdV7qPrw9k01j5rod5PjZlG8zV0= -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use -pub 2048 A97884B0 2011-01-04 ------- RSA Sign & Encrypt +pub 2048 CEEEF43B 2011-12-14 ------- RSA Sign & Encrypt +fingerprint: CA7A 8F39 A241 9FFF B0A9 AB27 8E5A E9FB CEEE F43B +uid Sendmail Signing Key/2012 + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.9 (OpenBSD) + +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 +=qHzF +-----END PGP PUBLIC KEY BLOCK----- + +Type Bits KeyID Created Expires Algorithm Use +pub 2048 A97884B0 2011-01-04 ------- RSA Sign & Encrypt fingerprint: 5872 6218 A913 400D E660 3601 39A4 C77D A978 84B0 uid Sendmail Signing Key/2011 @@ -251,7 +393,7 @@ KH6d5q94eHcPD56A4cYD275DIZzAYqRpwzmB9O84 -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use -pub 2048 85410ABE 2010-02-19 ------- RSA Sign +pub 2048 85410ABE 2010-02-19 ------- RSA Sign fingerprint: B175 9644 5303 5DCE DD7B E919 604D FBF2 8541 0ABE uid Sendmail Signing Key/2010 @@ -1453,13 +1595,79 @@ aBteGdu18ACeNXYmxUhQN/ogZuSaBhd/51aBD8SI -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use +pub 2048 0x0C8B8333 2011-12-14 ---------- RSA Sign & Encrypt +f20 Fingerprint20 = B080 979F 4D04 3E19 D05A 369C 629E F8EE 0C8B 8333 +sub 2048 0x6763ED11 2011-12-14 ---------- RSA +uid Sendmail, Inc. Security Officer + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.11 (Darwin) + +mQENBE7o89QBCADOc3//yYNlUk1zTEPaiskclluwz6o+kkKp+k2x/rGYm+UYHMl1 +w5B1sLs3greR7eGNBmE3Eftr94v/YZrDqcq4mBzQL4qoS+4Bvrjl9GEbAc7Ke08s +ZG0QC5en6mdn0QY3ZSb98GTlImPjiGC0tVCBylJLeyvBSgUTSkkLmp4lsmH6aa2G +IhTatCIV7I/mAB2lM/KyfwmTf2/q8GsyszC4dwVRUSwfkQDfS+dxc60Krf8GNDsj +bPolwAQi+YWMb6renYV2pNA7n9A5nKAE0oq9pe43fv9Pvek+07JJ3YnP0nS2yS4P +PVewsRhEYllEYSmYmEwwCb0682A3HIVZWkalABEBAAG0P1NlbmRtYWlsLCBJbmMu +IFNlY3VyaXR5IE9mZmljZXIgPHNlY3VyaXR5LW9mZmljZXJAc2VuZG1haWwuY29t +PokBOQQTAQIAIwUCTujz1AIbAwcLCQgHAwIBBhUIAgkKCwQWAgMBAh4BAheAAAoJ +EGKe+O4Mi4Mz80MH/0h6qv/sca1mTjy8vYSRYZiIWyYXpuHFUlr31+wF3cBmwCI1 +4qHoRI6MWj4JBnwQq2bAzglgY7GvXXn6TYEFju3gCs6hlvlE8/1z7+Ku/LVsyiCh +3T8tVAxBVeEandnJJgmOP7/dbLBq22/WI7tNi4UOmnqx9n2e2HpBSKk82a2+Z2Mi +9yI6StgTn1osKWTXxyauVJkNKnsoOm/pfH0aR2BbK4K+XtW8B55diGmgKn7o5dN+ +2A+tHqPeioTRgTnzywoSniQ2qOkODKjpNr8UVPVOUFHcO4upT6CQa2hijp3f57ns +GAJs9m/JJDSd8l98nbQZP7G4nZY6RK/NIEkWhECInAQQAQIABgUCTuj0XAAKCRDA +KcpAFvTM6fG9A/9Z9GL5OlfyBYP7XKzFadtg7MReYdcA67DiYpkmiIKnJPSN0X4v +H6Qr/mIjisAGm16UIMQTAIUPJCOm2et+55AA5INWiWrU4TKuCfOUJABMbdyvh5vI +HmBmXdmVartyZj99fCDWOwai1cpm+KQMWvO6FDopPAN+3xJiumIQ6KfO0YkBHAQQ +AQIABgUCTuj0fwAKCRA5pMd9qXiEsL51B/0QR4xgoCCaTzTYKTDYwNanLBa+J+Gm +wO7qU6jK6nnLT1TNyMoElCziVh+rGLELD3Nfw64p0ZG8F4bIJhVLTCpipmXsXnGj +86FrPXV2l/jglNIRv7CD12dBKuYN9AkGJz1Wt6NnaENu9GBciUyIkpVCpSEYTgD2 +jRhkyCqqOSGVj93ze39VPzw6xAGUEQl7+uVUm09lkONDHq4TDr3QcdpyfwntYKib +DfbwmamVwYias6cMxjxT9GPH2Fu0LF9564CGxW3/AUbr9s/Ze85cysAo9JrIHzAL +M9akedEg9Y/VVKH3d634OOXqRuddPjajDcohRZSg9PSrXRquvONR7LjIiJwEEAEC +AAYFAk7pOe0ACgkQzx61AyIyegG9DgQAs6RL4lY2LGaSWrMIHMmsHXEkUT4SNP9n +J8YFAqzhR88dEMC7s6OeCVGniAPnou07pHAez+hNqOvvqJ0HSsJAMaH7IaQKGvCM +6+/VDTBnOJz56r2yVlWqbeTwGKuwwK+nIn4Pdm1DogsN3YMsdfbP4gCcK86mCMef +aEbs75MGJOKIRgQQEQIABgUCTuo+sQAKCRAY9QOAJMJ4Ap/6AJ0W+lZpo0/ttlwI +CCfzyaABwLCRggCg3lKOKjbw52dM/fGQkuVv6VX/OrGInAQQAQIABgUCTuo+uwAK +CRB8S2dtoA4VYwPBA/9A7rXUPQep6yGORpF6KbIGUMNeotPkZp0FES5XbnGFAPJl +P6qUDbM9sPyupk3b+askqHanusmMXQsyKcbTsFzLgoRPU8gjkquEhrwnpWAOz85N +vvHNCNSo7U6Qnyo8B42wXOtumaOTWpko2PC/SkGh4dYA6J2LEftmkVRqZgA6xIic +BBABAgAGBQJO6j7CAAoJENbgof5PvirdnkQD/i8GBLaY97zgOXuoilxq3mQK0cn6 +TWIorrG2J9f1JZGZX6K3mv2G3KsjGs4cXzaFkp2hgD9yqTO/+BBQg0+OiCNxvs+l +zrkP7yIXk7uiUxMMHkXaKwxDUuQbf4V72LJqr5eLZiWNwuWJ2VdsVYoS9/gT4enw +YkZr2hdH/07k4TpDiEYEEBECAAYFAk7qPsgACgkQIfnFvPdqm/XkBQCgjDEuvinF +5lcGIWrERV4wqrgF+JMAoNbS0PaMoXJrVZYHIHhKxHABLP1ZiQEcBBABAgAGBQJO +6j7NAAoJEI5a6fvO7vQ7g8QIAI9j2FkhUN7J6Wk42i/z9vSXCcbXwOnntq8awUz+ +se7Bw1eSLmJs3oxWlL2vhHJVEbvNejh1lReRKDHb6vXZ+YkN/f8TXsj/q+mbCHe9 +NisN5a3BTawAgzVE/E3XvGneQVY1cgC8As8ZoYfRRTdtsEHdicYoCjHWMw1LXfo3 ++hBMsQNvsU1tuPQXjU/qsalfP9qRJe9OVNLo3fkxFSAcalNibB5PS86tyAes+T0k +/5LT30nbeX6ZfY98qDIoRGj7dBWpu73oi4aS713iy0AIyy/Kip5AERtGv+B0llTC +Y21AY0K2JXJGAS7IfVw2BrvbBZevzXe0AursqiLGMZ9Nokm5AQ0ETujz1AEIAM++ +iXuJkoVVvgEb7gxUbJurVDaedOjKVM2pHLuOorQBYI+gQYOZh+r7ZX3PpIGyoLWZ +dlpwEhrEsd/2+TY3nMPzkcfW1D+wkP6MIuD+Y8y1efNeBC7IzNnS5gG3+IItgzEX +Fuql/MMkwQ2xOybYvjzFB5I5cWEkGv1S2xp6uQvIhlD5bWT9R8/1A+9ZZYcP2Ozq +IWQKeBljDEolz7rTd04UgfQK6ROMNYQghTwWZxmBjsdBa7jtWlfjssqngLiuxP5N +XQVwN/vUEbryMfNNS4Stz7/ZrbCwtu9bHfx7sLn7fpcgJso14e42+PAXfnuoXtGm +32o4yUdJPMqwFIMnLS8AEQEAAYkBHwQYAQIACQUCTujz1AIbDAAKCRBinvjuDIuD +MxdPB/91RSXgG8IQDsOroKYNiZbeEHC75vxP3Rl0XOxU3IsN0mzz4ZjS7khLC1Pa +ATCIkx3GwNTjvJkiePpc4knc3ZlKx9fKJz0a+pt0ideMmzYwdcX3enG+Z6z0hEL3 +GJzNC6v7WnV0DsSp7hcT8l9hnqY6HkV497jJG8ztGK3KH943/6YL90RlXqaoRTgq ++bSXhbxHueImhjyYUrmJFTZ0ElSAcuVtJpCHnAEouTQAtshzyUnDXwgoQk9extth +Sn/xUlHB9VGWBAXlq6qJcx2jqWGrmRfz8gMBAwfLTUyNNeixt3TReTtos/HaZK3X +G09zJuZGoDdC9KhhogEVj4Ow+ydV +=qF87 +-----END PGP PUBLIC KEY BLOCK----- + +Type Bits KeyID Created Expires Algorithm Use pub 1024 0xA0F8AA0C 2006-03-17 ---------- DSA Sign & Encrypt f20 Fingerprint20 = 770E 4AC8 8A97 B69E 6E75 0605 1043 2518 A0F8 AA0C sub 2048 0x6E613854 2006-03-17 ---------- Diffie-Hellman -uid Sendmail, Inc. Security Officer +uid Sendmail, Inc. Security Officer [REVOKED] -----BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v1.2.4 (Darwin) +Version: GnuPG v1.4.11 (Darwin) mQGiBEQbQzgRBAC7QmIW2r0oJ9Ixk1ewPxfwN1CU15k2ORBzRVIcO1UcLm6I5t3Z Gorbj22J8xNyY67yQ3pi5O+pffl5LujEKTco3D3sHhHnpz8vIaBiLyVUG3dCHZwU @@ -1469,42 +1677,50 @@ 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 -3plWjAkK4jGDVnkcVv2eMGfTP20= -=Ylc5 +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 +Z9M/bQ== +=nJIt -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use @@ -2082,4 +2298,4 @@ DnF3FZZEzV7oqPwC2jzv/1dD6GFhtgy0cnyoPGUJ =nES8 -----END PGP PUBLIC KEY BLOCK----- -$Revision: 8.36 $, Last updated $Date: 2011/01/28 21:17:54 $ +$Revision: 8.40 $, Last updated $Date: 2012/01/09 04:44:59 $ Modified: stable/9/contrib/sendmail/RELEASE_NOTES ============================================================================== --- stable/9/contrib/sendmail/RELEASE_NOTES Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/RELEASE_NOTES Tue Jan 1 18:26:12 2013 (r244928) @@ -1,11 +1,60 @@ SENDMAIL RELEASE NOTES - $Id: RELEASE_NOTES,v 8.1991 2011/05/15 04:28:16 ca Exp $ + $Id: RELEASE_NOTES,v 8.2011 2012/12/21 18:42:16 ca Exp $ This listing shows the version of the sendmail binary, the version of the sendmail configuration files, the date of release, and a summary of the changes in that release. +8.14.6/8.14.6 2012/12/23 + Fix a regression introduced in 8.14.5: if a server offers + two AUTH lines, the MTA would not read them after + STARTTLS has been used and hence SMTP AUTH for + the client side would fail. Problem noted by Lena. + Do not cache hostnames internally in a non case sensitive way + as that may cause addresses to change from lower case + to upper case or vice versa. These header modifications + can cause problems with milters that rely on receiving + headers in the same way as they are being sent out such + as a DKIM signing milter. + If MaxQueueChildren is set then it was possible that new queue + runners could not be started anymore because an + internal counter was subject to a race condition. + If a milter decreases the timeout it waits for a communication + with the MTA, the MTA might experience a write() timeout. + In some situations, the resulting error might have been + ignored. Problem noted by Werner Wiethege. + Note: decreasing the communication timeout in a milter + should not be done without considering the potential + problems. + smfi_setsymlist() now properly sets the list of macros for + the milter which invoked it, instead of a global + list for all milters. Problem reported by + David Shrimpton of the University of Queensland. + If Timeout.resolver.retrans is set to a value larger than 20, + then resolver.retry was temporarily set to 0 for + gethostbyaddr() lookups. Now it is set to 1 instead. + Patch from Peter. + If sendmail could not lock the statistics file due to a system + error, and sendmail later sends a DSN for a mail that + triggered such an error, then sendmail tried to access + memory that was freed before (causing a crash on some + systems). Problem reported by Ryan Stone. + Do not log negative values for size= nor pri= to avoid confusing + log parsers, instead limit the values to LONG_MAX. + Account for an API change in newer versions of Cyrus-SASL. + Patch from Hajimu UMEMOTO from FreeBSD. + Do not try to resolve link-local addresses for IPv4 (just as it + is done for IPv6). Patch from John Beck of Oracle. + Improve logging of client and server STARTTLS connection failures + that may be due to incompatible cipher lists by including + the reason for the failure in a single log line. Suggested + by James Carey of Boeing. + Portability: + Add support for Darwin 11.x and 12.x (Mac OS X 10.7 and 10.8). + Add support for SunOS 5.12 (aka Solaris 12). Patch from + John Beck of Oracle. + 8.14.5/8.14.5 2011/05/17 Do not cache SMTP extensions across connections as the cache is based on hostname which may not be a unique identifier Modified: stable/9/contrib/sendmail/cf/README ============================================================================== --- stable/9/contrib/sendmail/cf/README Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/cf/README Tue Jan 1 18:26:12 2013 (r244928) @@ -1144,7 +1144,7 @@ relay_hosts_only For example, if you specify ``foo.com'', then mail to or from foo.com, abc.foo.com, or a.very.deep.domain.foo.com will all be accepted for relaying. This feature changes - the behaviour to lookup individual host names only. + the behaviour to look up individual host names only. relay_based_on_MX Turns on the ability to allow relaying based on the MX @@ -2230,9 +2230,9 @@ command: FEATURE(`ldap_routing', , , , , , ) -where is a map definition describing how to lookup an alternative +where is a map definition describing how to look up an alternative mail host for a particular address; is a map definition -describing how to lookup an alternative address for a particular address; +describing how to look up an alternative address for a particular address; the argument, if present and not the word "passthru", dictates that mail should be bounced if neither a mailHost nor mailRoutingAddress is found, if set to "sendertoo", the sender will be rejected if not @@ -4701,4 +4701,4 @@ M4 DIVERSIONS 8 DNS based blacklists 9 special local rulesets (1 and 2) -$Revision: 8.727 $, Last updated $Date: 2009/05/07 23:46:17 $ +$Revision: 8.728 $, Last updated $Date: 2012/09/07 16:29:13 $ Modified: stable/9/contrib/sendmail/cf/cf/submit.cf ============================================================================== --- stable/9/contrib/sendmail/cf/cf/submit.cf Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/cf/cf/submit.cf Tue Jan 1 18:26:12 2013 (r244928) @@ -16,8 +16,8 @@ ##### ##### SENDMAIL CONFIGURATION FILE ##### -##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:14 PDT 2011 -##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf +##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012 +##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf ##### using ../ as configuration include directory ##### ###################################################################### @@ -35,7 +35,7 @@ ##### $Id: no_default_msa.m4,v 8.2 2001/02/14 05:03:22 gshapiro Exp $ ##### -##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ ##### +##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ ##### # level 10 config file format V10/Berkeley @@ -114,7 +114,7 @@ D{MTAHost}[127.0.0.1] # Configuration version number -DZ8.14.5/Submit +DZ8.14.6/Submit ############### @@ -926,6 +926,8 @@ SParseLocal=98 + + ###################################################################### ### CanonAddr -- Convert an address into a standard form for ### relay checking. Route address syntax is Modified: stable/9/contrib/sendmail/cf/feature/ldap_routing.m4 ============================================================================== --- stable/9/contrib/sendmail/cf/feature/ldap_routing.m4 Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/cf/feature/ldap_routing.m4 Tue Jan 1 18:26:12 2013 (r244928) @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: ldap_routing.m4,v 8.18 2010/01/05 00:57:27 ca Exp $') +VERSIONID(`$Id: ldap_routing.m4,v 8.20 2012/01/18 22:27:06 ca Exp $') divert(-1) # Check first two arguments. If they aren't set, may need to warn in proto.m4 Modified: stable/9/contrib/sendmail/cf/m4/proto.m4 ============================================================================== --- stable/9/contrib/sendmail/cf/m4/proto.m4 Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/cf/m4/proto.m4 Tue Jan 1 18:26:12 2013 (r244928) @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $') +VERSIONID(`$Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $') # level CF_LEVEL config file format V`'CF_LEVEL`'ifdef(`NO_VENDOR',`', `/ifdef(`VENDOR_NAME', `VENDOR_NAME', `Berkeley')') @@ -1532,8 +1532,9 @@ R <$+> $#error $@ nouser $: " R <$*> <$+> $@ $2', `dnl # return the original address -R<> <> <$+> <@ $+> <$*> $@ $1')', -`dnl') +R<> <> <$+> <@ $+> <$*> $@ $1') +') + ifelse(substr(confDELIVERY_MODE,0,1), `d', `errprint(`WARNING: Antispam rules not available in deferred delivery mode. ')') Modified: stable/9/contrib/sendmail/cf/m4/version.m4 ============================================================================== --- stable/9/contrib/sendmail/cf/m4/version.m4 Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/cf/m4/version.m4 Tue Jan 1 18:26:12 2013 (r244928) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2011 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2012 Sendmail, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -11,8 +11,8 @@ divert(-1) # the sendmail distribution. # # -VERSIONID(`$Id: version.m4,v 8.214 2011/04/26 23:02:36 ca Exp $') +VERSIONID(`$Id: version.m4,v 8.222 2012/12/19 05:11:43 ca Exp $') # divert(0) # Configuration version number -DZ8.14.5`'ifdef(`confCF_VERSION', `/confCF_VERSION') +DZ8.14.6`'ifdef(`confCF_VERSION', `/confCF_VERSION') Modified: stable/9/contrib/sendmail/doc/op/op.me ============================================================================== --- stable/9/contrib/sendmail/doc/op/op.me Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/doc/op/op.me Tue Jan 1 18:26:12 2013 (r244928) @@ -9,7 +9,7 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: op.me,v 8.747 2010/05/08 04:18:27 ca Exp $ +.\" $Id: op.me,v 8.749 2012/03/02 22:37:11 ca Exp $ .\" .\" eqn op.me | pic | troff -me .\" @@ -90,7 +90,7 @@ Sendmail, Inc. .de Ve Version \\$2 .. -.Ve $Revision: 8.747 $ +.Ve $Revision: 8.749 $ .rm Ve .sp For Sendmail Version 8.14 @@ -5999,7 +5999,7 @@ mailer. .ip @ Look up addresses in the user database. .ip % -Do not attempt delivery on initial recipient of a message +Do not attempt delivery on initial receipt of a message or on queue runs unless the queued message is selected using one of the -qI/-qR/-qS queue run modifiers @@ -7540,6 +7540,10 @@ This is intended to allow you to get res by processing the queue fairly frequently without thrashing your system by trying jobs too often. The default units are minutes. +Note: +This option is ignored for queue runs that select a subset +of the queue, i.e., +.q \-q[!][I|R|S|Q][string] .ip MustQuoteChars=\fIs\fP [no short name] Sets the list of characters that must be quoted if used in a full name @@ -11467,7 +11471,7 @@ replace it with a blank sheet for double .\".sz 10 .\"Eric Allman .\".sp -.\"Version $Revision: 8.747 $ +.\"Version $Revision: 8.749 $ .\".ce 0 .bp 3 .ce Modified: stable/9/contrib/sendmail/include/libmilter/mfapi.h ============================================================================== --- stable/9/contrib/sendmail/include/libmilter/mfapi.h Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/include/libmilter/mfapi.h Tue Jan 1 18:26:12 2013 (r244928) @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999-2004, 2006, 2008 Sendmail, Inc. and its suppliers. + * Copyright (c) 1999-2004, 2006, 2008, 2012 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -7,7 +7,7 @@ * the sendmail distribution. * * - * $Id: mfapi.h,v 8.80 2009/11/06 00:57:08 ca Exp $ + * $Id: mfapi.h,v 8.82 2012/11/16 20:25:04 ca Exp $ */ /* @@ -206,6 +206,7 @@ LIBMILTER_API int smfi_version __P((unsi ** (hence the list is not sorted by the SMT protocol steps). */ +#define SMFIM_NOMACROS (-1) /* Do NOT use, internal only */ #define SMFIM_FIRST 0 /* Do NOT use, internal marker only */ #define SMFIM_CONNECT 0 /* connect */ #define SMFIM_HELO 1 /* HELO/EHLO */ Modified: stable/9/contrib/sendmail/include/sm/clock.h ============================================================================== --- stable/9/contrib/sendmail/include/sm/clock.h Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/include/sm/clock.h Tue Jan 1 18:26:12 2013 (r244928) @@ -9,7 +9,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: clock.h,v 1.12 2004/08/03 19:57:21 ca Exp $ + * $Id: clock.h,v 1.13 2011/11/03 03:13:24 ca Exp $ */ /* @@ -59,7 +59,7 @@ extern SIGFUNC_DECL sm_tick __P((int)); /* ** SM_SETEVENT -- set an event to happen at a specific time in seconds. ** -** Translates the seconds into millseconds and calls sm_seteventm() +** Translates the seconds into milliseconds and calls sm_seteventm() ** to get a specific event to happen in the future at a specific time. ** ** Parameters: Modified: stable/9/contrib/sendmail/include/sm/tailq.h ============================================================================== --- stable/9/contrib/sendmail/include/sm/tailq.h Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/include/sm/tailq.h Tue Jan 1 18:26:12 2013 (r244928) @@ -36,7 +36,7 @@ #define SM_TAILQ_H_ /* - * $Id: tailq.h,v 1.2 2007/06/29 23:09:57 ca Exp $ + * $Id: tailq.h,v 1.3 2012/01/21 00:12:14 ashish Exp $ * * This file is a modified copy of queue.h from a BSD system: * we only need tail queues here. @@ -69,8 +69,8 @@ struct { \ struct type **tqe_prev; /* address of previous next element */ \ } -/* - * tail queue access methods +/* + * tail queue access methods */ #define SM_TAILQ_FIRST(head) ((head)->tqh_first) #define SM_TAILQ_END(head) NULL Modified: stable/9/contrib/sendmail/libmilter/Makefile.m4 ============================================================================== --- stable/9/contrib/sendmail/libmilter/Makefile.m4 Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/libmilter/Makefile.m4 Tue Jan 1 18:26:12 2013 (r244928) @@ -1,4 +1,4 @@ -dnl $Id: Makefile.m4,v 8.85 2009/11/24 21:59:33 ca Exp $ +dnl $Id: Makefile.m4,v 8.88 2012/09/25 17:40:32 ca Exp $ include(confBUILDTOOLSDIR`/M4/switch.m4') dnl only required for compilation of EXTRAS Modified: stable/9/contrib/sendmail/libmilter/docs/api.html ============================================================================== --- stable/9/contrib/sendmail/libmilter/docs/api.html Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/libmilter/docs/api.html Tue Jan 1 18:26:12 2013 (r244928) @@ -2,7 +2,7 @@ Milter API

Milter API

@@ -214,7 +214,6 @@ other callbacks are message-oriented. SMFIS_REJECT For a connection-oriented routine, reject this connection; call xxfi_close.
For a message-oriented routine (except - xxfi_eom or xxfi_abort), reject this message.
For a recipient-oriented routine, reject the current recipient (but continue processing the current message). Modified: stable/9/contrib/sendmail/libmilter/docs/smfi_setsymlist.html ============================================================================== --- stable/9/contrib/sendmail/libmilter/docs/smfi_setsymlist.html Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/libmilter/docs/smfi_setsymlist.html Tue Jan 1 18:26:12 2013 (r244928) @@ -2,7 +2,7 @@ smfi_setsymlist

smfi_setsymlist

@@ -86,8 +86,10 @@ Otherwise MI_SUCCESS is returned. NOTES -There is an internal limit on the number of macros that can be -set (currently 5), +There is an internal limit on the number of macros +that can be set + +(currently 50), however, this limit is not enforced by libmilter, only by the MTA, but a possible violation of this restriction is not communicated back to the milter. @@ -97,7 +99,7 @@ the milter.
-Copyright (c) 2006 Sendmail, Inc. and its suppliers. +Copyright (c) 2006, 2012 Sendmail, Inc. and its suppliers. All rights reserved.
By using this file, you agree to the terms and conditions set Modified: stable/9/contrib/sendmail/libmilter/docs/smfi_settimeout.html ============================================================================== --- stable/9/contrib/sendmail/libmilter/docs/smfi_settimeout.html Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/libmilter/docs/smfi_settimeout.html Tue Jan 1 18:26:12 2013 (r244928) @@ -2,7 +2,7 @@ smfi_settimeout

smfi_settimeout

@@ -52,11 +52,24 @@ If smfi_settimeout is not called, a defa smfi_settimeout always returns MI_SUCCESS. + + +NOTES + +Decreasing the timeout is strongly discouraged +and may break the communication with the MTA. +Do not decrease this value without making sure that +the MTA also uses lower timeouts for communication +(with the milter and with the SMTP client). + + + +
-Copyright (c) 2000, 2002-2003, 2006 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2002-2003, 2006, 2011 Sendmail, Inc. and its suppliers. All rights reserved.
By using this file, you agree to the terms and conditions set Modified: stable/9/contrib/sendmail/libmilter/worker.c ============================================================================== --- stable/9/contrib/sendmail/libmilter/worker.c Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/libmilter/worker.c Tue Jan 1 18:26:12 2013 (r244928) @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003-2004, 2007, 2009-2011 Sendmail, Inc. and its suppliers. + * Copyright (c) 2003-2004, 2007, 2009-2012 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -11,7 +11,7 @@ */ #include -SM_RCSID("@(#)$Id: worker.c,v 8.19 2011/02/14 23:33:48 ca Exp $") +SM_RCSID("@(#)$Id: worker.c,v 8.24 2012/03/13 15:37:46 ca Exp $") #include "libmilter.h" @@ -141,7 +141,8 @@ static int mi_list_del_ctx __P((SMFICTX_ #if POOL_DEBUG # define POOL_LEV_DPRINTF(lev, x) \ - do { \ + do \ + { \ if ((lev) < ctx->ctx_dbg) \ sm_dprintf x; \ } while (0) @@ -377,7 +378,7 @@ mi_pool_controller(arg) for (;;) { SMFICTX_PTR ctx; - int nfd, rfd, i; + int nfd, r, i; time_t now; POOL_LEV_DPRINTF(4, ("Let's %s again...", WAITFN)); @@ -498,19 +499,19 @@ mi_pool_controller(arg) TASKMGR_UNLOCK(); /* Everything is ready, let's wait for an event */ - rfd = poll(pfd, nfd, POLL_TIMEOUT); + r = poll(pfd, nfd, POLL_TIMEOUT); POOL_LEV_DPRINTF(4, ("%s returned: at epoch %d value %d", WAITFN, now, nfd)); /* timeout */ - if (rfd == 0) + if (r == 0) continue; rebuild_set = true; /* error */ - if (rfd < 0) + if (r < 0) { if (errno == EINTR) continue; @@ -522,6 +523,7 @@ mi_pool_controller(arg) if (pcnt >= MAX_FAILS_S) goto err; + continue; } pcnt = 0; @@ -535,7 +537,7 @@ mi_pool_controller(arg) WAITFN, i, nfd, WAIT_FD(i))); - /* has a worker signaled an end of task ? */ + /* has a worker signaled an end of task? */ if (WAIT_FD(i) == RD_PIPE) { char evts[256]; @@ -563,7 +565,12 @@ mi_pool_controller(arg) continue; } - /* no ! sendmail wants to send a command */ + /* + ** Not the pipe for workers waking us, + ** so must be something on an MTA connection. + */ + + TASKMGR_LOCK(); SM_TAILQ_FOREACH(ctx, &WRK_CTX_HEAD, ctx_link) { if (ctx->ctx_wstate != WKST_WAITING) @@ -575,7 +582,6 @@ mi_pool_controller(arg) if (ctx->ctx_sd == pfd[i].fd) { - TASKMGR_LOCK(); POOL_LEV_DPRINTF(4, ("TASK: found %d for fd[%d]=%d", @@ -591,10 +597,10 @@ mi_pool_controller(arg) ctx->ctx_wstate = WKST_RUNNING; LAUNCH_WORKER(ctx); } - TASKMGR_UNLOCK(); break; } } + TASKMGR_UNLOCK(); POOL_LEV_DPRINTF(4, ("TASK %s FOUND - Checking PIPE for fd[%d]", @@ -607,6 +613,14 @@ mi_pool_controller(arg) free(pfd); Tskmgr.tm_signature = 0; +#if 0 + /* + ** Do not clean up ctx -- it can cause double-free()s. + ** The program is shutting down anyway, so it's not worth the trouble. + ** There is a more complex solution that prevents race conditions + ** while accessing ctx, but that's maybe for a later version. + */ + for (;;) { SMFICTX_PTR ctx; @@ -616,6 +630,7 @@ mi_pool_controller(arg) break; mi_close_session(ctx); } +#endif (void) smutex_destroy(&Tskmgr.tm_w_mutex); (void) scond_destroy(&Tskmgr.tm_w_cond); Modified: stable/9/contrib/sendmail/src/Makefile.m4 ============================================================================== --- stable/9/contrib/sendmail/src/Makefile.m4 Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/src/Makefile.m4 Tue Jan 1 18:26:12 2013 (r244928) @@ -1,4 +1,4 @@ -dnl $Id: Makefile.m4,v 8.126 2010/11/24 19:59:54 gshapiro Exp $ +dnl $Id: Makefile.m4,v 8.132 2012/09/11 20:02:44 ca Exp $ include(confBUILDTOOLSDIR`/M4/switch.m4') define(`confREQUIRE_LIBSM', `true') Modified: stable/9/contrib/sendmail/src/TRACEFLAGS ============================================================================== --- stable/9/contrib/sendmail/src/TRACEFLAGS Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/src/TRACEFLAGS Tue Jan 1 18:26:12 2013 (r244928) @@ -1,4 +1,4 @@ -# $Id: TRACEFLAGS,v 8.48 2008/11/03 21:09:26 gshapiro Exp $ +# $Id: TRACEFLAGS,v 8.52 2012/03/03 00:10:42 ca Exp $ 0, 4 main.c main canonical name, UUCP node name, a.k.a.s 0, 15 main.c main print configuration 0, 44 util.c printav print address of each string @@ -77,12 +77,12 @@ 63 queue.c runqueue process watching 64 multiple Milter 65 main.c permission checks -#if _FFR_ADAPTIVE_EOL -66 srvrsmtp.c conformance checks -#endif /* _FFR_ADAPTIVE_EOL */ -#if _FFR_QUEUE_SCHED_DBG -69 queue.c scheduling -#endif /* _FFR_QUEUE_SCHED_DBG */ +#if _FFR_ADAPTIVE_EOL +66 srvrsmtp.c conformance checks +#endif /* _FFR_ADAPTIVE_EOL */ +#if _FFR_QUEUE_SCHED_DBG +69 queue.c scheduling +#endif /* _FFR_QUEUE_SCHED_DBG */ 70 queue.c quarantining 71,>99 milter.c quarantine on errors 73 queue.c shared memory updates @@ -92,6 +92,7 @@ 83 collect.c timeout 84 deliver.c timeout 85 map.c dprintf map +89 conf.c >=8 use sm_dprintf() instead of syslog() 91 mci.c syslogging of MCI cache information 93,>99 * Prevent daemon connection fork for profiling/debugging 94,>99 srvrsmtp.c cause commands to fail (for protocol testing) Modified: stable/9/contrib/sendmail/src/collect.c ============================================================================== --- stable/9/contrib/sendmail/src/collect.c Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/src/collect.c Tue Jan 1 18:26:12 2013 (r244928) @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: collect.c,v 8.284 2008/08/06 05:26:24 ca Exp $") +SM_RCSID("@(#)$Id: collect.c,v 8.285 2012/06/14 23:54:02 ca Exp $") static void eatfrom __P((char *volatile, ENVELOPE *)); static void collect_doheader __P((ENVELOPE *)); @@ -869,7 +869,8 @@ readerr: if (LogLevel > 6) sm_syslog(LOG_NOTICE, e->e_id, "message size (%ld) exceeds maximum (%ld)", - e->e_msgsize, MaxMessageSize); + PRT_NONNEGL(e->e_msgsize), + MaxMessageSize); } } Modified: stable/9/contrib/sendmail/src/conf.c ============================================================================== --- stable/9/contrib/sendmail/src/conf.c Tue Jan 1 18:25:14 2013 (r244927) +++ stable/9/contrib/sendmail/src/conf.c Tue Jan 1 18:26:12 2013 (r244928) @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2010 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2012 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: conf.c,v 8.1168 2011/01/25 18:31:30 ca Exp $") +SM_RCSID("@(#)$Id: conf.c,v 8.1176 2012/12/07 03:59:54 ca Exp $") #include #include @@ -53,7 +53,7 @@ static int add_hostnames __P((SOCKADDR * static struct hostent *sm_getipnodebyname __P((const char *, int, int, int *)); static struct hostent *sm_getipnodebyaddr __P((const void *, size_t, int, int *)); #else /* NETINET6 && NEEDSGETIPNODE */ -#define sm_getipnodebyname getipnodebyname +#define sm_getipnodebyname getipnodebyname #define sm_getipnodebyaddr getipnodebyaddr #endif /* NETINET6 && NEEDSGETIPNODE */ @@ -4602,6 +4602,10 @@ add_hostnames(sa) int save_errno = errno; if (LogLevel > 3 && +#if NETINET && defined(IN_LINKLOCAL) + !(sa->sa.sa_family == AF_INET && + IN_LINKLOCAL(ntohl(sa->sin.sin_addr.s_addr))) && +#endif /* NETINET && defined(IN_LINKLOCAL) */ #if NETINET6 !(sa->sa.sa_family == AF_INET6 && IN6_IS_ADDR_LINKLOCAL(&sa->sin6.sin6_addr)) && @@ -5374,14 +5378,30 @@ sm_syslog(level, id, fmt, va_alist) #if LOG if (*id == '\0') { - if (tTd(89, 8)) + if (tTd(89, 10)) + { + struct timeval tv; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:28:21 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id DE3BC1C5; Tue, 1 Jan 2013 18:28:21 +0000 (UTC) (envelope-from antoine@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C38098FC08; Tue, 1 Jan 2013 18:28:21 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01ISLhA014269; Tue, 1 Jan 2013 18:28:21 GMT (envelope-from antoine@svn.freebsd.org) Received: (from antoine@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01ISLSB014268; Tue, 1 Jan 2013 18:28:21 GMT (envelope-from antoine@svn.freebsd.org) Message-Id: <201301011828.r01ISLSB014268@svn.freebsd.org> From: Antoine Brodin Date: Tue, 1 Jan 2013 18:28:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244929 - head/sbin/pflogd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:28:21 -0000 Author: antoine Date: Tue Jan 1 18:28:21 2013 New Revision: 244929 URL: http://svnweb.freebsd.org/changeset/base/244929 Log: pflogd does not depend on libutil Modified: head/sbin/pflogd/Makefile Modified: head/sbin/pflogd/Makefile ============================================================================== --- head/sbin/pflogd/Makefile Tue Jan 1 18:26:12 2013 (r244928) +++ head/sbin/pflogd/Makefile Tue Jan 1 18:28:21 2013 (r244929) @@ -9,7 +9,7 @@ MAN= pflogd.8 CFLAGS+=-include ${.CURDIR}/../../lib/libpcap/config.h LDADD= -lpcap -DPADD= ${LIBPCAP} ${LIBUTIL} +DPADD= ${LIBPCAP} WARNS?= 2 From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:29:09 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 45AE732E; Tue, 1 Jan 2013 18:29:09 +0000 (UTC) (envelope-from gshapiro@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 25D248FC12; Tue, 1 Jan 2013 18:29:09 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01IT9o8014435; Tue, 1 Jan 2013 18:29:09 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01IT49p014409; Tue, 1 Jan 2013 18:29:04 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201301011829.r01IT49p014409@svn.freebsd.org> From: Gregory Neil Shapiro Date: Tue, 1 Jan 2013 18:29:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r244930 - in stable/8/contrib/sendmail: . cf cf/cf cf/feature cf/m4 doc/op include/libmilter include/sm libmilter libmilter/docs src X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:29:09 -0000 Author: gshapiro Date: Tue Jan 1 18:29:04 2013 New Revision: 244930 URL: http://svnweb.freebsd.org/changeset/base/244930 Log: MFC: Merge sendmail 8.14.6 Modified: stable/8/contrib/sendmail/LICENSE (contents, props changed) stable/8/contrib/sendmail/PGPKEYS (contents, props changed) stable/8/contrib/sendmail/RELEASE_NOTES (contents, props changed) stable/8/contrib/sendmail/cf/README stable/8/contrib/sendmail/cf/cf/submit.cf stable/8/contrib/sendmail/cf/feature/ldap_routing.m4 stable/8/contrib/sendmail/cf/m4/proto.m4 stable/8/contrib/sendmail/cf/m4/version.m4 stable/8/contrib/sendmail/doc/op/op.me stable/8/contrib/sendmail/include/libmilter/mfapi.h stable/8/contrib/sendmail/include/sm/clock.h stable/8/contrib/sendmail/include/sm/tailq.h stable/8/contrib/sendmail/libmilter/Makefile.m4 stable/8/contrib/sendmail/libmilter/docs/api.html stable/8/contrib/sendmail/libmilter/docs/smfi_setsymlist.html stable/8/contrib/sendmail/libmilter/docs/smfi_settimeout.html stable/8/contrib/sendmail/libmilter/worker.c stable/8/contrib/sendmail/src/Makefile.m4 stable/8/contrib/sendmail/src/TRACEFLAGS stable/8/contrib/sendmail/src/collect.c stable/8/contrib/sendmail/src/conf.c stable/8/contrib/sendmail/src/daemon.c stable/8/contrib/sendmail/src/deliver.c stable/8/contrib/sendmail/src/headers.c stable/8/contrib/sendmail/src/main.c stable/8/contrib/sendmail/src/map.c stable/8/contrib/sendmail/src/milter.c stable/8/contrib/sendmail/src/parseaddr.c stable/8/contrib/sendmail/src/queue.c stable/8/contrib/sendmail/src/sasl.c stable/8/contrib/sendmail/src/savemail.c stable/8/contrib/sendmail/src/sendmail.h stable/8/contrib/sendmail/src/srvrsmtp.c stable/8/contrib/sendmail/src/stab.c stable/8/contrib/sendmail/src/util.c stable/8/contrib/sendmail/src/version.c Directory Properties: stable/8/contrib/sendmail/ (props changed) stable/8/contrib/sendmail/cf/ (props changed) stable/8/contrib/sendmail/doc/ (props changed) stable/8/contrib/sendmail/include/ (props changed) stable/8/contrib/sendmail/libmilter/ (props changed) stable/8/contrib/sendmail/src/ (props changed) Modified: stable/8/contrib/sendmail/LICENSE ============================================================================== --- stable/8/contrib/sendmail/LICENSE Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/LICENSE Tue Jan 1 18:29:04 2013 (r244930) @@ -35,7 +35,7 @@ each of the following conditions is met: forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: - "Copyright (c) 1998-2010 Sendmail, Inc. All rights reserved." + "Copyright (c) 1998-2012 Sendmail, Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor names of their contributors may be used to endorse or promote @@ -78,4 +78,4 @@ each of the following conditions is met: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. -$Revision: 8.17 $, Last updated $Date: 2010/12/03 01:10:00 $, Document 139848.1 +$Revision: 8.18 $, Last updated $Date: 2012/05/15 21:49:03 $, Document 139848.1 Modified: stable/8/contrib/sendmail/PGPKEYS ============================================================================== --- stable/8/contrib/sendmail/PGPKEYS Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/PGPKEYS Tue Jan 1 18:29:04 2013 (r244930) @@ -142,7 +142,149 @@ gpExpdV7qPrw9k01j5rod5PjZlG8zV0= -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use -pub 2048 A97884B0 2011-01-04 ------- RSA Sign & Encrypt +pub 2048 CEEEF43B 2011-12-14 ------- RSA Sign & Encrypt +fingerprint: CA7A 8F39 A241 9FFF B0A9 AB27 8E5A E9FB CEEE F43B +uid Sendmail Signing Key/2012 + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.9 (OpenBSD) + +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 +=qHzF +-----END PGP PUBLIC KEY BLOCK----- + +Type Bits KeyID Created Expires Algorithm Use +pub 2048 A97884B0 2011-01-04 ------- RSA Sign & Encrypt fingerprint: 5872 6218 A913 400D E660 3601 39A4 C77D A978 84B0 uid Sendmail Signing Key/2011 @@ -251,7 +393,7 @@ KH6d5q94eHcPD56A4cYD275DIZzAYqRpwzmB9O84 -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use -pub 2048 85410ABE 2010-02-19 ------- RSA Sign +pub 2048 85410ABE 2010-02-19 ------- RSA Sign fingerprint: B175 9644 5303 5DCE DD7B E919 604D FBF2 8541 0ABE uid Sendmail Signing Key/2010 @@ -1453,13 +1595,79 @@ aBteGdu18ACeNXYmxUhQN/ogZuSaBhd/51aBD8SI -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use +pub 2048 0x0C8B8333 2011-12-14 ---------- RSA Sign & Encrypt +f20 Fingerprint20 = B080 979F 4D04 3E19 D05A 369C 629E F8EE 0C8B 8333 +sub 2048 0x6763ED11 2011-12-14 ---------- RSA +uid Sendmail, Inc. Security Officer + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.11 (Darwin) + +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 +G09zJuZGoDdC9KhhogEVj4Ow+ydV +=qF87 +-----END PGP PUBLIC KEY BLOCK----- + +Type Bits KeyID Created Expires Algorithm Use pub 1024 0xA0F8AA0C 2006-03-17 ---------- DSA Sign & Encrypt f20 Fingerprint20 = 770E 4AC8 8A97 B69E 6E75 0605 1043 2518 A0F8 AA0C sub 2048 0x6E613854 2006-03-17 ---------- Diffie-Hellman -uid Sendmail, Inc. Security Officer +uid Sendmail, Inc. Security Officer [REVOKED] -----BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v1.2.4 (Darwin) +Version: GnuPG v1.4.11 (Darwin) mQGiBEQbQzgRBAC7QmIW2r0oJ9Ixk1ewPxfwN1CU15k2ORBzRVIcO1UcLm6I5t3Z Gorbj22J8xNyY67yQ3pi5O+pffl5LujEKTco3D3sHhHnpz8vIaBiLyVUG3dCHZwU @@ -1469,42 +1677,50 @@ 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 -3plWjAkK4jGDVnkcVv2eMGfTP20= -=Ylc5 +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 +Z9M/bQ== +=nJIt -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use @@ -2082,4 +2298,4 @@ DnF3FZZEzV7oqPwC2jzv/1dD6GFhtgy0cnyoPGUJ =nES8 -----END PGP PUBLIC KEY BLOCK----- -$Revision: 8.36 $, Last updated $Date: 2011/01/28 21:17:54 $ +$Revision: 8.40 $, Last updated $Date: 2012/01/09 04:44:59 $ Modified: stable/8/contrib/sendmail/RELEASE_NOTES ============================================================================== --- stable/8/contrib/sendmail/RELEASE_NOTES Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/RELEASE_NOTES Tue Jan 1 18:29:04 2013 (r244930) @@ -1,11 +1,60 @@ SENDMAIL RELEASE NOTES - $Id: RELEASE_NOTES,v 8.1991 2011/05/15 04:28:16 ca Exp $ + $Id: RELEASE_NOTES,v 8.2011 2012/12/21 18:42:16 ca Exp $ This listing shows the version of the sendmail binary, the version of the sendmail configuration files, the date of release, and a summary of the changes in that release. +8.14.6/8.14.6 2012/12/23 + Fix a regression introduced in 8.14.5: if a server offers + two AUTH lines, the MTA would not read them after + STARTTLS has been used and hence SMTP AUTH for + the client side would fail. Problem noted by Lena. + Do not cache hostnames internally in a non case sensitive way + as that may cause addresses to change from lower case + to upper case or vice versa. These header modifications + can cause problems with milters that rely on receiving + headers in the same way as they are being sent out such + as a DKIM signing milter. + If MaxQueueChildren is set then it was possible that new queue + runners could not be started anymore because an + internal counter was subject to a race condition. + If a milter decreases the timeout it waits for a communication + with the MTA, the MTA might experience a write() timeout. + In some situations, the resulting error might have been + ignored. Problem noted by Werner Wiethege. + Note: decreasing the communication timeout in a milter + should not be done without considering the potential + problems. + smfi_setsymlist() now properly sets the list of macros for + the milter which invoked it, instead of a global + list for all milters. Problem reported by + David Shrimpton of the University of Queensland. + If Timeout.resolver.retrans is set to a value larger than 20, + then resolver.retry was temporarily set to 0 for + gethostbyaddr() lookups. Now it is set to 1 instead. + Patch from Peter. + If sendmail could not lock the statistics file due to a system + error, and sendmail later sends a DSN for a mail that + triggered such an error, then sendmail tried to access + memory that was freed before (causing a crash on some + systems). Problem reported by Ryan Stone. + Do not log negative values for size= nor pri= to avoid confusing + log parsers, instead limit the values to LONG_MAX. + Account for an API change in newer versions of Cyrus-SASL. + Patch from Hajimu UMEMOTO from FreeBSD. + Do not try to resolve link-local addresses for IPv4 (just as it + is done for IPv6). Patch from John Beck of Oracle. + Improve logging of client and server STARTTLS connection failures + that may be due to incompatible cipher lists by including + the reason for the failure in a single log line. Suggested + by James Carey of Boeing. + Portability: + Add support for Darwin 11.x and 12.x (Mac OS X 10.7 and 10.8). + Add support for SunOS 5.12 (aka Solaris 12). Patch from + John Beck of Oracle. + 8.14.5/8.14.5 2011/05/17 Do not cache SMTP extensions across connections as the cache is based on hostname which may not be a unique identifier Modified: stable/8/contrib/sendmail/cf/README ============================================================================== --- stable/8/contrib/sendmail/cf/README Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/cf/README Tue Jan 1 18:29:04 2013 (r244930) @@ -1144,7 +1144,7 @@ relay_hosts_only For example, if you specify ``foo.com'', then mail to or from foo.com, abc.foo.com, or a.very.deep.domain.foo.com will all be accepted for relaying. This feature changes - the behaviour to lookup individual host names only. + the behaviour to look up individual host names only. relay_based_on_MX Turns on the ability to allow relaying based on the MX @@ -2230,9 +2230,9 @@ command: FEATURE(`ldap_routing', , , , , , ) -where is a map definition describing how to lookup an alternative +where is a map definition describing how to look up an alternative mail host for a particular address; is a map definition -describing how to lookup an alternative address for a particular address; +describing how to look up an alternative address for a particular address; the argument, if present and not the word "passthru", dictates that mail should be bounced if neither a mailHost nor mailRoutingAddress is found, if set to "sendertoo", the sender will be rejected if not @@ -4701,4 +4701,4 @@ M4 DIVERSIONS 8 DNS based blacklists 9 special local rulesets (1 and 2) -$Revision: 8.727 $, Last updated $Date: 2009/05/07 23:46:17 $ +$Revision: 8.728 $, Last updated $Date: 2012/09/07 16:29:13 $ Modified: stable/8/contrib/sendmail/cf/cf/submit.cf ============================================================================== --- stable/8/contrib/sendmail/cf/cf/submit.cf Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/cf/cf/submit.cf Tue Jan 1 18:29:04 2013 (r244930) @@ -16,8 +16,8 @@ ##### ##### SENDMAIL CONFIGURATION FILE ##### -##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:14 PDT 2011 -##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf +##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012 +##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf ##### using ../ as configuration include directory ##### ###################################################################### @@ -35,7 +35,7 @@ ##### $Id: no_default_msa.m4,v 8.2 2001/02/14 05:03:22 gshapiro Exp $ ##### -##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ ##### +##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ ##### # level 10 config file format V10/Berkeley @@ -114,7 +114,7 @@ D{MTAHost}[127.0.0.1] # Configuration version number -DZ8.14.5/Submit +DZ8.14.6/Submit ############### @@ -926,6 +926,8 @@ SParseLocal=98 + + ###################################################################### ### CanonAddr -- Convert an address into a standard form for ### relay checking. Route address syntax is Modified: stable/8/contrib/sendmail/cf/feature/ldap_routing.m4 ============================================================================== --- stable/8/contrib/sendmail/cf/feature/ldap_routing.m4 Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/cf/feature/ldap_routing.m4 Tue Jan 1 18:29:04 2013 (r244930) @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: ldap_routing.m4,v 8.18 2010/01/05 00:57:27 ca Exp $') +VERSIONID(`$Id: ldap_routing.m4,v 8.20 2012/01/18 22:27:06 ca Exp $') divert(-1) # Check first two arguments. If they aren't set, may need to warn in proto.m4 Modified: stable/8/contrib/sendmail/cf/m4/proto.m4 ============================================================================== --- stable/8/contrib/sendmail/cf/m4/proto.m4 Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/cf/m4/proto.m4 Tue Jan 1 18:29:04 2013 (r244930) @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $') +VERSIONID(`$Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $') # level CF_LEVEL config file format V`'CF_LEVEL`'ifdef(`NO_VENDOR',`', `/ifdef(`VENDOR_NAME', `VENDOR_NAME', `Berkeley')') @@ -1532,8 +1532,9 @@ R <$+> $#error $@ nouser $: " R <$*> <$+> $@ $2', `dnl # return the original address -R<> <> <$+> <@ $+> <$*> $@ $1')', -`dnl') +R<> <> <$+> <@ $+> <$*> $@ $1') +') + ifelse(substr(confDELIVERY_MODE,0,1), `d', `errprint(`WARNING: Antispam rules not available in deferred delivery mode. ')') Modified: stable/8/contrib/sendmail/cf/m4/version.m4 ============================================================================== --- stable/8/contrib/sendmail/cf/m4/version.m4 Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/cf/m4/version.m4 Tue Jan 1 18:29:04 2013 (r244930) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2011 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2012 Sendmail, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -11,8 +11,8 @@ divert(-1) # the sendmail distribution. # # -VERSIONID(`$Id: version.m4,v 8.214 2011/04/26 23:02:36 ca Exp $') +VERSIONID(`$Id: version.m4,v 8.222 2012/12/19 05:11:43 ca Exp $') # divert(0) # Configuration version number -DZ8.14.5`'ifdef(`confCF_VERSION', `/confCF_VERSION') +DZ8.14.6`'ifdef(`confCF_VERSION', `/confCF_VERSION') Modified: stable/8/contrib/sendmail/doc/op/op.me ============================================================================== --- stable/8/contrib/sendmail/doc/op/op.me Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/doc/op/op.me Tue Jan 1 18:29:04 2013 (r244930) @@ -9,7 +9,7 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: op.me,v 8.747 2010/05/08 04:18:27 ca Exp $ +.\" $Id: op.me,v 8.749 2012/03/02 22:37:11 ca Exp $ .\" .\" eqn op.me | pic | troff -me .\" @@ -90,7 +90,7 @@ Sendmail, Inc. .de Ve Version \\$2 .. -.Ve $Revision: 8.747 $ +.Ve $Revision: 8.749 $ .rm Ve .sp For Sendmail Version 8.14 @@ -5999,7 +5999,7 @@ mailer. .ip @ Look up addresses in the user database. .ip % -Do not attempt delivery on initial recipient of a message +Do not attempt delivery on initial receipt of a message or on queue runs unless the queued message is selected using one of the -qI/-qR/-qS queue run modifiers @@ -7540,6 +7540,10 @@ This is intended to allow you to get res by processing the queue fairly frequently without thrashing your system by trying jobs too often. The default units are minutes. +Note: +This option is ignored for queue runs that select a subset +of the queue, i.e., +.q \-q[!][I|R|S|Q][string] .ip MustQuoteChars=\fIs\fP [no short name] Sets the list of characters that must be quoted if used in a full name @@ -11467,7 +11471,7 @@ replace it with a blank sheet for double .\".sz 10 .\"Eric Allman .\".sp -.\"Version $Revision: 8.747 $ +.\"Version $Revision: 8.749 $ .\".ce 0 .bp 3 .ce Modified: stable/8/contrib/sendmail/include/libmilter/mfapi.h ============================================================================== --- stable/8/contrib/sendmail/include/libmilter/mfapi.h Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/include/libmilter/mfapi.h Tue Jan 1 18:29:04 2013 (r244930) @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999-2004, 2006, 2008 Sendmail, Inc. and its suppliers. + * Copyright (c) 1999-2004, 2006, 2008, 2012 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -7,7 +7,7 @@ * the sendmail distribution. * * - * $Id: mfapi.h,v 8.80 2009/11/06 00:57:08 ca Exp $ + * $Id: mfapi.h,v 8.82 2012/11/16 20:25:04 ca Exp $ */ /* @@ -206,6 +206,7 @@ LIBMILTER_API int smfi_version __P((unsi ** (hence the list is not sorted by the SMT protocol steps). */ +#define SMFIM_NOMACROS (-1) /* Do NOT use, internal only */ #define SMFIM_FIRST 0 /* Do NOT use, internal marker only */ #define SMFIM_CONNECT 0 /* connect */ #define SMFIM_HELO 1 /* HELO/EHLO */ Modified: stable/8/contrib/sendmail/include/sm/clock.h ============================================================================== --- stable/8/contrib/sendmail/include/sm/clock.h Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/include/sm/clock.h Tue Jan 1 18:29:04 2013 (r244930) @@ -9,7 +9,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: clock.h,v 1.12 2004/08/03 19:57:21 ca Exp $ + * $Id: clock.h,v 1.13 2011/11/03 03:13:24 ca Exp $ */ /* @@ -59,7 +59,7 @@ extern SIGFUNC_DECL sm_tick __P((int)); /* ** SM_SETEVENT -- set an event to happen at a specific time in seconds. ** -** Translates the seconds into millseconds and calls sm_seteventm() +** Translates the seconds into milliseconds and calls sm_seteventm() ** to get a specific event to happen in the future at a specific time. ** ** Parameters: Modified: stable/8/contrib/sendmail/include/sm/tailq.h ============================================================================== --- stable/8/contrib/sendmail/include/sm/tailq.h Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/include/sm/tailq.h Tue Jan 1 18:29:04 2013 (r244930) @@ -36,7 +36,7 @@ #define SM_TAILQ_H_ /* - * $Id: tailq.h,v 1.2 2007/06/29 23:09:57 ca Exp $ + * $Id: tailq.h,v 1.3 2012/01/21 00:12:14 ashish Exp $ * * This file is a modified copy of queue.h from a BSD system: * we only need tail queues here. @@ -69,8 +69,8 @@ struct { \ struct type **tqe_prev; /* address of previous next element */ \ } -/* - * tail queue access methods +/* + * tail queue access methods */ #define SM_TAILQ_FIRST(head) ((head)->tqh_first) #define SM_TAILQ_END(head) NULL Modified: stable/8/contrib/sendmail/libmilter/Makefile.m4 ============================================================================== --- stable/8/contrib/sendmail/libmilter/Makefile.m4 Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/libmilter/Makefile.m4 Tue Jan 1 18:29:04 2013 (r244930) @@ -1,4 +1,4 @@ -dnl $Id: Makefile.m4,v 8.85 2009/11/24 21:59:33 ca Exp $ +dnl $Id: Makefile.m4,v 8.88 2012/09/25 17:40:32 ca Exp $ include(confBUILDTOOLSDIR`/M4/switch.m4') dnl only required for compilation of EXTRAS Modified: stable/8/contrib/sendmail/libmilter/docs/api.html ============================================================================== --- stable/8/contrib/sendmail/libmilter/docs/api.html Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/libmilter/docs/api.html Tue Jan 1 18:29:04 2013 (r244930) @@ -2,7 +2,7 @@ Milter API

Milter API

@@ -214,7 +214,6 @@ other callbacks are message-oriented. SMFIS_REJECT For a connection-oriented routine, reject this connection; call xxfi_close.
For a message-oriented routine (except - xxfi_eom or xxfi_abort), reject this message.
For a recipient-oriented routine, reject the current recipient (but continue processing the current message). Modified: stable/8/contrib/sendmail/libmilter/docs/smfi_setsymlist.html ============================================================================== --- stable/8/contrib/sendmail/libmilter/docs/smfi_setsymlist.html Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/libmilter/docs/smfi_setsymlist.html Tue Jan 1 18:29:04 2013 (r244930) @@ -2,7 +2,7 @@ smfi_setsymlist

smfi_setsymlist

@@ -86,8 +86,10 @@ Otherwise MI_SUCCESS is returned. NOTES -There is an internal limit on the number of macros that can be -set (currently 5), +There is an internal limit on the number of macros +that can be set + +(currently 50), however, this limit is not enforced by libmilter, only by the MTA, but a possible violation of this restriction is not communicated back to the milter. @@ -97,7 +99,7 @@ the milter.
-Copyright (c) 2006 Sendmail, Inc. and its suppliers. +Copyright (c) 2006, 2012 Sendmail, Inc. and its suppliers. All rights reserved.
By using this file, you agree to the terms and conditions set Modified: stable/8/contrib/sendmail/libmilter/docs/smfi_settimeout.html ============================================================================== --- stable/8/contrib/sendmail/libmilter/docs/smfi_settimeout.html Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/libmilter/docs/smfi_settimeout.html Tue Jan 1 18:29:04 2013 (r244930) @@ -2,7 +2,7 @@ smfi_settimeout

smfi_settimeout

@@ -52,11 +52,24 @@ If smfi_settimeout is not called, a defa smfi_settimeout always returns MI_SUCCESS. + + +NOTES + +Decreasing the timeout is strongly discouraged +and may break the communication with the MTA. +Do not decrease this value without making sure that +the MTA also uses lower timeouts for communication +(with the milter and with the SMTP client). + + + +
-Copyright (c) 2000, 2002-2003, 2006 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2002-2003, 2006, 2011 Sendmail, Inc. and its suppliers. All rights reserved.
By using this file, you agree to the terms and conditions set Modified: stable/8/contrib/sendmail/libmilter/worker.c ============================================================================== --- stable/8/contrib/sendmail/libmilter/worker.c Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/libmilter/worker.c Tue Jan 1 18:29:04 2013 (r244930) @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003-2004, 2007, 2009-2011 Sendmail, Inc. and its suppliers. + * Copyright (c) 2003-2004, 2007, 2009-2012 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -11,7 +11,7 @@ */ #include -SM_RCSID("@(#)$Id: worker.c,v 8.19 2011/02/14 23:33:48 ca Exp $") +SM_RCSID("@(#)$Id: worker.c,v 8.24 2012/03/13 15:37:46 ca Exp $") #include "libmilter.h" @@ -141,7 +141,8 @@ static int mi_list_del_ctx __P((SMFICTX_ #if POOL_DEBUG # define POOL_LEV_DPRINTF(lev, x) \ - do { \ + do \ + { \ if ((lev) < ctx->ctx_dbg) \ sm_dprintf x; \ } while (0) @@ -377,7 +378,7 @@ mi_pool_controller(arg) for (;;) { SMFICTX_PTR ctx; - int nfd, rfd, i; + int nfd, r, i; time_t now; POOL_LEV_DPRINTF(4, ("Let's %s again...", WAITFN)); @@ -498,19 +499,19 @@ mi_pool_controller(arg) TASKMGR_UNLOCK(); /* Everything is ready, let's wait for an event */ - rfd = poll(pfd, nfd, POLL_TIMEOUT); + r = poll(pfd, nfd, POLL_TIMEOUT); POOL_LEV_DPRINTF(4, ("%s returned: at epoch %d value %d", WAITFN, now, nfd)); /* timeout */ - if (rfd == 0) + if (r == 0) continue; rebuild_set = true; /* error */ - if (rfd < 0) + if (r < 0) { if (errno == EINTR) continue; @@ -522,6 +523,7 @@ mi_pool_controller(arg) if (pcnt >= MAX_FAILS_S) goto err; + continue; } pcnt = 0; @@ -535,7 +537,7 @@ mi_pool_controller(arg) WAITFN, i, nfd, WAIT_FD(i))); - /* has a worker signaled an end of task ? */ + /* has a worker signaled an end of task? */ if (WAIT_FD(i) == RD_PIPE) { char evts[256]; @@ -563,7 +565,12 @@ mi_pool_controller(arg) continue; } - /* no ! sendmail wants to send a command */ + /* + ** Not the pipe for workers waking us, + ** so must be something on an MTA connection. + */ + + TASKMGR_LOCK(); SM_TAILQ_FOREACH(ctx, &WRK_CTX_HEAD, ctx_link) { if (ctx->ctx_wstate != WKST_WAITING) @@ -575,7 +582,6 @@ mi_pool_controller(arg) if (ctx->ctx_sd == pfd[i].fd) { - TASKMGR_LOCK(); POOL_LEV_DPRINTF(4, ("TASK: found %d for fd[%d]=%d", @@ -591,10 +597,10 @@ mi_pool_controller(arg) ctx->ctx_wstate = WKST_RUNNING; LAUNCH_WORKER(ctx); } - TASKMGR_UNLOCK(); break; } } + TASKMGR_UNLOCK(); POOL_LEV_DPRINTF(4, ("TASK %s FOUND - Checking PIPE for fd[%d]", @@ -607,6 +613,14 @@ mi_pool_controller(arg) free(pfd); Tskmgr.tm_signature = 0; +#if 0 + /* + ** Do not clean up ctx -- it can cause double-free()s. + ** The program is shutting down anyway, so it's not worth the trouble. + ** There is a more complex solution that prevents race conditions + ** while accessing ctx, but that's maybe for a later version. + */ + for (;;) { SMFICTX_PTR ctx; @@ -616,6 +630,7 @@ mi_pool_controller(arg) break; mi_close_session(ctx); } +#endif (void) smutex_destroy(&Tskmgr.tm_w_mutex); (void) scond_destroy(&Tskmgr.tm_w_cond); Modified: stable/8/contrib/sendmail/src/Makefile.m4 ============================================================================== --- stable/8/contrib/sendmail/src/Makefile.m4 Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/src/Makefile.m4 Tue Jan 1 18:29:04 2013 (r244930) @@ -1,4 +1,4 @@ -dnl $Id: Makefile.m4,v 8.126 2010/11/24 19:59:54 gshapiro Exp $ +dnl $Id: Makefile.m4,v 8.132 2012/09/11 20:02:44 ca Exp $ include(confBUILDTOOLSDIR`/M4/switch.m4') define(`confREQUIRE_LIBSM', `true') Modified: stable/8/contrib/sendmail/src/TRACEFLAGS ============================================================================== --- stable/8/contrib/sendmail/src/TRACEFLAGS Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/src/TRACEFLAGS Tue Jan 1 18:29:04 2013 (r244930) @@ -1,4 +1,4 @@ -# $Id: TRACEFLAGS,v 8.48 2008/11/03 21:09:26 gshapiro Exp $ +# $Id: TRACEFLAGS,v 8.52 2012/03/03 00:10:42 ca Exp $ 0, 4 main.c main canonical name, UUCP node name, a.k.a.s 0, 15 main.c main print configuration 0, 44 util.c printav print address of each string @@ -77,12 +77,12 @@ 63 queue.c runqueue process watching 64 multiple Milter 65 main.c permission checks -#if _FFR_ADAPTIVE_EOL -66 srvrsmtp.c conformance checks -#endif /* _FFR_ADAPTIVE_EOL */ -#if _FFR_QUEUE_SCHED_DBG -69 queue.c scheduling -#endif /* _FFR_QUEUE_SCHED_DBG */ +#if _FFR_ADAPTIVE_EOL +66 srvrsmtp.c conformance checks +#endif /* _FFR_ADAPTIVE_EOL */ +#if _FFR_QUEUE_SCHED_DBG +69 queue.c scheduling +#endif /* _FFR_QUEUE_SCHED_DBG */ 70 queue.c quarantining 71,>99 milter.c quarantine on errors 73 queue.c shared memory updates @@ -92,6 +92,7 @@ 83 collect.c timeout 84 deliver.c timeout 85 map.c dprintf map +89 conf.c >=8 use sm_dprintf() instead of syslog() 91 mci.c syslogging of MCI cache information 93,>99 * Prevent daemon connection fork for profiling/debugging 94,>99 srvrsmtp.c cause commands to fail (for protocol testing) Modified: stable/8/contrib/sendmail/src/collect.c ============================================================================== --- stable/8/contrib/sendmail/src/collect.c Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/src/collect.c Tue Jan 1 18:29:04 2013 (r244930) @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: collect.c,v 8.284 2008/08/06 05:26:24 ca Exp $") +SM_RCSID("@(#)$Id: collect.c,v 8.285 2012/06/14 23:54:02 ca Exp $") static void eatfrom __P((char *volatile, ENVELOPE *)); static void collect_doheader __P((ENVELOPE *)); @@ -869,7 +869,8 @@ readerr: if (LogLevel > 6) sm_syslog(LOG_NOTICE, e->e_id, "message size (%ld) exceeds maximum (%ld)", - e->e_msgsize, MaxMessageSize); + PRT_NONNEGL(e->e_msgsize), + MaxMessageSize); } } Modified: stable/8/contrib/sendmail/src/conf.c ============================================================================== --- stable/8/contrib/sendmail/src/conf.c Tue Jan 1 18:28:21 2013 (r244929) +++ stable/8/contrib/sendmail/src/conf.c Tue Jan 1 18:29:04 2013 (r244930) @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2010 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2012 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: conf.c,v 8.1168 2011/01/25 18:31:30 ca Exp $") +SM_RCSID("@(#)$Id: conf.c,v 8.1176 2012/12/07 03:59:54 ca Exp $") #include #include @@ -53,7 +53,7 @@ static int add_hostnames __P((SOCKADDR * static struct hostent *sm_getipnodebyname __P((const char *, int, int, int *)); static struct hostent *sm_getipnodebyaddr __P((const void *, size_t, int, int *)); #else /* NETINET6 && NEEDSGETIPNODE */ -#define sm_getipnodebyname getipnodebyname +#define sm_getipnodebyname getipnodebyname #define sm_getipnodebyaddr getipnodebyaddr #endif /* NETINET6 && NEEDSGETIPNODE */ @@ -4602,6 +4602,10 @@ add_hostnames(sa) int save_errno = errno; if (LogLevel > 3 && +#if NETINET && defined(IN_LINKLOCAL) + !(sa->sa.sa_family == AF_INET && + IN_LINKLOCAL(ntohl(sa->sin.sin_addr.s_addr))) && +#endif /* NETINET && defined(IN_LINKLOCAL) */ #if NETINET6 !(sa->sa.sa_family == AF_INET6 && IN6_IS_ADDR_LINKLOCAL(&sa->sin6.sin6_addr)) && @@ -5374,14 +5378,30 @@ sm_syslog(level, id, fmt, va_alist) #if LOG if (*id == '\0') { - if (tTd(89, 8)) + if (tTd(89, 10)) + { + struct timeval tv; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:29:26 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AB83248C; Tue, 1 Jan 2013 18:29:26 +0000 (UTC) (envelope-from antoine@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8ED428FC0A; Tue, 1 Jan 2013 18:29:26 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01ITQXJ014503; Tue, 1 Jan 2013 18:29:26 GMT (envelope-from antoine@svn.freebsd.org) Received: (from antoine@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01ITQdp014502; Tue, 1 Jan 2013 18:29:26 GMT (envelope-from antoine@svn.freebsd.org) Message-Id: <201301011829.r01ITQdp014502@svn.freebsd.org> From: Antoine Brodin Date: Tue, 1 Jan 2013 18:29:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244931 - head/lib/libbsnmp/libbsnmp X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:29:26 -0000 Author: antoine Date: Tue Jan 1 18:29:25 2013 New Revision: 244931 URL: http://svnweb.freebsd.org/changeset/base/244931 Log: Add missing DPADD Modified: head/lib/libbsnmp/libbsnmp/Makefile Modified: head/lib/libbsnmp/libbsnmp/Makefile ============================================================================== --- head/lib/libbsnmp/libbsnmp/Makefile Tue Jan 1 18:29:04 2013 (r244930) +++ head/lib/libbsnmp/libbsnmp/Makefile Tue Jan 1 18:29:25 2013 (r244931) @@ -15,6 +15,7 @@ CFLAGS+= -DHAVE_STDINT_H -DHAVE_INTTYPES .if ${MK_OPENSSL} != "no" CFLAGS+= -DHAVE_LIBCRYPTO +DPADD+= ${LIBCRYPTO} LDADD+= -lcrypto .endif From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:31:02 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C0045638; Tue, 1 Jan 2013 18:31:02 +0000 (UTC) (envelope-from gshapiro@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id A069C8FC08; Tue, 1 Jan 2013 18:31:02 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01IV2RB014887; Tue, 1 Jan 2013 18:31:02 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01IUwOn014840; Tue, 1 Jan 2013 18:30:58 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201301011830.r01IUwOn014840@svn.freebsd.org> From: Gregory Neil Shapiro Date: Tue, 1 Jan 2013 18:30:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org Subject: svn commit: r244932 - in stable/7/contrib/sendmail: . cf cf/cf cf/feature cf/m4 doc/op include/libmilter include/sm libmilter libmilter/docs src X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:31:02 -0000 Author: gshapiro Date: Tue Jan 1 18:30:57 2013 New Revision: 244932 URL: http://svnweb.freebsd.org/changeset/base/244932 Log: MFC: Merge sendmail 8.14.6 Modified: stable/7/contrib/sendmail/LICENSE stable/7/contrib/sendmail/PGPKEYS stable/7/contrib/sendmail/RELEASE_NOTES stable/7/contrib/sendmail/cf/README stable/7/contrib/sendmail/cf/cf/submit.cf stable/7/contrib/sendmail/cf/feature/ldap_routing.m4 stable/7/contrib/sendmail/cf/m4/proto.m4 stable/7/contrib/sendmail/cf/m4/version.m4 stable/7/contrib/sendmail/doc/op/op.me stable/7/contrib/sendmail/include/libmilter/mfapi.h stable/7/contrib/sendmail/include/sm/clock.h stable/7/contrib/sendmail/include/sm/tailq.h stable/7/contrib/sendmail/libmilter/Makefile.m4 stable/7/contrib/sendmail/libmilter/docs/api.html stable/7/contrib/sendmail/libmilter/docs/smfi_setsymlist.html stable/7/contrib/sendmail/libmilter/docs/smfi_settimeout.html stable/7/contrib/sendmail/libmilter/worker.c stable/7/contrib/sendmail/src/Makefile.m4 stable/7/contrib/sendmail/src/TRACEFLAGS stable/7/contrib/sendmail/src/collect.c stable/7/contrib/sendmail/src/conf.c stable/7/contrib/sendmail/src/daemon.c stable/7/contrib/sendmail/src/deliver.c stable/7/contrib/sendmail/src/headers.c stable/7/contrib/sendmail/src/main.c stable/7/contrib/sendmail/src/map.c stable/7/contrib/sendmail/src/milter.c stable/7/contrib/sendmail/src/parseaddr.c stable/7/contrib/sendmail/src/queue.c stable/7/contrib/sendmail/src/sasl.c stable/7/contrib/sendmail/src/savemail.c stable/7/contrib/sendmail/src/sendmail.h stable/7/contrib/sendmail/src/srvrsmtp.c stable/7/contrib/sendmail/src/stab.c stable/7/contrib/sendmail/src/util.c stable/7/contrib/sendmail/src/version.c Directory Properties: stable/7/contrib/sendmail/ (props changed) Modified: stable/7/contrib/sendmail/LICENSE ============================================================================== --- stable/7/contrib/sendmail/LICENSE Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/LICENSE Tue Jan 1 18:30:57 2013 (r244932) @@ -35,7 +35,7 @@ each of the following conditions is met: forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: - "Copyright (c) 1998-2010 Sendmail, Inc. All rights reserved." + "Copyright (c) 1998-2012 Sendmail, Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor names of their contributors may be used to endorse or promote @@ -78,4 +78,4 @@ each of the following conditions is met: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. -$Revision: 8.17 $, Last updated $Date: 2010/12/03 01:10:00 $, Document 139848.1 +$Revision: 8.18 $, Last updated $Date: 2012/05/15 21:49:03 $, Document 139848.1 Modified: stable/7/contrib/sendmail/PGPKEYS ============================================================================== --- stable/7/contrib/sendmail/PGPKEYS Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/PGPKEYS Tue Jan 1 18:30:57 2013 (r244932) @@ -142,7 +142,149 @@ gpExpdV7qPrw9k01j5rod5PjZlG8zV0= -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use -pub 2048 A97884B0 2011-01-04 ------- RSA Sign & Encrypt +pub 2048 CEEEF43B 2011-12-14 ------- RSA Sign & Encrypt +fingerprint: CA7A 8F39 A241 9FFF B0A9 AB27 8E5A E9FB CEEE F43B +uid Sendmail Signing Key/2012 + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.9 (OpenBSD) + +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 +=qHzF +-----END PGP PUBLIC KEY BLOCK----- + +Type Bits KeyID Created Expires Algorithm Use +pub 2048 A97884B0 2011-01-04 ------- RSA Sign & Encrypt fingerprint: 5872 6218 A913 400D E660 3601 39A4 C77D A978 84B0 uid Sendmail Signing Key/2011 @@ -251,7 +393,7 @@ KH6d5q94eHcPD56A4cYD275DIZzAYqRpwzmB9O84 -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use -pub 2048 85410ABE 2010-02-19 ------- RSA Sign +pub 2048 85410ABE 2010-02-19 ------- RSA Sign fingerprint: B175 9644 5303 5DCE DD7B E919 604D FBF2 8541 0ABE uid Sendmail Signing Key/2010 @@ -1453,13 +1595,79 @@ aBteGdu18ACeNXYmxUhQN/ogZuSaBhd/51aBD8SI -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use +pub 2048 0x0C8B8333 2011-12-14 ---------- RSA Sign & Encrypt +f20 Fingerprint20 = B080 979F 4D04 3E19 D05A 369C 629E F8EE 0C8B 8333 +sub 2048 0x6763ED11 2011-12-14 ---------- RSA +uid Sendmail, Inc. Security Officer + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.11 (Darwin) + +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 +G09zJuZGoDdC9KhhogEVj4Ow+ydV +=qF87 +-----END PGP PUBLIC KEY BLOCK----- + +Type Bits KeyID Created Expires Algorithm Use pub 1024 0xA0F8AA0C 2006-03-17 ---------- DSA Sign & Encrypt f20 Fingerprint20 = 770E 4AC8 8A97 B69E 6E75 0605 1043 2518 A0F8 AA0C sub 2048 0x6E613854 2006-03-17 ---------- Diffie-Hellman -uid Sendmail, Inc. Security Officer +uid Sendmail, Inc. Security Officer [REVOKED] -----BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v1.2.4 (Darwin) +Version: GnuPG v1.4.11 (Darwin) mQGiBEQbQzgRBAC7QmIW2r0oJ9Ixk1ewPxfwN1CU15k2ORBzRVIcO1UcLm6I5t3Z Gorbj22J8xNyY67yQ3pi5O+pffl5LujEKTco3D3sHhHnpz8vIaBiLyVUG3dCHZwU @@ -1469,42 +1677,50 @@ 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 -3plWjAkK4jGDVnkcVv2eMGfTP20= -=Ylc5 +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 +Z9M/bQ== +=nJIt -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use @@ -2082,4 +2298,4 @@ DnF3FZZEzV7oqPwC2jzv/1dD6GFhtgy0cnyoPGUJ =nES8 -----END PGP PUBLIC KEY BLOCK----- -$Revision: 8.36 $, Last updated $Date: 2011/01/28 21:17:54 $ +$Revision: 8.40 $, Last updated $Date: 2012/01/09 04:44:59 $ Modified: stable/7/contrib/sendmail/RELEASE_NOTES ============================================================================== --- stable/7/contrib/sendmail/RELEASE_NOTES Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/RELEASE_NOTES Tue Jan 1 18:30:57 2013 (r244932) @@ -1,11 +1,60 @@ SENDMAIL RELEASE NOTES - $Id: RELEASE_NOTES,v 8.1991 2011/05/15 04:28:16 ca Exp $ + $Id: RELEASE_NOTES,v 8.2011 2012/12/21 18:42:16 ca Exp $ This listing shows the version of the sendmail binary, the version of the sendmail configuration files, the date of release, and a summary of the changes in that release. +8.14.6/8.14.6 2012/12/23 + Fix a regression introduced in 8.14.5: if a server offers + two AUTH lines, the MTA would not read them after + STARTTLS has been used and hence SMTP AUTH for + the client side would fail. Problem noted by Lena. + Do not cache hostnames internally in a non case sensitive way + as that may cause addresses to change from lower case + to upper case or vice versa. These header modifications + can cause problems with milters that rely on receiving + headers in the same way as they are being sent out such + as a DKIM signing milter. + If MaxQueueChildren is set then it was possible that new queue + runners could not be started anymore because an + internal counter was subject to a race condition. + If a milter decreases the timeout it waits for a communication + with the MTA, the MTA might experience a write() timeout. + In some situations, the resulting error might have been + ignored. Problem noted by Werner Wiethege. + Note: decreasing the communication timeout in a milter + should not be done without considering the potential + problems. + smfi_setsymlist() now properly sets the list of macros for + the milter which invoked it, instead of a global + list for all milters. Problem reported by + David Shrimpton of the University of Queensland. + If Timeout.resolver.retrans is set to a value larger than 20, + then resolver.retry was temporarily set to 0 for + gethostbyaddr() lookups. Now it is set to 1 instead. + Patch from Peter. + If sendmail could not lock the statistics file due to a system + error, and sendmail later sends a DSN for a mail that + triggered such an error, then sendmail tried to access + memory that was freed before (causing a crash on some + systems). Problem reported by Ryan Stone. + Do not log negative values for size= nor pri= to avoid confusing + log parsers, instead limit the values to LONG_MAX. + Account for an API change in newer versions of Cyrus-SASL. + Patch from Hajimu UMEMOTO from FreeBSD. + Do not try to resolve link-local addresses for IPv4 (just as it + is done for IPv6). Patch from John Beck of Oracle. + Improve logging of client and server STARTTLS connection failures + that may be due to incompatible cipher lists by including + the reason for the failure in a single log line. Suggested + by James Carey of Boeing. + Portability: + Add support for Darwin 11.x and 12.x (Mac OS X 10.7 and 10.8). + Add support for SunOS 5.12 (aka Solaris 12). Patch from + John Beck of Oracle. + 8.14.5/8.14.5 2011/05/17 Do not cache SMTP extensions across connections as the cache is based on hostname which may not be a unique identifier Modified: stable/7/contrib/sendmail/cf/README ============================================================================== --- stable/7/contrib/sendmail/cf/README Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/cf/README Tue Jan 1 18:30:57 2013 (r244932) @@ -1144,7 +1144,7 @@ relay_hosts_only For example, if you specify ``foo.com'', then mail to or from foo.com, abc.foo.com, or a.very.deep.domain.foo.com will all be accepted for relaying. This feature changes - the behaviour to lookup individual host names only. + the behaviour to look up individual host names only. relay_based_on_MX Turns on the ability to allow relaying based on the MX @@ -2230,9 +2230,9 @@ command: FEATURE(`ldap_routing', , , , , , ) -where is a map definition describing how to lookup an alternative +where is a map definition describing how to look up an alternative mail host for a particular address; is a map definition -describing how to lookup an alternative address for a particular address; +describing how to look up an alternative address for a particular address; the argument, if present and not the word "passthru", dictates that mail should be bounced if neither a mailHost nor mailRoutingAddress is found, if set to "sendertoo", the sender will be rejected if not @@ -4701,4 +4701,4 @@ M4 DIVERSIONS 8 DNS based blacklists 9 special local rulesets (1 and 2) -$Revision: 8.727 $, Last updated $Date: 2009/05/07 23:46:17 $ +$Revision: 8.728 $, Last updated $Date: 2012/09/07 16:29:13 $ Modified: stable/7/contrib/sendmail/cf/cf/submit.cf ============================================================================== --- stable/7/contrib/sendmail/cf/cf/submit.cf Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/cf/cf/submit.cf Tue Jan 1 18:30:57 2013 (r244932) @@ -16,8 +16,8 @@ ##### ##### SENDMAIL CONFIGURATION FILE ##### -##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:14 PDT 2011 -##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf +##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012 +##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf ##### using ../ as configuration include directory ##### ###################################################################### @@ -35,7 +35,7 @@ ##### $Id: no_default_msa.m4,v 8.2 2001/02/14 05:03:22 gshapiro Exp $ ##### -##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ ##### +##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ ##### # level 10 config file format V10/Berkeley @@ -114,7 +114,7 @@ D{MTAHost}[127.0.0.1] # Configuration version number -DZ8.14.5/Submit +DZ8.14.6/Submit ############### @@ -926,6 +926,8 @@ SParseLocal=98 + + ###################################################################### ### CanonAddr -- Convert an address into a standard form for ### relay checking. Route address syntax is Modified: stable/7/contrib/sendmail/cf/feature/ldap_routing.m4 ============================================================================== --- stable/7/contrib/sendmail/cf/feature/ldap_routing.m4 Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/cf/feature/ldap_routing.m4 Tue Jan 1 18:30:57 2013 (r244932) @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: ldap_routing.m4,v 8.18 2010/01/05 00:57:27 ca Exp $') +VERSIONID(`$Id: ldap_routing.m4,v 8.20 2012/01/18 22:27:06 ca Exp $') divert(-1) # Check first two arguments. If they aren't set, may need to warn in proto.m4 Modified: stable/7/contrib/sendmail/cf/m4/proto.m4 ============================================================================== --- stable/7/contrib/sendmail/cf/m4/proto.m4 Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/cf/m4/proto.m4 Tue Jan 1 18:30:57 2013 (r244932) @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $') +VERSIONID(`$Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $') # level CF_LEVEL config file format V`'CF_LEVEL`'ifdef(`NO_VENDOR',`', `/ifdef(`VENDOR_NAME', `VENDOR_NAME', `Berkeley')') @@ -1532,8 +1532,9 @@ R <$+> $#error $@ nouser $: " R <$*> <$+> $@ $2', `dnl # return the original address -R<> <> <$+> <@ $+> <$*> $@ $1')', -`dnl') +R<> <> <$+> <@ $+> <$*> $@ $1') +') + ifelse(substr(confDELIVERY_MODE,0,1), `d', `errprint(`WARNING: Antispam rules not available in deferred delivery mode. ')') Modified: stable/7/contrib/sendmail/cf/m4/version.m4 ============================================================================== --- stable/7/contrib/sendmail/cf/m4/version.m4 Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/cf/m4/version.m4 Tue Jan 1 18:30:57 2013 (r244932) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2011 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2012 Sendmail, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -11,8 +11,8 @@ divert(-1) # the sendmail distribution. # # -VERSIONID(`$Id: version.m4,v 8.214 2011/04/26 23:02:36 ca Exp $') +VERSIONID(`$Id: version.m4,v 8.222 2012/12/19 05:11:43 ca Exp $') # divert(0) # Configuration version number -DZ8.14.5`'ifdef(`confCF_VERSION', `/confCF_VERSION') +DZ8.14.6`'ifdef(`confCF_VERSION', `/confCF_VERSION') Modified: stable/7/contrib/sendmail/doc/op/op.me ============================================================================== --- stable/7/contrib/sendmail/doc/op/op.me Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/doc/op/op.me Tue Jan 1 18:30:57 2013 (r244932) @@ -9,7 +9,7 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: op.me,v 8.747 2010/05/08 04:18:27 ca Exp $ +.\" $Id: op.me,v 8.749 2012/03/02 22:37:11 ca Exp $ .\" .\" eqn op.me | pic | troff -me .\" @@ -90,7 +90,7 @@ Sendmail, Inc. .de Ve Version \\$2 .. -.Ve $Revision: 8.747 $ +.Ve $Revision: 8.749 $ .rm Ve .sp For Sendmail Version 8.14 @@ -5999,7 +5999,7 @@ mailer. .ip @ Look up addresses in the user database. .ip % -Do not attempt delivery on initial recipient of a message +Do not attempt delivery on initial receipt of a message or on queue runs unless the queued message is selected using one of the -qI/-qR/-qS queue run modifiers @@ -7540,6 +7540,10 @@ This is intended to allow you to get res by processing the queue fairly frequently without thrashing your system by trying jobs too often. The default units are minutes. +Note: +This option is ignored for queue runs that select a subset +of the queue, i.e., +.q \-q[!][I|R|S|Q][string] .ip MustQuoteChars=\fIs\fP [no short name] Sets the list of characters that must be quoted if used in a full name @@ -11467,7 +11471,7 @@ replace it with a blank sheet for double .\".sz 10 .\"Eric Allman .\".sp -.\"Version $Revision: 8.747 $ +.\"Version $Revision: 8.749 $ .\".ce 0 .bp 3 .ce Modified: stable/7/contrib/sendmail/include/libmilter/mfapi.h ============================================================================== --- stable/7/contrib/sendmail/include/libmilter/mfapi.h Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/include/libmilter/mfapi.h Tue Jan 1 18:30:57 2013 (r244932) @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999-2004, 2006, 2008 Sendmail, Inc. and its suppliers. + * Copyright (c) 1999-2004, 2006, 2008, 2012 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -7,7 +7,7 @@ * the sendmail distribution. * * - * $Id: mfapi.h,v 8.80 2009/11/06 00:57:08 ca Exp $ + * $Id: mfapi.h,v 8.82 2012/11/16 20:25:04 ca Exp $ */ /* @@ -206,6 +206,7 @@ LIBMILTER_API int smfi_version __P((unsi ** (hence the list is not sorted by the SMT protocol steps). */ +#define SMFIM_NOMACROS (-1) /* Do NOT use, internal only */ #define SMFIM_FIRST 0 /* Do NOT use, internal marker only */ #define SMFIM_CONNECT 0 /* connect */ #define SMFIM_HELO 1 /* HELO/EHLO */ Modified: stable/7/contrib/sendmail/include/sm/clock.h ============================================================================== --- stable/7/contrib/sendmail/include/sm/clock.h Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/include/sm/clock.h Tue Jan 1 18:30:57 2013 (r244932) @@ -9,7 +9,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: clock.h,v 1.12 2004/08/03 19:57:21 ca Exp $ + * $Id: clock.h,v 1.13 2011/11/03 03:13:24 ca Exp $ */ /* @@ -59,7 +59,7 @@ extern SIGFUNC_DECL sm_tick __P((int)); /* ** SM_SETEVENT -- set an event to happen at a specific time in seconds. ** -** Translates the seconds into millseconds and calls sm_seteventm() +** Translates the seconds into milliseconds and calls sm_seteventm() ** to get a specific event to happen in the future at a specific time. ** ** Parameters: Modified: stable/7/contrib/sendmail/include/sm/tailq.h ============================================================================== --- stable/7/contrib/sendmail/include/sm/tailq.h Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/include/sm/tailq.h Tue Jan 1 18:30:57 2013 (r244932) @@ -36,7 +36,7 @@ #define SM_TAILQ_H_ /* - * $Id: tailq.h,v 1.2 2007/06/29 23:09:57 ca Exp $ + * $Id: tailq.h,v 1.3 2012/01/21 00:12:14 ashish Exp $ * * This file is a modified copy of queue.h from a BSD system: * we only need tail queues here. @@ -69,8 +69,8 @@ struct { \ struct type **tqe_prev; /* address of previous next element */ \ } -/* - * tail queue access methods +/* + * tail queue access methods */ #define SM_TAILQ_FIRST(head) ((head)->tqh_first) #define SM_TAILQ_END(head) NULL Modified: stable/7/contrib/sendmail/libmilter/Makefile.m4 ============================================================================== --- stable/7/contrib/sendmail/libmilter/Makefile.m4 Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/libmilter/Makefile.m4 Tue Jan 1 18:30:57 2013 (r244932) @@ -1,4 +1,4 @@ -dnl $Id: Makefile.m4,v 8.85 2009/11/24 21:59:33 ca Exp $ +dnl $Id: Makefile.m4,v 8.88 2012/09/25 17:40:32 ca Exp $ include(confBUILDTOOLSDIR`/M4/switch.m4') dnl only required for compilation of EXTRAS Modified: stable/7/contrib/sendmail/libmilter/docs/api.html ============================================================================== --- stable/7/contrib/sendmail/libmilter/docs/api.html Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/libmilter/docs/api.html Tue Jan 1 18:30:57 2013 (r244932) @@ -2,7 +2,7 @@ Milter API

Milter API

@@ -214,7 +214,6 @@ other callbacks are message-oriented. SMFIS_REJECT For a connection-oriented routine, reject this connection; call xxfi_close.
For a message-oriented routine (except - xxfi_eom or xxfi_abort), reject this message.
For a recipient-oriented routine, reject the current recipient (but continue processing the current message). Modified: stable/7/contrib/sendmail/libmilter/docs/smfi_setsymlist.html ============================================================================== --- stable/7/contrib/sendmail/libmilter/docs/smfi_setsymlist.html Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/libmilter/docs/smfi_setsymlist.html Tue Jan 1 18:30:57 2013 (r244932) @@ -2,7 +2,7 @@ smfi_setsymlist

smfi_setsymlist

@@ -86,8 +86,10 @@ Otherwise MI_SUCCESS is returned. NOTES -There is an internal limit on the number of macros that can be -set (currently 5), +There is an internal limit on the number of macros +that can be set + +(currently 50), however, this limit is not enforced by libmilter, only by the MTA, but a possible violation of this restriction is not communicated back to the milter. @@ -97,7 +99,7 @@ the milter.
-Copyright (c) 2006 Sendmail, Inc. and its suppliers. +Copyright (c) 2006, 2012 Sendmail, Inc. and its suppliers. All rights reserved.
By using this file, you agree to the terms and conditions set Modified: stable/7/contrib/sendmail/libmilter/docs/smfi_settimeout.html ============================================================================== --- stable/7/contrib/sendmail/libmilter/docs/smfi_settimeout.html Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/libmilter/docs/smfi_settimeout.html Tue Jan 1 18:30:57 2013 (r244932) @@ -2,7 +2,7 @@ smfi_settimeout

smfi_settimeout

@@ -52,11 +52,24 @@ If smfi_settimeout is not called, a defa smfi_settimeout always returns MI_SUCCESS. + + +NOTES + +Decreasing the timeout is strongly discouraged +and may break the communication with the MTA. +Do not decrease this value without making sure that +the MTA also uses lower timeouts for communication +(with the milter and with the SMTP client). + + + +
-Copyright (c) 2000, 2002-2003, 2006 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2002-2003, 2006, 2011 Sendmail, Inc. and its suppliers. All rights reserved.
By using this file, you agree to the terms and conditions set Modified: stable/7/contrib/sendmail/libmilter/worker.c ============================================================================== --- stable/7/contrib/sendmail/libmilter/worker.c Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/libmilter/worker.c Tue Jan 1 18:30:57 2013 (r244932) @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003-2004, 2007, 2009-2011 Sendmail, Inc. and its suppliers. + * Copyright (c) 2003-2004, 2007, 2009-2012 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -11,7 +11,7 @@ */ #include -SM_RCSID("@(#)$Id: worker.c,v 8.19 2011/02/14 23:33:48 ca Exp $") +SM_RCSID("@(#)$Id: worker.c,v 8.24 2012/03/13 15:37:46 ca Exp $") #include "libmilter.h" @@ -141,7 +141,8 @@ static int mi_list_del_ctx __P((SMFICTX_ #if POOL_DEBUG # define POOL_LEV_DPRINTF(lev, x) \ - do { \ + do \ + { \ if ((lev) < ctx->ctx_dbg) \ sm_dprintf x; \ } while (0) @@ -377,7 +378,7 @@ mi_pool_controller(arg) for (;;) { SMFICTX_PTR ctx; - int nfd, rfd, i; + int nfd, r, i; time_t now; POOL_LEV_DPRINTF(4, ("Let's %s again...", WAITFN)); @@ -498,19 +499,19 @@ mi_pool_controller(arg) TASKMGR_UNLOCK(); /* Everything is ready, let's wait for an event */ - rfd = poll(pfd, nfd, POLL_TIMEOUT); + r = poll(pfd, nfd, POLL_TIMEOUT); POOL_LEV_DPRINTF(4, ("%s returned: at epoch %d value %d", WAITFN, now, nfd)); /* timeout */ - if (rfd == 0) + if (r == 0) continue; rebuild_set = true; /* error */ - if (rfd < 0) + if (r < 0) { if (errno == EINTR) continue; @@ -522,6 +523,7 @@ mi_pool_controller(arg) if (pcnt >= MAX_FAILS_S) goto err; + continue; } pcnt = 0; @@ -535,7 +537,7 @@ mi_pool_controller(arg) WAITFN, i, nfd, WAIT_FD(i))); - /* has a worker signaled an end of task ? */ + /* has a worker signaled an end of task? */ if (WAIT_FD(i) == RD_PIPE) { char evts[256]; @@ -563,7 +565,12 @@ mi_pool_controller(arg) continue; } - /* no ! sendmail wants to send a command */ + /* + ** Not the pipe for workers waking us, + ** so must be something on an MTA connection. + */ + + TASKMGR_LOCK(); SM_TAILQ_FOREACH(ctx, &WRK_CTX_HEAD, ctx_link) { if (ctx->ctx_wstate != WKST_WAITING) @@ -575,7 +582,6 @@ mi_pool_controller(arg) if (ctx->ctx_sd == pfd[i].fd) { - TASKMGR_LOCK(); POOL_LEV_DPRINTF(4, ("TASK: found %d for fd[%d]=%d", @@ -591,10 +597,10 @@ mi_pool_controller(arg) ctx->ctx_wstate = WKST_RUNNING; LAUNCH_WORKER(ctx); } - TASKMGR_UNLOCK(); break; } } + TASKMGR_UNLOCK(); POOL_LEV_DPRINTF(4, ("TASK %s FOUND - Checking PIPE for fd[%d]", @@ -607,6 +613,14 @@ mi_pool_controller(arg) free(pfd); Tskmgr.tm_signature = 0; +#if 0 + /* + ** Do not clean up ctx -- it can cause double-free()s. + ** The program is shutting down anyway, so it's not worth the trouble. + ** There is a more complex solution that prevents race conditions + ** while accessing ctx, but that's maybe for a later version. + */ + for (;;) { SMFICTX_PTR ctx; @@ -616,6 +630,7 @@ mi_pool_controller(arg) break; mi_close_session(ctx); } +#endif (void) smutex_destroy(&Tskmgr.tm_w_mutex); (void) scond_destroy(&Tskmgr.tm_w_cond); Modified: stable/7/contrib/sendmail/src/Makefile.m4 ============================================================================== --- stable/7/contrib/sendmail/src/Makefile.m4 Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/src/Makefile.m4 Tue Jan 1 18:30:57 2013 (r244932) @@ -1,4 +1,4 @@ -dnl $Id: Makefile.m4,v 8.126 2010/11/24 19:59:54 gshapiro Exp $ +dnl $Id: Makefile.m4,v 8.132 2012/09/11 20:02:44 ca Exp $ include(confBUILDTOOLSDIR`/M4/switch.m4') define(`confREQUIRE_LIBSM', `true') Modified: stable/7/contrib/sendmail/src/TRACEFLAGS ============================================================================== --- stable/7/contrib/sendmail/src/TRACEFLAGS Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/src/TRACEFLAGS Tue Jan 1 18:30:57 2013 (r244932) @@ -1,4 +1,4 @@ -# $Id: TRACEFLAGS,v 8.48 2008/11/03 21:09:26 gshapiro Exp $ +# $Id: TRACEFLAGS,v 8.52 2012/03/03 00:10:42 ca Exp $ 0, 4 main.c main canonical name, UUCP node name, a.k.a.s 0, 15 main.c main print configuration 0, 44 util.c printav print address of each string @@ -77,12 +77,12 @@ 63 queue.c runqueue process watching 64 multiple Milter 65 main.c permission checks -#if _FFR_ADAPTIVE_EOL -66 srvrsmtp.c conformance checks -#endif /* _FFR_ADAPTIVE_EOL */ -#if _FFR_QUEUE_SCHED_DBG -69 queue.c scheduling -#endif /* _FFR_QUEUE_SCHED_DBG */ +#if _FFR_ADAPTIVE_EOL +66 srvrsmtp.c conformance checks +#endif /* _FFR_ADAPTIVE_EOL */ +#if _FFR_QUEUE_SCHED_DBG +69 queue.c scheduling +#endif /* _FFR_QUEUE_SCHED_DBG */ 70 queue.c quarantining 71,>99 milter.c quarantine on errors 73 queue.c shared memory updates @@ -92,6 +92,7 @@ 83 collect.c timeout 84 deliver.c timeout 85 map.c dprintf map +89 conf.c >=8 use sm_dprintf() instead of syslog() 91 mci.c syslogging of MCI cache information 93,>99 * Prevent daemon connection fork for profiling/debugging 94,>99 srvrsmtp.c cause commands to fail (for protocol testing) Modified: stable/7/contrib/sendmail/src/collect.c ============================================================================== --- stable/7/contrib/sendmail/src/collect.c Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/src/collect.c Tue Jan 1 18:30:57 2013 (r244932) @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: collect.c,v 8.284 2008/08/06 05:26:24 ca Exp $") +SM_RCSID("@(#)$Id: collect.c,v 8.285 2012/06/14 23:54:02 ca Exp $") static void eatfrom __P((char *volatile, ENVELOPE *)); static void collect_doheader __P((ENVELOPE *)); @@ -869,7 +869,8 @@ readerr: if (LogLevel > 6) sm_syslog(LOG_NOTICE, e->e_id, "message size (%ld) exceeds maximum (%ld)", - e->e_msgsize, MaxMessageSize); + PRT_NONNEGL(e->e_msgsize), + MaxMessageSize); } } Modified: stable/7/contrib/sendmail/src/conf.c ============================================================================== --- stable/7/contrib/sendmail/src/conf.c Tue Jan 1 18:29:25 2013 (r244931) +++ stable/7/contrib/sendmail/src/conf.c Tue Jan 1 18:30:57 2013 (r244932) @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2010 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2012 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: conf.c,v 8.1168 2011/01/25 18:31:30 ca Exp $") +SM_RCSID("@(#)$Id: conf.c,v 8.1176 2012/12/07 03:59:54 ca Exp $") #include #include @@ -53,7 +53,7 @@ static int add_hostnames __P((SOCKADDR * static struct hostent *sm_getipnodebyname __P((const char *, int, int, int *)); static struct hostent *sm_getipnodebyaddr __P((const void *, size_t, int, int *)); #else /* NETINET6 && NEEDSGETIPNODE */ -#define sm_getipnodebyname getipnodebyname +#define sm_getipnodebyname getipnodebyname #define sm_getipnodebyaddr getipnodebyaddr #endif /* NETINET6 && NEEDSGETIPNODE */ @@ -4602,6 +4602,10 @@ add_hostnames(sa) int save_errno = errno; if (LogLevel > 3 && +#if NETINET && defined(IN_LINKLOCAL) + !(sa->sa.sa_family == AF_INET && + IN_LINKLOCAL(ntohl(sa->sin.sin_addr.s_addr))) && +#endif /* NETINET && defined(IN_LINKLOCAL) */ #if NETINET6 !(sa->sa.sa_family == AF_INET6 && IN6_IS_ADDR_LINKLOCAL(&sa->sin6.sin6_addr)) && @@ -5374,14 +5378,30 @@ sm_syslog(level, id, fmt, va_alist) #if LOG if (*id == '\0') { - if (tTd(89, 8)) + if (tTd(89, 10)) + { + struct timeval tv; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:31:21 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EC0EC786; Tue, 1 Jan 2013 18:31:21 +0000 (UTC) (envelope-from antoine@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id CFFDC8FC0C; Tue, 1 Jan 2013 18:31:21 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01IVLqw014964; Tue, 1 Jan 2013 18:31:21 GMT (envelope-from antoine@svn.freebsd.org) Received: (from antoine@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01IVLFG014963; Tue, 1 Jan 2013 18:31:21 GMT (envelope-from antoine@svn.freebsd.org) Message-Id: <201301011831.r01IVLFG014963@svn.freebsd.org> From: Antoine Brodin Date: Tue, 1 Jan 2013 18:31:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244933 - head/gnu/usr.bin/dialog X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:31:22 -0000 Author: antoine Date: Tue Jan 1 18:31:21 2013 New Revision: 244933 URL: http://svnweb.freebsd.org/changeset/base/244933 Log: Fix a dependency Modified: head/gnu/usr.bin/dialog/Makefile Modified: head/gnu/usr.bin/dialog/Makefile ============================================================================== --- head/gnu/usr.bin/dialog/Makefile Tue Jan 1 18:30:57 2013 (r244932) +++ head/gnu/usr.bin/dialog/Makefile Tue Jan 1 18:31:21 2013 (r244933) @@ -3,7 +3,7 @@ DIALOG= ${.CURDIR}/../../../contrib/dialog PROG= dialog -DPADD= ${LIBDIALOG} ${LIBNCURSES} ${LIBM} +DPADD= ${LIBDIALOG} ${LIBNCURSESW} ${LIBM} LDADD= -ldialog -lncursesw -lm CFLAGS+= -I${.CURDIR} -I${DIALOG} .PATH: ${DIALOG} From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:34:38 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 82EC2A18; Tue, 1 Jan 2013 18:34:38 +0000 (UTC) (envelope-from yanegomi@gmail.com) Received: from mail-ob0-f174.google.com (mail-ob0-f174.google.com [209.85.214.174]) by mx1.freebsd.org (Postfix) with ESMTP id 155358FC08; Tue, 1 Jan 2013 18:34:37 +0000 (UTC) Received: by mail-ob0-f174.google.com with SMTP id ta14so12260234obb.19 for ; Tue, 01 Jan 2013 10:34:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=8KAVvu0mk/CrwoJl5rke+7qmD4TK8LGUghwqXYUGCc4=; b=ihGFcO/FcdGcp6i7xTmF733PDOfHdxWkrnPiwtWB0kROuiT8sYiOpWmLrL8ib8Uxb0 T+qjO0RmNbkt2N8qm5eLwG4t3YYVIQ7WXCsw75K0oVogKFOUj3+de7lAzu0mnqc5JjA8 rcOvz3O9ctNoCBYEM/qbuT724fuMvaSUeRb/YdTD68WXCIg6TVJY+WZxKu5Gin/RmIaZ Wf2zbsC+Hz/GtGrCGyquXxW8zZOxJWfE5jmTOUNwIFS+r72LpfmLHYOIWOMJ2e5V2ao/ c5gIWVSEhphEyyZHcbNeNmfpRgRgq1EfVDrRoZNWTjf+lTcjwb3qr+BqzuueyFTekelV ZanA== MIME-Version: 1.0 Received: by 10.60.172.178 with SMTP id bd18mr25446294oec.133.1357065271109; Tue, 01 Jan 2013 10:34:31 -0800 (PST) Received: by 10.76.143.33 with HTTP; Tue, 1 Jan 2013 10:34:30 -0800 (PST) In-Reply-To: <201212311106.qBVB6chM016661@svn.freebsd.org> References: <201212311106.qBVB6chM016661@svn.freebsd.org> Date: Tue, 1 Jan 2013 10:34:30 -0800 Message-ID: Subject: Re: svn commit: r244899 - head/sys/mips/beri From: Garrett Cooper To: Robert Watson Content-Type: text/plain; charset=ISO-8859-1 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:34:38 -0000 On Mon, Dec 31, 2012 at 3:06 AM, Robert Watson wrote: > Author: rwatson > Date: Mon Dec 31 11:06:37 2012 > New Revision: 244899 > URL: http://svnweb.freebsd.org/changeset/base/244899 > > Log: > If FDT is compiled into a FreeBSD/beri kernel, initialise OpenFirmware. > > Sponsored by: DARPA, AFRL This broke the mips:mips64 tinderbox: /obj/src/make.amd64/make -V CFILES_NOZFS -V SYSTEM_CFILES -V GEN_CFILES | MKDEP_CPP="cc -E" CC="cc" xargs mkdep -a -f .newdep -O -pipe -std=c99 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/ipfilter -I/src/sys/dev/ath -I/src/sys/dev/ath/ath_hal -I/src/sys/contrib/ngatm -I/src/sys/dev/twa -I/src/sys/dev/cxgb -I/src/sys/dev/cxgbe -I/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=10000 --param large-function-growth=100000 --param max-inline-insns-single=10000 -fno-pic -mno-abicalls -G0 -DKERNLOADADDR=0xffffffff80100000 -march=mips64 -mabi=64 -msoft-float -ffreestanding In file included from /src/sys/dev/fdt/fdt_common.h:37, from /src/sys/mips/beri/beri_machdep.c:58: /src/sys/dev/ofw/ofw_bus.h:36:24: error: ofw_bus_if.h: No such file or directory mkdep: compile failed *** [.depend] Error code 1 The patch I committed to my git repo fixes that by adding ofw_bus_if.m to files.beri ( https://github.com/yaneurabeya/freebsd/commit/ac9221dc567c67822b6f61cadbfac3fc1e32df04 ). Thanks! -Garrett [gcooper@bayonetta /scratch/git/github/yaneurabeya-freebsd-head]$ make KERNCONF=BERI_DE4_MDROOT TARGET=mips TARGET_ARCH=mips64 buildkernel ... cc -shared -fno-pic -mno-abicalls -G0 -DKERNLOADADDR=0xffffffff80100000 -march=mips64 -mabi=64 -nostdlib hack.c -o hack.So rm -f hack.c sed s/KERNLOADADDR/0xffffffff80100000/g /scratch/git/github/yaneurabeya-freebsd-head/sys/conf/ldscript.mips > ldscript.mips MAKE=make sh /scratch/git/github/yaneurabeya-freebsd-head/sys/conf/newvers.sh BERI_DE4_MDROOT cc -c -O -pipe -std=c99 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/scratch/git/github/yaneurabeya-freebsd-head/sys -I/scratch/git/github/yaneurabeya-freebsd-head/sys/contrib/altq -I/scratch/git/github/yaneurabeya-freebsd-head/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=10000 --param large-function-growth=100000 --param max-inline-insns-single=10000 -fno-pic -mno-abicalls -G0 -DKERNLOADADDR=0xffffffff80100000 -march=mips64 -mabi=64 -msoft-float -ffreestanding -Werror vers.c linking kernel.debug text data bss dec hex filename 4108957 8653440 283024 13045421 c70ead kernel.debug objcopy --only-keep-debug kernel.debug kernel.symbols objcopy --strip-debug --add-gnu-debuglink=kernel.symbols kernel.debug kernel objcopy --strip-symbol '$d' --strip-symbol '$a' -g --strip-symbol '$t' kernel.debug kernel.tmp sed -e s/0xffffffff80100000/0x807963c0/ -e s/" + SIZEOF_HEADERS"// ldscript.mips > ldscript.mips.tramp.noheader cc -O -nostdlib -I. -I/scratch/git/github/yaneurabeya-freebsd-head/sys -fno-pic -mno-abicalls -G0 -DKERNLOADADDR=0xffffffff80100000 -march=mips64 -mabi=64 -Xlinker -T -Xlinker ldscript.mips.tramp.noheader -DKERNNAME="\"kernel.tmp\"" -DELFSIZE=64 /scratch/git/github/yaneurabeya-freebsd-head/sys/mips/mips/elf_trampoline.c /scratch/git/github/yaneurabeya-freebsd-head/sys/mips/mips/inckern.S -o kernel.tramp.elf objcopy -S -O binary kernel.tramp.elf kernel.tramp.bin cd /scratch/git/github/yaneurabeya-freebsd-head/sys/modules; MAKEOBJDIRPREFIX=/usr/obj/mips.mips64/scratch/git/github/yaneurabeya-freebsd-head/sys/BERI_DE4_MDROOT/modules KMODDIR=/boot/kernel MACHINE_CPUARCH=mips MODULES_OVERRIDE="""" DEBUG_FLAGS="-g" MACHINE=mips MACHINE_ARCH=mips64 KERNBUILDDIR="/usr/obj/mips.mips64/scratch/git/github/yaneurabeya-freebsd-head/sys/BERI_DE4_MDROOT" SYSDIR="/scratch/git/github/yaneurabeya-freebsd-head/sys" make all -------------------------------------------------------------- >>> Kernel build for BERI_DE4_MDROOT completed on Tue Jan 1 10:31:25 PST 2013 -------------------------------------------------------------- From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:43:38 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 942DEE43; Tue, 1 Jan 2013 18:43:38 +0000 (UTC) (envelope-from gshapiro@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5C0718FC0C; Tue, 1 Jan 2013 18:43:38 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01IhcZR016977; Tue, 1 Jan 2013 18:43:38 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01IhcRi016976; Tue, 1 Jan 2013 18:43:38 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201301011843.r01IhcRi016976@svn.freebsd.org> From: Gregory Neil Shapiro Date: Tue, 1 Jan 2013 18:43:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r244934 - stable/9/contrib/sendmail X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:43:38 -0000 Author: gshapiro Date: Tue Jan 1 18:43:37 2013 New Revision: 244934 URL: http://svnweb.freebsd.org/changeset/base/244934 Log: MFC: Update import info based on recent experiences and sendmail 8.14.6 import. Modified: stable/9/contrib/sendmail/FREEBSD-upgrade Directory Properties: stable/9/contrib/sendmail/ (props changed) Modified: stable/9/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- stable/9/contrib/sendmail/FREEBSD-upgrade Tue Jan 1 18:31:21 2013 (r244933) +++ stable/9/contrib/sendmail/FREEBSD-upgrade Tue Jan 1 18:43:37 2013 (r244934) @@ -1,24 +1,12 @@ $FreeBSD$ -sendmail 8.14.5 +sendmail 8.14.6 originals can be found at: ftp://ftp.sendmail.org/pub/sendmail/ For the import of sendmail, the following directories were renamed: sendmail -> src -For the merge of sendmail, the following files were removed: - - Build - cf/cf/Build - cf/cf/generic-*.cf - devtools/* - doc/op/op.ps - */Build - [e-v]*/*.0 - sendmail/makesendmail - sendmail/sysexits.h - Imported using the instructions at: http://wiki.freebsd.org/SubversionPrimer/VendorImports @@ -39,9 +27,8 @@ Then merged using: % svn commit After importing, bump the version of src/etc/sendmail/freebsd*mc -so mergemaster will merge /etc/mail/freebsd*cf: - - (svn command TBD) cvs commit -f src/etc/sendmail/freebsd*mc +so mergemaster will merge /etc/mail/freebsd*cf by making a minor +change and committing. To make local changes to sendmail, simply patch and commit to the head. Never make local changes in the vendor area (/vendor/sendmail/). @@ -57,7 +44,7 @@ infrastructure in FreeBSD: bin/rmail/Makefile contrib/sendmail/ etc/Makefile - etc/defaults/make.conf (RELENG_4) + etc/defaults/make.conf (obsolete) etc/defaults/periodic.conf etc/defaults/rc.conf etc/mail/Makefile @@ -90,7 +77,7 @@ infrastructure in FreeBSD: share/Makefile share/doc/smm/Makefile share/doc/smm/08.sendmailop/Makefile - share/examples/etc/make.conf (HEAD) + share/examples/etc/make.conf share/man/man5/make.conf.5 share/man/man5/periodic.conf.5 share/man/man5/rc.conf.5 @@ -110,4 +97,4 @@ infrastructure in FreeBSD: usr.sbin/mailwrapper/Makefile gshapiro@FreeBSD.org -13-June-2011 +29-December-2012 From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:45:23 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4AF4DFB8; Tue, 1 Jan 2013 18:45:23 +0000 (UTC) (envelope-from gshapiro@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 122638FC0A; Tue, 1 Jan 2013 18:45:23 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01IjMVE017316; Tue, 1 Jan 2013 18:45:22 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01IjMrG017315; Tue, 1 Jan 2013 18:45:22 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201301011845.r01IjMrG017315@svn.freebsd.org> From: Gregory Neil Shapiro Date: Tue, 1 Jan 2013 18:45:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r244935 - stable/8/contrib/sendmail X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:45:23 -0000 Author: gshapiro Date: Tue Jan 1 18:45:22 2013 New Revision: 244935 URL: http://svnweb.freebsd.org/changeset/base/244935 Log: MFC: Update import info based on recent experiences and sendmail 8.14.6 import. Modified: stable/8/contrib/sendmail/FREEBSD-upgrade Directory Properties: stable/8/contrib/sendmail/ (props changed) Modified: stable/8/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- stable/8/contrib/sendmail/FREEBSD-upgrade Tue Jan 1 18:43:37 2013 (r244934) +++ stable/8/contrib/sendmail/FREEBSD-upgrade Tue Jan 1 18:45:22 2013 (r244935) @@ -1,24 +1,12 @@ $FreeBSD$ -sendmail 8.14.5 +sendmail 8.14.6 originals can be found at: ftp://ftp.sendmail.org/pub/sendmail/ For the import of sendmail, the following directories were renamed: sendmail -> src -For the merge of sendmail, the following files were removed: - - Build - cf/cf/Build - cf/cf/generic-*.cf - devtools/* - doc/op/op.ps - */Build - [e-v]*/*.0 - sendmail/makesendmail - sendmail/sysexits.h - Imported using the instructions at: http://wiki.freebsd.org/SubversionPrimer/VendorImports @@ -39,9 +27,8 @@ Then merged using: % svn commit After importing, bump the version of src/etc/sendmail/freebsd*mc -so mergemaster will merge /etc/mail/freebsd*cf: - - (svn command TBD) cvs commit -f src/etc/sendmail/freebsd*mc +so mergemaster will merge /etc/mail/freebsd*cf by making a minor +change and committing. To make local changes to sendmail, simply patch and commit to the head. Never make local changes in the vendor area (/vendor/sendmail/). @@ -57,7 +44,7 @@ infrastructure in FreeBSD: bin/rmail/Makefile contrib/sendmail/ etc/Makefile - etc/defaults/make.conf (RELENG_4) + etc/defaults/make.conf (obsolete) etc/defaults/periodic.conf etc/defaults/rc.conf etc/mail/Makefile @@ -90,7 +77,7 @@ infrastructure in FreeBSD: share/Makefile share/doc/smm/Makefile share/doc/smm/08.sendmailop/Makefile - share/examples/etc/make.conf (HEAD) + share/examples/etc/make.conf share/man/man5/make.conf.5 share/man/man5/periodic.conf.5 share/man/man5/rc.conf.5 @@ -110,4 +97,4 @@ infrastructure in FreeBSD: usr.sbin/mailwrapper/Makefile gshapiro@FreeBSD.org -13-June-2011 +29-December-2012 From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:48:33 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CA5432B0; Tue, 1 Jan 2013 18:48:33 +0000 (UTC) (envelope-from gshapiro@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 926658FC08; Tue, 1 Jan 2013 18:48:33 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01ImXtV017792; Tue, 1 Jan 2013 18:48:33 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01ImXp6017791; Tue, 1 Jan 2013 18:48:33 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201301011848.r01ImXp6017791@svn.freebsd.org> From: Gregory Neil Shapiro Date: Tue, 1 Jan 2013 18:48:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org Subject: svn commit: r244936 - stable/7/contrib/sendmail X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:48:33 -0000 Author: gshapiro Date: Tue Jan 1 18:48:32 2013 New Revision: 244936 URL: http://svnweb.freebsd.org/changeset/base/244936 Log: MFC: Update import info based on recent experiences and sendmail 8.14.6 import. Modified: stable/7/contrib/sendmail/FREEBSD-upgrade Directory Properties: stable/7/contrib/sendmail/ (props changed) Modified: stable/7/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- stable/7/contrib/sendmail/FREEBSD-upgrade Tue Jan 1 18:45:22 2013 (r244935) +++ stable/7/contrib/sendmail/FREEBSD-upgrade Tue Jan 1 18:48:32 2013 (r244936) @@ -1,24 +1,12 @@ $FreeBSD$ -sendmail 8.14.5 +sendmail 8.14.6 originals can be found at: ftp://ftp.sendmail.org/pub/sendmail/ For the import of sendmail, the following directories were renamed: sendmail -> src -For the merge of sendmail, the following files were removed: - - Build - cf/cf/Build - cf/cf/generic-*.cf - devtools/* - doc/op/op.ps - */Build - [e-v]*/*.0 - sendmail/makesendmail - sendmail/sysexits.h - Imported using the instructions at: http://wiki.freebsd.org/SubversionPrimer/VendorImports @@ -39,9 +27,8 @@ Then merged using: % svn commit After importing, bump the version of src/etc/sendmail/freebsd*mc -so mergemaster will merge /etc/mail/freebsd*cf: - - (svn command TBD) cvs commit -f src/etc/sendmail/freebsd*mc +so mergemaster will merge /etc/mail/freebsd*cf by making a minor +change and committing. To make local changes to sendmail, simply patch and commit to the head. Never make local changes in the vendor area (/vendor/sendmail/). @@ -57,7 +44,7 @@ infrastructure in FreeBSD: bin/rmail/Makefile contrib/sendmail/ etc/Makefile - etc/defaults/make.conf (RELENG_4) + etc/defaults/make.conf (obsolete) etc/defaults/periodic.conf etc/defaults/rc.conf etc/mail/Makefile @@ -90,7 +77,7 @@ infrastructure in FreeBSD: share/Makefile share/doc/smm/Makefile share/doc/smm/08.sendmailop/Makefile - share/examples/etc/make.conf (HEAD) + share/examples/etc/make.conf share/man/man5/make.conf.5 share/man/man5/periodic.conf.5 share/man/man5/rc.conf.5 @@ -110,4 +97,4 @@ infrastructure in FreeBSD: usr.sbin/mailwrapper/Makefile gshapiro@FreeBSD.org -13-June-2011 +29-December-2012 From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:53:48 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 908ED449; Tue, 1 Jan 2013 18:53:48 +0000 (UTC) (envelope-from gshapiro@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5928D8FC0A; Tue, 1 Jan 2013 18:53:48 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01IrmfG018673; Tue, 1 Jan 2013 18:53:48 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01IrmTV018671; Tue, 1 Jan 2013 18:53:48 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201301011853.r01IrmTV018671@svn.freebsd.org> From: Gregory Neil Shapiro Date: Tue, 1 Jan 2013 18:53:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r244937 - stable/9/etc/sendmail X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:53:48 -0000 Author: gshapiro Date: Tue Jan 1 18:53:47 2013 New Revision: 244937 URL: http://svnweb.freebsd.org/changeset/base/244937 Log: MFC: Minor changes to force commit these files so new freebsd*.cf files are built to use the new sendmail-8.14.6/cf tree. While here, update DNSBL link once again. Modified: stable/9/etc/sendmail/freebsd.mc stable/9/etc/sendmail/freebsd.submit.mc Directory Properties: stable/9/etc/ (props changed) Modified: stable/9/etc/sendmail/freebsd.mc ============================================================================== --- stable/9/etc/sendmail/freebsd.mc Tue Jan 1 18:48:32 2013 (r244936) +++ stable/9/etc/sendmail/freebsd.mc Tue Jan 1 18:53:47 2013 (r244937) @@ -63,8 +63,8 @@ dnl DNS based black hole lists dnl -------------------------------- dnl DNS based black hole lists come and go on a regular basis dnl so this file will not serve as a database of the available servers. -dnl For that, visit -dnl http://www.google.com/Top/Computers/Internet/E-mail/Spam/Blacklists/ +dnl For more information, visit +dnl http://en.wikipedia.org/wiki/DNSBL dnl Uncomment to activate your chosen DNS based blacklist dnl FEATURE(dnsbl, `dnsbl.example.com') Modified: stable/9/etc/sendmail/freebsd.submit.mc ============================================================================== --- stable/9/etc/sendmail/freebsd.submit.mc Tue Jan 1 18:48:32 2013 (r244936) +++ stable/9/etc/sendmail/freebsd.submit.mc Tue Jan 1 18:53:47 2013 (r244937) @@ -9,6 +9,7 @@ divert(-1) # # + # # This is the FreeBSD configuration for a set-group-ID sm-msp sendmail # that acts as a initial mail submission program. From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:54:56 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7DDA55AB; Tue, 1 Jan 2013 18:54:56 +0000 (UTC) (envelope-from gshapiro@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 465208FC08; Tue, 1 Jan 2013 18:54:56 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01Isupi018902; Tue, 1 Jan 2013 18:54:56 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01Istxv018900; Tue, 1 Jan 2013 18:54:55 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201301011854.r01Istxv018900@svn.freebsd.org> From: Gregory Neil Shapiro Date: Tue, 1 Jan 2013 18:54:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r244938 - stable/8/etc/sendmail X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:54:56 -0000 Author: gshapiro Date: Tue Jan 1 18:54:55 2013 New Revision: 244938 URL: http://svnweb.freebsd.org/changeset/base/244938 Log: MFC: Minor changes to force commit these files so new freebsd*.cf files are built to use the new sendmail-8.14.6/cf tree. While here, update DNSBL link once again. Modified: stable/8/etc/sendmail/freebsd.mc stable/8/etc/sendmail/freebsd.submit.mc Directory Properties: stable/8/etc/ (props changed) Modified: stable/8/etc/sendmail/freebsd.mc ============================================================================== --- stable/8/etc/sendmail/freebsd.mc Tue Jan 1 18:53:47 2013 (r244937) +++ stable/8/etc/sendmail/freebsd.mc Tue Jan 1 18:54:55 2013 (r244938) @@ -63,8 +63,8 @@ dnl DNS based black hole lists dnl -------------------------------- dnl DNS based black hole lists come and go on a regular basis dnl so this file will not serve as a database of the available servers. -dnl For that, visit -dnl http://www.google.com/Top/Computers/Internet/E-mail/Spam/Blacklists/ +dnl For more information, visit +dnl http://en.wikipedia.org/wiki/DNSBL dnl Uncomment to activate your chosen DNS based blacklist dnl FEATURE(dnsbl, `dnsbl.example.com') Modified: stable/8/etc/sendmail/freebsd.submit.mc ============================================================================== --- stable/8/etc/sendmail/freebsd.submit.mc Tue Jan 1 18:53:47 2013 (r244937) +++ stable/8/etc/sendmail/freebsd.submit.mc Tue Jan 1 18:54:55 2013 (r244938) @@ -9,6 +9,7 @@ divert(-1) # # + # # This is the FreeBSD configuration for a set-group-ID sm-msp sendmail # that acts as a initial mail submission program. From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:55:05 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 92AE46BA; Tue, 1 Jan 2013 18:55:05 +0000 (UTC) (envelope-from kientzle@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 74ACA8FC0A; Tue, 1 Jan 2013 18:55:05 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01It5IT019025; Tue, 1 Jan 2013 18:55:05 GMT (envelope-from kientzle@svn.freebsd.org) Received: (from kientzle@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01It5p7019023; Tue, 1 Jan 2013 18:55:05 GMT (envelope-from kientzle@svn.freebsd.org) Message-Id: <201301011855.r01It5p7019023@svn.freebsd.org> From: Tim Kientzle Date: Tue, 1 Jan 2013 18:55:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244939 - head/sys/arm/ti/cpsw X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:55:05 -0000 Author: kientzle Date: Tue Jan 1 18:55:04 2013 New Revision: 244939 URL: http://svnweb.freebsd.org/changeset/base/244939 Log: Overhauled CPSW driver for TI CPSW Ethernet module (as used in AM335x SoC for BeagleBone). Among other things: * Watchdog reset doesn't hang the driver. * Disconnecting cable doesn't hang the driver. * ifconfig up/down doesn't hang the driver * Out-of-memory no longer panics the driver. Known issues: * Doesn't have good support for fragmented packets (calls m_defrag() on TX, assumes RX packets are never fragmented) * Promisc and allmulti still unimplimented * addmulti and delmulti still unimplemented * TX queue still stalls (but watchdog now consistently recovers in ~5s) * No sysctl monitoring * Only supports port0 * No switch configuration support * Not tested on anything but BeagleBone Committed from: BeagleBone Modified: head/sys/arm/ti/cpsw/if_cpsw.c head/sys/arm/ti/cpsw/if_cpswreg.h head/sys/arm/ti/cpsw/if_cpswvar.h Modified: head/sys/arm/ti/cpsw/if_cpsw.c ============================================================================== --- head/sys/arm/ti/cpsw/if_cpsw.c Tue Jan 1 18:54:55 2013 (r244938) +++ head/sys/arm/ti/cpsw/if_cpsw.c Tue Jan 1 18:55:04 2013 (r244939) @@ -95,9 +95,9 @@ static void cpsw_start(struct ifnet *ifp static void cpsw_start_locked(struct ifnet *ifp); static void cpsw_stop_locked(struct cpsw_softc *sc); static int cpsw_ioctl(struct ifnet *ifp, u_long command, caddr_t data); -static int cpsw_allocate_dma(struct cpsw_softc *sc); -static int cpsw_free_dma(struct cpsw_softc *sc); -static int cpsw_new_rxbuf(struct cpsw_softc *sc, uint32_t i, uint32_t next); +static int cpsw_init_slot_lists(struct cpsw_softc *sc); +static void cpsw_free_slot(struct cpsw_softc *sc, struct cpsw_slot *slot); +static void cpsw_fill_rx_queue_locked(struct cpsw_softc *sc); static void cpsw_watchdog(struct cpsw_softc *sc); static void cpsw_intr_rx_thresh(void *arg); @@ -156,10 +156,10 @@ static struct { driver_intr_t *handler; char * description; } cpsw_intrs[CPSW_INTR_COUNT + 1] = { - { cpsw_intr_rx_thresh,"CPSW RX threshold interrupt" }, + { cpsw_intr_rx_thresh, "CPSW RX threshold interrupt" }, { cpsw_intr_rx, "CPSW RX interrupt" }, { cpsw_intr_tx, "CPSW TX interrupt" }, - { cpsw_intr_misc,"CPSW misc interrupt" }, + { cpsw_intr_misc, "CPSW misc interrupt" }, }; /* Locking macros */ @@ -199,6 +199,34 @@ static struct { } while (0) +#include +static void +cpsw_debugf_head(const char *funcname) +{ + int t = (int)(time_second % (24 * 60 * 60)); + + printf("%02d:%02d:%02d %s ", t / (60 * 60), (t / 60) % 60, t % 60, funcname); +} + +static void +cpsw_debugf(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + vprintf(fmt, ap); + va_end(ap); + printf("\n"); + +} + +#define CPSW_DEBUGF(a) do { \ + if (sc->cpsw_if_flags & IFF_DEBUG) { \ + cpsw_debugf_head(__func__); \ + cpsw_debugf a; \ + } \ +} while (0) + static int cpsw_probe(device_t dev) { @@ -213,18 +241,20 @@ cpsw_probe(device_t dev) static int cpsw_attach(device_t dev) { - struct cpsw_softc *sc; + struct cpsw_softc *sc = device_get_softc(dev); struct mii_softc *miisc; struct ifnet *ifp; + void *phy_sc; int i, error, phy; uint32_t reg; - sc = device_get_softc(dev); + CPSW_DEBUGF(("")); + sc->dev = dev; sc->node = ofw_bus_get_node(dev); /* Get phy address from fdt */ - if (fdt_get_phyaddr(sc->node, sc->dev, &phy, (void **)&sc->phy_sc) != 0) { + if (fdt_get_phyaddr(sc->node, sc->dev, &phy, &phy_sc) != 0) { device_printf(dev, "failed to get PHY address from FDT\n"); return (ENXIO); } @@ -246,14 +276,32 @@ cpsw_attach(device_t dev) device_printf(dev, "Version %d.%d (%d)\n", (reg >> 8 & 0x7), reg & 0xFF, (reg >> 11) & 0x1F); - /* Allocate DMA, buffers, buffer descriptors */ - error = cpsw_allocate_dma(sc); + //cpsw_add_sysctls(sc); TODO + + /* Allocate a busdma tag and DMA safe memory for mbufs. */ + error = bus_dma_tag_create( + bus_get_dma_tag(sc->dev), /* parent */ + 1, 0, /* alignment, boundary */ + BUS_SPACE_MAXADDR_32BIT, /* lowaddr */ + BUS_SPACE_MAXADDR, /* highaddr */ + NULL, NULL, /* filtfunc, filtfuncarg */ + MCLBYTES, 1, /* maxsize, nsegments */ + MCLBYTES, 0, /* maxsegsz, flags */ + NULL, NULL, /* lockfunc, lockfuncarg */ + &sc->mbuf_dtag); /* dmatag */ if (error) { + device_printf(dev, "bus_dma_tag_create failed\n"); cpsw_detach(dev); - return (ENXIO); + return (ENOMEM); } - //cpsw_add_sysctls(sc); TODO + /* Initialize the tx_avail and rx_avail lists. */ + error = cpsw_init_slot_lists(sc); + if (error) { + device_printf(dev, "failed to allocate dmamaps\n"); + cpsw_detach(dev); + return (ENOMEM); + } /* Allocate network interface */ ifp = sc->ifp = if_alloc(IFT_ETHER); @@ -294,7 +342,7 @@ cpsw_attach(device_t dev) /* Initialze MDIO - ENABLE, PREAMBLE=0, FAULTENB, CLKDIV=0xFF */ /* TODO Calculate MDCLK=CLK/(CLKDIV+1) */ - cpsw_write_4(MDIOCONTROL, (1<<30) | (1<<18) | 0xFF); + cpsw_write_4(MDIOCONTROL, 1 << 30 | 1 << 18 | 0xFF); /* Attach PHY(s) */ error = mii_attach(dev, &sc->miibus, ifp, cpsw_ifmedia_upd, @@ -310,7 +358,7 @@ cpsw_attach(device_t dev) miisc = LIST_FIRST(&sc->mii->mii_phys); /* Select PHY and enable interrupts */ - cpsw_write_4(MDIOUSERPHYSEL0, (1 << 6) | (miisc->mii_phy & 0x1F)); + cpsw_write_4(MDIOUSERPHYSEL0, 1 << 6 | (miisc->mii_phy & 0x1F)); /* Attach interrupt handlers */ for (i = 1; i <= CPSW_INTR_COUNT; ++i) { @@ -332,17 +380,22 @@ cpsw_attach(device_t dev) static int cpsw_detach(device_t dev) { - struct cpsw_softc *sc; - int error,i; + struct cpsw_softc *sc = device_get_softc(dev); + int error, i; - sc = device_get_softc(dev); + CPSW_DEBUGF(("")); /* Stop controller and free TX queue */ - if (sc->ifp) - cpsw_shutdown(dev); + if (device_is_attached(dev)) { + ether_ifdetach(sc->ifp); + CPSW_GLOBAL_LOCK(sc); + cpsw_stop_locked(sc); + CPSW_GLOBAL_UNLOCK(sc); + callout_drain(&sc->wd_callout); + } - /* Wait for stopping ticks */ - callout_drain(&sc->wd_callout); + bus_generic_detach(dev); + device_delete_child(dev, sc->miibus); /* Stop and release all interrupts */ for (i = 0; i < CPSW_INTR_COUNT; ++i) { @@ -355,14 +408,17 @@ cpsw_detach(device_t dev) cpsw_intrs[i + 1].description); } - /* Detach network interface */ - if (sc->ifp) { - ether_ifdetach(sc->ifp); - if_free(sc->ifp); + /* Free dmamaps and mbufs */ + for (i = 0; i < CPSW_MAX_TX_BUFFERS; i++) { + cpsw_free_slot(sc, &sc->_tx_slots[i]); + } + for (i = 0; i < CPSW_MAX_RX_BUFFERS; i++) { + cpsw_free_slot(sc, &sc->_rx_slots[i]); } - /* Free DMA resources */ - cpsw_free_dma(sc); + /* Free DMA tag */ + error = bus_dma_tag_destroy(sc->mbuf_dtag); + KASSERT(error == 0, ("Unable to destroy DMA tag")); /* Free IO memory handler */ bus_release_resources(dev, res_spec, sc->res); @@ -377,15 +433,19 @@ cpsw_detach(device_t dev) static int cpsw_suspend(device_t dev) { + struct cpsw_softc *sc = device_get_softc(dev); - device_printf(dev, "%s\n", __FUNCTION__); + CPSW_DEBUGF(("")); + CPSW_GLOBAL_LOCK(sc); + cpsw_stop_locked(sc); + CPSW_GLOBAL_UNLOCK(sc); return (0); } static int cpsw_resume(device_t dev) { - + /* XXX TODO XXX */ device_printf(dev, "%s\n", __FUNCTION__); return (0); } @@ -395,208 +455,132 @@ cpsw_shutdown(device_t dev) { struct cpsw_softc *sc = device_get_softc(dev); + CPSW_DEBUGF(("")); CPSW_GLOBAL_LOCK(sc); - cpsw_stop_locked(sc); - CPSW_GLOBAL_UNLOCK(sc); - return (0); } static int -cpsw_miibus_readreg(device_t dev, int phy, int reg) +cpsw_miibus_ready(struct cpsw_softc *sc) { - struct cpsw_softc *sc; - uint32_t r; - uint32_t retries = CPSW_MIIBUS_RETRIES; + uint32_t r, retries = CPSW_MIIBUS_RETRIES; - sc = device_get_softc(dev); - - /* Wait until interface is ready by watching GO bit */ - while(--retries && (cpsw_read_4(MDIOUSERACCESS0) & (1 << 31)) ) + while (--retries) { + r = cpsw_read_4(MDIOUSERACCESS0); + if ((r & 1 << 31) == 0) + return 1; DELAY(CPSW_MIIBUS_DELAY); - if (!retries) - device_printf(dev, "Timeout while waiting for MDIO.\n"); + } + return 0; +} - /* Set GO, phy and reg */ - cpsw_write_4(MDIOUSERACCESS0, (1 << 31) | - ((reg & 0x1F) << 21) | ((phy & 0x1F) << 16)); +static int +cpsw_miibus_readreg(device_t dev, int phy, int reg) +{ + struct cpsw_softc *sc = device_get_softc(dev); + uint32_t cmd, r; - while(--retries && (cpsw_read_4(MDIOUSERACCESS0) & (1 << 31)) ) - DELAY(CPSW_MIIBUS_DELAY); - if (!retries) - device_printf(dev, "Timeout while waiting for MDIO.\n"); + if (!cpsw_miibus_ready(sc)) { + device_printf(dev, "MDIO not ready to read\n"); + return 0; + } + + /* Set GO, reg, phy */ + cmd = 1 << 31 | (reg & 0x1F) << 21 | (phy & 0x1F) << 16; + cpsw_write_4(MDIOUSERACCESS0, cmd); + + if (!cpsw_miibus_ready(sc)) { + device_printf(dev, "MDIO timed out during read\n"); + return 0; + } r = cpsw_read_4(MDIOUSERACCESS0); - /* Check for ACK */ - if(r & (1<<29)) { - return (r & 0xFFFF); + if((r & 1 << 29) == 0) { + device_printf(dev, "Failed to read from PHY.\n"); + r = 0; } - device_printf(dev, "Failed to read from PHY.\n"); - return 0; + return (r & 0xFFFF); } static int cpsw_miibus_writereg(device_t dev, int phy, int reg, int value) { - struct cpsw_softc *sc; - uint32_t retries = CPSW_MIIBUS_RETRIES; - - sc = device_get_softc(dev); - - /* Wait until interface is ready by watching GO bit */ - while(--retries && (cpsw_read_4(MDIOUSERACCESS0) & (1 << 31)) ) - DELAY(CPSW_MIIBUS_DELAY); - if (!retries) - device_printf(dev, "Timeout while waiting for MDIO.\n"); + struct cpsw_softc *sc = device_get_softc(dev); + uint32_t cmd; - /* Set GO, WRITE, phy, reg and value */ - cpsw_write_4(MDIOUSERACCESS0, (value & 0xFFFF) | (3 << 30) | - ((reg & 0x1F) << 21) | ((phy & 0x1F) << 16)); + if (!cpsw_miibus_ready(sc)) { + device_printf(dev, "MDIO not ready to write\n"); + return 0; + } - while(--retries && (cpsw_read_4(MDIOUSERACCESS0) & (1 << 31)) ) - DELAY(CPSW_MIIBUS_DELAY); - if (!retries) - device_printf(dev, "Timeout while waiting for MDIO.\n"); + /* Set GO, WRITE, reg, phy, and value */ + cmd = 3 << 30 | (reg & 0x1F) << 21 | (phy & 0x1F) << 16 + | (value & 0xFFFF); + cpsw_write_4(MDIOUSERACCESS0, cmd); - /* Check for ACK */ - if(cpsw_read_4(MDIOUSERACCESS0) & (1<<29)) { + if (!cpsw_miibus_ready(sc)) { + device_printf(dev, "MDIO timed out during write\n"); return 0; } - device_printf(dev, "Failed to write to PHY.\n"); + + if((cpsw_read_4(MDIOUSERACCESS0) & (1 << 29)) == 0) + device_printf(dev, "Failed to write to PHY.\n"); return 0; } static int -cpsw_allocate_dma(struct cpsw_softc *sc) +cpsw_init_slot_lists(struct cpsw_softc *sc) { - int err; int i; - /* Allocate a busdma tag and DMA safe memory for tx mbufs. */ - err = bus_dma_tag_create( - bus_get_dma_tag(sc->dev), /* parent */ - 1, 0, /* alignment, boundary */ - BUS_SPACE_MAXADDR_32BIT, /* lowaddr */ - BUS_SPACE_MAXADDR, /* highaddr */ - NULL, NULL, /* filtfunc, filtfuncarg */ - MCLBYTES, 1, /* maxsize, nsegments */ - MCLBYTES, 0, /* maxsegsz, flags */ - NULL, NULL, /* lockfunc, lockfuncarg */ - &sc->mbuf_dtag); /* dmatag */ + STAILQ_INIT(&sc->rx_active); + STAILQ_INIT(&sc->rx_avail); + STAILQ_INIT(&sc->tx_active); + STAILQ_INIT(&sc->tx_avail); - if (err) - return (ENOMEM); + /* Put the slot descriptors onto the avail lists. */ for (i = 0; i < CPSW_MAX_TX_BUFFERS; i++) { - if ( bus_dmamap_create(sc->mbuf_dtag, 0, &sc->tx_dmamap[i])) { - if_printf(sc->ifp, "failed to create dmamap for rx mbuf\n"); + struct cpsw_slot *slot = &sc->_tx_slots[i]; + slot->index = i; + /* XXX TODO: Remove this from here; allocate dmamaps lazily + in the encap routine to reduce memory usage. */ + if (bus_dmamap_create(sc->mbuf_dtag, 0, &slot->dmamap)) { + if_printf(sc->ifp, "failed to create dmamap for tx mbuf\n"); return (ENOMEM); } + STAILQ_INSERT_TAIL(&sc->tx_avail, slot, next); } for (i = 0; i < CPSW_MAX_RX_BUFFERS; i++) { - if ( bus_dmamap_create(sc->mbuf_dtag, 0, &sc->rx_dmamap[i])) { + struct cpsw_slot *slot = &sc->_rx_slots[i]; + slot->index = i; + if (bus_dmamap_create(sc->mbuf_dtag, 0, &slot->dmamap)) { if_printf(sc->ifp, "failed to create dmamap for rx mbuf\n"); return (ENOMEM); } + STAILQ_INSERT_TAIL(&sc->rx_avail, slot, next); } return (0); } -static int -cpsw_free_dma(struct cpsw_softc *sc) -{ - (void)sc; /* UNUSED */ - // TODO - return 0; -} - -static int -cpsw_new_rxbuf(struct cpsw_softc *sc, uint32_t i, uint32_t next) -{ - bus_dma_segment_t seg[1]; - struct cpsw_cpdma_bd bd; - int error; - int nsegs; - - sc->rx_mbuf[i] = m_getcl(M_NOWAIT, MT_DATA, M_PKTHDR); - if (sc->rx_mbuf[i] == NULL) - return (ENOBUFS); - - sc->rx_mbuf[i]->m_len = sc->rx_mbuf[i]->m_pkthdr.len = sc->rx_mbuf[i]->m_ext.ext_size; - - error = bus_dmamap_load_mbuf_sg(sc->mbuf_dtag, sc->rx_dmamap[i], - sc->rx_mbuf[i], seg, &nsegs, BUS_DMA_NOWAIT); - - KASSERT(nsegs == 1, ("Too many segments returned!")); - if (nsegs != 1 || error) - panic("%s: nsegs(%d), error(%d)",__func__, nsegs, error); - - bus_dmamap_sync(sc->mbuf_dtag, sc->rx_dmamap[i], BUS_DMASYNC_PREREAD); - - /* Create and submit new rx descriptor*/ - bd.next = next; - bd.bufptr = seg->ds_addr; - bd.buflen = MCLBYTES-1; - bd.bufoff = 2; /* make IP hdr aligned with 4 */ - bd.pktlen = 0; - bd.flags = CPDMA_BD_OWNER; - cpsw_cpdma_write_rxbd(i, &bd); - - return (0); -} - - -static int -cpsw_encap(struct cpsw_softc *sc, struct mbuf *m0) +static void +cpsw_free_slot(struct cpsw_softc *sc, struct cpsw_slot *slot) { - bus_dma_segment_t seg[1]; - struct cpsw_cpdma_bd bd; int error; - int nsegs; - int idx; - if (sc->txbd_queue_size == CPSW_MAX_TX_BUFFERS) - return (ENOBUFS); - - idx = sc->txbd_head + sc->txbd_queue_size; - - if (idx >= (CPSW_MAX_TX_BUFFERS) ) - idx -= CPSW_MAX_TX_BUFFERS; - - /* Create mapping in DMA memory */ - error = bus_dmamap_load_mbuf_sg(sc->mbuf_dtag, sc->tx_dmamap[idx], m0, seg, &nsegs, - BUS_DMA_NOWAIT); - sc->tc[idx]++; - if (error != 0 || nsegs != 1 ) { - bus_dmamap_unload(sc->mbuf_dtag, sc->tx_dmamap[idx]); - return ((error != 0) ? error : -1); - } - bus_dmamap_sync(sc->mbuf_dtag, sc->tx_dmamap[idx], BUS_DMASYNC_PREWRITE); - - /* Fill descriptor data */ - bd.next = 0; - bd.bufptr = seg->ds_addr; - bd.bufoff = 0; - bd.buflen = seg->ds_len; - bd.pktlen = seg->ds_len; - /* Set OWNERSHIP, SOP, EOP */ - bd.flags = (7<<13); - - /* Write descriptor */ - cpsw_cpdma_write_txbd(idx, &bd); - sc->tx_mbuf[idx] = m0; - - /* Previous descriptor should point to us */ - cpsw_cpdma_write_txbd_next(((idx-1<0)?(CPSW_MAX_TX_BUFFERS-1):(idx-1)), - cpsw_cpdma_txbd_paddr(idx)); - - sc->txbd_queue_size++; - - return (0); + if (slot->dmamap) { + error = bus_dmamap_destroy(sc->mbuf_dtag, slot->dmamap); + KASSERT(error == 0, ("Mapping still active")); + slot->dmamap = NULL; + } + if (slot->mbuf) { + m_freem(slot->mbuf); + slot->mbuf = NULL; + } } /* @@ -655,10 +639,13 @@ cpsw_start(struct ifnet *ifp) static void cpsw_start_locked(struct ifnet *ifp) { + bus_dma_segment_t seg[1]; + struct cpsw_cpdma_bd bd; struct cpsw_softc *sc = ifp->if_softc; + struct cpsw_queue newslots = STAILQ_HEAD_INITIALIZER(newslots); + struct cpsw_slot *slot, *prev_slot = NULL, *first_new_slot; struct mbuf *m0, *mtmp; - uint32_t queued = 0; - int error; + int error, nsegs, enqueued = 0; CPSW_TX_LOCK_ASSERT(sc); @@ -666,44 +653,111 @@ cpsw_start_locked(struct ifnet *ifp) IFF_DRV_RUNNING) return; + /* Pull pending packets from IF queue and prep them for DMA. */ for (;;) { - /* Get packet from the queue */ + slot = STAILQ_FIRST(&sc->tx_avail); + if (slot == NULL) { + ifp->if_drv_flags |= IFF_DRV_OACTIVE; + break; + } + IF_DEQUEUE(&ifp->if_snd, m0); if (m0 == NULL) break; if ((error = cpsw_pad(m0))) { + if_printf(ifp, + "%s: Dropping packet; could not pad\n", __func__); m_freem(m0); continue; } + /* TODO: don't defragment here, queue each + packet fragment as a separate entry. */ mtmp = m_defrag(m0, M_NOWAIT); if (mtmp) m0 = mtmp; - if (cpsw_encap(sc, m0)) { - IF_PREPEND(&ifp->if_snd, m0); - ifp->if_drv_flags |= IFF_DRV_OACTIVE; + slot->mbuf = m0; + /* Create mapping in DMA memory */ + error = bus_dmamap_load_mbuf_sg(sc->mbuf_dtag, slot->dmamap, + m0, seg, &nsegs, BUS_DMA_NOWAIT); + KASSERT(nsegs == 1, ("More than one segment (nsegs=%d)", nsegs)); + KASSERT(error == 0, ("DMA error (error=%d)", error)); + if (error != 0 || nsegs != 1) { + if_printf(ifp, + "%s: Can't load packet for DMA (nsegs=%d, error=%d), dropping packet\n", + __func__, nsegs, error); + bus_dmamap_unload(sc->mbuf_dtag, slot->dmamap); + m_freem(m0); break; } - queued++; + bus_dmamap_sync(sc->mbuf_dtag, slot->dmamap, + BUS_DMASYNC_PREWRITE); + + if (prev_slot != NULL) + cpsw_cpdma_write_txbd_next(prev_slot->index, + cpsw_cpdma_txbd_paddr(slot->index)); + bd.next = 0; + bd.bufptr = seg->ds_addr; + bd.bufoff = 0; + bd.buflen = seg->ds_len; + bd.pktlen = seg->ds_len; + bd.flags = 7 << 13; /* Set OWNERSHIP, SOP, EOP */ + cpsw_cpdma_write_txbd(slot->index, &bd); + ++enqueued; + + prev_slot = slot; + STAILQ_REMOVE_HEAD(&sc->tx_avail, next); + STAILQ_INSERT_TAIL(&newslots, slot, next); BPF_MTAP(ifp, m0); } - if (!queued) + if (STAILQ_EMPTY(&newslots)) return; - if (sc->eoq) { - cpsw_write_4(CPSW_CPDMA_TX_HDP(0), cpsw_cpdma_txbd_paddr(sc->txbd_head)); - sc->eoq = 0; + /* Attach new segments to the hardware TX queue. */ + prev_slot = STAILQ_LAST(&sc->tx_active, cpsw_slot, next); + first_new_slot = STAILQ_FIRST(&newslots); + STAILQ_CONCAT(&sc->tx_active, &newslots); + if (prev_slot == NULL) { + /* Start the TX queue fresh. */ + cpsw_write_4(CPSW_CPDMA_TX_HDP(0), + cpsw_cpdma_txbd_paddr(first_new_slot->index)); + } else { + /* Add packets to current queue. */ + /* Race: The hardware might have sent the last packet + * on the queue and stopped the transmitter just + * before we got here. In that case, this is a no-op, + * but it also means there's a TX interrupt waiting + * to be processed as soon as we release the lock here. + * That TX interrupt can detect and recover from this + * situation; see cpsw_intr_tx_locked. + */ + cpsw_cpdma_write_txbd_next(prev_slot->index, + cpsw_cpdma_txbd_paddr(first_new_slot->index)); + } + /* If tx_retires hasn't changed, then we may have + lost a TX interrupt, so let the timer tick. */ + sc->tx_enqueues += enqueued; + if (sc->tx_retires_at_wd_reset != sc->tx_retires) { + sc->tx_retires_at_wd_reset = sc->tx_retires; + sc->wd_timer = 5; + } + sc->tx_queued += enqueued; + if (sc->tx_queued > sc->tx_max_queued) { + sc->tx_max_queued = sc->tx_queued; + CPSW_DEBUGF(("New TX high water mark %d", sc->tx_queued)); } - sc->wd_timer = 5; } static void cpsw_stop_locked(struct cpsw_softc *sc) { struct ifnet *ifp; + int i; + + CPSW_DEBUGF(("")); CPSW_GLOBAL_LOCK_ASSERT(sc); @@ -712,15 +766,89 @@ cpsw_stop_locked(struct cpsw_softc *sc) if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) return; - /* Stop tick engine */ - callout_stop(&sc->wd_callout); - /* Disable interface */ ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE); + + /* Stop tick engine */ + callout_stop(&sc->wd_callout); sc->wd_timer = 0; - /* Disable interrupts TODO */ + /* Wait for hardware to clear pending ops. */ + CPSW_GLOBAL_UNLOCK(sc); + CPSW_DEBUGF(("starting RX and TX teardown")); + cpsw_write_4(CPSW_CPDMA_RX_TEARDOWN, 0); + cpsw_write_4(CPSW_CPDMA_TX_TEARDOWN, 0); + i = 0; + cpsw_intr_rx(sc); // Try clearing without delay. + cpsw_intr_tx(sc); + while (sc->rx_running || sc->tx_running) { + DELAY(10); + cpsw_intr_rx(sc); + cpsw_intr_tx(sc); + ++i; + } + CPSW_DEBUGF(("finished RX and TX teardown (%d tries)", i)); + CPSW_GLOBAL_LOCK(sc); + + /* All slots are now available */ + STAILQ_CONCAT(&sc->rx_avail, &sc->rx_active); + STAILQ_CONCAT(&sc->tx_avail, &sc->tx_active); + CPSW_DEBUGF(("%d buffers dropped at TX reset", sc->tx_queued)); + sc->tx_queued = 0; + + /* Reset writer */ + cpsw_write_4(CPSW_WR_SOFT_RESET, 1); + while (cpsw_read_4(CPSW_WR_SOFT_RESET) & 1) + ; + + /* Reset SS */ + cpsw_write_4(CPSW_SS_SOFT_RESET, 1); + while (cpsw_read_4(CPSW_SS_SOFT_RESET) & 1) + ; + + /* Reset Sliver port 1 and 2 */ + for (i = 0; i < 2; i++) { + /* Reset */ + cpsw_write_4(CPSW_SL_SOFT_RESET(i), 1); + while (cpsw_read_4(CPSW_SL_SOFT_RESET(i)) & 1) + ; + } + + /* Reset CPDMA */ + cpsw_write_4(CPSW_CPDMA_SOFT_RESET, 1); + while (cpsw_read_4(CPSW_CPDMA_SOFT_RESET) & 1) + ; + + /* Disable TX & RX DMA */ + cpsw_write_4(CPSW_CPDMA_TX_CONTROL, 0); + cpsw_write_4(CPSW_CPDMA_RX_CONTROL, 0); + + /* Disable TX and RX interrupts for all cores. */ + for (i = 0; i < 3; ++i) { + cpsw_write_4(CPSW_WR_C_TX_EN(i), 0x00); + cpsw_write_4(CPSW_WR_C_RX_EN(i), 0x00); + cpsw_write_4(CPSW_WR_C_MISC_EN(i), 0x00); + } + + /* Clear all interrupt Masks */ + cpsw_write_4(CPSW_CPDMA_RX_INTMASK_CLEAR, 0xFFFFFFFF); + cpsw_write_4(CPSW_CPDMA_TX_INTMASK_CLEAR, 0xFFFFFFFF); +} + +static void +cpsw_set_promisc(struct cpsw_softc *sc, int set) +{ + if (set) { + printf("Promiscuous mode unimplemented\n"); + } +} +static void +cpsw_set_allmulti(struct cpsw_softc *sc, int set) +{ + if (set) { + printf("All-multicast mode unimplemented\n"); + } } static int @@ -729,53 +857,48 @@ cpsw_ioctl(struct ifnet *ifp, u_long com struct cpsw_softc *sc = ifp->if_softc; struct ifreq *ifr = (struct ifreq *)data; int error; - uint32_t flags; + uint32_t changed; + CPSW_DEBUGF(("command=0x%lx", command)); error = 0; - // FIXME switch (command) { case SIOCSIFFLAGS: CPSW_GLOBAL_LOCK(sc); if (ifp->if_flags & IFF_UP) { if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - flags = ifp->if_flags ^ sc->cpsw_if_flags; - if (flags & IFF_PROMISC) - printf("%s: SIOCSIFFLAGS " - "IFF_PROMISC unimplemented\n", - __func__); - - if (flags & IFF_ALLMULTI) - printf("%s: SIOCSIFFLAGS " - "IFF_ALLMULTI unimplemented\n", - __func__); + changed = ifp->if_flags ^ sc->cpsw_if_flags; + CPSW_DEBUGF(("SIOCSIFFLAGS: UP & RUNNING (changed=0x%x)", changed)); + if (changed & IFF_PROMISC) + cpsw_set_promisc(sc, + ifp->if_flags & IFF_PROMISC); + if (changed & IFF_ALLMULTI) + cpsw_set_allmulti(sc, + ifp->if_flags & IFF_ALLMULTI); } else { - printf("%s: SIOCSIFFLAGS cpsw_init_locked\n", __func__); - //cpsw_init_locked(sc); + CPSW_DEBUGF(("SIOCSIFFLAGS: UP but not RUNNING")); + cpsw_init_locked(sc); } - } - else if (ifp->if_drv_flags & IFF_DRV_RUNNING) + } else if (ifp->if_drv_flags & IFF_DRV_RUNNING) { + CPSW_DEBUGF(("SIOCSIFFLAGS: not UP but RUNNING")); cpsw_stop_locked(sc); + } sc->cpsw_if_flags = ifp->if_flags; CPSW_GLOBAL_UNLOCK(sc); break; case SIOCADDMULTI: - printf("%s: SIOCADDMULTI\n",__func__); + CPSW_DEBUGF(("SIOCADDMULTI unimplemented")); break; case SIOCDELMULTI: - printf("%s: SIOCDELMULTI\n",__func__); - break; - case SIOCSIFCAP: - printf("%s: SIOCSIFCAP\n",__func__); + CPSW_DEBUGF(("SIOCDELMULTI unimplemented")); break; case SIOCGIFMEDIA: - error = ifmedia_ioctl(ifp, ifr, &sc->mii->mii_media, command); - break; case SIOCSIFMEDIA: error = ifmedia_ioctl(ifp, ifr, &sc->mii->mii_media, command); break; default: + CPSW_DEBUGF(("ether ioctl")); error = ether_ioctl(ifp, command, data); } return (error); @@ -787,6 +910,7 @@ cpsw_ifmedia_sts(struct ifnet *ifp, stru struct cpsw_softc *sc = ifp->if_softc; struct mii_data *mii; + CPSW_DEBUGF(("")); CPSW_TX_LOCK(sc); mii = sc->mii; @@ -804,13 +928,12 @@ cpsw_ifmedia_upd(struct ifnet *ifp) { struct cpsw_softc *sc = ifp->if_softc; + CPSW_DEBUGF(("")); if (ifp->if_flags & IFF_UP) { CPSW_GLOBAL_LOCK(sc); - sc->cpsw_media_status = sc->mii->mii_media.ifm_media; mii_mediachg(sc->mii); cpsw_init_locked(sc); - CPSW_GLOBAL_UNLOCK(sc); } @@ -820,15 +943,18 @@ cpsw_ifmedia_upd(struct ifnet *ifp) static void cpsw_intr_rx_thresh(void *arg) { - (void)arg; /* UNUSED */ + struct cpsw_softc *sc = arg; + CPSW_DEBUGF(("")); } static void cpsw_intr_rx(void *arg) { struct cpsw_softc *sc = arg; + CPSW_RX_LOCK(sc); cpsw_intr_rx_locked(arg); + cpsw_write_4(CPSW_CPDMA_CPDMA_EOI_VECTOR, 1); CPSW_RX_UNLOCK(sc); } @@ -837,63 +963,155 @@ cpsw_intr_rx_locked(void *arg) { struct cpsw_softc *sc = arg; struct cpsw_cpdma_bd bd; + struct cpsw_slot *slot, *last_slot = NULL; struct ifnet *ifp; - int i; ifp = sc->ifp; + if (!sc->rx_running) + return; - i = sc->rxbd_head; - cpsw_cpdma_read_rxbd(i, &bd); - - while (bd.flags & CPDMA_BD_SOP) { - cpsw_write_4(CPSW_CPDMA_RX_CP(0), cpsw_cpdma_rxbd_paddr(i)); + /* Pull completed packets off hardware RX queue. */ + slot = STAILQ_FIRST(&sc->rx_active); + while (slot != NULL) { + cpsw_cpdma_read_rxbd(slot->index, &bd); + if (bd.flags & CPDMA_BD_OWNER) + break; /* Still in use by hardware */ + + if (bd.flags & CPDMA_BD_TDOWNCMPLT) { + CPSW_DEBUGF(("RX teardown in progress")); + cpsw_write_4(CPSW_CPDMA_RX_CP(0), 0xfffffffc); + sc->rx_running = 0; + return; + } - bus_dmamap_sync(sc->mbuf_dtag, sc->rx_dmamap[i], BUS_DMASYNC_POSTREAD); - bus_dmamap_unload(sc->mbuf_dtag, sc->rx_dmamap[i]); + bus_dmamap_sync(sc->mbuf_dtag, slot->dmamap, BUS_DMASYNC_POSTREAD); + bus_dmamap_unload(sc->mbuf_dtag, slot->dmamap); /* Fill mbuf */ - sc->rx_mbuf[i]->m_hdr.mh_data += bd.bufoff; - sc->rx_mbuf[i]->m_hdr.mh_len = bd.pktlen - 4; - sc->rx_mbuf[i]->m_pkthdr.len = bd.pktlen - 4; - sc->rx_mbuf[i]->m_flags |= M_PKTHDR; - sc->rx_mbuf[i]->m_pkthdr.rcvif = ifp; + /* TODO: track SOP/EOP bits to assemble a full mbuf + out of received fragments. */ + slot->mbuf->m_hdr.mh_data += bd.bufoff; + slot->mbuf->m_hdr.mh_len = bd.pktlen - 4; + slot->mbuf->m_pkthdr.len = bd.pktlen - 4; + slot->mbuf->m_flags |= M_PKTHDR; + slot->mbuf->m_pkthdr.rcvif = ifp; if ((ifp->if_capenable & IFCAP_RXCSUM) != 0) { /* check for valid CRC by looking into pkt_err[5:4] */ - if ( (bd.flags & CPDMA_BD_PKT_ERR_MASK) == 0 ) { - sc->rx_mbuf[i]->m_pkthdr.csum_flags |= CSUM_IP_CHECKED; - sc->rx_mbuf[i]->m_pkthdr.csum_flags |= CSUM_IP_VALID; - sc->rx_mbuf[i]->m_pkthdr.csum_data = 0xffff; + if ((bd.flags & CPDMA_BD_PKT_ERR_MASK) == 0) { + slot->mbuf->m_pkthdr.csum_flags |= CSUM_IP_CHECKED; + slot->mbuf->m_pkthdr.csum_flags |= CSUM_IP_VALID; + slot->mbuf->m_pkthdr.csum_data = 0xffff; } } /* Handover packet */ CPSW_RX_UNLOCK(sc); - (*ifp->if_input)(ifp, sc->rx_mbuf[i]); - sc->rx_mbuf[i] = NULL; + (*ifp->if_input)(ifp, slot->mbuf); + slot->mbuf = NULL; CPSW_RX_LOCK(sc); - /* Allocate new buffer for current descriptor */ - cpsw_new_rxbuf(sc, i, 0); + last_slot = slot; + STAILQ_REMOVE_HEAD(&sc->rx_active, next); + STAILQ_INSERT_TAIL(&sc->rx_avail, slot, next); + slot = STAILQ_FIRST(&sc->rx_active); + } + + /* Tell hardware last slot we processed. */ + if (last_slot) + cpsw_write_4(CPSW_CPDMA_RX_CP(0), + cpsw_cpdma_rxbd_paddr(last_slot->index)); - /* we are not at tail so old tail BD should point to new one */ - cpsw_cpdma_write_rxbd_next(sc->rxbd_tail, - cpsw_cpdma_rxbd_paddr(i)); - - /* Check if EOQ is reached */ - if (cpsw_cpdma_read_rxbd_flags(sc->rxbd_tail) & CPDMA_BD_EOQ) { - cpsw_write_4(CPSW_CPDMA_RX_HDP(0), cpsw_cpdma_rxbd_paddr(i)); + /* Repopulate hardware RX queue. */ + cpsw_fill_rx_queue_locked(sc); +} + +static void +cpsw_fill_rx_queue_locked(struct cpsw_softc *sc) +{ + bus_dma_segment_t seg[1]; + struct cpsw_queue tmpqueue = STAILQ_HEAD_INITIALIZER(tmpqueue); + struct cpsw_cpdma_bd bd; + struct cpsw_slot *slot, *prev_slot, *next_slot; + int error, nsegs; + + /* Try to allocate new mbufs. */ + STAILQ_FOREACH(slot, &sc->rx_avail, next) { + if (slot->mbuf != NULL) + continue; + slot->mbuf = m_getcl(M_NOWAIT, MT_DATA, M_PKTHDR); + if (slot->mbuf == NULL) { + if_printf(sc->ifp, "Unable to fill RX queue\n"); + break; } - sc->rxbd_tail = i; + slot->mbuf->m_len = slot->mbuf->m_pkthdr.len = slot->mbuf->m_ext.ext_size; + } + + /* Register new mbufs with hardware. */ + prev_slot = NULL; + while (!STAILQ_EMPTY(&sc->rx_avail)) { + slot = STAILQ_FIRST(&sc->rx_avail); + if (slot->mbuf == NULL) + break; + + error = bus_dmamap_load_mbuf_sg(sc->mbuf_dtag, slot->dmamap, + slot->mbuf, seg, &nsegs, BUS_DMA_NOWAIT); + + KASSERT(nsegs == 1, ("More than one segment (nsegs=%d)", nsegs)); + KASSERT(error == 0, ("DMA error (error=%d)", error)); + if (nsegs != 1 || error) { + if_printf(sc->ifp, + "%s: Can't prep RX buf for DMA (nsegs=%d, error=%d)\n", + __func__, nsegs, error); + m_freem(slot->mbuf); + slot->mbuf = NULL; + break; + } + + bus_dmamap_sync(sc->mbuf_dtag, slot->dmamap, BUS_DMASYNC_PREREAD); - /* read next descriptor */ - if (++i == CPSW_MAX_RX_BUFFERS) - i = 0; - cpsw_cpdma_read_rxbd(i, &bd); - sc->rxbd_head = i; + /* Create and submit new rx descriptor*/ + bd.next = 0; + bd.bufptr = seg->ds_addr; + bd.buflen = MCLBYTES-1; + bd.bufoff = 2; /* make IP hdr aligned with 4 */ + bd.pktlen = 0; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 18:55:50 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 67181882; Tue, 1 Jan 2013 18:55:50 +0000 (UTC) (envelope-from gshapiro@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 32F9C8FC08; Tue, 1 Jan 2013 18:55:50 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01ItosP019185; Tue, 1 Jan 2013 18:55:50 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01Itnru019182; Tue, 1 Jan 2013 18:55:49 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201301011855.r01Itnru019182@svn.freebsd.org> From: Gregory Neil Shapiro Date: Tue, 1 Jan 2013 18:55:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org Subject: svn commit: r244940 - stable/7/etc/sendmail X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 18:55:50 -0000 Author: gshapiro Date: Tue Jan 1 18:55:49 2013 New Revision: 244940 URL: http://svnweb.freebsd.org/changeset/base/244940 Log: MFC: Minor changes to force commit these files so new freebsd*.cf files are built to use the new sendmail-8.14.6/cf tree. While here, update DNSBL link once again. Modified: stable/7/etc/sendmail/freebsd.mc stable/7/etc/sendmail/freebsd.submit.mc Directory Properties: stable/7/etc/ (props changed) Modified: stable/7/etc/sendmail/freebsd.mc ============================================================================== --- stable/7/etc/sendmail/freebsd.mc Tue Jan 1 18:55:04 2013 (r244939) +++ stable/7/etc/sendmail/freebsd.mc Tue Jan 1 18:55:49 2013 (r244940) @@ -63,8 +63,8 @@ dnl DNS based black hole lists dnl -------------------------------- dnl DNS based black hole lists come and go on a regular basis dnl so this file will not serve as a database of the available servers. -dnl For that, visit -dnl http://www.google.com/Top/Computers/Internet/E-mail/Spam/Blacklists/ +dnl For more information, visit +dnl http://en.wikipedia.org/wiki/DNSBL dnl Uncomment to activate your chosen DNS based blacklist dnl FEATURE(dnsbl, `dnsbl.example.com') Modified: stable/7/etc/sendmail/freebsd.submit.mc ============================================================================== --- stable/7/etc/sendmail/freebsd.submit.mc Tue Jan 1 18:55:04 2013 (r244939) +++ stable/7/etc/sendmail/freebsd.submit.mc Tue Jan 1 18:55:49 2013 (r244940) @@ -9,6 +9,7 @@ divert(-1) # # + # # This is the FreeBSD configuration for a set-group-ID sm-msp sendmail # that acts as a initial mail submission program. From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 19:20:52 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 695EFF2F; Tue, 1 Jan 2013 19:20:52 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4CB1B8FC13; Tue, 1 Jan 2013 19:20:52 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01JKqPG023562; Tue, 1 Jan 2013 19:20:52 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01JKqkI023561; Tue, 1 Jan 2013 19:20:52 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201301011920.r01JKqkI023561@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Tue, 1 Jan 2013 19:20:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244941 - head/lib/libedit X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 19:20:52 -0000 Author: pfg Date: Tue Jan 1 19:20:51 2013 New Revision: 244941 URL: http://svnweb.freebsd.org/changeset/base/244941 Log: libedit: bind the correct command when using "bind -k". "ed-argument-digit" (i. e. command 0) was incorrectly used instead. This bug comes from the original sources imported in 1994 and has been confirmed in upstream NetBSD. Reported by: Yamagi Burmeister Submitted by: Christoph Mallon MFC after: 3 days Modified: head/lib/libedit/map.c Modified: head/lib/libedit/map.c ============================================================================== --- head/lib/libedit/map.c Tue Jan 1 18:55:49 2013 (r244940) +++ head/lib/libedit/map.c Tue Jan 1 19:20:51 2013 (r244941) @@ -1250,7 +1250,7 @@ map_bind(EditLine *el, int argc, const c char inbuf[EL_BUFSIZ]; char outbuf[EL_BUFSIZ]; const char *in = NULL; - char *out = NULL; + char *out; el_bindings_t *bp, *ep; int cmd; int key; @@ -1368,7 +1368,7 @@ map_bind(EditLine *el, int argc, const c return (-1); } if (key) - term_set_arrow(el, in, key_map_str(el, out), ntype); + term_set_arrow(el, in, key_map_cmd(el, cmd), ntype); else { if (in[1]) { key_add(el, in, key_map_cmd(el, cmd), ntype); From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 19:25:09 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id AB879140; Tue, 1 Jan 2013 19:25:09 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from smtp-out3.electric.net (smtp-out3.electric.net [72.35.12.183]) by mx1.freebsd.org (Postfix) with ESMTP id 839628FC0C; Tue, 1 Jan 2013 19:25:08 +0000 (UTC) Received: from [204.11.168.155] (helo=securemail.onebox.com) by skoda.electric.net with esmtp (Exim 4.77) (envelope-from ) id 1Tq7Le-0004XC-T4; Tue, 01 Jan 2013 11:18:02 -0800 Received: from localhost (unverified [49.224.140.241]) by securemail.onebox.com (Rockliffe SMTPRA 9.3.1) with ESMTP id ; Tue, 1 Jan 2013 14:18:02 -0500 Date: Wed, 2 Jan 2013 08:17:46 +1300 From: Andrew Turner To: Robert Watson Subject: Re: svn commit: r244899 - head/sys/mips/beri Message-ID: <20130102081746.5435db05@fubar.geek.nz> In-Reply-To: <201212311106.qBVB6chM016661@svn.freebsd.org> References: <201212311106.qBVB6chM016661@svn.freebsd.org> Organization: SMTP: smtp.paradise.net.nz X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.6; i386-portbld-freebsd8.1) X-Pirate: Arrrr Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/uEzSZj7HLXP7TyeAYwWWOYE" Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 19:25:09 -0000 --MP_/uEzSZj7HLXP7TyeAYwWWOYE Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline On Mon, 31 Dec 2012 11:06:38 +0000 (UTC) Robert Watson wrote: > Author: rwatson > Date: Mon Dec 31 11:06:37 2012 > New Revision: 244899 > URL: http://svnweb.freebsd.org/changeset/base/244899 > > Log: > If FDT is compiled into a FreeBSD/beri kernel, initialise > OpenFirmware. > Sponsored by: DARPA, AFRL > > Modified: > head/sys/mips/beri/beri_machdep.c > > Modified: head/sys/mips/beri/beri_machdep.c > ============================================================================== > --- head/sys/mips/beri/beri_machdep.c Mon Dec 31 07:50:02 > 2012 (r244898) +++ head/sys/mips/beri/beri_machdep.c > Mon Dec 31 11:06:37 2012 (r244899) @@ -1,7 +1,12 @@ > /*- > * Copyright (c) 2006 Wojciech A. Koszek > + * Copyright (c) 2012 Robert N. M. Watson > * All rights reserved. > * > + * This software was developed by SRI International and the > University of > + * Cambridge Computer Laboratory under DARPA/AFRL contract > (FA8750-10-C-0237) > + * ("CTSRD"), as part of the DARPA CRASH research programme. > + * > * Redistribution and use in source and binary forms, with or without > * modification, are permitted provided that the following conditions > * are met: > @@ -27,6 +32,7 @@ > __FBSDID("$FreeBSD$"); > > #include "opt_ddb.h" > +#include "opt_platform.h" > > #include > #include > @@ -49,6 +55,9 @@ __FBSDID("$FreeBSD$"); > #include > #include > > +#include > +#include > + > #include > #include > #include > @@ -76,6 +85,17 @@ mips_init(void) > { > int i; > > +#ifdef FDT > +#ifndef FDT_DTB_STATIC > +#error "mips_init with FDT requires FDT_DTB_STATIC" > +#endif > + > + if (OF_install(OFW_FDT, 0) == FALSE) > + while (1); > + if (OF_init(&fdt_static_dtb) != 0) > + while (1); > +#endif > + > for (i = 0; i < 10; i++) { > phys_avail[i] = 0; > } > > This looks like it is too late in the boot process. If you are using FDT you will need to use the FDT uart which is initialised in cninit. You will also need a patch similar to the untested one attached to fix the build. Andrew --MP_/uEzSZj7HLXP7TyeAYwWWOYE Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=beri_fdt.diff Index: beri/beri_machdep.c =================================================================== --- beri/beri_machdep.c (revision 244940) +++ beri/beri_machdep.c (working copy) @@ -55,8 +55,10 @@ __FBSDID("$FreeBSD$"); #include #include +#ifdef FDT #include #include +#endif #include #include --MP_/uEzSZj7HLXP7TyeAYwWWOYE-- From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 19:42:07 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4A2C7672; Tue, 1 Jan 2013 19:42:07 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2B8138FC0A; Tue, 1 Jan 2013 19:42:07 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r01Jg7BL026963; Tue, 1 Jan 2013 19:42:07 GMT (envelope-from rwatson@svn.freebsd.org) Received: (from rwatson@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r01Jg72I026961; Tue, 1 Jan 2013 19:42:07 GMT (envelope-from rwatson@svn.freebsd.org) Message-Id: <201301011942.r01Jg72I026961@svn.freebsd.org> From: Robert Watson Date: Tue, 1 Jan 2013 19:42:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244942 - head/sys/mips/beri X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 19:42:07 -0000 Author: rwatson Date: Tue Jan 1 19:42:06 2013 New Revision: 244942 URL: http://svnweb.freebsd.org/changeset/base/244942 Log: Merge @219932 from Perforce: FDT headers can't be included if the kernel is compiled without FDT support, due to dependence on generated kobj headers. BERI supports both FDT and non-FDT kernels. Spotted by: bz Modified: head/sys/mips/beri/beri_machdep.c Modified: head/sys/mips/beri/beri_machdep.c ============================================================================== --- head/sys/mips/beri/beri_machdep.c Tue Jan 1 19:20:51 2013 (r244941) +++ head/sys/mips/beri/beri_machdep.c Tue Jan 1 19:42:06 2013 (r244942) @@ -55,8 +55,10 @@ __FBSDID("$FreeBSD$"); #include #include +#ifdef FDT #include #include +#endif #include #include From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 19:44:49 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 44DC27FC; Tue, 1 Jan 2013 19:44:49 +0000 (UTC) (envelope-from rwatson@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id F21668FC13; Tue, 1 Jan 2013 19:44:48 +0000 (UTC) Received: from [192.168.2.119] (host86-129-88-139.range86-129.btcentralplus.com [86.129.88.139]) by cyrus.watson.org (Postfix) with ESMTPSA id B30CE46B39; Tue, 1 Jan 2013 14:44:41 -0500 (EST) Subject: Re: svn commit: r244899 - head/sys/mips/beri Mime-Version: 1.0 (Apple Message framework v1283) Content-Type: text/plain; charset=iso-8859-1 From: "Robert N. M. Watson" In-Reply-To: Date: Tue, 1 Jan 2013 19:44:39 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: <7E6051EE-8632-4A95-BB54-7FC31C972795@freebsd.org> References: <201212311106.qBVB6chM016661@svn.freebsd.org> To: Garrett Cooper X-Mailer: Apple Mail (2.1283) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 19:44:49 -0000 Hi Garrett: Thanks for the report -- I didn't realise tinderbox was now building all = kernels, or I would have merged my fix from P4 more quickly. The patch you've attached isn't quite the right one -- BERI supports = both FDT and non-FDT kernels, so we shouldn't build the Openfirmware = headers in the non-FDT case. Instead, I've ifdef'd inclusion of the = headers. However, as is probably clear from my breaking the non-FDT = kernel configuration, I have been working only with FDT kernels. :-) Thanks, Robert On 1 Jan 2013, at 18:34, Garrett Cooper wrote: > On Mon, Dec 31, 2012 at 3:06 AM, Robert Watson = wrote: >> Author: rwatson >> Date: Mon Dec 31 11:06:37 2012 >> New Revision: 244899 >> URL: http://svnweb.freebsd.org/changeset/base/244899 >>=20 >> Log: >> If FDT is compiled into a FreeBSD/beri kernel, initialise = OpenFirmware. >>=20 >> Sponsored by: DARPA, AFRL >=20 > This broke the mips:mips64 tinderbox: >=20 > /obj/src/make.amd64/make -V CFILES_NOZFS -V SYSTEM_CFILES -V > GEN_CFILES | MKDEP_CPP=3D"cc -E" CC=3D"cc" xargs mkdep -a -f .newdep = -O > -pipe -std=3Dc99 -g -Wall -Wredundant-decls -Wnested-externs > -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline > -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions > -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. > -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/ipfilter > -I/src/sys/dev/ath -I/src/sys/dev/ath/ath_hal -I/src/sys/contrib/ngatm > -I/src/sys/dev/twa -I/src/sys/dev/cxgb -I/src/sys/dev/cxgbe > -I/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS > -include opt_global.h -fno-common -finline-limit=3D8000 --param > inline-unit-growth=3D10000 --param large-function-growth=3D100000 = --param > max-inline-insns-single=3D10000 -fno-pic -mno-abicalls -G0 > -DKERNLOADADDR=3D0xffffffff80100000 -march=3Dmips64 -mabi=3D64 = -msoft-float > -ffreestanding > In file included from /src/sys/dev/fdt/fdt_common.h:37, > from /src/sys/mips/beri/beri_machdep.c:58: > /src/sys/dev/ofw/ofw_bus.h:36:24: error: ofw_bus_if.h: No such file or = directory > mkdep: compile failed > *** [.depend] Error code 1 >=20 > The patch I committed to my git repo fixes that by adding > ofw_bus_if.m to files.beri ( > = https://github.com/yaneurabeya/freebsd/commit/ac9221dc567c67822b6f61cadbfa= c3fc1e32df04 > ). > Thanks! > -Garrett >=20 >=20 > [gcooper@bayonetta /scratch/git/github/yaneurabeya-freebsd-head]$ make > KERNCONF=3DBERI_DE4_MDROOT TARGET=3Dmips TARGET_ARCH=3Dmips64 = buildkernel > ... > cc -shared -fno-pic -mno-abicalls -G0 > -DKERNLOADADDR=3D0xffffffff80100000 -march=3Dmips64 -mabi=3D64 = -nostdlib > hack.c -o hack.So > rm -f hack.c > sed s/KERNLOADADDR/0xffffffff80100000/g > /scratch/git/github/yaneurabeya-freebsd-head/sys/conf/ldscript.mips > > ldscript.mips > MAKE=3Dmake sh = /scratch/git/github/yaneurabeya-freebsd-head/sys/conf/newvers.sh > BERI_DE4_MDROOT > cc -c -O -pipe -std=3Dc99 -g -Wall -Wredundant-decls -Wnested-externs > -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline > -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions > -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. > -I/scratch/git/github/yaneurabeya-freebsd-head/sys > -I/scratch/git/github/yaneurabeya-freebsd-head/sys/contrib/altq > -I/scratch/git/github/yaneurabeya-freebsd-head/sys/contrib/libfdt > -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h > -fno-common -finline-limit=3D8000 --param inline-unit-growth=3D10000 > --param large-function-growth=3D100000 --param > max-inline-insns-single=3D10000 -fno-pic -mno-abicalls -G0 > -DKERNLOADADDR=3D0xffffffff80100000 -march=3Dmips64 -mabi=3D64 = -msoft-float > -ffreestanding -Werror vers.c > linking kernel.debug > text data bss dec hex filename > 4108957 8653440 283024 13045421 c70ead kernel.debug > objcopy --only-keep-debug kernel.debug kernel.symbols > objcopy --strip-debug --add-gnu-debuglink=3Dkernel.symbols = kernel.debug kernel > objcopy --strip-symbol '$d' --strip-symbol '$a' -g --strip-symbol > '$t' kernel.debug kernel.tmp > sed -e s/0xffffffff80100000/0x807963c0/ -e s/" + SIZEOF_HEADERS"// > ldscript.mips > ldscript.mips.tramp.noheader > cc -O -nostdlib -I. -I/scratch/git/github/yaneurabeya-freebsd-head/sys > -fno-pic -mno-abicalls -G0 -DKERNLOADADDR=3D0xffffffff80100000 > -march=3Dmips64 -mabi=3D64 -Xlinker -T -Xlinker > ldscript.mips.tramp.noheader -DKERNNAME=3D"\"kernel.tmp\"" = -DELFSIZE=3D64 > = /scratch/git/github/yaneurabeya-freebsd-head/sys/mips/mips/elf_trampoline.= c > /scratch/git/github/yaneurabeya-freebsd-head/sys/mips/mips/inckern.S > -o kernel.tramp.elf > objcopy -S -O binary kernel.tramp.elf kernel.tramp.bin > cd /scratch/git/github/yaneurabeya-freebsd-head/sys/modules; > = MAKEOBJDIRPREFIX=3D/usr/obj/mips.mips64/scratch/git/github/yaneurabeya-fre= ebsd-head/sys/BERI_DE4_MDROOT/modules > KMODDIR=3D/boot/kernel MACHINE_CPUARCH=3Dmips MODULES_OVERRIDE=3D"""" > DEBUG_FLAGS=3D"-g" MACHINE=3Dmips MACHINE_ARCH=3Dmips64 > = KERNBUILDDIR=3D"/usr/obj/mips.mips64/scratch/git/github/yaneurabeya-freebs= d-head/sys/BERI_DE4_MDROOT" > SYSDIR=3D"/scratch/git/github/yaneurabeya-freebsd-head/sys" make all > -------------------------------------------------------------- >>>> Kernel build for BERI_DE4_MDROOT completed on Tue Jan 1 10:31:25 = PST 2013 > -------------------------------------------------------------- From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 19:49:52 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7A2709BC; Tue, 1 Jan 2013 19:49:52 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id 471AB8FC13; Tue, 1 Jan 2013 19:49:52 +0000 (UTC) Received: from [192.168.2.119] (host86-129-88-139.range86-129.btcentralplus.com [86.129.88.139]) by cyrus.watson.org (Postfix) with ESMTPSA id DDC9746B39; Tue, 1 Jan 2013 14:49:50 -0500 (EST) Subject: Re: svn commit: r244899 - head/sys/mips/beri Mime-Version: 1.0 (Apple Message framework v1283) Content-Type: text/plain; charset=us-ascii From: "Robert N. M. Watson" In-Reply-To: <20130102081746.5435db05@fubar.geek.nz> Date: Tue, 1 Jan 2013 19:49:48 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: References: <201212311106.qBVB6chM016661@svn.freebsd.org> <20130102081746.5435db05@fubar.geek.nz> To: Andrew Turner X-Mailer: Apple Mail (2.1283) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 19:49:52 -0000 On 1 Jan 2013, at 19:17, Andrew Turner wrote: >> @@ -76,6 +85,17 @@ mips_init(void) >> { >> int i; >>=20 >> +#ifdef FDT >> +#ifndef FDT_DTB_STATIC >> +#error "mips_init with FDT requires FDT_DTB_STATIC" >> +#endif >> + >> + if (OF_install(OFW_FDT, 0) =3D=3D FALSE) >> + while (1); >> + if (OF_init(&fdt_static_dtb) !=3D 0) >> + while (1); >> +#endif >> + >> for (i =3D 0; i < 10; i++) { >> phys_avail[i] =3D 0; >> } >>=20 >>=20 >=20 > This looks like it is too late in the boot process. If you are using > FDT you will need to use the FDT uart which is initialised in cninit. Hi Andrew: The current BERI low-level UART, as with several others in MIPS-space, = has excessively intimate knowledge of the location of the console UART = instance. Once we fix the console driver, you're right -- it will need = to move to platform_init() or similar. > You will also need a patch similar to the untested one attached to fix = the build. Thanks -- I had actually committed an identical patch to Perforce this = morning, but failed to merge it to head. It would be nice if we didn't = have to conditionally include headers. Robert= From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 20:56:20 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 81BEF632; Tue, 1 Jan 2013 20:56:20 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id 4FE9A8FC08; Tue, 1 Jan 2013 20:56:20 +0000 (UTC) Received: from [192.168.2.119] (host86-129-88-139.range86-129.btcentralplus.com [86.129.88.139]) by cyrus.watson.org (Postfix) with ESMTPSA id 83CAE46B2E; Tue, 1 Jan 2013 15:56:18 -0500 (EST) Subject: Re: svn commit: r244899 - head/sys/mips/beri Mime-Version: 1.0 (Apple Message framework v1283) Content-Type: text/plain; charset=us-ascii From: "Robert N. M. Watson" In-Reply-To: <20130102081746.5435db05@fubar.geek.nz> Date: Tue, 1 Jan 2013 20:56:15 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: References: <201212311106.qBVB6chM016661@svn.freebsd.org> <20130102081746.5435db05@fubar.geek.nz> To: Andrew Turner X-Mailer: Apple Mail (2.1283) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 20:56:20 -0000 On 1 Jan 2013, at 19:17, Andrew Turner wrote: > This looks like it is too late in the boot process. If you are using > FDT you will need to use the FDT uart which is initialised in cninit. On a semi-related note: the current obstacle to moving more devices over = to using FDT on BERI is that our FDT implementation appears to require a = PIC to be configured. We're not actually using a PIC on BERI currently. = It works fine attached to nexus, as the implied fallback for not having = a PIC is to simply use the suitably numbered interrupt wires direct into = the MIPS. However, trying the same setup described using FDT leads to an = interrupt-related warning at boot, and no interrupt being provided to = the driver. I suspect I need to provide a PIC-alike software component = as a fall-back for the non-PIC case. =46rom a brief e-mail exchange with = JC, it sounds like the XLP FDT setup is actually not using interrupts = either, currently. Robert= From owner-svn-src-all@FreeBSD.ORG Tue Jan 1 22:09:19 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 6A2C4119; Tue, 1 Jan 2013 22:09:19 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from smtp-out3.electric.net (smtp-out3.electric.net [72.35.12.184]) by mx1.freebsd.org (Postfix) with ESMTP id 3F1698FC0A; Tue, 1 Jan 2013 22:09:19 +0000 (UTC) Received: from [204.11.168.155] (helo=securemail.onebox.com) by opel.electric.net with esmtp (Exim 4.77) (envelope-from ) id 1TqA1O-0006bW-Tf; Tue, 01 Jan 2013 14:09:18 -0800 Received: from localhost (unverified [49.224.140.241]) by securemail.onebox.com (Rockliffe SMTPRA 9.3.1) with ESMTP id ; Tue, 1 Jan 2013 17:09:22 -0500 Date: Wed, 2 Jan 2013 11:08:56 +1300 From: Andrew Turner To: "Robert N. M. Watson" Subject: Re: svn commit: r244899 - head/sys/mips/beri Message-ID: <20130102110856.7c280fd5@fubar.geek.nz> In-Reply-To: References: <201212311106.qBVB6chM016661@svn.freebsd.org> <20130102081746.5435db05@fubar.geek.nz> Organization: SMTP: smtp.paradise.net.nz X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.6; i386-portbld-freebsd8.1) X-Pirate: Arrrr Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 01 Jan 2013 22:09:19 -0000 On Tue, 1 Jan 2013 20:56:15 +0000 "Robert N. M. Watson" wrote: > > On 1 Jan 2013, at 19:17, Andrew Turner wrote: > > > This looks like it is too late in the boot process. If you are using > > FDT you will need to use the FDT uart which is initialised in > > cninit. > > On a semi-related note: the current obstacle to moving more devices > over to using FDT on BERI is that our FDT implementation appears to > require a PIC to be configured. We're not actually using a PIC on > BERI currently. It works fine attached to nexus, as the implied > fallback for not having a PIC is to simply use the suitably numbered > interrupt wires direct into the MIPS. However, trying the same setup > described using FDT leads to an interrupt-related warning at boot, > and no interrupt being provided to the driver. I suspect I need to > provide a PIC-alike software component as a fall-back for the non-PIC > case. From a brief e-mail exchange with JC, it sounds like the XLP > FDT setup is actually not using interrupts either, currently. I'm not sure if a PIC is required. From my reading of the code it appears not. By the look of it if you are using the nexus to handle interrupts you need to put an interrupts property in the device and "#interrupt-cells = <1>;" in the soc node. You will also need to implement an interrupt decode function and add it to the fdt_pic_table array. ARM has a number of almost identical copies of this function you can use for inspration. Andrew From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 00:38:03 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 446F0B96; Wed, 2 Jan 2013 00:38:03 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 25CA38FC08; Wed, 2 Jan 2013 00:38:03 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r020c3Vi074353; Wed, 2 Jan 2013 00:38:03 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r020c1fN074342; Wed, 2 Jan 2013 00:38:01 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301020038.r020c1fN074342@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 00:38:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244943 - in head/sys/dev/ath/ath_hal: ar5416 ar9002 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 00:38:03 -0000 Author: adrian Date: Wed Jan 2 00:38:01 2013 New Revision: 244943 URL: http://svnweb.freebsd.org/changeset/base/244943 Log: Bring over the basic spectral scan framework code from Qualcomm Atheros. This includes the HAL routines to setup, enable/activate/disable spectral scan and configure the relevant registers. This still requires driver interaction to enable spectral scan reporting. Specifically: * call ah_spectralConfigure() to configure and enable spectral scan; * .. there's currently no way to disable spectral scan... that will have to follow. * call ah_spectralStart() to force start a spectral report; * call ah_spectralStop() to force stop an active spectral report. The spectral scan results appear as PHY errors (type 0x5 on the AR9280, same as radar) but with the spectral scan bit set (0x10 in the last byte of the frame) identifying it as a spectral report rather than a radar FFT report. Caveats: * It's likely quite difficult to run spectral _and_ radar at the same time. Enabling spectral scan disables the radar thresholds but leaves radar enabled. Thus, the driver (for now) needs to ensure that only one or the other is enabled. * .. it needs testing on HT40 mode. Tested: * AR9280 in STA mode, HT/20 only TODO: * Test on AR9285, AR9287; * Test in both HT20 and HT40 modes; * .. all the driver glue. Obtained from: Qualcomm Atheros Added: head/sys/dev/ath/ath_hal/ar5416/ar5416_spectral.c (contents, props changed) Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416.h head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c head/sys/dev/ath/ath_hal/ar5416/ar5416phy.h head/sys/dev/ath/ath_hal/ar5416/ar5416reg.h head/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c head/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c head/sys/dev/ath/ath_hal/ar9002/ar9287_attach.c Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416.h ============================================================================== --- head/sys/dev/ath/ath_hal/ar5416/ar5416.h Tue Jan 1 19:42:06 2013 (r244942) +++ head/sys/dev/ath/ath_hal/ar5416/ar5416.h Wed Jan 2 00:38:01 2013 (r244943) @@ -265,6 +265,16 @@ extern HAL_BOOL ar5416ProcessRadarEvent( HAL_DFS_EVENT *event); extern HAL_BOOL ar5416IsFastClockEnabled(struct ath_hal *ah); +/* ar9280_spectral.c */ +extern void ar5416ConfigureSpectralScan(struct ath_hal *ah, HAL_SPECTRAL_PARAM *ss); +extern void ar5416GetSpectralParams(struct ath_hal *ah, HAL_SPECTRAL_PARAM *ss); +extern HAL_BOOL ar5416IsSpectralActive(struct ath_hal *ah); +extern HAL_BOOL ar5416IsSpectralEnabled(struct ath_hal *ah); +extern void ar5416StartSpectralScan(struct ath_hal *ah); +extern void ar5416StopSpectralScan(struct ath_hal *ah); +extern uint32_t ar5416GetSpectralConfig(struct ath_hal *ah); +extern void ar5416RestoreSpectralConfig(struct ath_hal *ah, uint32_t restoreval); + extern HAL_BOOL ar5416SetPowerMode(struct ath_hal *ah, HAL_POWER_MODE mode, int setChip); extern HAL_POWER_MODE ar5416GetPowerMode(struct ath_hal *ah); Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c ============================================================================== --- head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c Tue Jan 1 19:42:06 2013 (r244942) +++ head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c Wed Jan 2 00:38:01 2013 (r244943) @@ -161,6 +161,14 @@ ar5416InitState(struct ath_hal_5416 *ahp ah->ah_procRadarEvent = ar5416ProcessRadarEvent; ah->ah_isFastClockEnabled = ar5416IsFastClockEnabled; + /* Spectral Scan Functions */ + ah->ah_spectralConfigure = ar5416ConfigureSpectralScan; + ah->ah_spectralGetConfig = ar5416GetSpectralParams; + ah->ah_spectralStart = ar5416StartSpectralScan; + ah->ah_spectralStop = ar5416StopSpectralScan; + ah->ah_spectralIsEnabled = ar5416IsSpectralEnabled; + ah->ah_spectralIsActive = ar5416IsSpectralActive; + /* Power Management Functions */ ah->ah_setPowerMode = ar5416SetPowerMode; @@ -918,6 +926,7 @@ ar5416FillCapabilityInfo(struct ath_hal pCap->halMcastKeySrchSupport = AH_TRUE; /* Works on AR5416 and later */ pCap->halTsfAddSupport = AH_TRUE; pCap->hal4AddrAggrSupport = AH_FALSE; /* Broken in Owl */ + pCap->halSpectralScanSupport = AH_FALSE; /* AR9280 and later */ if (ath_hal_eepromGet(ah, AR_EEP_MAXQCU, &val) == HAL_OK) pCap->halTotalQueues = val; Added: head/sys/dev/ath/ath_hal/ar5416/ar5416_spectral.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/ath/ath_hal/ar5416/ar5416_spectral.c Wed Jan 2 00:38:01 2013 (r244943) @@ -0,0 +1,244 @@ +/* + * Copyright (c) 2012 Qualcomm Atheros, All Rights Reserved. + * + * Permission to use, copy, modify, and/or 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. + * + * $FreeBSD$ + */ +#include "opt_ah.h" + +#include "ah.h" +#include "ah_internal.h" +#include "ah_devid.h" +#include "ah_desc.h" /* NB: for HAL_PHYERR* */ + +#include "ar5416/ar5416.h" +#include "ar5416/ar5416reg.h" +#include "ar5416/ar5416phy.h" + +/* + * Default AR9280 spectral scan parameters + */ +#define AR5416_SPECTRAL_SCAN_ENA 0 +#define AR5416_SPECTRAL_SCAN_ACTIVE 0 +#define AR5416_SPECTRAL_SCAN_FFT_PERIOD 8 +#define AR5416_SPECTRAL_SCAN_PERIOD 1 +#define AR5416_SPECTRAL_SCAN_COUNT 16 //used to be 128 +#define AR5416_SPECTRAL_SCAN_SHORT_REPEAT 1 + +/* constants */ +#define MAX_RADAR_RSSI_THRESH 0x3f +#define MAX_RADAR_HEIGHT 0x3f +#define ENABLE_ALL_PHYERR 0xffffffff + +static void ar5416DisableRadar(struct ath_hal *ah); +static void ar5416PrepSpectralScan(struct ath_hal *ah); + +static void +ar5416DisableRadar(struct ath_hal *ah) +{ + uint32_t val; + + // Enable radar FFT + val = OS_REG_READ(ah, AR_PHY_RADAR_0); + val |= AR_PHY_RADAR_0_FFT_ENA; + + // set radar detect thresholds to max to effectively disable radar + val &= ~AR_PHY_RADAR_0_RRSSI; + val |= SM(MAX_RADAR_RSSI_THRESH, AR_PHY_RADAR_0_RRSSI); + + val &= ~AR_PHY_RADAR_0_HEIGHT; + val |= SM(MAX_RADAR_HEIGHT, AR_PHY_RADAR_0_HEIGHT); + + val &= ~(AR_PHY_RADAR_0_ENA); + OS_REG_WRITE(ah, AR_PHY_RADAR_0, val); + + // disable extension radar detect + val = OS_REG_READ(ah, AR_PHY_RADAR_EXT); + OS_REG_WRITE(ah, AR_PHY_RADAR_EXT, val & ~AR_PHY_RADAR_EXT_ENA); + + val = OS_REG_READ(ah, AR_RX_FILTER); + val |= (1<<13); + OS_REG_WRITE(ah, AR_RX_FILTER, val); +} + +static void +ar5416PrepSpectralScan(struct ath_hal *ah) +{ + + ar5416DisableRadar(ah); + OS_REG_WRITE(ah, AR_PHY_ERR, ENABLE_ALL_PHYERR); +} + +void +ar5416ConfigureSpectralScan(struct ath_hal *ah, HAL_SPECTRAL_PARAM *ss) +{ + uint32_t val; + + ar5416PrepSpectralScan(ah); + + val = OS_REG_READ(ah, AR_PHY_SPECTRAL_SCAN); + + if (ss->ss_fft_period != HAL_SPECTRAL_PARAM_NOVAL) { + val &= ~AR_PHY_SPECTRAL_SCAN_FFT_PERIOD; + val |= SM(ss->ss_fft_period, AR_PHY_SPECTRAL_SCAN_FFT_PERIOD); + } + + if (ss->ss_period != HAL_SPECTRAL_PARAM_NOVAL) { + val &= ~AR_PHY_SPECTRAL_SCAN_PERIOD; + val |= SM(ss->ss_period, AR_PHY_SPECTRAL_SCAN_PERIOD); + } + + if (ss->ss_period != HAL_SPECTRAL_PARAM_NOVAL) { + val &= ~AR_PHY_SPECTRAL_SCAN_PERIOD; + val |= SM(ss->ss_period, AR_PHY_SPECTRAL_SCAN_PERIOD); + } + + /* This section is different for Kiwi and Merlin */ + if (AR_SREV_MERLIN(ah) ) { + if (ss->ss_count != HAL_SPECTRAL_PARAM_NOVAL) { + val &= ~AR_PHY_SPECTRAL_SCAN_COUNT; + val |= SM(ss->ss_count, AR_PHY_SPECTRAL_SCAN_COUNT); + } + + if (ss->ss_short_report == AH_TRUE) { + val |= AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT; + } else { + val &= ~AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT; + } + } else { + if (ss->ss_count != HAL_SPECTRAL_PARAM_NOVAL) { + /* + * In Merlin, for continous scan, scan_count = 128. + * In case of Kiwi, this value should be 0 + */ + if (ss->ss_count == 128) + ss->ss_count = 0; + val &= ~AR_PHY_SPECTRAL_SCAN_COUNT_KIWI; + val |= SM(ss->ss_count, AR_PHY_SPECTRAL_SCAN_COUNT_KIWI); + } + + if (ss->ss_short_report == AH_TRUE) { + val |= AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT_KIWI; + } else { + val &= ~AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT_KIWI; + } + + //Select the mask to be same as before + val |= AR_PHY_SPECTRAL_SCAN_PHYERR_MASK_SELECT_KIWI; + } + // Enable spectral scan + OS_REG_WRITE(ah, AR_PHY_SPECTRAL_SCAN, val | AR_PHY_SPECTRAL_SCAN_ENA); + + ar5416GetSpectralParams(ah, ss); +} + +/* + * Get the spectral parameter values and return them in the pe + * structure + */ +void +ar5416GetSpectralParams(struct ath_hal *ah, HAL_SPECTRAL_PARAM *ss) +{ + uint32_t val; + + val = OS_REG_READ(ah, AR_PHY_SPECTRAL_SCAN); + + ss->ss_fft_period = MS(val, AR_PHY_SPECTRAL_SCAN_FFT_PERIOD); + ss->ss_period = MS(val, AR_PHY_SPECTRAL_SCAN_PERIOD); + if (AR_SREV_MERLIN(ah) ) { + ss->ss_count = MS(val, AR_PHY_SPECTRAL_SCAN_COUNT); + ss->ss_short_report = MS(val, AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT); + } else { + ss->ss_count = MS(val, AR_PHY_SPECTRAL_SCAN_COUNT_KIWI); + ss->ss_short_report = MS(val, AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT_KIWI); + } + val = OS_REG_READ(ah, AR_PHY_RADAR_1); + ss->radar_bin_thresh_sel = MS(val, AR_PHY_RADAR_1_BIN_THRESH_SELECT); +} + +HAL_BOOL +ar5416IsSpectralActive(struct ath_hal *ah) +{ + uint32_t val; + + val = OS_REG_READ(ah, AR_PHY_SPECTRAL_SCAN); + return MS(val, AR_PHY_SPECTRAL_SCAN_ACTIVE); +} + +HAL_BOOL +ar5416IsSpectralEnabled(struct ath_hal *ah) +{ + uint32_t val; + + val = OS_REG_READ(ah, AR_PHY_SPECTRAL_SCAN); + return MS(val,AR_PHY_SPECTRAL_SCAN_ENA); +} + +void +ar5416StartSpectralScan(struct ath_hal *ah) +{ + uint32_t val; + + ar5416PrepSpectralScan(ah); + + // Activate spectral scan + val = OS_REG_READ(ah, AR_PHY_SPECTRAL_SCAN); + val |= AR_PHY_SPECTRAL_SCAN_ENA; + val |= AR_PHY_SPECTRAL_SCAN_ACTIVE; + OS_REG_WRITE(ah, AR_PHY_SPECTRAL_SCAN, val); + val = OS_REG_READ(ah, AR_PHY_SPECTRAL_SCAN); + val = OS_REG_READ(ah, AR_PHY_ERR_MASK_REG); + OS_REG_WRITE(ah, AR_PHY_ERR_MASK_REG, val | AR_PHY_ERR_RADAR); +} + +void +ar5416StopSpectralScan(struct ath_hal *ah) +{ + uint32_t val; + val = OS_REG_READ(ah, AR_PHY_SPECTRAL_SCAN); + + // Deactivate spectral scan + val &= ~AR_PHY_SPECTRAL_SCAN_ENA; + val &= ~AR_PHY_SPECTRAL_SCAN_ACTIVE; + OS_REG_WRITE(ah, AR_PHY_SPECTRAL_SCAN, val); + val = OS_REG_READ(ah, AR_PHY_SPECTRAL_SCAN); + val = OS_REG_READ(ah, AR_PHY_ERR_MASK_REG) & (~AR_PHY_ERR_RADAR); + OS_REG_WRITE(ah, AR_PHY_ERR_MASK_REG, val); +} + +uint32_t +ar5416GetSpectralConfig(struct ath_hal *ah) +{ + uint32_t val; + + val = OS_REG_READ(ah, AR_PHY_SPECTRAL_SCAN); + return val; +} + +void +ar5416RestoreSpectralConfig(struct ath_hal *ah, uint32_t restoreval) +{ + uint32_t curval; + + ar5416PrepSpectralScan(ah); + + curval = OS_REG_READ(ah, AR_PHY_SPECTRAL_SCAN); + + if (restoreval != curval) { + restoreval |= AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT; + OS_REG_WRITE(ah, AR_PHY_SPECTRAL_SCAN, restoreval); + } + return; +} + Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416phy.h ============================================================================== --- head/sys/dev/ath/ath_hal/ar5416/ar5416phy.h Tue Jan 1 19:42:06 2013 (r244942) +++ head/sys/dev/ath/ath_hal/ar5416/ar5416phy.h Wed Jan 2 00:38:01 2013 (r244943) @@ -66,10 +66,27 @@ #define AR_PHY_SPECTRAL_SCAN_FFT_PERIOD_S 4 #define AR_PHY_SPECTRAL_SCAN_PERIOD 0x0000FF00 #define AR_PHY_SPECTRAL_SCAN_PERIOD_S 8 + +/* Scan count and Short repeat flags are different for Kiwi and Merlin */ #define AR_PHY_SPECTRAL_SCAN_COUNT 0x00FF0000 #define AR_PHY_SPECTRAL_SCAN_COUNT_S 16 +#define AR_PHY_SPECTRAL_SCAN_COUNT_KIWI 0x0FFF0000 +#define AR_PHY_SPECTRAL_SCAN_COUNT_KIWI_S 16 + #define AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT 0x01000000 #define AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT_S 24 +#define AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT_KIWI 0x10000000 +#define AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT_KIWI_S 28 + +/* + * Kiwi only, bit 30 is used to set the error type, if set it is 0x5 (HAL_PHYERR_RADAR) + * Else it is 38 (new error type) + */ +#define AR_PHY_SPECTRAL_SCAN_PHYERR_MASK_SELECT_KIWI 0x40000000 /* Spectral Error select bit mask */ +#define AR_PHY_SPECTRAL_SCAN_PHYERR_MASK_SELECT_KIWI_S 30 /* Spectral Error select bit 30 */ + +#define AR_PHY_SPECTRAL_SCAN_PRIORITY_SELECT_KIWI 0x20000000 /* Spectral Error select bit mask */ +#define AR_PHY_SPECTRAL_SCAN_PRIORITY_SELECT_SELECT_KIWI_S 29 /* Spectral Error select bit 30 */ /* For AR_PHY_RADAR0 */ #define AR_PHY_RADAR_0_FFT_ENA 0x80000000 @@ -78,8 +95,8 @@ #define AR_PHY_RADAR_EXT_ENA 0x00004000 #define AR_PHY_RADAR_1 0x9958 -#define AR_PHY_RADAR_1_BIN_THRESH_SEL 0x07000000 -#define AR_PHY_RADAR_1_BIN_THRESH_SEL_S 24 +#define AR_PHY_RADAR_1_BIN_THRESH_SELECT 0x07000000 +#define AR_PHY_RADAR_1_BIN_THRESH_SELECT_S 24 #define AR_PHY_RADAR_1_RELPWR_ENA 0x00800000 #define AR_PHY_RADAR_1_USE_FIR128 0x00400000 #define AR_PHY_RADAR_1_RELPWR_THRESH 0x003F0000 Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416reg.h ============================================================================== --- head/sys/dev/ath/ath_hal/ar5416/ar5416reg.h Tue Jan 1 19:42:06 2013 (r244942) +++ head/sys/dev/ath/ath_hal/ar5416/ar5416reg.h Wed Jan 2 00:38:01 2013 (r244943) @@ -179,6 +179,7 @@ #define AR_2040_MODE 0x8318 #define AR_EXTRCCNT 0x8328 /* extension channel rx clear count */ #define AR_SELFGEN_MASK 0x832c /* rx and cal chain masks */ +#define AR_PHY_ERR_MASK_REG 0x8338 #define AR_PCU_TXBUF_CTRL 0x8340 #define AR_PCU_MISC_MODE2 0x8344 Modified: head/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c ============================================================================== --- head/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c Tue Jan 1 19:42:06 2013 (r244942) +++ head/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c Wed Jan 2 00:38:01 2013 (r244943) @@ -900,6 +900,7 @@ ar9280FillCapabilityInfo(struct ath_hal pCap->halHasRxSelfLinkedTail = AH_FALSE; pCap->halMbssidAggrSupport = AH_TRUE; pCap->hal4AddrAggrSupport = AH_TRUE; + pCap->halSpectralScanSupport = AH_TRUE; if (AR_SREV_MERLIN_20(ah)) { pCap->halPSPollBroken = AH_FALSE; Modified: head/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c ============================================================================== --- head/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c Tue Jan 1 19:42:06 2013 (r244942) +++ head/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c Wed Jan 2 00:38:01 2013 (r244943) @@ -524,6 +524,7 @@ ar9285FillCapabilityInfo(struct ath_hal pCap->halHasRxSelfLinkedTail = AH_FALSE; pCap->halMbssidAggrSupport = AH_TRUE; pCap->hal4AddrAggrSupport = AH_TRUE; + pCap->halSpectralScanSupport = AH_TRUE; if (AR_SREV_KITE_12_OR_LATER(ah)) pCap->halPSPollBroken = AH_FALSE; Modified: head/sys/dev/ath/ath_hal/ar9002/ar9287_attach.c ============================================================================== --- head/sys/dev/ath/ath_hal/ar9002/ar9287_attach.c Tue Jan 1 19:42:06 2013 (r244942) +++ head/sys/dev/ath/ath_hal/ar9002/ar9287_attach.c Wed Jan 2 00:38:01 2013 (r244943) @@ -453,6 +453,7 @@ ar9287FillCapabilityInfo(struct ath_hal /* Disable this so Block-ACK works correctly */ pCap->halHasRxSelfLinkedTail = AH_FALSE; pCap->halPSPollBroken = AH_FALSE; + pCap->halSpectralScanSupport = AH_TRUE; /* Hardware supports (at least) single-stream STBC TX/RX */ pCap->halRxStbcSupport = 1; From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 01:24:37 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8164EF91; Wed, 2 Jan 2013 01:24:37 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4A2558FC0A; Wed, 2 Jan 2013 01:24:37 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r021ObY1081838; Wed, 2 Jan 2013 01:24:37 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r021Oag5081836; Wed, 2 Jan 2013 01:24:36 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301020124.r021Oag5081836@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 01:24:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244945 - in head/sys: conf modules/ath X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 01:24:37 -0000 Author: adrian Date: Wed Jan 2 01:24:36 2013 New Revision: 244945 URL: http://svnweb.freebsd.org/changeset/base/244945 Log: Add missing update to link ar5416_spectral.c into the build. Modified: head/sys/conf/files head/sys/modules/ath/Makefile Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Wed Jan 2 01:07:08 2013 (r244944) +++ head/sys/conf/files Wed Jan 2 01:24:36 2013 (r244945) @@ -918,6 +918,10 @@ dev/ath/ath_hal/ar5416/ar5416_reset.c \ optional ath_hal | ath_ar5416 | ath_ar9160 | ath_ar9280 | ath_ar9285 | \ ath_ar9287 \ compile-with "${NORMAL_C} -I$S/dev/ath -I$S/dev/ath/ath_hal" +dev/ath/ath_hal/ar5416/ar5416_spectral.c \ + optional ath_hal | ath_ar5416 | ath_ar9160 | ath_ar9280 | ath_ar9285 | \ + ath_ar9287 \ + compile-with "${NORMAL_C} -I$S/dev/ath -I$S/dev/ath/ath_hal" dev/ath/ath_hal/ar5416/ar5416_xmit.c \ optional ath_hal | ath_ar5416 | ath_ar9160 | ath_ar9280 | ath_ar9285 | \ ath_ar9287 \ Modified: head/sys/modules/ath/Makefile ============================================================================== --- head/sys/modules/ath/Makefile Wed Jan 2 01:07:08 2013 (r244944) +++ head/sys/modules/ath/Makefile Wed Jan 2 01:24:36 2013 (r244945) @@ -89,7 +89,7 @@ SRCS+= ah_eeprom_v14.c ah_eeprom_v4k.c \ ar5416_ani.c ar5416_attach.c ar5416_beacon.c ar5416_btcoex.c \ ar5416_cal.c ar5416_cal_iq.c ar5416_cal_adcgain.c ar5416_cal_adcdc.c \ ar5416_eeprom.c ar5416_gpio.c ar5416_interrupts.c ar5416_keycache.c \ - ar5416_misc.c ar5416_phy.c ar5416_power.c ar5416_radar.c \ + ar5416_misc.c ar5416_phy.c ar5416_power.c ar5416_radar.c ar5416_spectral.c \ ar5416_recv.c ar5416_reset.c ar5416_xmit.c # RF backend for 5416, 9130 and 9160 From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 01:36:11 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 515CF3C8; Wed, 2 Jan 2013 01:36:11 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 1BC788FC08; Wed, 2 Jan 2013 01:36:11 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r021aATW083693; Wed, 2 Jan 2013 01:36:10 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r021aAl9083691; Wed, 2 Jan 2013 01:36:10 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301020136.r021aAl9083691@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 01:36:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244946 - in head/sys/dev/ath: . ath_dfs/null X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 01:36:11 -0000 Author: adrian Date: Wed Jan 2 01:36:10 2013 New Revision: 244946 URL: http://svnweb.freebsd.org/changeset/base/244946 Log: Add a method to explicitly disable radar reporting if required. Modified: head/sys/dev/ath/ath_dfs/null/dfs_null.c head/sys/dev/ath/if_athdfs.h Modified: head/sys/dev/ath/ath_dfs/null/dfs_null.c ============================================================================== --- head/sys/dev/ath/ath_dfs/null/dfs_null.c Wed Jan 2 01:24:36 2013 (r244945) +++ head/sys/dev/ath/ath_dfs/null/dfs_null.c Wed Jan 2 01:36:10 2013 (r244946) @@ -146,6 +146,26 @@ ath_dfs_radar_enable(struct ath_softc *s } /* + * Explicity disable radar reporting. + * + * Return 0 if it was disabled, < 0 on error. + */ +int +ath_dfs_radar_disable(struct ath_softc *sc) +{ +#if 0 + HAL_PHYERR_PARAM pe; + + (void) ath_hal_getdfsthresh(sc->sc_ah, &pe); + pe.pe_enabled = 0; + (void) ath_hal_enabledfs(sc->sc_ah, &pe); + return (0); +#else + return (0); +#endif +} + +/* * Process DFS related PHY errors * * The mbuf is not "ours" and if we want a copy, we have Modified: head/sys/dev/ath/if_athdfs.h ============================================================================== --- head/sys/dev/ath/if_athdfs.h Wed Jan 2 01:24:36 2013 (r244945) +++ head/sys/dev/ath/if_athdfs.h Wed Jan 2 01:36:10 2013 (r244946) @@ -35,6 +35,7 @@ extern int ath_dfs_attach(struct ath_sof extern int ath_dfs_detach(struct ath_softc *sc); extern int ath_dfs_radar_enable(struct ath_softc *, struct ieee80211_channel *chan); +extern int ath_dfs_radar_disable(struct ath_softc *sc); extern void ath_dfs_process_phy_err(struct ath_softc *sc, struct mbuf *m, uint64_t tsf, struct ath_rx_status *rxstat); extern int ath_dfs_process_radar_event(struct ath_softc *sc, From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 01:40:23 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D7BA2559; Wed, 2 Jan 2013 01:40:23 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id BA9228FC0C; Wed, 2 Jan 2013 01:40:23 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r021eNmS084339; Wed, 2 Jan 2013 01:40:23 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r021eNmi084338; Wed, 2 Jan 2013 01:40:23 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301020140.r021eNmi084338@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 01:40:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244947 - head/sys/dev/ath X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 01:40:23 -0000 Author: adrian Date: Wed Jan 2 01:40:23 2013 New Revision: 244947 URL: http://svnweb.freebsd.org/changeset/base/244947 Log: Add spectral HAL accessor methods. Modified: head/sys/dev/ath/if_athvar.h Modified: head/sys/dev/ath/if_athvar.h ============================================================================== --- head/sys/dev/ath/if_athvar.h Wed Jan 2 01:36:10 2013 (r244946) +++ head/sys/dev/ath/if_athvar.h Wed Jan 2 01:40:23 2013 (r244947) @@ -1299,4 +1299,13 @@ void ath_intr(void *); #define ath_hal_get_chan_ext_busy(_ah) \ ((*(_ah)->ah_get11nExtBusy)((_ah))) +#define ath_hal_spectral_get_config(_ah, _p) \ + ((*(_ah)->ah_spectralGetConfig)((_ah), (_p))) +#define ath_hal_spectral_configure(_ah, _p) \ + ((*(_ah)->ah_spectralConfigure)((_ah), (_p))) +#define ath_hal_spectral_start(_ah) \ + ((*(_ah)->ah_spectralStart)((_ah))) +#define ath_hal_spectral_stop(_ah) \ + ((*(_ah)->ah_spectralStop)((_ah))) + #endif /* _DEV_ATH_ATHVAR_H */ From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 03:56:20 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D9E409DB; Wed, 2 Jan 2013 03:56:20 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id BD7828FC14; Wed, 2 Jan 2013 03:56:20 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r023uKAn006545; Wed, 2 Jan 2013 03:56:20 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r023uKxV006543; Wed, 2 Jan 2013 03:56:20 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301020356.r023uKxV006543@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 03:56:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244950 - head/sys/dev/ath/ath_hal/ar5416 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 03:56:20 -0000 Author: adrian Date: Wed Jan 2 03:56:20 2013 New Revision: 244950 URL: http://svnweb.freebsd.org/changeset/base/244950 Log: Fix the short repeat option code to not flip the option to 0 when we call this w/ NOVAL set. Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416_spectral.c Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416_spectral.c ============================================================================== --- head/sys/dev/ath/ath_hal/ar5416/ar5416_spectral.c Wed Jan 2 02:44:54 2013 (r244949) +++ head/sys/dev/ath/ath_hal/ar5416/ar5416_spectral.c Wed Jan 2 03:56:20 2013 (r244950) @@ -113,7 +113,7 @@ ar5416ConfigureSpectralScan(struct ath_h if (ss->ss_short_report == AH_TRUE) { val |= AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT; - } else { + } else if (ss->ss_short_report != HAL_SPECTRAL_PARAM_NOVAL) { val &= ~AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT; } } else { @@ -130,7 +130,7 @@ ar5416ConfigureSpectralScan(struct ath_h if (ss->ss_short_report == AH_TRUE) { val |= AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT_KIWI; - } else { + } else if (ss->ss_short_report != HAL_SPECTRAL_PARAM_NOVAL) { val &= ~AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT_KIWI; } From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 03:59:03 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B0E6BB7B; Wed, 2 Jan 2013 03:59:03 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 89FBF8FC15; Wed, 2 Jan 2013 03:59:03 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r023x3WT006972; Wed, 2 Jan 2013 03:59:03 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r023x2rH006964; Wed, 2 Jan 2013 03:59:02 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301020359.r023x2rH006964@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 03:59:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244951 - head/sys/dev/ath X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 03:59:03 -0000 Author: adrian Date: Wed Jan 2 03:59:02 2013 New Revision: 244951 URL: http://svnweb.freebsd.org/changeset/base/244951 Log: Add a new (skeleton) spectral mode manager module. Added: head/sys/dev/ath/if_ath_spectral.c (contents, props changed) head/sys/dev/ath/if_ath_spectral.h (contents, props changed) Modified: head/sys/dev/ath/if_ath.c head/sys/dev/ath/if_athioctl.h head/sys/dev/ath/if_athvar.h Modified: head/sys/dev/ath/if_ath.c ============================================================================== --- head/sys/dev/ath/if_ath.c Wed Jan 2 03:56:20 2013 (r244950) +++ head/sys/dev/ath/if_ath.c Wed Jan 2 03:59:02 2013 (r244951) @@ -111,6 +111,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #ifdef ATH_TX99_DIAG @@ -510,6 +511,14 @@ ath_attach(u_int16_t devid, struct ath_s goto bad2; } + /* Attach spectral module */ + if (ath_spectral_attach(sc) < 0) { + device_printf(sc->sc_dev, + "%s: unable to attach spectral\n", __func__); + error = EIO; + goto bad2; + } + /* Start DFS processing tasklet */ TASK_INIT(&sc->sc_dfstask, 0, ath_dfs_tasklet, sc); @@ -967,6 +976,7 @@ ath_detach(struct ath_softc *sc) if_ath_alq_tidyup(&sc->sc_alq); #endif + ath_spectral_detach(sc); ath_dfs_detach(sc); ath_desc_free(sc); ath_txdma_teardown(sc); @@ -1489,6 +1499,9 @@ ath_resume(struct ath_softc *sc) /* Let DFS at it in case it's a DFS channel */ ath_dfs_radar_enable(sc, ic->ic_curchan); + /* Let spectral at in case spectral is enabled */ + ath_spectral_enable(sc, ic->ic_curchan); + /* Restore the LED configuration */ ath_led_config(sc); ath_hal_setledstate(ah, HAL_LED_INIT); @@ -1918,6 +1931,9 @@ ath_init(void *arg) /* Let DFS at it in case it's a DFS channel */ ath_dfs_radar_enable(sc, ic->ic_curchan); + /* Let spectral at in case spectral is enabled */ + ath_spectral_enable(sc, ic->ic_curchan); + /* * Likewise this is set during reset so update * state cached in the driver. @@ -2226,6 +2242,9 @@ ath_reset(struct ifnet *ifp, ATH_RESET_T /* Let DFS at it in case it's a DFS channel */ ath_dfs_radar_enable(sc, ic->ic_curchan); + /* Let spectral at in case spectral is enabled */ + ath_spectral_enable(sc, ic->ic_curchan); + if (ath_startrecv(sc) != 0) /* restart recv */ if_printf(ifp, "%s: unable to start recv logic\n", __func__); /* @@ -4402,6 +4421,9 @@ ath_chan_set(struct ath_softc *sc, struc /* Let DFS at it in case it's a DFS channel */ ath_dfs_radar_enable(sc, chan); + /* Let spectral at in case spectral is enabled */ + ath_spectral_enable(sc, chan); + /* * Re-enable rx framework. */ @@ -5384,6 +5406,9 @@ ath_ioctl(struct ifnet *ifp, u_long cmd, error = ath_ioctl_phyerr(sc,(struct ath_diag*) ifr); break; #endif + case SIOCGATHSPECTRAL: + error = ath_ioctl_spectral(sc,(struct ath_diag*) ifr); + break; case SIOCGATHNODERATESTATS: error = ath_ioctl_ratestats(sc, (struct ath_rateioctl *) ifr); break; Added: head/sys/dev/ath/if_ath_spectral.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/ath/if_ath_spectral.c Wed Jan 2 03:59:02 2013 (r244951) @@ -0,0 +1,224 @@ +/*- + * Copyright (c) 2013 Adrian Chadd + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer, + * without modification. + * 2. Redistributions in binary form must reproduce at minimum a disclaimer + * similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any + * redistribution must be conditioned upon including a substantially + * similar Disclaimer requirement for further binary redistribution. + * + * NO WARRANTY + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY + * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR 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 DAMAGES. + * + * $FreeBSD$ + */ +#include +__FBSDID("$FreeBSD$"); + +/* + * Implement some basic spectral scan control logic. + */ +#include "opt_ath.h" +#include "opt_inet.h" +#include "opt_wlan.h" + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include + +#include +#include +#include +#include /* XXX for ether_sprintf */ + +#include + +#include + +#ifdef INET +#include +#include +#endif + +#include +#include + +#include + +struct ath_spectral_state { + HAL_SPECTRAL_PARAM spectral_state; + int spectral_active; + int spectral_enabled; +}; + +/* + * Methods which are required + */ + +/* + * Attach DFS to the given interface + */ +int +ath_spectral_attach(struct ath_softc *sc) +{ + struct ath_spectral_state *ss; + + ss = malloc(sizeof(struct ath_spectral_state), + M_TEMP, M_WAITOK | M_ZERO); + + if (ss == NULL) { + device_printf(sc->sc_dev, "%s: failed to alloc memory\n", + __func__); + return (-ENOMEM); + } + + sc->sc_spectral = ss; + + (void) ath_hal_spectral_get_config(sc->sc_ah, &ss->spectral_state); + + return (0); +} + +/* + * Detach DFS from the given interface + */ +int +ath_spectral_detach(struct ath_softc *sc) +{ + if (sc->sc_spectral != NULL) { + free(sc->sc_spectral, M_TEMP); + } + return (0); +} + +/* + * Check whether spectral needs enabling and if so, + * flip it on. + */ +int +ath_spectral_enable(struct ath_softc *sc, struct ieee80211_channel *ch) +{ + + return (0); +} + +/* + * Handle ioctl requests from the diagnostic interface. + * + * The initial part of this code resembles ath_ioctl_diag(); + * it's likely a good idea to reduce duplication between + * these two routines. + */ +int +ath_ioctl_spectral(struct ath_softc *sc, struct ath_diag *ad) +{ + unsigned int id = ad->ad_id & ATH_DIAG_ID; + void *indata = NULL; + void *outdata = NULL; + u_int32_t insize = ad->ad_in_size; + u_int32_t outsize = ad->ad_out_size; + int error = 0; + HAL_SPECTRAL_PARAM peout; + HAL_SPECTRAL_PARAM *pe; + struct ath_spectral_state *ss = sc->sc_spectral; + + if (ad->ad_id & ATH_DIAG_IN) { + /* + * Copy in data. + */ + indata = malloc(insize, M_TEMP, M_NOWAIT); + if (indata == NULL) { + error = ENOMEM; + goto bad; + } + error = copyin(ad->ad_in_data, indata, insize); + if (error) + goto bad; + } + if (ad->ad_id & ATH_DIAG_DYN) { + /* + * Allocate a buffer for the results (otherwise the HAL + * returns a pointer to a buffer where we can read the + * results). Note that we depend on the HAL leaving this + * pointer for us to use below in reclaiming the buffer; + * may want to be more defensive. + */ + outdata = malloc(outsize, M_TEMP, M_NOWAIT); + if (outdata == NULL) { + error = ENOMEM; + goto bad; + } + } + switch (id) { + case SPECTRAL_CONTROL_GET_PARAMS: + memset(&peout, 0, sizeof(peout)); + outsize = sizeof(HAL_SPECTRAL_PARAM); + ath_hal_spectral_get_config(sc->sc_ah, &peout); + pe = (HAL_SPECTRAL_PARAM *) outdata; + memcpy(pe, &peout, sizeof(*pe)); + break; + case SPECTRAL_CONTROL_SET_PARAMS: + if (insize < sizeof(HAL_SPECTRAL_PARAM)) { + error = EINVAL; + break; + } + pe = (HAL_SPECTRAL_PARAM *) indata; + ath_hal_spectral_configure(sc->sc_ah, pe); + /* Save a local copy of the updated parameters */ + ath_hal_spectral_get_config(sc->sc_ah, + &ss->spectral_state); + break; + case SPECTRAL_CONTROL_START: + ath_hal_spectral_configure(sc->sc_ah, + &ss->spectral_state); + (void) ath_hal_spectral_start(sc->sc_ah); + break; + case SPECTRAL_CONTROL_STOP: + (void) ath_hal_spectral_stop(sc->sc_ah); + break; + case SPECTRAL_CONTROL_ENABLE: + /* XXX TODO */ + case SPECTRAL_CONTROL_DISABLE: + /* XXX TODO */ + break; + default: + error = EINVAL; + } + if (outsize < ad->ad_out_size) + ad->ad_out_size = outsize; + if (outdata && copyout(outdata, ad->ad_out_data, ad->ad_out_size)) + error = EFAULT; +bad: + if ((ad->ad_id & ATH_DIAG_IN) && indata != NULL) + free(indata, M_TEMP); + if ((ad->ad_id & ATH_DIAG_DYN) && outdata != NULL) + free(outdata, M_TEMP); + return (error); +} + Added: head/sys/dev/ath/if_ath_spectral.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/ath/if_ath_spectral.h Wed Jan 2 03:59:02 2013 (r244951) @@ -0,0 +1,40 @@ +/*- + * Copyright (c) 2013 Adrian Chadd + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer, + * without modification. + * 2. Redistributions in binary form must reproduce at minimum a disclaimer + * similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any + * redistribution must be conditioned upon including a substantially + * similar Disclaimer requirement for further binary redistribution. + * + * NO WARRANTY + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY + * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR 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 DAMAGES. + * + * $FreeBSD$ + */ +#ifndef __IF_ATH_SPECTRAL_H__ +#define __IF_ATH_SPECTRAL_H__ + +extern int ath_spectral_attach(struct ath_softc *sc); +extern int ath_spectral_detach(struct ath_softc *sc); +extern int ath_ioctl_spectral(struct ath_softc *sc, struct ath_diag *ad); +extern int ath_spectral_enable(struct ath_softc *sc, + struct ieee80211_channel *ch); + +#endif /* __IF_ATH_SPECTRAL_H__ */ Modified: head/sys/dev/ath/if_athioctl.h ============================================================================== --- head/sys/dev/ath/if_athioctl.h Wed Jan 2 03:56:20 2013 (r244950) +++ head/sys/dev/ath/if_athioctl.h Wed Jan 2 03:59:02 2013 (r244951) @@ -406,4 +406,26 @@ struct ath_tx_radiotap_header { #define DFS_PARAM_ENABLE 32 #define DFS_PARAM_EN_EXTCH 33 +/* + * Spectral ioctl parameter types + */ +#define SPECTRAL_PARAM_FFT_PERIOD 1 +#define SPECTRAL_PARAM_SS_PERIOD 2 +#define SPECTRAL_PARAM_SS_COUNT 3 +#define SPECTRAL_PARAM_SS_SHORT_RPT 4 +#define SPECTRAL_PARAM_ENABLED 5 +#define SPECTRAL_PARAM_ACTIVE 6 + +/* + * Spectral control parameters + */ +#define SIOCGATHSPECTRAL _IOWR('i', 151, struct ath_diag) + +#define SPECTRAL_CONTROL_ENABLE 2 +#define SPECTRAL_CONTROL_DISABLE 3 +#define SPECTRAL_CONTROL_START 4 +#define SPECTRAL_CONTROL_STOP 5 +#define SPECTRAL_CONTROL_GET_PARAMS 6 +#define SPECTRAL_CONTROL_SET_PARAMS 7 + #endif /* _DEV_ATH_ATHIOCTL_H */ Modified: head/sys/dev/ath/if_athvar.h ============================================================================== --- head/sys/dev/ath/if_athvar.h Wed Jan 2 03:56:20 2013 (r244950) +++ head/sys/dev/ath/if_athvar.h Wed Jan 2 03:59:02 2013 (r244951) @@ -750,6 +750,10 @@ struct ath_softc { int sc_dodfs; /* Whether to enable DFS rx filter bits */ struct task sc_dfstask; /* DFS processing task */ + /* Spectral related state */ + void *sc_spectral; + int sc_dospectral; + /* ALQ */ #ifdef ATH_DEBUG_ALQ struct if_ath_alq sc_alq; From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 04:00:55 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 44659D01; Wed, 2 Jan 2013 04:00:55 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 0F7C28FC08; Wed, 2 Jan 2013 04:00:55 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0240s1Q007381; Wed, 2 Jan 2013 04:00:54 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0240sQY007378; Wed, 2 Jan 2013 04:00:54 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301020400.r0240sQY007378@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 04:00:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244952 - in head/sys: conf modules/ath X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 04:00:55 -0000 Author: adrian Date: Wed Jan 2 04:00:54 2013 New Revision: 244952 URL: http://svnweb.freebsd.org/changeset/base/244952 Log: Link if_ath_spectral.c into the build. Modified: head/sys/conf/files head/sys/modules/ath/Makefile Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Wed Jan 2 03:59:02 2013 (r244951) +++ head/sys/conf/files Wed Jan 2 04:00:54 2013 (r244952) @@ -726,6 +726,8 @@ dev/ath/if_ath_rx.c optional ath \ compile-with "${NORMAL_C} -I$S/dev/ath" dev/ath/if_ath_rx_edma.c optional ath \ compile-with "${NORMAL_C} -I$S/dev/ath" +dev/ath/if_ath_spectral.c optional ath \ + compile-with "${NORMAL_C} -I$S/dev/ath" dev/ath/ah_osdep.c optional ath \ compile-with "${NORMAL_C} -I$S/dev/ath" # Modified: head/sys/modules/ath/Makefile ============================================================================== --- head/sys/modules/ath/Makefile Wed Jan 2 03:59:02 2013 (r244951) +++ head/sys/modules/ath/Makefile Wed Jan 2 04:00:54 2013 (r244952) @@ -37,7 +37,7 @@ ATH_RATE?= sample # tx rate control alg KMOD= if_ath SRCS= if_ath.c if_ath_alq.c if_ath_debug.c if_ath_keycache.c if_ath_sysctl.c SRCS+= if_ath_tx.c if_ath_tx_ht.c if_ath_led.c if_ath_rx.c if_ath_tdma.c -SRCS+= if_ath_beacon.c if_ath_rx_edma.c if_ath_tx_edma.c +SRCS+= if_ath_beacon.c if_ath_rx_edma.c if_ath_tx_edma.c if_ath_spectral.c # NB: v3 eeprom support used by both AR5211 and AR5212; just include it SRCS+= ah_osdep.c ah.c ah_regdomain.c ah_eeprom_v3.c SRCS+= device_if.h bus_if.h pci_if.h opt_inet.h opt_ath.h opt_ah.h opt_wlan.h From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 04:02:29 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2B0E8E78; Wed, 2 Jan 2013 04:02:29 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 03BA78FC08; Wed, 2 Jan 2013 04:02:29 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0242S0F007819; Wed, 2 Jan 2013 04:02:28 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0242Sfd007814; Wed, 2 Jan 2013 04:02:28 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301020402.r0242Sfd007814@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 04:02:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244953 - in head/tools/tools/ath: . athspectral X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 04:02:29 -0000 Author: adrian Date: Wed Jan 2 04:02:27 2013 New Revision: 244953 URL: http://svnweb.freebsd.org/changeset/base/244953 Log: Add a very skeletal spectral scan control application. The main use for this is to manually trigger spectral scan operations (athspectral -i athX start) whilst doing debugging. Added: head/tools/tools/ath/athspectral/ head/tools/tools/ath/athspectral/Makefile (contents, props changed) head/tools/tools/ath/athspectral/athspectral.c (contents, props changed) Modified: head/tools/tools/ath/Makefile Modified: head/tools/tools/ath/Makefile ============================================================================== --- head/tools/tools/ath/Makefile Wed Jan 2 04:00:54 2013 (r244952) +++ head/tools/tools/ath/Makefile Wed Jan 2 04:02:27 2013 (r244953) @@ -3,6 +3,6 @@ SUBDIR= arcode athdebug athdecode athkey athpoke athprom athrd athregs SUBDIR+= athstats ath_prom_read athradar athaggrstats SUBDIR+= ath_ee_v14_print ath_ee_v4k_print ath_ee_9287_print -SUBDIR+= athsurvey athratestats +SUBDIR+= athsurvey athratestats athspectral .include Added: head/tools/tools/ath/athspectral/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/tools/ath/athspectral/Makefile Wed Jan 2 04:02:27 2013 (r244953) @@ -0,0 +1,16 @@ +# $FreeBSD$ + +PROG= athspectral + +.include <../Makefile.inc> + +SRCS= athspectral.c +SRCS+= opt_ah.h +CLEANFILES+= opt_ah.h + +opt_ah.h: + echo "#define AH_DEBUG 1" > opt_ah.h + echo "#define AH_DEBUG_COUNTRY 1" >> opt_ah.h + echo "#define AH_SUPPORT_AR5416 1" >> opt_ah.h + +.include Added: head/tools/tools/ath/athspectral/athspectral.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/tools/ath/athspectral/athspectral.c Wed Jan 2 04:02:27 2013 (r244953) @@ -0,0 +1,323 @@ +/* + * Copyright (c) 2013 Adrian Chadd + * + * 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$ + */ + +#include "diag.h" + +#include "ah.h" +#include "ah_internal.h" + +#ifndef ATH_DEFAULT +#define ATH_DEFAULT "ath0" +#endif + +#include +#include +#include +#include +#include +#include +#include + +struct spectralhandler { + struct ath_diag atd; + int s; + struct ifreq ifr; + int ah_devid; +}; + +int +spectral_opendev(struct spectralhandler *spectral, const char *devid) +{ + HAL_REVS revs; + + spectral->s = socket(AF_INET, SOCK_DGRAM, 0); + if (spectral->s < 0) { + warn("socket"); + return 0; + } + + strncpy(spectral->atd.ad_name, devid, sizeof (spectral->atd.ad_name)); + + /* Get the hardware revision, just to verify things are working */ + spectral->atd.ad_id = HAL_DIAG_REVS; + spectral->atd.ad_out_data = (caddr_t) &revs; + spectral->atd.ad_out_size = sizeof(revs); + if (ioctl(spectral->s, SIOCGATHDIAG, &spectral->atd) < 0) { + warn(spectral->atd.ad_name); + return 0; + } + spectral->ah_devid = revs.ah_devid; + return 1; +} + +void +spectral_closedev(struct spectralhandler *spectral) +{ + close(spectral->s); + spectral->s = -1; +} + +void +spectralset(struct spectralhandler *spectral, int op, u_int32_t param) +{ + HAL_SPECTRAL_PARAM pe; + + pe.ss_fft_period = HAL_SPECTRAL_PARAM_NOVAL; + pe.ss_period = HAL_SPECTRAL_PARAM_NOVAL; + pe.ss_count = HAL_SPECTRAL_PARAM_NOVAL; + pe.ss_short_report = HAL_SPECTRAL_PARAM_NOVAL; + pe.ss_spectral_pri = HAL_SPECTRAL_PARAM_NOVAL; + pe.ss_fft_period = HAL_SPECTRAL_PARAM_NOVAL; + pe.ss_enabled = HAL_SPECTRAL_PARAM_NOVAL; + pe.ss_active = HAL_SPECTRAL_PARAM_NOVAL; + + switch (op) { + case SPECTRAL_PARAM_FFT_PERIOD: + pe.ss_fft_period = param; + break; + case SPECTRAL_PARAM_SS_PERIOD: + pe.ss_period = param; + break; + case SPECTRAL_PARAM_SS_COUNT: + pe.ss_count = param; + break; + case SPECTRAL_PARAM_SS_SHORT_RPT: + pe.ss_short_report = param; + break; + } + + spectral->atd.ad_id = SPECTRAL_CONTROL_SET_PARAMS | ATH_DIAG_IN; + spectral->atd.ad_out_data = NULL; + spectral->atd.ad_out_size = 0; + spectral->atd.ad_in_data = (caddr_t) &pe; + spectral->atd.ad_in_size = sizeof(HAL_SPECTRAL_PARAM); + if (ioctl(spectral->s, SIOCGATHSPECTRAL, &spectral->atd) < 0) + err(1, spectral->atd.ad_name); +} + +static void +spectral_get(struct spectralhandler *spectral) +{ + HAL_SPECTRAL_PARAM pe; + + spectral->atd.ad_id = SPECTRAL_CONTROL_GET_PARAMS | ATH_DIAG_DYN; + memset(&pe, 0, sizeof(pe)); + + spectral->atd.ad_in_data = NULL; + spectral->atd.ad_in_size = 0; + spectral->atd.ad_out_data = (caddr_t) &pe; + spectral->atd.ad_out_size = sizeof(pe); + + if (ioctl(spectral->s, SIOCGATHSPECTRAL, &spectral->atd) < 0) + err(1, spectral->atd.ad_name); + + printf("Spectral parameters (raw):\n"); + printf(" ss_enabled: %d\n", pe.ss_enabled); + printf(" ss_active: %d\n", pe.ss_active); + printf(" ss_count: %d\n", pe.ss_count); + printf(" ss_fft_period: %d\n", pe.ss_fft_period); + printf(" ss_period: %d\n", pe.ss_period); + printf(" ss_short_report: %d\n", pe.ss_short_report); + printf(" radar_bin_thresh_sel: %d\n", pe.radar_bin_thresh_sel); +} + +static void +spectral_start(struct spectralhandler *spectral) +{ + HAL_SPECTRAL_PARAM pe; + + spectral->atd.ad_id = SPECTRAL_CONTROL_START | ATH_DIAG_DYN; + memset(&pe, 0, sizeof(pe)); + + /* + * XXX don't need these, but need to eliminate the ATH_DIAG_DYN flag + * and debug + */ + spectral->atd.ad_in_data = NULL; + spectral->atd.ad_in_size = 0; + spectral->atd.ad_out_data = (caddr_t) &pe; + spectral->atd.ad_out_size = sizeof(pe); + + if (ioctl(spectral->s, SIOCGATHSPECTRAL, &spectral->atd) < 0) + err(1, spectral->atd.ad_name); +} + +static void +spectral_stop(struct spectralhandler *spectral) +{ + HAL_SPECTRAL_PARAM pe; + + spectral->atd.ad_id = SPECTRAL_CONTROL_STOP | ATH_DIAG_DYN; + memset(&pe, 0, sizeof(pe)); + + /* + * XXX don't need these, but need to eliminate the ATH_DIAG_DYN flag + * and debug + */ + spectral->atd.ad_in_data = NULL; + spectral->atd.ad_in_size = 0; + spectral->atd.ad_out_data = (caddr_t) &pe; + spectral->atd.ad_out_size = sizeof(pe); + + if (ioctl(spectral->s, SIOCGATHSPECTRAL, &spectral->atd) < 0) + err(1, spectral->atd.ad_name); +} + +static int +spectral_set_param(struct spectralhandler *spectral, const char *param, + const char *val) +{ + int v; + + v = atoi(val); + + if (strcmp(param, "ss_short_report") == 0) { + spectralset(spectral, SPECTRAL_PARAM_SS_SHORT_RPT, v); + } else if (strcmp(param, "ss_fft_period") == 0) { + spectralset(spectral, SPECTRAL_PARAM_FFT_PERIOD, v); + } else if (strcmp(param, "ss_period") == 0) { + spectralset(spectral, SPECTRAL_PARAM_SS_PERIOD, v); + } else if (strcmp(param, "ss_count") == 0) { + spectralset(spectral, SPECTRAL_PARAM_SS_COUNT, v); + } else { + return (0); + } + +#if 0 + if (strcmp(param, "enabled") == 0) { + spectralset(spectral, DFS_PARAM_ENABLE, v); + } else if (strcmp(param, "firpwr") == 0) { + spectralset(spectral, DFS_PARAM_FIRPWR, v); + } else if (strcmp(param, "rrssi") == 0) { + spectralset(spectral, DFS_PARAM_RRSSI, v); + } else if (strcmp(param, "height") == 0) { + spectralset(spectral, DFS_PARAM_HEIGHT, v); + } else if (strcmp(param, "prssi") == 0) { + spectralset(spectral, DFS_PARAM_PRSSI, v); + } else if (strcmp(param, "inband") == 0) { + spectralset(spectral, DFS_PARAM_INBAND, v); + } else if (strcmp(param, "relpwr") == 0) { + spectralset(spectral, DFS_PARAM_RELPWR, v); + } else if (strcmp(param, "relstep") == 0) { + spectralset(spectral, DFS_PARAM_RELSTEP, v); + } else if (strcmp(param, "maxlen") == 0) { + spectralset(spectral, DFS_PARAM_MAXLEN, v); + } else if (strcmp(param, "usefir128") == 0) { + spectralset(spectral, DFS_PARAM_USEFIR128, v); + } else if (strcmp(param, "blockspectral") == 0) { + spectralset(spectral, DFS_PARAM_BLOCKRADAR, v); + } else if (strcmp(param, "enmaxrssi") == 0) { + spectralset(spectral, DFS_PARAM_MAXRSSI_EN, v); + } else if (strcmp(param, "extchannel") == 0) { + spectralset(spectral, DFS_PARAM_EN_EXTCH, v); + } else if (strcmp(param, "enrelpwr") == 0) { + spectralset(spectral, DFS_PARAM_RELPWR_EN, v); + } else if (strcmp(param, "en_relstep_check") == 0) { + spectralset(spectral, DFS_PARAM_RELSTEP_EN, v); + } else { + return 0; + } +#endif + + return 1; +} + +void +usage(const char *progname) +{ + printf("Usage:\n"); + printf("\t%s: [-i ] ()\n", progname); + printf("\t%s: [-h]\n", progname); + printf("\n"); + printf("Valid commands:\n"); + printf("\tget:\t\tGet current spectral parameters\n"); + printf("\tset :\t\tSet spectral parameter\n"); + printf("\tstart: Start spectral scan\n"); + printf("\tstop: Stop spectral scan\n"); +} + +int +main(int argc, char *argv[]) +{ + struct spectralhandler spectral; + const char *devname = ATH_DEFAULT; + const char *progname = argv[0]; + + memset(&spectral, 0, sizeof(spectral)); + + /* Parse command line options */ + if (argc >= 2 && strcmp(argv[1], "-h") == 0) { + usage(progname); + exit(0); + } + if (argc >= 2 && strcmp(argv[1], "-?") == 0) { + usage(progname); + exit(0); + } + + if (argc >= 2 && strcmp(argv[1], "-i") == 0) { + if (argc == 2) { + usage(progname); + exit(127); + } + devname = argv[2]; + argc -= 2; argv += 2; + } + + /* At this point we require at least one command */ + if (argc == 1) { + usage(progname); + exit(127); + } + + if (spectral_opendev(&spectral, devname) == 0) + exit(127); + + if (strcasecmp(argv[1], "get") == 0) { + spectral_get(&spectral); + } else if (strcasecmp(argv[1], "set") == 0) { + if (argc < 4) { + usage(progname); + exit(127); + } + if (spectral_set_param(&spectral, argv[2], argv[3]) == 0) { + usage(progname); + exit(127); + } + } else if (strcasecmp(argv[1], "start") == 0) { + spectral_start(&spectral); + } else if (strcasecmp(argv[1], "stop") == 0) { + spectral_stop(&spectral); + } else { + usage(progname); + exit(127); + } + + /* wrap up */ + spectral_closedev(&spectral); + exit(0); +} From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 07:33:21 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 03C32A37; Wed, 2 Jan 2013 07:33:21 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C1CB18FC13; Wed, 2 Jan 2013 07:33:20 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r027XKLJ041013; Wed, 2 Jan 2013 07:33:20 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r027XKDA041011; Wed, 2 Jan 2013 07:33:20 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201301020733.r027XKDA041011@svn.freebsd.org> From: Hans Petter Selasky Date: Wed, 2 Jan 2013 07:33:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r244956 - in stable/9: share/man/man4 sys/netgraph/bluetooth/drivers/ubt X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 07:33:21 -0000 Author: hselasky Date: Wed Jan 2 07:33:19 2013 New Revision: 244956 URL: http://svnweb.freebsd.org/changeset/base/244956 Log: MFC r244704, r244714 and r244715: Add vendor IDs for Broadcom USB dongles (BCM20702). PR: kern/174707 Modified: stable/9/share/man/man4/ng_ubt.4 stable/9/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c Directory Properties: stable/9/share/ (props changed) stable/9/share/man/ (props changed) stable/9/share/man/man4/ (props changed) stable/9/sys/ (props changed) Modified: stable/9/share/man/man4/ng_ubt.4 ============================================================================== --- stable/9/share/man/man4/ng_ubt.4 Wed Jan 2 04:29:35 2013 (r244955) +++ stable/9/share/man/man4/ng_ubt.4 Wed Jan 2 07:33:19 2013 (r244956) @@ -25,7 +25,7 @@ .\" $Id: ng_ubt.4,v 1.3 2003/05/21 19:37:35 max Exp $ .\" $FreeBSD$ .\" -.Dd September 13, 2004 +.Dd December 26, 2012 .Dt NG_UBT 4 .Os .Sh NAME @@ -73,6 +73,8 @@ Mitsumi Bluetooth USB adapter MSI MS-6967 .It TDK Bluetooth USB adapter +.It +Broadcom Bluetooth USB adapter .El .Sh HOOKS This node type supports the following hooks: Modified: stable/9/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c ============================================================================== --- stable/9/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c Wed Jan 2 04:29:35 2013 (r244955) +++ stable/9/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c Wed Jan 2 07:33:19 2013 (r244956) @@ -398,6 +398,12 @@ static const STRUCT_USB_HOST_ID ubt_devs /* AVM USB Bluetooth-Adapter BlueFritz! v2.0 */ { USB_VPI(USB_VENDOR_AVM, 0x3800, 0) }, + + /* Broadcom USB dongles, mostly BCM20702 and BCM20702A0 */ + { USB_VENDOR(USB_VENDOR_BROADCOM), + USB_IFACE_CLASS(UICLASS_VENDOR), + USB_IFACE_SUBCLASS(UDSUBCLASS_RF), + USB_IFACE_PROTOCOL(UDPROTO_BLUETOOTH) }, }; /* @@ -1748,7 +1754,7 @@ static device_method_t ubt_methods[] = DEVMETHOD(device_probe, ubt_probe), DEVMETHOD(device_attach, ubt_attach), DEVMETHOD(device_detach, ubt_detach), - { 0, 0 } + DEVMETHOD_END }; static driver_t ubt_driver = From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 07:33:44 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2496DB9B; Wed, 2 Jan 2013 07:33:44 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 06F8B8FC16; Wed, 2 Jan 2013 07:33:44 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r027XhZX041096; Wed, 2 Jan 2013 07:33:43 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r027XhMr041095; Wed, 2 Jan 2013 07:33:43 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201301020733.r027XhMr041095@svn.freebsd.org> From: Hans Petter Selasky Date: Wed, 2 Jan 2013 07:33:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244957 - head/sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 07:33:44 -0000 Author: hselasky Date: Wed Jan 2 07:33:43 2013 New Revision: 244957 URL: http://svnweb.freebsd.org/changeset/base/244957 Log: Add missing dependancy. Submitted by: Michael Butler MFC after: 1 week Modified: head/sys/conf/files Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Wed Jan 2 07:33:19 2013 (r244956) +++ head/sys/conf/files Wed Jan 2 07:33:43 2013 (r244957) @@ -2188,7 +2188,7 @@ dev/usb/net/if_udav.c optional udav dev/usb/net/if_usie.c optional usie dev/usb/net/ruephy.c optional rue dev/usb/net/usb_ethernet.c optional aue | axe | cdce | cue | kue | mos | \ - rue | smsc | udav + rue | smsc | udav | ipheth dev/usb/net/uhso.c optional uhso # # USB WLAN drivers From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 11:01:31 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 897B1CB8; Wed, 2 Jan 2013 11:01:31 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id 587268FC0C; Wed, 2 Jan 2013 11:01:31 +0000 (UTC) Received: from [192.168.2.119] (host86-129-88-139.range86-129.btcentralplus.com [86.129.88.139]) by cyrus.watson.org (Postfix) with ESMTPSA id AAEE146B2D; Wed, 2 Jan 2013 06:01:29 -0500 (EST) Subject: Re: svn commit: r244899 - head/sys/mips/beri Mime-Version: 1.0 (Apple Message framework v1283) Content-Type: text/plain; charset=us-ascii From: "Robert N. M. Watson" In-Reply-To: <20130102110856.7c280fd5@fubar.geek.nz> Date: Wed, 2 Jan 2013 11:01:27 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: <0E1E1A5C-BB34-4B82-828F-6FEE770A6037@FreeBSD.org> References: <201212311106.qBVB6chM016661@svn.freebsd.org> <20130102081746.5435db05@fubar.geek.nz> <20130102110856.7c280fd5@fubar.geek.nz> To: Andrew Turner X-Mailer: Apple Mail (2.1283) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 11:01:31 -0000 On 1 Jan 2013, at 22:08, Andrew Turner wrote: >> On a semi-related note: the current obstacle to moving more devices >> over to using FDT on BERI is that our FDT implementation appears to >> require a PIC to be configured. We're not actually using a PIC on >> BERI currently. It works fine attached to nexus, as the implied >> fallback for not having a PIC is to simply use the suitably numbered >> interrupt wires direct into the MIPS. However, trying the same setup >> described using FDT leads to an interrupt-related warning at boot, >> and no interrupt being provided to the driver. I suspect I need to >> provide a PIC-alike software component as a fall-back for the non-PIC >> case. =46rom a brief e-mail exchange with JC, it sounds like the XLP >> FDT setup is actually not using interrupts either, currently. >=20 > I'm not sure if a PIC is required. =46rom my reading of the code it > appears not. By the look of it if you are using the nexus to > handle interrupts you need to put an interrupts property in the device > and "#interrupt-cells =3D <1>;" in the soc node. >=20 > You will also need to implement an interrupt decode function and add = it > to the fdt_pic_table array. ARM has a number of almost identical = copies > of this function you can use for inspration. This seemed to do the trick; what do you think of the attached? This = isn't a board-specific change, so I dropped it into the common = fdt_mips.c code. On the other hand, this left it a bit open as to what = the right compatible=3D line to use was, so feedback there most welcome. Robert Change 219933 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2013/01/02 = 09:32:16 Implement an FDT PIC decode routine to use when no PIC has been configured, which assumes a cascade back to the nexus bus (e.g., the on-board CP0 interrupt management parts on the MIPS). If = the soc bus in a MIPS DTS file is declared as = "mips4k,cp0"-compatible, then this will be enabled. This is sufficient to allow IRQs to = be configured on BERI. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/dev/fdt/fdt_mips.c#2 edit Differences ... =3D=3D=3D=3D //depot/projects/ctsrd/beribsd/src/sys/dev/fdt/fdt_mips.c#2 = (text+ko) =3D=3D=3D=3D @@ -49,8 +49,26 @@ { NULL, NULL } }; +/* + * For PIC-free boards, provide a PIC decoder to be used with mips4k = CP0 + * interrupt control directly. + */ +static int +fdt_pic_decode_mips4k_cp0(phandle_t node, pcell_t *intr, int = *interrupt, + int *trig, int *pol) +{ + + if (!fdt_is_compatible(node, "mips4k,cp0")) + return (ENXIO); + + *interrupt =3D fdt32_to_cpu(intr[0]); + *trig =3D INTR_TRIGGER_CONFORM; + *pol =3D INTR_POLARITY_CONFORM; + + return (0); +} + fdt_pic_decode_t fdt_pic_table[] =3D { - NULL, - NULL, + &fdt_pic_decode_mips4k_cp0, NULL }; From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 13:25:12 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 96592659; Wed, 2 Jan 2013 13:25:12 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7B8BF8FC15; Wed, 2 Jan 2013 13:25:12 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02DPCF6094189; Wed, 2 Jan 2013 13:25:12 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02DPCod094188; Wed, 2 Jan 2013 13:25:12 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201301021325.r02DPCod094188@svn.freebsd.org> From: Nathan Whitehorn Date: Wed, 2 Jan 2013 13:25:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244958 - head/usr.sbin/bsdinstall/partedit X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 13:25:12 -0000 Author: nwhitehorn Date: Wed Jan 2 13:25:11 2013 New Revision: 244958 URL: http://svnweb.freebsd.org/changeset/base/244958 Log: Make sade actually be a symlink to partedit, as per the commit message in r244859, rather than a hardlink. This fixes installation if /usr/sbin is on a different filesystem than /usr/libexec. Submitted by: se Modified: head/usr.sbin/bsdinstall/partedit/Makefile Modified: head/usr.sbin/bsdinstall/partedit/Makefile ============================================================================== --- head/usr.sbin/bsdinstall/partedit/Makefile Wed Jan 2 07:33:43 2013 (r244957) +++ head/usr.sbin/bsdinstall/partedit/Makefile Wed Jan 2 13:25:11 2013 (r244958) @@ -2,7 +2,8 @@ BINDIR= /usr/libexec/bsdinstall PROG= partedit -LINKS= ${BINDIR}/partedit ${BINDIR}/autopart ${BINDIR}/partedit /usr/sbin/sade +LINKS= ${BINDIR}/partedit ${BINDIR}/autopart +SYMLINKS= ${BINDIR}/partedit /usr/sbin/sade LDADD= -lgeom -lncursesw -lutil -ldialog -lm PARTEDIT_ARCH= ${MACHINE} From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:03:19 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id B9144327; Wed, 2 Jan 2013 18:03:19 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id AAF4B19DC; Wed, 2 Jan 2013 18:03:19 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02I3Jx1036005; Wed, 2 Jan 2013 18:03:19 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02I3JjE036004; Wed, 2 Jan 2013 18:03:19 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021803.r02I3JjE036004@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:03:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244960 - head/tools/tools/ath/arcode X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:03:19 -0000 Author: adrian Date: Wed Jan 2 18:03:19 2013 New Revision: 244960 URL: http://svnweb.freebsd.org/changeset/base/244960 Log: Fix incorrect format string. Modified: head/tools/tools/ath/arcode/arcode.c Modified: head/tools/tools/ath/arcode/arcode.c ============================================================================== --- head/tools/tools/ath/arcode/arcode.c Wed Jan 2 16:47:23 2013 (r244959) +++ head/tools/tools/ath/arcode/arcode.c Wed Jan 2 18:03:19 2013 (r244960) @@ -106,7 +106,7 @@ main(int argc, const char *argv[]) op_mark(&a); break; default: - printf("op: %s; reg: %x; val: %x\n", + printf("op: %d; reg: 0x%x; val: 0x%x\n", a.op, a.reg, a.val); } } From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:05:42 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D7E4069F; Wed, 2 Jan 2013 18:05:42 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C800419F4; Wed, 2 Jan 2013 18:05:42 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02I5aHU036323; Wed, 2 Jan 2013 18:05:36 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02I5aGC036317; Wed, 2 Jan 2013 18:05:36 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021805.r02I5aGC036317@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:05:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244961 - head/tools/tools/ath/athdebug X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:05:42 -0000 Author: adrian Date: Wed Jan 2 18:05:31 2013 New Revision: 244961 URL: http://svnweb.freebsd.org/changeset/base/244961 Log: Fix some printf() formats. Found by: clang Modified: head/tools/tools/ath/athdebug/athdebug.c Modified: head/tools/tools/ath/athdebug/athdebug.c ============================================================================== --- head/tools/tools/ath/athdebug/athdebug.c Wed Jan 2 18:03:19 2013 (r244960) +++ head/tools/tools/ath/athdebug/athdebug.c Wed Jan 2 18:05:31 2013 (r244961) @@ -206,20 +206,20 @@ main(int argc, char *argv[]) bit = strtoul(cp, NULL, 0); else errx(1, "unknown flag %.*s", - tp-cp, cp); + (int) (tp-cp), cp); } ndebug = bit; } } while (*(cp = tp) != '\0'); } if (debug != ndebug) { - printf("%s: 0x%x => ", oid, debug); + printf("%s: 0x%llx => ", oid, (long long) debug); if (sysctlbyname(oid, NULL, NULL, &ndebug, sizeof(ndebug)) < 0) err(1, "sysctl-set(%s)", oid); - printf("0x%x", ndebug); + printf("0x%llx", (long long) ndebug); debug = ndebug; } else - printf("%s: 0x%x", oid, debug); + printf("%s: 0x%llx", oid, (long long) debug); sep = "<"; for (i = 0; i < N(flags); i++) if (debug & flags[i].bit) { From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:09:52 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id BF361A7F; Wed, 2 Jan 2013 18:09:52 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B121C1A42; Wed, 2 Jan 2013 18:09:52 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02I9ZKQ036978; Wed, 2 Jan 2013 18:09:52 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02I9ZVT036959; Wed, 2 Jan 2013 18:09:35 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021809.r02I9ZVT036959@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:09:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244962 - head/tools/tools/ath/athdecode X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:09:52 -0000 Author: adrian Date: Wed Jan 2 18:09:30 2013 New Revision: 244962 URL: http://svnweb.freebsd.org/changeset/base/244962 Log: * Add missing format specifier for err() * add missing exit(0) * Fix some operator evaluation complaints. Thanks to: clang Modified: head/tools/tools/ath/athdecode/main.c Modified: head/tools/tools/ath/athdecode/main.c ============================================================================== --- head/tools/tools/ath/athdecode/main.c Wed Jan 2 18:05:31 2013 (r244961) +++ head/tools/tools/ath/athdecode/main.c Wed Jan 2 18:09:30 2013 (r244962) @@ -69,7 +69,7 @@ main(int argc, char *argv[]) filename = argv[1]; fd = open(filename, O_RDONLY); if (fd < 0) - err(1, filename); + err(1, "open: %s", filename); if (fstat(fd, &sb) < 0) err(1, "fstat"); addr = mmap(0, sb.st_size, PROT_READ, MAP_PRIVATE|MAP_NOCORE, fd, 0); @@ -192,6 +192,7 @@ opmark(FILE *fd, int i, const struct ath fprintf(fd, "mark #%u value %u/0x%x", r->reg, r->val, r->val); break; } + exit(0); } #include "ah_devid.h" @@ -302,8 +303,8 @@ register_regs(struct dumpreg *chipregs, */ if (nr->addr == r->addr && (nr->name == r->name || - nr->name != NULL && r->name != NULL && - strcmp(nr->name, r->name) == 0)) { + (nr->name != NULL && r->name != NULL && + strcmp(nr->name, r->name) == 0))) { if (nr->srevMin < r->srevMin && (r->srevMin <= nr->srevMax && nr->srevMax+1 <= r->srevMax)) { From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:12:27 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 408BF159; Wed, 2 Jan 2013 18:12:27 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 329E11A8B; Wed, 2 Jan 2013 18:12:27 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02ICRBc037574; Wed, 2 Jan 2013 18:12:27 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02ICBae037474; Wed, 2 Jan 2013 18:12:11 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021812.r02ICBae037474@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:12:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244963 - head/tools/tools/ath/athkey X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:12:27 -0000 Author: adrian Date: Wed Jan 2 18:12:06 2013 New Revision: 244963 URL: http://svnweb.freebsd.org/changeset/base/244963 Log: * Add missing err() string formats; * Fix up a printf() type mismatch. Thanks to: clang Modified: head/tools/tools/ath/athkey/athkey.c Modified: head/tools/tools/ath/athkey/athkey.c ============================================================================== --- head/tools/tools/ath/athkey/athkey.c Wed Jan 2 18:09:30 2013 (r244962) +++ head/tools/tools/ath/athkey/athkey.c Wed Jan 2 18:12:06 2013 (r244963) @@ -83,8 +83,8 @@ getdata(const char *arg, u_int8_t *data, } if (len > maxlen) { fprintf(stderr, - "%s: too much data in %s, max %u bytes\n", - progname, arg, maxlen); + "%s: too much data in %s, max %llu bytes\n", + progname, arg, (unsigned long long) maxlen); } data[len++] = (b0<<4) | b1; } @@ -178,7 +178,7 @@ main(int argc, char *argv[]) atd.ad_in_data = (caddr_t) &keyix; atd.ad_in_size = sizeof(u_int16_t); if (ioctl(s, SIOCGATHDIAG, &atd) < 0) - err(1, atd.ad_name); + err(1, "ioctl: %s", atd.ad_name); return 0; case HAL_DIAG_SETKEY: if (argc != 3 && argc != 4) @@ -196,7 +196,7 @@ main(int argc, char *argv[]) atd.ad_in_data = (caddr_t) &setkey; atd.ad_in_size = sizeof(setkey); if (ioctl(s, SIOCGATHDIAG, &atd) < 0) - err(1, atd.ad_name); + err(1, "ioctl: %s", atd.ad_name); return 0; } return -1; From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:14:28 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 9877C2DF; Wed, 2 Jan 2013 18:14:28 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8A79B1AAD; Wed, 2 Jan 2013 18:14:28 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02IEQAq037876; Wed, 2 Jan 2013 18:14:26 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02IEQoT037875; Wed, 2 Jan 2013 18:14:26 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021814.r02IEQoT037875@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:14:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244964 - head/tools/tools/ath/athprom X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:14:28 -0000 Author: adrian Date: Wed Jan 2 18:14:26 2013 New Revision: 244964 URL: http://svnweb.freebsd.org/changeset/base/244964 Log: Add missing err() format strings. Thanks to: clang Modified: head/tools/tools/ath/athprom/athprom.c Modified: head/tools/tools/ath/athprom/athprom.c ============================================================================== --- head/tools/tools/ath/athprom/athprom.c Wed Jan 2 18:12:06 2013 (r244963) +++ head/tools/tools/ath/athprom/athprom.c Wed Jan 2 18:14:26 2013 (r244964) @@ -159,7 +159,7 @@ main(int argc, char *argv[]) atd.ad_out_data = (caddr_t) &eep; atd.ad_out_size = sizeof(eep); if (ioctl(s, SIOCGATHDIAG, &atd) < 0) - err(1, atd.ad_name); + err(1, "ioctl: %s", atd.ad_name); if (fd == NULL) { fd = opentemplate(DIR_TEMPLATE); if (fd == NULL) @@ -186,7 +186,7 @@ eeread(u_int16_t off) atd.ad_out_size = sizeof(eedata); atd.ad_out_data = (caddr_t) &eedata; if (ioctl(s, SIOCGATHDIAG, &atd) < 0) - err(1, atd.ad_name); + err(1, "ioctl: %s", atd.ad_name); return eedata; } @@ -204,7 +204,7 @@ eewrite(uint16_t off, uint16_t value) atd.ad_out_size = 0; atd.ad_out_data = NULL; if (ioctl(s, SIOCGATHDIAG, &atd) < 0) - err(1, atd.ad_name); + err(1, "ioctl: %s", atd.ad_name); } #define MAXID 128 @@ -332,7 +332,7 @@ setmode(int mode) + sizeof(EXPN_DATA_PER_CHANNEL_5112) * exp->numChannels; atd.ad_out_data = (caddr_t) malloc(atd.ad_out_size); if (ioctl(s, SIOCGATHDIAG, &atd) < 0) - err(1, atd.ad_name); + err(1, "ioctl: %s", atd.ad_name); exp->pChannels = (void *) atd.ad_out_data; exp->pDataPerChannel = (void *)((char *)atd.ad_out_data + roundup(sizeof(u_int16_t) * exp->numChannels, sizeof(u_int32_t))); From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:21:25 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id F17608BC; Wed, 2 Jan 2013 18:21:24 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id CA9961B41; Wed, 2 Jan 2013 18:21:24 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02ILOYY038826; Wed, 2 Jan 2013 18:21:24 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02ILOdA038825; Wed, 2 Jan 2013 18:21:24 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021821.r02ILOdA038825@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:21:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244965 - head/tools/tools/ath/athstats X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:21:25 -0000 Author: adrian Date: Wed Jan 2 18:21:24 2013 New Revision: 244965 URL: http://svnweb.freebsd.org/changeset/base/244965 Log: Fix up some warnings from clang. This still triggers a bug in clang.. Modified: head/tools/tools/ath/athstats/athstats.c Modified: head/tools/tools/ath/athstats/athstats.c ============================================================================== --- head/tools/tools/ath/athstats/athstats.c Wed Jan 2 18:14:26 2013 (r244964) +++ head/tools/tools/ath/athstats/athstats.c Wed Jan 2 18:21:24 2013 (r244965) @@ -490,7 +490,7 @@ ath_zerostats(struct athstatfoo *wf0) struct athstatfoo_p *wf = (struct athstatfoo_p *) wf0; if (ioctl(wf->s, SIOCZATHSTATS, &wf->ifr) < 0) - err(-1, wf->ifr.ifr_name); + err(-1, "ioctl: %s", wf->ifr.ifr_name); } static void @@ -498,21 +498,21 @@ ath_collect(struct athstatfoo_p *wf, str { wf->ifr.ifr_data = (caddr_t) &stats->ath; if (ioctl(wf->s, SIOCGATHSTATS, &wf->ifr) < 0) - err(1, wf->ifr.ifr_name); + err(1, "ioctl: %s", wf->ifr.ifr_name); #ifdef ATH_SUPPORT_ANI if (wf->optstats & ATHSTATS_ANI) { wf->atd.ad_id = 5; wf->atd.ad_out_data = (caddr_t) &stats->ani_state; wf->atd.ad_out_size = sizeof(stats->ani_state); if (ioctl(wf->s, SIOCGATHDIAG, &wf->atd) < 0) { - warn(wf->atd.ad_name); + warn("ioctl: %s", wf->atd.ad_name); wf->optstats &= ~ATHSTATS_ANI; } wf->atd.ad_id = 8; wf->atd.ad_out_data = (caddr_t) &stats->ani_stats; wf->atd.ad_out_size = sizeof(stats->ani_stats); if (ioctl(wf->s, SIOCGATHDIAG, &wf->atd) < 0) - warn(wf->atd.ad_name); + warn("ioctl: %s", wf->atd.ad_name); } #endif /* ATH_SUPPORT_ANI */ } @@ -574,12 +574,14 @@ ath_get_curstat(struct statfoo *sf, int switch (s) { case S_INPUT: snprintf(b, bs, "%lu", - (wf->cur.ath.ast_rx_packets - wf->total.ath.ast_rx_packets) - - (wf->cur.ath.ast_rx_mgt - wf->total.ath.ast_rx_mgt)); + (unsigned long) + ((wf->cur.ath.ast_rx_packets - wf->total.ath.ast_rx_packets) - + (wf->cur.ath.ast_rx_mgt - wf->total.ath.ast_rx_mgt))); return 1; case S_OUTPUT: snprintf(b, bs, "%lu", - wf->cur.ath.ast_tx_packets - wf->total.ath.ast_tx_packets); + (unsigned long) + (wf->cur.ath.ast_tx_packets - wf->total.ath.ast_tx_packets)); return 1; case S_RATE: snprintrate(b, bs, wf->cur.ath.ast_tx_rate); From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:26:33 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 1AE0BC19; Wed, 2 Jan 2013 18:26:33 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 0B3BE1BF7; Wed, 2 Jan 2013 18:26:33 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02IQWiH039419; Wed, 2 Jan 2013 18:26:32 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02IQWBu039418; Wed, 2 Jan 2013 18:26:32 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021826.r02IQWBu039418@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:26:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244966 - head/tools/tools/ath/athratestats X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:26:33 -0000 Author: adrian Date: Wed Jan 2 18:26:32 2013 New Revision: 244966 URL: http://svnweb.freebsd.org/changeset/base/244966 Log: Fix some clang warnings! Modified: head/tools/tools/ath/athratestats/main.c Modified: head/tools/tools/ath/athratestats/main.c ============================================================================== --- head/tools/tools/ath/athratestats/main.c Wed Jan 2 18:21:24 2013 (r244965) +++ head/tools/tools/ath/athratestats/main.c Wed Jan 2 18:26:32 2013 (r244966) @@ -118,9 +118,9 @@ ath_sample_stats(struct ath_ratestats *r uint32_t mask; int rix, y; - PRINTMSG("static_rix (%d) ratemask 0x%x\n", + PRINTMSG("static_rix (%d) ratemask 0x%llx\n", sn->static_rix, - sn->ratemask); + (long long) sn->ratemask); for (y = 0; y < NUM_PACKET_SIZE_BINS; y++) { PRINTATTR_ON(COLOR_PAIR(y+4) | A_BOLD); @@ -241,7 +241,7 @@ rate_node_stats(struct ath_ratestats *r, fprintf(stderr, "unexpected TLV len (got %d bytes, " "expected %d bytes\n", av->tlv_len, - sizeof(struct ath_rateioctl_rt)); + (int) sizeof(struct ath_rateioctl_rt)); exit(127); } rt = (void *) (buf + sizeof(struct ath_rateioctl_tlv)); @@ -260,7 +260,7 @@ rate_node_stats(struct ath_ratestats *r, fprintf(stderr, "unexpected TLV len (got %d bytes, " "expected %d bytes\n", av->tlv_len, - sizeof(struct sample_node)); + (int) sizeof(struct sample_node)); exit(127); } sn = (void *) (buf + sizeof(struct ath_rateioctl_tlv) + @@ -268,6 +268,8 @@ rate_node_stats(struct ath_ratestats *r, sizeof(struct ath_rateioctl_tlv)); ath_sample_stats(r, rt, sn); + + return (0); } static void From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:29:11 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id B26AAEF0; Wed, 2 Jan 2013 18:29:11 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id A42621C3A; Wed, 2 Jan 2013 18:29:11 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02ITB3f039730; Wed, 2 Jan 2013 18:29:11 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02ITBnA039729; Wed, 2 Jan 2013 18:29:11 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021829.r02ITBnA039729@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:29:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244967 - head/tools/tools/ath/athratestats X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:29:11 -0000 Author: adrian Date: Wed Jan 2 18:29:11 2013 New Revision: 244967 URL: http://svnweb.freebsd.org/changeset/base/244967 Log: Fix some conversions to keep clang happy. Modified: head/tools/tools/ath/athratestats/main.c Modified: head/tools/tools/ath/athratestats/main.c ============================================================================== --- head/tools/tools/ath/athratestats/main.c Wed Jan 2 18:26:32 2013 (r244966) +++ head/tools/tools/ath/athratestats/main.c Wed Jan 2 18:29:11 2013 (r244967) @@ -203,7 +203,7 @@ ath_setifname(struct ath_ratestats *r, c } static void -ath_setsta(struct ath_ratestats *r, const char *mac) +ath_setsta(struct ath_ratestats *r, uint8_t *mac) { memcpy(&r->re.is_u.macaddr, mac, sizeof(r->re.is_u.macaddr)); @@ -224,7 +224,7 @@ rate_node_stats(struct ath_ratestats *r, struct sample_node *sn = NULL; struct ath_rateioctl_rt *rt = NULL; int error = 0; - uint8_t *buf = r->re.buf; + uint8_t *buf = (uint8_t *) r->re.buf; /* * For now, hard-code the TLV order and contents. Ew! @@ -355,7 +355,7 @@ main(int argc, char *argv[]) if (buf == NULL) err(1, "calloc"); - r.re.buf = buf; + r.re.buf = (char *) buf; r.re.len = STATS_BUF_SIZE; r.s = socket(AF_INET, SOCK_DGRAM, 0); From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:29:54 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id E80B0E2; Wed, 2 Jan 2013 18:29:54 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id D9F5A1C4B; Wed, 2 Jan 2013 18:29:54 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02ITsOU039821; Wed, 2 Jan 2013 18:29:54 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02ITs1t039820; Wed, 2 Jan 2013 18:29:54 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021829.r02ITs1t039820@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:29:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244968 - head/tools/tools/ath/athsurvey X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:29:55 -0000 Author: adrian Date: Wed Jan 2 18:29:54 2013 New Revision: 244968 URL: http://svnweb.freebsd.org/changeset/base/244968 Log: Fix missing err() format string. Modified: head/tools/tools/ath/athsurvey/athsurvey.c Modified: head/tools/tools/ath/athsurvey/athsurvey.c ============================================================================== --- head/tools/tools/ath/athsurvey/athsurvey.c Wed Jan 2 18:29:11 2013 (r244967) +++ head/tools/tools/ath/athsurvey/athsurvey.c Wed Jan 2 18:29:54 2013 (r244968) @@ -66,7 +66,7 @@ get_survey_stats(int s, const char *ifna strncpy(atd.ad_name, ifname, sizeof(atd.ad_name)); if (ioctl(s, SIOCGATHDIAG, &atd) < 0) { - err(1, atd.ad_name); + err(1, "ioctl: %s", atd.ad_name); return (0); } return (1); From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:33:49 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 6EE8644C; Wed, 2 Jan 2013 18:33:49 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 60A481C89; Wed, 2 Jan 2013 18:33:49 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02IXnFg040459; Wed, 2 Jan 2013 18:33:49 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02IXnk0040457; Wed, 2 Jan 2013 18:33:49 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021833.r02IXnk0040457@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:33:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244969 - head/tools/tools/ath/ath_prom_read X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:33:49 -0000 Author: adrian Date: Wed Jan 2 18:33:48 2013 New Revision: 244969 URL: http://svnweb.freebsd.org/changeset/base/244969 Log: Add missing err() format string. Modified: head/tools/tools/ath/ath_prom_read/ath_prom_read.c Modified: head/tools/tools/ath/ath_prom_read/ath_prom_read.c ============================================================================== --- head/tools/tools/ath/ath_prom_read/ath_prom_read.c Wed Jan 2 18:29:54 2013 (r244968) +++ head/tools/tools/ath/ath_prom_read/ath_prom_read.c Wed Jan 2 18:33:48 2013 (r244969) @@ -123,7 +123,7 @@ main(int argc, char *argv[]) atd.ad_out_data = (caddr_t) eep; atd.ad_out_size = sizeof(eep); if (ioctl(s, SIOCGATHDIAG, &atd) < 0) - err(1, atd.ad_name); + err(1, "ioctl: %s", atd.ad_name); /* Dump file? Then just write to it */ if (dumpname != NULL) { From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 18:49:40 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id CB2CDA2B; Wed, 2 Jan 2013 18:49:40 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id BBFF91D55; Wed, 2 Jan 2013 18:49:40 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02IneVT042569; Wed, 2 Jan 2013 18:49:40 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02IneTJ042568; Wed, 2 Jan 2013 18:49:40 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301021849.r02IneTJ042568@svn.freebsd.org> From: Adrian Chadd Date: Wed, 2 Jan 2013 18:49:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244970 - head/tools/tools/ath/athstats X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 18:49:40 -0000 Author: adrian Date: Wed Jan 2 18:49:40 2013 New Revision: 244970 URL: http://svnweb.freebsd.org/changeset/base/244970 Log: Disable clang for athstats for now. Modified: head/tools/tools/ath/athstats/Makefile Modified: head/tools/tools/ath/athstats/Makefile ============================================================================== --- head/tools/tools/ath/athstats/Makefile Wed Jan 2 18:33:48 2013 (r244969) +++ head/tools/tools/ath/athstats/Makefile Wed Jan 2 18:49:40 2013 (r244970) @@ -4,6 +4,10 @@ PROG= athstats +# Because of a clang preprocessor parser limitation causing this +# to not compile, use gcc for now. +CC= gcc + SRCS= main.c statfoo.c athstats.c opt_ah.h ah_osdep.h CLEANFILES+= opt_ah.h From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 19:01:24 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 8EAD3D86; Wed, 2 Jan 2013 19:01:24 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 6F96F1DCA; Wed, 2 Jan 2013 19:01:24 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02J1O23044333; Wed, 2 Jan 2013 19:01:24 GMT (envelope-from jkim@svn.freebsd.org) Received: (from jkim@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02J1LZM044314; Wed, 2 Jan 2013 19:01:21 GMT (envelope-from jkim@svn.freebsd.org) Message-Id: <201301021901.r02J1LZM044314@svn.freebsd.org> From: Jung-uk Kim Date: Wed, 2 Jan 2013 19:01:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r244971 - in vendor-sys/acpica/dist: . generate/unix/acpibin generate/unix/acpiexec generate/unix/acpinames generate/unix/iasl source/common source/compiler source/components/debugger s... X-SVN-Group: vendor-sys MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 19:01:24 -0000 Author: jkim Date: Wed Jan 2 19:01:21 2013 New Revision: 244971 URL: http://svnweb.freebsd.org/changeset/base/244971 Log: Import ACPICA 20121220. Added: vendor-sys/acpica/dist/source/compiler/aslfileio.c (contents, props changed) vendor-sys/acpica/dist/source/compiler/aslhex.c (contents, props changed) vendor-sys/acpica/dist/source/compiler/aslmethod.c (contents, props changed) vendor-sys/acpica/dist/source/compiler/aslnamesp.c (contents, props changed) vendor-sys/acpica/dist/source/compiler/aslxref.c (contents, props changed) vendor-sys/acpica/dist/source/components/debugger/dbconvert.c (contents, props changed) vendor-sys/acpica/dist/source/components/events/evhandler.c (contents, props changed) vendor-sys/acpica/dist/source/components/namespace/nsprepkg.c (contents, props changed) vendor-sys/acpica/dist/source/components/parser/psobject.c (contents, props changed) vendor-sys/acpica/dist/source/components/parser/psopinfo.c (contents, props changed) vendor-sys/acpica/dist/source/components/resources/rsdumpinfo.c (contents, props changed) vendor-sys/acpica/dist/source/components/utilities/utownerid.c (contents, props changed) vendor-sys/acpica/dist/source/components/utilities/utstring.c (contents, props changed) Modified: vendor-sys/acpica/dist/changes.txt vendor-sys/acpica/dist/generate/unix/acpibin/Makefile vendor-sys/acpica/dist/generate/unix/acpiexec/Makefile vendor-sys/acpica/dist/generate/unix/acpinames/Makefile vendor-sys/acpica/dist/generate/unix/iasl/Makefile vendor-sys/acpica/dist/source/common/adisasm.c vendor-sys/acpica/dist/source/common/dmrestag.c vendor-sys/acpica/dist/source/common/dmtable.c vendor-sys/acpica/dist/source/common/dmtbdump.c vendor-sys/acpica/dist/source/common/dmtbinfo.c vendor-sys/acpica/dist/source/compiler/aslcompile.c vendor-sys/acpica/dist/source/compiler/aslcompiler.h vendor-sys/acpica/dist/source/compiler/aslcompiler.y vendor-sys/acpica/dist/source/compiler/aslfiles.c vendor-sys/acpica/dist/source/compiler/asllisting.c vendor-sys/acpica/dist/source/compiler/asllookup.c vendor-sys/acpica/dist/source/compiler/aslmessages.h vendor-sys/acpica/dist/source/compiler/aslopcodes.c vendor-sys/acpica/dist/source/compiler/aslopt.c vendor-sys/acpica/dist/source/compiler/aslstartup.c vendor-sys/acpica/dist/source/compiler/aslutils.c vendor-sys/acpica/dist/source/compiler/aslwalks.c vendor-sys/acpica/dist/source/compiler/dtcompile.c vendor-sys/acpica/dist/source/compiler/dtcompiler.h vendor-sys/acpica/dist/source/compiler/dtio.c vendor-sys/acpica/dist/source/compiler/dtsubtable.c vendor-sys/acpica/dist/source/compiler/dttable.c vendor-sys/acpica/dist/source/compiler/dttemplate.h vendor-sys/acpica/dist/source/components/debugger/dbcmds.c vendor-sys/acpica/dist/source/components/debugger/dbexec.c vendor-sys/acpica/dist/source/components/debugger/dbinput.c vendor-sys/acpica/dist/source/components/debugger/dbmethod.c vendor-sys/acpica/dist/source/components/debugger/dbnames.c vendor-sys/acpica/dist/source/components/debugger/dbutils.c vendor-sys/acpica/dist/source/components/debugger/dbxface.c vendor-sys/acpica/dist/source/components/disassembler/dmdeferred.c vendor-sys/acpica/dist/source/components/disassembler/dmnames.c vendor-sys/acpica/dist/source/components/disassembler/dmresrc.c vendor-sys/acpica/dist/source/components/dispatcher/dsmethod.c vendor-sys/acpica/dist/source/components/dispatcher/dsobject.c vendor-sys/acpica/dist/source/components/dispatcher/dsutils.c vendor-sys/acpica/dist/source/components/dispatcher/dswexec.c vendor-sys/acpica/dist/source/components/events/evgpe.c vendor-sys/acpica/dist/source/components/events/evgpeblk.c vendor-sys/acpica/dist/source/components/events/evgpeinit.c vendor-sys/acpica/dist/source/components/events/evregion.c vendor-sys/acpica/dist/source/components/events/evsci.c vendor-sys/acpica/dist/source/components/executer/exconfig.c vendor-sys/acpica/dist/source/components/executer/exconvrt.c vendor-sys/acpica/dist/source/components/executer/exdump.c vendor-sys/acpica/dist/source/components/executer/exprep.c vendor-sys/acpica/dist/source/components/executer/exstore.c vendor-sys/acpica/dist/source/components/executer/exstoren.c vendor-sys/acpica/dist/source/components/executer/exutils.c vendor-sys/acpica/dist/source/components/hardware/hwacpi.c vendor-sys/acpica/dist/source/components/hardware/hwsleep.c vendor-sys/acpica/dist/source/components/hardware/hwtimer.c vendor-sys/acpica/dist/source/components/hardware/hwxface.c vendor-sys/acpica/dist/source/components/hardware/hwxfsleep.c vendor-sys/acpica/dist/source/components/namespace/nsdump.c vendor-sys/acpica/dist/source/components/namespace/nsinit.c vendor-sys/acpica/dist/source/components/namespace/nspredef.c vendor-sys/acpica/dist/source/components/namespace/nsutils.c vendor-sys/acpica/dist/source/components/namespace/nsxfeval.c vendor-sys/acpica/dist/source/components/namespace/nsxfname.c vendor-sys/acpica/dist/source/components/parser/psargs.c vendor-sys/acpica/dist/source/components/parser/psloop.c vendor-sys/acpica/dist/source/components/parser/psopcode.c vendor-sys/acpica/dist/source/components/parser/psutils.c vendor-sys/acpica/dist/source/components/resources/rsdump.c vendor-sys/acpica/dist/source/components/resources/rsirq.c vendor-sys/acpica/dist/source/components/resources/rslist.c vendor-sys/acpica/dist/source/components/resources/rsserial.c vendor-sys/acpica/dist/source/components/resources/rsutils.c vendor-sys/acpica/dist/source/components/resources/rsxface.c vendor-sys/acpica/dist/source/components/tables/tbxfload.c vendor-sys/acpica/dist/source/components/utilities/utaddress.c vendor-sys/acpica/dist/source/components/utilities/utdebug.c vendor-sys/acpica/dist/source/components/utilities/utdelete.c vendor-sys/acpica/dist/source/components/utilities/utmisc.c vendor-sys/acpica/dist/source/components/utilities/utobject.c vendor-sys/acpica/dist/source/components/utilities/utresrc.c vendor-sys/acpica/dist/source/include/acconfig.h vendor-sys/acpica/dist/source/include/acdebug.h vendor-sys/acpica/dist/source/include/acdisasm.h vendor-sys/acpica/dist/source/include/acevents.h vendor-sys/acpica/dist/source/include/acglobal.h vendor-sys/acpica/dist/source/include/acinterp.h vendor-sys/acpica/dist/source/include/acmacros.h vendor-sys/acpica/dist/source/include/acnamesp.h vendor-sys/acpica/dist/source/include/acoutput.h vendor-sys/acpica/dist/source/include/acparser.h vendor-sys/acpica/dist/source/include/acpixf.h vendor-sys/acpica/dist/source/include/acresrc.h vendor-sys/acpica/dist/source/include/acrestyp.h vendor-sys/acpica/dist/source/include/actbl2.h vendor-sys/acpica/dist/source/include/actbl3.h vendor-sys/acpica/dist/source/include/actypes.h vendor-sys/acpica/dist/source/include/acutils.h vendor-sys/acpica/dist/source/include/platform/acenv.h vendor-sys/acpica/dist/source/include/platform/acgcc.h vendor-sys/acpica/dist/source/os_specific/service_layers/osunixxf.c vendor-sys/acpica/dist/source/os_specific/service_layers/oswinxf.c vendor-sys/acpica/dist/source/tools/acpiexec/aeexec.c vendor-sys/acpica/dist/source/tools/acpihelp/ahaslops.c vendor-sys/acpica/dist/source/tools/acpisrc/astable.c Modified: vendor-sys/acpica/dist/changes.txt ============================================================================== --- vendor-sys/acpica/dist/changes.txt Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/changes.txt Wed Jan 2 19:01:21 2013 (r244971) @@ -1,4 +1,91 @@ ---------------------------------------- +20 December 2012. Summary of changes for version 20121220: + +This release is available at https://www.acpica.org/downloads +The ACPI 5.0 specification is available at www.acpi.info + +1) ACPICA Kernel-resident Subsystem: + +Implemented a new interface, AcpiWalkResourceBuffer. This interface is an +alternate entry point for AcpiWalkResources and improves the usability of +the resource manager by accepting as input a buffer containing the output +of either a _CRS, _PRS, or _AEI method. The key functionality is that the +input buffer is not deleted by this interface so that it can be used by +the host later. See the ACPICA reference for details. + +Interpreter: Add a warning if a 64-bit constant appears in a 32-bit table +(DSDT version < 2). The constant will be truncated and this warning +reflects that behavior. + +Resource Manager: Add support for the new ACPI 5.0 wake bit in the IRQ, +ExtendedInterrupt, and GpioInt descriptors. This change adds support to +both get and set the new wake bit in these descriptors, separately from +the existing share bit. Reported by Aaron Lu. + +Interpreter: Fix Store() when an implicit conversion is not possible. For +example, in the cases such as a store of a string to an existing package +object, implement the store as a CopyObject(). This is a small departure +from the ACPI specification which states that the control method should be +aborted in this case. However, the ASLTS suite depends on this behavior. + +Performance improvement for the various FUNCTION_TRACE and DEBUG_PRINT +macros: check if debug output is currently enabled as soon as possible to +minimize performance impact if debug is in fact not enabled. + +Source code restructuring: Cleanup to improve modularity. The following +new files have been added: dbconvert.c, evhandler.c, nsprepkg.c, +psopinfo.c, psobject.c, rsdumpinfo.c, utstring.c, and utownerid.c. +Associated makefiles and project files have been updated. + +Changed an exception code for LoadTable operator. For the case where one +of the input strings is too long, change the returned exception code from +AE_BAD_PARAMETER to AE_AML_STRING_LIMIT. + +Fixed a possible memory leak in dispatcher error path. On error, delete +the mutex object created during method mutex creation. Reported by +tim.gardner@canonical.com. + +Example Code and Data Size: These are the sizes for the OS-independent +acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The +debug version of the code includes the debug output trace mechanism and +has a much larger code and data size. + + Previous Release: + Non-Debug Version: 94.3K Code, 25.3K Data, 119.6K Total + Debug Version: 175.5K Code, 74.5K Data, 250.0K Total + Current Release: + Non-Debug Version: 94.5K Code, 25.5K Data, 120.0K Total + Debug Version: 182.2K Code, 74.9K Data, 257.1K Total + + +2) iASL Compiler/Disassembler and Tools: + +iASL: Disallow a method call as argument to the ObjectType ASL operator. +This change tracks an errata to the ACPI 5.0 document. The AML grammar +will not allow the interpreter to differentiate between a method and a +method invocation when these are used as an argument to the ObjectType +operator. The ACPI specification change is to disallow a method invocation +(UserTerm) for the ObjectType operator. + +Finish support for the TPM2 and CSRT tables in the headers, table +compiler, and disassembler. + +Unix user-space OSL: Fix a problem with WaitSemaphore where the timeout +always expires immediately if the semaphore is not available. The original +code was using a relative-time timeout, but sem_timedwait requires the use +of an absolute time. + +iASL: Added a remark if the Timer() operator is used within a 32-bit +table. This operator returns a 64-bit time value that will be truncated +within a 32-bit table. + +iASL Source code restructuring: Cleanup to improve modularity. The +following new files have been added: aslhex.c, aslxref.c, aslnamesp.c, +aslmethod.c, and aslfileio.c. Associated makefiles and project files have +been updated. + + +---------------------------------------- 14 November 2012. Summary of changes for version 20121114: This release is available at https://www.acpica.org/downloads Modified: vendor-sys/acpica/dist/generate/unix/acpibin/Makefile ============================================================================== --- vendor-sys/acpica/dist/generate/unix/acpibin/Makefile Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/generate/unix/acpibin/Makefile Wed Jan 2 19:01:21 2013 (r244971) @@ -40,6 +40,7 @@ OBJECTS = \ $(OBJDIR)/utmisc.o \ $(OBJDIR)/utmutex.o \ $(OBJDIR)/utstate.o \ + $(OBJDIR)/utstring.o \ $(OBJDIR)/utxferror.o \ $(OBJDIR)/osunixxf.o \ $(OBJDIR)/getopt.o Modified: vendor-sys/acpica/dist/generate/unix/acpiexec/Makefile ============================================================================== --- vendor-sys/acpica/dist/generate/unix/acpiexec/Makefile Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/generate/unix/acpiexec/Makefile Wed Jan 2 19:01:21 2013 (r244971) @@ -44,6 +44,7 @@ OBJECTS = \ $(OBJDIR)/aemain.o \ $(OBJDIR)/aetables.o \ $(OBJDIR)/dbcmds.o \ + $(OBJDIR)/dbconvert.o \ $(OBJDIR)/dbdisply.o \ $(OBJDIR)/dbexec.o \ $(OBJDIR)/dbfileio.o \ @@ -85,6 +86,7 @@ OBJECTS = \ $(OBJDIR)/evgpeblk.o \ $(OBJDIR)/evgpeinit.o \ $(OBJDIR)/evgpeutil.o \ + $(OBJDIR)/evhandler.o \ $(OBJDIR)/evmisc.o \ $(OBJDIR)/evregion.o \ $(OBJDIR)/evrgnini.o \ @@ -138,6 +140,7 @@ OBJECTS = \ $(OBJDIR)/nsobject.o \ $(OBJDIR)/nsparse.o \ $(OBJDIR)/nspredef.o \ + $(OBJDIR)/nsprepkg.o \ $(OBJDIR)/nsrepair.o \ $(OBJDIR)/nsrepair2.o \ $(OBJDIR)/nssearch.o \ @@ -149,7 +152,9 @@ OBJECTS = \ $(OBJDIR)/osunixxf.o \ $(OBJDIR)/psargs.o \ $(OBJDIR)/psloop.o \ + $(OBJDIR)/psobject.o \ $(OBJDIR)/psopcode.o \ + $(OBJDIR)/psopinfo.o \ $(OBJDIR)/psparse.o \ $(OBJDIR)/psscope.o \ $(OBJDIR)/pstree.o \ @@ -160,6 +165,7 @@ OBJECTS = \ $(OBJDIR)/rscalc.o \ $(OBJDIR)/rscreate.o \ $(OBJDIR)/rsdump.o \ + $(OBJDIR)/rsdumpinfo.o \ $(OBJDIR)/rsinfo.o \ $(OBJDIR)/rsio.o \ $(OBJDIR)/rsirq.o \ @@ -194,8 +200,10 @@ OBJECTS = \ $(OBJDIR)/utmutex.o \ $(OBJDIR)/utobject.o \ $(OBJDIR)/utosi.o \ + $(OBJDIR)/utownerid.o \ $(OBJDIR)/utresrc.o \ $(OBJDIR)/utstate.o \ + $(OBJDIR)/utstring.o \ $(OBJDIR)/uttrack.o \ $(OBJDIR)/utxface.o \ $(OBJDIR)/utxferror.o \ Modified: vendor-sys/acpica/dist/generate/unix/acpinames/Makefile ============================================================================== --- vendor-sys/acpica/dist/generate/unix/acpinames/Makefile Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/generate/unix/acpinames/Makefile Wed Jan 2 19:01:21 2013 (r244971) @@ -70,7 +70,9 @@ OBJECTS = \ $(OBJDIR)/osunixxf.o \ $(OBJDIR)/psargs.o \ $(OBJDIR)/psloop.o \ + $(OBJDIR)/psobject.o \ $(OBJDIR)/psopcode.o \ + $(OBJDIR)/psopinfo.o \ $(OBJDIR)/psparse.o \ $(OBJDIR)/psscope.o \ $(OBJDIR)/pstree.o \ @@ -98,7 +100,9 @@ OBJECTS = \ $(OBJDIR)/utmutex.o \ $(OBJDIR)/utobject.o \ $(OBJDIR)/utosi.o \ + $(OBJDIR)/utownerid.o \ $(OBJDIR)/utstate.o \ + $(OBJDIR)/utstring.o \ $(OBJDIR)/utxface.o \ $(OBJDIR)/utxferror.o \ $(OBJDIR)/utxfinit.o Modified: vendor-sys/acpica/dist/generate/unix/iasl/Makefile ============================================================================== --- vendor-sys/acpica/dist/generate/unix/iasl/Makefile Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/generate/unix/iasl/Makefile Wed Jan 2 19:01:21 2013 (r244971) @@ -53,13 +53,17 @@ OBJECTS = \ $(OBJDIR)/aslcompile.o \ $(OBJDIR)/aslerror.o \ $(OBJDIR)/aslfiles.o \ + $(OBJDIR)/aslfileio.o \ $(OBJDIR)/aslfold.o \ + $(OBJDIR)/aslhex.o \ $(OBJDIR)/asllength.o \ $(OBJDIR)/asllisting.o \ $(OBJDIR)/aslload.o \ $(OBJDIR)/asllookup.o \ $(OBJDIR)/aslmain.o \ $(OBJDIR)/aslmap.o \ + $(OBJDIR)/aslmethod.o \ + $(OBJDIR)/aslnamesp.o \ $(OBJDIR)/aslopcodes.o \ $(OBJDIR)/asloperands.o \ $(OBJDIR)/aslopt.o \ @@ -80,6 +84,7 @@ OBJECTS = \ $(OBJDIR)/aslutils.o \ $(OBJDIR)/asluuid.o \ $(OBJDIR)/aslwalks.o \ + $(OBJDIR)/aslxref.o \ $(OBJDIR)/dtcompile.o \ $(OBJDIR)/dtexpress.o \ $(OBJDIR)/dtfield.o \ @@ -154,7 +159,9 @@ OBJECTS = \ $(OBJDIR)/prutils.o \ $(OBJDIR)/psargs.o \ $(OBJDIR)/psloop.o \ + $(OBJDIR)/psobject.o \ $(OBJDIR)/psopcode.o \ + $(OBJDIR)/psopinfo.o \ $(OBJDIR)/psparse.o \ $(OBJDIR)/psscope.o \ $(OBJDIR)/pstree.o \ @@ -179,8 +186,10 @@ OBJECTS = \ $(OBJDIR)/utmisc.o \ $(OBJDIR)/utmutex.o \ $(OBJDIR)/utobject.o \ + $(OBJDIR)/utownerid.o \ $(OBJDIR)/utresrc.o \ $(OBJDIR)/utstate.o \ + $(OBJDIR)/utstring.o \ $(OBJDIR)/utxface.o \ $(OBJDIR)/utxferror.o Modified: vendor-sys/acpica/dist/source/common/adisasm.c ============================================================================== --- vendor-sys/acpica/dist/source/common/adisasm.c Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/source/common/adisasm.c Wed Jan 2 19:01:21 2013 (r244971) @@ -69,11 +69,11 @@ extern int AslCompilerd #endif ACPI_STATUS -LsDisplayNamespace ( +NsDisplayNamespace ( void); void -LsSetupNsList ( +NsSetupNamespaceListing ( void *Handle); @@ -429,8 +429,8 @@ AdAmlDisassemble ( { AcpiOsPrintf ("/**** Before second load\n"); - LsSetupNsList (File); - LsDisplayNamespace (); + NsSetupNamespaceListing (File); + NsDisplayNamespace (); AcpiOsPrintf ("*****/\n"); } @@ -498,8 +498,8 @@ AdAmlDisassemble ( if (AslCompilerdebug) { AcpiOsPrintf ("/**** After second load and resource conversion\n"); - LsSetupNsList (File); - LsDisplayNamespace (); + NsSetupNamespaceListing (File); + NsDisplayNamespace (); AcpiOsPrintf ("*****/\n"); AcpiDmDumpTree (AcpiGbl_ParseOpRoot); @@ -549,8 +549,8 @@ Cleanup: { if (AslCompilerdebug) /* Display final namespace, with transforms */ { - LsSetupNsList (File); - LsDisplayNamespace (); + NsSetupNamespaceListing (File); + NsDisplayNamespace (); } fclose (File); Modified: vendor-sys/acpica/dist/source/common/dmrestag.c ============================================================================== --- vendor-sys/acpica/dist/source/common/dmrestag.c Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/source/common/dmrestag.c Wed Jan 2 19:01:21 2013 (r244971) @@ -89,7 +89,7 @@ AcpiDmAddResourceToNamespace ( UINT32 Length, UINT32 Offset, UINT8 ResourceIndex, - void *Context); + void **Context); static void AcpiDmAddResourcesToNamespace ( @@ -993,7 +993,7 @@ AcpiDmAddResourcesToNamespace ( */ AcpiUtWalkAmlResources (NULL, (UINT8 *) NextOp->Named.Data, (ACPI_SIZE) NextOp->Common.Value.Integer, - AcpiDmAddResourceToNamespace, BufferNode); + AcpiDmAddResourceToNamespace, (void **) BufferNode); } @@ -1019,7 +1019,7 @@ AcpiDmAddResourceToNamespace ( UINT32 Length, UINT32 Offset, UINT8 ResourceIndex, - void *Context) + void **Context) { ACPI_STATUS Status; ACPI_GENERIC_STATE ScopeInfo; Modified: vendor-sys/acpica/dist/source/common/dmtable.c ============================================================================== --- vendor-sys/acpica/dist/source/common/dmtable.c Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/source/common/dmtable.c Wed Jan 2 19:01:21 2013 (r244971) @@ -281,7 +281,7 @@ ACPI_DMTABLE_DATA AcpiDmTableData[] = {ACPI_SIG_BGRT, AcpiDmTableInfoBgrt, NULL, NULL, TemplateBgrt, "Boot Graphics Resource Table"}, {ACPI_SIG_BOOT, AcpiDmTableInfoBoot, NULL, NULL, TemplateBoot, "Simple Boot Flag Table"}, {ACPI_SIG_CPEP, NULL, AcpiDmDumpCpep, DtCompileCpep, TemplateCpep, "Corrected Platform Error Polling table"}, - {ACPI_SIG_CSRT, NULL, AcpiDmDumpCsrt, NULL, NULL, "Core System Resource Table"}, + {ACPI_SIG_CSRT, NULL, AcpiDmDumpCsrt, DtCompileCsrt, TemplateCsrt, "Core System Resource Table"}, {ACPI_SIG_DBG2, NULL, AcpiDmDumpDbg2, NULL, NULL, "Debug Port table type 2"}, {ACPI_SIG_DBGP, AcpiDmTableInfoDbgp, NULL, NULL, TemplateDbgp, "Debug Port table"}, {ACPI_SIG_DMAR, NULL, AcpiDmDumpDmar, DtCompileDmar, TemplateDmar, "DMA Remapping table"}, @@ -310,6 +310,7 @@ ACPI_DMTABLE_DATA AcpiDmTableData[] = {ACPI_SIG_SPMI, AcpiDmTableInfoSpmi, NULL, NULL, TemplateSpmi, "Server Platform Management Interface table"}, {ACPI_SIG_SRAT, NULL, AcpiDmDumpSrat, DtCompileSrat, TemplateSrat, "System Resource Affinity Table"}, {ACPI_SIG_TCPA, AcpiDmTableInfoTcpa, NULL, NULL, TemplateTcpa, "Trusted Computing Platform Alliance table"}, + {ACPI_SIG_TPM2, AcpiDmTableInfoTpm2, NULL, NULL, TemplateTpm2, "Trusted Platform Module hardware interface table"}, {ACPI_SIG_UEFI, AcpiDmTableInfoUefi, NULL, DtCompileUefi, TemplateUefi, "UEFI Boot Optimization Table"}, {ACPI_SIG_WAET, AcpiDmTableInfoWaet, NULL, NULL, TemplateWaet, "Windows ACPI Emulated Devices Table"}, {ACPI_SIG_WDAT, NULL, AcpiDmDumpWdat, DtCompileWdat, TemplateWdat, "Watchdog Action Table"}, Modified: vendor-sys/acpica/dist/source/common/dmtbdump.c ============================================================================== --- vendor-sys/acpica/dist/source/common/dmtbdump.c Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/source/common/dmtbdump.c Wed Jan 2 19:01:21 2013 (r244971) @@ -614,6 +614,7 @@ AcpiDmDumpCsrt ( { ACPI_STATUS Status; ACPI_CSRT_GROUP *SubTable; + ACPI_CSRT_SHARED_INFO *SharedInfoTable; ACPI_CSRT_DESCRIPTOR *SubSubTable; UINT32 Length = Table->Length; UINT32 Offset = sizeof (ACPI_TABLE_CSRT); @@ -629,6 +630,8 @@ AcpiDmDumpCsrt ( SubTable = ACPI_ADD_PTR (ACPI_CSRT_GROUP, Table, Offset); while (Offset < Table->Length) { + /* Resource group subtable */ + AcpiOsPrintf ("\n"); Status = AcpiDmDumpTable (Length, Offset, SubTable, SubTable->Length, AcpiDmTableInfoCsrt0); @@ -637,15 +640,23 @@ AcpiDmDumpCsrt ( return; } + /* Shared info subtable (One per resource group) */ + SubOffset = sizeof (ACPI_CSRT_GROUP); + SharedInfoTable = ACPI_ADD_PTR (ACPI_CSRT_SHARED_INFO, Table, + Offset + SubOffset); - /* Shared resource group info buffer */ + AcpiOsPrintf ("\n"); + Status = AcpiDmDumpTable (Length, Offset + SubOffset, SharedInfoTable, + sizeof (ACPI_CSRT_SHARED_INFO), AcpiDmTableInfoCsrt1); + if (ACPI_FAILURE (Status)) + { + return; + } - AcpiDmDumpBuffer (SubTable, SubOffset, SubTable->InfoLength, - Offset+SubOffset, "Shared Data"); - SubOffset += SubTable->InfoLength; + SubOffset += SubTable->SharedInfoLength; - /* Sub-Sub-tables (Resource Descriptors) */ + /* Sub-Subtables (Resource Descriptors) */ SubSubTable = ACPI_ADD_PTR (ACPI_CSRT_DESCRIPTOR, Table, Offset + SubOffset); @@ -655,7 +666,7 @@ AcpiDmDumpCsrt ( { AcpiOsPrintf ("\n"); Status = AcpiDmDumpTable (Length, Offset + SubOffset, SubSubTable, - SubSubTable->Length, AcpiDmTableInfoCsrt1); + SubSubTable->Length, AcpiDmTableInfoCsrt2); if (ACPI_FAILURE (Status)) { return; @@ -671,7 +682,7 @@ AcpiDmDumpCsrt ( Offset + SubOffset + SubSubOffset, "ResourceInfo"); SubSubOffset += InfoLength; - /* Point to next sub-sub-table */ + /* Point to next sub-subtable */ SubOffset += SubSubTable->Length; SubSubTable = ACPI_ADD_PTR (ACPI_CSRT_DESCRIPTOR, SubSubTable, Modified: vendor-sys/acpica/dist/source/common/dmtbinfo.c ============================================================================== --- vendor-sys/acpica/dist/source/common/dmtbinfo.c Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/source/common/dmtbinfo.c Wed Jan 2 19:01:21 2013 (r244971) @@ -111,6 +111,7 @@ #define ACPI_SPMI_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_SPMI,f) #define ACPI_SRAT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_SRAT,f) #define ACPI_TCPA_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_TCPA,f) +#define ACPI_TPM2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_TPM2,f) #define ACPI_UEFI_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_UEFI,f) #define ACPI_WAET_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_WAET,f) #define ACPI_WDAT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_WDAT,f) @@ -128,7 +129,8 @@ #define ACPI_ASF4_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_ADDRESS,f) #define ACPI_CPEP0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CPEP_POLLING,f) #define ACPI_CSRT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CSRT_GROUP,f) -#define ACPI_CSRT1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CSRT_DESCRIPTOR,f) +#define ACPI_CSRT1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CSRT_SHARED_INFO,f) +#define ACPI_CSRT2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CSRT_DESCRIPTOR,f) #define ACPI_DBG20_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DBG2_DEVICE,f) #define ACPI_DMARS_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DMAR_DEVICE_SCOPE,f) #define ACPI_DMAR0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DMAR_HARDWARE_UNIT,f) @@ -662,18 +664,38 @@ ACPI_DMTABLE_INFO AcpiDmTableI {ACPI_DMT_UINT16, ACPI_CSRT0_OFFSET (SubdeviceId), "Subdevice ID", 0}, {ACPI_DMT_UINT16, ACPI_CSRT0_OFFSET (Revision), "Revision", 0}, {ACPI_DMT_UINT16, ACPI_CSRT0_OFFSET (Reserved), "Reserved", 0}, - {ACPI_DMT_UINT32, ACPI_CSRT0_OFFSET (InfoLength), "InfoLength", 0}, + {ACPI_DMT_UINT32, ACPI_CSRT0_OFFSET (SharedInfoLength), "Shared Info Length", 0}, ACPI_DMT_TERMINATOR }; -/* Resource Descriptor subtable */ +/* Shared Info subtable */ ACPI_DMTABLE_INFO AcpiDmTableInfoCsrt1[] = { - {ACPI_DMT_UINT32, ACPI_CSRT1_OFFSET (Length), "Length", 0}, - {ACPI_DMT_UINT16, ACPI_CSRT1_OFFSET (Type), "Type", 0}, - {ACPI_DMT_UINT16, ACPI_CSRT1_OFFSET (Subtype), "Subtype", 0}, - {ACPI_DMT_UINT32, ACPI_CSRT1_OFFSET (Uid), "UID", 0}, + {ACPI_DMT_UINT16, ACPI_CSRT1_OFFSET (MajorVersion), "Major Version", 0}, + {ACPI_DMT_UINT16, ACPI_CSRT1_OFFSET (MinorVersion), "Minor Version", 0}, + {ACPI_DMT_UINT32, ACPI_CSRT1_OFFSET (MmioBaseLow), "MMIO Base Address Low", 0}, + {ACPI_DMT_UINT32, ACPI_CSRT1_OFFSET (MmioBaseHigh), "MMIO Base Address High", 0}, + {ACPI_DMT_UINT32, ACPI_CSRT1_OFFSET (GsiInterrupt), "GSI Interrupt", 0}, + {ACPI_DMT_UINT8, ACPI_CSRT1_OFFSET (InterruptPolarity), "Interrupt Polarity", 0}, + {ACPI_DMT_UINT8, ACPI_CSRT1_OFFSET (InterruptMode), "Interrupt Mode", 0}, + {ACPI_DMT_UINT8, ACPI_CSRT1_OFFSET (NumChannels), "Num Channels", 0}, + {ACPI_DMT_UINT8, ACPI_CSRT1_OFFSET (DmaAddressWidth), "DMA Address Width", 0}, + {ACPI_DMT_UINT16, ACPI_CSRT1_OFFSET (BaseRequestLine), "Base Request Line", 0}, + {ACPI_DMT_UINT16, ACPI_CSRT1_OFFSET (NumHandshakeSignals), "Num Handshake Signals", 0}, + {ACPI_DMT_UINT32, ACPI_CSRT1_OFFSET (MaxBlockSize), "Max Block Size", 0}, + ACPI_DMT_TERMINATOR +}; + + +/* Resource Descriptor subtable */ + +ACPI_DMTABLE_INFO AcpiDmTableInfoCsrt2[] = +{ + {ACPI_DMT_UINT32, ACPI_CSRT2_OFFSET (Length), "Length", 0}, + {ACPI_DMT_UINT16, ACPI_CSRT2_OFFSET (Type), "Type", 0}, + {ACPI_DMT_UINT16, ACPI_CSRT2_OFFSET (Subtype), "Subtype", 0}, + {ACPI_DMT_UINT32, ACPI_CSRT2_OFFSET (Uid), "UID", 0}, ACPI_DMT_TERMINATOR }; @@ -1984,6 +2006,21 @@ ACPI_DMTABLE_INFO AcpiDmTableI /******************************************************************************* * + * TPM2 - Trusted Platform Module (TPM) 2.0 Hardware Interface Table + * + ******************************************************************************/ + +ACPI_DMTABLE_INFO AcpiDmTableInfoTpm2[] = +{ + {ACPI_DMT_UINT32, ACPI_TPM2_OFFSET (Flags), "Flags", 0}, + {ACPI_DMT_UINT64, ACPI_TPM2_OFFSET (ControlAddress), "Control Address", 0}, + {ACPI_DMT_UINT32, ACPI_TPM2_OFFSET (StartMethod), "Start Method", 0}, + ACPI_DMT_TERMINATOR +}; + + +/******************************************************************************* + * * UEFI - UEFI Boot optimization Table * ******************************************************************************/ Modified: vendor-sys/acpica/dist/source/compiler/aslcompile.c ============================================================================== --- vendor-sys/acpica/dist/source/compiler/aslcompile.c Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/source/compiler/aslcompile.c Wed Jan 2 19:01:21 2013 (r244971) @@ -617,7 +617,7 @@ CmDoCompile ( /* Namespace cross-reference */ AslGbl_NamespaceEvent = UtBeginEvent ("Cross reference parse tree and Namespace"); - Status = LkCrossReferenceNamespace (); + Status = XfCrossReferenceNamespace (); if (ACPI_FAILURE (Status)) { goto ErrorExit; @@ -639,8 +639,8 @@ CmDoCompile ( DbgPrint (ASL_DEBUG_OUTPUT, "\nSemantic analysis - Method analysis\n\n"); TrWalkParseTree (RootNode, ASL_WALK_VISIT_TWICE, - AnMethodAnalysisWalkBegin, - AnMethodAnalysisWalkEnd, &AnalysisWalkInfo); + MtMethodAnalysisWalkBegin, + MtMethodAnalysisWalkEnd, &AnalysisWalkInfo); UtEndEvent (Event); /* Semantic error checking part two - typing of method returns */ @@ -719,11 +719,11 @@ CmDoOutputFiles ( /* Create listings and hex files */ LsDoListings (); - LsDoHexOutput (); + HxDoHexOutput (); /* Dump the namespace to the .nsp file if requested */ - (void) LsDisplayNamespace (); + (void) NsDisplayNamespace (); } @@ -766,12 +766,12 @@ CmDumpAllEvents ( Delta = (UINT32) (Event->EndTime - Event->StartTime); - USec = Delta / 10; - MSec = Delta / 10000; + USec = Delta / ACPI_100NSEC_PER_USEC; + MSec = Delta / ACPI_100NSEC_PER_MSEC; /* Round milliseconds up */ - if ((USec - (MSec * 1000)) >= 500) + if ((USec - (MSec * ACPI_USEC_PER_MSEC)) >= 500) { MSec++; } Modified: vendor-sys/acpica/dist/source/compiler/aslcompiler.h ============================================================================== --- vendor-sys/acpica/dist/source/compiler/aslcompiler.h Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/source/compiler/aslcompiler.h Wed Jan 2 19:01:21 2013 (r244971) @@ -188,19 +188,23 @@ AnOperandTypecheckWalkEnd ( void *Context); ACPI_STATUS -AnMethodAnalysisWalkBegin ( +AnMethodTypingWalkEnd ( ACPI_PARSE_OBJECT *Op, UINT32 Level, void *Context); + +/* + * aslmethod - Control method analysis walk + */ ACPI_STATUS -AnMethodAnalysisWalkEnd ( +MtMethodAnalysisWalkBegin ( ACPI_PARSE_OBJECT *Op, UINT32 Level, void *Context); ACPI_STATUS -AnMethodTypingWalkEnd ( +MtMethodAnalysisWalkEnd ( ACPI_PARSE_OBJECT *Op, UINT32 Level, void *Context); @@ -342,6 +346,12 @@ LsDoListings ( void); void +LsDumpAsciiInComment ( + UINT32 FileId, + UINT32 Count, + UINT8 *Buffer); + +void LsWriteNodeToAsmListing ( ACPI_PARSE_OBJECT *Op); @@ -351,13 +361,18 @@ LsWriteNode ( UINT32 FileId); void -LsDoHexOutput ( +LsDumpParseTree ( void); + +/* + * aslhex - generate all "hex" output files (C, ASM, ASL) + */ void -LsDumpParseTree ( +HxDoHexOutput ( void); + /* * aslfold - constant folding */ @@ -689,26 +704,34 @@ LdLoadNamespace ( /* - * asllookup - namespace cross reference + * asllookup - namespace lookup functions */ -ACPI_STATUS -LkCrossReferenceNamespace ( - void); - void LkFindUnreferencedObjects ( void); + +/* + * aslnamesp - namespace output file generation + */ ACPI_STATUS -LsDisplayNamespace ( +NsDisplayNamespace ( void); void -LsSetupNsList ( +NsSetupNamespaceListing ( void *Handle); /* + * aslxref - namespace cross reference + */ +ACPI_STATUS +XfCrossReferenceNamespace ( + void); + + +/* * aslutils - common compiler utilites */ void Modified: vendor-sys/acpica/dist/source/compiler/aslcompiler.y ============================================================================== --- vendor-sys/acpica/dist/source/compiler/aslcompiler.y Wed Jan 2 18:49:40 2013 (r244970) +++ vendor-sys/acpica/dist/source/compiler/aslcompiler.y Wed Jan 2 19:01:21 2013 (r244971) @@ -661,6 +661,7 @@ void * AslLocalAllo /* Types */ %type SuperName +%type ObjectTypeName %type ArgTerm %type LocalTerm %type DebugTerm @@ -1991,7 +1992,7 @@ NotTerm ObjectTypeTerm : PARSEOP_OBJECTTYPE '(' {$$ = TrCreateLeafNode (PARSEOP_OBJECTTYPE);} - SuperName + ObjectTypeName ')' {$$ = TrLinkChildren ($3,1,$4);} | PARSEOP_OBJECTTYPE '(' error ')' {$$ = AslDoError(); yyclearin;} @@ -2439,6 +2440,18 @@ SuperName | LocalTerm {} | DebugTerm {} | Type6Opcode {} + +/* For ObjectType: SuperName except for UserTerm (method invocation) */ + +ObjectTypeName + : NameString {} + | ArgTerm {} + | LocalTerm {} + | DebugTerm {} + | RefOfTerm {} + | DerefOfTerm {} + | IndexTerm {} + /* | UserTerm {} */ /* Caused reduce/reduce with Type6Opcode->UserTerm */ ; Added: vendor-sys/acpica/dist/source/compiler/aslfileio.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor-sys/acpica/dist/source/compiler/aslfileio.c Wed Jan 2 19:01:21 2013 (r244971) @@ -0,0 +1,393 @@ +/****************************************************************************** + * + * Module Name: aslfileio - File I/O support + * + *****************************************************************************/ + +/* + * Copyright (C) 2000 - 2012, Intel Corp. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification. + * 2. Redistributions in binary form must reproduce at minimum a disclaimer + * substantially similar to the "NO WARRANTY" disclaimer below + * ("Disclaimer") and any redistribution must be conditioned upon + * including a substantially similar Disclaimer requirement for further + * binary redistribution. + * 3. Neither the names of the above-listed copyright holders nor the names + * of any contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * Alternatively, this software may be distributed under the terms of the + * GNU General Public License ("GPL") version 2 as published by the Free + * Software Foundation. + * + * NO WARRANTY + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * HOLDERS OR CONTRIBUTORS BE LIABLE FOR 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 DAMAGES. + */ + +#include "aslcompiler.h" + +#define _COMPONENT ACPI_COMPILER + ACPI_MODULE_NAME ("aslfileio") + + +/******************************************************************************* + * + * FUNCTION: AslAbort + * + * PARAMETERS: None + * + * RETURN: None + * + * DESCRIPTION: Dump the error log and abort the compiler. Used for serious + * I/O errors. + * + ******************************************************************************/ + +void +AslAbort ( + void) +{ + + AePrintErrorLog (ASL_FILE_STDERR); + if (Gbl_DebugFlag) + { + /* Print error summary to stdout also */ + + AePrintErrorLog (ASL_FILE_STDOUT); + } + + exit (1); +} + + +/******************************************************************************* + * + * FUNCTION: FlFileError + * + * PARAMETERS: FileId - Index into file info array + * ErrorId - Index into error message array + * + * RETURN: None + * + * DESCRIPTION: Decode errno to an error message and add the entire error + * to the error log. + * + ******************************************************************************/ + +void +FlFileError ( + UINT32 FileId, + UINT8 ErrorId) +{ + + sprintf (MsgBuffer, "\"%s\" (%s)", Gbl_Files[FileId].Filename, + strerror (errno)); + AslCommonError (ASL_ERROR, ErrorId, 0, 0, 0, 0, NULL, MsgBuffer); +} + + +/******************************************************************************* + * + * FUNCTION: FlOpenFile + * + * PARAMETERS: FileId - Index into file info array + * Filename - file pathname to open + * Mode - Open mode for fopen + * + * RETURN: None + * + * DESCRIPTION: Open a file. + * NOTE: Aborts compiler on any error. + * + ******************************************************************************/ + +void +FlOpenFile ( + UINT32 FileId, + char *Filename, + char *Mode) +{ + FILE *File; + + + File = fopen (Filename, Mode); + if (!File) + { + FlFileError (FileId, ASL_MSG_OPEN); + AslAbort (); + } + + Gbl_Files[FileId].Filename = Filename; + Gbl_Files[FileId].Handle = File; +} + + +/******************************************************************************* + * + * FUNCTION: FlGetFileSize + * + * PARAMETERS: FileId - Index into file info array + * + * RETURN: File Size + * + * DESCRIPTION: Get current file size. Uses seek-to-EOF. File must be open. + * + ******************************************************************************/ + +UINT32 +FlGetFileSize ( + UINT32 FileId) +{ + FILE *fp; + UINT32 FileSize; + long Offset; + + + fp = Gbl_Files[FileId].Handle; + Offset = ftell (fp); + + fseek (fp, 0, SEEK_END); + FileSize = (UINT32) ftell (fp); + + /* Restore file pointer */ + + fseek (fp, Offset, SEEK_SET); + return (FileSize); +} + + +/******************************************************************************* + * + * FUNCTION: FlReadFile + * + * PARAMETERS: FileId - Index into file info array + * Buffer - Where to place the data + * Length - Amount to read + * + * RETURN: Status. AE_ERROR indicates EOF. + * + * DESCRIPTION: Read data from an open file. + * NOTE: Aborts compiler on any error. + * + ******************************************************************************/ + +ACPI_STATUS +FlReadFile ( + UINT32 FileId, + void *Buffer, + UINT32 Length) +{ + UINT32 Actual; + + + /* Read and check for error */ + + Actual = fread (Buffer, 1, Length, Gbl_Files[FileId].Handle); + if (Actual < Length) + { + if (feof (Gbl_Files[FileId].Handle)) + { + /* End-of-file, just return error */ + + return (AE_ERROR); + } + + FlFileError (FileId, ASL_MSG_READ); + AslAbort (); + } + + return (AE_OK); +} + + +/******************************************************************************* + * + * FUNCTION: FlWriteFile + * + * PARAMETERS: FileId - Index into file info array + * Buffer - Data to write + * Length - Amount of data to write + * + * RETURN: None + * + * DESCRIPTION: Write data to an open file. + * NOTE: Aborts compiler on any error. + * + ******************************************************************************/ + +void +FlWriteFile ( + UINT32 FileId, + void *Buffer, + UINT32 Length) +{ + UINT32 Actual; + + + /* Write and check for error */ + + Actual = fwrite ((char *) Buffer, 1, Length, Gbl_Files[FileId].Handle); + if (Actual != Length) + { + FlFileError (FileId, ASL_MSG_WRITE); + AslAbort (); + } +} + + +/******************************************************************************* + * + * FUNCTION: FlPrintFile + * + * PARAMETERS: FileId - Index into file info array + * Format - Printf format string + * ... - Printf arguments + * + * RETURN: None + * + * DESCRIPTION: Formatted write to an open file. + * NOTE: Aborts compiler on any error. + * + ******************************************************************************/ + +void +FlPrintFile ( + UINT32 FileId, + char *Format, + ...) +{ + INT32 Actual; + va_list Args; + + + va_start (Args, Format); + + Actual = vfprintf (Gbl_Files[FileId].Handle, Format, Args); + va_end (Args); + + if (Actual == -1) + { + FlFileError (FileId, ASL_MSG_WRITE); + AslAbort (); + } +} + + +/******************************************************************************* + * + * FUNCTION: FlSeekFile + * + * PARAMETERS: FileId - Index into file info array + * Offset - Absolute byte offset in file + * + * RETURN: None + * + * DESCRIPTION: Seek to absolute offset. + * NOTE: Aborts compiler on any error. + * + ******************************************************************************/ + +void +FlSeekFile ( + UINT32 FileId, + long Offset) +{ + int Error; + + + Error = fseek (Gbl_Files[FileId].Handle, Offset, SEEK_SET); + if (Error) + { + FlFileError (FileId, ASL_MSG_SEEK); + AslAbort (); + } +} + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 19:02:17 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 19CEEEE2; Wed, 2 Jan 2013 19:02:17 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E70F61DD0; Wed, 2 Jan 2013 19:02:16 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02J2G9d044602; Wed, 2 Jan 2013 19:02:16 GMT (envelope-from jkim@svn.freebsd.org) Received: (from jkim@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02J2Gg0044601; Wed, 2 Jan 2013 19:02:16 GMT (envelope-from jkim@svn.freebsd.org) Message-Id: <201301021902.r02J2Gg0044601@svn.freebsd.org> From: Jung-uk Kim Date: Wed, 2 Jan 2013 19:02:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r244972 - vendor-sys/acpica/20121220 X-SVN-Group: vendor-sys MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 19:02:17 -0000 Author: jkim Date: Wed Jan 2 19:02:16 2013 New Revision: 244972 URL: http://svnweb.freebsd.org/changeset/base/244972 Log: Tag ACPICA 20121220. Added: vendor-sys/acpica/20121220/ - copied from r244971, vendor-sys/acpica/dist/ From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 20:56:54 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 8C96AA16; Wed, 2 Jan 2013 20:56:54 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7EAD12B5; Wed, 2 Jan 2013 20:56:54 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02KusJP061673; Wed, 2 Jan 2013 20:56:54 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02KusED061672; Wed, 2 Jan 2013 20:56:54 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301022056.r02KusED061672@svn.freebsd.org> From: Xin LI Date: Wed, 2 Jan 2013 20:56:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r244973 - vendor-crypto/openssl/dist/crypto/bn X-SVN-Group: vendor-crypto MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 20:56:54 -0000 Author: delphij Date: Wed Jan 2 20:56:53 2013 New Revision: 244973 URL: http://svnweb.freebsd.org/changeset/base/244973 Log: Integrate OpenSSL changeset 22950 (appro): bn_word.c: fix overflow bug in BN_add_word. Modified: vendor-crypto/openssl/dist/crypto/bn/bn_word.c Modified: vendor-crypto/openssl/dist/crypto/bn/bn_word.c ============================================================================== --- vendor-crypto/openssl/dist/crypto/bn/bn_word.c Wed Jan 2 19:02:16 2013 (r244972) +++ vendor-crypto/openssl/dist/crypto/bn/bn_word.c Wed Jan 2 20:56:53 2013 (r244973) @@ -144,26 +144,17 @@ int BN_add_word(BIGNUM *a, BN_ULONG w) a->neg=!(a->neg); return(i); } - /* Only expand (and risk failing) if it's possibly necessary */ - if (((BN_ULONG)(a->d[a->top - 1] + 1) == 0) && - (bn_wexpand(a,a->top+1) == NULL)) - return(0); - i=0; - for (;;) + for (i=0;w!=0 && itop;i++) { - if (i >= a->top) - l=w; - else - l=(a->d[i]+w)&BN_MASK2; - a->d[i]=l; - if (w > l) - w=1; - else - break; - i++; + a->d[i] = l = (a->d[i]+w)&BN_MASK2; + w = (w>l)?1:0; } - if (i >= a->top) + if (w && i==a->top) + { + if (bn_wexpand(a,a->top+1) == NULL) return 0; a->top++; + a->d[i]=w; + } bn_check_top(a); return(1); } From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 20:58:47 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 0DBFEB90; Wed, 2 Jan 2013 20:58:47 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id EEB912CC; Wed, 2 Jan 2013 20:58:46 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02KwkF8061954; Wed, 2 Jan 2013 20:58:46 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02Kwk9b061953; Wed, 2 Jan 2013 20:58:46 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301022058.r02Kwk9b061953@svn.freebsd.org> From: Xin LI Date: Wed, 2 Jan 2013 20:58:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244974 - head/crypto/openssl/crypto/bn X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 20:58:47 -0000 Author: delphij Date: Wed Jan 2 20:58:46 2013 New Revision: 244974 URL: http://svnweb.freebsd.org/changeset/base/244974 Log: MFV r244973: Integrate OpenSSL changeset 22950 (appro): bn_word.c: fix overflow bug in BN_add_word. MFC after: 2 weeks Modified: head/crypto/openssl/crypto/bn/bn_word.c Directory Properties: head/crypto/openssl/ (props changed) Modified: head/crypto/openssl/crypto/bn/bn_word.c ============================================================================== --- head/crypto/openssl/crypto/bn/bn_word.c Wed Jan 2 20:56:53 2013 (r244973) +++ head/crypto/openssl/crypto/bn/bn_word.c Wed Jan 2 20:58:46 2013 (r244974) @@ -144,26 +144,17 @@ int BN_add_word(BIGNUM *a, BN_ULONG w) a->neg=!(a->neg); return(i); } - /* Only expand (and risk failing) if it's possibly necessary */ - if (((BN_ULONG)(a->d[a->top - 1] + 1) == 0) && - (bn_wexpand(a,a->top+1) == NULL)) - return(0); - i=0; - for (;;) + for (i=0;w!=0 && itop;i++) { - if (i >= a->top) - l=w; - else - l=(a->d[i]+w)&BN_MASK2; - a->d[i]=l; - if (w > l) - w=1; - else - break; - i++; + a->d[i] = l = (a->d[i]+w)&BN_MASK2; + w = (w>l)?1:0; } - if (i >= a->top) + if (w && i==a->top) + { + if (bn_wexpand(a,a->top+1) == NULL) return 0; a->top++; + a->d[i]=w; + } bn_check_top(a); return(1); } From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 21:00:00 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id BEE99D0B; Wed, 2 Jan 2013 21:00:00 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B23462DB; Wed, 2 Jan 2013 21:00:00 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02L00Pl062200; Wed, 2 Jan 2013 21:00:00 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02L00Ff062199; Wed, 2 Jan 2013 21:00:00 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301022100.r02L00Ff062199@svn.freebsd.org> From: Xin LI Date: Wed, 2 Jan 2013 21:00:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244975 - head/crypto/openssl/crypto X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 21:00:00 -0000 Author: delphij Date: Wed Jan 2 21:00:00 2013 New Revision: 244975 URL: http://svnweb.freebsd.org/changeset/base/244975 Log: Indicate that we are using OpenSSL with some local modifications. X-MFC after: with r244974 Modified: head/crypto/openssl/crypto/opensslv.h Modified: head/crypto/openssl/crypto/opensslv.h ============================================================================== --- head/crypto/openssl/crypto/opensslv.h Wed Jan 2 20:58:46 2013 (r244974) +++ head/crypto/openssl/crypto/opensslv.h Wed Jan 2 21:00:00 2013 (r244975) @@ -29,7 +29,7 @@ #ifdef OPENSSL_FIPS #define OPENSSL_VERSION_TEXT "OpenSSL 1.0.1c-fips 10 May 2012" #else -#define OPENSSL_VERSION_TEXT "OpenSSL 1.0.1c 10 May 2012" +#define OPENSSL_VERSION_TEXT "OpenSSL 1.0.1c-freebsd 10 May 2012" #endif #define OPENSSL_VERSION_PTEXT " part of " OPENSSL_VERSION_TEXT From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 21:03:48 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id D4796F9F; Wed, 2 Jan 2013 21:03:48 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from smtp-out3.electric.net (smtp-out3.electric.net [72.35.12.187]) by mx1.freebsd.org (Postfix) with ESMTP id A5BA4301; Wed, 2 Jan 2013 21:03:47 +0000 (UTC) Received: from [204.11.168.155] (helo=securemail.onebox.com) by lada.electric.net with esmtp (Exim 4.77) (envelope-from ) id 1TqVTR-0005HB-Ut; Wed, 02 Jan 2013 13:03:41 -0800 Received: from localhost (unverified [49.224.182.145]) by securemail.onebox.com (Rockliffe SMTPRA 9.3.1) with ESMTP id ; Wed, 2 Jan 2013 16:03:44 -0500 Date: Thu, 3 Jan 2013 10:02:58 +1300 From: Andrew Turner To: "Robert N. M. Watson" Subject: Re: svn commit: r244899 - head/sys/mips/beri Message-ID: <20130103100258.2e22763f@fubar.geek.nz> In-Reply-To: <0E1E1A5C-BB34-4B82-828F-6FEE770A6037@FreeBSD.org> References: <201212311106.qBVB6chM016661@svn.freebsd.org> <20130102081746.5435db05@fubar.geek.nz> <20130102110856.7c280fd5@fubar.geek.nz> <0E1E1A5C-BB34-4B82-828F-6FEE770A6037@FreeBSD.org> Organization: SMTP: smtp.paradise.net.nz X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.6; i386-portbld-freebsd8.1) X-Pirate: Arrrr Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 21:03:48 -0000 On Wed, 2 Jan 2013 11:01:27 +0000 "Robert N. M. Watson" wrote: > > On 1 Jan 2013, at 22:08, Andrew Turner wrote: > > >> On a semi-related note: the current obstacle to moving more devices > >> over to using FDT on BERI is that our FDT implementation appears to > >> require a PIC to be configured. We're not actually using a PIC on > >> BERI currently. It works fine attached to nexus, as the implied > >> fallback for not having a PIC is to simply use the suitably > >> numbered interrupt wires direct into the MIPS. However, trying the > >> same setup described using FDT leads to an interrupt-related > >> warning at boot, and no interrupt being provided to the driver. I > >> suspect I need to provide a PIC-alike software component as a > >> fall-back for the non-PIC case. From a brief e-mail exchange with > >> JC, it sounds like the XLP FDT setup is actually not using > >> interrupts either, currently. > > > > I'm not sure if a PIC is required. From my reading of the code it > > appears not. By the look of it if you are using the nexus to > > handle interrupts you need to put an interrupts property in the > > device and "#interrupt-cells = <1>;" in the soc node. > > > > You will also need to implement an interrupt decode function and > > add it to the fdt_pic_table array. ARM has a number of almost > > identical copies of this function you can use for inspration. > > > This seemed to do the trick; what do you think of the attached? This > isn't a board-specific change, so I dropped it into the common > fdt_mips.c code. On the other hand, this left it a bit open as to > what the right compatible= line to use was, so feedback there most > welcome. The patch looks good. From my reading of [1] the compatible value should be something like "mips,mips4k" as it's value is of the form ",". I have been thinking the best way of merging these almost identical decode functions. Linux appears to do it by providing a per-controller function that can translate between the interrupt spec and the configuration allowing them to have a generic parsing function that doesn't need to check if the controller is compatible. I would like us to have something similar as it will remove the duplicate function. Andrew [1] http://www.devicetree.org/Device_Tree_Usage From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 21:27:33 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 707D7787; Wed, 2 Jan 2013 21:27:33 +0000 (UTC) (envelope-from dumbbell@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 473743C7; Wed, 2 Jan 2013 21:27:33 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02LRXAQ066762; Wed, 2 Jan 2013 21:27:33 GMT (envelope-from dumbbell@svn.freebsd.org) Received: (from dumbbell@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02LRXSr066761; Wed, 2 Jan 2013 21:27:33 GMT (envelope-from dumbbell@svn.freebsd.org) Message-Id: <201301022127.r02LRXSr066761@svn.freebsd.org> From: Jean-Sebastien Pedron Date: Wed, 2 Jan 2013 21:27:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r244976 - stable/9/sys/dev/atkbdc X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 21:27:33 -0000 Author: dumbbell Date: Wed Jan 2 21:27:32 2013 New Revision: 244976 URL: http://svnweb.freebsd.org/changeset/base/244976 Log: MFC r244405: psm: Support detection of Synaptics touchpad v7.5 and above Starting with firmware v7.5, the "Read TouchPad Modes" ($01) and "Read Capabilities" ($02) commands changed: previously constant bytes now carry variable information. We now compare those bytes to expected constants only for firmware prior to v7.5. Tested by: Zeus Panchenko Modified: stable/9/sys/dev/atkbdc/psm.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/atkbdc/psm.c ============================================================================== --- stable/9/sys/dev/atkbdc/psm.c Wed Jan 2 21:00:00 2013 (r244975) +++ stable/9/sys/dev/atkbdc/psm.c Wed Jan 2 21:27:32 2013 (r244976) @@ -239,6 +239,10 @@ typedef struct synapticspacket { #define SYNAPTICS_QUEUE_CURSOR(x) \ (x + SYNAPTICS_PACKETQUEUE) % SYNAPTICS_PACKETQUEUE +#define SYNAPTICS_VERSION_GE(synhw, major, minor) \ + ((synhw).infoMajor > (major) || \ + ((synhw).infoMajor == (major) && (synhw).infoMinor >= (minor))) + typedef struct synapticsaction { synapticspacket_t queue[SYNAPTICS_PACKETQUEUE]; int queue_len; @@ -867,7 +871,9 @@ doopen(struct psm_softc *sc, int command if (sc->hw.model == MOUSE_MODEL_SYNAPTICS) { mouse_ext_command(sc->kbdc, 1); get_mouse_status(sc->kbdc, stat, 0, 3); - if (stat[1] == 0x47 && stat[2] == 0x40) { + if ((SYNAPTICS_VERSION_GE(sc->synhw, 7, 5) || + stat[1] == 0x47) && + stat[2] == 0x40) { /* Set the mode byte -- request wmode where * available */ if (sc->synhw.capExtended) @@ -4381,7 +4387,7 @@ enable_synaptics(KBDC kbdc, struct psm_s return (FALSE); if (get_mouse_status(kbdc, status, 0, 3) != 3) return (FALSE); - if (status[1] != 0x47) { + if (!SYNAPTICS_VERSION_GE(synhw, 7, 5) && status[1] != 0x47) { printf(" Failed to read extended capability bits\n"); return (FALSE); } @@ -4437,7 +4443,7 @@ enable_synaptics(KBDC kbdc, struct psm_s return (FALSE); if (get_mouse_status(kbdc, status, 0, 3) != 3) return (FALSE); - if (status[1] != 0x47) { + if (!SYNAPTICS_VERSION_GE(synhw, 7, 5) && status[1] != 0x47) { printf(" Failed to read mode byte\n"); return (FALSE); } From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 21:45:21 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 6F0B1D57; Wed, 2 Jan 2013 21:45:21 +0000 (UTC) (envelope-from jfv@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4848465D; Wed, 2 Jan 2013 21:45:21 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02LjLUq069449; Wed, 2 Jan 2013 21:45:21 GMT (envelope-from jfv@svn.freebsd.org) Received: (from jfv@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02LjKnP069447; Wed, 2 Jan 2013 21:45:20 GMT (envelope-from jfv@svn.freebsd.org) Message-Id: <201301022145.r02LjKnP069447@svn.freebsd.org> From: Jack F Vogel Date: Wed, 2 Jan 2013 21:45:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244977 - head/sys/dev/ichwd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 21:45:21 -0000 Author: jfv Date: Wed Jan 2 21:45:20 2013 New Revision: 244977 URL: http://svnweb.freebsd.org/changeset/base/244977 Log: Add support for new Intel Lynx Point PCH - Watchdog Timer Device IDs Modified: head/sys/dev/ichwd/ichwd.c head/sys/dev/ichwd/ichwd.h Modified: head/sys/dev/ichwd/ichwd.c ============================================================================== --- head/sys/dev/ichwd/ichwd.c Wed Jan 2 21:27:32 2013 (r244976) +++ head/sys/dev/ichwd/ichwd.c Wed Jan 2 21:45:20 2013 (r244977) @@ -191,6 +191,9 @@ static struct ichwd_device ichwd_devices { DEVICEID_PPT29, "Intel Panther Point watchdog timer", 10 }, { DEVICEID_PPT30, "Intel Panther Point watchdog timer", 10 }, { DEVICEID_PPT31, "Intel Panther Point watchdog timer", 10 }, + { DEVICEID_LPT0, "Intel Lynx Point watchdog timer", 10 }, + { DEVICEID_LPT1, "Intel Lynx Point watchdog timer", 10 }, + { DEVICEID_LPT2, "Intel Lynx Point watchdog timer", 10 }, { DEVICEID_DH89XXCC_LPC, "Intel DH89xxCC watchdog timer", 10 }, { 0, NULL, 0 }, }; Modified: head/sys/dev/ichwd/ichwd.h ============================================================================== --- head/sys/dev/ichwd/ichwd.h Wed Jan 2 21:27:32 2013 (r244976) +++ head/sys/dev/ichwd/ichwd.h Wed Jan 2 21:45:20 2013 (r244977) @@ -177,6 +177,38 @@ struct ichwd_softc { #define DEVICEID_3400 0x3b12 #define DEVICEID_3420 0x3b14 #define DEVICEID_3450 0x3b16 +#define DEVICEID_LPT0 0x8c40 +#define DEVICEID_LPT1 0x8c41 +#define DEVICEID_LPT2 0x8c42 +#define DEVICEID_LPT3 0x8c43 +#define DEVICEID_LPT4 0x8c44 +#define DEVICEID_LPT5 0x8c45 +#define DEVICEID_LPT6 0x8c46 +#define DEVICEID_LPT7 0x8c47 +#define DEVICEID_LPT8 0x8c48 +#define DEVICEID_LPT9 0x8c49 +#define DEVICEID_LPT10 0x8c4a +#define DEVICEID_LPT11 0x8c4b +#define DEVICEID_LPT12 0x8c4c +#define DEVICEID_LPT13 0x8c4d +#define DEVICEID_LPT14 0x8c4e +#define DEVICEID_LPT15 0x8c4f +#define DEVICEID_LPT16 0x8c50 +#define DEVICEID_LPT17 0x8c51 +#define DEVICEID_LPT18 0x8c52 +#define DEVICEID_LPT19 0x8c53 +#define DEVICEID_LPT20 0x8c54 +#define DEVICEID_LPT21 0x8c55 +#define DEVICEID_LPT22 0x8c56 +#define DEVICEID_LPT23 0x8c57 +#define DEVICEID_LPT24 0x8c58 +#define DEVICEID_LPT25 0x8c59 +#define DEVICEID_LPT26 0x8c5a +#define DEVICEID_LPT27 0x8c5b +#define DEVICEID_LPT28 0x8c5c +#define DEVICEID_LPT29 0x8c5d +#define DEVICEID_LPT30 0x8c5e +#define DEVICEID_LPT31 0x8c5f /* ICH LPC Interface Bridge Registers (ICH5 and older) */ #define ICH_GEN_STA 0xd4 From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 21:53:47 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 83EE9B9; Wed, 2 Jan 2013 21:53:47 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 685B0699; Wed, 2 Jan 2013 21:53:47 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02Lrlxq070736; Wed, 2 Jan 2013 21:53:47 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02Lrk8t070725; Wed, 2 Jan 2013 21:53:46 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301022153.r02Lrk8t070725@svn.freebsd.org> From: Xin LI Date: Wed, 2 Jan 2013 21:53:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r244978 - vendor/one-true-awk/dist X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 21:53:47 -0000 Author: delphij Date: Wed Jan 2 21:53:45 2013 New Revision: 244978 URL: http://svnweb.freebsd.org/changeset/base/244978 Log: Vendor import of bwk's Dec 20, 2012 version. Modified: vendor/one-true-awk/dist/FIXES vendor/one-true-awk/dist/main.c vendor/one-true-awk/dist/makefile vendor/one-true-awk/dist/proto.h vendor/one-true-awk/dist/run.c vendor/one-true-awk/dist/tran.c Modified: vendor/one-true-awk/dist/FIXES ============================================================================== --- vendor/one-true-awk/dist/FIXES Wed Jan 2 21:45:20 2013 (r244977) +++ vendor/one-true-awk/dist/FIXES Wed Jan 2 21:53:45 2013 (r244978) @@ -25,6 +25,22 @@ THIS SOFTWARE. This file lists all bug fixes, changes, etc., made since the AWK book was sent to the printers in August, 1987. +Dec 20, 2012: + fiddled makefile to get correct yacc and bison flags. pick yacc + (linux) or bison (mac) as necessary. + + added __attribute__((__noreturn__)) to a couple of lines in + proto.h, to silence someone's enthusiastic checker. + + fixed obscure call by value bug in split(a[1],a) reported on + 9fans. the management of temporary values is just a mess; i + took a shortcut by making an extra string copy. thanks + to paul patience and arnold robbins for passing it on and for + proposed patches. + + tiny fiddle in setfval to eliminate -0 results in T.expr, which + has irritated me for 20+ years. + Aug 10, 2011: another fix to avoid core dump with delete(ARGV); again, many thanks to ruslan ermilov. Modified: vendor/one-true-awk/dist/main.c ============================================================================== --- vendor/one-true-awk/dist/main.c Wed Jan 2 21:45:20 2013 (r244977) +++ vendor/one-true-awk/dist/main.c Wed Jan 2 21:53:45 2013 (r244978) @@ -22,7 +22,7 @@ ARISING OUT OF OR IN CONNECTION WITH THE THIS SOFTWARE. ****************************************************************/ -const char *version = "version 20110810"; +const char *version = "version 20121220"; #define DEBUG #include Modified: vendor/one-true-awk/dist/makefile ============================================================================== --- vendor/one-true-awk/dist/makefile Wed Jan 2 21:45:20 2013 (r244977) +++ vendor/one-true-awk/dist/makefile Wed Jan 2 21:53:45 2013 (r244978) @@ -26,15 +26,15 @@ CFLAGS = -g CFLAGS = -O2 CFLAGS = -CC = gcc -Wall -g -CC = cc CC = gcc -Wall -g -Wwrite-strings CC = gcc -fprofile-arcs -ftest-coverage # then gcov f1.c; cat f1.c.gcov +CC = gcc -g -Wall -pedantic CC = gcc -O4 -Wall -pedantic -fno-strict-aliasing -YACC = bison -y -YACC = yacc -YFLAGS = -d +YACC = bison -d -y +YACC = yacc -d -S +#YFLAGS = -d -S + # -S uses sprintf in yacc parser instead of sprint OFILES = b.o main.o parse.o proctab.o tran.o lib.o run.o lex.o Modified: vendor/one-true-awk/dist/proto.h ============================================================================== --- vendor/one-true-awk/dist/proto.h Wed Jan 2 21:45:20 2013 (r244977) +++ vendor/one-true-awk/dist/proto.h Wed Jan 2 21:53:45 2013 (r244978) @@ -46,7 +46,7 @@ extern void freetr(Node *); extern int hexstr(uschar **); extern int quoted(uschar **); extern char *cclenter(const char *); -extern void overflo(const char *); +extern void overflo(const char *) __attribute__((__noreturn__)); extern void cfoll(fa *, Node *); extern int first(Node *); extern void follow(Node *); @@ -132,7 +132,7 @@ extern void fpecatch(int); extern void bracecheck(void); extern void bcheck2(int, int, int); extern void SYNTAX(const char *, ...); -extern void FATAL(const char *, ...); +extern void FATAL(const char *, ...) __attribute__((__noreturn__)); extern void WARNING(const char *, ...); extern void error(void); extern void eprint(void); Modified: vendor/one-true-awk/dist/run.c ============================================================================== --- vendor/one-true-awk/dist/run.c Wed Jan 2 21:45:20 2013 (r244977) +++ vendor/one-true-awk/dist/run.c Wed Jan 2 21:53:45 2013 (r244978) @@ -1210,13 +1210,13 @@ Cell *dopa2(Node **a, int n) /* a[0], a[ Cell *split(Node **a, int nnn) /* split(a[0], a[1], a[2]); a[3] is type */ { Cell *x = 0, *y, *ap; - char *s; + char *s, *origs; int sep; char *t, temp, num[50], *fs = 0; int n, tempstat, arg3type; y = execute(a[0]); /* source string */ - s = getsval(y); + origs = s = strdup(getsval(y)); arg3type = ptoi(a[3]); if (a[2] == 0) /* fs string */ fs = *FS; @@ -1336,6 +1336,7 @@ Cell *split(Node **a, int nnn) /* split( } tempfree(ap); tempfree(y); + free(origs); if (a[2] != 0 && arg3type == STRING) { tempfree(x); } Modified: vendor/one-true-awk/dist/tran.c ============================================================================== --- vendor/one-true-awk/dist/tran.c Wed Jan 2 21:45:20 2013 (r244977) +++ vendor/one-true-awk/dist/tran.c Wed Jan 2 21:53:45 2013 (r244978) @@ -298,6 +298,8 @@ Awkfloat setfval(Cell *vp, Awkfloat f) / xfree(vp->sval); /* free any previous string */ vp->tval &= ~STR; /* mark string invalid */ vp->tval |= NUM; /* mark number ok */ + if (f == -0) /* who would have thought this possible? */ + f = 0; dprintf( ("setfval %p: %s = %g, t=%o\n", (void*)vp, NN(vp->nval), f, vp->tval) ); return vp->fval = f; } From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 21:54:38 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id AFF1C29F; Wed, 2 Jan 2013 21:54:38 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8B0C66A4; Wed, 2 Jan 2013 21:54:38 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02Lscfi070886; Wed, 2 Jan 2013 21:54:38 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02Lsc7j070885; Wed, 2 Jan 2013 21:54:38 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301022154.r02Lsc7j070885@svn.freebsd.org> From: Xin LI Date: Wed, 2 Jan 2013 21:54:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r244979 - vendor/one-true-awk/20121220 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 21:54:38 -0000 Author: delphij Date: Wed Jan 2 21:54:37 2013 New Revision: 244979 URL: http://svnweb.freebsd.org/changeset/base/244979 Log: Tag 20121220 version. Added: vendor/one-true-awk/20121220/ - copied from r244978, vendor/one-true-awk/dist/ From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 21:56:59 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5A960503; Wed, 2 Jan 2013 21:56:59 +0000 (UTC) (envelope-from jfv@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 42B046C8; Wed, 2 Jan 2013 21:56:59 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02Luxwi071404; Wed, 2 Jan 2013 21:56:59 GMT (envelope-from jfv@svn.freebsd.org) Received: (from jfv@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02LuwRj071402; Wed, 2 Jan 2013 21:56:58 GMT (envelope-from jfv@svn.freebsd.org) Message-Id: <201301022156.r02LuwRj071402@svn.freebsd.org> From: Jack F Vogel Date: Wed, 2 Jan 2013 21:56:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244980 - head/sys/dev/sound/pci/hda X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 21:56:59 -0000 Author: jfv Date: Wed Jan 2 21:56:58 2013 New Revision: 244980 URL: http://svnweb.freebsd.org/changeset/base/244980 Log: Add Intel Lynx Point PCH HD Audio Device IDs Modified: head/sys/dev/sound/pci/hda/hdac.c head/sys/dev/sound/pci/hda/hdac.h Modified: head/sys/dev/sound/pci/hda/hdac.c ============================================================================== --- head/sys/dev/sound/pci/hda/hdac.c Wed Jan 2 21:54:37 2013 (r244979) +++ head/sys/dev/sound/pci/hda/hdac.c Wed Jan 2 21:56:58 2013 (r244980) @@ -81,6 +81,8 @@ static const struct { { HDA_INTEL_CPT, "Intel Cougar Point", 0, 0 }, { HDA_INTEL_PATSBURG,"Intel Patsburg", 0, 0 }, { HDA_INTEL_PPT1, "Intel Panther Point", 0, 0 }, + { HDA_INTEL_LPT1, "Intel Lynx Point", 0, 0 }, + { HDA_INTEL_LPT2, "Intel Lynx Point", 0, 0 }, { HDA_INTEL_82801F, "Intel 82801F", 0, 0 }, { HDA_INTEL_63XXESB, "Intel 631x/632xESB", 0, 0 }, { HDA_INTEL_82801G, "Intel 82801G", 0, 0 }, Modified: head/sys/dev/sound/pci/hda/hdac.h ============================================================================== --- head/sys/dev/sound/pci/hda/hdac.h Wed Jan 2 21:54:37 2013 (r244979) +++ head/sys/dev/sound/pci/hda/hdac.h Wed Jan 2 21:56:58 2013 (r244980) @@ -54,6 +54,8 @@ #define HDA_INTEL_PCH HDA_MODEL_CONSTRUCT(INTEL, 0x3b56) #define HDA_INTEL_PCH2 HDA_MODEL_CONSTRUCT(INTEL, 0x3b57) #define HDA_INTEL_SCH HDA_MODEL_CONSTRUCT(INTEL, 0x811b) +#define HDA_INTEL_LPT1 HDA_MODEL_CONSTRUCT(INTEL, 0x8c20) +#define HDA_INTEL_LPT2 HDA_MODEL_CONSTRUCT(INTEL, 0x8c21) #define HDA_INTEL_ALL HDA_MODEL_CONSTRUCT(INTEL, 0xffff) /* Nvidia */ From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 22:01:27 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id BC6CF91E; Wed, 2 Jan 2013 22:01:27 +0000 (UTC) (envelope-from jfv@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 96D94714; Wed, 2 Jan 2013 22:01:27 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02M1RGI072176; Wed, 2 Jan 2013 22:01:27 GMT (envelope-from jfv@svn.freebsd.org) Received: (from jfv@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02M1R1L072175; Wed, 2 Jan 2013 22:01:27 GMT (envelope-from jfv@svn.freebsd.org) Message-Id: <201301022201.r02M1R1L072175@svn.freebsd.org> From: Jack F Vogel Date: Wed, 2 Jan 2013 22:01:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244981 - head/sys/dev/ichsmb X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 22:01:27 -0000 Author: jfv Date: Wed Jan 2 22:01:26 2013 New Revision: 244981 URL: http://svnweb.freebsd.org/changeset/base/244981 Log: Add Intel Lynx Point PCH SMBus Device IDs Modified: head/sys/dev/ichsmb/ichsmb_pci.c Modified: head/sys/dev/ichsmb/ichsmb_pci.c ============================================================================== --- head/sys/dev/ichsmb/ichsmb_pci.c Wed Jan 2 21:56:58 2013 (r244980) +++ head/sys/dev/ichsmb/ichsmb_pci.c Wed Jan 2 22:01:26 2013 (r244981) @@ -85,6 +85,7 @@ __FBSDID("$FreeBSD$"); #define ID_PATSBURG 0x1d228086 #define ID_CPT 0x1c228086 #define ID_PPT 0x1e228086 +#define ID_LPT 0x8c228086 #define PCIS_SERIALBUS_SMBUS_PROGIF 0x00 @@ -188,6 +189,9 @@ ichsmb_pci_probe(device_t dev) case ID_PPT: device_set_desc(dev, "Intel Panther Point SMBus controller"); break; + case ID_LPT: + device_set_desc(dev, "Intel Lynx Point SMBus controller"); + break; default: return (ENXIO); } From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 22:14:19 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5C653F9F; Wed, 2 Jan 2013 22:14:19 +0000 (UTC) (envelope-from dumbbell@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 36582797; Wed, 2 Jan 2013 22:14:19 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02MEJOh074515; Wed, 2 Jan 2013 22:14:19 GMT (envelope-from dumbbell@svn.freebsd.org) Received: (from dumbbell@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02MEJsx074514; Wed, 2 Jan 2013 22:14:19 GMT (envelope-from dumbbell@svn.freebsd.org) Message-Id: <201301022214.r02MEJsx074514@svn.freebsd.org> From: Jean-Sebastien Pedron Date: Wed, 2 Jan 2013 22:14:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r244982 - stable/8/sys/dev/atkbdc X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 22:14:19 -0000 Author: dumbbell Date: Wed Jan 2 22:14:18 2013 New Revision: 244982 URL: http://svnweb.freebsd.org/changeset/base/244982 Log: MFC r244405: psm: Support detection of Synaptics touchpad v7.5 and above Starting with firmware v7.5, the "Read TouchPad Modes" ($01) and "Read Capabilities" ($02) commands changed: previously constant bytes now carry variable information. We now compare those bytes to expected constants only for firmware prior to v7.5. Tested by: Zeus Panchenko Modified: stable/8/sys/dev/atkbdc/psm.c Directory Properties: stable/8/sys/ (props changed) stable/8/sys/dev/ (props changed) stable/8/sys/dev/atkbdc/ (props changed) Modified: stable/8/sys/dev/atkbdc/psm.c ============================================================================== --- stable/8/sys/dev/atkbdc/psm.c Wed Jan 2 22:01:26 2013 (r244981) +++ stable/8/sys/dev/atkbdc/psm.c Wed Jan 2 22:14:18 2013 (r244982) @@ -244,6 +244,10 @@ typedef struct synapticspacket { #define SYNAPTICS_QUEUE_CURSOR(x) \ (x + SYNAPTICS_PACKETQUEUE) % SYNAPTICS_PACKETQUEUE +#define SYNAPTICS_VERSION_GE(synhw, major, minor) \ + ((synhw).infoMajor > (major) || \ + ((synhw).infoMajor == (major) && (synhw).infoMinor >= (minor))) + typedef struct synapticsaction { synapticspacket_t queue[SYNAPTICS_PACKETQUEUE]; int queue_len; @@ -887,7 +891,9 @@ doopen(struct psm_softc *sc, int command if (sc->hw.model == MOUSE_MODEL_SYNAPTICS) { mouse_ext_command(sc->kbdc, 1); get_mouse_status(sc->kbdc, stat, 0, 3); - if (stat[1] == 0x47 && stat[2] == 0x40) { + if ((SYNAPTICS_VERSION_GE(sc->synhw, 7, 5) || + stat[1] == 0x47) && + stat[2] == 0x40) { /* Set the mode byte -- request wmode where * available */ if (sc->synhw.capExtended) @@ -4356,7 +4362,7 @@ enable_synaptics(struct psm_softc *sc) return (FALSE); if (get_mouse_status(kbdc, status, 0, 3) != 3) return (FALSE); - if (status[1] != 0x47) { + if (!SYNAPTICS_VERSION_GE(sc->synhw, 7, 5) && status[1] != 0x47) { printf(" Failed to read extended capability bits\n"); return (FALSE); } @@ -4416,7 +4422,7 @@ enable_synaptics(struct psm_softc *sc) return (FALSE); if (get_mouse_status(kbdc, status, 0, 3) != 3) return (FALSE); - if (status[1] != 0x47) { + if (!SYNAPTICS_VERSION_GE(sc->synhw, 7, 5) && status[1] != 0x47) { printf(" Failed to read mode byte\n"); return (FALSE); } From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 22:26:47 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id C12092C4; Wed, 2 Jan 2013 22:26:47 +0000 (UTC) (envelope-from jfv@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id AF0467DE; Wed, 2 Jan 2013 22:26:47 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02MQlmH076448; Wed, 2 Jan 2013 22:26:47 GMT (envelope-from jfv@svn.freebsd.org) Received: (from jfv@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02MQl5a076444; Wed, 2 Jan 2013 22:26:47 GMT (envelope-from jfv@svn.freebsd.org) Message-Id: <201301022226.r02MQl5a076444@svn.freebsd.org> From: Jack F Vogel Date: Wed, 2 Jan 2013 22:26:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244983 - in head/sys/dev: ahci ata ata/chipsets X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 22:26:47 -0000 Author: jfv Date: Wed Jan 2 22:26:46 2013 New Revision: 244983 URL: http://svnweb.freebsd.org/changeset/base/244983 Log: Add Intel Lynx Point PCH SATA Controller Device IDs Modified: head/sys/dev/ahci/ahci.c head/sys/dev/ata/ata-pci.h head/sys/dev/ata/chipsets/ata-intel.c Modified: head/sys/dev/ahci/ahci.c ============================================================================== --- head/sys/dev/ahci/ahci.c Wed Jan 2 22:14:18 2013 (r244982) +++ head/sys/dev/ahci/ahci.c Wed Jan 2 22:26:46 2013 (r244983) @@ -179,6 +179,14 @@ static struct { {0x1e078086, 0x00, "Intel Panther Point", 0}, {0x1e0e8086, 0x00, "Intel Panther Point", 0}, {0x1e0f8086, 0x00, "Intel Panther Point", 0}, + {0x8c028086, 0x00, "Intel Lynx Point", 0}, + {0x8c038086, 0x00, "Intel Lynx Point", 0}, + {0x8c048086, 0x00, "Intel Lynx Point", 0}, + {0x8c058086, 0x00, "Intel Lynx Point", 0}, + {0x8c068086, 0x00, "Intel Lynx Point", 0}, + {0x8c078086, 0x00, "Intel Lynx Point", 0}, + {0x8c0e8086, 0x00, "Intel Lynx Point", 0}, + {0x8c0f8086, 0x00, "Intel Lynx Point", 0}, {0x23238086, 0x00, "Intel DH89xxCC", 0}, {0x2360197b, 0x00, "JMicron JMB360", 0}, {0x2361197b, 0x00, "JMicron JMB361", AHCI_Q_NOFORCE}, Modified: head/sys/dev/ata/ata-pci.h ============================================================================== --- head/sys/dev/ata/ata-pci.h Wed Jan 2 22:14:18 2013 (r244982) +++ head/sys/dev/ata/ata-pci.h Wed Jan 2 22:26:46 2013 (r244983) @@ -260,6 +260,19 @@ struct ata_pci_controller { #define ATA_PPT_R5 0x1e0e8086 #define ATA_PPT_R6 0x1e0f8086 +#define ATA_LPT_S1 0x8c008086 +#define ATA_LPT_S2 0x8c018086 +#define ATA_LPT_AH1 0x8c028086 +#define ATA_LPT_AH2 0x8c038086 +#define ATA_LPT_R1 0x8c048086 +#define ATA_LPT_R2 0x8c058086 +#define ATA_LPT_R3 0x8c068086 +#define ATA_LPT_R4 0x8c078086 +#define ATA_LPT_S3 0x8c088086 +#define ATA_LPT_S4 0x8c098086 +#define ATA_LPT_R5 0x8c0e8086 +#define ATA_LPT_R6 0x8c0f8086 + #define ATA_I31244 0x32008086 #define ATA_ISCH 0x811a8086 #define ATA_DH89XXCC 0x23238086 Modified: head/sys/dev/ata/chipsets/ata-intel.c ============================================================================== --- head/sys/dev/ata/chipsets/ata-intel.c Wed Jan 2 22:14:18 2013 (r244982) +++ head/sys/dev/ata/chipsets/ata-intel.c Wed Jan 2 22:26:46 2013 (r244983) @@ -211,6 +211,18 @@ ata_intel_probe(device_t dev) { ATA_PPT_S4, 0, INTEL_6CH2, 0, ATA_SA300, "Panther Point" }, { ATA_PPT_R5, 0, INTEL_AHCI, 0, ATA_SA300, "Panther Point" }, { ATA_PPT_R6, 0, INTEL_AHCI, 0, ATA_SA300, "Panther Point" }, + { ATA_LPT_S1, 0, INTEL_6CH, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_S2, 0, INTEL_6CH, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_AH1, 0, INTEL_AHCI, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_AH2, 0, INTEL_AHCI, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_R1, 0, INTEL_AHCI, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_R2, 0, INTEL_AHCI, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_R3, 0, INTEL_AHCI, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_R4, 0, INTEL_AHCI, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_S3, 0, INTEL_6CH2, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_S4, 0, INTEL_6CH2, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_R5, 0, INTEL_AHCI, 0, ATA_SA300, "Lynx Point" }, + { ATA_LPT_R6, 0, INTEL_AHCI, 0, ATA_SA300, "Lynx Point" }, { ATA_I31244, 0, 0, 2, ATA_SA150, "31244" }, { ATA_ISCH, 0, 0, 1, ATA_UDMA5, "SCH" }, { ATA_DH89XXCC, 0, INTEL_AHCI, 0, ATA_SA300, "DH89xxCC" }, From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 23:17:51 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 4FB12209; Wed, 2 Jan 2013 23:17:51 +0000 (UTC) (envelope-from jmallett@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 33BC5988; Wed, 2 Jan 2013 23:17:51 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02NHpps084589; Wed, 2 Jan 2013 23:17:51 GMT (envelope-from jmallett@svn.freebsd.org) Received: (from jmallett@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02NHoCM084585; Wed, 2 Jan 2013 23:17:50 GMT (envelope-from jmallett@svn.freebsd.org) Message-Id: <201301022317.r02NHoCM084585@svn.freebsd.org> From: Juli Mallett Date: Wed, 2 Jan 2013 23:17:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244984 - in head/sys: conf contrib/octeon-sdk mips/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 23:17:51 -0000 Author: jmallett Date: Wed Jan 2 23:17:50 2013 New Revision: 244984 URL: http://svnweb.freebsd.org/changeset/base/244984 Log: Add basic support for the Ubiquiti EdgeRouter Lite. Note that USB does not currently work, and the flash is connected via USB, so local storage is not working. Modified: head/sys/conf/options.mips head/sys/contrib/octeon-sdk/cvmx-app-init.h head/sys/contrib/octeon-sdk/cvmx-helper-board.c head/sys/mips/conf/OCTEON1 Modified: head/sys/conf/options.mips ============================================================================== --- head/sys/conf/options.mips Wed Jan 2 22:26:46 2013 (r244983) +++ head/sys/conf/options.mips Wed Jan 2 23:17:50 2013 (r244984) @@ -73,6 +73,7 @@ MAXMEM opt_global.h # OCTEON_MODEL opt_cvmx.h OCTEON_VENDOR_LANNER opt_cvmx.h +OCTEON_VENDOR_UBIQUITI opt_cvmx.h OCTEON_VENDOR_RADISYS opt_cvmx.h OCTEON_BOARD_CAPK_0100ND opt_cvmx.h Modified: head/sys/contrib/octeon-sdk/cvmx-app-init.h ============================================================================== --- head/sys/contrib/octeon-sdk/cvmx-app-init.h Wed Jan 2 22:26:46 2013 (r244983) +++ head/sys/contrib/octeon-sdk/cvmx-app-init.h Wed Jan 2 23:17:50 2013 (r244984) @@ -299,6 +299,9 @@ enum cvmx_board_types_enum { CVMX_BOARD_TYPE_CUST_LANNER_MR320= 20002, CVMX_BOARD_TYPE_CUST_LANNER_MR321X=20007, #endif +#if defined(OCTEON_VENDOR_UBIQUITI) + CVMX_BOARD_TYPE_CUST_UBIQUITI_E100=20002, +#endif #if defined(OCTEON_VENDOR_RADISYS) CVMX_BOARD_TYPE_CUST_RADISYS_RSYS4GBE=20002, #endif @@ -426,6 +429,9 @@ static inline const char *cvmx_board_typ ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_LANNER_MR320) ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_LANNER_MR321X) #endif +#if defined(OCTEON_VENDOR_UBIQUITI) + ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_UBIQUITI_E100) +#endif #if defined(OCTEON_VENDOR_RADISYS) ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_RADISYS_RSYS4GBE) #endif Modified: head/sys/contrib/octeon-sdk/cvmx-helper-board.c ============================================================================== --- head/sys/contrib/octeon-sdk/cvmx-helper-board.c Wed Jan 2 22:26:46 2013 (r244983) +++ head/sys/contrib/octeon-sdk/cvmx-helper-board.c Wed Jan 2 23:17:50 2013 (r244984) @@ -592,6 +592,12 @@ int cvmx_helper_board_get_mii_address(in return -1; } #endif +#if defined(OCTEON_VENDOR_UBIQUITI) + case CVMX_BOARD_TYPE_CUST_UBIQUITI_E100: + if (ipd_port > 2) + return -1; + return (7 - ipd_port); +#endif #if defined(OCTEON_VENDOR_RADISYS) case CVMX_BOARD_TYPE_CUST_RADISYS_RSYS4GBE: /* No MII. */ Modified: head/sys/mips/conf/OCTEON1 ============================================================================== --- head/sys/mips/conf/OCTEON1 Wed Jan 2 22:26:46 2013 (r244983) +++ head/sys/mips/conf/OCTEON1 Wed Jan 2 23:17:50 2013 (r244984) @@ -39,6 +39,7 @@ makeoptions DEBUG=-g #Build kernel with # Board-specific support that cannot be auto-detected at runtime. #options OCTEON_VENDOR_LANNER # Support for Lanner boards. #options OCTEON_VENDOR_RADISYS # Support for Radisys boards. +#options OCTEON_VENDOR_UBIQUITI # Support for Ubiquiti boards. #options OCTEON_BOARD_CAPK_0100ND # Support for CAPK-0100nd. # Compile for a specified Octeon model. If not specified, support for From owner-svn-src-all@FreeBSD.ORG Wed Jan 2 23:29:55 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 51A9A4FF; Wed, 2 Jan 2013 23:29:55 +0000 (UTC) (envelope-from jmallett@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4366F9E9; Wed, 2 Jan 2013 23:29:55 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r02NTtpi086232; Wed, 2 Jan 2013 23:29:55 GMT (envelope-from jmallett@svn.freebsd.org) Received: (from jmallett@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r02NTtVI086231; Wed, 2 Jan 2013 23:29:55 GMT (envelope-from jmallett@svn.freebsd.org) Message-Id: <201301022329.r02NTtVI086231@svn.freebsd.org> From: Juli Mallett Date: Wed, 2 Jan 2013 23:29:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244985 - head/sys/contrib/octeon-sdk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 02 Jan 2013 23:29:55 -0000 Author: jmallett Date: Wed Jan 2 23:29:54 2013 New Revision: 244985 URL: http://svnweb.freebsd.org/changeset/base/244985 Log: Use the right USB clock type on the EdgeRouter Lite. This fixes USB. Modified: head/sys/contrib/octeon-sdk/cvmx-helper-board.c Modified: head/sys/contrib/octeon-sdk/cvmx-helper-board.c ============================================================================== --- head/sys/contrib/octeon-sdk/cvmx-helper-board.c Wed Jan 2 23:17:50 2013 (r244984) +++ head/sys/contrib/octeon-sdk/cvmx-helper-board.c Wed Jan 2 23:29:54 2013 (r244985) @@ -1469,6 +1469,9 @@ cvmx_helper_board_usb_clock_types_t __cv case CVMX_BOARD_TYPE_CUST_LANNER_MR320: case CVMX_BOARD_TYPE_CUST_LANNER_MR321X: #endif +#if defined(OCTEON_VENDOR_UBIQUITI) + case CVMX_BOARD_TYPE_CUST_UBIQUITI_E100: +#endif #if defined(OCTEON_BOARD_CAPK_0100ND) case CVMX_BOARD_TYPE_CN3010_EVB_HS5: #endif From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 00:49:12 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A5E7A5E9; Thu, 3 Jan 2013 00:49:12 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 98BC4CCE; Thu, 3 Jan 2013 00:49:12 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r030nCOT098000; Thu, 3 Jan 2013 00:49:12 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r030nCYm097999; Thu, 3 Jan 2013 00:49:12 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201301030049.r030nCYm097999@svn.freebsd.org> From: Marius Strobl Date: Thu, 3 Jan 2013 00:49:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244986 - head/usr.sbin/daemon X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 00:49:12 -0000 Author: marius Date: Thu Jan 3 00:49:11 2013 New Revision: 244986 URL: http://svnweb.freebsd.org/changeset/base/244986 Log: Remove bogus '-' from getopt(3) string hit when porting daemon(8) to GNU/Linux *duck*. MFC after: 1 week Modified: head/usr.sbin/daemon/daemon.c Modified: head/usr.sbin/daemon/daemon.c ============================================================================== --- head/usr.sbin/daemon/daemon.c Wed Jan 2 23:29:54 2013 (r244985) +++ head/usr.sbin/daemon/daemon.c Thu Jan 3 00:49:11 2013 (r244986) @@ -62,7 +62,7 @@ main(int argc, char *argv[]) nochdir = noclose = 1; restart = 0; pidfile = user = NULL; - while ((ch = getopt(argc, argv, "-cfp:ru:")) != -1) { + while ((ch = getopt(argc, argv, "cfp:ru:")) != -1) { switch (ch) { case 'c': nochdir = 0; From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 01:09:51 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 185F1A9A; Thu, 3 Jan 2013 01:09:51 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 09435D7A; Thu, 3 Jan 2013 01:09:51 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0319oG6001350; Thu, 3 Jan 2013 01:09:50 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0319ogV001349; Thu, 3 Jan 2013 01:09:50 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201301030109.r0319ogV001349@svn.freebsd.org> From: Marius Strobl Date: Thu, 3 Jan 2013 01:09:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244987 - head/sys/i386/xen X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 01:09:51 -0000 Author: marius Date: Thu Jan 3 01:09:50 2013 New Revision: 244987 URL: http://svnweb.freebsd.org/changeset/base/244987 Log: Fix !INVARIANTS && !SMP build. MFC after: 3 days Modified: head/sys/i386/xen/xen_machdep.c Modified: head/sys/i386/xen/xen_machdep.c ============================================================================== --- head/sys/i386/xen/xen_machdep.c Thu Jan 3 00:49:11 2013 (r244986) +++ head/sys/i386/xen/xen_machdep.c Thu Jan 3 01:09:50 2013 (r244987) @@ -216,7 +216,9 @@ static mmu_update_t xpq_queue[MAX_VIRT_C #else static mmu_update_t xpq_queue[XPQUEUE_SIZE]; +#ifdef INVARIANTS static struct mmu_log xpq_queue_log[XPQUEUE_SIZE]; +#endif static int xpq_idx = 0; #define XPQ_QUEUE_LOG xpq_queue_log From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 07:25:32 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 0AD126B3; Thu, 3 Jan 2013 07:25:32 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id D8937200; Thu, 3 Jan 2013 07:25:31 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r037PVEN057659; Thu, 3 Jan 2013 07:25:31 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r037PUCY057653; Thu, 3 Jan 2013 07:25:30 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301030725.r037PUCY057653@svn.freebsd.org> From: Xin LI Date: Thu, 3 Jan 2013 07:25:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244988 - head/contrib/one-true-awk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 07:25:32 -0000 Author: delphij Date: Thu Jan 3 07:25:30 2013 New Revision: 244988 URL: http://svnweb.freebsd.org/changeset/base/244988 Log: MFV: one-true-awk 20121220. MFC after: 1 month Modified: head/contrib/one-true-awk/FIXES head/contrib/one-true-awk/main.c head/contrib/one-true-awk/makefile head/contrib/one-true-awk/proto.h head/contrib/one-true-awk/run.c head/contrib/one-true-awk/tran.c Directory Properties: head/contrib/one-true-awk/ (props changed) Modified: head/contrib/one-true-awk/FIXES ============================================================================== --- head/contrib/one-true-awk/FIXES Thu Jan 3 01:09:50 2013 (r244987) +++ head/contrib/one-true-awk/FIXES Thu Jan 3 07:25:30 2013 (r244988) @@ -25,6 +25,22 @@ THIS SOFTWARE. This file lists all bug fixes, changes, etc., made since the AWK book was sent to the printers in August, 1987. +Dec 20, 2012: + fiddled makefile to get correct yacc and bison flags. pick yacc + (linux) or bison (mac) as necessary. + + added __attribute__((__noreturn__)) to a couple of lines in + proto.h, to silence someone's enthusiastic checker. + + fixed obscure call by value bug in split(a[1],a) reported on + 9fans. the management of temporary values is just a mess; i + took a shortcut by making an extra string copy. thanks + to paul patience and arnold robbins for passing it on and for + proposed patches. + + tiny fiddle in setfval to eliminate -0 results in T.expr, which + has irritated me for 20+ years. + Aug 10, 2011: another fix to avoid core dump with delete(ARGV); again, many thanks to ruslan ermilov. Modified: head/contrib/one-true-awk/main.c ============================================================================== --- head/contrib/one-true-awk/main.c Thu Jan 3 01:09:50 2013 (r244987) +++ head/contrib/one-true-awk/main.c Thu Jan 3 07:25:30 2013 (r244988) @@ -25,7 +25,7 @@ THIS SOFTWARE. #include __FBSDID("$FreeBSD$"); -const char *version = "version 20110810 (FreeBSD)"; +const char *version = "version 20121220 (FreeBSD)"; #define DEBUG #include Modified: head/contrib/one-true-awk/makefile ============================================================================== --- head/contrib/one-true-awk/makefile Thu Jan 3 01:09:50 2013 (r244987) +++ head/contrib/one-true-awk/makefile Thu Jan 3 07:25:30 2013 (r244988) @@ -26,15 +26,15 @@ CFLAGS = -g CFLAGS = -O2 CFLAGS = -CC = gcc -Wall -g -CC = cc CC = gcc -Wall -g -Wwrite-strings CC = gcc -fprofile-arcs -ftest-coverage # then gcov f1.c; cat f1.c.gcov +CC = gcc -g -Wall -pedantic CC = gcc -O4 -Wall -pedantic -fno-strict-aliasing -YACC = bison -y -YACC = yacc -YFLAGS = -d +YACC = bison -d -y +YACC = yacc -d -S +#YFLAGS = -d -S + # -S uses sprintf in yacc parser instead of sprint OFILES = b.o main.o parse.o proctab.o tran.o lib.o run.o lex.o Modified: head/contrib/one-true-awk/proto.h ============================================================================== --- head/contrib/one-true-awk/proto.h Thu Jan 3 01:09:50 2013 (r244987) +++ head/contrib/one-true-awk/proto.h Thu Jan 3 07:25:30 2013 (r244988) @@ -46,7 +46,7 @@ extern void freetr(Node *); extern int hexstr(uschar **); extern int quoted(uschar **); extern char *cclenter(const char *); -extern void overflo(const char *); +extern void overflo(const char *) __attribute__((__noreturn__)); extern void cfoll(fa *, Node *); extern int first(Node *); extern void follow(Node *); @@ -132,7 +132,7 @@ extern void fpecatch(int); extern void bracecheck(void); extern void bcheck2(int, int, int); extern void SYNTAX(const char *, ...); -extern void FATAL(const char *, ...); +extern void FATAL(const char *, ...) __attribute__((__noreturn__)); extern void WARNING(const char *, ...); extern void error(void); extern void eprint(void); Modified: head/contrib/one-true-awk/run.c ============================================================================== --- head/contrib/one-true-awk/run.c Thu Jan 3 01:09:50 2013 (r244987) +++ head/contrib/one-true-awk/run.c Thu Jan 3 07:25:30 2013 (r244988) @@ -1213,13 +1213,13 @@ Cell *dopa2(Node **a, int n) /* a[0], a[ Cell *split(Node **a, int nnn) /* split(a[0], a[1], a[2]); a[3] is type */ { Cell *x = 0, *y, *ap; - char *s; + char *s, *origs; int sep; char *t, temp, num[50], *fs = 0; int n, tempstat, arg3type; y = execute(a[0]); /* source string */ - s = getsval(y); + origs = s = strdup(getsval(y)); arg3type = ptoi(a[3]); if (a[2] == 0) /* fs string */ fs = *FS; @@ -1339,6 +1339,7 @@ Cell *split(Node **a, int nnn) /* split( } tempfree(ap); tempfree(y); + free(origs); if (a[2] != 0 && arg3type == STRING) { tempfree(x); } Modified: head/contrib/one-true-awk/tran.c ============================================================================== --- head/contrib/one-true-awk/tran.c Thu Jan 3 01:09:50 2013 (r244987) +++ head/contrib/one-true-awk/tran.c Thu Jan 3 07:25:30 2013 (r244988) @@ -298,6 +298,8 @@ Awkfloat setfval(Cell *vp, Awkfloat f) / xfree(vp->sval); /* free any previous string */ vp->tval &= ~STR; /* mark string invalid */ vp->tval |= NUM; /* mark number ok */ + if (f == -0) /* who would have thought this possible? */ + f = 0; dprintf( ("setfval %p: %s = %g, t=%o\n", (void*)vp, NN(vp->nval), f, vp->tval) ); return vp->fval = f; } From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 10:21:29 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id AEC4FE00; Thu, 3 Jan 2013 10:21:29 +0000 (UTC) (envelope-from peter@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 893E8DF4; Thu, 3 Jan 2013 10:21:29 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03ALTd4084264; Thu, 3 Jan 2013 10:21:29 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03ALTKa084262; Thu, 3 Jan 2013 10:21:29 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201301031021.r03ALTKa084262@svn.freebsd.org> From: Peter Wemm Date: Thu, 3 Jan 2013 10:21:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244989 - in head/sys: netinet netinet6 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 10:21:29 -0000 Author: peter Date: Thu Jan 3 10:21:28 2013 New Revision: 244989 URL: http://svnweb.freebsd.org/changeset/base/244989 Log: Temporarily revert rev 244678. This is causing loopback problems with the lo (loopback) interfaces. Modified: head/sys/netinet/in.c head/sys/netinet6/in6.c Modified: head/sys/netinet/in.c ============================================================================== --- head/sys/netinet/in.c Thu Jan 3 07:25:30 2013 (r244988) +++ head/sys/netinet/in.c Thu Jan 3 10:21:28 2013 (r244989) @@ -819,19 +819,14 @@ in_ifinit(struct ifnet *ifp, struct in_i return (error); /* - * Give the interface a chance to initialize if this is its first - * address, and to validate the address if necessary. - * - * Historically, drivers managed IFF_UP flag theirselves, so we - * need to check whether driver did that. + * Give the interface a chance to initialize + * if this is its first address, + * and to validate the address if necessary. */ - flags = ifp->if_flags; if (ifp->if_ioctl != NULL && (error = (*ifp->if_ioctl)(ifp, SIOCSIFADDR, (caddr_t)ia)) != 0) /* LIST_REMOVE(ia, ia_hash) is done in in_control */ return (error); - if ((ifp->if_flags & IFF_UP) && (flags & IFF_UP) == 0) - if_up(ifp); /* * Be compatible with network classes, if netmask isn't supplied, Modified: head/sys/netinet6/in6.c ============================================================================== --- head/sys/netinet6/in6.c Thu Jan 3 07:25:30 2013 (r244988) +++ head/sys/netinet6/in6.c Thu Jan 3 10:21:28 2013 (r244989) @@ -1874,18 +1874,9 @@ in6_ifinit(struct ifnet *ifp, struct in6 ia->ia_addr = *sin6; if (ifacount <= 1 && ifp->if_ioctl) { - int flags; - - /* - * Historically, drivers managed IFF_UP flag theirselves, so we - * need to check whether driver did that. - */ - flags = ifp->if_flags; error = (*ifp->if_ioctl)(ifp, SIOCSIFADDR, (caddr_t)ia); if (error) return (error); - if ((ifp->if_flags & IFF_UP) && (flags & IFF_UP) == 0) - if_up(ifp); } ia->ia_ifa.ifa_metric = ifp->if_metric; From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 13:42:46 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 4B093FCC; Thu, 3 Jan 2013 13:42:46 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 3D2CF8BC; Thu, 3 Jan 2013 13:42:46 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03DgkeT015746; Thu, 3 Jan 2013 13:42:46 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03DgkxH015745; Thu, 3 Jan 2013 13:42:46 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201301031342.r03DgkxH015745@svn.freebsd.org> From: Marius Strobl Date: Thu, 3 Jan 2013 13:42:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244990 - head/sys/dev/xen/control X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 13:42:46 -0000 Author: marius Date: Thu Jan 3 13:42:45 2013 New Revision: 244990 URL: http://svnweb.freebsd.org/changeset/base/244990 Log: - Fix !SMP build. - Replace incorrect function names in printf(9) strings with __func__. - Make xctrl_shutdown_reasons table const. - Use nitems() rather than rolling an own version. - Use DEVMETHOD_END. - Use NULL rather than 0 for pointers. MFC after: 3 days Modified: head/sys/dev/xen/control/control.c Modified: head/sys/dev/xen/control/control.c ============================================================================== --- head/sys/dev/xen/control/control.c Thu Jan 3 10:21:28 2013 (r244989) +++ head/sys/dev/xen/control/control.c Thu Jan 3 13:42:45 2013 (r244990) @@ -125,7 +125,6 @@ __FBSDID("$FreeBSD$"); #include #endif - #include #include @@ -145,8 +144,6 @@ __FBSDID("$FreeBSD$"); #include -#define NUM_ELEMENTS(x) (sizeof(x) / sizeof(*(x))) - /*--------------------------- Forward Declarations --------------------------*/ /** Function signature for shutdown event handlers. */ typedef void (xctrl_shutdown_handler_t)(void); @@ -165,7 +162,7 @@ struct xctrl_shutdown_reason { }; /** Lookup table for shutdown event name to handler. */ -static struct xctrl_shutdown_reason xctrl_shutdown_reasons[] = { +static const struct xctrl_shutdown_reason xctrl_shutdown_reasons[] = { { "poweroff", xctrl_poweroff }, { "reboot", xctrl_reboot }, { "suspend", xctrl_suspend }, @@ -198,7 +195,6 @@ extern void xencons_resume(void); static void xctrl_suspend() { - u_int cpuid; int i, j, k, fpp; unsigned long max_pfn, start_info_mfn; @@ -207,6 +203,8 @@ xctrl_suspend() #ifdef SMP struct thread *td; cpuset_t map; + u_int cpuid; + /* * Bind us to CPU 0 and stop any other VCPUs. */ @@ -231,7 +229,7 @@ xctrl_suspend() mtx_lock(&Giant); if (DEVICE_SUSPEND(root_bus) != 0) { mtx_unlock(&Giant); - printf("xen_suspend: device_suspend failed\n"); + printf("%s: device_suspend failed\n", __func__); #ifdef SMP if (!CPU_EMPTY(&map)) restart_cpus(map); @@ -343,9 +341,9 @@ xctrl_suspend() * drivers need this. */ mtx_lock(&Giant); - if (DEVICE_SUSPEND(root_bus)) { + if (DEVICE_SUSPEND(root_bus) != 0) { mtx_unlock(&Giant); - printf("xen_suspend: device_suspend failed\n"); + printf("%s: device_suspend failed\n", __func__); return; } mtx_unlock(&Giant); @@ -396,8 +394,8 @@ xctrl_halt() static void xctrl_on_watch_event(struct xs_watch *watch, const char **vec, unsigned int len) { - struct xctrl_shutdown_reason *reason; - struct xctrl_shutdown_reason *last_reason; + const struct xctrl_shutdown_reason *reason; + const struct xctrl_shutdown_reason *last_reason; char *result; int error; int result_len; @@ -408,7 +406,7 @@ xctrl_on_watch_event(struct xs_watch *wa return; reason = xctrl_shutdown_reasons; - last_reason = reason + NUM_ELEMENTS(xctrl_shutdown_reasons); + last_reason = reason + nitems(xctrl_shutdown_reasons); while (reason < last_reason) { if (!strcmp(result, reason->name)) { @@ -511,10 +509,10 @@ static device_method_t xctrl_methods[] = DEVMETHOD(device_attach, xctrl_attach), DEVMETHOD(device_detach, xctrl_detach), - { 0, 0 } + DEVMETHOD_END }; DEFINE_CLASS_0(xctrl, xctrl_driver, xctrl_methods, sizeof(struct xctrl_softc)); devclass_t xctrl_devclass; -DRIVER_MODULE(xctrl, xenstore, xctrl_driver, xctrl_devclass, 0, 0); +DRIVER_MODULE(xctrl, xenstore, xctrl_driver, xctrl_devclass, NULL, NULL); From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 13:44:26 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 40BD029D; Thu, 3 Jan 2013 13:44:26 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 32EA48D1; Thu, 3 Jan 2013 13:44:26 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03DiQn6016081; Thu, 3 Jan 2013 13:44:26 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03DiQGE016080; Thu, 3 Jan 2013 13:44:26 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201301031344.r03DiQGE016080@svn.freebsd.org> From: Marius Strobl Date: Thu, 3 Jan 2013 13:44:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244991 - head/sys/dev/xen/netfront X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 13:44:26 -0000 Author: marius Date: Thu Jan 3 13:44:25 2013 New Revision: 244991 URL: http://svnweb.freebsd.org/changeset/base/244991 Log: - Replace partially incorrect function names in panic(9) strings with __func__ and add some missing ones. - Remove a stale comment. - Remove unused NUM_ELEMENTS macro. - Remove extra empty lines. - Use DEVMETHOD_END. - Use NULL rather than 0 for pointers. MFC after: 3 days Modified: head/sys/dev/xen/netfront/netfront.c Modified: head/sys/dev/xen/netfront/netfront.c ============================================================================== --- head/sys/dev/xen/netfront/netfront.c Thu Jan 3 13:42:45 2013 (r244990) +++ head/sys/dev/xen/netfront/netfront.c Thu Jan 3 13:44:25 2013 (r244991) @@ -24,7 +24,6 @@ * SUCH DAMAGE. */ - #include __FBSDID("$FreeBSD$"); @@ -208,8 +207,6 @@ struct xn_chain_data { struct mbuf *xn_rx_chain[NET_RX_RING_SIZE+1]; }; -#define NUM_ELEMENTS(x) (sizeof(x)/sizeof(*x)) - struct net_device_stats { u_long rx_packets; /* total packets received */ @@ -244,7 +241,6 @@ struct net_device_stats }; struct netfront_info { - struct ifnet *xn_ifp; #if __FreeBSD_version >= 700000 struct lro_ctrl xn_lro; @@ -329,12 +325,6 @@ struct netfront_rx_info { /* Access macros for acquiring freeing slots in xn_free_{tx,rx}_idxs[]. */ - - -/* - * Access macros for acquiring freeing slots in tx_skbs[]. - */ - static inline void add_id_to_freelist(struct mbuf **list, uintptr_t id) { @@ -517,7 +507,6 @@ netfront_resume(device_t dev) return (0); } - /* Common code used when first setting up, and when resuming. */ static int talk_to_backend(device_t dev, struct netfront_info *info) @@ -605,7 +594,6 @@ talk_to_backend(device_t dev, struct net return err; } - static int setup_device(device_t dev, struct netfront_info *info) { @@ -794,7 +782,7 @@ netif_release_tx_bufs(struct netfront_in add_id_to_freelist(np->tx_mbufs, i); np->xn_cdata.xn_tx_chain_cnt--; if (np->xn_cdata.xn_tx_chain_cnt < 0) { - panic("netif_release_tx_bufs: tx_chain_cnt must be >= 0"); + panic("%s: tx_chain_cnt must be >= 0", __func__); } m_free(m); } @@ -946,7 +934,6 @@ refill: reservation.domid = DOMID_SELF; if (!xen_feature(XENFEAT_auto_translated_physmap)) { - /* After all PTEs have been zapped, flush the TLB. */ sc->rx_mcl[i-1].args[MULTI_UVMFLAGS_INDEX] = UVMF_TLB_FLUSH|UVMF_ALL; @@ -958,15 +945,11 @@ refill: /* Zap PTEs and give away pages in one big multicall. */ (void)HYPERVISOR_multicall(sc->rx_mcl, i+1); - /* Check return status of HYPERVISOR_dom_mem_op(). */ - if (unlikely(sc->rx_mcl[i].result != i)) - panic("Unable to reduce memory reservation\n"); - } else { - if (HYPERVISOR_memory_op( - XENMEM_decrease_reservation, &reservation) - != i) - panic("Unable to reduce memory " - "reservation\n"); + if (unlikely(sc->rx_mcl[i].result != i || + HYPERVISOR_memory_op(XENMEM_decrease_reservation, + &reservation) != i)) + panic("%s: unable to reduce memory " + "reservation\n", __func__); } } else { wmb(); @@ -1169,8 +1152,8 @@ xn_txeof(struct netfront_info *np) ifp->if_opackets++; if (unlikely(gnttab_query_foreign_access( np->grant_tx_ref[id]) != 0)) { - panic("grant id %u still in use by the backend", - id); + panic("%s: grant id %u still in use by the " + "backend", __func__, id); } gnttab_end_foreign_access_ref( np->grant_tx_ref[id]); @@ -1210,7 +1193,6 @@ xn_txeof(struct netfront_info *np) netif_wake_queue(dev); #endif } - } static void @@ -1240,7 +1222,6 @@ xn_intr(void *xsc) xn_start(ifp); } - static void xennet_move_rx_slot(struct netfront_info *np, struct mbuf *m, grant_ref_t ref) @@ -1319,17 +1300,15 @@ xennet_get_responses(struct netfront_inf m0 = m = m_prev = xennet_get_rx_mbuf(np, *cons); - if (rx->flags & NETRXF_extra_info) { err = xennet_get_extras(np, extras, rp, cons); } - if (m0 != NULL) { m0->m_pkthdr.len = 0; m0->m_next = NULL; } - + for (;;) { u_long mfn; @@ -1468,10 +1447,8 @@ xn_tick_locked(struct netfront_info *sc) callout_reset(&sc->xn_stat_ch, hz, xn_tick, sc); /* XXX placeholder for printing debug information */ - } - static void xn_tick(void *xsc) { @@ -1481,7 +1458,6 @@ xn_tick(void *xsc) XN_RX_LOCK(sc); xn_tick_locked(sc); XN_RX_UNLOCK(sc); - } /** @@ -1595,10 +1571,12 @@ xn_assemble_tx_request(struct netfront_i tx = RING_GET_REQUEST(&sc->tx, sc->tx.req_prod_pvt); id = get_id_from_freelist(sc->tx_mbufs); if (id == 0) - panic("xn_start_locked: was allocated the freelist head!\n"); + panic("%s: was allocated the freelist head!\n", + __func__); sc->xn_cdata.xn_tx_chain_cnt++; if (sc->xn_cdata.xn_tx_chain_cnt > NET_TX_RING_SIZE) - panic("xn_start_locked: tx_chain_cnt must be <= NET_TX_RING_SIZE\n"); + panic("%s: tx_chain_cnt must be <= NET_TX_RING_SIZE\n", + __func__); sc->tx_mbufs[id] = m; tx->id = id; ref = gnttab_claim_grant_reference(&sc->gref_tx_head); @@ -1710,7 +1688,6 @@ xn_start_locked(struct ifnet *ifp) } } - static void xn_start(struct ifnet *ifp) { @@ -1744,10 +1721,8 @@ xn_ifinit_locked(struct netfront_info *s if_link_state_change(ifp, LINK_STATE_UP); callout_reset(&sc->xn_stat_ch, hz, xn_tick, sc); - } - static void xn_ifinit(void *xsc) { @@ -1756,10 +1731,8 @@ xn_ifinit(void *xsc) XN_LOCK(sc); xn_ifinit_locked(sc); XN_UNLOCK(sc); - } - static int xn_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { @@ -2261,7 +2234,7 @@ static device_method_t netfront_methods[ /* Xenbus interface */ DEVMETHOD(xenbus_otherend_changed, netfront_backend_changed), - { 0, 0 } + DEVMETHOD_END }; static driver_t netfront_driver = { @@ -2271,4 +2244,5 @@ static driver_t netfront_driver = { }; devclass_t netfront_devclass; -DRIVER_MODULE(xe, xenbusb_front, netfront_driver, netfront_devclass, 0, 0); +DRIVER_MODULE(xe, xenbusb_front, netfront_driver, netfront_devclass, NULL, + NULL); From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 14:30:26 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 151A9CC; Thu, 3 Jan 2013 14:30:26 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id EE0DAAB6; Thu, 3 Jan 2013 14:30:25 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03EUPmh023438; Thu, 3 Jan 2013 14:30:25 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03EUOmo023431; Thu, 3 Jan 2013 14:30:24 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201301031430.r03EUOmo023431@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Thu, 3 Jan 2013 14:30:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244992 - in head/sys: amd64/conf i386/conf ia64/conf pc98/conf powerpc/conf sparc64/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 14:30:26 -0000 Author: des Date: Thu Jan 3 14:30:24 2013 New Revision: 244992 URL: http://svnweb.freebsd.org/changeset/base/244992 Log: As discussed on -current last October, remove the firewire drivers from GENERIC. Modified: head/sys/amd64/conf/GENERIC head/sys/i386/conf/GENERIC head/sys/ia64/conf/GENERIC head/sys/pc98/conf/GENERIC head/sys/powerpc/conf/GENERIC head/sys/sparc64/conf/GENERIC Modified: head/sys/amd64/conf/GENERIC ============================================================================== --- head/sys/amd64/conf/GENERIC Thu Jan 3 13:44:25 2013 (r244991) +++ head/sys/amd64/conf/GENERIC Thu Jan 3 14:30:24 2013 (r244992) @@ -317,15 +317,6 @@ device usb # USB Bus (required) device ukbd # Keyboard device umass # Disks/Mass storage - Requires scbus and da -# FireWire support -device firewire # FireWire bus code -# sbp(4) works for some systems but causes boot failure on others -#device sbp # SCSI over FireWire (Requires scbus and da) -device fwe # Ethernet over FireWire (non-standard!) -device fwip # IP over FireWire (RFC 2734,3146) -device dcons # Dumb console driver -device dcons_crom # Configuration ROM for dcons - # Sound support device sound # Generic sound driver (required) device snd_cmi # CMedia CMI8338/CMI8738 Modified: head/sys/i386/conf/GENERIC ============================================================================== --- head/sys/i386/conf/GENERIC Thu Jan 3 13:44:25 2013 (r244991) +++ head/sys/i386/conf/GENERIC Thu Jan 3 14:30:24 2013 (r244992) @@ -331,15 +331,6 @@ device usb # USB Bus (required) device ukbd # Keyboard device umass # Disks/Mass storage - Requires scbus and da -# FireWire support -device firewire # FireWire bus code -# sbp(4) works for some systems but causes boot failure on others -#device sbp # SCSI over FireWire (Requires scbus and da) -device fwe # Ethernet over FireWire (non-standard!) -device fwip # IP over FireWire (RFC 2734,3146) -device dcons # Dumb console driver -device dcons_crom # Configuration ROM for dcons - # Sound support device sound # Generic sound driver (required) device snd_cmi # CMedia CMI8338/CMI8738 Modified: head/sys/ia64/conf/GENERIC ============================================================================== --- head/sys/ia64/conf/GENERIC Thu Jan 3 13:44:25 2013 (r244991) +++ head/sys/ia64/conf/GENERIC Thu Jan 3 14:30:24 2013 (r244992) @@ -77,7 +77,6 @@ options WITNESS_SKIPSPIN # Don't run wi options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones # Various "busses" -device firewire # FireWire bus code device miibus # MII bus support (Ethernet) device pci # PCI bus support device scbus # SCSI bus (required for ATA/SCSI) Modified: head/sys/pc98/conf/GENERIC ============================================================================== --- head/sys/pc98/conf/GENERIC Thu Jan 3 13:44:25 2013 (r244991) +++ head/sys/pc98/conf/GENERIC Thu Jan 3 14:30:24 2013 (r244992) @@ -270,7 +270,6 @@ device bpf # Berkeley packet filter #device zyd # ZyDAS zd1211/zd1211b wireless NICs # FireWire support -#device firewire # FireWire bus code #device sbp # SCSI over FireWire (Requires scbus and da) #device fwe # Ethernet over FireWire (non-standard!) Modified: head/sys/powerpc/conf/GENERIC ============================================================================== --- head/sys/powerpc/conf/GENERIC Thu Jan 3 13:44:25 2013 (r244991) +++ head/sys/powerpc/conf/GENERIC Thu Jan 3 14:30:24 2013 (r244992) @@ -183,12 +183,6 @@ device kue # Kawasaki LSI USB Ethernet options IEEE80211_SUPPORT_MESH options AH_SUPPORT_AR5416 -# FireWire support -device firewire # FireWire bus code -# sbp(4) works for some systems but causes boot failure on others -device sbp # SCSI over FireWire (Requires scbus and da) -device fwe # Ethernet over FireWire (non-standard!) - # Misc device iicbus # I2C bus code device kiic # Keywest I2C Modified: head/sys/sparc64/conf/GENERIC ============================================================================== --- head/sys/sparc64/conf/GENERIC Thu Jan 3 13:44:25 2013 (r244991) +++ head/sys/sparc64/conf/GENERIC Thu Jan 3 14:30:24 2013 (r244992) @@ -238,15 +238,6 @@ device usb # USB Bus (required) device ukbd # Keyboard device umass # Disks/Mass storage - Requires scbus and da -# FireWire support -device firewire # FireWire bus code -# sbp(4) works for some systems but causes boot failure on others -#device sbp # SCSI over FireWire (Requires scbus and da) -device fwe # Ethernet over FireWire (non-standard!) -device fwip # IP over FireWire (RFC 2734,3146) -device dcons # Dumb console driver -device dcons_crom # Configuration ROM for dcons - # Sound support device sound # Generic sound driver (required) device snd_audiocs # Crystal Semiconductor CS4231 From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 15:31:24 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 68BE88C2; Thu, 3 Jan 2013 15:31:24 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2B44EED0; Thu, 3 Jan 2013 15:31:24 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03FVOls032811; Thu, 3 Jan 2013 15:31:24 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03FVOX1032810; Thu, 3 Jan 2013 15:31:24 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201301031531.r03FVOX1032810@svn.freebsd.org> From: Marius Strobl Date: Thu, 3 Jan 2013 15:31:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244993 - in head/sys/dev/xen: evtchn xenpci X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 15:31:24 -0000 Author: marius Date: Thu Jan 3 15:31:23 2013 New Revision: 244993 URL: http://svnweb.freebsd.org/changeset/base/244993 Log: Remove files not connected to the build. It's confusing enough that we still have two not quite the same evtchn.c left over. MFC after: 3 day Deleted: head/sys/dev/xen/evtchn/ head/sys/dev/xen/xenpci/machine_reboot.c From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 15:48:00 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id A689A977; Thu, 3 Jan 2013 15:48:00 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 97966FE0; Thu, 3 Jan 2013 15:48:00 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03Fm0nL035754; Thu, 3 Jan 2013 15:48:00 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03Fm0lV035753; Thu, 3 Jan 2013 15:48:00 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201301031548.r03Fm0lV035753@svn.freebsd.org> From: Devin Teske Date: Thu, 3 Jan 2013 15:48:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244994 - head/usr.sbin/bsdconfig/share X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 15:48:00 -0000 Author: dteske Date: Thu Jan 3 15:48:00 2013 New Revision: 244994 URL: http://svnweb.freebsd.org/changeset/base/244994 Log: Comments. Modified: head/usr.sbin/bsdconfig/share/common.subr Modified: head/usr.sbin/bsdconfig/share/common.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/common.subr Thu Jan 3 15:31:23 2013 (r244993) +++ head/usr.sbin/bsdconfig/share/common.subr Thu Jan 3 15:48:00 2013 (r244994) @@ -64,10 +64,16 @@ export UNAME_R="$(uname -r)" # Release L ############################################################ FUNCTIONS +# f_dprintf $fmt [ $opts ... ] # # Sensible debug function. Override in ~/.bsdconfigrc if desired. # See /usr/share/examples/bsdconfig/bsdconfigrc for example. # +# If $debug is set and non-NULL, prints DEBUG info using printf(1) syntax: +# + To $debugFile, if set and non-NULL +# + To standard output if $debugFile is either NULL or unset +# + To both if $debugFile begins with a single plus-sign (`+') +# f_dprintf() { [ "$debug" ] || return $SUCCESS From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 16:11:25 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 801AB2B9; Thu, 3 Jan 2013 16:11:25 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 72826188; Thu, 3 Jan 2013 16:11:25 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03GBP8g039692; Thu, 3 Jan 2013 16:11:25 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03GBPlL039691; Thu, 3 Jan 2013 16:11:25 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201301031611.r03GBPlL039691@svn.freebsd.org> From: Mark Johnston Date: Thu, 3 Jan 2013 16:11:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244995 - head/usr.sbin/newsyslog X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 16:11:25 -0000 Author: markj Date: Thu Jan 3 16:11:24 2013 New Revision: 244995 URL: http://svnweb.freebsd.org/changeset/base/244995 Log: Fix a typo in an error message. Approved by: rstone (co-mentor) MFC after: 1 week Modified: head/usr.sbin/newsyslog/newsyslog.c Modified: head/usr.sbin/newsyslog/newsyslog.c ============================================================================== --- head/usr.sbin/newsyslog/newsyslog.c Thu Jan 3 15:48:00 2013 (r244994) +++ head/usr.sbin/newsyslog/newsyslog.c Thu Jan 3 16:11:24 2013 (r244995) @@ -1582,7 +1582,7 @@ delete_oldest_timelog(const struct conf_ oldlogs[i].fname); else if (unlinkat(dir_fd, oldlogs[i].fname, 0) != 0) { snprintf(errbuf, sizeof(errbuf), - "Could not delet old logfile '%s'", + "Could not delete old logfile '%s'", oldlogs[i].fname); perror(errbuf); } From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 16:12:49 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id AEA4F5C6; Thu, 3 Jan 2013 16:12:49 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 9D34D19A; Thu, 3 Jan 2013 16:12:49 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03GCnxY040019; Thu, 3 Jan 2013 16:12:49 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03GCnob040017; Thu, 3 Jan 2013 16:12:49 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201301031612.r03GCnob040017@svn.freebsd.org> From: Mark Johnston Date: Thu, 3 Jan 2013 16:12:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244996 - head/usr.sbin/newsyslog X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 16:12:49 -0000 Author: markj Date: Thu Jan 3 16:12:48 2013 New Revision: 244996 URL: http://svnweb.freebsd.org/changeset/base/244996 Log: Have -n imply -r, since dry-run mode obviously doesn't require root privileges. Approved by: rstone (co-mentor) MFC after: 1 week Modified: head/usr.sbin/newsyslog/newsyslog.8 head/usr.sbin/newsyslog/newsyslog.c Modified: head/usr.sbin/newsyslog/newsyslog.8 ============================================================================== --- head/usr.sbin/newsyslog/newsyslog.8 Thu Jan 3 16:11:24 2013 (r244995) +++ head/usr.sbin/newsyslog/newsyslog.8 Thu Jan 3 16:12:48 2013 (r244996) @@ -125,7 +125,9 @@ reasons for either trimming that log or Cause .Nm not to trim the logs, but to print out what it would do if this option -were not specified. +were not specified. This option implies the +.Fl r +option. .It Fl r Remove the restriction that .Nm Modified: head/usr.sbin/newsyslog/newsyslog.c ============================================================================== --- head/usr.sbin/newsyslog/newsyslog.c Thu Jan 3 16:11:24 2013 (r244995) +++ head/usr.sbin/newsyslog/newsyslog.c Thu Jan 3 16:12:48 2013 (r244996) @@ -644,7 +644,7 @@ parse_args(int argc, char **argv) break; case 'n': noaction++; - break; + /* FALLTHROUGH */ case 'r': needroot = 0; break; From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 16:14:52 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0C5BB76A; Thu, 3 Jan 2013 16:14:52 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id F33291BE; Thu, 3 Jan 2013 16:14:51 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03GEpNl040371; Thu, 3 Jan 2013 16:14:51 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03GEpGi040370; Thu, 3 Jan 2013 16:14:51 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201301031614.r03GEpGi040370@svn.freebsd.org> From: Mark Johnston Date: Thu, 3 Jan 2013 16:14:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244997 - head/usr.sbin/newsyslog X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 16:14:52 -0000 Author: markj Date: Thu Jan 3 16:14:51 2013 New Revision: 244997 URL: http://svnweb.freebsd.org/changeset/base/244997 Log: Make sure to update the mtime of a logfile after archiving it. This ensures that the next rotation happens at the correct time when using interval-based rotations. PR: bin/174438 Reviewed by: gad Approved by: rstone (co-mentor) MFC after: 1 week Modified: head/usr.sbin/newsyslog/newsyslog.c Modified: head/usr.sbin/newsyslog/newsyslog.c ============================================================================== --- head/usr.sbin/newsyslog/newsyslog.c Thu Jan 3 16:12:48 2013 (r244996) +++ head/usr.sbin/newsyslog/newsyslog.c Thu Jan 3 16:14:51 2013 (r244997) @@ -1814,12 +1814,21 @@ do_rotate(const struct conf_entry *ent) printf("\tcp %s %s\n", ent->log, file1); else printf("\tln %s %s\n", ent->log, file1); + printf("\ttouch %s\t\t" + "# Update mtime for 'when'-interval processing\n", + file1); } else { if (!(flags & CE_BINARY)) { /* Report the trimming to the old log */ log_trim(ent->log, ent); } savelog(ent->log, file1); + /* + * Interval-based rotations are done using the mtime of + * the most recently archived log, so make sure it gets + * updated during a rotation. + */ + utimes(file1, NULL); } change_attrs(file1, ent); } From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 16:15:37 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E3C128DE; Thu, 3 Jan 2013 16:15:36 +0000 (UTC) (envelope-from peter@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id BC7BA1C6; Thu, 3 Jan 2013 16:15:36 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03GFaPB040525; Thu, 3 Jan 2013 16:15:36 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03GFZjC040519; Thu, 3 Jan 2013 16:15:35 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201301031615.r03GFZjC040519@svn.freebsd.org> From: Peter Wemm Date: Thu, 3 Jan 2013 16:15:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244998 - in head/share/examples: . cvsup X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 16:15:37 -0000 Author: peter Date: Thu Jan 3 16:15:35 2013 New Revision: 244998 URL: http://svnweb.freebsd.org/changeset/base/244998 Log: Tone down the encouragement to use cvsup. Add directions to the handbook pages that cover the more current methods and bring closer to reality. Deleted: head/share/examples/cvsup/gnats-supfile Modified: head/share/examples/Makefile head/share/examples/cvsup/README head/share/examples/cvsup/cvs-supfile head/share/examples/cvsup/ports-supfile head/share/examples/cvsup/stable-supfile head/share/examples/cvsup/standard-supfile Modified: head/share/examples/Makefile ============================================================================== --- head/share/examples/Makefile Thu Jan 3 16:14:51 2013 (r244997) +++ head/share/examples/Makefile Thu Jan 3 16:15:35 2013 (r244998) @@ -52,7 +52,6 @@ XFILES= BSD_daemon/FreeBSD.pfa \ csh/dot.cshrc \ cvsup/README \ cvsup/cvs-supfile \ - cvsup/gnats-supfile \ cvsup/ports-supfile \ cvsup/refuse \ cvsup/refuse.README \ Modified: head/share/examples/cvsup/README ============================================================================== --- head/share/examples/cvsup/README Thu Jan 3 16:14:51 2013 (r244997) +++ head/share/examples/cvsup/README Thu Jan 3 16:15:35 2013 (r244998) @@ -1,5 +1,15 @@ # $FreeBSD$ +BEWARE, CVS is deprecated and no longer supported by the FreeBSD project. + +The primary development work happens in Subversion and is temporarily +exported to the legacy CVS system with significant time delays. + +You should NOT set up a new consumer of FreeBSD source code via CVS. +Please see: +http://www.freebsd.org/doc/handbook/svn.html +http://www.freebsd.org/doc/handbook/svn-mirrors.html + This directory contains sample "supfiles" for obtaining and updating the FreeBSD sources via the Internet. These supfiles will work with CVSup version 14.0 or later. For general information on CVSup @@ -20,10 +30,6 @@ FreeBSD, use: cvs-supfile Main source tree and ports collection -To maintain a copy of the FreeBSD bug database, use the file: - - gnats-supfile FreeBSD bug database - IMPORTANT: Before you use any of the supfiles in this directory, you will need to edit in an appropriate "host" setting. See: Modified: head/share/examples/cvsup/cvs-supfile ============================================================================== --- head/share/examples/cvsup/cvs-supfile Thu Jan 3 16:14:51 2013 (r244997) +++ head/share/examples/cvsup/cvs-supfile Thu Jan 3 16:15:35 2013 (r244998) @@ -1,7 +1,14 @@ # $FreeBSD$ # -# This file contains all of the "CVSup collections" that make up the -# CVS development tree of the FreeBSD system. +# BEWARE, CVS is deprecated and no longer supported by the FreeBSD project. +# +# The primary development work happens in Subversion and is temporarily +# exported to the legacy CVS system with significant time delays. +# +# You should NOT set up a new consumer of FreeBSD source code via CVS. +# Please see: +# http://www.freebsd.org/doc/handbook/svn.html +# http://www.freebsd.org/doc/handbook/svn-mirrors.html # # csup (CVS Update Protocol) allows you to download the latest CVS # tree (or any branch of development therefrom) to your system easily @@ -61,36 +68,6 @@ # mega-collection. It includes all of the individual "src-*" collections. src-all -# These are the individual collections that make up "src-all". If you -# use these, be sure to comment out "src-all" above. -#src-base -#src-bin -#src-cddl -#src-contrib -#src-etc -#src-games -#src-gnu -#src-include -#src-kerberos5 -#src-kerberosIV -#src-lib -#src-libexec -#src-release -#src-rescue -#src-sbin -#src-share -#src-sys -#src-tools -#src-usrbin -#src-usrsbin -# These are the individual collections that make up FreeBSD's crypto -# collection. They are no longer export-restricted and are a part of -# src-all -#src-crypto -#src-eBones -#src-secure -#src-sys-crypto - ## Ports Collection. # # The easiest way to get the ports tree is to use the "ports-all" @@ -98,77 +75,6 @@ src-all # collections, ports-all -# These are the individual collections that make up "ports-all". If you -# use these, be sure to comment out "ports-all" above and always include -# "ports-base" if you use any of the other individual collections below. -# Your ports may not build correctly without an up-to-date "ports-base". -# -#ports-base -# -#ports-accessibility -#ports-arabic -#ports-archivers -#ports-astro -#ports-audio -#ports-benchmarks -#ports-biology -#ports-cad -#ports-chinese -#ports-comms -#ports-converters -#ports-databases -#ports-deskutils -#ports-devel -#ports-dns -#ports-editors -#ports-emulators -#ports-finance -#ports-french -#ports-ftp -#ports-games -#ports-german -#ports-graphics -#ports-hebrew -#ports-hungarian -#ports-irc -#ports-japanese -#ports-java -#ports-korean -#ports-lang -#ports-mail -#ports-math -#ports-misc -#ports-multimedia -#ports-net -#ports-net-im -#ports-net-mgmt -#ports-net-p2p -#ports-news -#ports-palm -#ports-picobsd -#ports-polish -#ports-ports-mgmt -#ports-portuguese -#ports-print -#ports-russian -#ports-science -#ports-security -#ports-shells -#ports-sysutils -#ports-textproc -#ports-ukrainian -#ports-vietnamese -#ports-www -#ports-x11 -#ports-x11-clocks -#ports-x11-drivers -#ports-x11-fm -#ports-x11-fonts -#ports-x11-servers -#ports-x11-themes -#ports-x11-toolkits -#ports-x11-wm - ## Projects # # This collection retrieves the projects tree of the FreeBSD @@ -179,11 +85,3 @@ projects-all # # This is to get the control files that cvs(1) needs and the commit logs. cvsroot-all - -# These are the individual collections that make up "cvsroot-all" If you -# use these, be sure to comment out "cvsroot-all" above. "cvsroot-common" -# is a synthetic CVSROOT that has all the modules from the other CVSROOT-* -# directories merged into one, and merged commitlogs via symlinks. -#cvsroot-common -#cvsroot-src -#cvsroot-ports Modified: head/share/examples/cvsup/ports-supfile ============================================================================== --- head/share/examples/cvsup/ports-supfile Thu Jan 3 16:14:51 2013 (r244997) +++ head/share/examples/cvsup/ports-supfile Thu Jan 3 16:15:35 2013 (r244998) @@ -1,7 +1,14 @@ # $FreeBSD$ # -# This file contains all of the "CVSup collections" that make up the -# ports collection. +# BEWARE, CVS is deprecated and no longer supported by the FreeBSD project. +# +# The primary development work happens in Subversion and is temporarily +# exported to the legacy CVS system with significant time delays. +# +# You should NOT set up a new consumer of FreeBSD source code via CVS. +# Please see: +# http://www.freebsd.org/doc/handbook/svn.html +# http://www.freebsd.org/doc/handbook/svn-mirrors.html # # csup (CVS Update Protocol) allows you to download the latest CVS # tree (or any branch of development therefrom) to your system easily @@ -65,76 +72,3 @@ # mega-collection. It includes all of the individual "ports-*" # collections, ports-all - -# These are the individual collections that make up "ports-all". If you -# use these, be sure to comment out "ports-all" above. - -# Be sure to ALWAYS cvsup the ports-base collection if you use any of the -# other individual collections below. ports-base is a mandatory collection -# for the ports collection, and your ports may not build correctly if it -# is not kept up to date. -# -# Use of individual collections is not a supported configuration. -#ports-base -#ports-accessibility -#ports-arabic -#ports-archivers -#ports-astro -#ports-audio -#ports-benchmarks -#ports-biology -#ports-cad -#ports-chinese -#ports-comms -#ports-converters -#ports-databases -#ports-deskutils -#ports-devel -#ports-dns -#ports-editors -#ports-emulators -#ports-finance -#ports-french -#ports-ftp -#ports-games -#ports-german -#ports-graphics -#ports-hebrew -#ports-hungarian -#ports-irc -#ports-japanese -#ports-java -#ports-korean -#ports-lang -#ports-mail -#ports-math -#ports-misc -#ports-multimedia -#ports-net -#ports-net-im -#ports-net-mgmt -#ports-net-p2p -#ports-news -#ports-palm -#ports-polish -#ports-ports-mgmt -#ports-portuguese -#ports-print -#ports-russian -#ports-science -#ports-security -#ports-shells -#ports-sysutils -#ports-textproc -#ports-ukrainian -#ports-vietnamese -#ports-www -#ports-x11 -#ports-x11-clocks -#ports-x11-drivers -#ports-x11-fm -#ports-x11-fonts -#ports-x11-servers -#ports-x11-themes -#ports-x11-toolkits -#ports-x11-wm Modified: head/share/examples/cvsup/stable-supfile ============================================================================== --- head/share/examples/cvsup/stable-supfile Thu Jan 3 16:14:51 2013 (r244997) +++ head/share/examples/cvsup/stable-supfile Thu Jan 3 16:15:35 2013 (r244998) @@ -1,7 +1,14 @@ # $FreeBSD$ # -# This file contains all of the "CVSup collections" that make up the -# FreeBSD-stable source tree. +# BEWARE, CVS is deprecated and no longer supported by the FreeBSD project. +# +# The primary development work happens in Subversion and is temporarily +# exported to the legacy CVS system with significant time delays. +# +# You should NOT set up a new consumer of FreeBSD source code via CVS. +# Please see: +# http://www.freebsd.org/doc/handbook/svn.html +# http://www.freebsd.org/doc/handbook/svn-mirrors.html # # csup (CVS Update Protocol) allows you to download the latest CVS # tree (or any branch of development therefrom) to your system easily @@ -80,33 +87,3 @@ # mega-collection. It includes all of the individual "src-*" collections. # Please note: If you want to track -STABLE, leave this uncommented. src-all - -# These are the individual collections that make up "src-all". If you -# use these, be sure to comment out "src-all" above. -#src-base -#src-bin -#src-cddl -#src-contrib -#src-etc -#src-games -#src-gnu -#src-include -#src-kerberos5 -#src-kerberosIV -#src-lib -#src-libexec -#src-release -#src-rescue -#src-sbin -#src-share -#src-sys -#src-tools -#src-usrbin -#src-usrsbin -# These are the individual collections that make up FreeBSD's crypto -# collection. They are no longer export-restricted and are a part of -# src-all -#src-crypto -#src-eBones -#src-secure -#src-sys-crypto Modified: head/share/examples/cvsup/standard-supfile ============================================================================== --- head/share/examples/cvsup/standard-supfile Thu Jan 3 16:14:51 2013 (r244997) +++ head/share/examples/cvsup/standard-supfile Thu Jan 3 16:15:35 2013 (r244998) @@ -1,7 +1,14 @@ # $FreeBSD$ # -# This file contains all of the "CVSup collections" that make up the -# FreeBSD-current source tree. +# BEWARE, CVS is deprecated and no longer supported by the FreeBSD project. +# +# The primary development work happens in Subversion and is temporarily +# exported to the legacy CVS system with significant time delays. +# +# You should NOT set up a new consumer of FreeBSD source code via CVS. +# Please see: +# http://www.freebsd.org/doc/handbook/svn.html +# http://www.freebsd.org/doc/handbook/svn-mirrors.html # # csup (CVS Update Protocol) allows you to download the latest CVS # tree (or any branch of development therefrom) to your system easily @@ -59,33 +66,3 @@ # The easiest way to get the main source tree is to use the "src-all" # mega-collection. It includes all of the individual "src-*" collections. src-all - -# These are the individual collections that make up "src-all". If you -# use these, be sure to comment out "src-all" above. -#src-base -#src-bin -#src-cddl -#src-contrib -#src-etc -#src-games -#src-gnu -#src-include -#src-kerberos5 -#src-kerberosIV -#src-lib -#src-libexec -#src-release -#src-rescue -#src-sbin -#src-share -#src-sys -#src-tools -#src-usrbin -#src-usrsbin -# These are the individual collections that make up FreeBSD's crypto -# collection. They are no longer export-restricted and are a part of -# src-all -#src-crypto -#src-eBones -#src-secure -#src-sys-crypto From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 18:50:28 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id A529AC25; Thu, 3 Jan 2013 18:50:28 +0000 (UTC) (envelope-from gnn@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7DA2AAD9; Thu, 3 Jan 2013 18:50:28 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03IoSWb063694; Thu, 3 Jan 2013 18:50:28 GMT (envelope-from gnn@svn.freebsd.org) Received: (from gnn@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03IoSBL063693; Thu, 3 Jan 2013 18:50:28 GMT (envelope-from gnn@svn.freebsd.org) Message-Id: <201301031850.r03IoSBL063693@svn.freebsd.org> From: "George V. Neville-Neil" Date: Thu, 3 Jan 2013 18:50:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r244999 - stable/9/sys/dev/hwpmc X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 18:50:28 -0000 Author: gnn Date: Thu Jan 3 18:50:27 2013 New Revision: 244999 URL: http://svnweb.freebsd.org/changeset/base/244999 Log: MFC: 234930 Fix so that ,usr and ,os work correctly with fixed function (IAF) counters. Modified: stable/9/sys/dev/hwpmc/hwpmc_core.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/amd64/include/xen/ (props changed) stable/9/sys/boot/ (props changed) stable/9/sys/boot/i386/efi/ (props changed) stable/9/sys/boot/ia64/efi/ (props changed) stable/9/sys/boot/ia64/ski/ (props changed) stable/9/sys/boot/powerpc/boot1.chrp/ (props changed) stable/9/sys/boot/powerpc/ofw/ (props changed) stable/9/sys/cddl/contrib/opensolaris/ (props changed) stable/9/sys/conf/ (props changed) stable/9/sys/contrib/dev/acpica/ (props changed) stable/9/sys/contrib/octeon-sdk/ (props changed) stable/9/sys/contrib/pf/ (props changed) stable/9/sys/contrib/x86emu/ (props changed) stable/9/sys/dev/ (props changed) stable/9/sys/dev/e1000/ (props changed) stable/9/sys/dev/isp/ (props changed) stable/9/sys/dev/ixgbe/ (props changed) stable/9/sys/dev/puc/ (props changed) stable/9/sys/fs/ (props changed) stable/9/sys/fs/ntfs/ (props changed) stable/9/sys/modules/ (props changed) Modified: stable/9/sys/dev/hwpmc/hwpmc_core.c ============================================================================== --- stable/9/sys/dev/hwpmc/hwpmc_core.c Thu Jan 3 16:15:35 2013 (r244998) +++ stable/9/sys/dev/hwpmc/hwpmc_core.c Thu Jan 3 18:50:27 2013 (r244999) @@ -52,7 +52,8 @@ __FBSDID("$FreeBSD$"); #define CORE_CPUID_EDX 0x3 #define IAF_PMC_CAPS \ - (PMC_CAP_READ | PMC_CAP_WRITE | PMC_CAP_INTERRUPT) + (PMC_CAP_READ | PMC_CAP_WRITE | PMC_CAP_INTERRUPT | \ + PMC_CAP_USER | PMC_CAP_SYSTEM) #define IAF_RI_TO_MSR(RI) ((RI) + (1 << 30)) #define IAP_PMC_CAPS (PMC_CAP_INTERRUPT | PMC_CAP_USER | PMC_CAP_SYSTEM | \ From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 18:57:51 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id ADFEE119; Thu, 3 Jan 2013 18:57:51 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id 8ABD3B52; Thu, 3 Jan 2013 18:57:51 +0000 (UTC) Received: from [192.168.2.119] (host109-157-116-32.range109-157.btcentralplus.com [109.157.116.32]) by cyrus.watson.org (Postfix) with ESMTPSA id 0782F46B3F; Thu, 3 Jan 2013 13:57:49 -0500 (EST) Subject: Re: svn commit: r244899 - head/sys/mips/beri Mime-Version: 1.0 (Apple Message framework v1283) Content-Type: text/plain; charset=us-ascii From: "Robert N. M. Watson" In-Reply-To: <20130103100258.2e22763f@fubar.geek.nz> Date: Thu, 3 Jan 2013 18:57:48 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: <7D95B3E5-5F9C-45D8-9C79-C0F6D4CE625D@FreeBSD.org> References: <201212311106.qBVB6chM016661@svn.freebsd.org> <20130102081746.5435db05@fubar.geek.nz> <20130102110856.7c280fd5@fubar.geek.nz> <0E1E1A5C-BB34-4B82-828F-6FEE770A6037@FreeBSD.org> <20130103100258.2e22763f@fubar.geek.nz> To: Andrew Turner X-Mailer: Apple Mail (2.1283) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 18:57:51 -0000 On 2 Jan 2013, at 21:02, Andrew Turner wrote: >> This seemed to do the trick; what do you think of the attached? This >> isn't a board-specific change, so I dropped it into the common >> fdt_mips.c code. On the other hand, this left it a bit open as to >> what the right compatible=3D line to use was, so feedback there most >> welcome. >=20 > The patch looks good. =46rom my reading of [1] the compatible value > should be something like "mips,mips4k" as it's value is of the form > ",". >=20 > I have been thinking the best way of merging these almost identical > decode functions. Linux appears to do it by providing a per-controller > function that can translate between the interrupt spec and the > configuration allowing them to have a generic parsing function that > doesn't need to check if the controller is compatible. I would like us > to have something similar as it will remove the duplicate function. Sounds good on tweaking the compatible value -- I'll do that my local = tree and merge to head fairly soon. I've now finished adapting our = current suite of device drivers to use FDT, which took a couple of days = but was fairly painless. On combining countless overlapping implementations: sounds reasonable to = me. Having a single implementation of a default parsing function = certainly wouldn't hurt -- or a single implementation of a generic one. Thanks, Robert= From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 19:01:56 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id D4CBF2E6; Thu, 3 Jan 2013 19:01:56 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C733CBDB; Thu, 3 Jan 2013 19:01:56 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03J1uwf065528; Thu, 3 Jan 2013 19:01:56 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03J1u7R065527; Thu, 3 Jan 2013 19:01:56 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201301031901.r03J1u7R065527@svn.freebsd.org> From: Konstantin Belousov Date: Thu, 3 Jan 2013 19:01:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245000 - head/sys/fs/nandfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 19:01:56 -0000 Author: kib Date: Thu Jan 3 19:01:56 2013 New Revision: 245000 URL: http://svnweb.freebsd.org/changeset/base/245000 Log: Remove the last use of the deprecated MNT_VNODE_FOREACH interface in the tree. With the help from: mjg Tested by: Ronald Klop MFC after: 2 weeks Modified: head/sys/fs/nandfs/nandfs_segment.c Modified: head/sys/fs/nandfs/nandfs_segment.c ============================================================================== --- head/sys/fs/nandfs/nandfs_segment.c Thu Jan 3 18:50:27 2013 (r244999) +++ head/sys/fs/nandfs/nandfs_segment.c Thu Jan 3 19:01:56 2013 (r245000) @@ -478,39 +478,19 @@ nandfs_iterate_dirty_vnodes(struct mount struct nandfs_node *nandfs_node; struct vnode *vp, *mvp; struct thread *td; - int error, lockreq, update; + int error, update; td = curthread; - lockreq = LK_EXCLUSIVE | LK_INTERLOCK | LK_RETRY; - MNT_ILOCK(mp); - - MNT_VNODE_FOREACH(vp, mp, mvp) { + MNT_VNODE_FOREACH_ACTIVE(vp, mp, mvp) { update = 0; - if (mp->mnt_syncer == vp) - continue; - if (VOP_ISLOCKED(vp)) - continue; - - VI_LOCK(vp); - MNT_IUNLOCK(mp); - if (vp->v_iflag & VI_DOOMED) { + if (mp->mnt_syncer == vp || VOP_ISLOCKED(vp)) { VI_UNLOCK(vp); - MNT_ILOCK(mp); - continue; - } - - if ((error = vget(vp, lockreq, td)) != 0) { - MNT_ILOCK(mp); continue; } - - if (vp->v_iflag & VI_DOOMED) { - vput(vp); - MNT_ILOCK(mp); + if (vget(vp, LK_EXCLUSIVE | LK_INTERLOCK | LK_NOWAIT, td) != 0) continue; - } nandfs_node = VTON(vp); if (nandfs_node->nn_flags & IN_MODIFIED) { @@ -532,12 +512,8 @@ nandfs_iterate_dirty_vnodes(struct mount if (update) nandfs_node_update(nandfs_node); - - MNT_ILOCK(mp); } - MNT_IUNLOCK(mp); - return (0); } From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 19:02:53 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 4F854539; Thu, 3 Jan 2013 19:02:53 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 418C1BED; Thu, 3 Jan 2013 19:02:53 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03J2rSM065807; Thu, 3 Jan 2013 19:02:53 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03J2qfP065805; Thu, 3 Jan 2013 19:02:52 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201301031902.r03J2qfP065805@svn.freebsd.org> From: Konstantin Belousov Date: Thu, 3 Jan 2013 19:02:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245001 - in head/sys: kern sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 19:02:53 -0000 Author: kib Date: Thu Jan 3 19:02:52 2013 New Revision: 245001 URL: http://svnweb.freebsd.org/changeset/base/245001 Log: Remove the deprecated MNT_VNODE_FOREACH interface. Use the MNT_VNODE_FOREACH_ALL instead. Modified: head/sys/kern/vfs_mount.c head/sys/sys/mount.h Modified: head/sys/kern/vfs_mount.c ============================================================================== --- head/sys/kern/vfs_mount.c Thu Jan 3 19:01:56 2013 (r245000) +++ head/sys/kern/vfs_mount.c Thu Jan 3 19:02:52 2013 (r245001) @@ -1705,103 +1705,6 @@ vfs_copyopt(opts, name, dest, len) return (ENOENT); } -/* - * These are helper functions for filesystems to traverse all - * their vnodes. See MNT_VNODE_FOREACH() in sys/mount.h. - * - * This interface has been deprecated in favor of MNT_VNODE_FOREACH_ALL. - */ - -MALLOC_DECLARE(M_VNODE_MARKER); - -struct vnode * -__mnt_vnode_next(struct vnode **mvp, struct mount *mp) -{ - struct vnode *vp; - - mtx_assert(MNT_MTX(mp), MA_OWNED); - - KASSERT((*mvp)->v_mount == mp, ("marker vnode mount list mismatch")); - if (should_yield()) { - MNT_IUNLOCK(mp); - kern_yield(PRI_USER); - MNT_ILOCK(mp); - } - vp = TAILQ_NEXT(*mvp, v_nmntvnodes); - while (vp != NULL && vp->v_type == VMARKER) - vp = TAILQ_NEXT(vp, v_nmntvnodes); - - /* Check if we are done */ - if (vp == NULL) { - __mnt_vnode_markerfree(mvp, mp); - return (NULL); - } - TAILQ_REMOVE(&mp->mnt_nvnodelist, *mvp, v_nmntvnodes); - TAILQ_INSERT_AFTER(&mp->mnt_nvnodelist, vp, *mvp, v_nmntvnodes); - return (vp); -} - -struct vnode * -__mnt_vnode_first(struct vnode **mvp, struct mount *mp) -{ - struct vnode *vp; - - mtx_assert(MNT_MTX(mp), MA_OWNED); - - vp = TAILQ_FIRST(&mp->mnt_nvnodelist); - while (vp != NULL && vp->v_type == VMARKER) - vp = TAILQ_NEXT(vp, v_nmntvnodes); - - /* Check if we are done */ - if (vp == NULL) { - *mvp = NULL; - return (NULL); - } - MNT_REF(mp); - MNT_IUNLOCK(mp); - *mvp = (struct vnode *) malloc(sizeof(struct vnode), - M_VNODE_MARKER, - M_WAITOK | M_ZERO); - MNT_ILOCK(mp); - (*mvp)->v_type = VMARKER; - - vp = TAILQ_FIRST(&mp->mnt_nvnodelist); - while (vp != NULL && vp->v_type == VMARKER) - vp = TAILQ_NEXT(vp, v_nmntvnodes); - - /* Check if we are done */ - if (vp == NULL) { - MNT_IUNLOCK(mp); - free(*mvp, M_VNODE_MARKER); - MNT_ILOCK(mp); - *mvp = NULL; - MNT_REL(mp); - return (NULL); - } - (*mvp)->v_mount = mp; - TAILQ_INSERT_AFTER(&mp->mnt_nvnodelist, vp, *mvp, v_nmntvnodes); - return (vp); -} - - -void -__mnt_vnode_markerfree(struct vnode **mvp, struct mount *mp) -{ - - if (*mvp == NULL) - return; - - mtx_assert(MNT_MTX(mp), MA_OWNED); - - KASSERT((*mvp)->v_mount == mp, ("marker vnode mount list mismatch")); - TAILQ_REMOVE(&mp->mnt_nvnodelist, *mvp, v_nmntvnodes); - MNT_IUNLOCK(mp); - free(*mvp, M_VNODE_MARKER); - MNT_ILOCK(mp); - *mvp = NULL; - MNT_REL(mp); -} - int __vfs_statfs(struct mount *mp, struct statfs *sbp) { Modified: head/sys/sys/mount.h ============================================================================== --- head/sys/sys/mount.h Thu Jan 3 19:01:56 2013 (r245000) +++ head/sys/sys/mount.h Thu Jan 3 19:02:52 2013 (r245001) @@ -225,29 +225,6 @@ void __mnt_vnode_markerfree_act #define MNT_VNODE_FOREACH_ACTIVE_ABORT(mp, mvp) \ __mnt_vnode_markerfree_active(&(mvp), (mp)) -/* - * Definitions for MNT_VNODE_FOREACH. - * - * This interface has been deprecated in favor of MNT_VNODE_FOREACH_ALL. - */ -struct vnode *__mnt_vnode_next(struct vnode **mvp, struct mount *mp); -struct vnode *__mnt_vnode_first(struct vnode **mvp, struct mount *mp); -void __mnt_vnode_markerfree(struct vnode **mvp, struct mount *mp); - -#define MNT_VNODE_FOREACH(vp, mp, mvp) \ - for (vp = __mnt_vnode_first(&(mvp), (mp)); \ - (vp) != NULL; vp = __mnt_vnode_next(&(mvp), (mp))) - -#define MNT_VNODE_FOREACH_ABORT_ILOCKED(mp, mvp) \ - __mnt_vnode_markerfree(&(mvp), (mp)) - -#define MNT_VNODE_FOREACH_ABORT(mp, mvp) \ - do { \ - MNT_ILOCK(mp); \ - MNT_VNODE_FOREACH_ABORT_ILOCKED(mp, mvp); \ - MNT_IUNLOCK(mp); \ - } while (0) - #define MNT_ILOCK(mp) mtx_lock(&(mp)->mnt_mtx) #define MNT_ITRYLOCK(mp) mtx_trylock(&(mp)->mnt_mtx) #define MNT_IUNLOCK(mp) mtx_unlock(&(mp)->mnt_mtx) From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 19:03:04 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 14C0265A; Thu, 3 Jan 2013 19:03:04 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E2E43BF1; Thu, 3 Jan 2013 19:03:03 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03J33Fd065891; Thu, 3 Jan 2013 19:03:03 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03J33an065889; Thu, 3 Jan 2013 19:03:03 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301031903.r03J33an065889@svn.freebsd.org> From: Adrian Chadd Date: Thu, 3 Jan 2013 19:03:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245002 - head/sys/dev/ath X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 19:03:04 -0000 Author: adrian Date: Thu Jan 3 19:03:03 2013 New Revision: 245002 URL: http://svnweb.freebsd.org/changeset/base/245002 Log: Don't call the spectral methods for NICS that don't implement them. Modified: head/sys/dev/ath/if_ath_spectral.c head/sys/dev/ath/if_athvar.h Modified: head/sys/dev/ath/if_ath_spectral.c ============================================================================== --- head/sys/dev/ath/if_ath_spectral.c Thu Jan 3 19:02:52 2013 (r245001) +++ head/sys/dev/ath/if_ath_spectral.c Thu Jan 3 19:03:03 2013 (r245002) @@ -82,13 +82,20 @@ struct ath_spectral_state { */ /* - * Attach DFS to the given interface + * Attach spectral to the given interface */ int ath_spectral_attach(struct ath_softc *sc) { struct ath_spectral_state *ss; + /* + * If spectral isn't supported, don't error - just + * quietly complete. + */ + if (! ath_hal_spectral_supported(sc->sc_ah)) + return (0); + ss = malloc(sizeof(struct ath_spectral_state), M_TEMP, M_WAITOK | M_ZERO); @@ -106,11 +113,15 @@ ath_spectral_attach(struct ath_softc *sc } /* - * Detach DFS from the given interface + * Detach spectral from the given interface */ int ath_spectral_detach(struct ath_softc *sc) { + + if (! ath_hal_spectral_supported(sc->sc_ah)) + return (0); + if (sc->sc_spectral != NULL) { free(sc->sc_spectral, M_TEMP); } @@ -148,6 +159,9 @@ ath_ioctl_spectral(struct ath_softc *sc, HAL_SPECTRAL_PARAM *pe; struct ath_spectral_state *ss = sc->sc_spectral; + if (! ath_hal_spectral_supported(sc->sc_ah)) + return (EINVAL); + if (ad->ad_id & ATH_DIAG_IN) { /* * Copy in data. Modified: head/sys/dev/ath/if_athvar.h ============================================================================== --- head/sys/dev/ath/if_athvar.h Thu Jan 3 19:02:52 2013 (r245001) +++ head/sys/dev/ath/if_athvar.h Thu Jan 3 19:03:03 2013 (r245002) @@ -1303,6 +1303,8 @@ void ath_intr(void *); #define ath_hal_get_chan_ext_busy(_ah) \ ((*(_ah)->ah_get11nExtBusy)((_ah))) +#define ath_hal_spectral_supported(_ah) \ + (ath_hal_getcapability(_ah, HAL_CAP_SPECTRAL_SCAN, 0, NULL) == HAL_OK) #define ath_hal_spectral_get_config(_ah, _p) \ ((*(_ah)->ah_spectralGetConfig)((_ah), (_p))) #define ath_hal_spectral_configure(_ah, _p) \ From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 19:03:43 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 577228A7; Thu, 3 Jan 2013 19:03:43 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 49B03BFE; Thu, 3 Jan 2013 19:03:43 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03J3hDH066024; Thu, 3 Jan 2013 19:03:43 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03J3g5k066011; Thu, 3 Jan 2013 19:03:42 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201301031903.r03J3g5k066011@svn.freebsd.org> From: Konstantin Belousov Date: Thu, 3 Jan 2013 19:03:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245003 - in head/sys: amd64/conf i386/conf ia64/conf powerpc/conf sparc64/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 19:03:43 -0000 Author: kib Date: Thu Jan 3 19:03:41 2013 New Revision: 245003 URL: http://svnweb.freebsd.org/changeset/base/245003 Log: Enable the UFS quotas for big-iron GENERIC kernels. Discussed with: mckusick MFC after: 2 weeks Modified: head/sys/amd64/conf/GENERIC head/sys/i386/conf/GENERIC head/sys/ia64/conf/GENERIC head/sys/powerpc/conf/GENERIC head/sys/powerpc/conf/GENERIC64 head/sys/sparc64/conf/GENERIC Modified: head/sys/amd64/conf/GENERIC ============================================================================== --- head/sys/amd64/conf/GENERIC Thu Jan 3 19:03:03 2013 (r245002) +++ head/sys/amd64/conf/GENERIC Thu Jan 3 19:03:41 2013 (r245003) @@ -35,6 +35,7 @@ options SOFTUPDATES # Enable FFS soft options UFS_ACL # Support for access control lists options UFS_DIRHASH # Improve performance on big directories options UFS_GJOURNAL # Enable gjournal-based UFS journaling +options QUOTA # Enable disk quotas for UFS options MD_ROOT # MD is a potential root device options NFSCL # New Network Filesystem Client options NFSD # New Network Filesystem Server Modified: head/sys/i386/conf/GENERIC ============================================================================== --- head/sys/i386/conf/GENERIC Thu Jan 3 19:03:03 2013 (r245002) +++ head/sys/i386/conf/GENERIC Thu Jan 3 19:03:41 2013 (r245003) @@ -37,6 +37,7 @@ options SOFTUPDATES # Enable FFS soft options UFS_ACL # Support for access control lists options UFS_DIRHASH # Improve performance on big directories options UFS_GJOURNAL # Enable gjournal-based UFS journaling +options QUOTA # Enable disk quotas for UFS options MD_ROOT # MD is a potential root device options NFSCL # New Network Filesystem Client options NFSD # New Network Filesystem Server Modified: head/sys/ia64/conf/GENERIC ============================================================================== --- head/sys/ia64/conf/GENERIC Thu Jan 3 19:03:03 2013 (r245002) +++ head/sys/ia64/conf/GENERIC Thu Jan 3 19:03:41 2013 (r245003) @@ -60,6 +60,7 @@ options SYSVSHM # SYSV-style shared me options UFS_ACL # Support for access control lists options UFS_DIRHASH # Hash-based directory lookup scheme options UFS_GJOURNAL # Enable gjournal-based UFS journaling +options QUOTA # Enable disk quotas for UFS options _KPOSIX_PRIORITY_SCHEDULING # Posix P1003_1B RT extensions # Debugging support. Always need this: Modified: head/sys/powerpc/conf/GENERIC ============================================================================== --- head/sys/powerpc/conf/GENERIC Thu Jan 3 19:03:03 2013 (r245002) +++ head/sys/powerpc/conf/GENERIC Thu Jan 3 19:03:41 2013 (r245003) @@ -41,6 +41,7 @@ options SOFTUPDATES #Enable FFS soft u options UFS_ACL #Support for access control lists options UFS_DIRHASH #Improve performance on big directories options UFS_GJOURNAL #Enable gjournal-based UFS journaling +options QUOTA #Enable disk quotas for UFS options MD_ROOT #MD is a potential root device options NFSCL #New Network Filesystem Client options NFSD #New Network Filesystem Server Modified: head/sys/powerpc/conf/GENERIC64 ============================================================================== --- head/sys/powerpc/conf/GENERIC64 Thu Jan 3 19:03:03 2013 (r245002) +++ head/sys/powerpc/conf/GENERIC64 Thu Jan 3 19:03:41 2013 (r245003) @@ -40,6 +40,7 @@ options SOFTUPDATES #Enable FFS soft u options UFS_ACL #Support for access control lists options UFS_DIRHASH #Improve performance on big directories options UFS_GJOURNAL #Enable gjournal-based UFS journaling +options QUOTA #Enable disk quotas for UFS options MD_ROOT #MD is a potential root device options NFSCL #New Network Filesystem Client options NFSD #New Network Filesystem Server Modified: head/sys/sparc64/conf/GENERIC ============================================================================== --- head/sys/sparc64/conf/GENERIC Thu Jan 3 19:03:03 2013 (r245002) +++ head/sys/sparc64/conf/GENERIC Thu Jan 3 19:03:41 2013 (r245003) @@ -36,6 +36,7 @@ options SOFTUPDATES # Enable FFS soft options UFS_ACL # Support for access control lists options UFS_DIRHASH # Improve performance on big directories options UFS_GJOURNAL # Enable gjournal-based UFS journaling +options QUOTA # Enable disk quotas for UFS options MD_ROOT # MD is a potential root device options NFSCL # New Network Filesystem Client options NFSD # New Network Filesystem Server From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 19:17:59 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 3FC44C28; Thu, 3 Jan 2013 19:17:59 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 23885D0D; Thu, 3 Jan 2013 19:17:59 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03JHwMt068393; Thu, 3 Jan 2013 19:17:58 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03JHwlY068389; Thu, 3 Jan 2013 19:17:58 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201301031917.r03JHwlY068389@svn.freebsd.org> From: Konstantin Belousov Date: Thu, 3 Jan 2013 19:17:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245004 - head/sys/fs/nullfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 19:17:59 -0000 Author: kib Date: Thu Jan 3 19:17:57 2013 New Revision: 245004 URL: http://svnweb.freebsd.org/changeset/base/245004 Log: Add the "nocache" nullfs mount option, which disables the caching of the free nullfs vnodes, switching nullfs behaviour to pre-r240285. The option is mostly intended as the last-resort when higher pressure on the vnode cache due to doubling of the vnode counts is not desirable. Note that disabling the cache costs more than 2x wall time in the metadata-hungry scenarious. The default is "cache". Tested and benchmarked by: pho (previous version) MFC after: 2 weeks Modified: head/sys/fs/nullfs/null.h head/sys/fs/nullfs/null_subr.c head/sys/fs/nullfs/null_vfsops.c head/sys/fs/nullfs/null_vnops.c Modified: head/sys/fs/nullfs/null.h ============================================================================== --- head/sys/fs/nullfs/null.h Thu Jan 3 19:03:41 2013 (r245003) +++ head/sys/fs/nullfs/null.h Thu Jan 3 19:17:57 2013 (r245004) @@ -34,9 +34,15 @@ * $FreeBSD$ */ +#ifndef FS_NULL_H +#define FS_NULL_H + +#define NULLM_CACHE 0x0001 + struct null_mount { struct mount *nullm_vfs; struct vnode *nullm_rootvp; /* Reference to root null_node */ + uint64_t nullm_flags; }; #ifdef _KERNEL @@ -80,3 +86,5 @@ MALLOC_DECLARE(M_NULLFSNODE); #endif /* NULLFS_DEBUG */ #endif /* _KERNEL */ + +#endif Modified: head/sys/fs/nullfs/null_subr.c ============================================================================== --- head/sys/fs/nullfs/null_subr.c Thu Jan 3 19:03:41 2013 (r245003) +++ head/sys/fs/nullfs/null_subr.c Thu Jan 3 19:17:57 2013 (r245004) @@ -224,6 +224,9 @@ null_nodeget(mp, lowervp, vpp) * provide ready to use vnode. */ if (VOP_ISLOCKED(lowervp) != LK_EXCLUSIVE) { + KASSERT((MOUNTTONULLMOUNT(mp)->nullm_flags & NULLM_CACHE) == 0, + ("lowervp %p is not excl locked and cache is disabled", + lowervp)); vn_lock(lowervp, LK_UPGRADE | LK_RETRY); if ((lowervp->v_iflag & VI_DOOMED) != 0) { vput(lowervp); Modified: head/sys/fs/nullfs/null_vfsops.c ============================================================================== --- head/sys/fs/nullfs/null_vfsops.c Thu Jan 3 19:03:41 2013 (r245003) +++ head/sys/fs/nullfs/null_vfsops.c Thu Jan 3 19:17:57 2013 (r245004) @@ -67,6 +67,15 @@ static vfs_vget_t nullfs_vget; static vfs_extattrctl_t nullfs_extattrctl; static vfs_reclaim_lowervp_t nullfs_reclaim_lowervp; +/* Mount options that we support. */ +static const char *nullfs_opts[] = { + "cache", + "export", + "from", + "target", + NULL +}; + /* * Mount null layer */ @@ -86,9 +95,11 @@ nullfs_mount(struct mount *mp) if (!prison_allow(td->td_ucred, PR_ALLOW_MOUNT_NULLFS)) return (EPERM); - if (mp->mnt_flag & MNT_ROOTFS) return (EOPNOTSUPP); + if (vfs_filteropt(mp->mnt_optnew, nullfs_opts)) + return (EINVAL); + /* * Update is a no-op */ @@ -149,7 +160,7 @@ nullfs_mount(struct mount *mp) } xmp = (struct null_mount *) malloc(sizeof(struct null_mount), - M_NULLFSMNT, M_WAITOK); + M_NULLFSMNT, M_WAITOK | M_ZERO); /* * Save reference to underlying FS @@ -187,16 +198,27 @@ nullfs_mount(struct mount *mp) mp->mnt_flag |= MNT_LOCAL; MNT_IUNLOCK(mp); } + + xmp->nullm_flags |= NULLM_CACHE; + if (vfs_getopt(mp->mnt_optnew, "nocache", NULL, NULL) == 0) + xmp->nullm_flags &= ~NULLM_CACHE; + MNT_ILOCK(mp); - mp->mnt_kern_flag |= lowerrootvp->v_mount->mnt_kern_flag & - (MNTK_SHARED_WRITES | MNTK_LOOKUP_SHARED | MNTK_EXTENDED_SHARED); + if ((xmp->nullm_flags & NULLM_CACHE) != 0) { + mp->mnt_kern_flag |= lowerrootvp->v_mount->mnt_kern_flag & + (MNTK_SHARED_WRITES | MNTK_LOOKUP_SHARED | + MNTK_EXTENDED_SHARED); + } mp->mnt_kern_flag |= MNTK_LOOKUP_EXCL_DOTDOT; MNT_IUNLOCK(mp); mp->mnt_data = xmp; vfs_getnewfsid(mp); - MNT_ILOCK(xmp->nullm_vfs); - TAILQ_INSERT_TAIL(&xmp->nullm_vfs->mnt_uppers, mp, mnt_upper_link); - MNT_IUNLOCK(xmp->nullm_vfs); + if ((xmp->nullm_flags & NULLM_CACHE) != 0) { + MNT_ILOCK(xmp->nullm_vfs); + TAILQ_INSERT_TAIL(&xmp->nullm_vfs->mnt_uppers, mp, + mnt_upper_link); + MNT_IUNLOCK(xmp->nullm_vfs); + } vfs_mountedfrom(mp, target); @@ -234,13 +256,15 @@ nullfs_unmount(mp, mntflags) */ mntdata = mp->mnt_data; ump = mntdata->nullm_vfs; - MNT_ILOCK(ump); - while ((ump->mnt_kern_flag & MNTK_VGONE_UPPER) != 0) { - ump->mnt_kern_flag |= MNTK_VGONE_WAITER; - msleep(&ump->mnt_uppers, &ump->mnt_mtx, 0, "vgnupw", 0); + if ((mntdata->nullm_flags & NULLM_CACHE) != 0) { + MNT_ILOCK(ump); + while ((ump->mnt_kern_flag & MNTK_VGONE_UPPER) != 0) { + ump->mnt_kern_flag |= MNTK_VGONE_WAITER; + msleep(&ump->mnt_uppers, &ump->mnt_mtx, 0, "vgnupw", 0); + } + TAILQ_REMOVE(&ump->mnt_uppers, mp, mnt_upper_link); + MNT_IUNLOCK(ump); } - TAILQ_REMOVE(&ump->mnt_uppers, mp, mnt_upper_link); - MNT_IUNLOCK(ump); mp->mnt_data = NULL; free(mntdata, M_NULLFSMNT); return (0); Modified: head/sys/fs/nullfs/null_vnops.c ============================================================================== --- head/sys/fs/nullfs/null_vnops.c Thu Jan 3 19:03:41 2013 (r245003) +++ head/sys/fs/nullfs/null_vnops.c Thu Jan 3 19:17:57 2013 (r245004) @@ -692,7 +692,22 @@ null_unlock(struct vop_unlock_args *ap) static int null_inactive(struct vop_inactive_args *ap __unused) { + struct vnode *vp; + struct mount *mp; + struct null_mount *xmp; + vp = ap->a_vp; + mp = vp->v_mount; + xmp = MOUNTTONULLMOUNT(mp); + if ((xmp->nullm_flags & NULLM_CACHE) == 0) { + /* + * If this is the last reference and caching of the + * nullfs vnodes is not enabled, then free up the + * vnode so as not to tie up the lower vnodes. + */ + vp->v_object = NULL; + vrecycle(vp); + } return (0); } From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 19:18:46 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id DDB23DA9; Thu, 3 Jan 2013 19:18:46 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B75F3D1F; Thu, 3 Jan 2013 19:18:46 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03JIkoB068537; Thu, 3 Jan 2013 19:18:46 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03JIkp7068536; Thu, 3 Jan 2013 19:18:46 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201301031918.r03JIkp7068536@svn.freebsd.org> From: Konstantin Belousov Date: Thu, 3 Jan 2013 19:18:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245005 - head/sbin/mount_nullfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 19:18:46 -0000 Author: kib Date: Thu Jan 3 19:18:46 2013 New Revision: 245005 URL: http://svnweb.freebsd.org/changeset/base/245005 Log: Allow to specify "cache" and "nocache" as an option for mount_nullfs(8). Tested by: pho MFC after: 2 weeks Modified: head/sbin/mount_nullfs/mount_nullfs.c Modified: head/sbin/mount_nullfs/mount_nullfs.c ============================================================================== --- head/sbin/mount_nullfs/mount_nullfs.c Thu Jan 3 19:17:57 2013 (r245004) +++ head/sbin/mount_nullfs/mount_nullfs.c Thu Jan 3 19:18:46 2013 (r245005) @@ -57,27 +57,35 @@ static const char rcsid[] = #include "mntopts.h" -static struct mntopt mopts[] = { - MOPT_STDOPTS, - MOPT_END -}; - int subdir(const char *, const char *); static void usage(void) __dead2; int main(int argc, char *argv[]) { - struct iovec iov[6]; - int ch, mntflags; + struct iovec *iov; + char *p, *val; char source[MAXPATHLEN]; char target[MAXPATHLEN]; + char errmsg[255]; + int ch, mntflags, iovlen; + char nullfs[] = "nullfs"; + iov = NULL; + iovlen = 0; mntflags = 0; + errmsg[0] = '\0'; while ((ch = getopt(argc, argv, "o:")) != -1) switch(ch) { case 'o': - getmntopts(optarg, mopts, &mntflags, 0); + val = strdup(""); + p = strchr(optarg, '='); + if (p != NULL) { + free(val); + *p = '\0'; + val = p + 1; + } + build_iovec(&iov, &iovlen, optarg, val, (size_t)-1); break; case '?': default: @@ -99,21 +107,16 @@ main(int argc, char *argv[]) errx(EX_USAGE, "%s (%s) and %s are not distinct paths", argv[0], target, argv[1]); - iov[0].iov_base = strdup("fstype"); - iov[0].iov_len = sizeof("fstype"); - iov[1].iov_base = strdup("nullfs"); - iov[1].iov_len = strlen(iov[1].iov_base) + 1; - iov[2].iov_base = strdup("fspath"); - iov[2].iov_len = sizeof("fspath"); - iov[3].iov_base = source; - iov[3].iov_len = strlen(source) + 1; - iov[4].iov_base = strdup("target"); - iov[4].iov_len = sizeof("target"); - iov[5].iov_base = target; - iov[5].iov_len = strlen(target) + 1; - - if (nmount(iov, 6, mntflags)) - err(1, NULL); + build_iovec(&iov, &iovlen, "fstype", nullfs, (size_t)-1); + build_iovec(&iov, &iovlen, "fspath", source, (size_t)-1); + build_iovec(&iov, &iovlen, "target", target, (size_t)-1); + build_iovec(&iov, &iovlen, "errmsg", errmsg, sizeof(errmsg)); + if (nmount(iov, iovlen, mntflags) < 0) { + if (errmsg[0] != 0) + err(1, "%s: %s", source, errmsg); + else + err(1, "%s", source); + } exit(0); } From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 20:31:45 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E154C5D2; Thu, 3 Jan 2013 20:31:45 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id CF2CD18E; Thu, 3 Jan 2013 20:31:45 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03KVj1A079229; Thu, 3 Jan 2013 20:31:45 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03KVjc1079228; Thu, 3 Jan 2013 20:31:45 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301032031.r03KVjc1079228@svn.freebsd.org> From: Xin LI Date: Thu, 3 Jan 2013 20:31:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245006 - head/share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 20:31:46 -0000 Author: delphij Date: Thu Jan 3 20:31:45 2013 New Revision: 245006 URL: http://svnweb.freebsd.org/changeset/base/245006 Log: Sync with driver. MFC after: 2 weeks Modified: head/share/man/man4/mps.4 Modified: head/share/man/man4/mps.4 ============================================================================== --- head/share/man/man4/mps.4 Thu Jan 3 19:18:46 2013 (r245005) +++ head/share/man/man4/mps.4 Thu Jan 3 20:31:45 2013 (r245006) @@ -34,7 +34,7 @@ .\" $Id: //depot/SpectraBSD/head/share/man/man4/mps.4#6 $ .\" $FreeBSD$ .\" -.Dd June 30, 2012 +.Dd January 3, 2013 .Dt MPS 4 .Os .Sh NAME @@ -62,7 +62,7 @@ controllers and WarpDrive solid state st .Sh HARDWARE The .Nm -driver supports the following controllers: +driver supports the following hardware: .Pp .Bl -bullet -compact .It @@ -80,6 +80,19 @@ LSI Logic SAS2116 (16 Port .It LSI Logic SAS2208 (8 Port .Tn SAS ) +.It +LSI Logic SAS2308 (8 Port +.Tn SAS ) +.It +LSI Logic SSS6200 Solid State Storage +.It +Intel Integrated RAID Module RMS25JB040 +.It +Intel Integrated RAID Module RMS25JB080 +.It +Intel Integrated RAID Module RMS25KB040 +.It +Intel Integrated RAID Module RMS25KB080 .El .Sh CONFIGURATION To disable MSI interrupts for all From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 20:50:13 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 3728B2CA; Thu, 3 Jan 2013 20:50:12 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from bigwig.baldwin.cx (bigknife-pt.tunnel.tserv9.chi1.ipv6.he.net [IPv6:2001:470:1f10:75::2]) by mx1.freebsd.org (Postfix) with ESMTP id 7547D2EE; Thu, 3 Jan 2013 20:50:12 +0000 (UTC) Received: from ralph.baldwin.cx (c-68-39-198-164.hsd1.de.comcast.net [68.39.198.164]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 66CF4B9AD; Thu, 3 Jan 2013 15:50:09 -0500 (EST) From: John Baldwin To: Jim Harris Subject: Re: svn commit: r244549 - head/sys/dev/nvme Date: Thu, 3 Jan 2013 15:44:52 -0500 User-Agent: KMail/1.13.7 (FreeBSD/9.1-PRERELEASE; KDE/4.8.4; amd64; ; ) References: <201212211913.qBLJDmpm019837@svn.freebsd.org> <201212211424.16934.jhb@freebsd.org> In-Reply-To: MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Message-Id: <201301031544.52750.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Thu, 03 Jan 2013 15:50:11 -0500 (EST) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 20:50:13 -0000 On Friday, December 21, 2012 04:49:13 PM Jim Harris wrote: > On Fri, Dec 21, 2012 at 12:24 PM, John Baldwin wrote: > > On Friday, December 21, 2012 2:13:48 pm Jim Harris wrote: > > > Author: jimharris > > > Date: Fri Dec 21 19:13:48 2012 > > > New Revision: 244549 > > > URL: http://svnweb.freebsd.org/changeset/base/244549 > > > > > > Log: > > > Put kthreads under curproc so they are attached to nvmecontrol rather > > > than pid 0. > > > > > > Sponsored by: Intel > > > > Hmm, is this really wise? I'm not sure how well the kernel would handle > > a kthread belonging to a userland process. You could just have each > > test create a new kproc that holds the associated threads for that test > > instead perhaps? > > Just so I'm aware, what sorts of problems might you expect if a kthread > belongs to a userland process? I'm not opposed to changing this as you > suggest, but would like to know for my own understanding since I haven't > observed any problems with it on my system. I'm not sure what might break. :( I just know that I have always expected a kthread to belong to a kernel process, and it wouldn't surprise me if there wasn't some code somewhere that assumed TDP_KTHREAD implied that the associated process as a kernel process (P_SYSTEM). Perhaps it would work, but I don't think many folks have considered that edge case or coded for it. OTOH, it might be an interesting way to implement aio (though I think aio should be implemented directly in userland using user threads, though possibly not pthreads so a single-threaded application doesn't pay a penalty). -- John Baldwin From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 20:59:10 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 4B9938B7; Thu, 3 Jan 2013 20:59:10 +0000 (UTC) (envelope-from gshapiro@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 326093C5; Thu, 3 Jan 2013 20:59:10 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03KxA0w083048; Thu, 3 Jan 2013 20:59:10 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03KxAUf083046; Thu, 3 Jan 2013 20:59:10 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201301032059.r03KxAUf083046@svn.freebsd.org> From: Gregory Neil Shapiro Date: Thu, 3 Jan 2013 20:59:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r245007 - stable/8/contrib/sendmail X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 20:59:10 -0000 Author: gshapiro Date: Thu Jan 3 20:59:09 2013 New Revision: 245007 URL: http://svnweb.freebsd.org/changeset/base/245007 Log: Remove bad svn:mergeinfo properties. Approved by: jhb Modified: Directory Properties: stable/8/contrib/sendmail/LICENSE (props changed) stable/8/contrib/sendmail/PGPKEYS (props changed) stable/8/contrib/sendmail/RELEASE_NOTES (props changed) stable/8/contrib/sendmail/cf/ (props changed) stable/8/contrib/sendmail/doc/ (props changed) stable/8/contrib/sendmail/include/ (props changed) stable/8/contrib/sendmail/libmilter/ (props changed) stable/8/contrib/sendmail/src/ (props changed) From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 21:31:58 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1BC155B4; Thu, 3 Jan 2013 21:31:58 +0000 (UTC) (envelope-from wblock@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 00018811; Thu, 3 Jan 2013 21:31:57 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03LVvTB088257; Thu, 3 Jan 2013 21:31:57 GMT (envelope-from wblock@svn.freebsd.org) Received: (from wblock@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03LVvGM088256; Thu, 3 Jan 2013 21:31:57 GMT (envelope-from wblock@svn.freebsd.org) Message-Id: <201301032131.r03LVvGM088256@svn.freebsd.org> From: Warren Block Date: Thu, 3 Jan 2013 21:31:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245008 - stable/9/sbin/ifconfig X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 21:31:58 -0000 Author: wblock (doc committer) Date: Thu Jan 3 21:31:57 2013 New Revision: 245008 URL: http://svnweb.freebsd.org/changeset/base/245008 Log: MFC r242697,r242704: r242697: Add devd.conf(5) and devd(8) to SEE ALSO xrefs. Give users a pointer to seemingly mysterious actions that are not done by ifconfig itself, but by devd triggering on events caused by ifconfig. r242704: Remove fifteen-year-old notes on media selection (suggested by simon@). Add commas after "e.g." and "i.e.". PR: docs/173405 Modified: stable/9/sbin/ifconfig/ifconfig.8 Directory Properties: stable/9/sbin/ifconfig/ (props changed) Modified: stable/9/sbin/ifconfig/ifconfig.8 ============================================================================== --- stable/9/sbin/ifconfig/ifconfig.8 Thu Jan 3 20:59:09 2013 (r245007) +++ stable/9/sbin/ifconfig/ifconfig.8 Thu Jan 3 21:31:57 2013 (r245008) @@ -28,7 +28,7 @@ .\" From: @(#)ifconfig.8 8.3 (Berkeley) 1/5/94 .\" $FreeBSD$ .\" -.Dd May 27, 2012 +.Dd November 7, 2012 .Dt IFCONFIG 8 .Os .Sh NAME @@ -142,7 +142,7 @@ The link-level address is specified as a series of colon-separated hex digits. This can be used to -e.g.\& set a new MAC address on an ethernet interface, though the +e.g.,\& set a new MAC address on an ethernet interface, though the mechanism used is not ethernet-specific. If the interface is already up when this option is used, it will be briefly brought down and @@ -301,7 +301,7 @@ Specify interface FIB. A FIB .Ar fib_number is assigned to all frames or packets received on that interface. -The FIB is not inherited, e.g. vlans or other sub-interfaces will use +The FIB is not inherited, e.g., vlans or other sub-interfaces will use the default FIB (0) irrespective of the parent interface's FIB. The kernel needs to be tuned to support more than the default FIB using the @@ -1009,7 +1009,7 @@ For example, if a device is capable of o with 802.11n and 802.11g then one can specify that g-only use should be used by specifying ``6:g''. Similarly the channel width can be specified by appending it -with ``/''; e.g. ``6/40'' specifies a 40MHz wide channel, +with ``/''; e.g., ``6/40'' specifies a 40MHz wide channel, These attributes can be combined as in: ``6:ht/40''. The full set of flags specified following a ``:'' are: .Cm a @@ -1042,7 +1042,7 @@ and In addition, a 40MHz HT channel specification may include the location of the extension channel by appending ``+'' or ``-'' for above and below, -respectively; e.g. ``2437:ht/40+'' specifies 40MHz wide HT operation +respectively; e.g., ``2437:ht/40+'' specifies 40MHz wide HT operation with the center channel at frequency 2437 and the extension channel above. .It Cm country Ar name Set the country code to use in calculating the regulatory constraints @@ -1052,7 +1052,7 @@ will operation on the channels, and the can be used on a channel are defined by this setting. Country/Region codes are specified as a 2-character abbreviation defined by ISO 3166 or using a longer, but possibly ambiguous, spelling; -e.g. "ES" and "Spain". +e.g., "ES" and "Spain". The set of country codes are taken from /etc/regdomain.xml and can also be viewed with the ``list countries'' request. Note that not all devices support changing the country code from a default @@ -1069,7 +1069,7 @@ DFS embodies several facilities includin radar signals, dynamic transmit power control, and channel selection according to a least-congested criteria. DFS support is mandatory for some 5GHz frequencies in certain -locales (e.g. ETSI). +locales (e.g., ETSI). By default DFS is enabled according to the regulatory definitions specified in /etc/regdomain.xml and the current country code, regdomain, and channel. @@ -1142,7 +1142,7 @@ Enable Dynamic WDS (DWDS) support. DWDS is a facility by which 4-address traffic can be carried between stations operating in infrastructure mode. A station first associates to an access point and authenticates using -normal procedures (e.g. WPA). +normal procedures (e.g., WPA). Then 4-address frames are passed to carry traffic for stations operating on either side of the wireless link. DWDS extends the normal WDS mechanism by leveraging existing security @@ -1160,7 +1160,7 @@ When DWDS is enabled on a station, traff different from the peer station are encapsulated in a 4-address frame and transmitted to the peer. All 4-address traffic uses the security information of the stations -(e.g. cryptographic keys). +(e.g., cryptographic keys). A station is associated using 802.11n facilities may transport 4-address traffic using these same mechanisms; this depends on available resources and capabilities of the device. @@ -1210,7 +1210,7 @@ Stations negotiate use of these faciliti when they associate. To disable all use of 802.11n use .Fl ht . -To disable use of HT20 (e.g. to force only HT40 use) use +To disable use of HT20 (e.g., to force only HT40 use) use .Fl ht20 . To disable use of HT40 use .Fl ht40 . @@ -1224,7 +1224,7 @@ Auto Channel Selection is used to locate HT configuration controls whether legacy, HT20, or HT40 operation is setup on the selected channel. If a fixed channel is specified for a station then HT configuration can -be given as part of the channel specification; e.g. 6:ht/20 to setup +be given as part of the channel specification; e.g., 6:ht/20 to setup HT20 operation on channel 6. .It Cm htcompat Enable use of compatibility support for pre-802.11n devices (default). @@ -1480,13 +1480,13 @@ The default setting is 6 but drivers may they choose. .It Cm mcastrate Ar rate Set the rate for transmitting multicast/broadcast frames. -Rates are specified as megabits/second in decimal; e.g.\& 5.5 for 5.5 Mb/s. +Rates are specified as megabits/second in decimal; e.g.,\& 5.5 for 5.5 Mb/s. This rate should be valid for the current operating conditions; if an invalid rate is specified drivers are free to chose an appropriate rate. .It Cm mgtrate Ar rate Set the rate for transmitting management and/or control frames. -Rates are specified as megabits/second in decimal; e.g.\& 5.5 for 5.5 Mb/s. +Rates are specified as megabits/second in decimal; e.g.,\& 5.5 for 5.5 Mb/s. .It Cm outdoor Set the location to use in calculating regulatory constraints. The location is also advertised in beacon and probe response frames @@ -1646,7 +1646,7 @@ request can be used to show recent scan initiating a new scan. .It Cm scanvalid Ar threshold Set the maximum time the scan cache contents are considered valid; -i.e. will be used without first triggering a scan operation to +i.e., will be used without first triggering a scan operation to refresh the data. The .Ar threshold @@ -1708,7 +1708,7 @@ When operating with TDMA, setup a BSS wi slots. The slot count may be at most 8. The current implementation is only tested with two stations -(i.e. point to point applications). +(i.e., point to point applications). This setting is only meaningful when a station is configured as slot 0; other stations adopt this setting from the BSS they join. By default @@ -1732,7 +1732,7 @@ is set to 10 milliseconds. When operating with TDMA, setup a BSS such that beacons are transmitted every .Ar intval superframes to synchronize the TDMA slot timing. -A superframe is defined as the number of slots times the slot length; e.g. +A superframe is defined as the number of slots times the slot length; e.g., a BSS with two slots of 10 milliseconds has a 20 millisecond superframe. The beacon interval may not be zero. A lower setting of @@ -1758,7 +1758,7 @@ the driver will use the setting closest Not all adapters support changing the transmit power. .It Cm ucastrate Ar rate Set a fixed rate for transmitting unicast frames. -Rates are specified as megabits/second in decimal; e.g.\& 5.5 for 5.5 Mb/s. +Rates are specified as megabits/second in decimal; e.g.,\& 5.5 for 5.5 Mb/s. This rate should be valid for the current operating conditions; if an invalid rate is specified drivers are free to chose an appropriate rate. @@ -2565,9 +2565,6 @@ The flag disables this behavior. .Pp Only the super-user may modify the configuration of a network interface. -.Sh NOTES -The media selection system is relatively new and only some drivers support -it (or have need for it). .Sh EXAMPLES Assign the IPv4 address .Li 192.0.2.10 , @@ -2646,7 +2643,9 @@ tried to alter an interface's configurat .Xr pfsync 4 , .Xr polling 4 , .Xr vlan 4 , +.Xr devd.conf 5 , .\" .Xr eon 5 , +.Xr devd 8 , .Xr rc 8 , .Xr routed 8 , .Xr jail 8 , From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 21:35:25 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id CA6967B4; Thu, 3 Jan 2013 21:35:25 +0000 (UTC) (envelope-from wblock@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id A1C31845; Thu, 3 Jan 2013 21:35:25 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03LZPt3088797; Thu, 3 Jan 2013 21:35:25 GMT (envelope-from wblock@svn.freebsd.org) Received: (from wblock@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03LZPuQ088796; Thu, 3 Jan 2013 21:35:25 GMT (envelope-from wblock@svn.freebsd.org) Message-Id: <201301032135.r03LZPuQ088796@svn.freebsd.org> From: Warren Block Date: Thu, 3 Jan 2013 21:35:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r245009 - stable/8/sbin/ifconfig X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 21:35:25 -0000 Author: wblock (doc committer) Date: Thu Jan 3 21:35:25 2013 New Revision: 245009 URL: http://svnweb.freebsd.org/changeset/base/245009 Log: MFC r242697,r242704: r242697: Add devd.conf(5) and devd(8) to SEE ALSO xrefs. Give users a pointer to seemingly mysterious actions that are not done by ifconfig itself, but by devd triggering on events caused by ifconfig. r242704: Remove fifteen-year-old notes on media selection (suggested by simon@). Add commas after "e.g." and "i.e.". PR: docs/173405 Modified: stable/8/sbin/ifconfig/ifconfig.8 Directory Properties: stable/8/sbin/ifconfig/ (props changed) Modified: stable/8/sbin/ifconfig/ifconfig.8 ============================================================================== --- stable/8/sbin/ifconfig/ifconfig.8 Thu Jan 3 21:31:57 2013 (r245008) +++ stable/8/sbin/ifconfig/ifconfig.8 Thu Jan 3 21:35:25 2013 (r245009) @@ -28,7 +28,7 @@ .\" From: @(#)ifconfig.8 8.3 (Berkeley) 1/5/94 .\" $FreeBSD$ .\" -.Dd March 7, 2012 +.Dd November 7, 2012 .Dt IFCONFIG 8 .Os .Sh NAME @@ -142,7 +142,7 @@ The link-level address is specified as a series of colon-separated hex digits. This can be used to -e.g.\& set a new MAC address on an ethernet interface, though the +e.g.,\& set a new MAC address on an ethernet interface, though the mechanism used is not ethernet-specific. If the interface is already up when this option is used, it will be briefly brought down and @@ -299,7 +299,7 @@ Specify interface FIB. A FIB .Ar fib_number is assigned to all frames or packets received on that interface. -The FIB is not inherited, e.g. vlans or other sub-interfaces will use +The FIB is not inherited, e.g., vlans or other sub-interfaces will use the default FIB (0) irrespective of the parent interface's FIB. The kernel needs to be tuned to support more than the default FIB using the @@ -934,7 +934,7 @@ For example, if a device is capable of o with 802.11n and 802.11g then one can specify that g-only use should be used by specifying ``6:g''. Similarly the channel width can be specified by appending it -with ``/''; e.g. ``6/40'' specifies a 40MHz wide channel, +with ``/''; e.g., ``6/40'' specifies a 40MHz wide channel, These attributes can be combined as in: ``6:ht/40''. The full set of flags specified following a `:'' are: .Cm a @@ -977,7 +977,7 @@ will operation on the channels, and the can be used on a channel are defined by this setting. Country/Region codes are specified as a 2-character abbreviation defined by ISO 3166 or using a longer, but possibly ambiguous, spelling; -e.g. "ES" and "Spain". +e.g., "ES" and "Spain". The set of country codes are taken from /etc/regdomain.xml and can also be viewed with the ``list countries'' request. Note that not all devices support changing the country code from a default @@ -994,7 +994,7 @@ DFS embodies several facilities includin radar signals, dynamic transmit power control, and channel selection according to a least-congested criteria. DFS support is mandatory for some 5GHz frequencies in certain -locales (e.g. ETSI). +locales (e.g., ETSI). By default DFS is enabled according to the regulatory definitions specified in /etc/regdomain.xml and the curent country code, regdomain, and channel. @@ -1067,7 +1067,7 @@ Enable Dynamic WDS (DWDS) support. DWDS is a facility by which 4-address traffic can be carried between stations operating in infrastructure mode. A station first associates to an access point and authenticates using -normal procedures (e.g. WPA). +normal procedures (e.g., WPA). Then 4-address frames are passed to carry traffic for stations operating on either side of the wireless link. DWDS extends the normal WDS mechanism by leveraging existing security @@ -1085,7 +1085,7 @@ When DWDS is enabled on a station, traff different from the peer station are encapsulated in a 4-address frame and transmitted to the peer. All 4-address traffic uses the security information of the stations -(e.g. cryptographic keys). +(e.g., cryptographic keys). A station is associated using 802.11n facilities may transport 4-address traffic using these same mechanisms; this depends on available resources and capabilities of the device. @@ -1135,7 +1135,7 @@ Stations negotiate use of these faciliti when they associate. To disable all use of 802.11n use .Fl ht . -To disable use of HT20 (e.g. to force only HT40 use) use +To disable use of HT20 (e.g., to force only HT40 use) use .Fl ht20 . To disable use of HT40 use .Fl ht40 . @@ -1149,7 +1149,7 @@ Auto Channel Selection is used to locate HT configuration controls whether legacy, HT20, or HT40 operation is setup on the selected channel. If a fixed channel is specified for a station then HT configuration can -be given as part of the channel specification; e.g. 6:ht/20 to setup +be given as part of the channel specification; e.g., 6:ht/20 to setup HT20 operation on channel 6. .It Cm htcompat Enable use of compatibility support for pre-802.11n devices (default). @@ -1405,13 +1405,13 @@ The default setting is 6 but drivers may they choose. .It Cm mcastrate Ar rate Set the rate for transmitting multicast/broadcast frames. -Rates are specified as megabits/second in decimal; e.g.\& 5.5 for 5.5 Mb/s. +Rates are specified as megabits/second in decimal; e.g.,\& 5.5 for 5.5 Mb/s. This rate should be valid for the current operating conditions; if an invalid rate is specified drivers are free to chose an appropriate rate. .It Cm mgtrate Ar rate Set the rate for transmitting management and/or control frames. -Rates are specified as megabits/second in decimal; e.g.\& 5.5 for 5.5 Mb/s. +Rates are specified as megabits/second in decimal; e.g.,\& 5.5 for 5.5 Mb/s. .It Cm outdoor Set the location to use in calculating regulatory constraints. The location is also advertised in beacon and probe response frames @@ -1571,7 +1571,7 @@ request can be used to show recent scan initiating a new scan. .It Cm scanvalid Ar threshold Set the maximum time the scan cache contents are considered valid; -i.e. will be used without first triggering a scan operation to +i.e., will be used without first triggering a scan operation to refresh the data. The .Ar threshold @@ -1633,7 +1633,7 @@ When operating with TDMA, setup a BSS wi slots. The slot count may be at most 8. The current implementation is only tested with two stations -(i.e. point to point applications). +(i.e., point to point applications). This setting is only meaningful when a station is configured as slot 0; other stations adopt this setting from the BSS they join. By default @@ -1657,7 +1657,7 @@ is set to 10 milliseconds. When operating with TDMA, setup a BSS such that beacons are transmitted every .Ar intval superframes to synchronize the TDMA slot timing. -A superframe is defined as the number of slots times the slot length; e.g. +A superframe is defined as the number of slots times the slot length; e.g., a BSS with two slots of 10 milliseconds has a 20 millisecond superframe. The beacon interval may not be zero. A lower setting of @@ -1683,7 +1683,7 @@ the driver will use the setting closest Not all adapters support changing the transmit power. .It Cm ucastrate Ar rate Set a fixed rate for transmitting unicast frames. -Rates are specified as megabits/second in decimal; e.g.\& 5.5 for 5.5 Mb/s. +Rates are specified as megabits/second in decimal; e.g.,\& 5.5 for 5.5 Mb/s. This rate should be valid for the current operating conditions; if an invalid rate is specified drivers are free to chose an appropriate rate. @@ -2490,9 +2490,6 @@ The flag disables this behavior. .Pp Only the super-user may modify the configuration of a network interface. -.Sh NOTES -The media selection system is relatively new and only some drivers support -it (or have need for it). .Sh EXAMPLES Assign the IPv4 address .Li 192.0.2.10 , @@ -2568,7 +2565,9 @@ tried to alter an interface's configurat .Xr pfsync 4 , .Xr polling 4 , .Xr vlan 4 , +.Xr devd.conf 5 , .\" .Xr eon 5 , +.Xr devd 8 , .Xr rc 8 , .Xr routed 8 , .Xr jail 8 , From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 21:37:18 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 1868C963; Thu, 3 Jan 2013 21:37:18 +0000 (UTC) (envelope-from wblock@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 0A9E8870; Thu, 3 Jan 2013 21:37:18 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03LbHhb089113; Thu, 3 Jan 2013 21:37:17 GMT (envelope-from wblock@svn.freebsd.org) Received: (from wblock@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03LbHiT089112; Thu, 3 Jan 2013 21:37:17 GMT (envelope-from wblock@svn.freebsd.org) Message-Id: <201301032137.r03LbHiT089112@svn.freebsd.org> From: Warren Block Date: Thu, 3 Jan 2013 21:37:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org Subject: svn commit: r245010 - stable/7/sbin/ifconfig X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 21:37:18 -0000 Author: wblock (doc committer) Date: Thu Jan 3 21:37:17 2013 New Revision: 245010 URL: http://svnweb.freebsd.org/changeset/base/245010 Log: MFC r242697,r242704: r242697: Add devd.conf(5) and devd(8) to SEE ALSO xrefs. Give users a pointer to seemingly mysterious actions that are not done by ifconfig itself, but by devd triggering on events caused by ifconfig. r242704: Remove fifteen-year-old notes on media selection (suggested by simon@). Add commas after "e.g." and "i.e.". PR: docs/173405 Modified: stable/7/sbin/ifconfig/ifconfig.8 Directory Properties: stable/7/sbin/ifconfig/ (props changed) Modified: stable/7/sbin/ifconfig/ifconfig.8 ============================================================================== --- stable/7/sbin/ifconfig/ifconfig.8 Thu Jan 3 21:35:25 2013 (r245009) +++ stable/7/sbin/ifconfig/ifconfig.8 Thu Jan 3 21:37:17 2013 (r245010) @@ -28,7 +28,7 @@ .\" From: @(#)ifconfig.8 8.3 (Berkeley) 1/5/94 .\" $FreeBSD$ .\" -.Dd February 29, 2012 +.Dd November 7, 2012 .Dt IFCONFIG 8 .Os .Sh NAME @@ -142,7 +142,7 @@ The link-level address is specified as a series of colon-separated hex digits. This can be used to -e.g.\& set a new MAC address on an ethernet interface, though the +e.g.,\& set a new MAC address on an ethernet interface, though the mechanism used is not ethernet-specific. If the interface is already up when this option is used, it will be briefly brought down and @@ -293,7 +293,7 @@ Specify interface FIB. A FIB .Ar fib_number is assigned to all frames or packets received on that interface. -The FIB is not inherited, e.g. vlans or other sub-interfaces will use +The FIB is not inherited, e.g., vlans or other sub-interfaces will use the default FIB (0) irrespective of the parent interface's FIB. The kernel needs to be tuned to support more than the default FIB using the @@ -750,7 +750,7 @@ For example, if a device is capable of o with 802.11n and 802.11g then one can specify that g-only use should be used by specifying ``6:g''. Similarly the channel width can be specified by appending it -with ``/''; e.g. ``6/40'' specifies a 40MHz wide channel, +with ``/''; e.g., ``6/40'' specifies a 40MHz wide channel, These attributes can be combined as in: ``6:ht/40''. The full set of flags specified following a `:'' are: .Cm a @@ -971,7 +971,7 @@ See the description of the directive for information on the various parameters. .It Cm mcastrate Ar rate Set the rate for transmitting multicast/broadcast frames. -Rates are specified as megabits/second in decimal; e.g.\& 5.5 for 5.5 Mb/s. +Rates are specified as megabits/second in decimal; e.g.,\& 5.5 for 5.5 Mb/s. This rate should be valid for the current operating conditions; if an invalid rate is specified drivers are free to chose an appropriate rate. @@ -1209,7 +1209,7 @@ The flag may be used to prevent the shortening of long SSIDs. .It Cm scanvalid Ar threshold Set the maximum time the scan cache contents are considered valid; -i.e. will be used without first triggering a scan operation to +i.e., will be used without first triggering a scan operation to refresh the data. The .Ar threshold @@ -1907,9 +1907,6 @@ The flag disables this behavior. .Pp Only the super-user may modify the configuration of a network interface. -.Sh NOTES -The media selection system is relatively new and only some drivers support -it (or have need for it). .Sh EXAMPLES Assign the IPv4 address .Li 192.0.2.10 , @@ -1981,7 +1978,9 @@ tried to alter an interface's configurat .Xr pfsync 4 , .Xr polling 4 , .Xr vlan 4 , +.Xr devd.conf 5 , .\" .Xr eon 5 , +.Xr devd 8 , .Xr rc 8 , .Xr routed 8 , .Xr sysctl 8 From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 21:58:29 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 574AD80; Thu, 3 Jan 2013 21:58:29 +0000 (UTC) (envelope-from wblock@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 31DAD942; Thu, 3 Jan 2013 21:58:29 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03LwTiO092140; Thu, 3 Jan 2013 21:58:29 GMT (envelope-from wblock@svn.freebsd.org) Received: (from wblock@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03LwT3a092139; Thu, 3 Jan 2013 21:58:29 GMT (envelope-from wblock@svn.freebsd.org) Message-Id: <201301032158.r03LwT3a092139@svn.freebsd.org> From: Warren Block Date: Thu, 3 Jan 2013 21:58:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245012 - head/sbin/geom/class/part X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 21:58:29 -0000 Author: wblock (doc committer) Date: Thu Jan 3 21:58:28 2013 New Revision: 245012 URL: http://svnweb.freebsd.org/changeset/base/245012 Log: Document the output of the show command. Modified version of patch provided by Bas Smeelen . Use of 'gpart list' suggested by by Andrey V. Elsukov . PR: docs/174270 Submitted by: Ronald F.Guilmette Reviewed by: ae (block sizes) MFC after: 1 week Modified: head/sbin/geom/class/part/gpart.8 Modified: head/sbin/geom/class/part/gpart.8 ============================================================================== --- head/sbin/geom/class/part/gpart.8 Thu Jan 3 21:54:44 2013 (r245011) +++ head/sbin/geom/class/part/gpart.8 Thu Jan 3 21:58:28 2013 (r245012) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd March 19, 2012 +.Dd January 3, 2013 .Dt GPART 8 .Os .Sh NAME @@ -453,8 +453,14 @@ about its use. .El .\" ==== SHOW ==== .It Cm show -Show the current partition information of the specified geoms -or all geoms if none are specified. +Show current partition information for the specified geoms, or all +geoms if none are specified. +The default output includes the logical starting block of each +partition, the partition size in blocks, the partition index number, +the partition type, and a human readable partition size. +Block sizes and locations are based on the device's Sectorsize +as shown by +.Cm gpart list . Additional options include: .Bl -tag -width 10n .It Fl l @@ -919,7 +925,7 @@ and .Cm list will report about corrupt tables. .Pp -If the size of the device has changed (e.g.\& volume expansion) the +If the size of the device has changed (e.g.,\& volume expansion) the secondary GPT header will no longer be located in the last sector. This is not a metadata corruption, but it is dangerous because any corruption of the primary GPT will lead to loss of the partition table. @@ -979,14 +985,14 @@ This may break a mirrored volume and lea Exit status is 0 on success, and 1 if the command fails. .Sh EXAMPLES Create a GPT scheme on -.Pa ad0 : +.Pa ada0 : .Bd -literal -offset indent -/sbin/gpart create -s GPT ad0 +/sbin/gpart create -s GPT ada0 .Ed .Pp Embed GPT bootstrap code into a protective MBR: .Bd -literal -offset indent -/sbin/gpart bootcode -b /boot/pmbr ad0 +/sbin/gpart bootcode -b /boot/pmbr ada0 .Ed .Pp Create a dedicated @@ -1011,15 +1017,15 @@ aligned on a 64 kB boundary without the offset or alignment. The boot partition itself is aligned on a 4 kB boundary. .Bd -literal -offset indent -/sbin/gpart add -b 40 -s 88 -t freebsd-boot ad0 -/sbin/gpart bootcode -p /boot/gptboot -i 1 ad0 +/sbin/gpart add -b 40 -s 88 -t freebsd-boot ada0 +/sbin/gpart bootcode -p /boot/gptboot -i 1 ada0 .Ed .Pp Create a 512MB-sized .Cm freebsd-ufs partition to contain a UFS filesystem from which the system can boot. .Bd -literal -offset indent -/sbin/gpart add -s 512M -t freebsd-ufs ad0 +/sbin/gpart add -s 512M -t freebsd-ufs ada0 .Ed .Pp Create an MBR scheme on From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 22:05:20 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id D0B203A5; Thu, 3 Jan 2013 22:05:20 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id AAB89979; Thu, 3 Jan 2013 22:05:20 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03M5Khu093499; Thu, 3 Jan 2013 22:05:20 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03M5KpE093498; Thu, 3 Jan 2013 22:05:20 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201301032205.r03M5KpE093498@svn.freebsd.org> From: Marius Strobl Date: Thu, 3 Jan 2013 22:05:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245013 - head/share/misc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 22:05:20 -0000 Author: marius Date: Thu Jan 3 22:05:20 2013 New Revision: 245013 URL: http://svnweb.freebsd.org/changeset/base/245013 Log: Record my ports commit bit. Modified: head/share/misc/committers-ports.dot Modified: head/share/misc/committers-ports.dot ============================================================================== --- head/share/misc/committers-ports.dot Thu Jan 3 21:58:28 2013 (r245012) +++ head/share/misc/committers-ports.dot Thu Jan 3 22:05:20 2013 (r245013) @@ -140,6 +140,7 @@ maho [label="Maho Nakata\nmaho@FreeBSD.o makc [label="Max Brazhnikov\nmakc@FreeBSD.org\n2008/08/25"] mandree [label="Matthias Andree\nmandree@FreeBSD.org\n2009/11/18"] marcus [label="Joe Marcus Clarke\nmarcus@FreeBSD.org\n2002/04/05"] +marius [label="Marius Strobl\nmarius@FreeBSD.org\n2012/12/29"] markus [label="Markus Brueffer\nmarkus@FreeBSD.org\n2004/02/21"] martymac [label="Ganael Laplanche\nmartymac@FreeBSD.org\n2010/09/24"] mat [label="Mathieu Arnold\nmat@FreeBSD.org\n2003/08/15"] @@ -235,8 +236,10 @@ avilla -> rakuco bapt -> bdrewery bapt -> eadler bapt -> jlaffaye +bapt -> marius beat -> decke +beat -> marius beat -> sperber beat -> uqs From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 22:24:40 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 4560CB7E; Thu, 3 Jan 2013 22:24:40 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 1F601A4E; Thu, 3 Jan 2013 22:24:40 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03MOdcw096651; Thu, 3 Jan 2013 22:24:39 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03MOdTP096649; Thu, 3 Jan 2013 22:24:39 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <201301032224.r03MOdTP096649@svn.freebsd.org> From: Rick Macklem Date: Thu, 3 Jan 2013 22:24:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245014 - head/usr.sbin/gssd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 22:24:40 -0000 Author: rmacklem Date: Thu Jan 3 22:24:39 2013 New Revision: 245014 URL: http://svnweb.freebsd.org/changeset/base/245014 Log: Fix r244604 so that it builds when MK_KERBEROS_SUPPORT == "no". Reported by: bf Tested by: bf Reviewed by: gcooper MFC after: 3 days Modified: head/usr.sbin/gssd/Makefile head/usr.sbin/gssd/gssd.c Modified: head/usr.sbin/gssd/Makefile ============================================================================== --- head/usr.sbin/gssd/Makefile Thu Jan 3 22:05:20 2013 (r245013) +++ head/usr.sbin/gssd/Makefile Thu Jan 3 22:24:39 2013 (r245014) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include + PROG= gssd MAN= gssd.8 SRCS= gssd.c gssd.h gssd_svc.c gssd_xdr.c gssd_prot.c @@ -7,8 +9,14 @@ SRCS= gssd.c gssd.h gssd_svc.c gssd_xdr. CFLAGS+= -I. WARNS?= 1 -DPADD= ${LIBGSSAPI} ${LIBKRB5} ${LIBHX509} ${LIBASN1} ${LIBROKEN} ${LIBCOM_ERR} ${LIBCRYPT} ${LIBCRYPTO} -LDADD= -lgssapi -lkrb5 -lhx509 -lasn1 -lroken -lcom_err -lcrypt -lcrypto +DPADD= ${LIBGSSAPI} +LDADD= -lgssapi +.if ${MK_KERBEROS_SUPPORT} != "no" +DPADD+= ${LIBKRB5} ${LIBHX509} ${LIBASN1} ${LIBROKEN} ${LIBCOM_ERR} ${LIBCRYPT} ${LIBCRYPTO} +LDADD+= -lkrb5 -lhx509 -lasn1 -lroken -lcom_err -lcrypt -lcrypto +.else +CFLAGS+= -DWITHOUT_KERBEROS +.endif CLEANFILES= gssd_svc.c gssd.h Modified: head/usr.sbin/gssd/gssd.c ============================================================================== --- head/usr.sbin/gssd/gssd.c Thu Jan 3 22:05:20 2013 (r245013) +++ head/usr.sbin/gssd/gssd.c Thu Jan 3 22:24:39 2013 (r245014) @@ -37,7 +37,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#ifndef WITHOUT_KERBEROS #include +#endif #include #include #include @@ -102,12 +104,17 @@ main(int argc, char **argv) debug_level++; break; case 's': +#ifndef WITHOUT_KERBEROS /* * Set the directory search list. This enables use of * find_ccache_file() to search the directories for a * suitable credentials cache file. */ strlcpy(ccfile_dirlist, optarg, sizeof(ccfile_dirlist)); +#else + errx(1, "This option not available when built" + " without MK_KERBEROS\n"); +#endif break; case 'c': /* @@ -814,6 +821,7 @@ static int is_a_valid_tgt_cache(const char *filepath, uid_t uid, int *retrating, time_t *retexptime) { +#ifndef WITHOUT_KERBEROS krb5_context context; krb5_principal princ; krb5_ccache ccache; @@ -913,5 +921,8 @@ is_a_valid_tgt_cache(const char *filepat *retexptime = exptime; } return (ret); +#else /* WITHOUT_KERBEROS */ + return (0); +#endif /* !WITHOUT_KERBEROS */ } From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 22:27:58 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 662EAD1F; Thu, 3 Jan 2013 22:27:58 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 3F192A6E; Thu, 3 Jan 2013 22:27:58 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03MRwFd097113; Thu, 3 Jan 2013 22:27:58 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03MRw1Z097112; Thu, 3 Jan 2013 22:27:58 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201301032227.r03MRw1Z097112@svn.freebsd.org> From: Hiroki Sato Date: Thu, 3 Jan 2013 22:27:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245015 - head/usr.sbin/ifmcstat X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 22:27:58 -0000 Author: hrs Date: Thu Jan 3 22:27:57 2013 New Revision: 245015 URL: http://svnweb.freebsd.org/changeset/base/245015 Log: - Print scopeid for link-local scope addresses. - Do not print the flags= part when flags == 0. Modified: head/usr.sbin/ifmcstat/ifmcstat.c Modified: head/usr.sbin/ifmcstat/ifmcstat.c ============================================================================== --- head/usr.sbin/ifmcstat/ifmcstat.c Thu Jan 3 22:24:39 2013 (r245014) +++ head/usr.sbin/ifmcstat/ifmcstat.c Thu Jan 3 22:27:57 2013 (r245015) @@ -296,7 +296,8 @@ in_ifinfo(struct igmp_ifinfo *igi) printf("igmpv?(%d)", igi->igi_version); break; } - printb(" flags", igi->igi_flags, "\020\1SILENT\2LOOPBACK"); + if (igi->igi_flags) + printb(" flags", igi->igi_flags, "\020\1SILENT\2LOOPBACK"); if (igi->igi_version == IGMP_VERSION_3) { printf(" rv %u qi %u qri %u uri %u", igi->igi_rv, igi->igi_qi, igi->igi_qri, igi->igi_uri); @@ -752,7 +753,8 @@ in6_ifinfo(struct mld_ifinfo *mli) printf("mldv?(%d)", mli->mli_version); break; } - printb(" flags", mli->mli_flags, "\020\1SILENT\2USEALLOW"); + if (mli->mli_flags) + printb(" flags", mli->mli_flags, "\020\1SILENT\2USEALLOW"); if (mli->mli_version == MLD_VERSION_2) { printf(" rv %u qi %u qri %u uri %u", mli->mli_rv, mli->mli_qi, mli->mli_qri, mli->mli_uri); @@ -1129,7 +1131,14 @@ ifmcstat_getifmaddrs(void) break; } - fprintf(stdout, "\t%s %s\n", pafname, addrbuf); + fprintf(stdout, "\t%s %s", pafname, addrbuf); +#ifdef INET6 + if (pifasa->sa.sa_family == AF_INET6 && + pifasa->sin6.sin6_scope_id) + fprintf(stdout, " scopeid 0x%x", + pifasa->sin6.sin6_scope_id); +#endif + fprintf(stdout, "\n"); #ifdef INET /* * Print per-link IGMP information, if available. @@ -1202,6 +1211,12 @@ next_ifnet: } fprintf(stdout, "\t\tgroup %s", addrbuf); +#ifdef INET6 + if (pgsa->sa.sa_family == AF_INET6 && + pgsa->sin6.sin6_scope_id) + fprintf(stdout, " scopeid 0x%x", + pgsa->sin6.sin6_scope_id); +#endif #ifdef INET if (pgsa->sa.sa_family == AF_INET) { inm_print_sources_sysctl(thisifindex, From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 23:09:17 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0D084604; Thu, 3 Jan 2013 23:09:17 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DAE70CB9; Thu, 3 Jan 2013 23:09:16 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03N9G4A003522; Thu, 3 Jan 2013 23:09:16 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03N9GF3003521; Thu, 3 Jan 2013 23:09:16 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <201301032309.r03N9GF3003521@svn.freebsd.org> From: Rick Macklem Date: Thu, 3 Jan 2013 23:09:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245016 - stable/9/usr.sbin/gssd X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 23:09:17 -0000 Author: rmacklem Date: Thu Jan 3 23:09:16 2013 New Revision: 245016 URL: http://svnweb.freebsd.org/changeset/base/245016 Log: MFC: r244331 Fix the gssd daemon so that it uses syslog() to report an error instead of calling err() when it is daemonized, so that the error gets logged. Modified: stable/9/usr.sbin/gssd/gssd.c Directory Properties: stable/9/usr.sbin/gssd/ (props changed) Modified: stable/9/usr.sbin/gssd/gssd.c ============================================================================== --- stable/9/usr.sbin/gssd/gssd.c Thu Jan 3 22:27:57 2013 (r245015) +++ stable/9/usr.sbin/gssd/gssd.c Thu Jan 3 23:09:16 2013 (r245016) @@ -33,6 +33,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -106,21 +107,43 @@ main(int argc, char **argv) sun.sun_len = SUN_LEN(&sun); fd = socket(AF_LOCAL, SOCK_STREAM, 0); if (!fd) { + if (debug_level == 0) { + syslog(LOG_ERR, "Can't create local gssd socket"); + exit(1); + } err(1, "Can't create local gssd socket"); } oldmask = umask(S_IXUSR|S_IRWXG|S_IRWXO); if (bind(fd, (struct sockaddr *) &sun, sun.sun_len) < 0) { + if (debug_level == 0) { + syslog(LOG_ERR, "Can't bind local gssd socket"); + exit(1); + } err(1, "Can't bind local gssd socket"); } umask(oldmask); if (listen(fd, SOMAXCONN) < 0) { + if (debug_level == 0) { + syslog(LOG_ERR, "Can't listen on local gssd socket"); + exit(1); + } err(1, "Can't listen on local gssd socket"); } xprt = svc_vc_create(fd, RPC_MAXDATASIZE, RPC_MAXDATASIZE); if (!xprt) { + if (debug_level == 0) { + syslog(LOG_ERR, + "Can't create transport for local gssd socket"); + exit(1); + } err(1, "Can't create transport for local gssd socket"); } if (!svc_reg(xprt, GSSD, GSSDVERS, gssd_1, NULL)) { + if (debug_level == 0) { + syslog(LOG_ERR, + "Can't register service for local gssd socket"); + exit(1); + } err(1, "Can't register service for local gssd socket"); } From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 23:12:09 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 72B8A7DD; Thu, 3 Jan 2013 23:12:09 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5EDE5CDA; Thu, 3 Jan 2013 23:12:09 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03NC9OQ004083; Thu, 3 Jan 2013 23:12:09 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03NC9K0004082; Thu, 3 Jan 2013 23:12:09 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201301032312.r03NC9K0004082@svn.freebsd.org> From: Marius Strobl Date: Thu, 3 Jan 2013 23:12:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245017 - head/sys/sparc64/sparc64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 23:12:09 -0000 Author: marius Date: Thu Jan 3 23:12:08 2013 New Revision: 245017 URL: http://svnweb.freebsd.org/changeset/base/245017 Log: Revert bogus part of r241740. Reported by: Michael Moll MFC after: 3 days Modified: head/sys/sparc64/sparc64/interrupt.S Modified: head/sys/sparc64/sparc64/interrupt.S ============================================================================== --- head/sys/sparc64/sparc64/interrupt.S Thu Jan 3 23:09:16 2013 (r245016) +++ head/sys/sparc64/sparc64/interrupt.S Thu Jan 3 23:12:08 2013 (r245017) @@ -83,13 +83,13 @@ ENTRY(intr_vector) * The 2nd word points to code to execute and the 3rd is an argument * to pass. Jump to it. */ - brnz,a,pt %g3, 1f - srlx %g3, 60, %g6 + brnz,pt %g3, 1f /* * NB: Zeus CPUs set some undocumented bits in the first data word. */ - jmpl %g4, %g0 and %g3, IV_MAX - 1, %g3 + jmpl %g4, %g0 + nop /* NOTREACHED */ /* @@ -98,7 +98,8 @@ ENTRY(intr_vector) * 4 bits of the 1st data word specify a priority, and the 2nd and * 3rd a function and argument. */ -1: brnz,a,pn %g6, 2f +1: srlx %g3, 60, %g6 + brnz,a,pn %g6, 2f clr %g3 /* From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 23:15:39 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D99349C6; Thu, 3 Jan 2013 23:15:39 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id BD48DD0C; Thu, 3 Jan 2013 23:15:39 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03NFdiF004642; Thu, 3 Jan 2013 23:15:39 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03NFbkv004622; Thu, 3 Jan 2013 23:15:37 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <201301032315.r03NFbkv004622@svn.freebsd.org> From: Rick Macklem Date: Thu, 3 Jan 2013 23:15:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245018 - stable/9/sys/kgssapi X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 23:15:39 -0000 Author: rmacklem Date: Thu Jan 3 23:15:36 2013 New Revision: 245018 URL: http://svnweb.freebsd.org/changeset/base/245018 Log: MFC: r244370 Piete.Brooks at cl.cam.ac.uk reported via email a crash which was caused by use of an invalid kgss_gssd_handle during an upcall to the gssd daemon when it has exited. This patch seems to avoid the crashes by holding a reference count on the kgss_gssd_handle until the upcall is done. It also adds a new mutex kgss_gssd_lock used to make manipulation of kgss_gssd_handle SMP safe. Modified: stable/9/sys/kgssapi/gss_accept_sec_context.c stable/9/sys/kgssapi/gss_acquire_cred.c stable/9/sys/kgssapi/gss_canonicalize_name.c stable/9/sys/kgssapi/gss_delete_sec_context.c stable/9/sys/kgssapi/gss_display_status.c stable/9/sys/kgssapi/gss_export_name.c stable/9/sys/kgssapi/gss_impl.c stable/9/sys/kgssapi/gss_import_name.c stable/9/sys/kgssapi/gss_init_sec_context.c stable/9/sys/kgssapi/gss_pname_to_uid.c stable/9/sys/kgssapi/gss_release_cred.c stable/9/sys/kgssapi/gss_release_name.c stable/9/sys/kgssapi/gss_set_cred_option.c stable/9/sys/kgssapi/gssapi_impl.h Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/kgssapi/gss_accept_sec_context.c ============================================================================== --- stable/9/sys/kgssapi/gss_accept_sec_context.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_accept_sec_context.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -58,9 +60,13 @@ OM_uint32 gss_accept_sec_context(OM_uint gss_ctx_id_t ctx = *context_handle; gss_name_t name; gss_cred_id_t cred; + CLIENT *cl; - if (!kgss_gssd_handle) + cl = kgss_gssd_client(); + if (cl == NULL) { + *minor_status = 0; return (GSS_S_FAILURE); + } if (ctx) args.ctx = ctx->handle; @@ -74,7 +80,8 @@ OM_uint32 gss_accept_sec_context(OM_uint args.input_chan_bindings = input_chan_bindings; bzero(&res, sizeof(res)); - stat = gssd_accept_sec_context_1(&args, &res, kgss_gssd_handle); + stat = gssd_accept_sec_context_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); Modified: stable/9/sys/kgssapi/gss_acquire_cred.c ============================================================================== --- stable/9/sys/kgssapi/gss_acquire_cred.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_acquire_cred.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -55,8 +57,11 @@ gss_acquire_cred(OM_uint32 *minor_status enum clnt_stat stat; gss_cred_id_t cred; int i; + CLIENT *cl; - if (!kgss_gssd_handle) + *minor_status = 0; + cl = kgss_gssd_client(); + if (cl == NULL) return (GSS_S_FAILURE); args.uid = curthread->td_ucred->cr_uid; @@ -69,7 +74,8 @@ gss_acquire_cred(OM_uint32 *minor_status args.cred_usage = cred_usage; bzero(&res, sizeof(res)); - stat = gssd_acquire_cred_1(&args, &res, kgss_gssd_handle); + stat = gssd_acquire_cred_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); @@ -80,7 +86,6 @@ gss_acquire_cred(OM_uint32 *minor_status return (res.major_status); } - *minor_status = 0; cred = malloc(sizeof(struct _gss_cred_id_t), M_GSSAPI, M_WAITOK); cred->handle = res.output_cred; *output_cred_handle = cred; Modified: stable/9/sys/kgssapi/gss_canonicalize_name.c ============================================================================== --- stable/9/sys/kgssapi/gss_canonicalize_name.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_canonicalize_name.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -48,15 +50,19 @@ gss_canonicalize_name(OM_uint32 *minor_s struct canonicalize_name_args args; enum clnt_stat stat; gss_name_t name; + CLIENT *cl; - if (!kgss_gssd_handle) + *minor_status = 0; + cl = kgss_gssd_client(); + if (cl == NULL) return (GSS_S_FAILURE); args.input_name = input_name->handle; args.mech_type = mech_type; bzero(&res, sizeof(res)); - stat = gssd_canonicalize_name_1(&args, &res, kgss_gssd_handle); + stat = gssd_canonicalize_name_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); @@ -69,7 +75,6 @@ gss_canonicalize_name(OM_uint32 *minor_s name = malloc(sizeof(struct _gss_name_t), M_GSSAPI, M_WAITOK); name->handle = res.output_name; - *minor_status = 0; *output_name = name; return (GSS_S_COMPLETE); Modified: stable/9/sys/kgssapi/gss_delete_sec_context.c ============================================================================== --- stable/9/sys/kgssapi/gss_delete_sec_context.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_delete_sec_context.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -46,6 +48,9 @@ gss_delete_sec_context(OM_uint32 *minor_ struct delete_sec_context_args args; enum clnt_stat stat; gss_ctx_id_t ctx; + CLIENT *cl; + + *minor_status = 0; if (!kgss_gssd_handle) return (GSS_S_FAILURE); @@ -60,9 +65,13 @@ gss_delete_sec_context(OM_uint32 *minor_ */ if (ctx->handle) { args.ctx = ctx->handle; + cl = kgss_gssd_client(); + if (cl == NULL) + return (GSS_S_FAILURE); bzero(&res, sizeof(res)); - stat = gssd_delete_sec_context_1(&args, &res, kgss_gssd_handle); + stat = gssd_delete_sec_context_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); @@ -85,7 +94,5 @@ gss_delete_sec_context(OM_uint32 *minor_ } } - *minor_status = 0; - return (GSS_S_COMPLETE); } Modified: stable/9/sys/kgssapi/gss_display_status.c ============================================================================== --- stable/9/sys/kgssapi/gss_display_status.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_display_status.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -49,8 +51,11 @@ gss_display_status(OM_uint32 *minor_stat struct display_status_res res; struct display_status_args args; enum clnt_stat stat; + CLIENT *cl; - if (!kgss_gssd_handle) + *minor_status = 0; + cl = kgss_gssd_client(); + if (cl == NULL) return (GSS_S_FAILURE); args.status_value = status_value; @@ -59,7 +64,8 @@ gss_display_status(OM_uint32 *minor_stat args.message_context = *message_context; bzero(&res, sizeof(res)); - stat = gssd_display_status_1(&args, &res, kgss_gssd_handle); + stat = gssd_display_status_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); @@ -70,7 +76,6 @@ gss_display_status(OM_uint32 *minor_stat return (res.major_status); } - *minor_status = 0; *message_context = res.message_context; kgss_copy_buffer(&res.status_string, status_string); xdr_free((xdrproc_t) xdr_display_status_res, &res); Modified: stable/9/sys/kgssapi/gss_export_name.c ============================================================================== --- stable/9/sys/kgssapi/gss_export_name.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_export_name.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -45,14 +47,18 @@ gss_export_name(OM_uint32 *minor_status, struct export_name_res res; struct export_name_args args; enum clnt_stat stat; + CLIENT *cl; - if (!kgss_gssd_handle) + *minor_status = 0; + cl = kgss_gssd_client(); + if (cl == NULL) return (GSS_S_FAILURE); args.input_name = input_name->handle; bzero(&res, sizeof(res)); - stat = gssd_export_name_1(&args, &res, kgss_gssd_handle); + stat = gssd_export_name_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); @@ -63,7 +69,6 @@ gss_export_name(OM_uint32 *minor_status, return (res.major_status); } - *minor_status = 0; kgss_copy_buffer(&res.exported_name, exported_name); xdr_free((xdrproc_t) xdr_export_name_res, &res); Modified: stable/9/sys/kgssapi/gss_impl.c ============================================================================== --- stable/9/sys/kgssapi/gss_impl.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_impl.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,8 +31,10 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include +#include #include #include #include @@ -59,6 +61,7 @@ static bool_t gssd_syscall_registered = struct kgss_mech_list kgss_mechs; CLIENT *kgss_gssd_handle; +struct mtx kgss_gssd_lock; static void kgss_init(void *dummy) @@ -92,14 +95,12 @@ sys_gssd_syscall(struct thread *td, stru struct netconfig *nconf; char path[MAXPATHLEN]; int error; + CLIENT *cl, *oldcl; error = priv_check(td, PRIV_NFS_DAEMON); if (error) return (error); - if (kgss_gssd_handle) - CLNT_DESTROY(kgss_gssd_handle); - error = copyinstr(uap->path, path, sizeof(path), NULL); if (error) return (error); @@ -109,10 +110,20 @@ sys_gssd_syscall(struct thread *td, stru sun.sun_len = SUN_LEN(&sun); nconf = getnetconfigent("local"); - kgss_gssd_handle = clnt_reconnect_create(nconf, + cl = clnt_reconnect_create(nconf, (struct sockaddr *) &sun, GSSD, GSSDVERS, RPC_MAXDATASIZE, RPC_MAXDATASIZE); + mtx_lock(&kgss_gssd_lock); + oldcl = kgss_gssd_handle; + kgss_gssd_handle = cl; + mtx_unlock(&kgss_gssd_lock); + + if (oldcl != NULL) { + CLNT_CLOSE(oldcl); + CLNT_RELEASE(oldcl); + } + return (0); } @@ -249,6 +260,23 @@ kgss_copy_buffer(const gss_buffer_t from } /* + * Acquire the kgss_gssd_handle and return it with a reference count, + * if it is available. + */ +CLIENT * +kgss_gssd_client(void) +{ + CLIENT *cl; + + mtx_lock(&kgss_gssd_lock); + cl = kgss_gssd_handle; + if (cl != NULL) + CLNT_ACQUIRE(cl); + mtx_unlock(&kgss_gssd_lock); + return (cl); +} + +/* * Kernel module glue */ static int @@ -280,6 +308,7 @@ kgssapi_modevent(module_t mod, int type, rpc_gss_get_principal_name; rpc_gss_entries.rpc_gss_svc_max_data_length = rpc_gss_svc_max_data_length; + mtx_init(&kgss_gssd_lock, "kgss_gssd_lock", NULL, MTX_DEF); break; case MOD_UNLOAD: /* Modified: stable/9/sys/kgssapi/gss_import_name.c ============================================================================== --- stable/9/sys/kgssapi/gss_import_name.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_import_name.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -48,18 +50,21 @@ gss_import_name(OM_uint32 *minor_status, struct import_name_args args; enum clnt_stat stat; gss_name_t name; + CLIENT *cl; *minor_status = 0; *output_name = GSS_C_NO_NAME; - if (!kgss_gssd_handle) + cl = kgss_gssd_client(); + if (cl == NULL) return (GSS_S_FAILURE); args.input_name_buffer = *input_name_buffer; args.input_name_type = input_name_type; bzero(&res, sizeof(res)); - stat = gssd_import_name_1(&args, &res, kgss_gssd_handle); + stat = gssd_import_name_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); Modified: stable/9/sys/kgssapi/gss_init_sec_context.c ============================================================================== --- stable/9/sys/kgssapi/gss_init_sec_context.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_init_sec_context.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -60,10 +62,12 @@ gss_init_sec_context(OM_uint32 * minor_s struct init_sec_context_args args; enum clnt_stat stat; gss_ctx_id_t ctx = *context_handle; + CLIENT *cl; *minor_status = 0; - if (!kgss_gssd_handle) + cl = kgss_gssd_client(); + if (cl == NULL) return (GSS_S_FAILURE); args.uid = curthread->td_ucred->cr_uid; @@ -88,7 +92,8 @@ gss_init_sec_context(OM_uint32 * minor_s } bzero(&res, sizeof(res)); - stat = gssd_init_sec_context_1(&args, &res, kgss_gssd_handle); + stat = gssd_init_sec_context_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); Modified: stable/9/sys/kgssapi/gss_pname_to_uid.c ============================================================================== --- stable/9/sys/kgssapi/gss_pname_to_uid.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_pname_to_uid.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -45,20 +47,23 @@ gss_pname_to_uid(OM_uint32 *minor_status struct pname_to_uid_res res; struct pname_to_uid_args args; enum clnt_stat stat; + CLIENT *cl; *minor_status = 0; - if (!kgss_gssd_handle) - return (GSS_S_FAILURE); - if (pname == GSS_C_NO_NAME) return (GSS_S_BAD_NAME); + cl = kgss_gssd_client(); + if (cl == NULL) + return (GSS_S_FAILURE); + args.pname = pname->handle; args.mech = mech; bzero(&res, sizeof(res)); - stat = gssd_pname_to_uid_1(&args, &res, kgss_gssd_handle); + stat = gssd_pname_to_uid_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); @@ -83,20 +88,23 @@ gss_pname_to_unix_cred(OM_uint32 *minor_ struct pname_to_uid_args args; enum clnt_stat stat; int i, n; + CLIENT *cl; *minor_status = 0; - if (!kgss_gssd_handle) - return (GSS_S_FAILURE); - if (pname == GSS_C_NO_NAME) return (GSS_S_BAD_NAME); + cl = kgss_gssd_client(); + if (cl == NULL) + return (GSS_S_FAILURE); + args.pname = pname->handle; args.mech = mech; bzero(&res, sizeof(res)); - stat = gssd_pname_to_uid_1(&args, &res, kgss_gssd_handle); + stat = gssd_pname_to_uid_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); Modified: stable/9/sys/kgssapi/gss_release_cred.c ============================================================================== --- stable/9/sys/kgssapi/gss_release_cred.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_release_cred.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -44,13 +46,21 @@ gss_release_cred(OM_uint32 *minor_status struct release_cred_res res; struct release_cred_args args; enum clnt_stat stat; + CLIENT *cl; + + *minor_status = 0; if (!kgss_gssd_handle) return (GSS_S_FAILURE); if (*cred_handle) { args.cred = (*cred_handle)->handle; - stat = gssd_release_cred_1(&args, &res, kgss_gssd_handle); + + cl = kgss_gssd_client(); + if (cl == NULL) + return (GSS_S_FAILURE); + stat = gssd_release_cred_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); @@ -63,7 +73,5 @@ gss_release_cred(OM_uint32 *minor_status return (res.major_status); } - *minor_status = 0; - return (GSS_S_COMPLETE); } Modified: stable/9/sys/kgssapi/gss_release_name.c ============================================================================== --- stable/9/sys/kgssapi/gss_release_name.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_release_name.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -45,6 +47,9 @@ gss_release_name(OM_uint32 *minor_status struct release_name_args args; enum clnt_stat stat; gss_name_t name; + CLIENT *cl; + + *minor_status = 0; if (!kgss_gssd_handle) return (GSS_S_FAILURE); @@ -53,7 +58,11 @@ gss_release_name(OM_uint32 *minor_status name = *input_name; args.input_name = name->handle; - stat = gssd_release_name_1(&args, &res, kgss_gssd_handle); + cl = kgss_gssd_client(); + if (cl == NULL) + return (GSS_S_FAILURE); + stat = gssd_release_name_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; return (GSS_S_FAILURE); @@ -68,7 +77,5 @@ gss_release_name(OM_uint32 *minor_status } } - *minor_status = 0; - return (GSS_S_COMPLETE); } Modified: stable/9/sys/kgssapi/gss_set_cred_option.c ============================================================================== --- stable/9/sys/kgssapi/gss_set_cred_option.c Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gss_set_cred_option.c Thu Jan 3 23:15:36 2013 (r245018) @@ -31,7 +31,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include +#include #include #include @@ -47,10 +49,12 @@ gss_set_cred_option(OM_uint32 *minor_sta struct set_cred_option_res res; struct set_cred_option_args args; enum clnt_stat stat; + CLIENT *cl; *minor_status = 0; - if (!kgss_gssd_handle) + cl = kgss_gssd_client(); + if (cl == NULL) return (GSS_S_FAILURE); if (cred) @@ -61,7 +65,8 @@ gss_set_cred_option(OM_uint32 *minor_sta args.option_value = *option_value; bzero(&res, sizeof(res)); - stat = gssd_set_cred_option_1(&args, &res, kgss_gssd_handle); + stat = gssd_set_cred_option_1(&args, &res, cl); + CLNT_RELEASE(cl); if (stat != RPC_SUCCESS) { *minor_status = stat; Modified: stable/9/sys/kgssapi/gssapi_impl.h ============================================================================== --- stable/9/sys/kgssapi/gssapi_impl.h Thu Jan 3 23:12:08 2013 (r245017) +++ stable/9/sys/kgssapi/gssapi_impl.h Thu Jan 3 23:15:36 2013 (r245018) @@ -53,8 +53,10 @@ struct kgss_mech { LIST_HEAD(kgss_mech_list, kgss_mech); extern CLIENT *kgss_gssd_handle; +extern struct mtx kgss_gssd_lock; extern struct kgss_mech_list kgss_mechs; +CLIENT *kgss_gssd_client(void); int kgss_oid_equal(const gss_OID oid1, const gss_OID oid2); extern void kgss_install_mech(gss_OID mech_type, const char *name, struct kobj_class *cls); From owner-svn-src-all@FreeBSD.ORG Thu Jan 3 23:21:02 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 9EAACCC1; Thu, 3 Jan 2013 23:21:02 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8E0BDD58; Thu, 3 Jan 2013 23:21:02 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r03NL2mG005405; Thu, 3 Jan 2013 23:21:02 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r03NL230005404; Thu, 3 Jan 2013 23:21:02 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <201301032321.r03NL230005404@svn.freebsd.org> From: Rick Macklem Date: Thu, 3 Jan 2013 23:21:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245019 - stable/9/usr.sbin/nfsd X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 03 Jan 2013 23:21:02 -0000 Author: rmacklem Date: Thu Jan 3 23:21:01 2013 New Revision: 245019 URL: http://svnweb.freebsd.org/changeset/base/245019 Log: MFC: r244447 Post r243965 the nfsd daemon will not start up for kernels built without "options INET6". This patch fixes the problem. Modified: stable/9/usr.sbin/nfsd/nfsd.c Directory Properties: stable/9/usr.sbin/nfsd/ (props changed) Modified: stable/9/usr.sbin/nfsd/nfsd.c ============================================================================== --- stable/9/usr.sbin/nfsd/nfsd.c Thu Jan 3 23:15:36 2013 (r245018) +++ stable/9/usr.sbin/nfsd/nfsd.c Thu Jan 3 23:21:01 2013 (r245019) @@ -236,7 +236,7 @@ main(int argc, char **argv) ip6flag = 1; s = socket(AF_INET6, SOCK_DGRAM, IPPROTO_UDP); if (s == -1) { - if (errno != EPROTONOSUPPORT) + if (errno != EPROTONOSUPPORT && errno != EAFNOSUPPORT) err(1, "socket"); ip6flag = 0; } else if (getnetconfigent("udp6") == NULL || From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 03:54:06 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 62C64C5; Fri, 4 Jan 2013 03:54:06 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 3B5277D5; Fri, 4 Jan 2013 03:54:06 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r043s6Lr046920; Fri, 4 Jan 2013 03:54:06 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r043s6CF046919; Fri, 4 Jan 2013 03:54:06 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201301040354.r043s6CF046919@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 4 Jan 2013 03:54:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245023 - stable/9/contrib/gcc X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 03:54:06 -0000 Author: pfg Date: Fri Jan 4 03:54:05 2013 New Revision: 245023 URL: http://svnweb.freebsd.org/changeset/base/245023 Log: MFC 244776, 244792: gcc: avoid generating negative values to DW_AT_byte_size. There is a bug in gcc (GCC/35998) where dwarf reports sizes of unsigned -1 (0xffffffff). On NetBSD this generated a faulty CTF entry which then caused a segfault in ctfmerge. The issue was worked around in NetBSD's Dtrace but since the issue originated in gcc, it seems reasonable to fix it here. Thanks to Christoph Mallon for pointing out a correct fix. Modified: stable/9/contrib/gcc/dwarf2out.c Modified: stable/9/contrib/gcc/dwarf2out.c ============================================================================== --- stable/9/contrib/gcc/dwarf2out.c Fri Jan 4 03:02:43 2013 (r245022) +++ stable/9/contrib/gcc/dwarf2out.c Fri Jan 4 03:54:05 2013 (r245023) @@ -10812,9 +10812,9 @@ add_byte_size_attribute (dw_die_ref die, /* Note that `size' might be -1 when we get to this point. If it is, that indicates that the byte size of the entity in question is variable. We - have no good way of expressing this fact in Dwarf at the present time, - so just let the -1 pass on through. */ - add_AT_unsigned (die, DW_AT_byte_size, size); + have no good way of expressing this fact in Dwarf at the present time. + GCC/35998: Avoid passing negative sizes to Dtrace and gdb. */ + add_AT_unsigned (die, DW_AT_byte_size, (size != (unsigned)-1 ? size : 0)); } /* For a FIELD_DECL node which represents a bit-field, output an attribute From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 03:54:23 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 120CD227; Fri, 4 Jan 2013 03:54:23 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 04ABF7DD; Fri, 4 Jan 2013 03:54:23 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r043sMEP046989; Fri, 4 Jan 2013 03:54:22 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r043sM5O046988; Fri, 4 Jan 2013 03:54:22 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201301040354.r043sM5O046988@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 4 Jan 2013 03:54:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r245024 - stable/8/contrib/gcc X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 03:54:23 -0000 Author: pfg Date: Fri Jan 4 03:54:22 2013 New Revision: 245024 URL: http://svnweb.freebsd.org/changeset/base/245024 Log: MFC 244776, 244792: gcc: avoid generating negative values to DW_AT_byte_size. There is a bug in gcc (GCC/35998) where dwarf reports sizes of unsigned -1 (0xffffffff). On NetBSD this generated a faulty CTF entry which then caused a segfault in ctfmerge. The issue was worked around in NetBSD's Dtrace but since the issue originated in gcc, it seems reasonable to fix it here. Thanks to Christoph Mallon for pointing out a correct fix. Modified: stable/8/contrib/gcc/dwarf2out.c Modified: stable/8/contrib/gcc/dwarf2out.c ============================================================================== --- stable/8/contrib/gcc/dwarf2out.c Fri Jan 4 03:54:05 2013 (r245023) +++ stable/8/contrib/gcc/dwarf2out.c Fri Jan 4 03:54:22 2013 (r245024) @@ -10812,9 +10812,9 @@ add_byte_size_attribute (dw_die_ref die, /* Note that `size' might be -1 when we get to this point. If it is, that indicates that the byte size of the entity in question is variable. We - have no good way of expressing this fact in Dwarf at the present time, - so just let the -1 pass on through. */ - add_AT_unsigned (die, DW_AT_byte_size, size); + have no good way of expressing this fact in Dwarf at the present time. + GCC/35998: Avoid passing negative sizes to Dtrace and gdb. */ + add_AT_unsigned (die, DW_AT_byte_size, (size != (unsigned)-1 ? size : 0)); } /* For a FIELD_DECL node which represents a bit-field, output an attribute From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 04:03:22 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id AB342475; Fri, 4 Jan 2013 04:03:22 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 852A0847; Fri, 4 Jan 2013 04:03:22 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0443Mrk048554; Fri, 4 Jan 2013 04:03:22 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0443M8j048552; Fri, 4 Jan 2013 04:03:22 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201301040403.r0443M8j048552@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 4 Jan 2013 04:03:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245025 - stable/9/lib/libedit X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 04:03:22 -0000 Author: pfg Date: Fri Jan 4 04:03:21 2013 New Revision: 245025 URL: http://svnweb.freebsd.org/changeset/base/245025 Log: MFC r244941: libedit: bind the correct command when using "bind -k". "ed-argument-digit" (i. e. command 0) was incorrectly used instead. This bug comes from the original sources imported in 1994 and has been confirmed in upstream NetBSD. Reported by: Yamagi Burmeister Submitted by: Christoph Mallon Modified: stable/9/lib/libedit/map.c Directory Properties: stable/9/lib/libedit/ (props changed) Modified: stable/9/lib/libedit/map.c ============================================================================== --- stable/9/lib/libedit/map.c Fri Jan 4 03:54:22 2013 (r245024) +++ stable/9/lib/libedit/map.c Fri Jan 4 04:03:21 2013 (r245025) @@ -1250,7 +1250,7 @@ map_bind(EditLine *el, int argc, const c char inbuf[EL_BUFSIZ]; char outbuf[EL_BUFSIZ]; const char *in = NULL; - char *out = NULL; + char *out; el_bindings_t *bp, *ep; int cmd; int key; @@ -1368,7 +1368,7 @@ map_bind(EditLine *el, int argc, const c return (-1); } if (key) - term_set_arrow(el, in, key_map_str(el, out), ntype); + term_set_arrow(el, in, key_map_cmd(el, cmd), ntype); else { if (in[1]) { key_add(el, in, key_map_cmd(el, cmd), ntype); From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 04:03:40 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 954E45D5; Fri, 4 Jan 2013 04:03:40 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8825A84B; Fri, 4 Jan 2013 04:03:40 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0443e8t048645; Fri, 4 Jan 2013 04:03:40 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0443eNB048644; Fri, 4 Jan 2013 04:03:40 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201301040403.r0443eNB048644@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 4 Jan 2013 04:03:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r245026 - stable/8/lib/libedit X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 04:03:40 -0000 Author: pfg Date: Fri Jan 4 04:03:39 2013 New Revision: 245026 URL: http://svnweb.freebsd.org/changeset/base/245026 Log: MFC r244941: libedit: bind the correct command when using "bind -k". "ed-argument-digit" (i. e. command 0) was incorrectly used instead. This bug comes from the original sources imported in 1994 and has been confirmed in upstream NetBSD. Reported by: Yamagi Burmeister Submitted by: Christoph Mallon Modified: stable/8/lib/libedit/map.c Directory Properties: stable/8/lib/libedit/ (props changed) Modified: stable/8/lib/libedit/map.c ============================================================================== --- stable/8/lib/libedit/map.c Fri Jan 4 04:03:21 2013 (r245025) +++ stable/8/lib/libedit/map.c Fri Jan 4 04:03:39 2013 (r245026) @@ -1250,7 +1250,7 @@ map_bind(EditLine *el, int argc, const c char inbuf[EL_BUFSIZ]; char outbuf[EL_BUFSIZ]; const char *in = NULL; - char *out = NULL; + char *out; el_bindings_t *bp, *ep; int cmd; int key; @@ -1368,7 +1368,7 @@ map_bind(EditLine *el, int argc, const c return (-1); } if (key) - term_set_arrow(el, in, key_map_str(el, out), ntype); + term_set_arrow(el, in, key_map_cmd(el, cmd), ntype); else { if (in[1]) { key_add(el, in, key_map_cmd(el, cmd), ntype); From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 06:28:35 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A012B3C6; Fri, 4 Jan 2013 06:28:35 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7ABD4EFD; Fri, 4 Jan 2013 06:28:35 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r046SZsr070319; Fri, 4 Jan 2013 06:28:35 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r046SZ3e070318; Fri, 4 Jan 2013 06:28:35 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201301040628.r046SZ3e070318@svn.freebsd.org> From: Adrian Chadd Date: Fri, 4 Jan 2013 06:28:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245031 - head/sys/dev/ath X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 06:28:35 -0000 Author: adrian Date: Fri Jan 4 06:28:34 2013 New Revision: 245031 URL: http://svnweb.freebsd.org/changeset/base/245031 Log: For PHY error frames, populate the configured channel flags rather than based on the received frame. PHY errors don't have the relevant HT or 40MHz MCS flag set. Modified: head/sys/dev/ath/if_ath_rx.c Modified: head/sys/dev/ath/if_ath_rx.c ============================================================================== --- head/sys/dev/ath/if_ath_rx.c Fri Jan 4 05:53:17 2013 (r245030) +++ head/sys/dev/ath/if_ath_rx.c Fri Jan 4 06:28:34 2013 (r245031) @@ -423,7 +423,21 @@ ath_rx_tap(struct ifnet *ifp, struct mbu sc->sc_rx_th.wr_flags = sc->sc_hwmap[rix].rxflags; #ifdef AH_SUPPORT_AR5416 sc->sc_rx_th.wr_chan_flags &= ~CHAN_HT; - if (sc->sc_rx_th.wr_rate & IEEE80211_RATE_MCS) { /* HT rate */ + if (rs->rs_status & HAL_RXERR_PHY) { + struct ieee80211com *ic = ifp->if_l2com; + + /* + * PHY error - make sure the channel flags + * reflect the actual channel configuration, + * not the received frame. + */ + if (IEEE80211_IS_CHAN_HT40U(ic->ic_curchan)) + sc->sc_rx_th.wr_chan_flags |= CHAN_HT40U; + else if (IEEE80211_IS_CHAN_HT40D(ic->ic_curchan)) + sc->sc_rx_th.wr_chan_flags |= CHAN_HT40D; + else if (IEEE80211_IS_CHAN_HT20(ic->ic_curchan)) + sc->sc_rx_th.wr_chan_flags |= CHAN_HT20; + } else if (sc->sc_rx_th.wr_rate & IEEE80211_RATE_MCS) { /* HT rate */ struct ieee80211com *ic = ifp->if_l2com; if ((rs->rs_flags & HAL_RX_2040) == 0) @@ -435,6 +449,7 @@ ath_rx_tap(struct ifnet *ifp, struct mbu if ((rs->rs_flags & HAL_RX_GI) == 0) sc->sc_rx_th.wr_flags |= IEEE80211_RADIOTAP_F_SHORTGI; } + #endif sc->sc_rx_th.wr_tsf = htole64(ath_extend_tsf(sc, rs->rs_tstamp, tsf)); if (rs->rs_status & HAL_RXERR_CRC) From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 07:52:48 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 6EFE6F0B; Fri, 4 Jan 2013 07:52:48 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4A7602C0; Fri, 4 Jan 2013 07:52:48 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r047qmr7082681; Fri, 4 Jan 2013 07:52:48 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r047qmev082680; Fri, 4 Jan 2013 07:52:48 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201301040752.r047qmev082680@svn.freebsd.org> From: Konstantin Belousov Date: Fri, 4 Jan 2013 07:52:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245033 - head/sys/fs/nullfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 07:52:48 -0000 Author: kib Date: Fri Jan 4 07:52:47 2013 New Revision: 245033 URL: http://svnweb.freebsd.org/changeset/base/245033 Log: Fix reversed condition in the assertion. Pointy hat to: kib MFC after: 13 days Modified: head/sys/fs/nullfs/null_subr.c Modified: head/sys/fs/nullfs/null_subr.c ============================================================================== --- head/sys/fs/nullfs/null_subr.c Fri Jan 4 06:29:52 2013 (r245032) +++ head/sys/fs/nullfs/null_subr.c Fri Jan 4 07:52:47 2013 (r245033) @@ -224,7 +224,7 @@ null_nodeget(mp, lowervp, vpp) * provide ready to use vnode. */ if (VOP_ISLOCKED(lowervp) != LK_EXCLUSIVE) { - KASSERT((MOUNTTONULLMOUNT(mp)->nullm_flags & NULLM_CACHE) == 0, + KASSERT((MOUNTTONULLMOUNT(mp)->nullm_flags & NULLM_CACHE) != 0, ("lowervp %p is not excl locked and cache is disabled", lowervp)); vn_lock(lowervp, LK_UPGRADE | LK_RETRY); From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 09:15:59 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id C994921B; Fri, 4 Jan 2013 09:15:59 +0000 (UTC) (envelope-from erwin@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B21327A6; Fri, 4 Jan 2013 09:15:59 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r049FxVQ095728; Fri, 4 Jan 2013 09:15:59 GMT (envelope-from erwin@svn.freebsd.org) Received: (from erwin@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r049FxDh095727; Fri, 4 Jan 2013 09:15:59 GMT (envelope-from erwin@svn.freebsd.org) Message-Id: <201301040915.r049FxDh095727@svn.freebsd.org> From: Erwin Lansing Date: Fri, 4 Jan 2013 09:15:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245034 - head/etc/namedb X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 09:15:59 -0000 Author: erwin Date: Fri Jan 4 09:15:59 2013 New Revision: 245034 URL: http://svnweb.freebsd.org/changeset/base/245034 Log: Update with new IPv4 address for D root. Approved by: delphij (mentor) Modified: head/etc/namedb/named.root Modified: head/etc/namedb/named.root ============================================================================== --- head/etc/namedb/named.root Fri Jan 4 07:52:47 2013 (r245033) +++ head/etc/namedb/named.root Fri Jan 4 09:15:59 2013 (r245034) @@ -7,14 +7,14 @@ ; (e.g. reference this file in the "cache . " ; configuration file of BIND domain name servers). ; -; This file is made available by InterNIC +; This file is made available by InterNIC ; under anonymous FTP as -; file /domain/named.root +; file /domain/named.cache ; on server FTP.INTERNIC.NET ; -OR- RS.INTERNIC.NET ; -; last update: Jun 8, 2011 -; related version of root zone: 2011060800 +; last update: Jan 3, 2013 +; related version of root zone: 2013010300 ; ; formerly NS.INTERNIC.NET ; @@ -35,7 +35,7 @@ C.ROOT-SERVERS.NET. 3600000 A ; FORMERLY TERP.UMD.EDU ; . 3600000 NS D.ROOT-SERVERS.NET. -D.ROOT-SERVERS.NET. 3600000 A 128.8.10.90 +D.ROOT-SERVERS.NET. 3600000 A 199.7.91.13 D.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:2D::D ; ; FORMERLY NS.NASA.GOV From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 09:52:10 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 51D10A51; Fri, 4 Jan 2013 09:52:10 +0000 (UTC) (envelope-from nyan@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2C02E8ED; Fri, 4 Jan 2013 09:52:10 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r049qAng000839; Fri, 4 Jan 2013 09:52:10 GMT (envelope-from nyan@svn.freebsd.org) Received: (from nyan@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r049q9IX000838; Fri, 4 Jan 2013 09:52:09 GMT (envelope-from nyan@svn.freebsd.org) Message-Id: <201301040952.r049q9IX000838@svn.freebsd.org> From: Takahashi Yoshihiro Date: Fri, 4 Jan 2013 09:52:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245035 - head/sys/pc98/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 09:52:10 -0000 Author: nyan Date: Fri Jan 4 09:52:09 2013 New Revision: 245035 URL: http://svnweb.freebsd.org/changeset/base/245035 Log: MFi386: r232521 Exclude USB drivers (except umass and ukbd) from main kernel image. Modified: head/sys/pc98/conf/GENERIC Modified: head/sys/pc98/conf/GENERIC ============================================================================== --- head/sys/pc98/conf/GENERIC Fri Jan 4 09:15:59 2013 (r245034) +++ head/sys/pc98/conf/GENERIC Fri Jan 4 09:52:09 2013 (r245035) @@ -238,44 +238,11 @@ device bpf # Berkeley packet filter #device ohci # OHCI PCI->USB interface #device ehci # EHCI PCI->USB interface (USB 2.0) #device usb # USB Bus (required) -#device udbp # USB Double Bulk Pipe devices (needs netgraph) -#device uhid # "Human Interface Devices" #device ukbd # Keyboard -#device ulpt # Printer #device umass # Disks/Mass storage - Requires scbus and da -#device ums # Mouse -#device urio # Diamond Rio 500 MP3 player -# USB Serial devices -#device uark # Technologies ARK3116 based serial adapters -#device ubsa # Belkin F5U103 and compatible serial adapters -#device ubser # BWCT console serial adapters -#device uftdi # For FTDI usb serial adapters -#device uipaq # Some WinCE based devices -#device uplcom # Prolific PL-2303 serial adapters -#device uslcom # SI Labs CP2101/CP2102 serial adapters -#device uvisor # Visor and Palm devices -#device uvscom # USB serial support for DDI pocket's PHS -# USB Ethernet, requires miibus -#device aue # ADMtek USB Ethernet -#device axe # ASIX Electronics USB Ethernet -#device cdce # Generic USB over Ethernet -#device cue # CATC USB Ethernet -#device kue # Kawasaki LSI USB Ethernet -#device rue # RealTek RTL8150 USB Ethernet -#device udav # Davicom DM9601E USB -# USB Wireless -#device rum # Ralink Technology RT2501USB wireless NICs -#device uath # Atheros AR5523 wireless NICs -#device ural # Ralink Technology RT2500USB wireless NICs -#device zyd # ZyDAS zd1211/zd1211b wireless NICs - -# FireWire support -#device sbp # SCSI over FireWire (Requires scbus and da) -#device fwe # Ethernet over FireWire (non-standard!) # Sound support #device sound # Generic sound driver (required) #device snd_mss # Microsoft Sound System #device "snd_sb16" # Sound Blaster 16 #device snd_sbc # Sound Blaster -#device snd_uaudio # USB Audio From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 09:57:16 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 946F5E08; Fri, 4 Jan 2013 09:57:16 +0000 (UTC) (envelope-from nyan@FreeBSD.org) Received: from sakura.ccs.furiru.org (sakura.ccs.furiru.org [IPv6:2001:2f0:104:8060::1]) by mx1.freebsd.org (Postfix) with ESMTP id 3D78D93C; Fri, 4 Jan 2013 09:57:16 +0000 (UTC) Received: from localhost (authenticated bits=0) by sakura.ccs.furiru.org (unknown) with ESMTP id r049vB5b025190; Fri, 4 Jan 2013 18:57:13 +0900 (JST) (envelope-from nyan@FreeBSD.org) Date: Fri, 04 Jan 2013 18:57:10 +0900 (JST) Message-Id: <20130104.185710.737004071260803581.nyan@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r245035 - head/sys/pc98/conf From: TAKAHASHI Yoshihiro In-Reply-To: <201301040952.r049q9IX000838@svn.freebsd.org> References: <201301040952.r049q9IX000838@svn.freebsd.org> X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 09:57:16 -0000 In article <201301040952.r049q9IX000838@svn.freebsd.org> Takahashi Yoshihiro writes: > Author: nyan > Date: Fri Jan 4 09:52:09 2013 > New Revision: 245035 > URL: http://svnweb.freebsd.org/changeset/base/245035 > > Log: > MFi386: r232521 > > Exclude USB drivers (except umass and ukbd) from main kernel image. It is also merging r244992 completely that removes the firewire drivers. --- TAKAHASHI Yoshihiro From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 11:11:13 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5188922E; Fri, 4 Jan 2013 11:11:13 +0000 (UTC) (envelope-from davidxu@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 428E0C41; Fri, 4 Jan 2013 11:11:13 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r04BBD7G013381; Fri, 4 Jan 2013 11:11:13 GMT (envelope-from davidxu@svn.freebsd.org) Received: (from davidxu@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r04BBDjZ013380; Fri, 4 Jan 2013 11:11:13 GMT (envelope-from davidxu@svn.freebsd.org) Message-Id: <201301041111.r04BBDjZ013380@svn.freebsd.org> From: David Xu Date: Fri, 4 Jan 2013 11:11:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245036 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 11:11:13 -0000 Author: davidxu Date: Fri Jan 4 11:11:12 2013 New Revision: 245036 URL: http://svnweb.freebsd.org/changeset/base/245036 Log: Revert revision 244760 because strncpy pads trailing space with zero, this prevents kernel data from being leaked. Noticed by: Joerg Sonnenberger < joerg at britannica dot bec dot de > Modified: head/sys/kern/vfs_mount.c Modified: head/sys/kern/vfs_mount.c ============================================================================== --- head/sys/kern/vfs_mount.c Fri Jan 4 09:52:09 2013 (r245035) +++ head/sys/kern/vfs_mount.c Fri Jan 4 11:11:12 2013 (r245036) @@ -559,7 +559,7 @@ vfs_donmount(struct thread *td, uint64_t if (error || fstype[fstypelen - 1] != '\0') { error = EINVAL; if (errmsg != NULL) - strlcpy(errmsg, "Invalid fstype", errmsg_len); + strncpy(errmsg, "Invalid fstype", errmsg_len); goto bail; } fspathlen = 0; @@ -567,7 +567,7 @@ vfs_donmount(struct thread *td, uint64_t if (error || fspath[fspathlen - 1] != '\0') { error = EINVAL; if (errmsg != NULL) - strlcpy(errmsg, "Invalid fspath", errmsg_len); + strncpy(errmsg, "Invalid fspath", errmsg_len); goto bail; } @@ -1447,7 +1447,7 @@ vfs_filteropt(struct vfsoptlist *opts, c if (ret != 0) { TAILQ_FOREACH(opt, opts, link) { if (strcmp(opt->name, "errmsg") == 0) { - strlcpy((char *)opt->value, errmsg, opt->len); + strncpy((char *)opt->value, errmsg, opt->len); break; } } From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 11:34:10 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E77147DD; Fri, 4 Jan 2013 11:34:10 +0000 (UTC) (envelope-from mjguzik@gmail.com) Received: from mail-wg0-f50.google.com (mail-wg0-f50.google.com [74.125.82.50]) by mx1.freebsd.org (Postfix) with ESMTP id EA68AD7A; Fri, 4 Jan 2013 11:34:09 +0000 (UTC) Received: by mail-wg0-f50.google.com with SMTP id es5so7675602wgb.29 for ; Fri, 04 Jan 2013 03:34:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:date:from:to:cc:subject:message-id:references :mime-version:content-type:content-disposition:in-reply-to :user-agent; bh=fAOViSm/l7fvZ/0fa1ezUqN7CqiImDeKm8T58JhRwvs=; b=J2Lv8UaufI8oewkNw0CK1+17uTR2O19+zBum/M6iDMeF10OKVNZlxtUqcl0jSOt3JR JrMlg81/oMH76qFTG37TBY3hgC6G/gUtf7PLjxeAYnP7m/425R75NhLaG+RVArbHfrGB rNA/FJotu+U/YkbodpVPIz+/o/3B81dn09B347rfwCGHc36M+MqJcrOKA0QXeEvqIIxX RAB5TJBVoh+kIOprQYTqYbHS2e8qNmw4i9bTZfwfsorzleUpKkvShZc42LsVdaxvzTtA n2eh3TP1sfoaYDxIxzVjeMmf+sZr4V8KP4pIq3XngMRmQP9zp9LKStlcrYaWDoWrO+W7 f9/Q== X-Received: by 10.180.93.133 with SMTP id cu5mr72553842wib.32.1357299248715; Fri, 04 Jan 2013 03:34:08 -0800 (PST) Received: from dft-labs.eu (n1x0n-1-pt.tunnel.tserv5.lon1.ipv6.he.net. [2001:470:1f08:1f7::2]) by mx.google.com with ESMTPS id hu8sm71515049wib.6.2013.01.04.03.34.03 (version=TLSv1/SSLv3 cipher=OTHER); Fri, 04 Jan 2013 03:34:07 -0800 (PST) Date: Fri, 4 Jan 2013 12:33:54 +0100 From: Mateusz Guzik To: David Xu Subject: Re: svn commit: r245036 - head/sys/kern Message-ID: <20130104113354.GB26239@dft-labs.eu> References: <201301041111.r04BBDjZ013380@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <201301041111.r04BBDjZ013380@svn.freebsd.org> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 11:34:11 -0000 On Fri, Jan 04, 2013 at 11:11:13AM +0000, David Xu wrote: > Author: davidxu > Date: Fri Jan 4 11:11:12 2013 > New Revision: 245036 > URL: http://svnweb.freebsd.org/changeset/base/245036 > > Log: > Revert revision 244760 because strncpy pads trailing space with zero, > this prevents kernel data from being leaked. > I think it would be better to teach strlcpy to zero-pad as well. -- Mateusz Guzik From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 11:57:28 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 2CF99CF1; Fri, 4 Jan 2013 11:57:28 +0000 (UTC) (envelope-from jh@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 19F37E37; Fri, 4 Jan 2013 11:57:28 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r04BvRsb020110; Fri, 4 Jan 2013 11:57:27 GMT (envelope-from jh@svn.freebsd.org) Received: (from jh@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r04BvRe7020109; Fri, 4 Jan 2013 11:57:27 GMT (envelope-from jh@svn.freebsd.org) Message-Id: <201301041157.r04BvRe7020109@svn.freebsd.org> From: Jaakko Heinonen Date: Fri, 4 Jan 2013 11:57:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245037 - stable/9/sbin/mdconfig X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 11:57:28 -0000 Author: jh Date: Fri Jan 4 11:57:27 2013 New Revision: 245037 URL: http://svnweb.freebsd.org/changeset/base/245037 Log: MFC r234047 by bjk: Fix a couple of style issues. Tweak grammar and markup while here. Modified: stable/9/sbin/mdconfig/mdconfig.8 Directory Properties: stable/9/sbin/mdconfig/ (props changed) Modified: stable/9/sbin/mdconfig/mdconfig.8 ============================================================================== --- stable/9/sbin/mdconfig/mdconfig.8 Fri Jan 4 11:11:12 2013 (r245036) +++ stable/9/sbin/mdconfig/mdconfig.8 Fri Jan 4 11:57:27 2013 (r245037) @@ -87,7 +87,7 @@ parameters specified and attach it to th Detach a memory disk from the system and release all resources. .It Fl t Ar type Select the type of the memory disk. -.Bl -tag -width "preload" +.Bl -tag -width "malloc" .It Cm malloc Storage for this type of memory disk is allocated with .Xr malloc 9 . @@ -104,31 +104,35 @@ becomes the backing store for this memor .It Cm swap Storage for this type of memory disk is allocated from buffer memory. -Pages get pushed out to the swap when the system is under memory +Pages get pushed out to swap when the system is under memory pressure, otherwise they stay in the operating memory. Using .Cm swap -backing is generally preferable over +backing is generally preferred instead of using .Cm malloc backing. .El .It Fl f Ar file -Filename to use for the vnode type memory disk. Options +Filename to use for the vnode type memory disk. +The .Fl a and .Fl t Ar vnode -are implied if not specified. +options are implied if not specified. .It Fl l List configured devices. If given with .Fl u , display details about that particular device. -If +If the .Fl v -option specified, show all details. +option is specified, show all details. .It Fl n -When printing md device names, print only the unit number without the -md prefix. +When printing +.Xr md 4 +device names, print only the unit number without the +.Xr md 4 +prefix. .It Fl s Ar size Size of the memory disk. .Ar Size @@ -137,11 +141,12 @@ is the number of 512 byte sectors unless or .Cm t which -denotes byte, kilobyte, megabyte, gigabyte and terabyte respectively. Options +denotes byte, kilobyte, megabyte, gigabyte and terabyte respectively. +The .Fl a and .Fl t Ar swap -are implied if not specified. +options are implied if not specified. .It Fl S Ar sectorsize Sectorsize to use for the memory disk, in bytes. .It Fl x Ar sectors/track @@ -175,12 +180,12 @@ Allocate and reserve all needed storage .It Oo Cm no Oc Ns Cm cluster Enable clustering on this disk. .It Oo Cm no Oc Ns Cm compress -Enable/Disable compression features to reduce memory usage. +Enable/disable compression features to reduce memory usage. .It Oo Cm no Oc Ns Cm force -Disable/Enable extra sanity checks to prevent the user from doing something +Disable/enable extra sanity checks to prevent the user from doing something that might adversely affect the system. .It Oo Cm no Oc Ns Cm readonly -Enable/Disable readonly mode. +Enable/disable readonly mode. .El .It Fl u Ar unit Request a specific unit number for the @@ -197,15 +202,15 @@ is provided for convenience as an abbrev .Fl t Ar vnode .Fl f Ar file . .Sh EXAMPLES -To create a 4 megabyte +Create a 4 megabyte .Xr malloc 9 backed memory disk. -The name of the allocated unit will be output on stdout like +The name of the allocated unit will be printed on stdout, such as .Dq Li md3 : .Pp .Dl mdconfig -a -t malloc -s 4m .Pp -To create a disk named +Create a disk named .Pa /dev/md4 with .Pa /tmp/boot.flp @@ -213,12 +218,12 @@ as backing storage: .Pp .Dl mdconfig -a -t vnode -f /tmp/boot.flp -u 4 .Pp -To detach and free all resources used by +Detach and free all resources used by .Pa /dev/md4 : .Pp .Dl mdconfig -d -u 4 .Pp -To create a 128MByte swap backed disk, initialize an +Create a 128MByte swap backed disk, initialize an .Xr ffs 7 file system on it, and mount it on .Pa /tmp : @@ -229,7 +234,7 @@ mount /dev/md10 /tmp chmod 1777 /tmp .Ed .Pp -To create a 5MB file-backed disk +Create a 5MB file-backed disk .Ns ( Fl a and .Fl t Ar vnode @@ -242,7 +247,7 @@ newfs md0c mount /dev/md0c /mnt .Ed .Pp -To create an +Create an .Xr md 4 device out of an ISO 9660 CD image file .Ns ( Fl a From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 12:07:00 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 81D891B4; Fri, 4 Jan 2013 12:07:00 +0000 (UTC) (envelope-from jh@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5BBCDEBA; Fri, 4 Jan 2013 12:07:00 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r04C70xu021805; Fri, 4 Jan 2013 12:07:00 GMT (envelope-from jh@svn.freebsd.org) Received: (from jh@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r04C6x8E021793; Fri, 4 Jan 2013 12:06:59 GMT (envelope-from jh@svn.freebsd.org) Message-Id: <201301041206.r04C6x8E021793@svn.freebsd.org> From: Jaakko Heinonen Date: Fri, 4 Jan 2013 12:06:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245038 - in stable/9: sbin/mdconfig sys/dev/md X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 12:07:00 -0000 Author: jh Date: Fri Jan 4 12:06:59 2013 New Revision: 245038 URL: http://svnweb.freebsd.org/changeset/base/245038 Log: MFC r243372: Disallow attaching preloaded memory disks via ioctl. - The feature is dangerous because the kernel code didn't check validity of the memory address provided from user space. - It seems that mdconfig(8) never really supported attaching preloaded memory disks. - Preloaded memory disks are automatically attached during md(4) initialization. Thus there shouldn't be much use for the feature. PR: kern/169683 Modified: stable/9/sbin/mdconfig/mdconfig.c stable/9/sys/dev/md/md.c Directory Properties: stable/9/sbin/mdconfig/ (props changed) stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sbin/mdconfig/mdconfig.c ============================================================================== --- stable/9/sbin/mdconfig/mdconfig.c Fri Jan 4 11:57:27 2013 (r245037) +++ stable/9/sbin/mdconfig/mdconfig.c Fri Jan 4 12:06:59 2013 (r245038) @@ -62,7 +62,7 @@ usage(void) " mdconfig -d -u unit [-o [no]force]\n" " mdconfig -l [-v] [-n] [-u unit]\n" " mdconfig file\n"); - fprintf(stderr, "\t\ttype = {malloc, preload, vnode, swap}\n"); + fprintf(stderr, "\t\ttype = {malloc, vnode, swap}\n"); fprintf(stderr, "\t\toption = {cluster, compress, reserve}\n"); fprintf(stderr, "\t\tsize = %%d (512 byte blocks), %%db (B),\n"); fprintf(stderr, "\t\t %%dk (kB), %%dm (MB), %%dg (GB) or\n"); @@ -115,9 +115,6 @@ main(int argc, char **argv) if (!strcmp(optarg, "malloc")) { mdio.md_type = MD_MALLOC; mdio.md_options = MD_AUTOUNIT | MD_COMPRESS; - } else if (!strcmp(optarg, "preload")) { - mdio.md_type = MD_PRELOAD; - mdio.md_options = 0; } else if (!strcmp(optarg, "vnode")) { mdio.md_type = MD_VNODE; mdio.md_options = MD_CLUSTER | MD_AUTOUNIT | MD_COMPRESS; Modified: stable/9/sys/dev/md/md.c ============================================================================== --- stable/9/sys/dev/md/md.c Fri Jan 4 11:57:27 2013 (r245037) +++ stable/9/sys/dev/md/md.c Fri Jan 4 12:06:59 2013 (r245038) @@ -854,27 +854,6 @@ mdinit(struct md_s *sc) DEVSTAT_ALL_SUPPORTED, DEVSTAT_TYPE_DIRECT, DEVSTAT_PRIORITY_MAX); } -/* - * XXX: we should check that the range they feed us is mapped. - * XXX: we should implement read-only. - */ - -static int -mdcreate_preload(struct md_s *sc, struct md_ioctl *mdio) -{ - - if (mdio->md_options & ~(MD_AUTOUNIT | MD_FORCE)) - return (EINVAL); - if (mdio->md_base == 0) - return (EINVAL); - sc->flags = mdio->md_options & MD_FORCE; - /* Cast to pointer size, then to pointer to avoid warning */ - sc->pl_ptr = (u_char *)(uintptr_t)mdio->md_base; - sc->pl_len = (size_t)sc->mediasize; - return (0); -} - - static int mdcreate_malloc(struct md_s *sc, struct md_ioctl *mdio) { @@ -1186,8 +1165,12 @@ xmdctlioctl(struct cdev *dev, u_long cmd error = mdcreate_malloc(sc, mdio); break; case MD_PRELOAD: - sc->start = mdstart_preload; - error = mdcreate_preload(sc, mdio); + /* + * We disallow attaching preloaded memory disks via + * ioctl. Preloaded memory disks are automatically + * attached in g_md_init(). + */ + error = EOPNOTSUPP; break; case MD_VNODE: sc->start = mdstart_vnode; From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 13:36:37 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 4660C55A; Fri, 4 Jan 2013 13:36:37 +0000 (UTC) (envelope-from erwin@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2687727D; Fri, 4 Jan 2013 13:36:37 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r04DabLn035210; Fri, 4 Jan 2013 13:36:37 GMT (envelope-from erwin@svn.freebsd.org) Received: (from erwin@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r04DaWl5035180; Fri, 4 Jan 2013 13:36:32 GMT (envelope-from erwin@svn.freebsd.org) Message-Id: <201301041336.r04DaWl5035180@svn.freebsd.org> From: Erwin Lansing Date: Fri, 4 Jan 2013 13:36:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r245039 - in stable/8/contrib/bind9: . bin/check bin/dig bin/dnssec bin/named bin/nsupdate doc doc/arm doc/misc lib lib/bind9 lib/bind9/include lib/bind9/include/bind9 lib/dns lib/dns/i... X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 13:36:37 -0000 Author: erwin Date: Fri Jan 4 13:36:31 2013 New Revision: 245039 URL: http://svnweb.freebsd.org/changeset/base/245039 Log: Update to 9.6-ESV-R8. All security fixes were previously merged. Release notes: https://kb.isc.org/article/AA-00795 Approved by: delphij (mentor) Modified: stable/8/contrib/bind9/CHANGES stable/8/contrib/bind9/README stable/8/contrib/bind9/bin/check/check-tool.c stable/8/contrib/bind9/bin/dig/nslookup.c stable/8/contrib/bind9/bin/dnssec/dnssec-signzone.c stable/8/contrib/bind9/bin/named/controlconf.c stable/8/contrib/bind9/bin/named/convertxsl.pl stable/8/contrib/bind9/bin/named/statschannel.c stable/8/contrib/bind9/bin/nsupdate/nsupdate.c stable/8/contrib/bind9/configure.in stable/8/contrib/bind9/doc/Makefile.in stable/8/contrib/bind9/doc/arm/Bv9ARM-book.xml stable/8/contrib/bind9/doc/arm/Bv9ARM.ch06.html stable/8/contrib/bind9/doc/arm/Bv9ARM.pdf stable/8/contrib/bind9/doc/misc/format-options.pl stable/8/contrib/bind9/doc/misc/sort-options.pl stable/8/contrib/bind9/isc-config.sh.in stable/8/contrib/bind9/lib/Makefile.in stable/8/contrib/bind9/lib/bind9/api stable/8/contrib/bind9/lib/bind9/check.c stable/8/contrib/bind9/lib/bind9/include/Makefile.in stable/8/contrib/bind9/lib/bind9/include/bind9/Makefile.in stable/8/contrib/bind9/lib/dns/adb.c stable/8/contrib/bind9/lib/dns/api stable/8/contrib/bind9/lib/dns/dnssec.c stable/8/contrib/bind9/lib/dns/dst_openssl.h stable/8/contrib/bind9/lib/dns/dst_parse.c stable/8/contrib/bind9/lib/dns/dst_result.c stable/8/contrib/bind9/lib/dns/include/Makefile.in stable/8/contrib/bind9/lib/dns/include/dns/dnssec.h stable/8/contrib/bind9/lib/dns/include/dns/iptable.h stable/8/contrib/bind9/lib/dns/include/dns/log.h stable/8/contrib/bind9/lib/dns/include/dns/stats.h stable/8/contrib/bind9/lib/dns/include/dns/zone.h stable/8/contrib/bind9/lib/dns/include/dst/Makefile.in stable/8/contrib/bind9/lib/dns/include/dst/result.h stable/8/contrib/bind9/lib/dns/log.c stable/8/contrib/bind9/lib/dns/master.c stable/8/contrib/bind9/lib/dns/masterdump.c stable/8/contrib/bind9/lib/dns/openssl_link.c stable/8/contrib/bind9/lib/dns/openssldh_link.c stable/8/contrib/bind9/lib/dns/openssldsa_link.c stable/8/contrib/bind9/lib/dns/opensslrsa_link.c stable/8/contrib/bind9/lib/dns/rbtdb.c stable/8/contrib/bind9/lib/dns/rdata.c stable/8/contrib/bind9/lib/dns/spnego_asn1.pl stable/8/contrib/bind9/lib/dns/zone.c stable/8/contrib/bind9/lib/isc/alpha/Makefile.in stable/8/contrib/bind9/lib/isc/alpha/include/Makefile.in stable/8/contrib/bind9/lib/isc/alpha/include/isc/Makefile.in stable/8/contrib/bind9/lib/isc/api stable/8/contrib/bind9/lib/isc/ia64/Makefile.in stable/8/contrib/bind9/lib/isc/ia64/include/Makefile.in stable/8/contrib/bind9/lib/isc/ia64/include/isc/Makefile.in stable/8/contrib/bind9/lib/isc/include/Makefile.in stable/8/contrib/bind9/lib/isc/include/isc/file.h stable/8/contrib/bind9/lib/isc/mem.c stable/8/contrib/bind9/lib/isc/mips/Makefile.in stable/8/contrib/bind9/lib/isc/mips/include/Makefile.in stable/8/contrib/bind9/lib/isc/mips/include/isc/Makefile.in stable/8/contrib/bind9/lib/isc/noatomic/Makefile.in stable/8/contrib/bind9/lib/isc/noatomic/include/Makefile.in stable/8/contrib/bind9/lib/isc/noatomic/include/isc/Makefile.in stable/8/contrib/bind9/lib/isc/nothreads/include/Makefile.in stable/8/contrib/bind9/lib/isc/nothreads/include/isc/Makefile.in stable/8/contrib/bind9/lib/isc/powerpc/Makefile.in stable/8/contrib/bind9/lib/isc/powerpc/include/Makefile.in stable/8/contrib/bind9/lib/isc/powerpc/include/isc/Makefile.in stable/8/contrib/bind9/lib/isc/pthreads/condition.c stable/8/contrib/bind9/lib/isc/pthreads/include/Makefile.in stable/8/contrib/bind9/lib/isc/pthreads/include/isc/Makefile.in stable/8/contrib/bind9/lib/isc/sparc64/Makefile.in stable/8/contrib/bind9/lib/isc/sparc64/include/Makefile.in stable/8/contrib/bind9/lib/isc/sparc64/include/isc/Makefile.in stable/8/contrib/bind9/lib/isc/unix/file.c stable/8/contrib/bind9/lib/isc/unix/include/Makefile.in stable/8/contrib/bind9/lib/isc/unix/include/isc/Makefile.in stable/8/contrib/bind9/lib/isc/x86_32/Makefile.in stable/8/contrib/bind9/lib/isc/x86_32/include/Makefile.in stable/8/contrib/bind9/lib/isc/x86_32/include/isc/Makefile.in stable/8/contrib/bind9/lib/isc/x86_64/Makefile.in stable/8/contrib/bind9/lib/isc/x86_64/include/Makefile.in stable/8/contrib/bind9/lib/isc/x86_64/include/isc/Makefile.in stable/8/contrib/bind9/lib/isccc/api stable/8/contrib/bind9/lib/isccc/cc.c stable/8/contrib/bind9/lib/isccc/include/Makefile.in stable/8/contrib/bind9/lib/isccc/include/isccc/Makefile.in stable/8/contrib/bind9/lib/isccfg/include/Makefile.in stable/8/contrib/bind9/lib/isccfg/include/isccfg/Makefile.in stable/8/contrib/bind9/lib/lwres/Makefile.in stable/8/contrib/bind9/lib/lwres/api stable/8/contrib/bind9/lib/lwres/getaddrinfo.c stable/8/contrib/bind9/lib/lwres/include/Makefile.in stable/8/contrib/bind9/lib/lwres/include/lwres/Makefile.in stable/8/contrib/bind9/lib/lwres/man/Makefile.in stable/8/contrib/bind9/lib/lwres/unix/Makefile.in stable/8/contrib/bind9/lib/lwres/unix/include/Makefile.in stable/8/contrib/bind9/lib/lwres/unix/include/lwres/Makefile.in stable/8/contrib/bind9/make/rules.in stable/8/contrib/bind9/version Directory Properties: stable/8/contrib/bind9/ (props changed) Modified: stable/8/contrib/bind9/CHANGES ============================================================================== --- stable/8/contrib/bind9/CHANGES Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/CHANGES Fri Jan 4 13:36:31 2013 (r245039) @@ -1,33 +1,87 @@ - --- 9.6-ESV-R7-P4 released --- + --- 9.6-ESV-R8 released --- 3383. [security] A certain combination of records in the RBT could cause named to hang while populating the additional section of a response. [RT #31090] - --- 9.6-ESV-R7-P3 released --- +3373. [bug] win32: open raw files in binary mode. [RT #30944] 3364. [security] Named could die on specially crafted record. [RT #30416] -3358 [bug] Fix declaration of fatal in bin/named/server.c + --- 9.6-ESV-R8rc1 released --- + +3369. [bug] nsupdate terminated unexpectedly in interactive mode + if built with readline support. [RT #29550] + +3368. [bug] and were not C++ safe. + +3366. [bug] Fixed Read-After-Write dependency violation for IA64 + atomic operations. [RT #25181] + +3365. [bug] Removed spurious newlines from log messages in + zone.c [RT #30675] + +3362. [bug] Setting some option values to 0 in named.conf + could trigger an assertion failure on startup. + [RT #27730] + +3360. [bug] 'host -w' could die. [RT #18723] + +3359. [bug] An improperly-formed TSIG secret could cause a + memory leak. [RT #30607] + +3358. [bug] Fix declaration of fatal in bin/named/server.c and bin/nsupdate/main.c. [RT #30522] - --- 9.6-ESV-R7-P2 released --- +3357. [port] Add support for libxml2-2.8.x [RT #30440] + + --- 9.6-ESV-R8b1 released --- + +3354. [func] Improve OpenSSL error logging. [RT #29932] + +3352. [bug] Ensure that learned server attributes timeout of the + adb cache. [RT #29856] + +3350. [bug] Memory read overrun in isc___mem_reallocate if + ISC_MEM_DEBUGCTX memory debugging flag is set. + [RT #30240] + +3348. [bug] Prevent RRSIG data from being cached if a negative + record matching the covering type exists at a higher + trust level. Such data already can't be retrieved from + the cache since change 3218 -- this prevents it + being inserted into the cache as well. [RT #26809] 3346. [security] Bad-cache data could be used before it was initialized, causing an assert. [RT #30025] -3343. [bug] Relax isc_random_jitter() REQUIRE tests. [RT #29821] +3343. [bug] Relax isc_random_jitter() REQUIRE tests. [RT #29821] 3342. [bug] Change #3314 broke saving of stub zones to disk resulting in excessive cpu usage in some cases. [RT #29952] - --- 9.6-ESV-R7-P1 released --- +3337. [bug] Change #3294 broke support for the multiple keys + in controls. [RT #29694] + +3335. [func] nslookup: return a nonzero exit code when unable + to get an answer. [RT #29492] + +3332. [bug] Re-use cached DS rrsets if possible. [RT #29446] 3331. [security] dns_rdataslab_fromrdataset could produce bad rdataslabs. [RT #29644] +3329. [bug] Handle RRSIG signer-name case consistently: We + generate RRSIG records with the signer-name in + lower case. We accept them with any case, but if + they fail to validate, we try again in lower case. + [RT #27451] + +3328. [bug] Fixed inconsistent data checking in dst_parse.c. + [RT #29401] + --- 9.6-ESV-R7 released --- 3318. [tuning] Reduce the amount of work performed while holding a Modified: stable/8/contrib/bind9/README ============================================================================== --- stable/8/contrib/bind9/README Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/README Fri Jan 4 13:36:31 2013 (r245039) @@ -48,9 +48,14 @@ BIND 9 For up-to-date release notes and errata, see http://www.isc.org/software/bind9/releasenotes +BIND 9.6-ESV-R8 (Extended Support Version) + + BIND 9.6-ESV-R8 includes several bug fixes and patches security + flaws described in CVE-2012-1667, CVE-2012-3817 and CVE-2012-4244. + BIND 9.6-ESV-R7 (Extended Support Version) - BIND 9.4-ESV-R7 is a maintenance release, fixing bugs in BIND + BIND 9.6-ESV-R7 is a maintenance release, fixing bugs in BIND 9.6-ESV-R6. BIND 9.6-ESV-R6 (Extended Support Version) @@ -60,7 +65,7 @@ BIND 9.6-ESV-R6 (Extended Support Versio BIND 9.6-ESV-R5 (Extended Support Version) - BIND 9.4-ESV-R5 is a maintenance release, fixing bugs in BIND + BIND 9.6-ESV-R5 is a maintenance release, fixing bugs in BIND 9.6-ESV-R4. BIND 9.6.3/BIND 9.6-ESV-R4 Modified: stable/8/contrib/bind9/bin/check/check-tool.c ============================================================================== --- stable/8/contrib/bind9/bin/check/check-tool.c Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/bin/check/check-tool.c Fri Jan 4 13:36:31 2013 (r245039) @@ -640,6 +640,9 @@ dump_zone(const char *zonename, dns_zone { isc_result_t result; FILE *output = stdout; + const char *flags; + + flags = (fileformat == dns_masterformat_text) ? "w+" : "wb+"; if (debug) { if (filename != NULL && strcmp(filename, "-") != 0) @@ -650,7 +653,7 @@ dump_zone(const char *zonename, dns_zone } if (filename != NULL && strcmp(filename, "-") != 0) { - result = isc_stdio_open(filename, "w+", &output); + result = isc_stdio_open(filename, flags, &output); if (result != ISC_R_SUCCESS) { fprintf(stderr, "could not open output " Modified: stable/8/contrib/bind9/bin/dig/nslookup.c ============================================================================== --- stable/8/contrib/bind9/bin/dig/nslookup.c Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/bin/dig/nslookup.c Fri Jan 4 13:36:31 2013 (r245039) @@ -57,6 +57,7 @@ static isc_boolean_t in_use = ISC_FALSE; static char defclass[MXRD] = "IN"; static char deftype[MXRD] = "A"; static isc_event_t *global_event = NULL; +static int query_error = 1, print_error = 0; static char domainopt[DNS_NAME_MAXTEXT]; @@ -406,6 +407,9 @@ isc_result_t printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) { char servtext[ISC_SOCKADDR_FORMATSIZE]; + /* I've we've gotten this far, we've reached a server. */ + query_error = 0; + debug("printmessage()"); isc_sockaddr_format(&query->sockaddr, servtext, sizeof(servtext)); @@ -433,6 +437,9 @@ printmessage(dig_query_t *query, dns_mes (msg->rcode != dns_rcode_nxdomain) ? nametext : query->lookup->textname, rcode_totext(msg->rcode)); debug("returning with rcode == 0"); + + /* the lookup failed */ + print_error |= 1; return (ISC_R_SUCCESS); } @@ -903,5 +910,5 @@ main(int argc, char **argv) { destroy_libs(); isc_app_finish(); - return (0); + return (query_error | print_error); } Modified: stable/8/contrib/bind9/bin/dnssec/dnssec-signzone.c ============================================================================== --- stable/8/contrib/bind9/bin/dnssec/dnssec-signzone.c Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/bin/dnssec/dnssec-signzone.c Fri Jan 4 13:36:31 2013 (r245039) @@ -3520,7 +3520,10 @@ main(int argc, char *argv[]) { check_result(result, "isc_file_mktemplate"); fp = NULL; - result = isc_file_openunique(tempfile, &fp); + if (outputformat == dns_masterformat_text) + result = isc_file_openunique(tempfile, &fp); + else + result = isc_file_bopenunique(tempfile, &fp); if (result != ISC_R_SUCCESS) fatal("failed to open temporary output file: %s", isc_result_totext(result)); Modified: stable/8/contrib/bind9/bin/named/controlconf.c ============================================================================== --- stable/8/contrib/bind9/bin/named/controlconf.c Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/bin/named/controlconf.c Fri Jan 4 13:36:31 2013 (r245039) @@ -373,8 +373,10 @@ control_recvmessage(isc_task_t *task, is if (result == ISC_R_SUCCESS) break; isc_mem_put(listener->mctx, secret.rstart, REGION_SIZE(secret)); - log_invalid(&conn->ccmsg, result); - goto cleanup; + if (result != ISCCC_R_BADAUTH) { + log_invalid(&conn->ccmsg, result); + goto cleanup; + } } if (key == NULL) { Modified: stable/8/contrib/bind9/bin/named/convertxsl.pl ============================================================================== --- stable/8/contrib/bind9/bin/named/convertxsl.pl Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/bin/named/convertxsl.pl Fri Jan 4 13:36:31 2013 (r245039) @@ -1,6 +1,6 @@ #!/usr/bin/env perl # -# Copyright (C) 2006-2008 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2006-2008, 2012 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted, provided that the above Modified: stable/8/contrib/bind9/bin/named/statschannel.c ============================================================================== --- stable/8/contrib/bind9/bin/named/statschannel.c Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/bin/named/statschannel.c Fri Jan 4 13:36:31 2013 (r245039) @@ -84,16 +84,19 @@ static const char *nsstats_desc[dns_nsst static const char *resstats_desc[dns_resstatscounter_max]; static const char *zonestats_desc[dns_zonestatscounter_max]; static const char *sockstats_desc[isc_sockstatscounter_max]; +static const char *dnssecstats_desc[dns_dnssecstats_max]; #ifdef HAVE_LIBXML2 static const char *nsstats_xmldesc[dns_nsstatscounter_max]; static const char *resstats_xmldesc[dns_resstatscounter_max]; static const char *zonestats_xmldesc[dns_zonestatscounter_max]; static const char *sockstats_xmldesc[isc_sockstatscounter_max]; +static const char *dnssecstats_xmldesc[dns_dnssecstats_max]; #else #define nsstats_xmldesc NULL #define resstats_xmldesc NULL #define zonestats_xmldesc NULL #define sockstats_xmldesc NULL +#define dnssecstats_xmldesc NULL #endif /* HAVE_LIBXML2 */ #define TRY0(a) do { xmlrc = (a); if (xmlrc < 0) goto error; } while(0) @@ -107,6 +110,7 @@ static int nsstats_index[dns_nsstatscoun static int resstats_index[dns_resstatscounter_max]; static int zonestats_index[dns_zonestatscounter_max]; static int sockstats_index[isc_sockstatscounter_max]; +static int dnssecstats_index[dns_dnssecstats_max]; static inline void set_desc(int counter, int maxcounter, const char *fdesc, const char **fdescs, @@ -408,6 +412,33 @@ init_desc(void) { "FDwatchRecvErr"); INSIST(i == isc_sockstatscounter_max); + /* Initialize DNSSEC statistics */ + for (i = 0; i < dns_dnssecstats_max; i++) + dnssecstats_desc[i] = NULL; +#ifdef HAVE_LIBXML2 + for (i = 0; i < dns_dnssecstats_max; i++) + dnssecstats_xmldesc[i] = NULL; +#endif + +#define SET_DNSSECSTATDESC(counterid, desc, xmldesc) \ + do { \ + set_desc(dns_dnssecstats_ ## counterid, \ + dns_dnssecstats_max, \ + desc, dnssecstats_desc,\ + xmldesc, dnssecstats_xmldesc); \ + dnssecstats_index[i++] = dns_dnssecstats_ ## counterid; \ + } while (0) + + i = 0; + SET_DNSSECSTATDESC(asis, "dnssec validation success with signer " + "\"as is\"", "DNSSECasis"); + SET_DNSSECSTATDESC(downcase, "dnssec validation success with signer " + "lower cased", "DNSSECdowncase"); + SET_DNSSECSTATDESC(wildcard, "dnssec validation of wildcard signature", + "DNSSECwild"); + SET_DNSSECSTATDESC(fail, "dnssec validation failures", "DNSSECfail"); + INSIST(i == dns_dnssecstats_max); + /* Sanity check */ for (i = 0; i < dns_nsstatscounter_max; i++) INSIST(nsstats_desc[i] != NULL); @@ -417,6 +448,8 @@ init_desc(void) { INSIST(zonestats_desc[i] != NULL); for (i = 0; i < isc_sockstatscounter_max; i++) INSIST(sockstats_desc[i] != NULL); + for (i = 0; i < dns_dnssecstats_max; i++) + INSIST(dnssecstats_desc[i] != NULL); #ifdef HAVE_LIBXML2 for (i = 0; i < dns_nsstatscounter_max; i++) INSIST(nsstats_xmldesc[i] != NULL); @@ -426,6 +459,8 @@ init_desc(void) { INSIST(zonestats_xmldesc[i] != NULL); for (i = 0; i < isc_sockstatscounter_max; i++) INSIST(sockstats_xmldesc[i] != NULL); + for (i = 0; i < dns_dnssecstats_max; i++) + INSIST(dnssecstats_xmldesc[i] != NULL); #endif } Modified: stable/8/contrib/bind9/bin/nsupdate/nsupdate.c ============================================================================== --- stable/8/contrib/bind9/bin/nsupdate/nsupdate.c Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/bin/nsupdate/nsupdate.c Fri Jan 4 13:36:31 2013 (r245039) @@ -1011,7 +1011,7 @@ parse_name(char **cmdlinep, dns_message_ isc_buffer_t source; word = nsu_strsep(cmdlinep, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { fprintf(stderr, "could not read owner name\n"); return (STATUS_SYNTAX); } @@ -1044,6 +1044,11 @@ parse_rdata(char **cmdlinep, dns_rdatacl dns_rdatacallbacks_t callbacks; isc_result_t result; + if (cmdline == NULL) { + rdata->flags = DNS_RDATA_UPDATE; + return (STATUS_MORE); + } + while (*cmdline != 0 && isspace((unsigned char)*cmdline)) cmdline++; @@ -1110,7 +1115,7 @@ make_prereq(char *cmdline, isc_boolean_t */ if (isrrset) { word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { fprintf(stderr, "could not read class or type\n"); goto failure; } @@ -1126,7 +1131,7 @@ make_prereq(char *cmdline, isc_boolean_t * Now read the type. */ word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { fprintf(stderr, "could not read type\n"); goto failure; } @@ -1200,7 +1205,7 @@ evaluate_prereq(char *cmdline) { ddebug("evaluate_prereq()"); word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { fprintf(stderr, "could not read operation code\n"); return (STATUS_SYNTAX); } @@ -1229,14 +1234,14 @@ evaluate_server(char *cmdline) { long port; word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { fprintf(stderr, "could not read server name\n"); return (STATUS_SYNTAX); } server = word; word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) + if (word == NULL || *word == 0) port = DNSDEFAULTPORT; else { char *endp; @@ -1270,14 +1275,14 @@ evaluate_local(char *cmdline) { struct in6_addr in6; word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { fprintf(stderr, "could not read server name\n"); return (STATUS_SYNTAX); } local = word; word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) + if (word == NULL || *word == 0) port = 0; else { char *endp; @@ -1326,7 +1331,7 @@ evaluate_key(char *cmdline) { char *n; namestr = nsu_strsep(&cmdline, " \t\r\n"); - if (*namestr == 0) { + if (namestr == NULL || *namestr == 0) { fprintf(stderr, "could not read key name\n"); return (STATUS_SYNTAX); } @@ -1350,7 +1355,7 @@ evaluate_key(char *cmdline) { } secretstr = nsu_strsep(&cmdline, "\r\n"); - if (*secretstr == 0) { + if (secretstr == NULL || *secretstr == 0) { fprintf(stderr, "could not read key secret\n"); return (STATUS_SYNTAX); } @@ -1391,7 +1396,7 @@ evaluate_zone(char *cmdline) { isc_result_t result; word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { fprintf(stderr, "could not read zone name\n"); return (STATUS_SYNTAX); } @@ -1418,7 +1423,7 @@ evaluate_realm(char *cmdline) { char buf[1024]; word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { if (realm != NULL) isc_mem_free(mctx, realm); realm = NULL; @@ -1443,7 +1448,7 @@ evaluate_ttl(char *cmdline) { isc_uint32_t ttl; word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { fprintf(stderr, "could not ttl\n"); return (STATUS_SYNTAX); } @@ -1477,7 +1482,7 @@ evaluate_class(char *cmdline) { dns_rdataclass_t rdclass; word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { fprintf(stderr, "could not read class name\n"); return (STATUS_SYNTAX); } @@ -1535,7 +1540,7 @@ update_addordelete(char *cmdline, isc_bo * If it's a delete, ignore a TTL if present (for compatibility). */ word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { if (!isdelete) { fprintf(stderr, "could not read owner ttl\n"); goto failure; @@ -1576,7 +1581,7 @@ update_addordelete(char *cmdline, isc_bo */ word = nsu_strsep(&cmdline, " \t\r\n"); parseclass: - if (*word == 0) { + if (word == NULL || *word == 0) { if (isdelete) { rdataclass = dns_rdataclass_any; rdatatype = dns_rdatatype_any; @@ -1600,7 +1605,7 @@ update_addordelete(char *cmdline, isc_bo * Now read the type. */ word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { if (isdelete) { rdataclass = dns_rdataclass_any; rdatatype = dns_rdatatype_any; @@ -1680,7 +1685,7 @@ evaluate_update(char *cmdline) { ddebug("evaluate_update()"); word = nsu_strsep(&cmdline, " \t\r\n"); - if (*word == 0) { + if (word == NULL || *word == 0) { fprintf(stderr, "could not read operation code\n"); return (STATUS_SYNTAX); } @@ -1770,6 +1775,7 @@ get_next_command(void) { char cmdlinebuf[MAXCMD]; char *cmdline; char *word; + char *tmp; ddebug("get_next_command()"); if (interactive) { @@ -1781,11 +1787,18 @@ get_next_command(void) { isc_app_unblock(); if (cmdline == NULL) return (STATUS_QUIT); + + /* + * Normalize input by removing any eol. + */ + tmp = cmdline; + (void)nsu_strsep(&tmp, "\r\n"); + word = nsu_strsep(&cmdline, " \t\r\n"); if (feof(input)) return (STATUS_QUIT); - if (*word == 0) + if (word == NULL || *word == 0) return (STATUS_SEND); if (word[0] == ';') return (STATUS_MORE); Modified: stable/8/contrib/bind9/configure.in ============================================================================== --- stable/8/contrib/bind9/configure.in Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/configure.in Fri Jan 4 13:36:31 2013 (r245039) @@ -1,4 +1,4 @@ -# Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004-2012 Internet Systems Consortium, Inc. ("ISC") # Copyright (C) 1998-2003 Internet Software Consortium. # # Permission to use, copy, modify, and/or distribute this software for any @@ -1090,7 +1090,7 @@ case "$use_libxml2" in ;; auto|yes) case X`(xml2-config --version) 2>/dev/null` in - X2.[[67]].*) + X2.[[678]].*) libxml2_libs=`xml2-config --libs` libxml2_cflags=`xml2-config --cflags` ;; Modified: stable/8/contrib/bind9/doc/Makefile.in ============================================================================== --- stable/8/contrib/bind9/doc/Makefile.in Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/doc/Makefile.in Fri Jan 4 13:36:31 2013 (r245039) @@ -1,4 +1,4 @@ -# Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004-2007, 2012 Internet Systems Consortium, Inc. ("ISC") # Copyright (C) 2000, 2001 Internet Software Consortium. # # Permission to use, copy, modify, and/or distribute this software for any Modified: stable/8/contrib/bind9/doc/arm/Bv9ARM-book.xml ============================================================================== --- stable/8/contrib/bind9/doc/arm/Bv9ARM-book.xml Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/doc/arm/Bv9ARM-book.xml Fri Jan 4 13:36:31 2013 (r245039) @@ -9978,7 +9978,7 @@ zone zone_nameidentity + is specified in the identity field. @@ -9995,7 +9995,7 @@ zone zone_nameidentity field. + identity field. @@ -10010,7 +10010,7 @@ zone zone_nameidentity + is specified in the identity field. @@ -10027,7 +10027,7 @@ zone zone_nameidentity field. + identity field. Modified: stable/8/contrib/bind9/doc/arm/Bv9ARM.ch06.html ============================================================================== --- stable/8/contrib/bind9/doc/arm/Bv9ARM.ch06.html Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/doc/arm/Bv9ARM.ch06.html Fri Jan 4 13:36:31 2013 (r245039) @@ -6255,7 +6255,7 @@ zone zone_ (machine$@REALM) for machine in REALM and and converts it machine.realm allowing the machine to update machine.realm. The REALM to be matched - is specified in the <replacable>identity</replacable> + is specified in the identity field.

@@ -6273,7 +6273,7 @@ zone zone_ converts it to machine.realm allowing the machine to update subdomains of machine.realm. The REALM to be matched is specified in the - <replacable>identity</replacable> field. + identity field.

@@ -6289,7 +6289,7 @@ zone zone_ (host/machine@REALM) for machine in REALM and and converts it machine.realm allowing the machine to update machine.realm. The REALM to be matched - is specified in the <replacable>identity</replacable> + is specified in the identity field.

@@ -6307,7 +6307,7 @@ zone zone_ converts it to machine.realm allowing the machine to update subdomains of machine.realm. The REALM to be matched is specified in the - <replacable>identity</replacable> field. + identity field.

Modified: stable/8/contrib/bind9/doc/arm/Bv9ARM.pdf ============================================================================== Binary file (source and/or target). No diff available. Modified: stable/8/contrib/bind9/doc/misc/format-options.pl ============================================================================== --- stable/8/contrib/bind9/doc/misc/format-options.pl Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/doc/misc/format-options.pl Fri Jan 4 13:36:31 2013 (r245039) @@ -1,6 +1,6 @@ #!/usr/bin/perl # -# Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004, 2007, 2012 Internet Systems Consortium, Inc. ("ISC") # Copyright (C) 2001 Internet Software Consortium. # # Permission to use, copy, modify, and/or distribute this software for any Modified: stable/8/contrib/bind9/doc/misc/sort-options.pl ============================================================================== --- stable/8/contrib/bind9/doc/misc/sort-options.pl Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/doc/misc/sort-options.pl Fri Jan 4 13:36:31 2013 (r245039) @@ -1,6 +1,6 @@ #!/bin/perl # -# Copyright (C) 2007 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007, 2012 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted, provided that the above Modified: stable/8/contrib/bind9/isc-config.sh.in ============================================================================== --- stable/8/contrib/bind9/isc-config.sh.in Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/isc-config.sh.in Fri Jan 4 13:36:31 2013 (r245039) @@ -1,6 +1,6 @@ #!/bin/sh # -# Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004, 2007, 2012 Internet Systems Consortium, Inc. ("ISC") # Copyright (C) 2000, 2001, 2003 Internet Software Consortium. # # Permission to use, copy, modify, and/or distribute this software for any Modified: stable/8/contrib/bind9/lib/Makefile.in ============================================================================== --- stable/8/contrib/bind9/lib/Makefile.in Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/lib/Makefile.in Fri Jan 4 13:36:31 2013 (r245039) @@ -1,4 +1,4 @@ -# Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004, 2007, 2012 Internet Systems Consortium, Inc. ("ISC") # Copyright (C) 1998-2001, 2003 Internet Software Consortium. # # Permission to use, copy, modify, and/or distribute this software for any Modified: stable/8/contrib/bind9/lib/bind9/api ============================================================================== --- stable/8/contrib/bind9/lib/bind9/api Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/lib/bind9/api Fri Jan 4 13:36:31 2013 (r245039) @@ -4,5 +4,5 @@ # 9.8: 80-89 # 9.9: 90-109 LIBINTERFACE = 50 -LIBREVISION = 7 +LIBREVISION = 9 LIBAGE = 0 Modified: stable/8/contrib/bind9/lib/bind9/check.c ============================================================================== --- stable/8/contrib/bind9/lib/bind9/check.c Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/lib/bind9/check.c Fri Jan 4 13:36:31 2013 (r245039) @@ -287,10 +287,6 @@ disabled_algorithms(const cfg_obj_t *dis tresult = dns_secalg_fromtext(&alg, &r); if (tresult != ISC_R_SUCCESS) { - isc_uint8_t ui; - result = isc_parse_uint8(&ui, r.base, 10); - } - if (tresult != ISC_R_SUCCESS) { cfg_obj_log(cfg_listelt_value(element), logctx, ISC_LOG_ERROR, "invalid algorithm '%s'", r.base); @@ -1028,6 +1024,29 @@ typedef struct { } optionstable; static isc_result_t +check_nonzero(const cfg_obj_t *options, isc_log_t *logctx) { + isc_result_t result = ISC_R_SUCCESS; + const cfg_obj_t *obj = NULL; + unsigned int i; + + static const char *nonzero[] = { "max-retry-time", "min-retry-time", + "max-refresh-time", "min-refresh-time" }; + /* + * Check if value is zero. + */ + for (i = 0; i < sizeof(nonzero) / sizeof(nonzero[0]); i++) { + obj = NULL; + if (cfg_map_get(options, nonzero[i], &obj) == ISC_R_SUCCESS && + cfg_obj_asuint32(obj) == 0) { + cfg_obj_log(obj, logctx, ISC_LOG_ERROR, + "'%s' must not be zero", nonzero[i]); + result = ISC_R_FAILURE; + } + } + return (result); +} + +static isc_result_t check_zoneconf(const cfg_obj_t *zconfig, const cfg_obj_t *voptions, const cfg_obj_t *config, isc_symtab_t *symtab, dns_rdataclass_t defclass, cfg_aclconfctx_t *actx, @@ -1036,7 +1055,7 @@ check_zoneconf(const cfg_obj_t *zconfig, const char *zname; const char *typestr; unsigned int ztype; - const cfg_obj_t *zoptions; + const cfg_obj_t *zoptions, *goptions = NULL; const cfg_obj_t *obj = NULL; isc_result_t result = ISC_R_SUCCESS; isc_result_t tresult; @@ -1105,9 +1124,11 @@ check_zoneconf(const cfg_obj_t *zconfig, }; zname = cfg_obj_asstring(cfg_tuple_get(zconfig, "name")); - zoptions = cfg_tuple_get(zconfig, "options"); + if (config != NULL) + cfg_map_get(config, "options", &goptions); + obj = NULL; (void)cfg_map_get(zoptions, "type", &obj); if (obj == NULL) { @@ -1188,6 +1209,12 @@ check_zoneconf(const cfg_obj_t *zconfig, } /* + * Check if value is zero. + */ + if (check_nonzero(zoptions, logctx) != ISC_R_SUCCESS) + result = ISC_R_FAILURE; + + /* * Look for inappropriate options for the given zone type. * Check that ACLs expand correctly. */ @@ -1760,10 +1787,16 @@ check_viewconf(const cfg_obj_t *config, isc_result_t result = ISC_R_SUCCESS; isc_result_t tresult = ISC_R_SUCCESS; cfg_aclconfctx_t actx; + const cfg_obj_t *options = NULL; const cfg_obj_t *obj; isc_boolean_t enablednssec, enablevalidation; /* + * Get global options block. + */ + (void)cfg_map_get(config, "options", &options); + + /* * Check that all zone statements are syntactically correct and * there are no duplicate zones. */ @@ -1798,8 +1831,6 @@ check_viewconf(const cfg_obj_t *config, * Check that forwarding is reasonable. */ if (voptions == NULL) { - const cfg_obj_t *options = NULL; - (void)cfg_map_get(config, "options", &options); if (options != NULL) if (check_forward(options, NULL, logctx) != ISC_R_SUCCESS) @@ -1810,11 +1841,17 @@ check_viewconf(const cfg_obj_t *config, } /* + * Check non-zero options at the global and view levels. + */ + if (options != NULL && check_nonzero(options, logctx) != ISC_R_SUCCESS) + result = ISC_R_FAILURE; + if (voptions != NULL &&check_nonzero(voptions, logctx) != ISC_R_SUCCESS) + result = ISC_R_FAILURE; + + /* * Check that dual-stack-servers is reasonable. */ if (voptions == NULL) { - const cfg_obj_t *options = NULL; - (void)cfg_map_get(config, "options", &options); if (options != NULL) if (check_dual_stack(options, logctx) != ISC_R_SUCCESS) result = ISC_R_FAILURE; @@ -1838,15 +1875,15 @@ check_viewconf(const cfg_obj_t *config, tresult = isc_symtab_create(mctx, 1000, freekey, mctx, ISC_FALSE, &symtab); if (tresult != ISC_R_SUCCESS) - return (ISC_R_NOMEMORY); + goto cleanup; (void)cfg_map_get(config, "key", &keys); tresult = check_keylist(keys, symtab, mctx, logctx); if (tresult == ISC_R_EXISTS) result = ISC_R_FAILURE; else if (tresult != ISC_R_SUCCESS) { - isc_symtab_destroy(&symtab); - return (tresult); + result = tresult; + goto cleanup; } if (voptions != NULL) { @@ -1856,8 +1893,8 @@ check_viewconf(const cfg_obj_t *config, if (tresult == ISC_R_EXISTS) result = ISC_R_FAILURE; else if (tresult != ISC_R_SUCCESS) { - isc_symtab_destroy(&symtab); - return (tresult); + result = tresult; + goto cleanup; } } @@ -1939,6 +1976,9 @@ check_viewconf(const cfg_obj_t *config, if (tresult != ISC_R_SUCCESS) result = tresult; + cleanup: + if (symtab != NULL) + isc_symtab_destroy(&symtab); cfg_aclconfctx_destroy(&actx); return (result); Modified: stable/8/contrib/bind9/lib/bind9/include/Makefile.in ============================================================================== --- stable/8/contrib/bind9/lib/bind9/include/Makefile.in Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/lib/bind9/include/Makefile.in Fri Jan 4 13:36:31 2013 (r245039) @@ -1,4 +1,4 @@ -# Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004, 2007, 2012 Internet Systems Consortium, Inc. ("ISC") # Copyright (C) 2001 Internet Software Consortium. # # Permission to use, copy, modify, and/or distribute this software for any Modified: stable/8/contrib/bind9/lib/bind9/include/bind9/Makefile.in ============================================================================== --- stable/8/contrib/bind9/lib/bind9/include/bind9/Makefile.in Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/lib/bind9/include/bind9/Makefile.in Fri Jan 4 13:36:31 2013 (r245039) @@ -1,4 +1,4 @@ -# Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004, 2007, 2012 Internet Systems Consortium, Inc. ("ISC") # Copyright (C) 2001 Internet Software Consortium. # # Permission to use, copy, modify, and/or distribute this software for any Modified: stable/8/contrib/bind9/lib/dns/adb.c ============================================================================== --- stable/8/contrib/bind9/lib/dns/adb.c Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/lib/dns/adb.c Fri Jan 4 13:36:31 2013 (r245039) @@ -3430,8 +3430,10 @@ dns_adb_adjustsrtt(dns_adb_t *adb, dns_a addr->entry->srtt = new_srtt; addr->srtt = new_srtt; - isc_stdtime_get(&now); - addr->entry->expires = now + ADB_ENTRY_WINDOW; + if (addr->entry->expires == 0) { + isc_stdtime_get(&now); + addr->entry->expires = now + ADB_ENTRY_WINDOW; + } UNLOCK(&adb->entrylocks[bucket]); } @@ -3441,6 +3443,7 @@ dns_adb_changeflags(dns_adb_t *adb, dns_ unsigned int bits, unsigned int mask) { int bucket; + isc_stdtime_t now; REQUIRE(DNS_ADB_VALID(adb)); REQUIRE(DNS_ADBADDRINFO_VALID(addr)); @@ -3449,6 +3452,11 @@ dns_adb_changeflags(dns_adb_t *adb, dns_ LOCK(&adb->entrylocks[bucket]); addr->entry->flags = (addr->entry->flags & ~mask) | (bits & mask); + if (addr->entry->expires == 0) { + isc_stdtime_get(&now); + addr->entry->expires = now + ADB_ENTRY_WINDOW; + } + /* * Note that we do not update the other bits in addr->flags with * the most recent values from addr->entry->flags. @@ -3527,15 +3535,16 @@ dns_adb_freeaddrinfo(dns_adb_t *adb, dns entry = addr->entry; REQUIRE(DNS_ADBENTRY_VALID(entry)); - isc_stdtime_get(&now); - *addrp = NULL; overmem = isc_mem_isovermem(adb->mctx); bucket = addr->entry->lock_bucket; LOCK(&adb->entrylocks[bucket]); - entry->expires = now + ADB_ENTRY_WINDOW; + if (entry->expires == 0) { + isc_stdtime_get(&now); + entry->expires = now + ADB_ENTRY_WINDOW; + } want_check_exit = dec_entry_refcnt(adb, overmem, entry, ISC_FALSE); Modified: stable/8/contrib/bind9/lib/dns/api ============================================================================== --- stable/8/contrib/bind9/lib/dns/api Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/lib/dns/api Fri Jan 4 13:36:31 2013 (r245039) @@ -3,6 +3,6 @@ # 9.7: 60-79 # 9.8: 80-89 # 9.9: 90-109 -LIBINTERFACE = 110 +LIBINTERFACE = 111 LIBREVISION = 2 -LIBAGE = 0 +LIBAGE = 1 Modified: stable/8/contrib/bind9/lib/dns/dnssec.c ============================================================================== --- stable/8/contrib/bind9/lib/dns/dnssec.c Fri Jan 4 12:06:59 2013 (r245038) +++ stable/8/contrib/bind9/lib/dns/dnssec.c Fri Jan 4 13:36:31 2013 (r245039) @@ -35,16 +35,20 @@ #include #include #include +#include #include #include #include #include #include #include +#include #include /* for DNS_TSIG_FUDGE */ #include +LIBDNS_EXTERNAL_DATA isc_stats_t *dns_dnssec_stats; + #define is_response(msg) (msg->flags & DNS_MESSAGEFLAG_QR) #define RETERR(x) do { \ @@ -74,6 +78,12 @@ digest_callback(void *arg, isc_region_t return (dst_context_adddata(ctx, data)); } +static inline void +inc_stat(isc_statscounter_t counter) { + if (dns_dnssec_stats != NULL) + isc_stats_increment(dns_dnssec_stats, counter); +} + /* * Make qsort happy. */ @@ -150,7 +160,9 @@ dns_dnssec_keyfromrdata(dns_name_t *name } static isc_result_t -digest_sig(dst_context_t *ctx, dns_rdata_t *sigrdata, dns_rdata_rrsig_t *sig) { +digest_sig(dst_context_t *ctx, isc_boolean_t downcase, dns_rdata_t *sigrdata, + dns_rdata_rrsig_t *rrsig) +{ isc_region_t r; isc_result_t ret; dns_fixedname_t fname; @@ -162,11 +174,16 @@ digest_sig(dst_context_t *ctx, dns_rdata ret = dst_context_adddata(ctx, &r); if (ret != ISC_R_SUCCESS) return (ret); - dns_fixedname_init(&fname); - RUNTIME_CHECK(dns_name_downcase(&sig->signer, - dns_fixedname_name(&fname), NULL) - == ISC_R_SUCCESS); - dns_name_toregion(dns_fixedname_name(&fname), &r); + if (downcase) { + dns_fixedname_init(&fname); + + RUNTIME_CHECK(dns_name_downcase(&rrsig->signer, + dns_fixedname_name(&fname), + NULL) == ISC_R_SUCCESS); + dns_name_toregion(dns_fixedname_name(&fname), &r); + } else + dns_name_toregion(&rrsig->signer, &r); + return (dst_context_adddata(ctx, &r)); } @@ -188,6 +205,7 @@ dns_dnssec_sign(dns_name_t *name, dns_rd isc_uint32_t flags; unsigned int sigsize; dns_fixedname_t fnewname; + dns_fixedname_t fsigner; REQUIRE(name != NULL); REQUIRE(dns_name_countlabels(name) <= 255); @@ -215,8 +233,14 @@ dns_dnssec_sign(dns_name_t *name, dns_rd sig.common.rdtype = dns_rdatatype_rrsig; ISC_LINK_INIT(&sig.common, link); + /* + * Downcase signer. + */ dns_name_init(&sig.signer, NULL); - dns_name_clone(dst_key_name(key), &sig.signer); + dns_fixedname_init(&fsigner); + RUNTIME_CHECK(dns_name_downcase(dst_key_name(key), + dns_fixedname_name(&fsigner), NULL) == ISC_R_SUCCESS); + dns_name_clone(dns_fixedname_name(&fsigner), &sig.signer); sig.covered = set->type; sig.algorithm = dst_key_alg(key); @@ -256,7 +280,7 @@ dns_dnssec_sign(dns_name_t *name, dns_rd /* * Digest the SIG rdata. */ - ret = digest_sig(ctx, &tmpsigrdata, &sig); + ret = digest_sig(ctx, ISC_FALSE, &tmpsigrdata, &sig); if (ret != ISC_R_SUCCESS) goto cleanup_context; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 15:28:25 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 7BAC72F2; Fri, 4 Jan 2013 15:28:25 +0000 (UTC) (envelope-from jilles@stack.nl) Received: from mx1.stack.nl (relay02.stack.nl [IPv6:2001:610:1108:5010::104]) by mx1.freebsd.org (Postfix) with ESMTP id 2B3228E4; Fri, 4 Jan 2013 15:28:25 +0000 (UTC) Received: from snail.stack.nl (snail.stack.nl [IPv6:2001:610:1108:5010::131]) by mx1.stack.nl (Postfix) with ESMTP id 04116358C58; Fri, 4 Jan 2013 16:28:23 +0100 (CET) Received: by snail.stack.nl (Postfix, from userid 1677) id E34B72848C; Fri, 4 Jan 2013 16:28:22 +0100 (CET) Date: Fri, 4 Jan 2013 16:28:22 +0100 From: Jilles Tjoelker To: Mateusz Guzik Subject: Re: svn commit: r245036 - head/sys/kern Message-ID: <20130104152822.GA69526@stack.nl> References: <201301041111.r04BBDjZ013380@svn.freebsd.org> <20130104113354.GB26239@dft-labs.eu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20130104113354.GB26239@dft-labs.eu> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, David Xu X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 15:28:25 -0000 On Fri, Jan 04, 2013 at 12:33:54PM +0100, Mateusz Guzik wrote: > On Fri, Jan 04, 2013 at 11:11:13AM +0000, David Xu wrote: > > Author: davidxu > > Date: Fri Jan 4 11:11:12 2013 > > New Revision: 245036 > > URL: http://svnweb.freebsd.org/changeset/base/245036 > > Log: > > Revert revision 244760 because strncpy pads trailing space with zero, > > this prevents kernel data from being leaked. > I think it would be better to teach strlcpy to zero-pad as well. Because the buffer is usually much bigger than the string and overwriting the entire buffer is usually not necessary, I think changing strlcpy to fill the buffer would needlessly give up performance. Besides, there are many existing implementations of strlcpy that do not fill the buffer. Therefore, portable code still needs to zero-pad if it relies on that. Also, zero-padding will actively break incorrect programs that pass too high size parameters to strlcpy but strings that fit in the actual buffer. This might threaten the stability of head. If you want this, it makes more sense to create a new function. -- Jilles Tjoelker From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 15:29:51 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 9BC38640; Fri, 4 Jan 2013 15:29:51 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8EE708F8; Fri, 4 Jan 2013 15:29:51 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r04FTpna052415; Fri, 4 Jan 2013 15:29:51 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r04FTpRp052414; Fri, 4 Jan 2013 15:29:51 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201301041529.r04FTpRp052414@svn.freebsd.org> From: Hiroki Sato Date: Fri, 4 Jan 2013 15:29:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245044 - head/sys/ia64/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 15:29:51 -0000 Author: hrs Date: Fri Jan 4 15:29:50 2013 New Revision: 245044 URL: http://svnweb.freebsd.org/changeset/base/245044 Log: Remove firewire devices missed in r244992. Modified: head/sys/ia64/conf/GENERIC Modified: head/sys/ia64/conf/GENERIC ============================================================================== --- head/sys/ia64/conf/GENERIC Fri Jan 4 14:40:25 2013 (r245043) +++ head/sys/ia64/conf/GENERIC Fri Jan 4 15:29:50 2013 (r245044) @@ -190,11 +190,6 @@ options IEEE80211_SUPPORT_MESH # builds everything including AR5416 (and later 11n NIC) support. options AH_SUPPORT_AR5416 -# FireWire support -device fwip # IP over FireWire (RFC 2734,3146) -# sbp(4) works for some systems but causes boot failure on others -#device sbp # SCSI over FireWire (need scbus & da) - # Various (pseudo) devices device ether # Ethernet support device faith # IPv6-to-IPv4 relaying (translation) From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 17:21:02 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id CC59EEC2; Fri, 4 Jan 2013 17:21:02 +0000 (UTC) (envelope-from john@baldwin.cx) Received: from bigwig.baldwin.cx (bigknife-pt.tunnel.tserv9.chi1.ipv6.he.net [IPv6:2001:470:1f10:75::2]) by mx1.freebsd.org (Postfix) with ESMTP id 8ABD5E6C; Fri, 4 Jan 2013 17:21:02 +0000 (UTC) Received: from ralph.baldwin.cx (c-68-39-198-164.hsd1.de.comcast.net [68.39.198.164]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id A634BB93E; Fri, 4 Jan 2013 12:21:01 -0500 (EST) From: John Baldwin To: Jaakko Heinonen Subject: Re: svn commit: r244585 - in head: . sys/geom/label Date: Fri, 4 Jan 2013 12:18:07 -0500 User-Agent: KMail/1.13.7 (FreeBSD/9.1-PRERELEASE; KDE/4.8.4; amd64; ; ) References: <201212221343.qBMDhCHa086834@svn.freebsd.org> In-Reply-To: <201212221343.qBMDhCHa086834@svn.freebsd.org> MIME-Version: 1.0 Content-Type: Text/Plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <201301041218.07804.john@baldwin.cx> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Fri, 04 Jan 2013 12:21:01 -0500 (EST) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 17:21:02 -0000 On Saturday, December 22, 2012 08:43:12 AM Jaakko Heinonen wrote: > Author: jh > Date: Sat Dec 22 13:43:12 2012 > New Revision: 244585 > URL: http://svnweb.freebsd.org/changeset/base/244585 > > Log: > Mangle label names containing spaces, non-printable characters '%' or > '"'. Mangling is only done for label names read from file system > metadata. Encoding resembles URL encoding. For example, the space > character becomes %20. > > Help by: kib > Discussed with: imp, kib, pjd Ouch, mangling spaces seems unfortunate. I guess fixing the devctl protocol is too hard, and/or we can't just encode it at the protocol layer but leave the actual device names untouched? OS X preserves spaces in volume names and those can be quite common on ISO images, so mangling them really does seem to be a shame if we can avoid it. -- John Baldwin From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 17:24:09 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0FFD9154; Fri, 4 Jan 2013 17:24:09 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from argol.doit.wisc.edu (argol.doit.wisc.edu [144.92.197.212]) by mx1.freebsd.org (Postfix) with ESMTP id C87FFE96; Fri, 4 Jan 2013 17:24:08 +0000 (UTC) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; CHARSET=US-ASCII Received: from wanderer.tachypleus.net (dhcp107-17-54-205.hil-sfofhhh.sfo.wayport.net [107.17.54.205]) by smtpauth3.wiscmail.wisc.edu (Sun Java(tm) System Messaging Server 7u2-7.05 32bit (built Jul 30 2009)) with ESMTPSA id <0MG400CET3039B00@smtpauth3.wiscmail.wisc.edu>; Fri, 04 Jan 2013 11:24:08 -0600 (CST) X-Spam-PmxInfo: Server=avs-3, Version=5.6.1.2065439, Antispam-Engine: 2.7.2.376379, Antispam-Data: 2013.1.4.171223, SenderIP=107.17.54.205 X-Spam-Report: AuthenticatedSender=yes, SenderIP=107.17.54.205 X-Wisc-Sender: whitehorn@wisc.edu Message-id: <50E71033.3040702@freebsd.org> Date: Fri, 04 Jan 2013 12:24:03 -0500 From: Nathan Whitehorn User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/17.0 Thunderbird/17.0 To: John Baldwin Subject: Re: svn commit: r244585 - in head: . sys/geom/label References: <201212221343.qBMDhCHa086834@svn.freebsd.org> <201301041218.07804.john@baldwin.cx> In-reply-to: <201301041218.07804.john@baldwin.cx> Cc: svn-src-head@freebsd.org, Jaakko Heinonen , svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 17:24:09 -0000 On 01/04/13 12:18, John Baldwin wrote: > On Saturday, December 22, 2012 08:43:12 AM Jaakko Heinonen wrote: >> Author: jh >> Date: Sat Dec 22 13:43:12 2012 >> New Revision: 244585 >> URL: http://svnweb.freebsd.org/changeset/base/244585 >> >> Log: >> Mangle label names containing spaces, non-printable characters '%' or >> '"'. Mangling is only done for label names read from file system >> metadata. Encoding resembles URL encoding. For example, the space >> character becomes %20. >> >> Help by: kib >> Discussed with: imp, kib, pjd > Ouch, mangling spaces seems unfortunate. I guess fixing the devctl protocol > is too hard, and/or we can't just encode it at the protocol layer but leave > the actual device names untouched? OS X preserves spaces in volume names and > those can be quite common on ISO images, so mangling them really does seem to > be a shame if we can avoid it. > On a related note, it would be *really* helpful if gpart labels were actually managed by gpart. This kind of thing makes predicting the path of a newly-labeled GPT partition extremely hard and, combined with race conditions and synchronization issues in glabel updating in response to changes in gpart, is why the installer doesn't use labels in fstab. -Nathan From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 18:11:06 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id CA0B5B44; Fri, 4 Jan 2013 18:11:06 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from argol.doit.wisc.edu (argol.doit.wisc.edu [144.92.197.212]) by mx1.freebsd.org (Postfix) with ESMTP id A4F06C7; Fri, 4 Jan 2013 18:11:06 +0000 (UTC) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; CHARSET=US-ASCII Received: from wanderer.tachypleus.net (dhcp107-17-54-205.hil-sfofhhh.sfo.wayport.net [107.17.54.205]) by smtpauth3.wiscmail.wisc.edu (Sun Java(tm) System Messaging Server 7u2-7.05 32bit (built Jul 30 2009)) with ESMTPSA id <0MG4003ND2E6KM20@smtpauth3.wiscmail.wisc.edu>; Fri, 04 Jan 2013 11:11:00 -0600 (CST) X-Spam-PmxInfo: Server=avs-3, Version=5.6.1.2065439, Antispam-Engine: 2.7.2.376379, Antispam-Data: 2013.1.4.165714, SenderIP=107.17.54.205 X-Spam-Report: AuthenticatedSender=yes, SenderIP=107.17.54.205 X-Wisc-Sender: whitehorn@wisc.edu Message-id: <50E70D1E.5060208@freebsd.org> Date: Fri, 04 Jan 2013 12:10:54 -0500 From: Nathan Whitehorn User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/17.0 Thunderbird/17.0 To: Andrew Turner Subject: Re: svn commit: r244899 - head/sys/mips/beri References: <201212311106.qBVB6chM016661@svn.freebsd.org> <20130102081746.5435db05@fubar.geek.nz> <20130102110856.7c280fd5@fubar.geek.nz> <0E1E1A5C-BB34-4B82-828F-6FEE770A6037@FreeBSD.org> <20130103100258.2e22763f@fubar.geek.nz> In-reply-to: <20130103100258.2e22763f@fubar.geek.nz> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, "Robert N. M. Watson" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 18:11:06 -0000 On 01/02/13 16:02, Andrew Turner wrote: > On Wed, 2 Jan 2013 11:01:27 +0000 > "Robert N. M. Watson" wrote: > >> On 1 Jan 2013, at 22:08, Andrew Turner wrote: >> >>>> On a semi-related note: the current obstacle to moving more devices >>>> over to using FDT on BERI is that our FDT implementation appears to >>>> require a PIC to be configured. We're not actually using a PIC on >>>> BERI currently. It works fine attached to nexus, as the implied >>>> fallback for not having a PIC is to simply use the suitably >>>> numbered interrupt wires direct into the MIPS. However, trying the >>>> same setup described using FDT leads to an interrupt-related >>>> warning at boot, and no interrupt being provided to the driver. I >>>> suspect I need to provide a PIC-alike software component as a >>>> fall-back for the non-PIC case. From a brief e-mail exchange with >>>> JC, it sounds like the XLP FDT setup is actually not using >>>> interrupts either, currently. >>> I'm not sure if a PIC is required. From my reading of the code it >>> appears not. By the look of it if you are using the nexus to >>> handle interrupts you need to put an interrupts property in the >>> device and "#interrupt-cells = <1>;" in the soc node. >>> >>> You will also need to implement an interrupt decode function and >>> add it to the fdt_pic_table array. ARM has a number of almost >>> identical copies of this function you can use for inspration. >> >> This seemed to do the trick; what do you think of the attached? This >> isn't a board-specific change, so I dropped it into the common >> fdt_mips.c code. On the other hand, this left it a bit open as to >> what the right compatible= line to use was, so feedback there most >> welcome. > The patch looks good. From my reading of [1] the compatible value > should be something like "mips,mips4k" as it's value is of the form > ",". > > I have been thinking the best way of merging these almost identical > decode functions. Linux appears to do it by providing a per-controller > function that can translate between the interrupt spec and the > configuration allowing them to have a generic parsing function that > doesn't need to check if the controller is compatible. I would like us > to have something similar as it will remove the duplicate function. > > Andrew > > [1] http://www.devicetree.org/Device_Tree_Usage PowerPC does something very much like this currently in the real OF case. Looking at the contents of /sys/dev/fdt, it seems like there is a lot of code duplication in particular with interrupts and PCI handling compared to the equivalent parts of /sys/dev/ofw (and a few extra things that are actually MI like /sys/powerpc/ofw_pci*). It would be very nice if we could make FDT follow the normal OF codepaths instead of (partially) reinventing the wheel. -Nathan From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 19:29:24 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 722C9AD6; Fri, 4 Jan 2013 19:29:24 +0000 (UTC) (envelope-from grehan@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4A4CD321; Fri, 4 Jan 2013 19:29:24 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r04JTOWa005993; Fri, 4 Jan 2013 19:29:24 GMT (envelope-from grehan@svn.freebsd.org) Received: (from grehan@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r04JTNkM005991; Fri, 4 Jan 2013 19:29:23 GMT (envelope-from grehan@svn.freebsd.org) Message-Id: <201301041929.r04JTNkM005991@svn.freebsd.org> From: Peter Grehan Date: Fri, 4 Jan 2013 19:29:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245046 - in stable/9/sys/amd64: amd64 include X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 19:29:24 -0000 Author: grehan Date: Fri Jan 4 19:29:23 2013 New Revision: 245046 URL: http://svnweb.freebsd.org/changeset/base/245046 Log: MFC r244144 Implement an API to allow a hypervisor to save/restore guest floating point state without having to know the size of floating-point state. Unstaticize fpurestore to allow the hypervisor to save/restore guest state using fpusave/fpurestore on the allocated FPU state area. Modified: stable/9/sys/amd64/amd64/fpu.c stable/9/sys/amd64/include/fpu.h Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/amd64/amd64/fpu.c ============================================================================== --- stable/9/sys/amd64/amd64/fpu.c Fri Jan 4 19:28:32 2013 (r245045) +++ stable/9/sys/amd64/amd64/fpu.c Fri Jan 4 19:29:23 2013 (r245046) @@ -47,6 +47,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -134,6 +135,7 @@ SYSCTL_INT(_hw, HW_FLOATINGPT, floatingp static int use_xsaveopt; int use_xsave; /* non-static for cpu_switch.S */ uint64_t xsave_mask; /* the same */ +static uma_zone_t fpu_save_area_zone; static struct savefpu *fpu_initialstate; struct xsave_area_elm_descr { @@ -151,7 +153,7 @@ fpusave(void *addr) fxsave((char *)addr); } -static void +void fpurestore(void *addr) { @@ -312,6 +314,10 @@ fpuinitstate(void *arg __unused) } } + fpu_save_area_zone = uma_zcreate("FPU_save_area", + cpu_max_ext_state_size, NULL, NULL, NULL, NULL, + XSAVE_AREA_ALIGN - 1, 0); + start_emulating(); intr_restore(saveintr); } @@ -980,3 +986,27 @@ is_fpu_kern_thread(u_int flags) return (0); return ((curpcb->pcb_flags & PCB_KERNFPU) != 0); } + +/* + * FPU save area alloc/free/init utility routines + */ +struct savefpu * +fpu_save_area_alloc(void) +{ + + return (uma_zalloc(fpu_save_area_zone, 0)); +} + +void +fpu_save_area_free(struct savefpu *fsa) +{ + + uma_zfree(fpu_save_area_zone, fsa); +} + +void +fpu_save_area_reset(struct savefpu *fsa) +{ + + bcopy(fpu_initialstate, fsa, cpu_max_ext_state_size); +} Modified: stable/9/sys/amd64/include/fpu.h ============================================================================== --- stable/9/sys/amd64/include/fpu.h Fri Jan 4 19:28:32 2013 (r245045) +++ stable/9/sys/amd64/include/fpu.h Fri Jan 4 19:29:23 2013 (r245046) @@ -140,6 +140,7 @@ void fpuexit(struct thread *td); int fpuformat(void); int fpugetregs(struct thread *td); void fpuinit(void); +void fpurestore(void *addr); void fpusave(void *addr); int fpusetregs(struct thread *td, struct savefpu *addr, char *xfpustate, size_t xfpustate_size); @@ -156,6 +157,10 @@ int fpu_kern_leave(struct thread *td, st int fpu_kern_thread(u_int flags); int is_fpu_kern_thread(u_int flags); +struct savefpu *fpu_save_area_alloc(void); +void fpu_save_area_free(struct savefpu *fsa); +void fpu_save_area_reset(struct savefpu *fsa); + /* * Flags for fpu_kern_alloc_ctx(), fpu_kern_enter() and fpu_kern_thread(). */ From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 20:29:06 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id E3D7BCA5; Fri, 4 Jan 2013 20:29:06 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from smtp-out3.electric.net (smtp-out3.electric.net [72.35.12.188]) by mx1.freebsd.org (Postfix) with ESMTP id C79EE7A7; Fri, 4 Jan 2013 20:29:06 +0000 (UTC) Received: from [204.11.168.155] (helo=securemail.onebox.com) by opel.electric.net with esmtp (Exim 4.77) (envelope-from ) id 1TrDsx-0008Ma-Us; Fri, 04 Jan 2013 12:28:59 -0800 Received: from localhost (unverified [49.225.56.12]) by securemail.onebox.com (Rockliffe SMTPRA 9.3.1) with ESMTP id ; Fri, 4 Jan 2013 15:29:01 -0500 Date: Sat, 5 Jan 2013 09:28:42 +1300 From: Andrew Turner To: Nathan Whitehorn Subject: Re: svn commit: r244899 - head/sys/mips/beri Message-ID: <20130105092842.15c64ac5@fubar.geek.nz> In-Reply-To: <50E70D1E.5060208@freebsd.org> References: <201212311106.qBVB6chM016661@svn.freebsd.org> <20130102081746.5435db05@fubar.geek.nz> <20130102110856.7c280fd5@fubar.geek.nz> <0E1E1A5C-BB34-4B82-828F-6FEE770A6037@FreeBSD.org> <20130103100258.2e22763f@fubar.geek.nz> <50E70D1E.5060208@freebsd.org> Organization: SMTP: smtp.paradise.net.nz X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.6; i386-portbld-freebsd8.1) X-Pirate: Arrrr Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, "Robert N. M. Watson" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 20:29:07 -0000 On Fri, 04 Jan 2013 12:10:54 -0500 Nathan Whitehorn wrote: > On 01/02/13 16:02, Andrew Turner wrote: > > The patch looks good. From my reading of [1] the compatible value > > should be something like "mips,mips4k" as it's value is of the form > > ",". > > > > I have been thinking the best way of merging these almost identical > > decode functions. Linux appears to do it by providing a > > per-controller function that can translate between the interrupt > > spec and the configuration allowing them to have a generic parsing > > function that doesn't need to check if the controller is > > compatible. I would like us to have something similar as it will > > remove the duplicate function. > > > > Andrew > > > > [1] http://www.devicetree.org/Device_Tree_Usage > PowerPC does something very much like this currently in the real OF > case. Looking at the contents of /sys/dev/fdt, it seems like there is > a lot of code duplication in particular with interrupts and PCI > handling compared to the equivalent parts of /sys/dev/ofw (and a few > extra things that are actually MI like /sys/powerpc/ofw_pci*). It > would be very nice if we could make FDT follow the normal OF > codepaths instead of (partially) reinventing the wheel. > -Nathan Ok, I'll look to figure out how much of this code we can use with FDT. Andrew From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 20:38:37 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 3397914E; Fri, 4 Jan 2013 20:38:37 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id F0D71805; Fri, 4 Jan 2013 20:38:36 +0000 (UTC) Received: from fledge.watson.org (fledge.watson.org [65.122.17.41]) by cyrus.watson.org (Postfix) with ESMTPS id B6F9D46B3C; Fri, 4 Jan 2013 15:38:32 -0500 (EST) Date: Fri, 4 Jan 2013 20:38:32 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Mateusz Guzik Subject: Re: svn commit: r245036 - head/sys/kern In-Reply-To: <20130104113354.GB26239@dft-labs.eu> Message-ID: References: <201301041111.r04BBDjZ013380@svn.freebsd.org> <20130104113354.GB26239@dft-labs.eu> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, David Xu X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 20:38:37 -0000 On Fri, 4 Jan 2013, Mateusz Guzik wrote: > On Fri, Jan 04, 2013 at 11:11:13AM +0000, David Xu wrote: >> Author: davidxu >> Date: Fri Jan 4 11:11:12 2013 >> New Revision: 245036 >> URL: http://svnweb.freebsd.org/changeset/base/245036 >> >> Log: >> Revert revision 244760 because strncpy pads trailing space with zero, >> this prevents kernel data from being leaked. > > I think it would be better to teach strlcpy to zero-pad as well. I'd rather we created new functions with new names that add the non-portable zeroing behaviour -- perhaps strlpcpy() and strnpcpy(), or something equally incomprehensible. This semantic may actually trigger bugs in code that is correct (albeit badly written) using strncpy() and strlcpy() in a way that never fully fills the buffer (due to some external invariant) and has an incorrect bounds check -- and potentially trigger performance problems when target buffers are much larger than the copied data. Robert From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 20:44:18 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 78FE849D; Fri, 4 Jan 2013 20:44:18 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5FA3A84A; Fri, 4 Jan 2013 20:44:18 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r04KiIXt028677; Fri, 4 Jan 2013 20:44:18 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r04KiIbu028675; Fri, 4 Jan 2013 20:44:18 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201301042044.r04KiIbu028675@svn.freebsd.org> From: Hans Petter Selasky Date: Fri, 4 Jan 2013 20:44:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245047 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 20:44:18 -0000 Author: hselasky Date: Fri Jan 4 20:44:17 2013 New Revision: 245047 URL: http://svnweb.freebsd.org/changeset/base/245047 Log: Fix for "run0: wcid=xx out of range" error message. MFC after: 1 week PR: usb/174963 Submitted by: PseudoCylon Modified: head/sys/dev/usb/wlan/if_run.c Modified: head/sys/dev/usb/wlan/if_run.c ============================================================================== --- head/sys/dev/usb/wlan/if_run.c Fri Jan 4 19:29:23 2013 (r245046) +++ head/sys/dev/usb/wlan/if_run.c Fri Jan 4 20:44:17 2013 (r245047) @@ -2019,7 +2019,8 @@ run_key_set_cb(void *arg) wcid = 0; /* NB: update WCID0 for group keys */ base = RT2860_SKEY(RUN_VAP(vap)->rvp_id, k->wk_keyix); } else { - wcid = RUN_AID2WCID(associd); + wcid = (vap->iv_opmode == IEEE80211_M_STA) ? + 1 : RUN_AID2WCID(associd); base = RT2860_PKEY(wcid); } @@ -2374,9 +2375,12 @@ run_newassoc(struct ieee80211_node *ni, struct run_softc *sc = ic->ic_ifp->if_softc; uint8_t rate; uint8_t ridx; - uint8_t wcid = RUN_AID2WCID(ni->ni_associd); + uint8_t wcid; int i, j; + wcid = (vap->iv_opmode == IEEE80211_M_STA) ? + 1 : RUN_AID2WCID(ni->ni_associd); + if (wcid > RT2870_WCID_MAX) { device_printf(sc->sc_dev, "wcid=%d out of range\n", wcid); return; @@ -3044,8 +3048,12 @@ run_tx(struct run_softc *sc, struct mbuf txd->flags = qflags; txwi = (struct rt2860_txwi *)(txd + 1); txwi->xflags = xflags; - txwi->wcid = IEEE80211_IS_MULTICAST(wh->i_addr1) ? - 0 : RUN_AID2WCID(ni->ni_associd); + if (IEEE80211_IS_MULTICAST(wh->i_addr1)) { + txwi->wcid = 0; + } else { + txwi->wcid = (vap->iv_opmode == IEEE80211_M_STA) ? + 1 : RUN_AID2WCID(ni->ni_associd); + } /* clear leftover garbage bits */ txwi->flags = 0; txwi->txop = 0; From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 20:57:01 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 3E20B939; Fri, 4 Jan 2013 20:57:01 +0000 (UTC) (envelope-from oleg.moskalenko@citrix.com) Received: from SMTP02.CITRIX.COM (smtp02.citrix.com [66.165.176.63]) by mx1.freebsd.org (Postfix) with ESMTP id DB3CD8DB; Fri, 4 Jan 2013 20:56:59 +0000 (UTC) X-IronPort-AV: E=Sophos;i="4.84,412,1355097600"; d="scan'208";a="2571987" Received: from sjcpmailmx02.citrite.net ([10.216.14.75]) by FTLPIPO02.CITRIX.COM with ESMTP/TLS/RC4-MD5; 04 Jan 2013 20:56:57 +0000 Received: from SJCPMAILBOX01.citrite.net ([10.216.4.72]) by SJCPMAILMX02.citrite.net ([10.216.14.75]) with mapi; Fri, 4 Jan 2013 12:56:56 -0800 From: Oleg Moskalenko To: 'Robert Watson' , Mateusz Guzik Date: Fri, 4 Jan 2013 12:56:56 -0800 Subject: RE: svn commit: r245036 - head/sys/kern Thread-Topic: svn commit: r245036 - head/sys/kern Thread-Index: Ac3qu4LzQPwSTJxEQJuLzMOdgYHntQAAZboQ Message-ID: <031222CBCF33214AB2EB4ABA279428A3012CA8FA98F2@SJCPMAILBOX01.citrite.net> References: <201301041111.r04BBDjZ013380@svn.freebsd.org> <20130104113354.GB26239@dft-labs.eu> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , David Xu X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 20:57:01 -0000 > -----Original Message----- > > I think it would be better to teach strlcpy to zero-pad as well. >=20 > I'd rather we created new functions with new names that add the non-porta= ble > zeroing behaviour -- perhaps strlpcpy() and strnpcpy(), or something equa= lly > incomprehensible. This semantic may actually trigger bugs in code that i= s > correct (albeit badly written) using strncpy() and strlcpy() in a way tha= t never fully > fills the buffer (due to some external invariant) and has an incorrect bo= unds > check -- and potentially trigger performance problems when target buffers= are > much larger than the copied data. >=20 > Robert > _______________________________________________ Robert is right - this is not a good idea to rely on a non-standard "smart"= behavior of basic functions. If the developer wants to code it "securely",= he/she always can use his own wrappers around the strncpy() etc. Any inher= ent built-in behavior that is not "standard" is affecting future maintenanc= e of the code. =20 Oleg From owner-svn-src-all@FreeBSD.ORG Fri Jan 4 23:44:23 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 5D91999F; Fri, 4 Jan 2013 23:44:23 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 39CFAEDC; Fri, 4 Jan 2013 23:44:23 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r04NiNlB081480; Fri, 4 Jan 2013 23:44:23 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r04NiNZA081479; Fri, 4 Jan 2013 23:44:23 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301042344.r04NiNZA081479@svn.freebsd.org> From: Xin LI Date: Fri, 4 Jan 2013 23:44:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245048 - head/usr.bin/apply X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 04 Jan 2013 23:44:23 -0000 Author: delphij Date: Fri Jan 4 23:44:22 2013 New Revision: 245048 URL: http://svnweb.freebsd.org/changeset/base/245048 Log: Constify arguments. While I'm there, also add a static for usage(). MFC after: 2 weeks Modified: head/usr.bin/apply/apply.c Modified: head/usr.bin/apply/apply.c ============================================================================== --- head/usr.bin/apply/apply.c Fri Jan 4 20:44:17 2013 (r245047) +++ head/usr.bin/apply/apply.c Fri Jan 4 23:44:22 2013 (r245048) @@ -55,7 +55,7 @@ __FBSDID("$FreeBSD$"); #define EXEC "exec " -static int exec_shell(const char *, char *, char *); +static int exec_shell(const char *, const char *, const char *); static void usage(void); int @@ -222,7 +222,7 @@ main(int argc, char *argv[]) * arguments. */ static int -exec_shell(const char *command, char *use_shell, char *use_name) +exec_shell(const char *command, const char *use_shell, const char *use_name) { pid_t pid; int omask, pstat; @@ -250,7 +250,7 @@ exec_shell(const char *command, char *us return(pid == -1 ? -1 : pstat); } -void +static void usage(void) { From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 00:23:27 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 227D2D8D; Sat, 5 Jan 2013 00:23:27 +0000 (UTC) (envelope-from bjk@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E6794FB7; Sat, 5 Jan 2013 00:23:26 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r050NQwT093190; Sat, 5 Jan 2013 00:23:26 GMT (envelope-from bjk@svn.freebsd.org) Received: (from bjk@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r050NQHO093188; Sat, 5 Jan 2013 00:23:26 GMT (envelope-from bjk@svn.freebsd.org) Message-Id: <201301050023.r050NQHO093188@svn.freebsd.org> From: Benjamin Kaduk Date: Sat, 5 Jan 2013 00:23:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245049 - in head: share/man/man9 sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 00:23:27 -0000 Author: bjk (doc committer) Date: Sat Jan 5 00:23:26 2013 New Revision: 245049 URL: http://svnweb.freebsd.org/changeset/base/245049 Log: Fix some minor inaccuracies introduced in r243251. Also correct the comment in kern_synch.c which was the source of the problematic text. Reviewed by: kib (previous version) Approved by: hrs (mentor) Modified: head/share/man/man9/sleep.9 head/sys/kern/kern_synch.c Modified: head/share/man/man9/sleep.9 ============================================================================== --- head/share/man/man9/sleep.9 Fri Jan 4 23:44:22 2013 (r245048) +++ head/share/man/man9/sleep.9 Sat Jan 5 00:23:26 2013 (r245049) @@ -102,12 +102,11 @@ If .Fa priority includes the .Dv PCATCH -flag, pending -signals are checked before and after sleeping, otherwise signals are -not checked. +flag, pending signals are allowed to interrupt the sleep, otherwise +pending signals are ignored during the sleep. If .Dv PCATCH -is set and a signal needs to be delivered, +is set and a signal becomes pending, .Er ERESTART is returned if the current system call should be restarted if possible, and @@ -119,9 +118,10 @@ If the .Dv PBDRY flag is specified in addition to .Dv PCATCH , -then the sleeping thread is not stopped upon delivery of +then the sleeping thread is not stopped when .Dv SIGSTOP -or other stop action while it is sleeping. +becomes pending +or some other stop action occurs while it is sleeping. Instead, it is woken up, with the assumption that the stop will occur on reaching a stop point when returning to usermode. Modified: head/sys/kern/kern_synch.c ============================================================================== --- head/sys/kern/kern_synch.c Fri Jan 4 23:44:22 2013 (r245048) +++ head/sys/kern/kern_synch.c Sat Jan 5 00:23:26 2013 (r245049) @@ -133,10 +133,10 @@ sleepinit(void) * General sleep call. Suspends the current thread until a wakeup is * performed on the specified identifier. The thread will then be made * runnable with the specified priority. Sleeps at most timo/hz seconds - * (0 means no timeout). If pri includes PCATCH flag, signals are checked - * before and after sleeping, else signals are not checked. Returns 0 if + * (0 means no timeout). If pri includes the PCATCH flag, let signals + * interrupt the sleep, otherwise ignore them while sleeping. Returns 0 if * awakened, EWOULDBLOCK if the timeout expires. If PCATCH is set and a - * signal needs to be delivered, ERESTART is returned if the current system + * signal becomes pending, ERESTART is returned if the current system * call should be restarted if possible, and EINTR is returned if the system * call should be interrupted by the signal (return EINTR). * From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 00:23:59 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 6D6D8EFE; Sat, 5 Jan 2013 00:23:59 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5CA8DFC0; Sat, 5 Jan 2013 00:23:59 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r050NxRN093288; Sat, 5 Jan 2013 00:23:59 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r050NxQP093287; Sat, 5 Jan 2013 00:23:59 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201301050023.r050NxQP093287@svn.freebsd.org> From: Xin LI Date: Sat, 5 Jan 2013 00:23:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245050 - head/usr.bin/xargs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 00:23:59 -0000 Author: delphij Date: Sat Jan 5 00:23:58 2013 New Revision: 245050 URL: http://svnweb.freebsd.org/changeset/base/245050 Log: Follow calloc convention in other code, this is functionally identical to its previous form. Modified: head/usr.bin/xargs/strnsubst.c Modified: head/usr.bin/xargs/strnsubst.c ============================================================================== --- head/usr.bin/xargs/strnsubst.c Sat Jan 5 00:23:26 2013 (r245049) +++ head/usr.bin/xargs/strnsubst.c Sat Jan 5 00:23:58 2013 (r245050) @@ -48,7 +48,7 @@ strnsubst(char **str, const char *match, match = NULL; maxsize = strlen(s1) + 1; } - s2 = calloc(maxsize, 1); + s2 = calloc(1, maxsize); if (s2 == NULL) err(1, "calloc"); From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 00:27:09 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2B83F193; Sat, 5 Jan 2013 00:27:09 +0000 (UTC) (envelope-from bjk@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 075F2FDD; Sat, 5 Jan 2013 00:27:09 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r050R8eN093781; Sat, 5 Jan 2013 00:27:08 GMT (envelope-from bjk@svn.freebsd.org) Received: (from bjk@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r050R8AR093780; Sat, 5 Jan 2013 00:27:08 GMT (envelope-from bjk@svn.freebsd.org) Message-Id: <201301050027.r050R8AR093780@svn.freebsd.org> From: Benjamin Kaduk Date: Sat, 5 Jan 2013 00:27:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245051 - head/usr.sbin/gssd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 00:27:09 -0000 Author: bjk (doc committer) Date: Sat Jan 5 00:27:08 2013 New Revision: 245051 URL: http://svnweb.freebsd.org/changeset/base/245051 Log: Grammar fixes and some wordsmithing Discussed with: rmacklem Approved by: hrs (mentor) MFC after: 2 weeks Modified: head/usr.sbin/gssd/gssd.8 Modified: head/usr.sbin/gssd/gssd.8 ============================================================================== --- head/usr.sbin/gssd/gssd.8 Sat Jan 5 00:23:58 2013 (r245050) +++ head/usr.sbin/gssd/gssd.8 Sat Jan 5 00:27:08 2013 (r245051) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 22, 2012 +.Dd December 30, 2012 .Dt GSSD 8 .Os .Sh NAME @@ -53,25 +53,22 @@ will not fork when it starts. Look for an appropriate credential cache file in this list of directories. The list should be full pathnames from root, separated by ':' characters. Usually this list will simply be "/tmp". -Without this option, the +Without this option, .Nm -daemon assumes that the credential cache file is called /tmp/krb5cc_, +assumes that the credential cache file is called /tmp/krb5cc_, where is the effective uid for the RPC caller. .It Fl c Ar file-substring Set a file-substring for the credential cache file names. Only files with this substring embedded in their names will be -selected as candidates when the +selected as candidates when .Fl s has been specified. If not specified, it defaults to "krb5cc_". .It Fl r Ar preferred-realm -Set a preferred Kerberos realm for the search of the directory list for -a credentials cache file. -When set, files with TGT credentials for this realm will be selected over -other credential files. -This option is only meaningful when the -.Fl s -option has been specified. +Use Kerberos credentials for this realm when searching for +credentials in directories specified with +.Fl s . +If not specified, the default Kerberos realm will be used. .El .Sh FILES .Bl -tag -width ".Pa /etc/krb5.keytab" -compact From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 02:08:49 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D4829E4D; Sat, 5 Jan 2013 02:08:49 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B73572F4; Sat, 5 Jan 2013 02:08:49 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0528n5n023489; Sat, 5 Jan 2013 02:08:49 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0528m5x023476; Sat, 5 Jan 2013 02:08:48 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201301050208.r0528m5x023476@svn.freebsd.org> From: Devin Teske Date: Sat, 5 Jan 2013 02:08:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245052 - in head/usr.sbin/bsdconfig: . include share X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 02:08:49 -0000 Author: dteske Date: Sat Jan 5 02:08:47 2013 New Revision: 245052 URL: http://svnweb.freebsd.org/changeset/base/245052 Log: Add support for scripting (sysinstall style). Reviewed by: jilles Added: head/usr.sbin/bsdconfig/share/script.subr (contents, props changed) head/usr.sbin/bsdconfig/share/variable.subr (contents, props changed) Modified: head/usr.sbin/bsdconfig/USAGE head/usr.sbin/bsdconfig/bsdconfig head/usr.sbin/bsdconfig/bsdconfig.8 head/usr.sbin/bsdconfig/include/messages.subr head/usr.sbin/bsdconfig/share/Makefile head/usr.sbin/bsdconfig/share/common.subr Modified: head/usr.sbin/bsdconfig/USAGE ============================================================================== --- head/usr.sbin/bsdconfig/USAGE Sat Jan 5 00:27:08 2013 (r245051) +++ head/usr.sbin/bsdconfig/USAGE Sat Jan 5 02:08:47 2013 (r245052) @@ -31,6 +31,9 @@ Usage: @PROGRAM_NAME@ [OPTIONS] [command [OPTIONS]] OPTIONS: + -f file Load file as script and then exit. If multiple occurrences, + program will only exit after last occurrence. If file is a + single dash (`-'), @PROGRAM_NAME@ reads from standard input. -h Print usage statement and exit. -S Secure X11 mode (implies `-X'). As root, always prompt-for and validate sudo(8) username/password before starting. Modified: head/usr.sbin/bsdconfig/bsdconfig ============================================================================== --- head/usr.sbin/bsdconfig/bsdconfig Sat Jan 5 00:27:08 2013 (r245051) +++ head/usr.sbin/bsdconfig/bsdconfig Sat Jan 5 02:08:47 2013 (r245052) @@ -204,25 +204,45 @@ dialog_menu_main() ############################################################ MAIN # -# If $0 is not "bsdconfig", interpret it as a keyword to a menuitem +# If $0 is not "bsdconfig", interpret it either as a keyword to a menuitem or +# as a valid resword (see script.subr for additional details about reswords). # -if [ "$pgm" != "bsdconfig" ] && - indexfile=$( f_index_file "$pgm" ) && - cmd=$( f_index_menusel_command "$indexfile" "$pgm" ) -then - exec "$cmd" "$@" || exit 1 +if [ "$pgm" != "bsdconfig" ]; then + if indexfile=$( f_index_file "$pgm" ) && + cmd=$( f_index_menusel_command "$indexfile" "$pgm" ) + then + f_dprintf "pgm=[%s] indexfile=[%s] cmd=[%s]" \ + "$pgm" "$indexfile" "$cmd" + exec "$cmd" "$@" || exit 1 + else + f_include $BSDCFG_SHARE/script.subr + for resword in $RESWORDS; do + [ "$pgm" = "$resword" ] || continue + # Found a match + f_dprintf "pgm=[%s] A valid resWord!" "$pgm" + f_dispatch $resword + exit $? + done + fi fi # # Process command-line arguments # -while getopts hSX flag; do +scripts_loaded=0 +while getopts f:hSX flag; do case "$flag" in + f) [ $scripts_loaded -eq 0 ] && f_include $BSDCFG_SHARE/script.subr + f_script_load "$OPTARG" + scripts_loaded=$(( $scripts_loaded + 1 ));; h|\?) usage;; esac done shift $(( $OPTIND -1 )) +# If we've loaded any scripts, do not continue any further +[ $scripts_loaded -gt 0 ] && exit + # # Initialize # Modified: head/usr.sbin/bsdconfig/bsdconfig.8 ============================================================================== --- head/usr.sbin/bsdconfig/bsdconfig.8 Sat Jan 5 00:27:08 2013 (r245051) +++ head/usr.sbin/bsdconfig/bsdconfig.8 Sat Jan 5 02:08:47 2013 (r245052) @@ -85,6 +85,17 @@ a master menu listing the available comm .Pp The following options are available: .Bl -tag -width indent+ +.It Fl f Ar file +Load +.Ar file +as script and then exit. +If multiple occurrences, program will only exit after last occurrence. +If +.Ar file +is a single dash +.Pq Sq Fl , +.Nm +reads from standard input. .It Fl h Print usage statement and exit. .It Fl S Modified: head/usr.sbin/bsdconfig/include/messages.subr ============================================================================== --- head/usr.sbin/bsdconfig/include/messages.subr Sat Jan 5 00:27:08 2013 (r245051) +++ head/usr.sbin/bsdconfig/include/messages.subr Sat Jan 5 02:08:47 2013 (r245052) @@ -34,6 +34,7 @@ msg_becoming_root_via_sudo="Becoming roo msg_cancel="Cancel" msg_cancel_exit="Cancel/Exit" msg_cannot_create_permission_denied="%s: cannot create %s: Permission denied" +msg_command_failed_rest_of_script_aborted="Command \`%s' failed - rest of script aborted." msg_created_path="Created %s" msg_directory_not_found="%s: Directory not found." msg_exit="Exit" @@ -56,6 +57,7 @@ msg_secure_mode_requires_x11="Secure-mod msg_secure_mode_requires_root="Secure-mode requires root-access!" msg_sorry_try_again="Sorry, try again." msg_try_sudo_only_this_once="Try sudo(8) only this once" +msg_unable_to_open="Unable to open %s" msg_unknown_user="Unknown user: %s" msg_usage="Usage" msg_user_disallowed="User disallowed: %s" Modified: head/usr.sbin/bsdconfig/share/Makefile ============================================================================== --- head/usr.sbin/bsdconfig/share/Makefile Sat Jan 5 00:27:08 2013 (r245051) +++ head/usr.sbin/bsdconfig/share/Makefile Sat Jan 5 02:08:47 2013 (r245052) @@ -3,7 +3,8 @@ NO_OBJ= FILESDIR= ${SHAREDIR}/bsdconfig -FILES= common.subr dialog.subr mustberoot.subr strings.subr sysrc.subr +FILES= common.subr dialog.subr mustberoot.subr script.subr \ + strings.subr sysrc.subr variable.subr beforeinstall: mkdir -p ${DESTDIR}${FILESDIR} Modified: head/usr.sbin/bsdconfig/share/common.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/common.subr Sat Jan 5 00:27:08 2013 (r245051) +++ head/usr.sbin/bsdconfig/share/common.subr Sat Jan 5 02:08:47 2013 (r245052) @@ -114,6 +114,30 @@ f_have() f_quietly type "$@" } +# f_getvar $var_to_get [$var_to_set] +# +# Utility function designed to go along with the already-builtin setvar. +# Allows clean variable name indirection without forking or sub-shells. +# +# Returns error status if the requested variable ($var_to_get) is not set. +# +# If $var_to_set is missing or NULL, the value of $var_to_get is printed to +# standard output for capturing in a sub-shell (which is less-recommended +# because of performance degredation; for example, when called in a loop). +# +f_getvar() +{ + local var_to_get="$1" var_to_set="$2" + [ "$var_to_set" ] || local value + eval ${var_to_set:-value}=\"\${$var_to_get}\" + eval [ \"\${$var_to_get+set}\" ] + local retval=$? + eval f_dprintf '"f_getvar: var=[%s] value=[%s] r=%u"' \ + \"\$var_to_get\" \"\$${var_to_set:-value}\" \$retval + [ "$var_to_set" ] || { [ "$value" ] && echo "$value"; } + return $retval +} + # f_die [ $status [ $fmt [ $opts ... ]]] # # Abruptly terminate due to an error optionally displaying a message in a Added: head/usr.sbin/bsdconfig/share/script.subr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.sbin/bsdconfig/share/script.subr Sat Jan 5 02:08:47 2013 (r245052) @@ -0,0 +1,139 @@ +if [ ! "$_SCRIPT_SUBR" ]; then _SCRIPT_SUBR=1 +# +# Copyright (c) 2012 Devin Teske +# All Rights Reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE 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 (INLUDING, 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$ +# +############################################################ INCLUDES + +BSDCFG_SHARE="/usr/share/bsdconfig" +. $BSDCFG_SHARE/common.subr || exit 1 +f_dprintf "%s: loading includes..." script.subr +f_include $BSDCFG_SHARE/variable.subr + +############################################################ GLOBALS + +RESWORDS= + +############################################################ FUNCTIONS + +# f_resword_new $resword $function +# +# Create a new `reserved' word for scripting purposes. Reswords call pre- +# defined functions but differ from those functions in the following ways: +# +# + Reswords do not take arguments but instead get all their data from +# the environment variable namespace. +# + Unless noError is set (must be non-NULL), if calling the resword +# results in failure, the application will terminate prematurely. +# + noError is unset after each/every resword is called. +# +# Reswords should not be used in bsdconfig itself (hence the name `reserved +# word') but instead only in scripts loaded through f_script_load()). +# +f_resword_new() +{ + local resword="$1" func="$2" + [ "$resword" ] || return $FAILURE + f_dprintf "script.subr: New resWord %s -> %s" "$resword" "$func" + eval $resword\(\){ f_dispatch $func $resword\; } + RESWORDS="$RESWORDS${RESWORDS:+ }$resword" +} + +# f_dispatch $func [$resword] +# +# Wrapper function used by `reserved words' (reswords) to call other functions. +# If $noError is set and non-NULL, a failure result from $func is ignored, +# otherwise the application is prematurely terminated using f_die(). +# +# NOTE: $noError is unset after every call. +# +f_dispatch() +{ + local func="$1" resword="${2:-$1}" + f_dprintf "f_dispatch: calling resword \`%s'" "$resword" + eval $func + local retval=$? _ignore_this_error + f_getvar $VAR_NO_ERROR _ignore_this_error + [ $retval -eq $SUCCESS ] || + [ "$_ignore_this_error" ] || f_die $retval \ + "$msg_command_failed_rest_of_script_aborted" "$resword" + unset $VAR_NO_ERROR +} + +# f_script_load [$file] +# +# Load a script (usually filled with reswords). If $file is missing or NULL, +# use one of the following instead (in order): +# +# $configFile +# install.cfg +# /stand/install.fg +# /tmp/install.cfg +# +# Unknown/unregistered reswords will generate sh(1) syntax errors but not cause +# premature termination. +# +# Returns success if a script was loaded and itself returned success. +# +f_script_load() +{ + local script="$1" config_file + + f_dprintf "f_script_load: script=[%s]" "$script" + if [ ! "$script" ]; then + f_getvar $VAR_CONFIG_FILE config_file + for script in \ + $config_file \ + install.cfg \ + /stand/install.cfg \ + /tmp/install.cfg \ + ; do + [ -e "$script" ] && break + done + elif [ "$script" = "-" ]; then + f_dprintf "f_script_load: Loading script from stdin" + eval "$( cat )" + else + f_dprintf "f_script_load: Loading script \`%s'" "$script" + if [ ! -e "$script" ]; then + f_show_msg "$msg_unable_to_open" "$script" + return $FAILURE + fi + . "$script" + fi +} + +############################################################ MAIN + +# +# Reserved words meant for scripting +# +f_resword_new dumpVariables f_dump_variables +f_resword_new loadConfig f_script_load + +f_dprintf "%s: Successfully loaded." script.subr + +fi # ! $_SCRIPT_SUBR Added: head/usr.sbin/bsdconfig/share/variable.subr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.sbin/bsdconfig/share/variable.subr Sat Jan 5 02:08:47 2013 (r245052) @@ -0,0 +1,185 @@ +if [ ! "$_VARIABLE_SUBR" ]; then _VARIABLE_SUBR=1 +# +# Copyright (c) 2012 Devin Teske +# All Rights Reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE 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 (INLUDING, 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$ +# +############################################################ INCLUDES + +BSDCFG_SHARE="/usr/share/bsdconfig" +. $BSDCFG_SHARE/common.subr || exit 1 +f_dprintf "%s: loading includes..." variable.subr +f_include $BSDCFG_SHARE/dialog.subr + +############################################################ GLOBALS + +VARIABLES= + +# +# Default behavior is to call f_variable_set_defaults() when loaded. +# +: ${VARIABLE_SELF_INITIALIZE=1} + +# +# File to write when f_dump_variables() is called. +# +: ${VARIABLE_DUMPFILE:=/etc/bsdconfig.vars} + +############################################################ FUNCTIONS + +# f_variable_new $handle $variable +# +# Register a new variable named $variable with the given reference-handle +# $handle. The environment variable $handle is set to $variable allowing you to +# use the f_getvar() function (from common.subr) with $handle to get the value +# of environment variable $variable. For example: +# +# f_variable_new VAR_ABC abc +# +# allows the later indirection: +# +# f_getvar $VAR_ABC +# +# to return the value of environment variable `abc'. Variables registered in +# this manner are recorded in the $VARIABLES environment variable for later +# allowing dynamic enumeration of so-called `registered/advertised' variables. +# +f_variable_new() +{ + local handle="$1" variable="$2" + [ "$handle" ] || return $FAILURE + f_dprintf "variable.subr: New variable %s -> %s" "$handle" "$variable" + setvar $handle $variable + VARIABLES="$VARIABLES${VARIABLES:+ }$handle" +} + +# f_variable_get_value $var [ $fmt [ $opts ... ] ] +# +# Unless nonInteractive is set, prompt the user with a given value (pre-filled +# with the value of $var) and give them the chance to change the value. +# +# Unlike f_getvar() (from common.subr) which can return a variable to the +# caller on standard output, this function has no [meaningful] output. +# +# Returns success unless $var is either NULL or missing. +# +f_variable_get_value() +{ + local var="$1" cp + + [ "$var" ] || return $FAILURE + + if ! { f_getvar $var cp && ! f_interactive; }; then + shift 1 # var + cp=$( f_dialog_input "$( printf "$@" )" "$cp" ) && + setvar $var "$cp" + fi + + return $SUCCESS +} + +# f_variable_set_defaults +# +# Installs sensible defaults for registered/advertised variables. +# +f_variable_set_defaults() +{ + # + # Initialize various user-edittable values to their defaults + # + setvar $VAR_RELNAME "$UNAME_R" + + f_dprintf "f_variable_set_defaults: Defaults initialized." +} + +# f_dump_variables +# +# Dump a list of registered/advertised variables and their respective values to +# $VARIABLE_DUMPFILE. Returns success unless the file couldn't be written. If +# an error occurs, it is displayed using f_show_msg() (from common.subr). +# +f_dump_variables() +{ + local err sanitize_awk="{ gsub(/'/, \"'\\\\''\"); print }" + if ! err=$( + ( for handle in $VARIABLES; do + f_getvar $handle var || continue + f_getvar $var value || continue + value=$( echo "$value" | awk "$sanitize_awk" ) + printf "%s='%s'\n" "$var" "$value" + done > "$VARIABLE_DUMPFILE" ) 2>&1 + ); then + f_show_msg "%s" "$err" + return $FAILURE + fi +} + +# f_debugging +# +# Are we in debug mode? Returns success if extra DEBUG information has been +# requested (by setting $debug to non-NULL), otherwise false. +# +f_debugging() +{ + local value + f_getvar $VAR_DEBUG value && [ "$value" ] +} + +# f_interactive() +# +# Are we running interactively? Return error if $nonInteractive is set and non- +# NULL, otherwise return success. +# +f_interactive() +{ + local value + ! f_getvar $VAR_NONINTERACTIVE value || [ ! "$value" ] +} + +############################################################ MAIN + +# +# Variables that can be tweaked from config files +# +f_variable_new VAR_CONFIG_FILE configFile +f_variable_new VAR_DEBUG debug +f_variable_new VAR_DEBUG_FILE debugFile +f_variable_new VAR_NO_ERROR noError +f_variable_new VAR_NONINTERACTIVE nonInteractive +f_variable_new VAR_RELNAME releaseName + +# +# Self-initialize unless requested otherwise +# +f_dprintf "%s: VARIABLE_SELF_INITIALIZE=[%s]" \ + variable.subr "$VARIABLE_SELF_INITIALIZE" +case "$VARIABLE_SELF_INITIALIZE" in +""|0|[Nn][Oo]|[Oo][Ff][Ff]|[Ff][Aa][Ll][Ss][Ee]) : do nothing ;; +*) f_variable_set_defaults +esac + +f_dprintf "%s: Successfully loaded." variable.subr + +fi # ! $_VARIABLE_SUBR From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 04:20:15 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 29D172F0; Sat, 5 Jan 2013 04:20:15 +0000 (UTC) (envelope-from neel@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 05FCE8BC; Sat, 5 Jan 2013 04:20:15 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r054KEtV063067; Sat, 5 Jan 2013 04:20:14 GMT (envelope-from neel@svn.freebsd.org) Received: (from neel@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r054KEad063066; Sat, 5 Jan 2013 04:20:14 GMT (envelope-from neel@svn.freebsd.org) Message-Id: <201301050420.r054KEad063066@svn.freebsd.org> From: Neel Natu Date: Sat, 5 Jan 2013 04:20:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245055 - head/sys/x86/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 04:20:15 -0000 Author: neel Date: Sat Jan 5 04:20:14 2013 New Revision: 245055 URL: http://svnweb.freebsd.org/changeset/base/245055 Log: Add macros required to enable VMX operation on Intel processors. Obtained from: NetApp Modified: head/sys/x86/include/specialreg.h Modified: head/sys/x86/include/specialreg.h ============================================================================== --- head/sys/x86/include/specialreg.h Sat Jan 5 03:35:30 2013 (r245054) +++ head/sys/x86/include/specialreg.h Sat Jan 5 04:20:14 2013 (r245055) @@ -68,6 +68,7 @@ #define CR4_PCE 0x00000100 /* Performance monitoring counter enable */ #define CR4_FXSR 0x00000200 /* Fast FPU save/restore used by OS */ #define CR4_XMM 0x00000400 /* enable SIMD/MMX2 to use except 16 */ +#define CR4_VMXE 0x00002000 /* enable VMX operation (Intel-specific) */ #define CR4_FSGSBASE 0x00010000 /* Enable FS/GS BASE accessing instructions */ #define CR4_PCIDE 0x00020000 /* Enable Context ID */ #define CR4_XSAVE 0x00040000 /* XSETBV/XGETBV */ @@ -310,6 +311,7 @@ #define MSR_APICBASE 0x01b #define MSR_EBL_CR_POWERON 0x02a #define MSR_TEST_CTL 0x033 +#define MSR_IA32_FEATURE_CONTROL 0x03a #define MSR_BIOS_UPDT_TRIG 0x079 #define MSR_BBL_CR_D0 0x088 #define MSR_BBL_CR_D1 0x089 From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 09:30:10 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 16EF21D0; Sat, 5 Jan 2013 09:30:10 +0000 (UTC) (envelope-from jh@FreeBSD.org) Received: from gw01.mail.saunalahti.fi (gw01.mail.saunalahti.fi [195.197.172.115]) by mx1.freebsd.org (Postfix) with ESMTP id CBA59692; Sat, 5 Jan 2013 09:30:09 +0000 (UTC) Received: from a91-153-116-96.elisa-laajakaista.fi (a91-153-116-96.elisa-laajakaista.fi [91.153.116.96]) by gw01.mail.saunalahti.fi (Postfix) with SMTP id 8124B15150F; Sat, 5 Jan 2013 11:22:53 +0200 (EET) Date: Sat, 5 Jan 2013 11:22:52 +0200 From: Jaakko Heinonen To: John Baldwin Subject: Re: svn commit: r244585 - in head: . sys/geom/label Message-ID: <20130105092252.GA1832@a91-153-116-96.elisa-laajakaista.fi> References: <201212221343.qBMDhCHa086834@svn.freebsd.org> <201301041218.07804.john@baldwin.cx> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201301041218.07804.john@baldwin.cx> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 09:30:10 -0000 On 2013-01-04, John Baldwin wrote: > > New Revision: 244585 > > Log: > > Mangle label names containing spaces, non-printable characters '%' or > > '"'. Mangling is only done for label names read from file system > > metadata. Encoding resembles URL encoding. For example, the space > > character becomes %20. > > Ouch, mangling spaces seems unfortunate. I guess fixing the devctl protocol > is too hard, and/or we can't just encode it at the protocol layer but leave > the actual device names untouched? I initially proposed changing the devctl protocol but in a private discussion people preferred to not change the protocol. However, I think that allowing the space character only might be possible without changing the protocol as devd(8) can already handle strings enclosed in double quotes. usb(4) already uses such devctl variables. > OS X preserves spaces in volume names and those can be quite common on > ISO images, so mangling them really does seem to be a shame if we can > avoid it. How important do you think this is? I understand that it's annoyance for people upgrading their systems but labels with spaces can still be used. -- Jaakko From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 14:52:32 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 65F6A946; Sat, 5 Jan 2013 14:52:32 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 58686FDF; Sat, 5 Jan 2013 14:52:32 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05EqW9a051826; Sat, 5 Jan 2013 14:52:32 GMT (envelope-from gabor@svn.freebsd.org) Received: (from gabor@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05EqWHt051825; Sat, 5 Jan 2013 14:52:32 GMT (envelope-from gabor@svn.freebsd.org) Message-Id: <201301051452.r05EqWHt051825@svn.freebsd.org> From: Gabor Kovesdan Date: Sat, 5 Jan 2013 14:52:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245057 - head/usr.bin/grep X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 14:52:32 -0000 Author: gabor Date: Sat Jan 5 14:52:31 2013 New Revision: 245057 URL: http://svnweb.freebsd.org/changeset/base/245057 Log: - Fix handling of the case when multiple patterns are specified in a single command line argument, separated by newlines PR: bin/173673 Submitted by: ache MFC after: 1 week Modified: head/usr.bin/grep/grep.c Modified: head/usr.bin/grep/grep.c ============================================================================== --- head/usr.bin/grep/grep.c Sat Jan 5 11:13:48 2013 (r245056) +++ head/usr.bin/grep/grep.c Sat Jan 5 14:52:31 2013 (r245057) @@ -479,7 +479,13 @@ main(int argc, char *argv[]) grepbehave = GREP_EXTENDED; break; case 'e': - add_pattern(optarg, strlen(optarg)); + { + char *token; + char *string = strdup(optarg); + + while ((token = strsep(&string, "\n")) != NULL) + add_pattern(token, strlen(token)); + } needpattern = 0; break; case 'F': @@ -668,7 +674,11 @@ main(int argc, char *argv[]) /* Process patterns from command line */ if (aargc != 0 && needpattern) { - add_pattern(*aargv, strlen(*aargv)); + char *token; + char *string = strdup(*aargv); + + while ((token = strsep(&string, "\n")) != NULL) + add_pattern(token, strlen(token)); --aargc; ++aargv; } From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 16:35:47 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id EBB826D6; Sat, 5 Jan 2013 16:35:47 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DBC97357; Sat, 5 Jan 2013 16:35:47 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05GZlic082523; Sat, 5 Jan 2013 16:35:47 GMT (envelope-from gabor@svn.freebsd.org) Received: (from gabor@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05GZl2Q082522; Sat, 5 Jan 2013 16:35:47 GMT (envelope-from gabor@svn.freebsd.org) Message-Id: <201301051635.r05GZl2Q082522@svn.freebsd.org> From: Gabor Kovesdan Date: Sat, 5 Jan 2013 16:35:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245062 - stable/9/share/i18n/csmapper X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 16:35:48 -0000 Author: gabor Date: Sat Jan 5 16:35:46 2013 New Revision: 245062 URL: http://svnweb.freebsd.org/changeset/base/245062 Log: MFC r244348: - Fix handling of .mps files Modified: stable/9/share/i18n/csmapper/Makefile.part Directory Properties: stable/9/share/i18n/csmapper/ (props changed) Modified: stable/9/share/i18n/csmapper/Makefile.part ============================================================================== --- stable/9/share/i18n/csmapper/Makefile.part Sat Jan 5 16:23:18 2013 (r245061) +++ stable/9/share/i18n/csmapper/Makefile.part Sat Jan 5 16:35:46 2013 (r245062) @@ -28,9 +28,9 @@ mapper.dir.${ESUBDIR}: ${CODE}.part echo "# ${ESUBDIR}" > ${.TARGET} .for i in ${PART} printf "%-32s%-32s%s\n" ${ENCID:S@%%PART%%@${i}@}/UCS ${MAPPER} \ - ${ESUBDIR}/${TABLENAME:S@%%PART%%@${i}@}${ENCEXT} >> ${.TARGET} + ${ESUBDIR}/${TABLENAME:S@%%PART%%@${i}@:S/:/@/}${ENCEXT} >> ${.TARGET} printf "%-32s%-32s%s\n" UCS/${ENCID:S@%%PART%%@${i}@} ${MAPPER} \ - ${REVSYMBOL}${ESUBDIR}/${RTABLENAME:S@%%PART%%@${i}@}${ENCEXT} >> ${.TARGET} + ${REVSYMBOL}${ESUBDIR}/${RTABLENAME:S@%%PART%%@${i}@:S/:/@/}${ENCEXT} >> ${.TARGET} .endfor echo >> ${.TARGET} .else @@ -59,13 +59,13 @@ CLEANFILES+= charset.pivot.${ESUBDIR} .if !defined(MAPS) .for i in ${PART} -.if exists(${TABLENAME:S@%%PART%%@${i}@}.src) -FILES+= ${TABLENAME:S@%%PART%%@${i}@}.mps -CLEANFILES+= ${TABLENAME:S@%%PART%%@${i}@}.mps -.endif -.if exists(${RTABLENAME:S@%%PART%%@${i}@}.src) -FILES+= ${RTABLENAME:S@%%PART%%@${i}@}.mps -CLEANFILES+= ${RTABLENAME:S@%%PART%%@${i}@}.mps +.if exists(${TABLENAME:S@%%PART%%@${i}@:S/:/@/}.src) +FILES+= ${TABLENAME:S@%%PART%%@${i}@:S/:/@/}.mps +CLEANFILES+= ${TABLENAME:S@%%PART%%@${i}@:S/:/@/}.mps +.endif +.if exists(${RTABLENAME:S@%%PART%%@${i}@:S/:/@/}.src) +FILES+= ${RTABLENAME:S@%%PART%%@${i}@:S/:/@/}.mps +CLEANFILES+= ${RTABLENAME:S@%%PART%%@${i}@:S/:/@/}.mps .endif .endfor .else From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 17:59:45 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 4F33B87C; Sat, 5 Jan 2013 17:59:45 +0000 (UTC) (envelope-from kientzle@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 28DBA986; Sat, 5 Jan 2013 17:59:45 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05HxjKn006612; Sat, 5 Jan 2013 17:59:45 GMT (envelope-from kientzle@svn.freebsd.org) Received: (from kientzle@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05HxiOX006608; Sat, 5 Jan 2013 17:59:44 GMT (envelope-from kientzle@svn.freebsd.org) Message-Id: <201301051759.r05HxiOX006608@svn.freebsd.org> From: Tim Kientzle Date: Sat, 5 Jan 2013 17:59:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245064 - head/sys/arm/ti/cpsw X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 17:59:45 -0000 Author: kientzle Date: Sat Jan 5 17:59:44 2013 New Revision: 245064 URL: http://svnweb.freebsd.org/changeset/base/245064 Log: While trying to track down the root cause for TX stalls in this driver, I've also had some time to evaluate the effectiveness of different watchdog strategies. This is the latest attempt, which consolidates all of the watchdog logic in one place and consistently detects TX stalls and resets within a couple of seconds. Modified: head/sys/arm/ti/cpsw/if_cpsw.c head/sys/arm/ti/cpsw/if_cpswvar.h Modified: head/sys/arm/ti/cpsw/if_cpsw.c ============================================================================== --- head/sys/arm/ti/cpsw/if_cpsw.c Sat Jan 5 17:41:21 2013 (r245063) +++ head/sys/arm/ti/cpsw/if_cpsw.c Sat Jan 5 17:59:44 2013 (r245064) @@ -98,7 +98,7 @@ static int cpsw_ioctl(struct ifnet *ifp, static int cpsw_init_slot_lists(struct cpsw_softc *sc); static void cpsw_free_slot(struct cpsw_softc *sc, struct cpsw_slot *slot); static void cpsw_fill_rx_queue_locked(struct cpsw_softc *sc); -static void cpsw_watchdog(struct cpsw_softc *sc); +static void cpsw_tx_watchdog(struct cpsw_softc *sc); static void cpsw_intr_rx_thresh(void *arg); static void cpsw_intr_rx(void *arg); @@ -737,13 +737,7 @@ cpsw_start_locked(struct ifnet *ifp) cpsw_cpdma_write_txbd_next(prev_slot->index, cpsw_cpdma_txbd_paddr(first_new_slot->index)); } - /* If tx_retires hasn't changed, then we may have - lost a TX interrupt, so let the timer tick. */ sc->tx_enqueues += enqueued; - if (sc->tx_retires_at_wd_reset != sc->tx_retires) { - sc->tx_retires_at_wd_reset = sc->tx_retires; - sc->wd_timer = 5; - } sc->tx_queued += enqueued; if (sc->tx_queued > sc->tx_max_queued) { sc->tx_max_queued = sc->tx_queued; @@ -771,7 +765,6 @@ cpsw_stop_locked(struct cpsw_softc *sc) /* Stop tick engine */ callout_stop(&sc->wd_callout); - sc->wd_timer = 0; /* Wait for hardware to clear pending ops. */ CPSW_GLOBAL_UNLOCK(sc); @@ -1185,7 +1178,6 @@ cpsw_intr_tx_locked(void *arg) } sc->tx_retires += retires; sc->tx_queued -= retires; - sc->wd_timer = 0; } } @@ -1206,7 +1198,7 @@ cpsw_tick(void *msc) struct cpsw_softc *sc = msc; /* Check for TX timeout */ - cpsw_watchdog(sc); + cpsw_tx_watchdog(sc); mii_tick(sc->mii); @@ -1222,21 +1214,28 @@ cpsw_tick(void *msc) } static void -cpsw_watchdog(struct cpsw_softc *sc) +cpsw_tx_watchdog(struct cpsw_softc *sc) { - struct ifnet *ifp; + struct ifnet *ifp = sc->ifp; - ifp = sc->ifp; CPSW_GLOBAL_LOCK(sc); - if (sc->wd_timer == 0 || --sc->wd_timer) { - CPSW_GLOBAL_UNLOCK(sc); - return; + if (sc->tx_retires > sc->tx_retires_at_last_tick) { + sc->tx_wd_timer = 0; /* Stuff got sent. */ + } else if (sc->tx_queued == 0) { + sc->tx_wd_timer = 0; /* Nothing to send. */ + } else { + /* There was something to send but we didn't. */ + ++sc->tx_wd_timer; + if (sc->tx_wd_timer > 3) { + sc->tx_wd_timer = 0; + ifp->if_oerrors++; + if_printf(ifp, "watchdog timeout\n"); + cpsw_stop_locked(sc); + cpsw_init_locked(sc); + CPSW_DEBUGF(("watchdog reset completed\n")); + } } - - ifp->if_oerrors++; - if_printf(ifp, "watchdog timeout\n"); - cpsw_stop_locked(sc); - cpsw_init_locked(sc); + sc->tx_retires_at_last_tick = sc->tx_retires; CPSW_GLOBAL_UNLOCK(sc); } @@ -1381,7 +1380,7 @@ cpsw_init_locked(void *arg) /* Activate network interface */ sc->rx_running = 1; sc->tx_running = 1; - sc->wd_timer = 0; + sc->tx_wd_timer = 0; callout_reset(&sc->wd_callout, hz, cpsw_tick, sc); sc->ifp->if_drv_flags |= IFF_DRV_RUNNING; sc->ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; Modified: head/sys/arm/ti/cpsw/if_cpswvar.h ============================================================================== --- head/sys/arm/ti/cpsw/if_cpswvar.h Sat Jan 5 17:41:21 2013 (r245063) +++ head/sys/arm/ti/cpsw/if_cpswvar.h Sat Jan 5 17:59:44 2013 (r245064) @@ -63,7 +63,7 @@ struct cpsw_softc { int cpsw_media_status; struct callout wd_callout; - int wd_timer; + int tx_wd_timer; bus_dma_tag_t mbuf_dtag; @@ -82,7 +82,7 @@ struct cpsw_softc { /* Statistics */ uint32_t tx_enqueues; /* total TX bufs added to queue */ uint32_t tx_retires; /* total TX bufs removed from queue */ - uint32_t tx_retires_at_wd_reset; /* used for watchdog */ + uint32_t tx_retires_at_last_tick; /* used for watchdog */ /* Note: tx_queued != tx_enqueues - tx_retires At driver reset, packets can be discarded from TX queue without being retired. */ From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 18:48:24 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A3048AC7; Sat, 5 Jan 2013 18:48:24 +0000 (UTC) (envelope-from neel@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 91738D22; Sat, 5 Jan 2013 18:48:24 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05ImOx6021376; Sat, 5 Jan 2013 18:48:24 GMT (envelope-from neel@svn.freebsd.org) Received: (from neel@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05ImOeG021375; Sat, 5 Jan 2013 18:48:24 GMT (envelope-from neel@svn.freebsd.org) Message-Id: <201301051848.r05ImOeG021375@svn.freebsd.org> From: Neel Natu Date: Sat, 5 Jan 2013 18:48:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245065 - head/sys/dev/pci X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 18:48:24 -0000 Author: neel Date: Sat Jan 5 18:48:23 2013 New Revision: 245065 URL: http://svnweb.freebsd.org/changeset/base/245065 Log: Add quirk to indicate that the bhyve hostbridge is capable of supporting MSI and MSI-X even though it does not advertise the PCI-E capability itself. Obtained from: NetApp Modified: head/sys/dev/pci/pci.c Modified: head/sys/dev/pci/pci.c ============================================================================== --- head/sys/dev/pci/pci.c Sat Jan 5 17:59:44 2013 (r245064) +++ head/sys/dev/pci/pci.c Sat Jan 5 18:48:23 2013 (r245065) @@ -244,6 +244,7 @@ static const struct pci_quirk pci_quirks * but support MSI just fine. QEMU uses the Intel 82440. */ { 0x12378086, PCI_QUIRK_ENABLE_MSI_VM, 0, 0 }, + { 0x12751275, PCI_QUIRK_ENABLE_MSI_VM, 0, 0 }, /* bhyve */ /* * HPET MMIO base address may appear in Bar1 for AMD SB600 SMBus From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 19:18:51 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A1BF6402; Sat, 5 Jan 2013 19:18:51 +0000 (UTC) (envelope-from neel@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8FD2FE94; Sat, 5 Jan 2013 19:18:51 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05JIpFT030510; Sat, 5 Jan 2013 19:18:51 GMT (envelope-from neel@svn.freebsd.org) Received: (from neel@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05JIptx030509; Sat, 5 Jan 2013 19:18:51 GMT (envelope-from neel@svn.freebsd.org) Message-Id: <201301051918.r05JIptx030509@svn.freebsd.org> From: Neel Natu Date: Sat, 5 Jan 2013 19:18:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245066 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 19:18:51 -0000 Author: neel Date: Sat Jan 5 19:18:50 2013 New Revision: 245066 URL: http://svnweb.freebsd.org/changeset/base/245066 Log: Teach the kernel to recognize that it is executing inside a bhyve virtual machine. Obtained from: NetApp Modified: head/sys/kern/subr_param.c Modified: head/sys/kern/subr_param.c ============================================================================== --- head/sys/kern/subr_param.c Sat Jan 5 18:48:23 2013 (r245065) +++ head/sys/kern/subr_param.c Sat Jan 5 19:18:50 2013 (r245066) @@ -160,6 +160,7 @@ static const char *const vm_bnames[] = { "Plex86", /* Plex86 */ "Bochs", /* Bochs */ "Xen", /* Xen */ + "BHYVE", /* bhyve */ NULL }; From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 20:07:29 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 24CBCA1D; Sat, 5 Jan 2013 20:07:29 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E76F5A2; Sat, 5 Jan 2013 20:07:28 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05K7S1o044991; Sat, 5 Jan 2013 20:07:28 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05K7S0G044990; Sat, 5 Jan 2013 20:07:28 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201301052007.r05K7S0G044990@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Sat, 5 Jan 2013 20:07:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245067 - stable/9/sys/netinet6 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 20:07:29 -0000 Author: ae Date: Sat Jan 5 20:07:28 2013 New Revision: 245067 URL: http://svnweb.freebsd.org/changeset/base/245067 Log: MFC r244439: The selectroute function does own account of EHOSTUNREACH errors, no need to do it twice. MFC r244440: Make dst_sa initialization only when it is actually needed. MFC r244441: When we have some address to forward (e.g. it was specified with ipfw fwd), we should pass it as first argument into in6_selectroute_fib function to initiate new route lookup. Sponsored by: Yandex LLC Modified: stable/9/sys/netinet6/ip6_output.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/netinet6/ip6_output.c ============================================================================== --- stable/9/sys/netinet6/ip6_output.c Sat Jan 5 19:18:50 2013 (r245066) +++ stable/9/sys/netinet6/ip6_output.c Sat Jan 5 20:07:28 2013 (r245067) @@ -257,7 +257,7 @@ ip6_output(struct mbuf *m0, struct ip6_p int segleft_org = 0; struct secpolicy *sp = NULL; #endif /* IPSEC */ - struct m_tag *fwd_tag; + struct m_tag *fwd_tag = NULL; ip6 = mtod(m, struct ip6_hdr *); if (ip6 == NULL) { @@ -636,26 +636,23 @@ again: /* adjust pointer */ ip6 = mtod(m, struct ip6_hdr *); - bzero(&dst_sa, sizeof(dst_sa)); - dst_sa.sin6_family = AF_INET6; - dst_sa.sin6_len = sizeof(dst_sa); - dst_sa.sin6_addr = ip6->ip6_dst; - if (ro->ro_rt) { + if (ro->ro_rt && fwd_tag == NULL) { rt = ro->ro_rt; ifp = ro->ro_rt->rt_ifp; - } else if ((error = in6_selectroute_fib(&dst_sa, opt, im6o, ro, - &ifp, &rt, inp ? inp->inp_inc.inc_fibnum : M_GETFIB(m))) != 0) { - switch (error) { - case EHOSTUNREACH: - V_ip6stat.ip6s_noroute++; - break; - case EADDRNOTAVAIL: - default: - break; /* XXX statistics? */ + } else { + if (fwd_tag == NULL) { + bzero(&dst_sa, sizeof(dst_sa)); + dst_sa.sin6_family = AF_INET6; + dst_sa.sin6_len = sizeof(dst_sa); + dst_sa.sin6_addr = ip6->ip6_dst; + } + error = in6_selectroute_fib(&dst_sa, opt, im6o, ro, &ifp, + &rt, inp ? inp->inp_inc.inc_fibnum : M_GETFIB(m)); + if (error != 0) { + if (ifp != NULL) + in6_ifstat_inc(ifp, ifs6_out_discard); + goto bad; } - if (ifp != NULL) - in6_ifstat_inc(ifp, ifs6_out_discard); - goto bad; } if (rt == NULL) { /* @@ -933,7 +930,7 @@ again: if ((m->m_flags & M_IP6_NEXTHOP) && (fwd_tag = m_tag_find(m, PACKET_TAG_IPFORWARD, NULL)) != NULL) { dst = (struct sockaddr_in6 *)&ro->ro_dst; - bcopy((fwd_tag+1), dst, sizeof(struct sockaddr_in6)); + bcopy((fwd_tag+1), &dst_sa, sizeof(struct sockaddr_in6)); m->m_flags |= M_SKIP_FIREWALL; m->m_flags &= ~M_IP6_NEXTHOP; m_tag_delete(m, fwd_tag); From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 20:30:10 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id EF028CF5; Sat, 5 Jan 2013 20:30:10 +0000 (UTC) (envelope-from kientzle@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id D65D613E; Sat, 5 Jan 2013 20:30:10 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05KUAa8051422; Sat, 5 Jan 2013 20:30:10 GMT (envelope-from kientzle@svn.freebsd.org) Received: (from kientzle@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05KUArt051421; Sat, 5 Jan 2013 20:30:10 GMT (envelope-from kientzle@svn.freebsd.org) Message-Id: <201301052030.r05KUArt051421@svn.freebsd.org> From: Tim Kientzle Date: Sat, 5 Jan 2013 20:30:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245068 - head/sys/arm/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 20:30:11 -0000 Author: kientzle Date: Sat Jan 5 20:30:10 2013 New Revision: 245068 URL: http://svnweb.freebsd.org/changeset/base/245068 Log: Prefer the new NFS modules Modified: head/sys/arm/conf/BEAGLEBONE Modified: head/sys/arm/conf/BEAGLEBONE ============================================================================== --- head/sys/arm/conf/BEAGLEBONE Sat Jan 5 20:07:28 2013 (r245067) +++ head/sys/arm/conf/BEAGLEBONE Sat Jan 5 20:30:10 2013 (r245068) @@ -62,11 +62,11 @@ options WITNESS_SKIPSPIN #Don't run wit # NFS support #options NFSCL -#options NFSSERVER #Network Filesystem Server -#options NFSCLIENT #Network Filesystem Client +#options NFSD +#options NFSLOCKD # Uncomment this for NFS root -#options NFS_ROOT #NFS usable as /, requires NFSCLIENT +#options NFS_ROOT #NFS usable as /, requires NFSCL #options BOOTP_NFSROOT #options BOOTP_COMPAT #options BOOTP From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 20:35:39 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 154B7E87; Sat, 5 Jan 2013 20:35:39 +0000 (UTC) (envelope-from pawel@dawidek.net) Received: from mail.dawidek.net (garage.dawidek.net [91.121.88.72]) by mx1.freebsd.org (Postfix) with ESMTP id 3734C15D; Sat, 5 Jan 2013 20:35:38 +0000 (UTC) Received: from localhost (89-73-195-149.dynamic.chello.pl [89.73.195.149]) by mail.dawidek.net (Postfix) with ESMTPSA id 991E28E; Sat, 5 Jan 2013 21:33:16 +0100 (CET) Date: Sat, 5 Jan 2013 21:35:35 +0100 From: Pawel Jakub Dawidek To: Nathan Whitehorn Subject: Re: svn commit: r244585 - in head: . sys/geom/label Message-ID: <20130105203534.GF1390@garage.freebsd.pl> References: <201212221343.qBMDhCHa086834@svn.freebsd.org> <201301041218.07804.john@baldwin.cx> <50E71033.3040702@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="pmKUVAsxJ35RhmJn" Content-Disposition: inline In-Reply-To: <50E71033.3040702@freebsd.org> X-OS: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: John Baldwin , Jaakko Heinonen , svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-head@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 20:35:39 -0000 --pmKUVAsxJ35RhmJn Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jan 04, 2013 at 12:24:03PM -0500, Nathan Whitehorn wrote: > On 01/04/13 12:18, John Baldwin wrote: > > On Saturday, December 22, 2012 08:43:12 AM Jaakko Heinonen wrote: > >> Author: jh > >> Date: Sat Dec 22 13:43:12 2012 > >> New Revision: 244585 > >> URL: http://svnweb.freebsd.org/changeset/base/244585 > >> > >> Log: > >> Mangle label names containing spaces, non-printable characters '%' or > >> '"'. Mangling is only done for label names read from file system > >> metadata. Encoding resembles URL encoding. For example, the space > >> character becomes %20. > >> > >> Help by: kib > >> Discussed with: imp, kib, pjd > > Ouch, mangling spaces seems unfortunate. I guess fixing the devctl pro= tocol=20 > > is too hard, and/or we can't just encode it at the protocol layer but l= eave=20 > > the actual device names untouched? OS X preserves spaces in volume nam= es and=20 > > those can be quite common on ISO images, so mangling them really does s= eem to=20 > > be a shame if we can avoid it. > > >=20 > On a related note, it would be *really* helpful if gpart labels were > actually managed by gpart. This kind of thing makes predicting the path > of a newly-labeled GPT partition extremely hard and, combined with race > conditions and synchronization issues in glabel updating in response to > changes in gpart, is why the installer doesn't use labels in fstab. I fully agree that gpart should manage GEOM providers based on labels on its own, especially that it doesn't update label by writing to underlying provider, so GEOM tasting cannot tell glabel about changes. --=20 Pawel Jakub Dawidek http://www.wheelsystems.com FreeBSD committer http://www.FreeBSD.org Am I Evil? Yes, I Am! http://tupytaj.pl --pmKUVAsxJ35RhmJn Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAlDojpYACgkQForvXbEpPzS/CgCgvmIykrzHsdOBmFVvVZAGYsS+ 054AmwTckQoNGXYZuSLWSI8/N4bsdHN6 =tvXp -----END PGP SIGNATURE----- --pmKUVAsxJ35RhmJn-- From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 20:37:41 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 6F3E819C; Sat, 5 Jan 2013 20:37:41 +0000 (UTC) (envelope-from kientzle@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 52BC1177; Sat, 5 Jan 2013 20:37:41 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05Kbfq0053880; Sat, 5 Jan 2013 20:37:41 GMT (envelope-from kientzle@svn.freebsd.org) Received: (from kientzle@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05KbfXW053879; Sat, 5 Jan 2013 20:37:41 GMT (envelope-from kientzle@svn.freebsd.org) Message-Id: <201301052037.r05KbfXW053879@svn.freebsd.org> From: Tim Kientzle Date: Sat, 5 Jan 2013 20:37:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245070 - head/sys/arm/ti/cpsw X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 20:37:41 -0000 Author: kientzle Date: Sat Jan 5 20:37:40 2013 New Revision: 245070 URL: http://svnweb.freebsd.org/changeset/base/245070 Log: Shuffle the TX underrun to work the same way as the RX underrun, as suggested by YongHyeon PYUN. Modified: head/sys/arm/ti/cpsw/if_cpsw.c Modified: head/sys/arm/ti/cpsw/if_cpsw.c ============================================================================== --- head/sys/arm/ti/cpsw/if_cpsw.c Sat Jan 5 20:37:14 2013 (r245069) +++ head/sys/arm/ti/cpsw/if_cpsw.c Sat Jan 5 20:37:40 2013 (r245070) @@ -716,26 +716,22 @@ cpsw_start_locked(struct ifnet *ifp) if (STAILQ_EMPTY(&newslots)) return; - /* Attach new segments to the hardware TX queue. */ + /* Attach the list of new buffers to the hardware TX queue. */ prev_slot = STAILQ_LAST(&sc->tx_active, cpsw_slot, next); first_new_slot = STAILQ_FIRST(&newslots); STAILQ_CONCAT(&sc->tx_active, &newslots); if (prev_slot == NULL) { /* Start the TX queue fresh. */ cpsw_write_4(CPSW_CPDMA_TX_HDP(0), - cpsw_cpdma_txbd_paddr(first_new_slot->index)); + cpsw_cpdma_txbd_paddr(first_new_slot->index)); } else { - /* Add packets to current queue. */ - /* Race: The hardware might have sent the last packet - * on the queue and stopped the transmitter just - * before we got here. In that case, this is a no-op, - * but it also means there's a TX interrupt waiting - * to be processed as soon as we release the lock here. - * That TX interrupt can detect and recover from this - * situation; see cpsw_intr_tx_locked. - */ + /* Add buffers to end of current queue. */ cpsw_cpdma_write_txbd_next(prev_slot->index, cpsw_cpdma_txbd_paddr(first_new_slot->index)); + /* If underrun, restart queue. */ + if (cpsw_cpdma_read_txbd_flags(prev_slot->index) & CPDMA_BD_EOQ) + cpsw_write_4(CPSW_CPDMA_TX_HDP(0), + cpsw_cpdma_txbd_paddr(first_new_slot->index)); } sc->tx_enqueues += enqueued; sc->tx_queued += enqueued; @@ -1091,14 +1087,10 @@ cpsw_fill_rx_queue_locked(struct cpsw_so cpsw_write_4(CPSW_CPDMA_RX_HDP(0), cpsw_cpdma_rxbd_paddr(next_slot->index)); } else { - /* Extend an existing RX queue. */ + /* Add buffers to end of current queue. */ cpsw_cpdma_write_rxbd_next(prev_slot->index, cpsw_cpdma_rxbd_paddr(next_slot->index)); - /* XXX Order matters: Previous write must complete - before next read begins in order to avoid an - end-of-queue race. I think bus_write and bus_read have - sufficient barriers built-in to ensure this. XXX */ - /* If old RX queue was stopped, restart it. */ + /* If underrun, restart queue. */ if (cpsw_cpdma_read_rxbd_flags(prev_slot->index) & CPDMA_BD_EOQ) { cpsw_write_4(CPSW_CPDMA_RX_HDP(0), cpsw_cpdma_rxbd_paddr(next_slot->index)); @@ -1170,12 +1162,6 @@ cpsw_intr_tx_locked(void *arg) /* Tell hardware the last item we dequeued. */ cpsw_write_4(CPSW_CPDMA_TX_CP(0), cpsw_cpdma_txbd_paddr(last_slot->index)); - /* If transmitter stopped and there's more, restart it. */ - /* This resolves the race described in tx_start above. */ - if ((last_flags & CPDMA_BD_EOQ) && (slot != NULL)) { - cpsw_write_4(CPSW_CPDMA_TX_HDP(0), - cpsw_cpdma_txbd_paddr(slot->index)); - } sc->tx_retires += retires; sc->tx_queued -= retires; } From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 21:05:17 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 59926A28; Sat, 5 Jan 2013 21:05:17 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 33D1D37C; Sat, 5 Jan 2013 21:05:17 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05L5HU6062564; Sat, 5 Jan 2013 21:05:17 GMT (envelope-from gonzo@svn.freebsd.org) Received: (from gonzo@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05L5GQU062562; Sat, 5 Jan 2013 21:05:16 GMT (envelope-from gonzo@svn.freebsd.org) Message-Id: <201301052105.r05L5GQU062562@svn.freebsd.org> From: Oleksandr Tymoshenko Date: Sat, 5 Jan 2013 21:05:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245071 - in head/sys/arm: broadcom/bcm2835 versatile X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 21:05:17 -0000 Author: gonzo Date: Sat Jan 5 21:05:16 2013 New Revision: 245071 URL: http://svnweb.freebsd.org/changeset/base/245071 Log: Fix background color calculation Spotted by: ray@ Modified: head/sys/arm/broadcom/bcm2835/bcm2835_fb.c head/sys/arm/versatile/versatile_clcd.c Modified: head/sys/arm/broadcom/bcm2835/bcm2835_fb.c ============================================================================== --- head/sys/arm/broadcom/bcm2835/bcm2835_fb.c Sat Jan 5 20:37:40 2013 (r245070) +++ head/sys/arm/broadcom/bcm2835/bcm2835_fb.c Sat Jan 5 21:05:16 2013 (r245071) @@ -891,7 +891,7 @@ bcmfb_putc(video_adapter_t *adp, vm_offs + (sc->depth/8) * (col + sc->xmargin); fg = a & 0xf ; - bg = (a >> 8) & 0xf; + bg = (a >> 4) & 0xf; for (i = 0; i < BCMFB_FONT_HEIGHT; i++) { for (j = 0, k = 7; j < 8; j++, k--) { Modified: head/sys/arm/versatile/versatile_clcd.c ============================================================================== --- head/sys/arm/versatile/versatile_clcd.c Sat Jan 5 20:37:40 2013 (r245070) +++ head/sys/arm/versatile/versatile_clcd.c Sat Jan 5 21:05:16 2013 (r245071) @@ -892,7 +892,7 @@ versatilefb_putc(video_adapter_t *adp, v + (sc->depth/8) * (col + sc->xmargin); fg = a & 0xf ; - bg = (a >> 8) & 0xf; + bg = (a >> 4) & 0xf; for (i = 0; i < VERSATILE_FONT_HEIGHT; i++) { for (j = 0, k = 7; j < 8; j++, k--) { From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 21:42:15 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 6E377139; Sat, 5 Jan 2013 21:42:15 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 60F32772; Sat, 5 Jan 2013 21:42:15 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05LgF6l073907; Sat, 5 Jan 2013 21:42:15 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05LgFiZ073905; Sat, 5 Jan 2013 21:42:15 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201301052142.r05LgFiZ073905@svn.freebsd.org> From: Konstantin Belousov Date: Sat, 5 Jan 2013 21:42:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245072 - head/sbin/geom/class/journal X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 21:42:15 -0000 Author: kib Date: Sat Jan 5 21:42:14 2013 New Revision: 245072 URL: http://svnweb.freebsd.org/changeset/base/245072 Log: Do not round up the size of the UFS filesystem to the fragment size when comparing its size with the size of the media, to determine if the last disk block is unused. Submitted by: Andreas Longwitz Reviewed by: pjd MFC after: 2 weeks Modified: head/sbin/geom/class/journal/geom_journal_ufs.c Modified: head/sbin/geom/class/journal/geom_journal_ufs.c ============================================================================== --- head/sbin/geom/class/journal/geom_journal_ufs.c Sat Jan 5 21:05:16 2013 (r245071) +++ head/sbin/geom/class/journal/geom_journal_ufs.c Sat Jan 5 21:42:14 2013 (r245072) @@ -70,9 +70,9 @@ g_journal_ufs_using_last_sector(const ch fs = read_superblock(prov); if (fs == NULL) return (0); - /* Provider size in 512 bytes blocks. */ - psize = g_get_mediasize(prov) / DEV_BSIZE; - /* File system size in 512 bytes blocks. */ - fssize = fsbtodb(fs, dbtofsb(fs, psize)); - return (psize == fssize); + /* Provider size in 512 bytes blocks. */ + psize = g_get_mediasize(prov) / DEV_BSIZE; + /* File system size in 512 bytes blocks. */ + fssize = fsbtodb(fs, fs->fs_size); + return (psize <= fssize); } From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 21:52:39 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 9F4AB4BF; Sat, 5 Jan 2013 21:52:39 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8751D7C5; Sat, 5 Jan 2013 21:52:39 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05LqdRr076862; Sat, 5 Jan 2013 21:52:39 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05LqdPs076861; Sat, 5 Jan 2013 21:52:39 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201301052152.r05LqdPs076861@svn.freebsd.org> From: Konstantin Belousov Date: Sat, 5 Jan 2013 21:52:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245074 - head/sbin/geom/class/journal X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 21:52:39 -0000 Author: kib Date: Sat Jan 5 21:52:38 2013 New Revision: 245074 URL: http://svnweb.freebsd.org/changeset/base/245074 Log: Use tabs for indentation. MFC after: 2 weeks Modified: head/sbin/geom/class/journal/geom_journal_ufs.c Modified: head/sbin/geom/class/journal/geom_journal_ufs.c ============================================================================== --- head/sbin/geom/class/journal/geom_journal_ufs.c Sat Jan 5 21:52:01 2013 (r245073) +++ head/sbin/geom/class/journal/geom_journal_ufs.c Sat Jan 5 21:52:38 2013 (r245074) @@ -70,9 +70,9 @@ g_journal_ufs_using_last_sector(const ch fs = read_superblock(prov); if (fs == NULL) return (0); - /* Provider size in 512 bytes blocks. */ - psize = g_get_mediasize(prov) / DEV_BSIZE; - /* File system size in 512 bytes blocks. */ - fssize = fsbtodb(fs, fs->fs_size); - return (psize <= fssize); + /* Provider size in 512 bytes blocks. */ + psize = g_get_mediasize(prov) / DEV_BSIZE; + /* File system size in 512 bytes blocks. */ + fssize = fsbtodb(fs, fs->fs_size); + return (psize <= fssize); } From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 22:04:40 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id DC938925; Sat, 5 Jan 2013 22:04:40 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id CDC7E843; Sat, 5 Jan 2013 22:04:40 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05M4en0080199; Sat, 5 Jan 2013 22:04:40 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05M4euk080198; Sat, 5 Jan 2013 22:04:40 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201301052204.r05M4euk080198@svn.freebsd.org> From: Mark Johnston Date: Sat, 5 Jan 2013 22:04:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245075 - head/usr.bin/grep/regex X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 22:04:40 -0000 Author: markj Date: Sat Jan 5 22:04:40 2013 New Revision: 245075 URL: http://svnweb.freebsd.org/changeset/base/245075 Log: Fix a segfault when bsdgrep -i is given an empty pattern string. PR: bin/172865 Reviewed by: gabor Approved by: emaste (co-mentor) MFC after: 1 week Modified: head/usr.bin/grep/regex/tre-fastmatch.c Modified: head/usr.bin/grep/regex/tre-fastmatch.c ============================================================================== --- head/usr.bin/grep/regex/tre-fastmatch.c Sat Jan 5 21:52:38 2013 (r245074) +++ head/usr.bin/grep/regex/tre-fastmatch.c Sat Jan 5 22:04:40 2013 (r245075) @@ -468,7 +468,7 @@ static int fastcmp(const fastmatch_t *fg fg->nosub = (cflags & REG_NOSUB); \ \ /* Cannot handle REG_ICASE with MB string */ \ - if (fg->icase && (TRE_MB_CUR_MAX > 1)) \ + if (fg->icase && (TRE_MB_CUR_MAX > 1) && n > 0) \ { \ DPRINT(("Cannot use fast matcher for MBS with REG_ICASE\n")); \ return REG_BADPAT; \ From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 22:55:09 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7FBDCF1F; Sat, 5 Jan 2013 22:55:09 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 6260A968; Sat, 5 Jan 2013 22:55:09 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05Mt9gW094992; Sat, 5 Jan 2013 22:55:09 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05Mt8Ym094989; Sat, 5 Jan 2013 22:55:08 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201301052255.r05Mt8Ym094989@svn.freebsd.org> From: Mark Johnston Date: Sat, 5 Jan 2013 22:55:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r245076 - stable/9/usr.sbin/rarpd X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 22:55:09 -0000 Author: markj Date: Sat Jan 5 22:55:08 2013 New Revision: 245076 URL: http://svnweb.freebsd.org/changeset/base/245076 Log: - Add IFT_L2VLAN (vlan(4)) support. - Add a -P option to support PID files. When -a is specified /var/run/rarpd.pid is used by default, and when an interface is specified /var/run/rarpd..pid is used by default. Approved by: hrs, emaste (co-mentor) Modified: stable/9/usr.sbin/rarpd/Makefile stable/9/usr.sbin/rarpd/rarpd.8 stable/9/usr.sbin/rarpd/rarpd.c Directory Properties: stable/9/usr.sbin/rarpd/ (props changed) Modified: stable/9/usr.sbin/rarpd/Makefile ============================================================================== --- stable/9/usr.sbin/rarpd/Makefile Sat Jan 5 22:04:40 2013 (r245075) +++ stable/9/usr.sbin/rarpd/Makefile Sat Jan 5 22:55:08 2013 (r245076) @@ -4,6 +4,9 @@ PROG= rarpd MAN= rarpd.8 +DPADD= ${LIBUTIL} +LDADD= -lutil + WARNS?= 3 # This breaks with format strings returned by expand_syslog_m().. argh! #FORMAT_AUDIT?= 1 Modified: stable/9/usr.sbin/rarpd/rarpd.8 ============================================================================== --- stable/9/usr.sbin/rarpd/rarpd.8 Sat Jan 5 22:04:40 2013 (r245075) +++ stable/9/usr.sbin/rarpd/rarpd.8 Sat Jan 5 22:55:08 2013 (r245076) @@ -16,7 +16,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 16, 2001 +.Dd July 9, 2012 .Dt RARPD 8 .Os .Sh NAME @@ -27,9 +27,11 @@ .Fl a .Op Fl dfsv .Op Fl t Ar directory +.Op Fl P Ar pidfile .Nm .Op Fl dfsv .Op Fl t Ar directory +.Op Fl P Ar pidfile .Ar interface .Sh DESCRIPTION The @@ -92,6 +94,15 @@ instead of via .Xr syslog 3 . .It Fl f Run in the foreground. +.It Fl P +Specify the pathname of the PID file. +If not specified, +.Pa /var/run/rarpd.pid +or +.Pa /var/run/rarpd.ifname.pid +will be used depending on the +.Fl a +flag or the specified interface name. .It Fl s Supply a response to any RARP request for which an ethernet to IP address mapping exists; do not depend on the existence of @@ -115,6 +126,7 @@ Enable verbose syslogging. .It Pa /etc/ethers .It Pa /etc/hosts .It Pa /tftpboot +.It Pa /var/run/rarpd.pid .El .Sh SEE ALSO .Xr bpf 4 Modified: stable/9/usr.sbin/rarpd/rarpd.c ============================================================================== --- stable/9/usr.sbin/rarpd/rarpd.c Sat Jan 5 22:04:40 2013 (r245075) +++ stable/9/usr.sbin/rarpd/rarpd.c Sat Jan 5 22:55:08 2013 (r245076) @@ -27,8 +27,8 @@ __FBSDID("$FreeBSD$"); /* * rarpd - Reverse ARP Daemon * - * Usage: rarpd -a [-dfsv] [-t directory] [hostname] - * rarpd [-dfsv] [-t directory] interface [hostname] + * Usage: rarpd -a [-dfsv] [-t directory] [-P pidfile] [hostname] + * rarpd [-dfsv] [-t directory] [-P pidfile] interface [hostname] * * 'hostname' is optional solely for backwards compatibility with Sun's rarpd. * Currently, the argument is ignored. @@ -61,6 +61,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include /* Cast a struct sockaddr to a struct sockaddr_in */ #define SATOSIN(sa) ((struct sockaddr_in *)(sa)) @@ -99,6 +100,11 @@ int sflag; /* ignore /tftpboot */ static u_char zero[6]; +static char pidfile_buf[PATH_MAX]; +static char *pidfile; +#define RARPD_PIDFILE "/var/run/rarpd.%s.pid" +static struct pidfh *pidfile_fh; + static int bpf_open(void); static in_addr_t choose_ipaddr(in_addr_t **, in_addr_t, in_addr_t); static char *eatoa(u_char *); @@ -140,7 +146,7 @@ main(int argc, char *argv[]) openlog(name, LOG_PID | LOG_CONS, LOG_DAEMON); opterr = 0; - while ((op = getopt(argc, argv, "adfst:v")) != -1) + while ((op = getopt(argc, argv, "adfsP:t:v")) != -1) switch (op) { case 'a': ++aflag; @@ -158,6 +164,12 @@ main(int argc, char *argv[]) ++sflag; break; + case 'P': + strncpy(pidfile_buf, optarg, sizeof(pidfile_buf) - 1); + pidfile_buf[sizeof(pidfile_buf) - 1] = '\0'; + pidfile = pidfile_buf; + break; + case 't': tftp_dir = optarg; break; @@ -182,10 +194,23 @@ main(int argc, char *argv[]) init(ifname); if (!fflag) { + if (pidfile == NULL && ifname != NULL && aflag == 0) { + snprintf(pidfile_buf, sizeof(pidfile_buf) - 1, + RARPD_PIDFILE, ifname); + pidfile_buf[sizeof(pidfile_buf) - 1] = '\0'; + pidfile = pidfile_buf; + } + /* If pidfile == NULL, /var/run/.pid will be used. */ + pidfile_fh = pidfile_open(pidfile, 0600, NULL); + if (pidfile_fh == NULL) + logmsg(LOG_ERR, "Cannot open or create pidfile: %s", + (pidfile == NULL) ? "/var/run/rarpd.pid" : pidfile); if (daemon(0,0)) { logmsg(LOG_ERR, "cannot fork"); + pidfile_remove(pidfile_fh); exit(1); } + pidfile_write(pidfile_fh); } rarp_loop(); return(0); @@ -235,6 +260,7 @@ init_one(struct ifaddrs *ifa, char *targ ii = (struct if_info *)malloc(sizeof(*ii)); if (ii == NULL) { logmsg(LOG_ERR, "malloc: %m"); + pidfile_remove(pidfile_fh); exit(1); } bzero(ii, sizeof(*ii)); @@ -252,6 +278,7 @@ init_one(struct ifaddrs *ifa, char *targ ii2 = (struct if_info *)malloc(sizeof(*ii2)); if (ii2 == NULL) { logmsg(LOG_ERR, "malloc: %m"); + pidfile_remove(pidfile_fh); exit(1); } memcpy(ii2, ii, sizeof(*ii2)); @@ -274,8 +301,11 @@ init_one(struct ifaddrs *ifa, char *targ case AF_LINK: ll = (struct sockaddr_dl *)ifa->ifa_addr; - if (ll->sdl_type == IFT_ETHER) + switch (ll->sdl_type) { + case IFT_ETHER: + case IFT_L2VLAN: bcopy(LLADDR(ll), ii->ii_eaddr, 6); + } break; } } @@ -294,6 +324,7 @@ init(char *target) error = getifaddrs(&ifhead); if (error) { logmsg(LOG_ERR, "getifaddrs: %m"); + pidfile_remove(pidfile_fh); exit(1); } /* @@ -340,8 +371,8 @@ static void usage(void) { (void)fprintf(stderr, "%s\n%s\n", - "usage: rarpd -a [-dfsv] [-t directory]", - " rarpd [-dfsv] [-t directory] interface"); + "usage: rarpd -a [-dfsv] [-t directory] [-P pidfile]", + " rarpd [-dfsv] [-t directory] [-P pidfile] interface"); exit(1); } @@ -362,6 +393,7 @@ bpf_open(void) if (fd == -1) { logmsg(LOG_ERR, "%s: %m", device); + pidfile_remove(pidfile_fh); exit(1); } return fd; @@ -400,12 +432,12 @@ rarp_open(char *device) immediate = 1; if (ioctl(fd, BIOCIMMEDIATE, &immediate) == -1) { logmsg(LOG_ERR, "BIOCIMMEDIATE: %m"); - exit(1); + goto rarp_open_err; } strlcpy(ifr.ifr_name, device, sizeof(ifr.ifr_name)); if (ioctl(fd, BIOCSETIF, (caddr_t)&ifr) == -1) { logmsg(LOG_ERR, "BIOCSETIF: %m"); - exit(1); + goto rarp_open_err; } /* * Check that the data link layer is an Ethernet; this code won't @@ -413,20 +445,24 @@ rarp_open(char *device) */ if (ioctl(fd, BIOCGDLT, (caddr_t)&dlt) == -1) { logmsg(LOG_ERR, "BIOCGDLT: %m"); - exit(1); + goto rarp_open_err; } if (dlt != DLT_EN10MB) { logmsg(LOG_ERR, "%s is not an ethernet", device); - exit(1); + goto rarp_open_err; } /* * Set filter program. */ if (ioctl(fd, BIOCSETF, (caddr_t)&filter) == -1) { logmsg(LOG_ERR, "BIOCSETF: %m"); - exit(1); + goto rarp_open_err; } return fd; + +rarp_open_err: + pidfile_remove(pidfile_fh); + exit(1); } /* @@ -481,16 +517,16 @@ rarp_loop(void) if (iflist == NULL) { logmsg(LOG_ERR, "no interfaces"); - exit(1); + goto rarpd_loop_err; } if (ioctl(iflist->ii_fd, BIOCGBLEN, (caddr_t)&bufsize) == -1) { logmsg(LOG_ERR, "BIOCGBLEN: %m"); - exit(1); + goto rarpd_loop_err; } buf = malloc(bufsize); if (buf == NULL) { logmsg(LOG_ERR, "malloc: %m"); - exit(1); + goto rarpd_loop_err; } while (1) { @@ -510,7 +546,7 @@ rarp_loop(void) if (errno == EINTR) continue; logmsg(LOG_ERR, "select: %m"); - exit(1); + goto rarpd_loop_err; } for (ii = iflist; ii != NULL; ii = ii->ii_next) { fd = ii->ii_fd; @@ -538,6 +574,11 @@ rarp_loop(void) } } #undef bhp + return; + +rarpd_loop_err: + pidfile_remove(pidfile_fh); + exit(1); } /* @@ -563,12 +604,12 @@ rarp_bootable(in_addr_t addr) else { if (chdir(tftp_dir) == -1) { logmsg(LOG_ERR, "chdir: %s: %m", tftp_dir); - exit(1); + goto rarp_bootable_err; } d = opendir("."); if (d == NULL) { logmsg(LOG_ERR, "opendir: %m"); - exit(1); + goto rarp_bootable_err; } dd = d; } @@ -576,6 +617,10 @@ rarp_bootable(in_addr_t addr) if (strncmp(dent->d_name, ipname, 8) == 0) return 1; return 0; + +rarp_bootable_err: + pidfile_remove(pidfile_fh); + exit(1); } /* @@ -679,6 +724,7 @@ update_arptab(u_char *ep, in_addr_t ipad r = socket(PF_ROUTE, SOCK_RAW, 0); if (r == -1) { logmsg(LOG_ERR, "raw route socket: %m"); + pidfile_remove(pidfile_fh); exit(1); } pid = getpid(); From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 22:55:35 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 466B4FB; Sat, 5 Jan 2013 22:55:35 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2A59E96E; Sat, 5 Jan 2013 22:55:35 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05MtZiT095083; Sat, 5 Jan 2013 22:55:35 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05MtYp2095080; Sat, 5 Jan 2013 22:55:34 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201301052255.r05MtYp2095080@svn.freebsd.org> From: Mark Johnston Date: Sat, 5 Jan 2013 22:55:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r245077 - stable/8/usr.sbin/rarpd X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 22:55:35 -0000 Author: markj Date: Sat Jan 5 22:55:34 2013 New Revision: 245077 URL: http://svnweb.freebsd.org/changeset/base/245077 Log: - Add IFT_L2VLAN (vlan(4)) support. - Add a -P option to support PID files. When -a is specified /var/run/rarpd.pid is used by default, and when an interface is specified /var/run/rarpd..pid is used by default. Approved by: hrs, emaste (co-mentor) Modified: stable/8/usr.sbin/rarpd/Makefile stable/8/usr.sbin/rarpd/rarpd.8 stable/8/usr.sbin/rarpd/rarpd.c Directory Properties: stable/8/usr.sbin/rarpd/ (props changed) Modified: stable/8/usr.sbin/rarpd/Makefile ============================================================================== --- stable/8/usr.sbin/rarpd/Makefile Sat Jan 5 22:55:08 2013 (r245076) +++ stable/8/usr.sbin/rarpd/Makefile Sat Jan 5 22:55:34 2013 (r245077) @@ -4,6 +4,9 @@ PROG= rarpd MAN= rarpd.8 +DPADD= ${LIBUTIL} +LDADD= -lutil + WARNS?= 3 # This breaks with format strings returned by expand_syslog_m().. argh! #FORMAT_AUDIT?= 1 Modified: stable/8/usr.sbin/rarpd/rarpd.8 ============================================================================== --- stable/8/usr.sbin/rarpd/rarpd.8 Sat Jan 5 22:55:08 2013 (r245076) +++ stable/8/usr.sbin/rarpd/rarpd.8 Sat Jan 5 22:55:34 2013 (r245077) @@ -16,7 +16,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 16, 2001 +.Dd July 9, 2012 .Dt RARPD 8 .Os .Sh NAME @@ -27,9 +27,11 @@ .Fl a .Op Fl dfsv .Op Fl t Ar directory +.Op Fl P Ar pidfile .Nm .Op Fl dfsv .Op Fl t Ar directory +.Op Fl P Ar pidfile .Ar interface .Sh DESCRIPTION The @@ -92,6 +94,15 @@ instead of via .Xr syslog 3 . .It Fl f Run in the foreground. +.It Fl P +Specify the pathname of the PID file. +If not specified, +.Pa /var/run/rarpd.pid +or +.Pa /var/run/rarpd.ifname.pid +will be used depending on the +.Fl a +flag or the specified interface name. .It Fl s Supply a response to any RARP request for which an ethernet to IP address mapping exists; do not depend on the existence of @@ -115,6 +126,7 @@ Enable verbose syslogging. .It Pa /etc/ethers .It Pa /etc/hosts .It Pa /tftpboot +.It Pa /var/run/rarpd.pid .El .Sh SEE ALSO .Xr bpf 4 Modified: stable/8/usr.sbin/rarpd/rarpd.c ============================================================================== --- stable/8/usr.sbin/rarpd/rarpd.c Sat Jan 5 22:55:08 2013 (r245076) +++ stable/8/usr.sbin/rarpd/rarpd.c Sat Jan 5 22:55:34 2013 (r245077) @@ -27,8 +27,8 @@ __FBSDID("$FreeBSD$"); /* * rarpd - Reverse ARP Daemon * - * Usage: rarpd -a [-dfsv] [-t directory] [hostname] - * rarpd [-dfsv] [-t directory] interface [hostname] + * Usage: rarpd -a [-dfsv] [-t directory] [-P pidfile] [hostname] + * rarpd [-dfsv] [-t directory] [-P pidfile] interface [hostname] * * 'hostname' is optional solely for backwards compatibility with Sun's rarpd. * Currently, the argument is ignored. @@ -61,6 +61,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include /* Cast a struct sockaddr to a struct sockaddr_in */ #define SATOSIN(sa) ((struct sockaddr_in *)(sa)) @@ -99,6 +100,11 @@ int sflag; /* ignore /tftpboot */ static u_char zero[6]; +static char pidfile_buf[PATH_MAX]; +static char *pidfile; +#define RARPD_PIDFILE "/var/run/rarpd.%s.pid" +static struct pidfh *pidfile_fh; + static int bpf_open(void); static in_addr_t choose_ipaddr(in_addr_t **, in_addr_t, in_addr_t); static char *eatoa(u_char *); @@ -140,7 +146,7 @@ main(int argc, char *argv[]) openlog(name, LOG_PID | LOG_CONS, LOG_DAEMON); opterr = 0; - while ((op = getopt(argc, argv, "adfst:v")) != -1) + while ((op = getopt(argc, argv, "adfsP:t:v")) != -1) switch (op) { case 'a': ++aflag; @@ -158,6 +164,12 @@ main(int argc, char *argv[]) ++sflag; break; + case 'P': + strncpy(pidfile_buf, optarg, sizeof(pidfile_buf) - 1); + pidfile_buf[sizeof(pidfile_buf) - 1] = '\0'; + pidfile = pidfile_buf; + break; + case 't': tftp_dir = optarg; break; @@ -182,10 +194,23 @@ main(int argc, char *argv[]) init(ifname); if (!fflag) { + if (pidfile == NULL && ifname != NULL && aflag == 0) { + snprintf(pidfile_buf, sizeof(pidfile_buf) - 1, + RARPD_PIDFILE, ifname); + pidfile_buf[sizeof(pidfile_buf) - 1] = '\0'; + pidfile = pidfile_buf; + } + /* If pidfile == NULL, /var/run/.pid will be used. */ + pidfile_fh = pidfile_open(pidfile, 0600, NULL); + if (pidfile_fh == NULL) + logmsg(LOG_ERR, "Cannot open or create pidfile: %s", + (pidfile == NULL) ? "/var/run/rarpd.pid" : pidfile); if (daemon(0,0)) { logmsg(LOG_ERR, "cannot fork"); + pidfile_remove(pidfile_fh); exit(1); } + pidfile_write(pidfile_fh); } rarp_loop(); return(0); @@ -235,6 +260,7 @@ init_one(struct ifaddrs *ifa, char *targ ii = (struct if_info *)malloc(sizeof(*ii)); if (ii == NULL) { logmsg(LOG_ERR, "malloc: %m"); + pidfile_remove(pidfile_fh); exit(1); } bzero(ii, sizeof(*ii)); @@ -252,6 +278,7 @@ init_one(struct ifaddrs *ifa, char *targ ii2 = (struct if_info *)malloc(sizeof(*ii2)); if (ii2 == NULL) { logmsg(LOG_ERR, "malloc: %m"); + pidfile_remove(pidfile_fh); exit(1); } memcpy(ii2, ii, sizeof(*ii2)); @@ -274,8 +301,11 @@ init_one(struct ifaddrs *ifa, char *targ case AF_LINK: ll = (struct sockaddr_dl *)ifa->ifa_addr; - if (ll->sdl_type == IFT_ETHER) + switch (ll->sdl_type) { + case IFT_ETHER: + case IFT_L2VLAN: bcopy(LLADDR(ll), ii->ii_eaddr, 6); + } break; } } @@ -294,6 +324,7 @@ init(char *target) error = getifaddrs(&ifhead); if (error) { logmsg(LOG_ERR, "getifaddrs: %m"); + pidfile_remove(pidfile_fh); exit(1); } /* @@ -340,8 +371,8 @@ static void usage(void) { (void)fprintf(stderr, "%s\n%s\n", - "usage: rarpd -a [-dfsv] [-t directory]", - " rarpd [-dfsv] [-t directory] interface"); + "usage: rarpd -a [-dfsv] [-t directory] [-P pidfile]", + " rarpd [-dfsv] [-t directory] [-P pidfile] interface"); exit(1); } @@ -362,6 +393,7 @@ bpf_open(void) if (fd == -1) { logmsg(LOG_ERR, "%s: %m", device); + pidfile_remove(pidfile_fh); exit(1); } return fd; @@ -400,12 +432,12 @@ rarp_open(char *device) immediate = 1; if (ioctl(fd, BIOCIMMEDIATE, &immediate) == -1) { logmsg(LOG_ERR, "BIOCIMMEDIATE: %m"); - exit(1); + goto rarp_open_err; } strlcpy(ifr.ifr_name, device, sizeof(ifr.ifr_name)); if (ioctl(fd, BIOCSETIF, (caddr_t)&ifr) == -1) { logmsg(LOG_ERR, "BIOCSETIF: %m"); - exit(1); + goto rarp_open_err; } /* * Check that the data link layer is an Ethernet; this code won't @@ -413,20 +445,24 @@ rarp_open(char *device) */ if (ioctl(fd, BIOCGDLT, (caddr_t)&dlt) == -1) { logmsg(LOG_ERR, "BIOCGDLT: %m"); - exit(1); + goto rarp_open_err; } if (dlt != DLT_EN10MB) { logmsg(LOG_ERR, "%s is not an ethernet", device); - exit(1); + goto rarp_open_err; } /* * Set filter program. */ if (ioctl(fd, BIOCSETF, (caddr_t)&filter) == -1) { logmsg(LOG_ERR, "BIOCSETF: %m"); - exit(1); + goto rarp_open_err; } return fd; + +rarp_open_err: + pidfile_remove(pidfile_fh); + exit(1); } /* @@ -481,16 +517,16 @@ rarp_loop(void) if (iflist == NULL) { logmsg(LOG_ERR, "no interfaces"); - exit(1); + goto rarpd_loop_err; } if (ioctl(iflist->ii_fd, BIOCGBLEN, (caddr_t)&bufsize) == -1) { logmsg(LOG_ERR, "BIOCGBLEN: %m"); - exit(1); + goto rarpd_loop_err; } buf = malloc(bufsize); if (buf == NULL) { logmsg(LOG_ERR, "malloc: %m"); - exit(1); + goto rarpd_loop_err; } while (1) { @@ -510,7 +546,7 @@ rarp_loop(void) if (errno == EINTR) continue; logmsg(LOG_ERR, "select: %m"); - exit(1); + goto rarpd_loop_err; } for (ii = iflist; ii != NULL; ii = ii->ii_next) { fd = ii->ii_fd; @@ -538,6 +574,11 @@ rarp_loop(void) } } #undef bhp + return; + +rarpd_loop_err: + pidfile_remove(pidfile_fh); + exit(1); } /* @@ -563,12 +604,12 @@ rarp_bootable(in_addr_t addr) else { if (chdir(tftp_dir) == -1) { logmsg(LOG_ERR, "chdir: %s: %m", tftp_dir); - exit(1); + goto rarp_bootable_err; } d = opendir("."); if (d == NULL) { logmsg(LOG_ERR, "opendir: %m"); - exit(1); + goto rarp_bootable_err; } dd = d; } @@ -576,6 +617,10 @@ rarp_bootable(in_addr_t addr) if (strncmp(dent->d_name, ipname, 8) == 0) return 1; return 0; + +rarp_bootable_err: + pidfile_remove(pidfile_fh); + exit(1); } /* @@ -678,6 +723,7 @@ update_arptab(u_char *ep, in_addr_t ipad r = socket(PF_ROUTE, SOCK_RAW, 0); if (r == -1) { logmsg(LOG_ERR, "raw route socket: %m"); + pidfile_remove(pidfile_fh); exit(1); } pid = getpid(); From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 22:56:17 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5254E262; Sat, 5 Jan 2013 22:56:17 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 3458A975; Sat, 5 Jan 2013 22:56:17 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05MuHJU095215; Sat, 5 Jan 2013 22:56:17 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05MuGIv095212; Sat, 5 Jan 2013 22:56:16 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201301052256.r05MuGIv095212@svn.freebsd.org> From: Mark Johnston Date: Sat, 5 Jan 2013 22:56:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org Subject: svn commit: r245078 - stable/7/usr.sbin/rarpd X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 22:56:17 -0000 Author: markj Date: Sat Jan 5 22:56:16 2013 New Revision: 245078 URL: http://svnweb.freebsd.org/changeset/base/245078 Log: - Add IFT_L2VLAN (vlan(4)) support. - Add a -P option to support PID files. When -a is specified /var/run/rarpd.pid is used by default, and when an interface is specified /var/run/rarpd..pid is used by default. Approved by: hrs, emaste (co-mentor) Modified: stable/7/usr.sbin/rarpd/Makefile stable/7/usr.sbin/rarpd/rarpd.8 stable/7/usr.sbin/rarpd/rarpd.c Directory Properties: stable/7/usr.sbin/rarpd/ (props changed) Modified: stable/7/usr.sbin/rarpd/Makefile ============================================================================== --- stable/7/usr.sbin/rarpd/Makefile Sat Jan 5 22:55:34 2013 (r245077) +++ stable/7/usr.sbin/rarpd/Makefile Sat Jan 5 22:56:16 2013 (r245078) @@ -4,6 +4,9 @@ PROG= rarpd MAN= rarpd.8 +DPADD= ${LIBUTIL} +LDADD= -lutil + WARNS?= 3 # This breaks with format strings returned by expand_syslog_m().. argh! #FORMAT_AUDIT?= 1 Modified: stable/7/usr.sbin/rarpd/rarpd.8 ============================================================================== --- stable/7/usr.sbin/rarpd/rarpd.8 Sat Jan 5 22:55:34 2013 (r245077) +++ stable/7/usr.sbin/rarpd/rarpd.8 Sat Jan 5 22:56:16 2013 (r245078) @@ -16,7 +16,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 16, 2001 +.Dd July 9, 2012 .Dt RARPD 8 .Os .Sh NAME @@ -27,9 +27,11 @@ .Fl a .Op Fl dfsv .Op Fl t Ar directory +.Op Fl P Ar pidfile .Nm .Op Fl dfsv .Op Fl t Ar directory +.Op Fl P Ar pidfile .Ar interface .Sh DESCRIPTION The @@ -92,6 +94,15 @@ instead of via .Xr syslog 3 . .It Fl f Run in the foreground. +.It Fl P +Specify the pathname of the PID file. +If not specified, +.Pa /var/run/rarpd.pid +or +.Pa /var/run/rarpd.ifname.pid +will be used depending on the +.Fl a +flag or the specified interface name. .It Fl s Supply a response to any RARP request for which an ethernet to IP address mapping exists; do not depend on the existence of @@ -115,6 +126,7 @@ Enable verbose syslogging. .It Pa /etc/ethers .It Pa /etc/hosts .It Pa /tftpboot +.It Pa /var/run/rarpd.pid .El .Sh SEE ALSO .Xr bpf 4 Modified: stable/7/usr.sbin/rarpd/rarpd.c ============================================================================== --- stable/7/usr.sbin/rarpd/rarpd.c Sat Jan 5 22:55:34 2013 (r245077) +++ stable/7/usr.sbin/rarpd/rarpd.c Sat Jan 5 22:56:16 2013 (r245078) @@ -27,8 +27,8 @@ __FBSDID("$FreeBSD$"); /* * rarpd - Reverse ARP Daemon * - * Usage: rarpd -a [-dfsv] [-t directory] [hostname] - * rarpd [-dfsv] [-t directory] interface [hostname] + * Usage: rarpd -a [-dfsv] [-t directory] [-P pidfile] [hostname] + * rarpd [-dfsv] [-t directory] [-P pidfile] interface [hostname] * * 'hostname' is optional solely for backwards compatibility with Sun's rarpd. * Currently, the argument is ignored. @@ -61,6 +61,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include /* Cast a struct sockaddr to a struct sockaddr_in */ #define SATOSIN(sa) ((struct sockaddr_in *)(sa)) @@ -99,6 +100,11 @@ int sflag; /* ignore /tftpboot */ static u_char zero[6]; +static char pidfile_buf[PATH_MAX]; +static char *pidfile; +#define RARPD_PIDFILE "/var/run/rarpd.%s.pid" +static struct pidfh *pidfile_fh; + static int bpf_open(void); static in_addr_t choose_ipaddr(in_addr_t **, in_addr_t, in_addr_t); static char *eatoa(u_char *); @@ -140,7 +146,7 @@ main(int argc, char *argv[]) openlog(name, LOG_PID | LOG_CONS, LOG_DAEMON); opterr = 0; - while ((op = getopt(argc, argv, "adfst:v")) != -1) + while ((op = getopt(argc, argv, "adfsP:t:v")) != -1) switch (op) { case 'a': ++aflag; @@ -158,6 +164,12 @@ main(int argc, char *argv[]) ++sflag; break; + case 'P': + strncpy(pidfile_buf, optarg, sizeof(pidfile_buf) - 1); + pidfile_buf[sizeof(pidfile_buf) - 1] = '\0'; + pidfile = pidfile_buf; + break; + case 't': tftp_dir = optarg; break; @@ -182,10 +194,23 @@ main(int argc, char *argv[]) init(ifname); if (!fflag) { + if (pidfile == NULL && ifname != NULL && aflag == 0) { + snprintf(pidfile_buf, sizeof(pidfile_buf) - 1, + RARPD_PIDFILE, ifname); + pidfile_buf[sizeof(pidfile_buf) - 1] = '\0'; + pidfile = pidfile_buf; + } + /* If pidfile == NULL, /var/run/.pid will be used. */ + pidfile_fh = pidfile_open(pidfile, 0600, NULL); + if (pidfile_fh == NULL) + logmsg(LOG_ERR, "Cannot open or create pidfile: %s", + (pidfile == NULL) ? "/var/run/rarpd.pid" : pidfile); if (daemon(0,0)) { logmsg(LOG_ERR, "cannot fork"); + pidfile_remove(pidfile_fh); exit(1); } + pidfile_write(pidfile_fh); } rarp_loop(); return(0); @@ -235,6 +260,7 @@ init_one(struct ifaddrs *ifa, char *targ ii = (struct if_info *)malloc(sizeof(*ii)); if (ii == NULL) { logmsg(LOG_ERR, "malloc: %m"); + pidfile_remove(pidfile_fh); exit(1); } bzero(ii, sizeof(*ii)); @@ -252,6 +278,7 @@ init_one(struct ifaddrs *ifa, char *targ ii2 = (struct if_info *)malloc(sizeof(*ii2)); if (ii2 == NULL) { logmsg(LOG_ERR, "malloc: %m"); + pidfile_remove(pidfile_fh); exit(1); } memcpy(ii2, ii, sizeof(*ii2)); @@ -274,8 +301,11 @@ init_one(struct ifaddrs *ifa, char *targ case AF_LINK: ll = (struct sockaddr_dl *)ifa->ifa_addr; - if (ll->sdl_type == IFT_ETHER) + switch (ll->sdl_type) { + case IFT_ETHER: + case IFT_L2VLAN: bcopy(LLADDR(ll), ii->ii_eaddr, 6); + } break; } } @@ -294,6 +324,7 @@ init(char *target) error = getifaddrs(&ifhead); if (error) { logmsg(LOG_ERR, "getifaddrs: %m"); + pidfile_remove(pidfile_fh); exit(1); } /* @@ -340,8 +371,8 @@ static void usage(void) { (void)fprintf(stderr, "%s\n%s\n", - "usage: rarpd -a [-dfsv] [-t directory]", - " rarpd [-dfsv] [-t directory] interface"); + "usage: rarpd -a [-dfsv] [-t directory] [-P pidfile]", + " rarpd [-dfsv] [-t directory] [-P pidfile] interface"); exit(1); } @@ -362,6 +393,7 @@ bpf_open(void) if (fd == -1) { logmsg(LOG_ERR, "%s: %m", device); + pidfile_remove(pidfile_fh); exit(1); } return fd; @@ -400,12 +432,12 @@ rarp_open(char *device) immediate = 1; if (ioctl(fd, BIOCIMMEDIATE, &immediate) == -1) { logmsg(LOG_ERR, "BIOCIMMEDIATE: %m"); - exit(1); + goto rarp_open_err; } strlcpy(ifr.ifr_name, device, sizeof(ifr.ifr_name)); if (ioctl(fd, BIOCSETIF, (caddr_t)&ifr) == -1) { logmsg(LOG_ERR, "BIOCSETIF: %m"); - exit(1); + goto rarp_open_err; } /* * Check that the data link layer is an Ethernet; this code won't @@ -413,20 +445,24 @@ rarp_open(char *device) */ if (ioctl(fd, BIOCGDLT, (caddr_t)&dlt) == -1) { logmsg(LOG_ERR, "BIOCGDLT: %m"); - exit(1); + goto rarp_open_err; } if (dlt != DLT_EN10MB) { logmsg(LOG_ERR, "%s is not an ethernet", device); - exit(1); + goto rarp_open_err; } /* * Set filter program. */ if (ioctl(fd, BIOCSETF, (caddr_t)&filter) == -1) { logmsg(LOG_ERR, "BIOCSETF: %m"); - exit(1); + goto rarp_open_err; } return fd; + +rarp_open_err: + pidfile_remove(pidfile_fh); + exit(1); } /* @@ -481,16 +517,16 @@ rarp_loop(void) if (iflist == NULL) { logmsg(LOG_ERR, "no interfaces"); - exit(1); + goto rarpd_loop_err; } if (ioctl(iflist->ii_fd, BIOCGBLEN, (caddr_t)&bufsize) == -1) { logmsg(LOG_ERR, "BIOCGBLEN: %m"); - exit(1); + goto rarpd_loop_err; } buf = malloc(bufsize); if (buf == NULL) { logmsg(LOG_ERR, "malloc: %m"); - exit(1); + goto rarpd_loop_err; } while (1) { @@ -510,7 +546,7 @@ rarp_loop(void) if (errno == EINTR) continue; logmsg(LOG_ERR, "select: %m"); - exit(1); + goto rarpd_loop_err; } for (ii = iflist; ii != NULL; ii = ii->ii_next) { fd = ii->ii_fd; @@ -538,6 +574,11 @@ rarp_loop(void) } } #undef bhp + return; + +rarpd_loop_err: + pidfile_remove(pidfile_fh); + exit(1); } /* @@ -563,12 +604,12 @@ rarp_bootable(in_addr_t addr) else { if (chdir(tftp_dir) == -1) { logmsg(LOG_ERR, "chdir: %s: %m", tftp_dir); - exit(1); + goto rarp_bootable_err; } d = opendir("."); if (d == NULL) { logmsg(LOG_ERR, "opendir: %m"); - exit(1); + goto rarp_bootable_err; } dd = d; } @@ -576,6 +617,10 @@ rarp_bootable(in_addr_t addr) if (strncmp(dent->d_name, ipname, 8) == 0) return 1; return 0; + +rarp_bootable_err: + pidfile_remove(pidfile_fh); + exit(1); } /* @@ -678,6 +723,7 @@ update_arptab(u_char *ep, in_addr_t ipad r = socket(PF_ROUTE, SOCK_RAW, 0); if (r == -1) { logmsg(LOG_ERR, "raw route socket: %m"); + pidfile_remove(pidfile_fh); exit(1); } pid = getpid(); From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 23:08:11 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 486BA601; Sat, 5 Jan 2013 23:08:11 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 227569C0; Sat, 5 Jan 2013 23:08:11 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05N8AF2098837; Sat, 5 Jan 2013 23:08:10 GMT (envelope-from gonzo@svn.freebsd.org) Received: (from gonzo@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05N8ABK098835; Sat, 5 Jan 2013 23:08:10 GMT (envelope-from gonzo@svn.freebsd.org) Message-Id: <201301052308.r05N8ABK098835@svn.freebsd.org> From: Oleksandr Tymoshenko Date: Sat, 5 Jan 2013 23:08:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245079 - in head/sys/arm: arm include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 23:08:11 -0000 Author: gonzo Date: Sat Jan 5 23:08:10 2013 New Revision: 245079 URL: http://svnweb.freebsd.org/changeset/base/245079 Log: Add hw.board.serial and hw.board.revision for exporting board-specific info Modified: head/sys/arm/arm/machdep.c head/sys/arm/include/machdep.h Modified: head/sys/arm/arm/machdep.c ============================================================================== --- head/sys/arm/arm/machdep.c Sat Jan 5 22:56:16 2013 (r245078) +++ head/sys/arm/arm/machdep.c Sat Jan 5 23:08:10 2013 (r245079) @@ -72,6 +72,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -162,8 +163,6 @@ const struct pmap_devmap *pmap_devmap_bo uint32_t board_id; struct arm_lbabi_tag *atag_list; -uint32_t revision; -uint64_t serial; char linux_command_line[LBABI_MAX_COMMAND_LINE + 1]; char atags[LBABI_MAX_COMMAND_LINE * 2]; uint32_t memstart[LBABI_MAX_BANKS]; @@ -171,6 +170,31 @@ uint32_t memsize[LBABI_MAX_BANKS]; uint32_t membanks; #endif +static uint32_t board_revision; +/* hex representation of uint64_t */ +static char board_serial[32]; + +SYSCTL_NODE(_hw, OID_AUTO, board, CTLFLAG_RD, 0, "Board attributes"); +SYSCTL_UINT(_hw_board, OID_AUTO, revision, CTLFLAG_RD, + &board_revision, 0, "Board revision"); +SYSCTL_STRING(_hw_board, OID_AUTO, serial, CTLFLAG_RD, + board_serial, 0, "Board serial"); + +void +board_set_serial(uint64_t serial) +{ + + snprintf(board_serial, sizeof(board_serial)-1, + "%016jx", serial); +} + +void +board_set_revision(uint32_t revision) +{ + + board_revision = revision; +} + void sendsig(catcher, ksi, mask) sig_t catcher; @@ -849,6 +873,8 @@ vm_offset_t linux_parse_boot_param(struct arm_boot_params *abp) { struct arm_lbabi_tag *walker; + uint32_t revision; + uint64_t serial; /* * Linux boot ABI: r0 = 0, r1 is the board type (!= 0) and r2 @@ -883,9 +909,11 @@ linux_parse_boot_param(struct arm_boot_p case ATAG_SERIAL: serial = walker->u.tag_sn.low | ((uint64_t)walker->u.tag_sn.high << 32); + board_set_serial(serial); break; case ATAG_REVISION: revision = walker->u.tag_rev.rev; + board_set_revision(revision); break; case ATAG_CMDLINE: /* XXX open question: Parse this for boothowto? */ Modified: head/sys/arm/include/machdep.h ============================================================================== --- head/sys/arm/include/machdep.h Sat Jan 5 22:56:16 2013 (r245078) +++ head/sys/arm/include/machdep.h Sat Jan 5 23:08:10 2013 (r245079) @@ -37,6 +37,10 @@ void initarm_gpio_init(void); void initarm_late_init(void); int platform_devmap_init(void); +/* Board-specific attributes */ +void board_set_serial(uint64_t); +void board_set_revision(uint32_t); + /* Needs to be initialised by platform_devmap_init */ extern const struct pmap_devmap *pmap_devmap_bootstrap_table; From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 23:08:58 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D5F2377C; Sat, 5 Jan 2013 23:08:58 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C7BD09D8; Sat, 5 Jan 2013 23:08:58 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r05N8wwM098989; Sat, 5 Jan 2013 23:08:58 GMT (envelope-from gonzo@svn.freebsd.org) Received: (from gonzo@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r05N8wIg098988; Sat, 5 Jan 2013 23:08:58 GMT (envelope-from gonzo@svn.freebsd.org) Message-Id: <201301052308.r05N8wIg098988@svn.freebsd.org> From: Oleksandr Tymoshenko Date: Sat, 5 Jan 2013 23:08:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245080 - head/sys/arm/broadcom/bcm2835 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 23:08:58 -0000 Author: gonzo Date: Sat Jan 5 23:08:58 2013 New Revision: 245080 URL: http://svnweb.freebsd.org/changeset/base/245080 Log: Export board serial and board revision obtained from FDT blob Modified: head/sys/arm/broadcom/bcm2835/bcm2835_machdep.c Modified: head/sys/arm/broadcom/bcm2835/bcm2835_machdep.c ============================================================================== --- head/sys/arm/broadcom/bcm2835/bcm2835_machdep.c Sat Jan 5 23:08:10 2013 (r245079) +++ head/sys/arm/broadcom/bcm2835/bcm2835_machdep.c Sat Jan 5 23:08:58 2013 (r245080) @@ -78,6 +78,25 @@ initarm_gpio_init(void) void initarm_late_init(void) { + phandle_t system; + pcell_t cells[2]; + int len; + + /* + * It seems there is no way to let syscons framework know + * that framebuffer resolution has changed. So just try + * to fetch data from FDT and go with defaults if failed + */ + system = OF_finddevice("/system"); + if (system != 0) { + len = OF_getprop(system, "linux,serial", &cells, sizeof(cells)); + if (len > 0) + board_set_serial(fdt64_to_cpu(*((uint64_t *)cells))); + + len = OF_getprop(system, "linux,revision", &cells, sizeof(cells)); + if (len > 0) + board_set_revision(fdt32_to_cpu(*((uint32_t *)cells))); + } } #define FDT_DEVMAP_MAX (2) // FIXME From owner-svn-src-all@FreeBSD.ORG Sat Jan 5 23:54:14 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E5F7CCD0 for ; Sat, 5 Jan 2013 23:54:14 +0000 (UTC) (envelope-from mailer-daemon@vniz.net) Received: from mail-la0-f44.google.com (mail-la0-f44.google.com [209.85.215.44]) by mx1.freebsd.org (Postfix) with ESMTP id 53B8BA9B for ; Sat, 5 Jan 2013 23:54:13 +0000 (UTC) Received: by mail-la0-f44.google.com with SMTP id fr10so12230064lab.3 for ; Sat, 05 Jan 2013 15:54:06 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:message-id:disposition-notification-to:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :openpgp:content-type:content-transfer-encoding:x-gm-message-state; bh=JW5vGkFnSzqu2a58iF6mXcVvnta2xy5FhtdrV+6tr3o=; b=NGXs1SfOCjN+O6YBW6jGIWBkNUDz2Fuqqjpfp7IOzNZrvVyps19U/Qux6gfR/+YTK1 s7j9ny2hDLWO43iLagL4k78zhcvNkP3LrjUa85ESurYzgUIj7sab0qUsptFWQNUiNkpd slVHegnhlXeyF6WTeyfvgIw2dn+ArjF7zQn04P63XPjrsDu8CxMRxkOm45hSx7wvCtDI WrAg40c36QiBqbKUGCmHMVsyYsu+g6/YxK4MLltV+HzQ68QqU6kI+HTS65/C63iPJ3fY sNoPeO7Hrd4o4tFbP3T9nwMkuDi/ENW5J9olDD0OQsHUT91Wgh1LMal1cC9CLGYmJH0R vZGQ== X-Received: by 10.112.88.7 with SMTP id bc7mr23476639lbb.108.1357430046681; Sat, 05 Jan 2013 15:54:06 -0800 (PST) Received: from [192.168.1.2] ([89.169.163.3]) by mx.google.com with ESMTPS id fj2sm19274601lbb.6.2013.01.05.15.54.05 (version=SSLv3 cipher=OTHER); Sat, 05 Jan 2013 15:54:06 -0800 (PST) Message-ID: <50E8BD1D.7030209@freebsd.org> Date: Sun, 06 Jan 2013 03:54:05 +0400 From: Andrey Chernov User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/17.0 Thunderbird/17.0 MIME-Version: 1.0 To: Gabor Kovesdan Subject: Re: svn commit: r245057 - head/usr.bin/grep References: <201301051452.r05EqWHt051825@svn.freebsd.org> In-Reply-To: <201301051452.r05EqWHt051825@svn.freebsd.org> OpenPGP: id=964474DD Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Gm-Message-State: ALoCoQlXiyvc1clH0hyd7eH3u3JrOruDvA1DxF9hyksQ1V0DQZr1sUVn3Ly7VsAoj1+2oZ+YpY+R Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages 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, 05 Jan 2013 23:54:15 -0000 Thanks. I think the fix below can be improved further, because strdup(3) is unneeded here and can be omitted. We don't have either constant argument nor want to preserve it. On 05.01.2013 18:52, Gabor Kovesdan wrote: > case 'e': > - add_pattern(optarg, strlen(optarg)); > + { > + char *token; > + char *string = strdup(optarg); > + > + while ((token = strsep(&string, "\n")) != NULL) > + add_pattern(token, strlen(token)); > + } > needpattern = 0; > break; > case 'F': > @@ -668,7 +674,11 @@ main(int argc, char *argv[]) > > /* Process patterns from command line */ > if (aargc != 0 && needpattern) { > - add_pattern(*aargv, strlen(*aargv)); > + char *token; > + char *string = strdup(*aargv); > + > + while ((token = strsep(&string, "\n")) != NULL) > + add_pattern(token, strlen(token)); > --aargc; > ++aargv; > } >