From owner-svn-src-user@freebsd.org Wed May 4 07:06:50 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 97354B2CAF9 for ; Wed, 4 May 2016 07:06:50 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 66AB3119E; Wed, 4 May 2016 07:06:50 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u4476n2d071509; Wed, 4 May 2016 07:06:49 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u4476mmJ071495; Wed, 4 May 2016 07:06:48 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201605040706.u4476mmJ071495@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Garrett Cooper Date: Wed, 4 May 2016 07:06:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r299055 - in user/ngie/release-pkg-fix-tests: bin/sh share/mk sys/dev/acpi_support sys/dev/buslogic sys/dev/bwn sys/dev/esp sys/dev/fdc sys/dev/hptiop sys/dev/ioat sys/dev/lmc sys/dev/n... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 May 2016 07:06:50 -0000 Author: ngie Date: Wed May 4 07:06:48 2016 New Revision: 299055 URL: https://svnweb.freebsd.org/changeset/base/299055 Log: MFhead@r299054 Modified: user/ngie/release-pkg-fix-tests/bin/sh/parser.c user/ngie/release-pkg-fix-tests/share/mk/local.dirdeps.mk user/ngie/release-pkg-fix-tests/sys/dev/acpi_support/atk0110.c user/ngie/release-pkg-fix-tests/sys/dev/buslogic/btreg.h user/ngie/release-pkg-fix-tests/sys/dev/bwn/if_bwn.c user/ngie/release-pkg-fix-tests/sys/dev/esp/esp_pci.c user/ngie/release-pkg-fix-tests/sys/dev/fdc/fdcvar.h user/ngie/release-pkg-fix-tests/sys/dev/hptiop/hptiop.c user/ngie/release-pkg-fix-tests/sys/dev/ioat/ioat.c user/ngie/release-pkg-fix-tests/sys/dev/lmc/if_lmc.h user/ngie/release-pkg-fix-tests/sys/dev/nvram2env/nvram2env.c user/ngie/release-pkg-fix-tests/sys/dev/pci/pci.c user/ngie/release-pkg-fix-tests/sys/kern/subr_hash.c user/ngie/release-pkg-fix-tests/usr.bin/mkuzip/Makefile.depend Directory Properties: user/ngie/release-pkg-fix-tests/ (props changed) Modified: user/ngie/release-pkg-fix-tests/bin/sh/parser.c ============================================================================== --- user/ngie/release-pkg-fix-tests/bin/sh/parser.c Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/bin/sh/parser.c Wed May 4 07:06:48 2016 (r299055) @@ -2014,8 +2014,9 @@ getprompt(void *unused __unused) gethostname(&ps[i], PROMPTLEN - i); /* Skip to end of hostname. */ trim = (*fmt == 'h') ? '.' : '\0'; - while ((ps[i+1] != '\0') && (ps[i+1] != trim)) + while ((ps[i] != '\0') && (ps[i] != trim)) i++; + --i; break; /* @@ -2027,7 +2028,7 @@ getprompt(void *unused __unused) case 'W': case 'w': pwd = lookupvar("PWD"); - if (pwd == NULL) + if (pwd == NULL || *pwd == '\0') pwd = "?"; if (*fmt == 'W' && *pwd == '/' && pwd[1] != '\0') Modified: user/ngie/release-pkg-fix-tests/share/mk/local.dirdeps.mk ============================================================================== --- user/ngie/release-pkg-fix-tests/share/mk/local.dirdeps.mk Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/share/mk/local.dirdeps.mk Wed May 4 07:06:48 2016 (r299055) @@ -42,6 +42,7 @@ DIRDEPS_FILTER.host = \ Nlib/[mn]* \ Ngnu/lib/csu* \ Ngnu/lib/lib[a-r]* \ + Nsecure/lib* \ Nusr.bin/xinstall* \ Modified: user/ngie/release-pkg-fix-tests/sys/dev/acpi_support/atk0110.c ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/dev/acpi_support/atk0110.c Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/dev/acpi_support/atk0110.c Wed May 4 07:06:48 2016 (r299055) @@ -66,7 +66,7 @@ struct aibs_sensor { }; struct aibs_softc { - struct device *sc_dev; + device_t sc_dev; ACPI_HANDLE sc_ah; struct aibs_sensor *sc_asens_volt; Modified: user/ngie/release-pkg-fix-tests/sys/dev/buslogic/btreg.h ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/dev/buslogic/btreg.h Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/dev/buslogic/btreg.h Wed May 4 07:06:48 2016 (r299055) @@ -595,7 +595,7 @@ struct sg_map_node { }; struct bt_softc { - struct device *dev; + device_t dev; struct resource *port; struct resource *irq; struct resource *drq; Modified: user/ngie/release-pkg-fix-tests/sys/dev/bwn/if_bwn.c ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/dev/bwn/if_bwn.c Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/dev/bwn/if_bwn.c Wed May 4 07:06:48 2016 (r299055) @@ -4942,6 +4942,12 @@ bwn_intr_txeof(struct bwn_mac *mac) break; stat1 = BWN_READ_4(mac, BWN_XMITSTAT_1); + DPRINTF(mac->mac_sc, BWN_DEBUG_XMIT, + "%s: stat0=0x%08x, stat1=0x%08x\n", + __func__, + stat0, + stat1); + stat.cookie = (stat0 >> 16); stat.seq = (stat1 & 0x0000ffff); stat.phy_stat = ((stat1 & 0x00ff0000) >> 16); @@ -5132,16 +5138,8 @@ bwn_dma_rxeof(struct bwn_dma_ring *dr, i static void bwn_handle_txeof(struct bwn_mac *mac, const struct bwn_txstatus *status) { - struct bwn_dma_ring *dr; - struct bwn_dmadesc_generic *desc; - struct bwn_dmadesc_meta *meta; - struct bwn_pio_txqueue *tq; - struct bwn_pio_txpkt *tp = NULL; struct bwn_softc *sc = mac->mac_sc; struct bwn_stats *stats = &mac->mac_stats; - struct ieee80211_node *ni; - struct ieee80211vap *vap; - int retrycnt = 0, slot; BWN_ASSERT_LOCKED(mac->mac_sc); @@ -5157,46 +5155,8 @@ bwn_handle_txeof(struct bwn_mac *mac, co } if (mac->mac_flags & BWN_MAC_FLAG_DMA) { - if (status->ack) { - dr = bwn_dma_parse_cookie(mac, status, - status->cookie, &slot); - if (dr == NULL) { - device_printf(sc->sc_dev, - "failed to parse cookie\n"); - return; - } - while (1) { - dr->getdesc(dr, slot, &desc, &meta); - if (meta->mt_islast) { - ni = meta->mt_ni; - vap = ni->ni_vap; - ieee80211_ratectl_tx_complete(vap, ni, - status->ack ? - IEEE80211_RATECTL_TX_SUCCESS : - IEEE80211_RATECTL_TX_FAILURE, - &retrycnt, 0); - break; - } - slot = bwn_dma_nextslot(dr, slot); - } - } bwn_dma_handle_txeof(mac, status); } else { - if (status->ack) { - tq = bwn_pio_parse_cookie(mac, status->cookie, &tp); - if (tq == NULL) { - device_printf(sc->sc_dev, - "failed to parse cookie\n"); - return; - } - ni = tp->tp_ni; - vap = ni->ni_vap; - ieee80211_ratectl_tx_complete(vap, ni, - status->ack ? - IEEE80211_RATECTL_TX_SUCCESS : - IEEE80211_RATECTL_TX_FAILURE, - &retrycnt, 0); - } bwn_pio_handle_txeof(mac, status); } @@ -5538,6 +5498,7 @@ bwn_dma_handle_txeof(struct bwn_mac *mac struct bwn_dmadesc_meta *meta; struct bwn_softc *sc = mac->mac_sc; int slot; + int retrycnt = 0; BWN_ASSERT_LOCKED(sc); @@ -5562,6 +5523,13 @@ bwn_dma_handle_txeof(struct bwn_mac *mac KASSERT(meta->mt_m != NULL, ("%s:%d: fail", __func__, __LINE__)); + /* Just count full frame retries for now */ + retrycnt = status->framecnt - 1; + ieee80211_ratectl_tx_complete(meta->mt_ni->ni_vap, meta->mt_ni, + status->ack ? + IEEE80211_RATECTL_TX_SUCCESS : + IEEE80211_RATECTL_TX_FAILURE, + &retrycnt, 0); ieee80211_tx_complete(meta->mt_ni, meta->mt_m, 0); meta->mt_ni = NULL; meta->mt_m = NULL; @@ -5589,6 +5557,7 @@ bwn_pio_handle_txeof(struct bwn_mac *mac struct bwn_pio_txqueue *tq; struct bwn_pio_txpkt *tp = NULL; struct bwn_softc *sc = mac->mac_sc; + int retrycnt = 0; BWN_ASSERT_LOCKED(sc); @@ -5604,6 +5573,15 @@ bwn_pio_handle_txeof(struct bwn_mac *mac * Do any tx complete callback. Note this must * be done before releasing the node reference. */ + + /* Just count full frame retries for now */ + retrycnt = status->framecnt - 1; + ieee80211_ratectl_tx_complete(tp->tp_ni->ni_vap, tp->tp_ni, + status->ack ? + IEEE80211_RATECTL_TX_SUCCESS : + IEEE80211_RATECTL_TX_FAILURE, + &retrycnt, 0); + if (tp->tp_m->m_flags & M_TXCB) ieee80211_process_callback(tp->tp_ni, tp->tp_m, 0); ieee80211_free_node(tp->tp_ni); @@ -5751,6 +5729,7 @@ bwn_set_txhdr(struct bwn_mac *mac, struc else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE) rate = rate_fb = tp->ucastrate; else { + /* XXX TODO: don't fall back to CCK rates for OFDM */ rix = ieee80211_ratectl_rate(ni, NULL, 0); rate = ni->ni_txrate; @@ -5763,6 +5742,7 @@ bwn_set_txhdr(struct bwn_mac *mac, struc sc->sc_tx_rate = rate; + /* Note: this maps the select ieee80211 rate to hardware rate */ rate = bwn_ieeerate2hwrate(sc, rate); rate_fb = bwn_ieeerate2hwrate(sc, rate_fb); @@ -5771,6 +5751,7 @@ bwn_set_txhdr(struct bwn_mac *mac, struc bcopy(wh->i_fc, txhdr->macfc, sizeof(txhdr->macfc)); bcopy(wh->i_addr1, txhdr->addr1, IEEE80211_ADDR_LEN); + /* XXX rate/rate_fb is the hardware rate */ if ((rate_fb == rate) || (*(u_int16_t *)wh->i_dur & htole16(0x8000)) || (*(u_int16_t *)wh->i_dur == htole16(0))) @@ -5792,6 +5773,7 @@ bwn_set_txhdr(struct bwn_mac *mac, struc txhdr->chan = phy->chan; phyctl |= (BWN_ISOFDMRATE(rate)) ? BWN_TX_PHY_ENC_OFDM : BWN_TX_PHY_ENC_CCK; + /* XXX preamble? obey net80211 */ if (isshort && (rate == BWN_CCK_RATE_2MB || rate == BWN_CCK_RATE_5MB || rate == BWN_CCK_RATE_11MB)) phyctl |= BWN_TX_PHY_SHORTPRMBL; @@ -5828,9 +5810,11 @@ bwn_set_txhdr(struct bwn_mac *mac, struc if (ic->ic_flags & IEEE80211_F_USEPROT) { /* XXX RTS rate is always 1MB??? */ + /* XXX TODO: don't fall back to CCK rates for OFDM */ rts_rate = BWN_CCK_RATE_1MB; rts_rate_fb = bwn_get_fbrate(rts_rate); + /* XXX 'rate' here is hardware rate now, not the net80211 rate */ protdur = ieee80211_compute_duration(ic->ic_rt, m->m_pkthdr.len, rate, isshort) + + ieee80211_ack_duration(ic->ic_rt, rate, isshort); @@ -5851,6 +5835,7 @@ bwn_set_txhdr(struct bwn_mac *mac, struc rts = (struct ieee80211_frame_rts *)(BWN_ISOLDFMT(mac) ? (txhdr->body.old.rts_frame) : (txhdr->body.new.rts_frame)); + /* XXX rate/rate_fb is the hardware rate */ protdur += ieee80211_ack_duration(ic->ic_rt, rate, isshort); mprot = ieee80211_alloc_rts(ic, wh->i_addr1, @@ -5958,10 +5943,16 @@ bwn_antenna_sanitize(struct bwn_mac *mac return (n); } +/* + * Return a fallback rate for the given rate. + * + * Note: Don't fall back from OFDM to CCK. + */ static uint8_t bwn_get_fbrate(uint8_t bitrate) { switch (bitrate) { + /* CCK */ case BWN_CCK_RATE_1MB: return (BWN_CCK_RATE_1MB); case BWN_CCK_RATE_2MB: @@ -5970,8 +5961,10 @@ bwn_get_fbrate(uint8_t bitrate) return (BWN_CCK_RATE_2MB); case BWN_CCK_RATE_11MB: return (BWN_CCK_RATE_5MB); + + /* OFDM */ case BWN_OFDM_RATE_6MB: - return (BWN_CCK_RATE_5MB); + return (BWN_OFDM_RATE_6MB); case BWN_OFDM_RATE_9MB: return (BWN_OFDM_RATE_6MB); case BWN_OFDM_RATE_12MB: Modified: user/ngie/release-pkg-fix-tests/sys/dev/esp/esp_pci.c ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/dev/esp/esp_pci.c Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/dev/esp/esp_pci.c Wed May 4 07:06:48 2016 (r299055) @@ -97,7 +97,7 @@ __FBSDID("$FreeBSD$"); struct esp_pci_softc { struct ncr53c9x_softc sc_ncr53c9x; /* glue to MI code */ - struct device *sc_dev; + device_t sc_dev; struct resource *sc_res[2]; #define ESP_PCI_RES_INTR 0 Modified: user/ngie/release-pkg-fix-tests/sys/dev/fdc/fdcvar.h ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/dev/fdc/fdcvar.h Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/dev/fdc/fdcvar.h Wed May 4 07:06:48 2016 (r299055) @@ -66,7 +66,7 @@ struct fdc_data { bus_space_handle_t ioh[FDC_MAXREG]; int ioff[FDC_MAXREG]; void *fdc_intr; - struct device *fdc_dev; + device_t fdc_dev; struct mtx fdc_mtx; struct proc *fdc_thread; }; Modified: user/ngie/release-pkg-fix-tests/sys/dev/hptiop/hptiop.c ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/dev/hptiop/hptiop.c Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/dev/hptiop/hptiop.c Wed May 4 07:06:48 2016 (r299055) @@ -1241,7 +1241,7 @@ static int hptiop_post_ioctl_command_mv( req->header.result = IOP_RESULT_PENDING; req->header.flags = IOP_REQUEST_FLAG_OUTPUT_CONTEXT; size = req->header.size >> 8; - size = size > 3 ? 3 : size; + size = imin(3, size); req_phy = hba->ctlcfgcmd_phy | MVIOP_MU_QUEUE_ADDR_HOST_BIT | size; hptiop_mv_inbound_write(req_phy, hba); @@ -2561,7 +2561,7 @@ static void hptiop_post_req_mv(struct hp size = req->header.size >> 8; hptiop_mv_inbound_write(req_phy | MVIOP_MU_QUEUE_ADDR_HOST_BIT - | (size > 3 ? 3 : size), hba); + | imin(3, size), hba); } static void hptiop_post_req_mvfrey(struct hpt_iop_hba *hba, Modified: user/ngie/release-pkg-fix-tests/sys/dev/ioat/ioat.c ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/dev/ioat/ioat.c Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/dev/ioat/ioat.c Wed May 4 07:06:48 2016 (r299055) @@ -135,7 +135,7 @@ static device_method_t ioat_pci_methods[ DEVMETHOD(device_probe, ioat_probe), DEVMETHOD(device_attach, ioat_attach), DEVMETHOD(device_detach, ioat_detach), - { 0, 0 } + DEVMETHOD_END }; static driver_t ioat_pci_driver = { Modified: user/ngie/release-pkg-fix-tests/sys/dev/lmc/if_lmc.h ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/dev/lmc/if_lmc.h Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/dev/lmc/if_lmc.h Wed May 4 07:06:48 2016 (r299055) @@ -1092,7 +1092,7 @@ struct softc #endif struct callout callout; /* watchdog needs this */ - struct device *dev; /* base device pointer */ + device_t dev; /* base device pointer */ bus_space_tag_t csr_tag; /* bus_space needs this */ bus_space_handle_t csr_handle;/* bus_space_needs this */ void *irq_cookie; /* bus_teardown_intr needs this */ Modified: user/ngie/release-pkg-fix-tests/sys/dev/nvram2env/nvram2env.c ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/dev/nvram2env/nvram2env.c Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/dev/nvram2env/nvram2env.c Wed May 4 07:06:48 2016 (r299055) @@ -127,7 +127,7 @@ nvram2env_probe(device_t dev) ivar == 0) continue; - sc->addr = MIPS_PHYS_TO_KSEG1(ivar); + sc->addr = ivar; if (bootverbose) device_printf(dev, "base=0x%08x sig=0x%08x " Modified: user/ngie/release-pkg-fix-tests/sys/dev/pci/pci.c ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/dev/pci/pci.c Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/dev/pci/pci.c Wed May 4 07:06:48 2016 (r299055) @@ -5644,9 +5644,10 @@ pci_cfg_restore(device_t dev, struct pci if (dinfo->cfg.msix.msix_location != 0) pci_resume_msix(dev); +#ifdef PCI_IOV if (dinfo->cfg.iov != NULL) pci_iov_cfg_restore(dev, dinfo); - +#endif } static void @@ -5759,8 +5760,10 @@ pci_cfg_save(device_t dev, struct pci_de if (dinfo->cfg.pcix.pcix_location != 0) pci_cfg_save_pcix(dev, dinfo); +#ifdef PCI_IOV if (dinfo->cfg.iov != NULL) pci_iov_cfg_save(dev, dinfo); +#endif /* * don't set the state for display devices, base peripherals and Modified: user/ngie/release-pkg-fix-tests/sys/kern/subr_hash.c ============================================================================== --- user/ngie/release-pkg-fix-tests/sys/kern/subr_hash.c Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/sys/kern/subr_hash.c Wed May 4 07:06:48 2016 (r299055) @@ -41,6 +41,13 @@ __FBSDID("$FreeBSD$"); #include #include +static __inline int +hash_mflags(int flags) +{ + + return ((flags & HASH_NOWAIT) ? M_NOWAIT : M_WAITOK); +} + /* * General routine to allocate a hash table with control of memory flags. */ @@ -61,13 +68,8 @@ hashinit_flags(int elements, struct mall continue; hashsize >>= 1; - if (flags & HASH_NOWAIT) - hashtbl = malloc((u_long)hashsize * sizeof(*hashtbl), - type, M_NOWAIT); - else - hashtbl = malloc((u_long)hashsize * sizeof(*hashtbl), - type, M_WAITOK); - + hashtbl = malloc((u_long)hashsize * sizeof(*hashtbl), type, + hash_mflags(flags)); if (hashtbl != NULL) { for (i = 0; i < hashsize; i++) LIST_INIT(&hashtbl[i]); @@ -112,7 +114,7 @@ phashinit_flags(int elements, struct mal { long hashsize; LIST_HEAD(generic, generic) *hashtbl; - int i, m_flags; + int i; KASSERT(elements > 0, ("%s: bad elements", __func__)); /* Exactly one of HASH_WAITOK and HASH_NOWAIT must be set. */ @@ -127,8 +129,8 @@ phashinit_flags(int elements, struct mal } hashsize = primes[i - 1]; - m_flags = (flags & HASH_NOWAIT) ? M_NOWAIT : M_WAITOK; - hashtbl = malloc((u_long)hashsize * sizeof(*hashtbl), type, m_flags); + hashtbl = malloc((u_long)hashsize * sizeof(*hashtbl), type, + hash_mflags(flags)); if (hashtbl == NULL) return (NULL); Modified: user/ngie/release-pkg-fix-tests/usr.bin/mkuzip/Makefile.depend ============================================================================== --- user/ngie/release-pkg-fix-tests/usr.bin/mkuzip/Makefile.depend Wed May 4 06:58:08 2016 (r299054) +++ user/ngie/release-pkg-fix-tests/usr.bin/mkuzip/Makefile.depend Wed May 4 07:06:48 2016 (r299055) @@ -13,6 +13,7 @@ DIRDEPS = \ lib/libmd \ lib/libthr \ lib/libz \ + lib/msun \ .include