svn commit: r283099 - head/sys/mips/conf
Author: adrian Date: Tue May 19 06:45:56 2015 New Revision: 283099 URL: https://svnweb.freebsd.org/changeset/base/283099 Log: Convert routerstation to use geom_uncompress. Modified: head/sys/mips/conf/ROUTERSTATION Modified: head/sys/mips/conf/ROUTERSTATION == --- head/sys/mips/conf/ROUTERSTATIONTue May 19 06:45:06 2015 (r283098) +++ head/sys/mips/conf/ROUTERSTATIONTue May 19 06:45:56 2015 (r283099) @@ -12,8 +12,8 @@ hints ROUTERSTATION.hints # GEOM modules device geom_redboot# to get access to the SPI flash partitions -device geom_uzip # compressed in-memory filesystem support -optionsGEOM_UZIP +device geom_uncompress # compressed in-memory filesystem support +optionsGEOM_UNCOMPRESS # For DOS optionsMSDOSFS @@ -25,4 +25,4 @@ deviceetherswitch device ukswitch # Boot path - redboot MFS -optionsROOTDEVNAME=\ufs:redboot/rootfs.uzip\ +optionsROOTDEVNAME=\ufs:redboot/rootfs.uncompress\ ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283098 - head/sys/mips/conf
Author: adrian Date: Tue May 19 06:45:06 2015 New Revision: 283098 URL: https://svnweb.freebsd.org/changeset/base/283098 Log: Migrate RSPRO to use the uncompress module, not uzip. (This is hand-in-hand with what I'm about to do with freebsd-wifi-build.) Modified: head/sys/mips/conf/RSPRO Modified: head/sys/mips/conf/RSPRO == --- head/sys/mips/conf/RSPROTue May 19 05:41:00 2015(r283097) +++ head/sys/mips/conf/RSPROTue May 19 06:45:06 2015(r283098) @@ -13,8 +13,8 @@ devicepcf2123_rtc # GEOM modules device geom_redboot# to get access to the SPI flash partitions -device geom_uzip # compressed in-memory filesystem support -optionsGEOM_UZIP +device geom_uncompress # compressed in-memory filesystem support +optionsGEOM_UNCOMPRESS # For DOS optionsMSDOSFS @@ -26,5 +26,5 @@ deviceetherswitch device arswitch # Boot off of flash -optionsROOTDEVNAME=\ufs:redboot/rootfs.uzip\ +optionsROOTDEVNAME=\ufs:redboot/rootfs.uncompress\ ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283102 - head/sys/netipsec
Author: ae Date: Tue May 19 08:37:03 2015 New Revision: 283102 URL: https://svnweb.freebsd.org/changeset/base/283102 Log: Change SA's state before sending SADB_EXPIRE message. This state will be reported to keying daemon. MFC after:2 weeks Modified: head/sys/netipsec/key.c Modified: head/sys/netipsec/key.c == --- head/sys/netipsec/key.c Tue May 19 08:30:04 2015(r283101) +++ head/sys/netipsec/key.c Tue May 19 08:37:03 2015(r283102) @@ -4283,8 +4283,8 @@ key_flush_sad(time_t now) if (sav-lft_h-addtime != 0 now - sav-created sav-lft_h-addtime) { - key_expire(sav, 1); key_sa_chgstate(sav, SADB_SASTATE_DEAD); + key_expire(sav, 1); KEY_FREESAV(sav); } #if 0 /* XXX Should we keep to send expire message until HARD lifetime ? */ @@ -4306,8 +4306,8 @@ key_flush_sad(time_t now) /* check HARD lifetime by bytes */ else if (sav-lft_h-bytes != 0 sav-lft_h-bytes sav-lft_c-bytes) { - key_expire(sav, 1); key_sa_chgstate(sav, SADB_SASTATE_DEAD); + key_expire(sav, 1); KEY_FREESAV(sav); } } ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r282941 - head/sys/dev/sfxge
Andrew, On Fri, May 15, 2015 at 06:49:44AM +, Andrew Rybchenko wrote: A Author: arybchik A Date: Fri May 15 06:49:43 2015 A New Revision: 282941 A URL: https://svnweb.freebsd.org/changeset/base/282941 A A Log: A sfxge: do not change CSUM_TSO when IFCAP_TSOx is changed A A It is simply not required since the kernel checks corresponding A IFCAP_TSOx capability and CSUM_TSO in hw-assisted offloads. A Note that CSUM_TSO is two bits (CSUM_IP_TSO|CSUM_IP6_TSO) and both bits A are set in IPv4 and IPv6 mbufs. I am not sure that this is a part of driver KPI. AFAIU, the if_capenable is user visible declaration of capabilities, and if_hwassist is stack visible. So, they should be changed together. At least all drivers do that. What made you to make such change to sfxge? Whether this is a good KPI or not is of course discussable. If you have ideas and improvements, let's do them in projects/ifnet branch. -- Totus tuus, Glebius. ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283104 - head/sys/geom/uncompress
Author: ae Date: Tue May 19 09:28:52 2015 New Revision: 283104 URL: https://svnweb.freebsd.org/changeset/base/283104 Log: Read GEOM_UNCOMPRESS metadata using several requests that fit into MAXPHYS. For large compressed images the metadata size can be bigger than MAXPHYS and this triggers KASSERT in g_read_data(). Also use g_free() to free memory allocated by g_read_data(). PR: 199476 MFC after:2 weeks Modified: head/sys/geom/uncompress/g_uncompress.c Modified: head/sys/geom/uncompress/g_uncompress.c == --- head/sys/geom/uncompress/g_uncompress.c Tue May 19 09:22:06 2015 (r283103) +++ head/sys/geom/uncompress/g_uncompress.c Tue May 19 09:28:52 2015 (r283104) @@ -464,7 +464,8 @@ g_uncompress_taste(struct g_class *mp, s struct g_provider *pp2; struct g_consumer *cp; struct g_geom *gp; - uint32_t i, total_offsets, type; + uint64_t *offsets; + uint32_t i, r, total, total_offsets, type; uint8_t *buf; int error; @@ -499,8 +500,8 @@ g_uncompress_taste(struct g_class *mp, s */ DPRINTF((%s: media sectorsize %u, mediasize %jd\n, gp-name, pp-sectorsize, (intmax_t)pp-mediasize)); - i = roundup(sizeof(struct cloop_header), pp-sectorsize); - buf = g_read_data(cp, 0, i, NULL); + total = roundup(sizeof(struct cloop_header), pp-sectorsize); + buf = g_read_data(cp, 0, total, NULL); if (buf == NULL) goto err; header = (struct cloop_header *) buf; @@ -557,20 +558,29 @@ g_uncompress_taste(struct g_class *mp, s gp-name, sc-nblocks); goto err; } - free(buf, M_GEOM); + g_free(buf); - i = roundup((sizeof(struct cloop_header) + - total_offsets * sizeof(uint64_t)), pp-sectorsize); - buf = g_read_data(cp, 0, i, NULL); - if (buf == NULL) - goto err; sc-offsets = malloc(total_offsets * sizeof(uint64_t), - M_GEOM_UNCOMPRESS, M_WAITOK); - for (i = 0; i = total_offsets; i++) { - sc-offsets[i] = be64toh(((uint64_t *) - (buf+sizeof(struct cloop_header)))[i]); + M_GEOM_UNCOMPRESS, M_WAITOK | M_ZERO); + total = roundup((sizeof(struct cloop_header) + + total_offsets * sizeof(uint64_t)), pp-sectorsize); +#defineRSZ ((total - r) MAXPHYS ? MAXPHYS: (total - r)) + for (r = 0, i = 0; r total; r += MAXPHYS) { + buf = g_read_data(cp, r, RSZ, error); + if (buf == NULL) { + free(sc-offsets, M_GEOM_UNCOMPRESS); + goto err; + } + offsets = (uint64_t *)buf; + if (r == 0) + offsets += + sizeof(struct cloop_header) / sizeof(uint64_t); + for (; i total_offsets offsets (uint64_t *)(buf + RSZ); + i++, offsets++) + sc-offsets[i] = be64toh(*offsets); + g_free(buf); } - free(buf, M_GEOM); +#undef RSZ buf = NULL; DPRINTF((%s: done reading offsets\n, gp-name)); mtx_init(sc-last_mtx, geom_uncompress cache, NULL, MTX_DEF); @@ -619,7 +629,7 @@ err: g_topology_lock(); g_access(cp, -1, 0, 0); if (buf != NULL) - free(buf, M_GEOM); + g_free(buf); if (gp-softc != NULL) { g_uncompress_softc_free(gp-softc, NULL); gp-softc = NULL; ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283103 - head/sys/dev/usb/controller
Author: hselasky Date: Tue May 19 09:22:06 2015 New Revision: 283103 URL: https://svnweb.freebsd.org/changeset/base/283103 Log: Fix for DWC OTG device side isochronous transfers. The even or odd isochronous frame bit needs to be flipped. MFC after:3 days Modified: head/sys/dev/usb/controller/dwc_otg.c Modified: head/sys/dev/usb/controller/dwc_otg.c == --- head/sys/dev/usb/controller/dwc_otg.c Tue May 19 08:37:03 2015 (r283102) +++ head/sys/dev/usb/controller/dwc_otg.c Tue May 19 09:22:06 2015 (r283103) @@ -1557,6 +1557,22 @@ dwc_otg_data_rx(struct dwc_otg_softc *sc /* release FIFO */ dwc_otg_common_rx_ack(sc); + temp = sc-sc_out_ctl[td-ep_no]; + + /* check for isochronous mode */ + if ((temp DIEPCTL_EPTYPE_MASK) == + (DIEPCTL_EPTYPE_ISOC DIEPCTL_EPTYPE_SHIFT)) { + /* toggle odd or even frame bit */ + if (temp DIEPCTL_SETD1PID) { + temp = ~DIEPCTL_SETD1PID; + temp |= DIEPCTL_SETD0PID; + } else { + temp = ~DIEPCTL_SETD0PID; + temp |= DIEPCTL_SETD1PID; + } + sc-sc_out_ctl[td-ep_no] = temp; + } + /* check if we are complete */ if ((td-remainder == 0) || got_short) { if (td-short_pkt) { @@ -2132,10 +2148,23 @@ repeat: temp = sc-sc_in_ctl[td-ep_no]; + /* check for isochronous mode */ + if ((temp DIEPCTL_EPTYPE_MASK) == + (DIEPCTL_EPTYPE_ISOC DIEPCTL_EPTYPE_SHIFT)) { + /* toggle odd or even frame bit */ + if (temp DIEPCTL_SETD1PID) { + temp = ~DIEPCTL_SETD1PID; + temp |= DIEPCTL_SETD0PID; + } else { + temp = ~DIEPCTL_SETD0PID; + temp |= DIEPCTL_SETD1PID; + } + sc-sc_in_ctl[td-ep_no] = temp; + } + /* must enable before writing data to FIFO */ DWC_OTG_WRITE_4(sc, DOTG_DIEPCTL(td-ep_no), temp | - DIEPCTL_EPENA | - DIEPCTL_CNAK); + DIEPCTL_EPENA | DIEPCTL_CNAK); td-tx_bytes = count; ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283101 - head/sys/netipsec
Author: ae Date: Tue May 19 08:30:04 2015 New Revision: 283101 URL: https://svnweb.freebsd.org/changeset/base/283101 Log: Teach key_expire() send SADB_EXPIRE message with the SADB_EXT_LIFETIME_HARD extension header type. The key_flush_sad() now will send SADB_EXPIRE message when HARD lifetime expires. This is required by RFC 2367 and some keying daemons rely on these messages. HARD lifetime messages have precedence over SOFT lifetime messages, so now they will be checked first. Also now SADB_EXPIRE messages will be send even the SA has not been used, because keying daemons might want to rekey such SA. PR: 200282, 200283 Submitted by: Tobias Brunner tobias at strongswan dot org MFC after:2 weeks Modified: head/sys/netipsec/key.c Modified: head/sys/netipsec/key.c == --- head/sys/netipsec/key.c Tue May 19 08:00:39 2015(r283100) +++ head/sys/netipsec/key.c Tue May 19 08:30:04 2015(r283101) @@ -537,7 +537,7 @@ static int key_acquire2(struct socket *, const struct sadb_msghdr *); static int key_register(struct socket *, struct mbuf *, const struct sadb_msghdr *); -static int key_expire(struct secasvar *); +static int key_expire(struct secasvar *, int); static int key_flush(struct socket *, struct mbuf *, const struct sadb_msghdr *); static int key_dump(struct socket *, struct mbuf *, @@ -4242,41 +4242,29 @@ key_flush_sad(time_t now) time, why?\n, __func__)); continue; } - - /* check SOFT lifetime */ - if (sav-lft_s-addtime != 0 - now - sav-created sav-lft_s-addtime) { - key_sa_chgstate(sav, SADB_SASTATE_DYING); - /* -* Actually, only send expire message if -* SA has been used, as it was done before, -* but should we always send such message, -* and let IKE daemon decide if it should be -* renegotiated or not ? -* XXX expire message will actually NOT be -* sent if SA is only used after soft -* lifetime has been reached, see below -* (DYING state) -*/ - if (sav-lft_c-usetime != 0) - key_expire(sav); - } - /* check SOFT lifetime by bytes */ /* -* XXX I don't know the way to delete this SA -* when new SA is installed. Caution when it's -* installed too big lifetime by time. +* RFC 2367: +* HARD lifetimes MUST take precedence over SOFT +* lifetimes, meaning if the HARD and SOFT lifetimes +* are the same, the HARD lifetime will appear on the +* EXPIRE message. */ - else if (sav-lft_s-bytes != 0 - sav-lft_s-bytes sav-lft_c-bytes) { - + /* check HARD lifetime */ + if ((sav-lft_h-addtime != 0 + now - sav-created sav-lft_h-addtime) || + (sav-lft_h-bytes != 0 + sav-lft_h-bytes sav-lft_c-bytes)) { + key_sa_chgstate(sav, SADB_SASTATE_DEAD); + key_expire(sav, 1); + KEY_FREESAV(sav); + } + /* check SOFT lifetime */ + else if ((sav-lft_s-addtime != 0 + now - sav-created sav-lft_s-addtime) || + (sav-lft_s-bytes != 0 + sav-lft_s-bytes sav-lft_c-bytes)) { key_sa_chgstate(sav, SADB_SASTATE_DYING); - /* -* XXX If we keep to send expire -* message in the status of -* DYING. Do remove below code. -*/ - key_expire(sav); + key_expire(sav, 0); } } @@ -4295,6 +4283,7 @@ key_flush_sad(time_t now) if (sav-lft_h-addtime != 0 now - sav-created sav-lft_h-addtime) { + key_expire(sav, 1);
svn commit: r283105 - head/share/man/man9
Author: julian Date: Tue May 19 11:33:04 2015 New Revision: 283105 URL: https://svnweb.freebsd.org/changeset/base/283105 Log: Only several years late, catch the psignal man page up to the fact that psignal has been renamed to kern_psignal since 9.0. MFC after:1 week Modified: head/share/man/man9/psignal.9 Modified: head/share/man/man9/psignal.9 == --- head/share/man/man9/psignal.9 Tue May 19 09:28:52 2015 (r283104) +++ head/share/man/man9/psignal.9 Tue May 19 11:33:04 2015 (r283105) @@ -33,6 +33,7 @@ .Os .Sh NAME .Nm psignal , +.Nm kern_psignal , .Nm pgsignal , .Nm gsignal , .Nm tdsignal @@ -41,7 +42,7 @@ .In sys/types.h .In sys/signalvar.h .Ft void -.Fn psignal struct proc *p int signum +.Fn kern_psignal struct proc *p int signum .Ft void .Fn pgsignal struct pgrp *pgrp int signum int checkctty .Ft void @@ -56,16 +57,21 @@ common to all three functions should be .Bq 1- Ns Dv NSIG . .Pp The -.Fn psignal +.Fn kern_psignal function posts signal number .Fa signum to the process represented by the process structure .Fa p . +The +.Fn kernel_psignal +function used to be called +.Fn psignal +but was renamed. With a few exceptions noted below, the target process signal disposition is updated and is marked as runnable, so further handling of the signal is done in the context of the target process after a context switch. Note that -.Fn psignal +.Fn kern_psignal does not by itself cause a context switch to happen. .Pp The target process is not marked as runnable in the following cases: @@ -91,7 +97,7 @@ regardless of the signal action .El .Pp If the target process is being traced -.Fn psignal +.Fn kern_psignal behaves as if the target process were taking the default action for .Fa signum . This allows the tracing process to be notified of the signal. @@ -113,7 +119,7 @@ of the process group structure pointed at by .Fa pgrp and calling -.Fn psignal +.Fn kern_psignal as appropriate. If .Fa pgrp @@ -149,3 +155,10 @@ to the thread represented by the thread .Xr sigaction 2 , .Xr signal 9 , .Xr tsleep 9 +.Sh HISTORY +The +.Fn psignal +call was renamed to +.Fn kern_psignal +in +.Fx 9.0 . ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283137 - head/sys/arm/conf
Author: ganbold Date: Wed May 20 05:49:52 2015 New Revision: 283137 URL: https://svnweb.freebsd.org/changeset/base/283137 Log: D2432 (Patch for Amlogic single core PIC) moved the SMP option out of AML8726 and into board specific config files since some boards (e.g. YYHD18) use the aml8726-m3 which only have a single core. r283057 applied most of D2432, however while it removed SMP from AML8726, it missed adding the SMP option to the board specific config files. Differential Revision:https://reviews.freebsd.org/D2589 Submitted by: John Wehle Modified: head/sys/arm/conf/ODROIDC1 head/sys/arm/conf/VSATV102 Modified: head/sys/arm/conf/ODROIDC1 == --- head/sys/arm/conf/ODROIDC1 Wed May 20 01:08:01 2015(r283136) +++ head/sys/arm/conf/ODROIDC1 Wed May 20 05:49:52 2015(r283137) @@ -22,6 +22,8 @@ includeAML8726 ident ODROIDC1 +optionsSMP # Enable multiple cores + # Interrupt controller device gic Modified: head/sys/arm/conf/VSATV102 == --- head/sys/arm/conf/VSATV102 Wed May 20 01:08:01 2015(r283136) +++ head/sys/arm/conf/VSATV102 Wed May 20 05:49:52 2015(r283137) @@ -22,6 +22,8 @@ includeAML8726 ident VSATV102 +optionsSMP # Enable multiple cores + # Interrupt controller device gic ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283136 - head/sys/netinet
On 05/20/15 at 02:13P, Lawrence Stewart wrote: Hi Hiren, On 05/20/15 11:08, Hiren Panchasara wrote: Author: hiren Date: Wed May 20 01:08:01 2015 New Revision: 283136 URL: https://svnweb.freebsd.org/changeset/base/283136 Log: Add a new sysctl net.inet.tcp.hostcache.purgenow=1 to expire and purge all entries in hostcache immediately. In collaboration with:bz, rwatson MFC after:1 week Relnotes: yes Sponsored by: Limelight Networks Why introduce a new sysctl and not change the existing behaviour of net.inet.tcp.hostcache.purge? I thought it'd make more sense to keep the existing behavior as is and provide new knob for the new behavior. cheers, Hiren pgp7jOFjo66KC.pgp Description: PGP signature
svn commit: r283136 - head/sys/netinet
Author: hiren Date: Wed May 20 01:08:01 2015 New Revision: 283136 URL: https://svnweb.freebsd.org/changeset/base/283136 Log: Add a new sysctl net.inet.tcp.hostcache.purgenow=1 to expire and purge all entries in hostcache immediately. In collaboration with:bz, rwatson MFC after:1 week Relnotes: yes Sponsored by: Limelight Networks Modified: head/sys/netinet/tcp_hostcache.c Modified: head/sys/netinet/tcp_hostcache.c == --- head/sys/netinet/tcp_hostcache.cTue May 19 23:53:25 2015 (r283135) +++ head/sys/netinet/tcp_hostcache.cWed May 20 01:08:01 2015 (r283136) @@ -117,6 +117,7 @@ static VNET_DEFINE(struct callout, tcp_h static struct hc_metrics *tcp_hc_lookup(struct in_conninfo *); static struct hc_metrics *tcp_hc_insert(struct in_conninfo *); static int sysctl_tcp_hc_list(SYSCTL_HANDLER_ARGS); +static int sysctl_tcp_hc_purgenow(SYSCTL_HANDLER_ARGS); static void tcp_hc_purge_internal(int); static void tcp_hc_purge(void *); @@ -155,6 +156,9 @@ SYSCTL_PROC(_net_inet_tcp_hostcache, OID CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_SKIP, 0, 0, sysctl_tcp_hc_list, A, List of all hostcache entries); +SYSCTL_PROC(_net_inet_tcp_hostcache, OID_AUTO, purgenow, +CTLTYPE_INT | CTLFLAG_RW, NULL, 0, +sysctl_tcp_hc_purgenow, I, Immediately purge all entries); static MALLOC_DEFINE(M_HOSTCACHE, hostcache, TCP hostcache); @@ -696,3 +700,24 @@ tcp_hc_purge(void *arg) tcp_hc_purge, arg); CURVNET_RESTORE(); } + +/* + * Expire and purge all entries in hostcache immediately. + */ +static int +sysctl_tcp_hc_purgenow(SYSCTL_HANDLER_ARGS) +{ + int error, val; + + val = 0; + error = sysctl_handle_int(oidp, val, 0, req); + if (error || !req-newptr) + return (error); + + tcp_hc_purge_internal(1); + + callout_reset(V_tcp_hc_callout, V_tcp_hostcache.prune * hz, + tcp_hc_purge, curvnet); + + return (0); +} ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283136 - head/sys/netinet
Hi Hiren, On 05/20/15 11:08, Hiren Panchasara wrote: Author: hiren Date: Wed May 20 01:08:01 2015 New Revision: 283136 URL: https://svnweb.freebsd.org/changeset/base/283136 Log: Add a new sysctl net.inet.tcp.hostcache.purgenow=1 to expire and purge all entries in hostcache immediately. In collaboration with: bz, rwatson MFC after: 1 week Relnotes: yes Sponsored by: Limelight Networks Why introduce a new sysctl and not change the existing behaviour of net.inet.tcp.hostcache.purge? Cheers, Lawrence ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283109 - head/sys/x86/x86
Author: kib Date: Tue May 19 14:21:00 2015 New Revision: 283109 URL: https://svnweb.freebsd.org/changeset/base/283109 Log: When sleeping in Sx state using MWAIT instruction, accept fast wakeup requests from writes to the monitored line. Submitted by: avg Modified: head/sys/x86/x86/cpu_machdep.c Modified: head/sys/x86/x86/cpu_machdep.c == --- head/sys/x86/x86/cpu_machdep.c Tue May 19 14:05:15 2015 (r283108) +++ head/sys/x86/x86/cpu_machdep.c Tue May 19 14:21:00 2015 (r283109) @@ -101,6 +101,10 @@ __FBSDID($FreeBSD$); #include vm/vm_pager.h #include vm/vm_param.h +#defineSTATE_RUNNING 0x0 +#defineSTATE_MWAIT 0x1 +#defineSTATE_SLEEPING 0x2 + /* * Machine dependent boot() routine * @@ -134,13 +138,24 @@ acpi_cpu_idle_mwait(uint32_t mwait_hint) { int *state; - state = (int *)PCPU_PTR(monitorbuf); /* * XXXKIB. Software coordination mode should be supported, * but all Intel CPUs provide hardware coordination. */ + + state = (int *)PCPU_PTR(monitorbuf); + KASSERT(*state == STATE_SLEEPING, + (cpu_mwait_cx: wrong monitorbuf state)); + *state = STATE_MWAIT; cpu_monitor(state, 0, 0); - cpu_mwait(MWAIT_INTRBREAK, mwait_hint); + if (*state == STATE_MWAIT) + cpu_mwait(MWAIT_INTRBREAK, mwait_hint); + + /* +* We should exit on any event that interrupts mwait, because +* that event might be a wanted interrupt. +*/ + *state = STATE_RUNNING; } /* Get current clock frequency for the given cpu id. */ @@ -231,10 +246,6 @@ static int idle_mwait = 1; /* Use MONIT SYSCTL_INT(_machdep, OID_AUTO, idle_mwait, CTLFLAG_RWTUN, idle_mwait, 0, Use MONITOR/MWAIT for short idle); -#defineSTATE_RUNNING 0x0 -#defineSTATE_MWAIT 0x1 -#defineSTATE_SLEEPING 0x2 - #ifndef PC98 static void cpu_idle_acpi(sbintime_t sbt) ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283108 - head
Author: emaste Date: Tue May 19 14:05:15 2015 New Revision: 283108 URL: https://svnweb.freebsd.org/changeset/base/283108 Log: Update crunch bootstrapping test for recent fixes - r277259 crunchide: Correct 64-bit section header offset - r281674 crunchide: always include both 32- and 64-bit ELF support With built-in cross-size support we also no longer need a special case for cross-build crunchide. Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D2576 Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 == --- head/Makefile.inc1 Tue May 19 14:04:21 2015(r283107) +++ head/Makefile.inc1 Tue May 19 14:05:15 2015(r283108) @@ -1297,7 +1297,9 @@ _cat= bin/cat _lex= usr.bin/lex .endif -.if ${BOOTSTRAPPING} 1001507 +# r277259 crunchide: Correct 64-bit section header offset +# r281674 crunchide: always include both 32- and 64-bit ELF support +.if ${BOOTSTRAPPING} 1100071 _crunch= usr.sbin/crunch .endif @@ -1466,11 +1468,6 @@ kernel-tools: .MAKE _btxld=usr.sbin/btxld .endif .endif -.if ${TARGET_ARCH} != ${MACHINE_ARCH} -.if ${MK_RESCUE} != no -_crunchide=usr.sbin/crunch/crunchide -.endif -.endif # If we're given an XAS, don't build binutils. .if ${XAS:M/*} == ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283088 - head/sys/ddb
On Mon, 2015-05-18 at 22:49 -0500, Pedro Giffuni wrote: Il giorno 18/mag/2015, alle ore 20:48, Bruce Evans b...@optusnet.com.au ha scritto: On Mon, 18 May 2015, Pedro F. Giffuni wrote: Log: ddb: stop boolean screaming. TRUE -- true FALSE-- false Hinted by: NetBSD This is not just churn to a style regression, but a type mismatch. It is an attempt to reduce differences with NetBSD. One of the complaints of hear from newcomers to the ddb code is that the format is old-fashioned (it still had pre-ANSI headers not long ago) and unmaintained. Modified: head/sys/ddb/db_break.c == --- head/sys/ddb/db_break.cMon May 18 22:14:06 2015 (r283087) +++ head/sys/ddb/db_break.cMon May 18 22:27:46 2015 (r283088) @@ -155,12 +155,12 @@ db_find_breakpoint_here(db_addr_t addr) return db_find_breakpoint(db_map_addr(addr), addr); } -static boolean_t db_breakpoints_inserted = TRUE; +static boolean_t db_breakpoints_inserted = true; This code hasn't been churned to use the boolean type. It still uses boolean_t, which is plain int. TRUE and FALSE go with this type. true and false go with the boolean type. This probably makes no difference, because TRUE happens to be implemented with the same value as true and there are lots of implicit versions between the types. Yes, I noticed the return types are still ints. It doesn’t look difficult to convert it to use a real boolean type. In any case, I would prefer to go forward (using bool) instead of reverting this change. Yes, please do. Pedanticism aside, boolean types are extremely valuable because they document the intended use of the data. IMO the value in that far outweighs arguments about spelling and conversions and other whinging about things that work just fine. To sum it up, int is one of the vaguest things you can say in C, and boolean (in any reasonable spelling variation) is one of the clearest. -- Ian The boolean type is almost useless since C's type system is too weak to distinguish between plain int used as a boolean and pure boolean. If it were stronger, then it would complain about all the implicit conversions between int and boolean, and the boolean type would be harder to use for other reasons. And I would like that to happen, but it would probably break a lot of legacy code. I thought boolean_t was a transition type. Pedro. ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283110 - head/sys/sys
Author: emaste Date: Tue May 19 14:23:33 2015 New Revision: 283110 URL: https://svnweb.freebsd.org/changeset/base/283110 Log: Add GRP_COMDAT section group flag to ELF header Reviewed by: kib MFC after:1 week Sponsored by: The FreeBSD Foundation Differential Revision:https://reviews.freebsd.org/D2582 Modified: head/sys/sys/elf_common.h Modified: head/sys/sys/elf_common.h == --- head/sys/sys/elf_common.h Tue May 19 14:21:00 2015(r283109) +++ head/sys/sys/elf_common.h Tue May 19 14:23:33 2015(r283110) @@ -473,6 +473,9 @@ typedef struct { #defineSHF_MASKOS 0x0ff0 /* OS-specific semantics. */ #defineSHF_MASKPROC0xf000 /* Processor-specific semantics. */ +/* Flags for section groups. */ +#defineGRP_COMDAT 0x1 /* COMDAT semantics. */ + /* Values for p_type. */ #definePT_NULL 0 /* Unused entry. */ #definePT_LOAD 1 /* Loadable segment. */ ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283107 - head/sys/netpfil/pf
Author: glebius Date: Tue May 19 14:04:21 2015 New Revision: 283107 URL: https://svnweb.freebsd.org/changeset/base/283107 Log: Use MTX_SYSINIT() instead of mtx_init() to separate mutex initialization from associated structures initialization. The mutexes are global, while the structures are per-vnet. Submitted by: Nikos Vassiliadis nvass gmx.com Modified: head/sys/netpfil/pf/pf.c head/sys/netpfil/pf/pf_if.c head/sys/netpfil/pf/pf_norm.c Modified: head/sys/netpfil/pf/pf.c == --- head/sys/netpfil/pf/pf.cTue May 19 14:02:40 2015(r283106) +++ head/sys/netpfil/pf/pf.cTue May 19 14:04:21 2015(r283107) @@ -151,6 +151,7 @@ static VNET_DEFINE(struct pf_send_head, #defineV_pf_sendqueue VNET(pf_sendqueue) static struct mtx pf_sendqueue_mtx; +MTX_SYSINIT(pf_sendqueue_mtx, pf_sendqueue_mtx, pf send queue, MTX_DEF); #definePF_SENDQ_LOCK() mtx_lock(pf_sendqueue_mtx) #definePF_SENDQ_UNLOCK() mtx_unlock(pf_sendqueue_mtx) @@ -172,11 +173,15 @@ static VNET_DEFINE(struct task, pf_overl #defineV_pf_overloadtask VNET(pf_overloadtask) static struct mtx pf_overloadqueue_mtx; +MTX_SYSINIT(pf_overloadqueue_mtx, pf_overloadqueue_mtx, +pf overload/flush queue, MTX_DEF); #definePF_OVERLOADQ_LOCK() mtx_lock(pf_overloadqueue_mtx) #definePF_OVERLOADQ_UNLOCK() mtx_unlock(pf_overloadqueue_mtx) VNET_DEFINE(struct pf_rulequeue, pf_unlinked_rules); struct mtx pf_unlnkdrules_mtx; +MTX_SYSINIT(pf_unlnkdrules_mtx, pf_unlnkdrules_mtx, pf unlinked rules, +MTX_DEF); static VNET_DEFINE(uma_zone_t, pf_sources_z); #defineV_pf_sources_z VNET(pf_sources_z) @@ -804,18 +809,13 @@ pf_initialize() V_pf_altqs_active = V_pf_altqs[0]; V_pf_altqs_inactive = V_pf_altqs[1]; - /* Send overload+flush queues. */ STAILQ_INIT(V_pf_sendqueue); SLIST_INIT(V_pf_overloadqueue); TASK_INIT(V_pf_overloadtask, 0, pf_overload_task, curvnet); - mtx_init(pf_sendqueue_mtx, pf send queue, NULL, MTX_DEF); - mtx_init(pf_overloadqueue_mtx, pf overload/flush queue, NULL, - MTX_DEF); /* Unlinked, but may be referenced rules. */ TAILQ_INIT(V_pf_unlinked_rules); - mtx_init(pf_unlnkdrules_mtx, pf unlinked rules, NULL, MTX_DEF); } void @@ -858,10 +858,6 @@ pf_cleanup() free(pfse, M_PFTEMP); } - mtx_destroy(pf_sendqueue_mtx); - mtx_destroy(pf_overloadqueue_mtx); - mtx_destroy(pf_unlnkdrules_mtx); - uma_zdestroy(V_pf_sources_z); uma_zdestroy(V_pf_state_z); uma_zdestroy(V_pf_state_key_z); Modified: head/sys/netpfil/pf/pf_if.c == --- head/sys/netpfil/pf/pf_if.c Tue May 19 14:02:40 2015(r283106) +++ head/sys/netpfil/pf/pf_if.c Tue May 19 14:04:21 2015(r283107) @@ -103,6 +103,8 @@ LIST_HEAD(pfi_list, pfi_kif); static VNET_DEFINE(struct pfi_list, pfi_unlinked_kifs); #defineV_pfi_unlinked_kifs VNET(pfi_unlinked_kifs) static struct mtx pfi_unlnkdkifs_mtx; +MTX_SYSINIT(pfi_unlnkdkifs_mtx, pfi_unlnkdkifs_mtx, pf unlinked interfaces, +MTX_DEF); void pfi_initialize(void) @@ -115,8 +117,6 @@ pfi_initialize(void) V_pfi_buffer = malloc(V_pfi_buffer_max * sizeof(*V_pfi_buffer), PFI_MTYPE, M_WAITOK); - mtx_init(pfi_unlnkdkifs_mtx, pf unlinked interfaces, NULL, MTX_DEF); - kif = malloc(sizeof(*kif), PFI_MTYPE, M_WAITOK); PF_RULES_WLOCK(); V_pfi_all = pfi_kif_attach(kif, IFG_ALL); @@ -166,8 +166,6 @@ pfi_cleanup(void) free(p, PFI_MTYPE); } - mtx_destroy(pfi_unlnkdkifs_mtx); - free(V_pfi_buffer, PFI_MTYPE); } Modified: head/sys/netpfil/pf/pf_norm.c == --- head/sys/netpfil/pf/pf_norm.c Tue May 19 14:02:40 2015 (r283106) +++ head/sys/netpfil/pf/pf_norm.c Tue May 19 14:04:21 2015 (r283107) @@ -34,6 +34,7 @@ __FBSDID($FreeBSD$); #include opt_pf.h #include sys/param.h +#include sys/kernel.h #include sys/lock.h #include sys/mbuf.h #include sys/mutex.h @@ -108,6 +109,7 @@ struct pf_fragment_tag { }; static struct mtx pf_frag_mtx; +MTX_SYSINIT(pf_frag_mtx, pf_frag_mtx, pf fragments, MTX_DEF); #define PF_FRAG_LOCK() mtx_lock(pf_frag_mtx) #define PF_FRAG_UNLOCK() mtx_unlock(pf_frag_mtx) #define PF_FRAG_ASSERT() mtx_assert(pf_frag_mtx, MA_OWNED) @@ -197,8 +199,6 @@ pf_normalize_init(void) uma_zone_set_max(V_pf_frent_z, PFFRAG_FRENT_HIWAT); uma_zone_set_warning(V_pf_frent_z, PF frag entries limit reached); - mtx_init(pf_frag_mtx, pf fragments, NULL, MTX_DEF); - TAILQ_INIT(V_pf_fragqueue); TAILQ_INIT(V_pf_cachequeue); } @@ -210,8 +210,6 @@
Re: svn commit: r283105 - head/share/man/man9
On Tuesday, May 19, 2015 10:34:11 PM Bruce Evans wrote: It would be better to fix the function to match its documented name. Many other function names are similarly broken. For example, the primary function in getenv(9). I agree. :( I would prefer to restore the psignal() and getenv() names. getenv() also has the related misfeature that only getenv() was renamed, but not functions like getenv_int() (similar to pgsignal() for psignal()). Given that no attempt was made to handle the far more pervasive issues with printf and malloc, I think these renames should be reverted. If someone wants to have a user-mode kernel then whatever solution is devised for malloc() (whether #define or symbol renaming trickery) can be done for getenv() and psignal(). -- John Baldwin ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283106 - head/sys/netpfil/pf
Author: glebius Date: Tue May 19 14:02:40 2015 New Revision: 283106 URL: https://svnweb.freebsd.org/changeset/base/283106 Log: During module unload unlock rules before destroying UMA zones, which may sleep in uma_drain(). It is safe to unlock here, since we are already dehooked from pfil(9) and all pf threads had quit. Sponsored by: Nginx, Inc. Modified: head/sys/netpfil/pf/pf_ioctl.c Modified: head/sys/netpfil/pf/pf_ioctl.c == --- head/sys/netpfil/pf/pf_ioctl.c Tue May 19 11:33:04 2015 (r283105) +++ head/sys/netpfil/pf/pf_ioctl.c Tue May 19 14:02:40 2015 (r283106) @@ -3756,6 +3756,7 @@ pf_unload(void) wakeup_one(pf_purge_thread); rw_sleep(pf_purge_thread, pf_rules_lock, 0, pftmo, 0); } + PF_RULES_WUNLOCK(); pf_normalize_cleanup(); pfi_cleanup(); pfr_cleanup(); @@ -3763,7 +3764,6 @@ pf_unload(void) pf_cleanup(); if (IS_DEFAULT_VNET(curvnet)) pf_mtag_cleanup(); - PF_RULES_WUNLOCK(); destroy_dev(pf_dev); rw_destroy(pf_rules_lock); sx_destroy(pf_ioctl_lock); ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283088 - head/sys/ddb
On Tuesday, May 19, 2015 12:28:05 AM Pedro Giffuni wrote: Modified: head/sys/ddb/db_break.c == --- head/sys/ddb/db_break.c Mon May 18 22:14:06 2015 (r283087) +++ head/sys/ddb/db_break.c Mon May 18 22:27:46 2015 (r283088) @@ -155,12 +155,12 @@ db_find_breakpoint_here(db_addr_t addr) return db_find_breakpoint(db_map_addr(addr), addr); } -static boolean_tdb_breakpoints_inserted = TRUE; +static boolean_tdb_breakpoints_inserted = true; This code hasn't been churned to use the boolean type. It still uses boolean_t, which is plain int. TRUE and FALSE go with this type. true and false go with the boolean type. This probably makes no difference, because TRUE happens to be implemented with the same value as true and there are lots of implicit versions between the types. Yes, I noticed the return types are still ints. It doesn’t look difficult to convert it to use a real boolean type. In any case, I would prefer to go forward (using bool) instead of reverting this change. That wuld be sideways. I forgot to mention (again) in my previous reply that boolean_t is a mistake by me. KNF code doesn't even use the ! operator, but uses explicit comparison with 0. The boolean_t type and TRUE and FALSE are from Mach. They were used mainly in ddb and vm, and are still almost never used in kern. I used to like typedefs and a typedef for boolean types, and didn't know KNF very well, so in 1995 I moved the declaration of boolean_t from Mach vm code to sys/types.h to try to popularize it. This was a mistake. Fortunately, it is still rarely used in core kernel code. The boolean type is also almost never used for syscalls. In POSIX.1-2001, stdbool.h is inherited from C99, but is never used for any other POSIX API. Using it for syscalls would mainly cause portability problems. OK, I do understand the kernel wants to keep the C dialect somewhat limited, and adding stdbool.h doesn’t buy us any type safety here. I’ll revert the change (prob. tomorrow though). I will disagree with Bruce a bit and put my vote in for replacing boolean_t with bool where it is used. I do think that logically (if not strictly) your commit is a type mismatch as TRUE/FALSE is for boolean_t and true/false are for bool. I agree with Bruce that we probably don't want to use bool for system calls. However, I think using bool in the kernel itself is ok and that we should replace boolean_t with bool. -- John Baldwin ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283105 - head/share/man/man9
On Tue, 19 May 2015, Julian Elischer wrote: Author: julian Log: Only several years late, catch the psignal man page up to the fact that psignal has been renamed to kern_psignal since 9.0. MFC after: 1 week It would be better to fix the function to match its documented name. Many other function names are similarly broken. For example, the primary function in getenv(9). There is not a single syscall named foo() misnamed as sys_foo() in any section 9 man page, but I think that is because there never was a single syscall named whose kernel part foo() is documented as foo(9) in any man page, so there was no documentation except the source code to break by renaming. There is even less than null documentation for the kern_foo() layer of syscalls named foo(). Null documentation would be empty. The actual documentation is .Xr kern_openat 9 in devfs_set_cdevpriv.9. This reference is more broken than usual. As usual, the man page containing the pointer gives no hint on what might be relevant in the pointed-to man page. Here the pointed-to man page also doesn't exist. Modified: head/share/man/man9/psignal.9 Modified: head/share/man/man9/psignal.9 Now the name of this manpage is broken. It doesn't match the name of any function in it. == --- head/share/man/man9/psignal.9 Tue May 19 09:28:52 2015 (r283104) +++ head/share/man/man9/psignal.9 Tue May 19 11:33:04 2015 (r283105) @@ -33,6 +33,7 @@ .Os .Sh NAME .Nm psignal , +.Nm kern_psignal , .Nm pgsignal , .Nm gsignal , .Nm tdsignal psignal() was misnamed because there is a section 3 psignal() and namespaces are handled badly somewhere. The other functions here don't conflict with application names and were not renamed. This gives an inconsistent namespace here. All the other functions have shorter names without an underscore. If the functions (in userland too) had modern uglier names with 'signal' (or better 'sig', but that wouldn't be verbose enough) as a prefix, then renaming would cause larger inconsistencies, but wouldn't be necessary since there would be no conflict because p would be spelled verbosely as 'process' in the kernel and 'print' in userland. More important functions like printf() and malloc() weren't renamed since the churn from than would be too painful. The kernel is compiled with -ffreestanding to handle namespaces correctly in it. This is the correct way of preventing the compiler knowing too much about printf() and turning it into functions that don't exist in the kernel. The kernel malloc() is even more incompatible. printf(9) has the worse name printk() in Minix and Linux. I liked to get away from that. This was technically needed in Minix before C90 standardized things, in particular freestanding environments. Without a standard, the compiler might rewrite any library function like printf(). gcc didn't implement special support for freestanding environments until much later when it started rewriting printf(). BSD ignored this portability problem and just used printf(9). Bruce ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283111 - head/sys/netpfil/ipfw
Author: luigi Date: Tue May 19 14:49:31 2015 New Revision: 283111 URL: https://svnweb.freebsd.org/changeset/base/283111 Log: remove an extra ; after MODULE_DEPEND (would otherwise generate a warning with more verbose compiler flags) MFC after:1 week Modified: head/sys/netpfil/ipfw/dn_sched.h Modified: head/sys/netpfil/ipfw/dn_sched.h == --- head/sys/netpfil/ipfw/dn_sched.hTue May 19 14:23:33 2015 (r283110) +++ head/sys/netpfil/ipfw/dn_sched.hTue May 19 14:49:31 2015 (r283111) @@ -188,5 +188,5 @@ int dn_sched_modevent(module_t mod, int }; \ DECLARE_MODULE(name, name##_mod,\ SI_SUB_PROTO_IFATTACHDOMAIN, SI_ORDER_ANY); \ -MODULE_DEPEND(name, dummynet, 3, 3, 3); +MODULE_DEPEND(name, dummynet, 3, 3, 3) #endif /* _DN_SCHED_H */ ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283112 - in head: lib/libpmc sys/arm/arm sys/arm64/arm64 sys/arm64/include sys/conf sys/dev/hwpmc sys/sys
Author: br Date: Tue May 19 15:25:47 2015 New Revision: 283112 URL: https://svnweb.freebsd.org/changeset/base/283112 Log: Add Performance Monitoring Counters support for AArch64. Family-common and CPU-specific counters implemented. Supported CPUs: ARM Cortex A53/57/72. Reviewed by: andrew, bz, emaste, gnn, jhb Sponsored by: ARM Limited Differential Revision:https://reviews.freebsd.org/D2555 Added: head/sys/dev/hwpmc/hwpmc_arm64.c (contents, props changed) head/sys/dev/hwpmc/hwpmc_arm64.h (contents, props changed) head/sys/dev/hwpmc/hwpmc_arm64_md.c (contents, props changed) Modified: head/lib/libpmc/libpmc.c head/sys/arm/arm/pmu.c head/sys/arm64/arm64/intr_machdep.c head/sys/arm64/include/armreg.h head/sys/arm64/include/pmc_mdep.h head/sys/conf/files.arm64 head/sys/dev/hwpmc/pmc_events.h head/sys/sys/pmc.h Modified: head/lib/libpmc/libpmc.c == --- head/lib/libpmc/libpmc.cTue May 19 14:49:31 2015(r283111) +++ head/lib/libpmc/libpmc.cTue May 19 15:25:47 2015(r283112) @@ -82,6 +82,10 @@ static int xscale_allocate_pmc(enum pmc_ static int armv7_allocate_pmc(enum pmc_event _pe, char *_ctrspec, struct pmc_op_pmcallocate *_pmc_config); #endif +#if defined(__aarch64__) +static int arm64_allocate_pmc(enum pmc_event _pe, char *_ctrspec, +struct pmc_op_pmcallocate *_pmc_config); +#endif #if defined(__mips__) static int mips_allocate_pmc(enum pmc_event _pe, char* ctrspec, struct pmc_op_pmcallocate *_pmc_config); @@ -158,6 +162,7 @@ PMC_CLASSDEP_TABLE(p5, P5); PMC_CLASSDEP_TABLE(p6, P6); PMC_CLASSDEP_TABLE(xscale, XSCALE); PMC_CLASSDEP_TABLE(armv7, ARMV7); +PMC_CLASSDEP_TABLE(armv8, ARMV8); PMC_CLASSDEP_TABLE(mips24k, MIPS24K); PMC_CLASSDEP_TABLE(mips74k, MIPS74K); PMC_CLASSDEP_TABLE(octeon, OCTEON); @@ -263,6 +268,16 @@ static const struct pmc_event_descr west __PMC_EV_ALIAS_WESTMEREUC() }; +static const struct pmc_event_descr cortex_a53_event_table[] = +{ + __PMC_EV_ALIAS_ARMV8_CORTEX_A53() +}; + +static const struct pmc_event_descr cortex_a57_event_table[] = +{ + __PMC_EV_ALIAS_ARMV8_CORTEX_A57() +}; + /* * PMC_MDEP_TABLE(NAME, PRIMARYCLASS, ADDITIONAL_CLASSES...) * @@ -294,6 +309,8 @@ PMC_MDEP_TABLE(p5, P5, PMC_CLASS_SOFT, P PMC_MDEP_TABLE(p6, P6, PMC_CLASS_SOFT, PMC_CLASS_TSC); PMC_MDEP_TABLE(xscale, XSCALE, PMC_CLASS_SOFT, PMC_CLASS_XSCALE); PMC_MDEP_TABLE(armv7, ARMV7, PMC_CLASS_SOFT, PMC_CLASS_ARMV7); +PMC_MDEP_TABLE(cortex_a53, ARMV8, PMC_CLASS_SOFT, PMC_CLASS_ARMV8); +PMC_MDEP_TABLE(cortex_a57, ARMV8, PMC_CLASS_SOFT, PMC_CLASS_ARMV8); PMC_MDEP_TABLE(mips24k, MIPS24K, PMC_CLASS_SOFT, PMC_CLASS_MIPS24K); PMC_MDEP_TABLE(mips74k, MIPS74K, PMC_CLASS_SOFT, PMC_CLASS_MIPS74K); PMC_MDEP_TABLE(octeon, OCTEON, PMC_CLASS_SOFT, PMC_CLASS_OCTEON); @@ -362,6 +379,10 @@ PMC_CLASS_TABLE_DESC(xscale, XSCALE, xsc #endif PMC_CLASS_TABLE_DESC(armv7, ARMV7, armv7, armv7); #endif +#ifdefined(__aarch64__) +PMC_CLASS_TABLE_DESC(cortex_a53, ARMV8, cortex_a53, arm64); +PMC_CLASS_TABLE_DESC(cortex_a57, ARMV8, cortex_a57, arm64); +#endif #if defined(__mips__) PMC_CLASS_TABLE_DESC(mips24k, MIPS24K, mips24k, mips); PMC_CLASS_TABLE_DESC(mips74k, MIPS74K, mips74k, mips); @@ -2429,6 +2450,26 @@ armv7_allocate_pmc(enum pmc_event pe, ch } #endif +#ifdefined(__aarch64__) +static struct pmc_event_alias cortex_a53_aliases[] = { + EV_ALIAS(NULL, NULL) +}; +static struct pmc_event_alias cortex_a57_aliases[] = { + EV_ALIAS(NULL, NULL) +}; +static int +arm64_allocate_pmc(enum pmc_event pe, char *ctrspec __unused, +struct pmc_op_pmcallocate *pmc_config __unused) +{ + switch (pe) { + default: + break; + } + + return (0); +} +#endif + #if defined(__mips__) static struct pmc_event_alias mips24k_aliases[] = { @@ -2938,6 +2979,19 @@ pmc_event_names_of_class(enum pmc_class ev = armv7_event_table; count = PMC_EVENT_TABLE_SIZE(armv7); break; + case PMC_CLASS_ARMV8: + switch (cpu_info.pm_cputype) { + default: + case PMC_CPU_ARMV8_CORTEX_A53: + ev = cortex_a53_event_table; + count = PMC_EVENT_TABLE_SIZE(cortex_a53); + break; + case PMC_CPU_ARMV8_CORTEX_A57: + ev = cortex_a57_event_table; + count = PMC_EVENT_TABLE_SIZE(cortex_a57); + break; + } + break; case PMC_CLASS_MIPS24K: ev = mips24k_event_table; count = PMC_EVENT_TABLE_SIZE(mips24k); @@ -3235,6 +3289,16 @@ pmc_init(void) pmc_class_table[n] = armv7_class_table_descr; break; #endif +#if defined(__aarch64__) + case PMC_CPU_ARMV8_CORTEX_A53: +
svn commit: r283113 - head/sys/netpfil/ipfw
Author: luigi Date: Tue May 19 15:29:00 2015 New Revision: 283113 URL: https://svnweb.freebsd.org/changeset/base/283113 Log: remove a redundant ; at the end of a function MFC after:1 week Modified: head/sys/netpfil/ipfw/ip_dn_private.h Modified: head/sys/netpfil/ipfw/ip_dn_private.h == --- head/sys/netpfil/ipfw/ip_dn_private.h Tue May 19 15:25:47 2015 (r283112) +++ head/sys/netpfil/ipfw/ip_dn_private.h Tue May 19 15:29:00 2015 (r283113) @@ -92,7 +92,7 @@ set_oid(struct dn_id *o, int type, int l o-type = type; o-len = len; o-subtype = 0; -}; +} /* * configuration and global data for a dummynet instance ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283116 - head/sys/netpfil/ipfw
Author: luigi Date: Tue May 19 16:51:30 2015 New Revision: 283116 URL: https://svnweb.freebsd.org/changeset/base/283116 Log: use proper types to represent function pointers Modified: head/sys/netpfil/ipfw/ip_fw_pfil.c head/sys/netpfil/ipfw/ip_fw_sockopt.c Modified: head/sys/netpfil/ipfw/ip_fw_pfil.c == --- head/sys/netpfil/ipfw/ip_fw_pfil.c Tue May 19 16:23:47 2015 (r283115) +++ head/sys/netpfil/ipfw/ip_fw_pfil.c Tue May 19 16:51:30 2015 (r283116) @@ -505,7 +505,7 @@ static int ipfw_hook(int onoff, int pf) { struct pfil_head *pfh; - void *hook_func; + pfil_func_t hook_func; pfh = pfil_head_get(PFIL_TYPE_AF, pf); if (pfh == NULL) Modified: head/sys/netpfil/ipfw/ip_fw_sockopt.c == --- head/sys/netpfil/ipfw/ip_fw_sockopt.c Tue May 19 16:23:47 2015 (r283115) +++ head/sys/netpfil/ipfw/ip_fw_sockopt.c Tue May 19 16:51:30 2015 (r283116) @@ -2846,7 +2846,7 @@ compare_sh(const void *_a, const void *_ * Returns pointer to handler or NULL. */ static struct ipfw_sopt_handler * -find_sh(uint16_t code, uint8_t version, void *handler) +find_sh(uint16_t code, uint8_t version, sopt_handler_f *handler) { struct ipfw_sopt_handler *sh, h; ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283117 - head/sys/netipsec
Author: ae Date: Tue May 19 17:14:27 2015 New Revision: 283117 URL: https://svnweb.freebsd.org/changeset/base/283117 Log: Remove unneded mbuf length adjustment, M_PREPEND() already did that. PR: 139387 MFC after:1 week Modified: head/sys/netipsec/keysock.c Modified: head/sys/netipsec/keysock.c == --- head/sys/netipsec/keysock.c Tue May 19 16:51:30 2015(r283116) +++ head/sys/netipsec/keysock.c Tue May 19 17:14:27 2015(r283117) @@ -149,8 +149,6 @@ key_sendup0(struct rawcb *rp, struct mbu PFKEYSTAT_INC(in_nomem); return (ENOBUFS); } - m-m_pkthdr.len += sizeof(*pmsg); /* XXX: is this correct? */ - pmsg = mtod(m, struct sadb_msg *); bzero(pmsg, sizeof(*pmsg)); pmsg-sadb_msg_version = PF_KEY_V2; ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283118 - head/sbin/ipfw
Author: melifaro Date: Tue May 19 18:29:13 2015 New Revision: 283118 URL: https://svnweb.freebsd.org/changeset/base/283118 Log: Bring back support for checking tables via ipfw -n. Currently we have different table key types which can easily interfere with each other (numbers and IPv4 address, interface names and hostnames, flows and hostnames/addresses). This conflicts are solved by [auto-]creating _typed_ tables, so after table is created, only keys of given type can be inserted to that table. ipfw(8) consults with kernel about key/value type for particular table so it knows key/value interpretation. However, we have 2 cases (adding entries to non-existing table and parsing configuration file via `ipfw -n`) when kernel is unable to provide us table info we need. Fix the latter case by partially importing old `table_fill_xentry()` parse function responsible for guessing key type. Sponsored by: Yandex LLC Modified: head/sbin/ipfw/tables.c Modified: head/sbin/ipfw/tables.c == --- head/sbin/ipfw/tables.c Tue May 19 17:14:27 2015(r283117) +++ head/sbin/ipfw/tables.c Tue May 19 18:29:13 2015(r283118) @@ -1310,6 +1310,63 @@ tentry_fill_key_type(char *arg, ipfw_obj tentry-masklen = masklen; } +/* + * Tries to guess table key type. + * This procedure is used in legacy table auto-create + * code AND in `ipfw -n` ruleset checking. + * + * Imported from old table_fill_xentry() parse code. + */ +static int +guess_key_type(char *key, uint8_t *ptype) +{ + char *p; + struct in6_addr addr; + uint32_t kv; + + if (ishexnumber(*key) != 0 || *key == ':') { + /* Remove / if exists */ + if ((p = strchr(key, '/')) != NULL) + *p = '\0'; + + if ((inet_pton(AF_INET, key, addr) == 1) || + (inet_pton(AF_INET6, key, addr) == 1)) { + *ptype = IPFW_TABLE_CIDR; + if (p != NULL) + *p = '/'; + return (0); + } else { + /* Port or any other key */ + /* Skip non-base 10 entries like 'fa1' */ + kv = strtol(key, p, 10); + if (*p == '\0') { + *ptype = IPFW_TABLE_NUMBER; + return (0); + } else if ((p != key) (*p == '.')) { + /* +* Warn on IPv4 address strings +* which are valid for inet_aton() but not +* in inet_pton(). +* +* Typical examples: '10.5' or '10.0.0.05' +*/ + return (1); + } + } + } + + if (strchr(key, '.') == NULL) { + *ptype = IPFW_TABLE_INTERFACE; + return (0); + } + + if (lookup_host(key, (struct in_addr *)addr) != 0) + return (1); + + *ptype = IPFW_TABLE_CIDR; + return (0); +} + static void tentry_fill_key(ipfw_obj_header *oh, ipfw_obj_tentry *tent, char *key, int add, uint8_t *ptype, uint32_t *pvmask, ipfw_xtable_info *xi) @@ -1317,7 +1374,6 @@ tentry_fill_key(ipfw_obj_header *oh, ipf uint8_t type, tflags; uint32_t vmask; int error; - char *del; type = 0; tflags = 0; @@ -1329,10 +1385,24 @@ tentry_fill_key(ipfw_obj_header *oh, ipf error = 0; if (error == 0) { - /* Table found. */ - type = xi-type; - tflags = xi-tflags; - vmask = xi-vmask; + if (co.test_only == 0) { + /* Table found */ + type = xi-type; + tflags = xi-tflags; + vmask = xi-vmask; + } else { + /* +* we're running `ipfw -n` +* Compability layer: try to guess key type +* before failing. +*/ + if (guess_key_type(key, type) != 0) { + /* Inknown key */ + errx(EX_USAGE, Cannot guess + key '%s' type, key); + } + vmask = IPFW_VTYPE_LEGACY; + } } else { if (error != ESRCH) errx(EX_OSERR, Error requesting table %s info, @@ -1341,24 +1411,16 @@ tentry_fill_key(ipfw_obj_header *oh, ipf errx(EX_DATAERR, Table %s does not exist, oh-ntlv.name);
svn commit: r283119 - head/sys/dev/ixl
Author: jhb Date: Tue May 19 18:35:18 2015 New Revision: 283119 URL: https://svnweb.freebsd.org/changeset/base/283119 Log: Remove executable property from several ixl(4) source files. Differential Revision:https://reviews.freebsd.org/D2583 Reviewed by: erj Modified: Directory Properties: head/sys/dev/ixl/i40e_adminq.c (props changed) head/sys/dev/ixl/i40e_adminq.h (props changed) head/sys/dev/ixl/i40e_adminq_cmd.h (props changed) head/sys/dev/ixl/i40e_alloc.h (props changed) head/sys/dev/ixl/i40e_common.c (props changed) head/sys/dev/ixl/i40e_hmc.c (props changed) head/sys/dev/ixl/i40e_hmc.h (props changed) head/sys/dev/ixl/i40e_lan_hmc.c (props changed) head/sys/dev/ixl/i40e_lan_hmc.h (props changed) head/sys/dev/ixl/i40e_nvm.c (props changed) head/sys/dev/ixl/i40e_osdep.c (props changed) head/sys/dev/ixl/i40e_osdep.h (props changed) head/sys/dev/ixl/i40e_prototype.h (props changed) head/sys/dev/ixl/i40e_register.h (props changed) head/sys/dev/ixl/i40e_status.h (props changed) head/sys/dev/ixl/i40e_type.h (props changed) head/sys/dev/ixl/i40e_virtchnl.h (props changed) head/sys/dev/ixl/if_ixl.c (props changed) head/sys/dev/ixl/ixl_txrx.c (props changed) ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283104 - head/sys/geom/uncompress
Sweet, just checking. Thanks for finding this! -a ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283120 - in head: lib/libpmc sys/dev/hwpmc sys/sys
Author: jhb Date: Tue May 19 18:58:18 2015 New Revision: 283120 URL: https://svnweb.freebsd.org/changeset/base/283120 Log: Use fixed enum values for PMC_CLASSES(). This removes one of the frequent causes of ABI breakage when new CPU types are added to hwpmc(4). Differential Revision:https://reviews.freebsd.org/D2586 Reviewed by: davide, emaste, gnn (earlier version) MFC after:2 weeks Modified: head/lib/libpmc/libpmc.c head/sys/dev/hwpmc/hwpmc_mod.c head/sys/sys/pmc.h Modified: head/lib/libpmc/libpmc.c == --- head/lib/libpmc/libpmc.cTue May 19 18:35:18 2015(r283119) +++ head/lib/libpmc/libpmc.cTue May 19 18:58:18 2015(r283120) @@ -423,9 +423,14 @@ static const char * pmc_capability_names __PMC_CAPS() }; -static const char * pmc_class_names[] = { +struct pmc_class_map { + enum pmc_class pm_class; + const char *pm_name; +}; + +static const struct pmc_class_map pmc_class_names[] = { #undef __PMC_CLASS -#define __PMC_CLASS(C) #C , +#define __PMC_CLASS(S,V,D) { .pm_class = PMC_CLASS_##S, .pm_name = #S } , __PMC_CLASSES() }; @@ -3362,9 +3367,11 @@ pmc_name_of_capability(enum pmc_caps cap const char * pmc_name_of_class(enum pmc_class pc) { - if ((int) pc = PMC_CLASS_FIRST - pc = PMC_CLASS_LAST) - return (pmc_class_names[pc]); + size_t n; + + for (n = 0; n PMC_TABLE_SIZE(pmc_class_names); n++) + if (pc == pmc_class_names[n].pm_class) + return (pmc_class_names[n].pm_name); errno = EINVAL; return (NULL); Modified: head/sys/dev/hwpmc/hwpmc_mod.c == --- head/sys/dev/hwpmc/hwpmc_mod.c Tue May 19 18:35:18 2015 (r283119) +++ head/sys/dev/hwpmc/hwpmc_mod.c Tue May 19 18:58:18 2015 (r283120) @@ -4625,12 +4625,20 @@ pmc_kld_unload(void *arg __unused, const /* * initialization */ +static const char * +pmc_name_of_pmcclass(enum pmc_class class) +{ -static const char *pmc_name_of_pmcclass[] = { + switch (class) { #undef __PMC_CLASS -#define__PMC_CLASS(N) #N , - __PMC_CLASSES() -}; +#define__PMC_CLASS(S,V,D) \ + case PMC_CLASS_##S: \ + return #S; + __PMC_CLASSES(); + default: + return (unknown); + } +} /* * Base class initializer: allocate structure and set default classes. @@ -4909,7 +4917,7 @@ pmc_initialize(void) for (n = 0; n (int) md-pmd_nclass; n++) { pcd = md-pmd_classdep[n]; printf( %s/%d/%d/0x%b, - pmc_name_of_pmcclass[pcd-pcd_class], + pmc_name_of_pmcclass(pcd-pcd_class), pcd-pcd_num, pcd-pcd_width, pcd-pcd_caps, Modified: head/sys/sys/pmc.h == --- head/sys/sys/pmc.h Tue May 19 18:35:18 2015(r283119) +++ head/sys/sys/pmc.h Tue May 19 18:58:18 2015(r283120) @@ -123,30 +123,30 @@ enum pmc_cputype { */ #define__PMC_CLASSES() \ - __PMC_CLASS(TSC)/* CPU Timestamp counter */ \ - __PMC_CLASS(K7) /* AMD K7 performance counters */ \ - __PMC_CLASS(K8) /* AMD K8 performance counters */ \ - __PMC_CLASS(P5) /* Intel Pentium counters */\ - __PMC_CLASS(P6) /* Intel Pentium Pro counters */\ - __PMC_CLASS(P4) /* Intel Pentium-IV counters */ \ - __PMC_CLASS(IAF)/* Intel Core2/Atom, fixed function */ \ - __PMC_CLASS(IAP)/* Intel Core...Atom, programmable */ \ - __PMC_CLASS(UCF)/* Intel Uncore fixed function */ \ - __PMC_CLASS(UCP)/* Intel Uncore programmable */ \ - __PMC_CLASS(XSCALE) /* Intel XScale counters */ \ - __PMC_CLASS(ARMV7) /* ARMv7 */ \ - __PMC_CLASS(ARMV8) /* ARMv8 */ \ - __PMC_CLASS(MIPS24K)/* MIPS 24K */ \ - __PMC_CLASS(OCTEON) /* Cavium Octeon */ \ - __PMC_CLASS(MIPS74K)/* MIPS 74K */ \ - __PMC_CLASS(PPC7450)/* Motorola MPC7450 class */\ - __PMC_CLASS(PPC970) /* IBM PowerPC 970 class */ \ - __PMC_CLASS(E500) /* Freescale e500 class */ \ - __PMC_CLASS(SOFT) /* Software events */ + __PMC_CLASS(TSC,0x000, CPU Timestamp
Re: svn commit: r283105 - head/share/man/man9
On Tue, May 19, 2015 at 8:34 AM, Bruce Evans b...@optusnet.com.au wrote: On Tue, 19 May 2015, Julian Elischer wrote: Author: julian Log: Only several years late, catch the psignal man page up to the fact that psignal has been renamed to kern_psignal since 9.0. MFC after: 1 week It would be better to fix the function to match its documented name. Whoops, I missed this prior to committing r283114. Julian, 'mandoc -Tlint share/man/man9/psignal.9' would complain about the trailing whitespace. -Ben ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283104 - head/sys/geom/uncompress
Hi, How big are the images you were using? Did you try on the smaller footprint boards (eg things with 128MB RAM) to see if it changed behaviour? -a On 19 May 2015 at 02:28, Andrey V. Elsukov a...@freebsd.org wrote: Author: ae Date: Tue May 19 09:28:52 2015 New Revision: 283104 URL: https://svnweb.freebsd.org/changeset/base/283104 Log: Read GEOM_UNCOMPRESS metadata using several requests that fit into MAXPHYS. For large compressed images the metadata size can be bigger than MAXPHYS and this triggers KASSERT in g_read_data(). Also use g_free() to free memory allocated by g_read_data(). PR: 199476 MFC after:2 weeks Modified: head/sys/geom/uncompress/g_uncompress.c Modified: head/sys/geom/uncompress/g_uncompress.c == --- head/sys/geom/uncompress/g_uncompress.c Tue May 19 09:22:06 2015 (r283103) +++ head/sys/geom/uncompress/g_uncompress.c Tue May 19 09:28:52 2015 (r283104) @@ -464,7 +464,8 @@ g_uncompress_taste(struct g_class *mp, s struct g_provider *pp2; struct g_consumer *cp; struct g_geom *gp; - uint32_t i, total_offsets, type; + uint64_t *offsets; + uint32_t i, r, total, total_offsets, type; uint8_t *buf; int error; @@ -499,8 +500,8 @@ g_uncompress_taste(struct g_class *mp, s */ DPRINTF((%s: media sectorsize %u, mediasize %jd\n, gp-name, pp-sectorsize, (intmax_t)pp-mediasize)); - i = roundup(sizeof(struct cloop_header), pp-sectorsize); - buf = g_read_data(cp, 0, i, NULL); + total = roundup(sizeof(struct cloop_header), pp-sectorsize); + buf = g_read_data(cp, 0, total, NULL); if (buf == NULL) goto err; header = (struct cloop_header *) buf; @@ -557,20 +558,29 @@ g_uncompress_taste(struct g_class *mp, s gp-name, sc-nblocks); goto err; } - free(buf, M_GEOM); + g_free(buf); - i = roundup((sizeof(struct cloop_header) + - total_offsets * sizeof(uint64_t)), pp-sectorsize); - buf = g_read_data(cp, 0, i, NULL); - if (buf == NULL) - goto err; sc-offsets = malloc(total_offsets * sizeof(uint64_t), - M_GEOM_UNCOMPRESS, M_WAITOK); - for (i = 0; i = total_offsets; i++) { - sc-offsets[i] = be64toh(((uint64_t *) - (buf+sizeof(struct cloop_header)))[i]); + M_GEOM_UNCOMPRESS, M_WAITOK | M_ZERO); + total = roundup((sizeof(struct cloop_header) + + total_offsets * sizeof(uint64_t)), pp-sectorsize); +#defineRSZ ((total - r) MAXPHYS ? MAXPHYS: (total - r)) + for (r = 0, i = 0; r total; r += MAXPHYS) { + buf = g_read_data(cp, r, RSZ, error); + if (buf == NULL) { + free(sc-offsets, M_GEOM_UNCOMPRESS); + goto err; + } + offsets = (uint64_t *)buf; + if (r == 0) + offsets += + sizeof(struct cloop_header) / sizeof(uint64_t); + for (; i total_offsets offsets (uint64_t *)(buf + RSZ); + i++, offsets++) + sc-offsets[i] = be64toh(*offsets); + g_free(buf); } - free(buf, M_GEOM); +#undef RSZ buf = NULL; DPRINTF((%s: done reading offsets\n, gp-name)); mtx_init(sc-last_mtx, geom_uncompress cache, NULL, MTX_DEF); @@ -619,7 +629,7 @@ err: g_topology_lock(); g_access(cp, -1, 0, 0); if (buf != NULL) - free(buf, M_GEOM); + g_free(buf); if (gp-softc != NULL) { g_uncompress_softc_free(gp-softc, NULL); gp-softc = NULL; ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283132 - head/lib/libproc
Author: bapt Date: Tue May 19 22:23:15 2015 New Revision: 283132 URL: https://svnweb.freebsd.org/changeset/base/283132 Log: Fix underlinking Modified: head/lib/libproc/Makefile Modified: head/lib/libproc/Makefile == --- head/lib/libproc/Makefile Tue May 19 22:22:53 2015(r283131) +++ head/lib/libproc/Makefile Tue May 19 22:23:15 2015(r283132) @@ -23,6 +23,8 @@ LIBADD+= cxxrt LIBADD+= supcplusplus .endif +LIBADD+= elf rtld_db util + .if ${MK_CDDL} != no LIBADD+= ctf IGNORE_PRAGMA= YES ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283131 - head/share/mk
Author: bapt Date: Tue May 19 22:22:53 2015 New Revision: 283131 URL: https://svnweb.freebsd.org/changeset/base/283131 Log: Register libdtrace and its direct and indirect dependencies Register librdlt_db Register libproc dependencies Register libctf dependencies Modified: head/share/mk/src.libnames.mk Modified: head/share/mk/src.libnames.mk == --- head/share/mk/src.libnames.mk Tue May 19 21:59:00 2015 (r283130) +++ head/share/mk/src.libnames.mk Tue May 19 22:22:53 2015 (r283131) @@ -78,6 +78,7 @@ _LIBRARIES= \ devstat \ dialog \ dpv \ + dtrace \ dwarf \ edit \ elf \ @@ -133,6 +134,7 @@ _LIBRARIES= \ rpcsec_gss \ rpcsvc \ rt \ + rtld_db \ sbuf \ sdp \ sm \ @@ -230,6 +232,9 @@ _DP_gssapi_krb5+= gssapi krb5 crypto rok _DP_lzma= pthread _DP_ucl= m _DP_vmmapi=util +_DP_ctf= z +_DP_proc= rtld_db util +_DP_dtrace=rtld_db pthread # Define spacial cases LDADD_supcplusplus=-lsupc++ @@ -275,6 +280,9 @@ LDADD_ipf+= ${LDADD_kvm} DPADD_mt+= ${DPADD_sbuf} LDADD_mt+= ${LDADD_sbuf} +DPADD_dtrace+= ${DPADD_ctf} ${DPADD_elf} ${DPADD_proc} +LDADD_dtrace+= ${LDADD_ctf} ${LDADD_elf} ${LDADD_proc} + # The following depends on libraries which are using pthread DPADD_hdb+=${DPADD_pthread} LDADD_hdb+=${LDADD_pthread} ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283134 - in head/cddl/usr.sbin: lockstat plockstat
Author: bapt Date: Tue May 19 22:29:11 2015 New Revision: 283134 URL: https://svnweb.freebsd.org/changeset/base/283134 Log: Reduce overlinking. Because of libdtrace there is still a bit a overlinking but nothing we can deal with easily Modified: head/cddl/usr.sbin/lockstat/Makefile head/cddl/usr.sbin/plockstat/Makefile Modified: head/cddl/usr.sbin/lockstat/Makefile == --- head/cddl/usr.sbin/lockstat/MakefileTue May 19 22:24:19 2015 (r283133) +++ head/cddl/usr.sbin/lockstat/MakefileTue May 19 22:29:11 2015 (r283134) @@ -21,10 +21,6 @@ CFLAGS+= -DNEED_ERRLOC -g #YFLAGS+= -d -DPADD= ${LIBPTHREAD} ${LIBDTRACE} ${LIBY} ${LIBL} ${LIBPROC} \ - ${LIBCTF} ${LIBELF} ${LIBZ} ${LIBRT} ${LIBUTIL} \ - ${LIBRTLD_DB} -LDADD= -lpthread -ldtrace -ly -ll -lproc -lctf -lelf -lz -lrt -lutil \ - -lrtld_db +LIBADD=elf dtrace rt .include bsd.prog.mk Modified: head/cddl/usr.sbin/plockstat/Makefile == --- head/cddl/usr.sbin/plockstat/Makefile Tue May 19 22:24:19 2015 (r283133) +++ head/cddl/usr.sbin/plockstat/Makefile Tue May 19 22:29:11 2015 (r283134) @@ -18,9 +18,6 @@ CFLAGS+= -I${.CURDIR}/../../../sys/cddl/ -I${.CURDIR}/../../../cddl/lib/libdtrace \ -I${.CURDIR}/../../../sys -DPADD= ${LIBPTHREAD} ${LIBDTRACE} ${LIBY} ${LIBL} ${LIBPROC} ${LIBCTF}\ - ${LIBELF} ${LIBZ} ${LIBRT} ${LIBRTLD_DB} ${LIBUTIL} -LDADD= -lpthread -ldtrace -ly -ll -lproc -lctf -lelf -lz -lrt \ - -lrtld_db -lutil +LIBADD=dtrace proc .include bsd.prog.mk ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283127 - head/sys/arm/conf
Author: imp Date: Tue May 19 21:16:51 2015 New Revision: 283127 URL: https://svnweb.freebsd.org/changeset/base/283127 Log: Add NFS server to mix (for easier, in-place updates). Move to partition 2 for root (since partition 1 is reserved for FAT files the Atmel ROMs can load). Modified: head/sys/arm/conf/SAM9G20EK Modified: head/sys/arm/conf/SAM9G20EK == --- head/sys/arm/conf/SAM9G20EK Tue May 19 21:16:37 2015(r283126) +++ head/sys/arm/conf/SAM9G20EK Tue May 19 21:16:51 2015(r283127) @@ -1,4 +1,5 @@ # Kernel configuration for Atmel AT91SAM9G20EK Rev B. development card +# Many after-market boards follow its conventions. # # For more information on this file, please read the handbook section on # Kernel Configuration Files: @@ -40,8 +41,8 @@ options FFS # Berkeley Fast Filesyste #options MD_ROOT_SIZE=4096 # 4MB ram disk optionsNANDFS # NAND file system optionsNFSCL # Network Filesystem Client -#options NFSD# Network Filesystem Server -#options NFSLOCKD# Network Lock Manager +optionsNFSD# Network Filesystem Server +optionsNFSLOCKD# Network Lock Manager #options NFS_ROOT# NFS usable as /, requires NFSCL #options MSDOSFS # MSDOS Filesystem #options CD9660 # ISO 9660 Filesystem @@ -59,6 +60,7 @@ options _KPOSIX_PRIORITY_SCHEDULING # P # Debugging support. Always need this: optionsKDB # Enable kernel debugger support optionsDDB # Enable the kernel debugger +# Always turn these off, even in -current builds, they are too slow. #options INVARIANTS # Enable calls of extra sanity checking #options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS #options WITNESS # Enable checks to detect deadlocks and cycles @@ -72,7 +74,9 @@ options DDB # Enable the kernel debug #options BOOTP_NFSV3 #options BOOTP_WIRED_TO=ate0 -optionsROOTDEVNAME=\ufs:/dev/mmcsd0s1a\ +# s2 because s1 is reserved for the DOS parittions sometimes needed to +# boot off SD cards on the G20 and newer chips. +optionsROOTDEVNAME=\ufs:/dev/mmcsd0s2a\ # kernel/memory size reduction optionsMUTEX_NOINLINE ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283126 - head/sys/arm/arm
Author: imp Date: Tue May 19 21:16:37 2015 New Revision: 283126 URL: https://svnweb.freebsd.org/changeset/base/283126 Log: Improve comment about unmapped I/O and fix typos. Submitted by: Matteo Riondato MFC After: 2 days Modified: head/sys/arm/arm/pmap.c Modified: head/sys/arm/arm/pmap.c == --- head/sys/arm/arm/pmap.c Tue May 19 21:00:53 2015(r283125) +++ head/sys/arm/arm/pmap.c Tue May 19 21:16:37 2015(r283126) @@ -4311,10 +4311,10 @@ pmap_copy_page(vm_page_t src, vm_page_t } /* - * We have code to do unmapped I/O. However, it isn't quite right - * an causes un-page-aligned I/O to devices to fail (most notably - * newfs or fsck). We give up a little performance to do this, but - * we trade that for rock-solid stability so it is a good trade. + * We have code to do unmapped I/O. However, it isn't quite right and + * causes un-page-aligned I/O to devices to fail (most notably newfs + * or fsck). We give up a little performance to not allow unmapped I/O + * to gain stability. */ int unmapped_buf_allowed = 0; ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283133 - in head/cddl: lib/libdtrace usr.sbin/dtrace
Author: bapt Date: Tue May 19 22:24:19 2015 New Revision: 283133 URL: https://svnweb.freebsd.org/changeset/base/283133 Log: Correctly link libdtrace and convert to LIBADD Make dtrace only link to libdtrace Modified: head/cddl/lib/libdtrace/Makefile head/cddl/usr.sbin/dtrace/Makefile Modified: head/cddl/lib/libdtrace/Makefile == --- head/cddl/lib/libdtrace/MakefileTue May 19 22:23:15 2015 (r283132) +++ head/cddl/lib/libdtrace/MakefileTue May 19 22:24:19 2015 (r283133) @@ -104,6 +104,8 @@ LFLAGS+=-l YFLAGS+=-d +LIBADD=ctf elf proc pthread rtld_db + CLEANFILES=dt_errtags.c dt_names.c dt_errtags.c: Modified: head/cddl/usr.sbin/dtrace/Makefile == --- head/cddl/usr.sbin/dtrace/Makefile Tue May 19 22:23:15 2015 (r283132) +++ head/cddl/usr.sbin/dtrace/Makefile Tue May 19 22:24:19 2015 (r283133) @@ -20,9 +20,6 @@ CFLAGS+= -I${.CURDIR}/../../../sys/cddl/ #CFLAGS+= -DNEED_ERRLOC #YFLAGS+= -d -DPADD= ${LIBPTHREAD} ${LIBDTRACE} ${LIBY} ${LIBL} ${LIBPROC} \ - ${LIBCTF} ${LIBELF} ${LIBZ} ${LIBUTIL} ${LIBRTLD_DB} -LDADD= -lpthread -ldtrace -ly -ll -lproc -lctf -lelf -lz -lutil \ - -lrtld_db +LIBADD=dtrace .include bsd.prog.mk ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283128 - head/sys/dev/mmc
Author: imp Date: Tue May 19 21:16:53 2015 New Revision: 283128 URL: https://svnweb.freebsd.org/changeset/base/283128 Log: Re-select the SD card before getting the SD status. On a couple Atmel boards, this prevents some error messages during enumeration and also gives us the correct erase block size. They appear to be harmless elsewhere. # Note: we treat too many commands as 'can't fail' if they don't work # after a couple of retries. We need to fix that, but not today... Modified: head/sys/dev/mmc/mmc.c Modified: head/sys/dev/mmc/mmc.c == --- head/sys/dev/mmc/mmc.c Tue May 19 21:16:51 2015(r283127) +++ head/sys/dev/mmc/mmc.c Tue May 19 21:16:53 2015(r283128) @@ -1379,6 +1379,20 @@ mmc_discover_cards(struct mmc_softc *sc) ivar-hs_tran_speed = SD_MAX_HS; } } + + /* +* We reselect the card here. Some cards become +* unselected and timeout with the above two commands, +* although the state tables / diagrams in the standard +* suggest they go back to the transfer state. The only +* thing we use from the sd_status is the erase sector +* size, but it is still nice to get that right. It is +* normally harmless for cards not misbehaving. The +* Atmel bridge will complain about this command timing +* out. Others seem to handle it correctly, so it may +* be a combination of card and controller. +*/ + mmc_select_card(sc, ivar-rca); mmc_app_sd_status(sc, ivar-rca, ivar-raw_sd_status); mmc_app_decode_sd_status(ivar-raw_sd_status, ivar-sd_status); ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283125 - in head/lib/csu: . i386 i386-elf
Author: emaste Date: Tue May 19 21:00:53 2015 New Revision: 283125 URL: https://svnweb.freebsd.org/changeset/base/283125 Log: All FreeBSD platforms are elf: move i386-elf to i386 This was a leftover from when we had both i386 a.out and ELF. Reviewed by: kib, imp Sponsored by: The FreeBSD Foundation Differential Revision:https://reviews.freebsd.org/D2591 Added: head/lib/csu/i386/ - copied from r283117, head/lib/csu/i386-elf/ Deleted: head/lib/csu/i386-elf/ Modified: head/lib/csu/Makefile Modified: head/lib/csu/Makefile == --- head/lib/csu/Makefile Tue May 19 19:17:20 2015(r283124) +++ head/lib/csu/Makefile Tue May 19 21:00:53 2015(r283125) @@ -1,8 +1,7 @@ # $FreeBSD$ -ARCH= ${MACHINE_ARCH:S/i386/i386-elf/} -.if exists(${.CURDIR}/${ARCH}) -SUBDIR+= ${ARCH} +.if exists(${.CURDIR}/${MACHINE_ARCH}) +SUBDIR+= ${MACHINE_ARCH} .else SUBDIR+= ${MACHINE_CPUARCH} .endif ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283129 - head/cddl/usr.bin/ctfdump
Author: bapt Date: Tue May 19 21:57:11 2015 New Revision: 283129 URL: https://svnweb.freebsd.org/changeset/base/283129 Log: Convert to LIBADD Remove dependency on pthread, it is not needed Modified: head/cddl/usr.bin/ctfdump/Makefile Modified: head/cddl/usr.bin/ctfdump/Makefile == --- head/cddl/usr.bin/ctfdump/Makefile Tue May 19 21:16:53 2015 (r283128) +++ head/cddl/usr.bin/ctfdump/Makefile Tue May 19 21:57:11 2015 (r283129) @@ -17,7 +17,6 @@ CFLAGS+= -I${OPENSOLARIS_USR_DISTDIR} \ -I${OPENSOLARIS_USR_DISTDIR}/tools/ctf/common \ -I${OPENSOLARIS_SYS_DISTDIR}/uts/common -DPADD= ${LIBPTHREAD} ${LIBELF} ${LIBZ} -LDADD= -lpthread -lelf -lz +LIBADD=elf z .include bsd.prog.mk ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283130 - head/cddl/usr.bin/ctfconvert
Author: bapt Date: Tue May 19 21:59:00 2015 New Revision: 283130 URL: https://svnweb.freebsd.org/changeset/base/283130 Log: Convert to LIBADD Modified: head/cddl/usr.bin/ctfconvert/Makefile Modified: head/cddl/usr.bin/ctfconvert/Makefile == --- head/cddl/usr.bin/ctfconvert/Makefile Tue May 19 21:57:11 2015 (r283129) +++ head/cddl/usr.bin/ctfconvert/Makefile Tue May 19 21:59:00 2015 (r283130) @@ -36,7 +36,6 @@ CFLAGS+= -I${.CURDIR}/../../../sys/cddl/ -I${OPENSOLARIS_USR_DISTDIR}/tools/ctf/cvt \ -I${OPENSOLARIS_SYS_DISTDIR}/uts/common -DPADD= ${LIBDWARF} ${LIBELF} ${LIBZ} ${LIBPTHREAD} -LDADD= -ldwarf -lelf -lz -lpthread +LIBADD=dwarf elf z pthread .include bsd.prog.mk ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283114 - head/share/man/man9
Author: bjk (doc committer) Date: Tue May 19 15:43:20 2015 New Revision: 283114 URL: https://svnweb.freebsd.org/changeset/base/283114 Log: Fixup to the kern_psignal manpage r283105 misspelled kern_psignal as kernel_psignal in one occurrence, and added trailing whitespace. While here, change 'call' to the more standard 'function', and say why the name was changed (taken from the commit message for r225617). Modified: head/share/man/man9/psignal.9 Modified: head/share/man/man9/psignal.9 == --- head/share/man/man9/psignal.9 Tue May 19 15:29:00 2015 (r283113) +++ head/share/man/man9/psignal.9 Tue May 19 15:43:20 2015 (r283114) @@ -63,10 +63,11 @@ function posts signal number to the process represented by the process structure .Fa p . The -.Fn kernel_psignal -function used to be called +.Fn kern_psignal +function used to be called .Fn psignal -but was renamed. +but was renamed in order to eliminate a name collision with the libc +function of that name and facilitate code reuse. With a few exceptions noted below, the target process signal disposition is updated and is marked as runnable, so further handling of the signal is done in the context of the target process after a context switch. @@ -158,7 +159,7 @@ to the thread represented by the thread .Sh HISTORY The .Fn psignal -call was renamed to +function was renamed to .Fn kern_psignal -in +in .Fx 9.0 . ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283088 - head/sys/ddb
On 05/19/15 08:45, John Baldwin wrote: On Tuesday, May 19, 2015 12:28:05 AM Pedro Giffuni wrote: Modified: head/sys/ddb/db_break.c == --- head/sys/ddb/db_break.c Mon May 18 22:14:06 2015(r283087) +++ head/sys/ddb/db_break.c Mon May 18 22:27:46 2015(r283088) @@ -155,12 +155,12 @@ db_find_breakpoint_here(db_addr_t addr) return db_find_breakpoint(db_map_addr(addr), addr); } -static boolean_t db_breakpoints_inserted = TRUE; +static boolean_t db_breakpoints_inserted = true; This code hasn't been churned to use the boolean type. It still uses boolean_t, which is plain int. TRUE and FALSE go with this type. true and false go with the boolean type. This probably makes no difference, because TRUE happens to be implemented with the same value as true and there are lots of implicit versions between the types. Yes, I noticed the return types are still ints. It doesn’t look difficult to convert it to use a real boolean type. In any case, I would prefer to go forward (using bool) instead of reverting this change. That wuld be sideways. I forgot to mention (again) in my previous reply that boolean_t is a mistake by me. KNF code doesn't even use the ! operator, but uses explicit comparison with 0. The boolean_t type and TRUE and FALSE are from Mach. They were used mainly in ddb and vm, and are still almost never used in kern. I used to like typedefs and a typedef for boolean types, and didn't know KNF very well, so in 1995 I moved the declaration of boolean_t from Mach vm code to sys/types.h to try to popularize it. This was a mistake. Fortunately, it is still rarely used in core kernel code. The boolean type is also almost never used for syscalls. In POSIX.1-2001, stdbool.h is inherited from C99, but is never used for any other POSIX API. Using it for syscalls would mainly cause portability problems. OK, I do understand the kernel wants to keep the C dialect somewhat limited, and adding stdbool.h doesn’t buy us any type safety here. I’ll revert the change (prob. tomorrow though). I will disagree with Bruce a bit and put my vote in for replacing boolean_t with bool where it is used. I do think that logically (if not strictly) your commit is a type mismatch as TRUE/FALSE is for boolean_t and true/false are for bool. I agree with Bruce that we probably don't want to use bool for system calls. However, I think using bool in the kernel itself is ok and that we should replace boolean_t with bool. I guess it boils down to the dilemma between modernity and common practice. OK, I know the current change can't stay as-is, and even Bruce admits that boolean_t is a mistake, so I think I will give the bool a try. Thanks for the feedback! Pedro. ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283115 - head/sys/kern
Author: asomers Date: Tue May 19 16:23:47 2015 New Revision: 283115 URL: https://svnweb.freebsd.org/changeset/base/283115 Log: Properly null-terminate strings in a kernel dump header. A version string longer than 192 bytes will cause the version field of a dump header to overflow. strncpy doesn't null terminate it, so savecore will print a corrupted info file. Using strlcpy fixes the bug. Differential Revision:https://reviews.freebsd.org/D2560 Reviewed by: markj MFC after:3 weeks Sponsored by: Spectra Logic Modified: head/sys/kern/kern_shutdown.c Modified: head/sys/kern/kern_shutdown.c == --- head/sys/kern/kern_shutdown.c Tue May 19 15:43:20 2015 (r283114) +++ head/sys/kern/kern_shutdown.c Tue May 19 16:23:47 2015 (r283115) @@ -873,16 +873,16 @@ mkdumpheader(struct kerneldumpheader *kd { bzero(kdh, sizeof(*kdh)); - strncpy(kdh-magic, magic, sizeof(kdh-magic)); - strncpy(kdh-architecture, MACHINE_ARCH, sizeof(kdh-architecture)); + strlcpy(kdh-magic, magic, sizeof(kdh-magic)); + strlcpy(kdh-architecture, MACHINE_ARCH, sizeof(kdh-architecture)); kdh-version = htod32(KERNELDUMPVERSION); kdh-architectureversion = htod32(archver); kdh-dumplength = htod64(dumplen); kdh-dumptime = htod64(time_second); kdh-blocksize = htod32(blksz); - strncpy(kdh-hostname, prison0.pr_hostname, sizeof(kdh-hostname)); - strncpy(kdh-versionstring, version, sizeof(kdh-versionstring)); + strlcpy(kdh-hostname, prison0.pr_hostname, sizeof(kdh-hostname)); + strlcpy(kdh-versionstring, version, sizeof(kdh-versionstring)); if (panicstr != NULL) - strncpy(kdh-panicstring, panicstr, sizeof(kdh-panicstring)); + strlcpy(kdh-panicstring, panicstr, sizeof(kdh-panicstring)); kdh-parity = kerneldump_parity(kdh); } ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283104 - head/sys/geom/uncompress
On 19.05.2015 20:36, Adrian Chadd wrote: Hi, How big are the images you were using? Did you try on the smaller footprint boards (eg things with 128MB RAM) to see if it changed behaviour? I tried several images with size from 700k to 2G. Something doesn't work for you? It isn't clear from the code, why it used i = total_offsets when it filled sc-offsets, it looks like a bug for me. -- WBR, Andrey V. Elsukov signature.asc Description: OpenPGP digital signature
Re: svn commit: r283104 - head/sys/geom/uncompress
On 19.05.2015 20:36, Adrian Chadd wrote: Did you try on the smaller footprint boards (eg things with 128MB RAM) to see if it changed behaviour? No, I have no such boards. This is taste method and it called only once, so I don't expect some changes here. For small images it just will work as before. -- WBR, Andrey V. Elsukov signature.asc Description: OpenPGP digital signature
svn commit: r283121 - head/sys/dev/hwpmc
Author: jhb Date: Tue May 19 19:01:22 2015 New Revision: 283121 URL: https://svnweb.freebsd.org/changeset/base/283121 Log: Use the proper mask when reloading sampling PMCs for Core CPUs. Differential Revision:https://reviews.freebsd.org/D2492 Reviewed by: emaste MFC after:1 month Modified: head/sys/dev/hwpmc/hwpmc_core.c Modified: head/sys/dev/hwpmc/hwpmc_core.c == --- head/sys/dev/hwpmc/hwpmc_core.c Tue May 19 18:58:18 2015 (r283120) +++ head/sys/dev/hwpmc/hwpmc_core.c Tue May 19 19:01:22 2015 (r283121) @@ -2588,7 +2588,7 @@ core_intr(int cpu, struct trapframe *tf) TRAPF_USERMODE(tf)); v = pm-pm_sc.pm_reloadcount; - v = iaf_reload_count_to_perfctr_value(v); + v = iap_reload_count_to_perfctr_value(v); /* * Stop the counter, reload it but only restart it if ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283119 - head/sys/dev/ixl
On Tuesday, May 19, 2015 06:35:18 PM John Baldwin wrote: Author: jhb Date: Tue May 19 18:35:18 2015 New Revision: 283119 URL: https://svnweb.freebsd.org/changeset/base/283119 Log: Remove executable property from several ixl(4) source files. Differential Revision: https://reviews.freebsd.org/D2583 Reviewed by:erj I did this because any patches to these files would fail the lint check in arcanist, so changes to these files couldn't be uploaded into phabricator via arcanist. -- John Baldwin ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283121 - head/sys/dev/hwpmc
On Tuesday, May 19, 2015 07:01:22 PM John Baldwin wrote: Author: jhb Date: Tue May 19 19:01:22 2015 New Revision: 283121 URL: https://svnweb.freebsd.org/changeset/base/283121 Log: Use the proper mask when reloading sampling PMCs for Core CPUs. Differential Revision: https://reviews.freebsd.org/D2492 Reviewed by:emaste MFC after: 1 month Ryan Stone attempted to test this but hasn't (yet) been able to do so. If someone has one of these CPUs lying around and can test it, that would be appreciated. This was found purely by code inspection. -- John Baldwin ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r283120 - in head: lib/libpmc sys/dev/hwpmc sys/sys
On Tuesday, May 19, 2015 06:58:19 PM John Baldwin wrote: Author: jhb Date: Tue May 19 18:58:18 2015 New Revision: 283120 URL: https://svnweb.freebsd.org/changeset/base/283120 Log: Use fixed enum values for PMC_CLASSES(). This removes one of the frequent causes of ABI breakage when new CPU types are added to hwpmc(4). Differential Revision: https://reviews.freebsd.org/D2586 Reviewed by:davide, emaste, gnn (earlier version) MFC after: 2 weeks The ABI was already broken today with the ARMv8 counters. Merging this to stable will break the ABI there as well. Since PMC_SOFT always gets renumbered it always breaks pmcccontrol -L when this enum is updated. I believe it has already been broken in once stable/10. My preference would be that we only MFC this the next time we want to add a new class to 10 to avoid being too disruptive. At the time the new class is added, then this change could be merged as well. -- John Baldwin ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
svn commit: r283124 - head/sys/netinet
Author: hiren Date: Tue May 19 19:17:20 2015 New Revision: 283124 URL: https://svnweb.freebsd.org/changeset/base/283124 Log: Correct the wording as we are increasing the window size. Reviewed by: jhb Sponsored by: Limelight Networks Modified: head/sys/netinet/tcp_input.c Modified: head/sys/netinet/tcp_input.c == --- head/sys/netinet/tcp_input.cTue May 19 19:15:19 2015 (r283123) +++ head/sys/netinet/tcp_input.cTue May 19 19:17:20 2015 (r283124) @@ -1542,7 +1542,7 @@ tcp_do_segment(struct mbuf *m, struct tc tcp_timer_activate(tp, TT_KEEP, TP_KEEPIDLE(tp)); /* -* Unscale the window into a 32-bit value. +* Scale up the window into a 32-bit value. * For the SYN_SENT state the scale is zero. */ tiwin = th-th_win tp-snd_scale; ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org