svn commit: r258833 - head/sys/dev/iwn
Author: adrian Date: Mon Dec 2 05:45:11 2013 New Revision: 258833 URL: http://svnweb.freebsd.org/changeset/base/258833 Log: * Sort the copyright lines by date * Ok ok, I've touched this enough to claim part of it. Modified: head/sys/dev/iwn/if_iwn.c Modified: head/sys/dev/iwn/if_iwn.c == --- head/sys/dev/iwn/if_iwn.c Mon Dec 2 05:43:23 2013(r258832) +++ head/sys/dev/iwn/if_iwn.c Mon Dec 2 05:45:11 2013(r258833) @@ -1,11 +1,10 @@ /*- - * Copyright (c) 2013 Cedric GROSS - * Copyright (c) 2011 Intel Corporation - * Copyright (c) 2007-2009 - * Damien Bergamini - * Copyright (c) 2008 - * Benjamin Close + * Copyright (c) 2007-2009 Damien Bergamini + * Copyright (c) 2008 Benjamin Close * Copyright (c) 2008 Sam Leffler, Errno Consulting + * Copyright (c) 2011 Intel Corporation + * Copyright (c) 2013 Cedric GROSS + * Copyright (c) 2013 Adrian Chadd * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above ___ 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: r258830 - head/sys/dev/bge
Author: yongari Date: Mon Dec 2 05:21:54 2013 New Revision: 258830 URL: http://svnweb.freebsd.org/changeset/base/258830 Log: Add support for BCM57764, BCM57767, BCM57782, BCM57786 and BCM57787. Submitted by: jhb PR: 184304 Modified: head/sys/dev/bge/if_bge.c head/sys/dev/bge/if_bgereg.h Modified: head/sys/dev/bge/if_bge.c == --- head/sys/dev/bge/if_bge.c Mon Dec 2 03:59:45 2013(r258829) +++ head/sys/dev/bge/if_bge.c Mon Dec 2 05:21:54 2013(r258830) @@ -221,11 +221,16 @@ static const struct bge_type { { BCOM_VENDORID,BCOM_DEVICEID_BCM57760 }, { BCOM_VENDORID,BCOM_DEVICEID_BCM57761 }, { BCOM_VENDORID,BCOM_DEVICEID_BCM57762 }, + { BCOM_VENDORID,BCOM_DEVICEID_BCM57764 }, { BCOM_VENDORID,BCOM_DEVICEID_BCM57765 }, { BCOM_VENDORID,BCOM_DEVICEID_BCM57766 }, + { BCOM_VENDORID,BCOM_DEVICEID_BCM57767 }, { BCOM_VENDORID,BCOM_DEVICEID_BCM57780 }, { BCOM_VENDORID,BCOM_DEVICEID_BCM57781 }, + { BCOM_VENDORID,BCOM_DEVICEID_BCM57782 }, { BCOM_VENDORID,BCOM_DEVICEID_BCM57785 }, + { BCOM_VENDORID,BCOM_DEVICEID_BCM57786 }, + { BCOM_VENDORID,BCOM_DEVICEID_BCM57787 }, { BCOM_VENDORID,BCOM_DEVICEID_BCM57788 }, { BCOM_VENDORID,BCOM_DEVICEID_BCM57790 }, { BCOM_VENDORID,BCOM_DEVICEID_BCM57791 }, @@ -2694,6 +2699,9 @@ bge_chipid(device_t dev) case BCOM_DEVICEID_BCM5725: case BCOM_DEVICEID_BCM5727: case BCOM_DEVICEID_BCM5762: + case BCOM_DEVICEID_BCM57764: + case BCOM_DEVICEID_BCM57767: + case BCOM_DEVICEID_BCM57787: id = pci_read_config(dev, BGE_PCI_GEN2_PRODID_ASICREV, 4); break; @@ -2702,7 +2710,9 @@ bge_chipid(device_t dev) case BCOM_DEVICEID_BCM57765: case BCOM_DEVICEID_BCM57766: case BCOM_DEVICEID_BCM57781: + case BCOM_DEVICEID_BCM57782: case BCOM_DEVICEID_BCM57785: + case BCOM_DEVICEID_BCM57786: case BCOM_DEVICEID_BCM57791: case BCOM_DEVICEID_BCM57795: id = pci_read_config(dev, Modified: head/sys/dev/bge/if_bgereg.h == --- head/sys/dev/bge/if_bgereg.hMon Dec 2 03:59:45 2013 (r258829) +++ head/sys/dev/bge/if_bgereg.hMon Dec 2 05:21:54 2013 (r258830) @@ -2503,11 +2503,16 @@ struct bge_status_block { #defineBCOM_DEVICEID_BCM57760 0x1690 #defineBCOM_DEVICEID_BCM57761 0x16B0 #defineBCOM_DEVICEID_BCM57762 0x1682 +#defineBCOM_DEVICEID_BCM57764 0x1642 #defineBCOM_DEVICEID_BCM57765 0x16B4 #defineBCOM_DEVICEID_BCM57766 0x1686 +#defineBCOM_DEVICEID_BCM57767 0x1683 #defineBCOM_DEVICEID_BCM57780 0x1692 #defineBCOM_DEVICEID_BCM57781 0x16B1 +#defineBCOM_DEVICEID_BCM57782 0x16B7 #defineBCOM_DEVICEID_BCM57785 0x16B5 +#defineBCOM_DEVICEID_BCM57786 0x16B3 +#defineBCOM_DEVICEID_BCM57787 0x1641 #defineBCOM_DEVICEID_BCM57788 0x1691 #defineBCOM_DEVICEID_BCM57790 0x1694 #defineBCOM_DEVICEID_BCM57791 0x16B2 ___ 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: r258829 - head/sys/dev/iwn
Author: adrian Date: Mon Dec 2 03:59:45 2013 New Revision: 258829 URL: http://svnweb.freebsd.org/changeset/base/258829 Log: Overhaul the iwn(4) scan infrastructure to be slightly more "correct" for these chipsets. * Correctly set the active/passive flag in the scan request - this is NOT a "is the channel active|passive"; it's to do with whether we have an SSID to actively scan for or not. The firmware takes care of the active/passive setup of the channel. * Calculate the active/passive dwell time based on the beacon interval and the channel mode, rather than using a hard coded value. * For now, hardcode the scan service_time. It's defined as: 31:22 - number of beacon intervals to come back onto the home channel for; 0:21 - time (microseconds) to come back onto the home channel for. When doing an active scan when the NIC is active (whether we're associated or not - it only matters if we've setup the NIC to a destination or not) this determines how much time to stay on the home channel for when scanning. We can tune this based on the amount of active traffic. For now it's 4 beacon intervals and 100 microseconds. * Fix the "good crc threshold" setting. It differs based on the NIC firmware. Some older firmware required a workaround; the later firmware instead treats the field as a flag. * Enforce that we are not sending a scan command if one is already pending. Any time this is done is a bug and it absolutely needs to be fixed - so be very loud. * Add the SCAN flag to a few debug messages that are scan related but only occuring under STATE. Now, this does get noisy when you're scanning in an actively busy 2GHz network as the firmware (for reason I don't quite yet understand) seems hell bent on staying on some passive channels longer than it should. However, it should eventually recover and complete the scan. This is a work in progress; please let me know if things get stuck or if things improve! Tested: * intel centrino 2200 * intel centrino 2230 * intel 6200 * intel 5100 * intel 4965 (gets upset, but that's a known issue) Obtained from:linux iwlwifi Modified: head/sys/dev/iwn/if_iwn.c head/sys/dev/iwn/if_iwnreg.h head/sys/dev/iwn/if_iwnvar.h Modified: head/sys/dev/iwn/if_iwn.c == --- head/sys/dev/iwn/if_iwn.c Mon Dec 2 03:52:40 2013(r258828) +++ head/sys/dev/iwn/if_iwn.c Mon Dec 2 03:59:45 2013(r258829) @@ -3608,7 +3608,8 @@ iwn_notif_intr(struct iwn_softc *sc) BUS_DMASYNC_POSTREAD); #ifdef IWN_DEBUG uint32_t *status = (uint32_t *)(desc + 1); - DPRINTF(sc, IWN_DEBUG_INTR, "state changed to %x\n", + DPRINTF(sc, IWN_DEBUG_INTR | IWN_DEBUG_STATE, + "state changed to %x\n", le32toh(*status)); #endif break; @@ -3633,11 +3634,11 @@ iwn_notif_intr(struct iwn_softc *sc) #ifdef IWN_DEBUG struct iwn_stop_scan *scan = (struct iwn_stop_scan *)(desc + 1); - DPRINTF(sc, IWN_DEBUG_STATE, + DPRINTF(sc, IWN_DEBUG_STATE | IWN_DEBUG_SCAN, "scan finished nchan=%d status=%d chan=%d\n", scan->nchan, scan->status, scan->chan); #endif - + sc->sc_is_scanning = 0; IWN_UNLOCK(sc); ieee80211_scan_next(vap); IWN_LOCK(sc); @@ -5020,6 +5021,12 @@ iwn_set_led(struct iwn_softc *sc, uint8_ DPRINTF(sc, IWN_DEBUG_TRACE, "->Doing %s\n", __func__); +#if 0 + /* XXX don't set LEDs during scan? */ + if (sc->sc_is_scanning) + return; +#endif + /* Clear microcode LED ownership. */ IWN_CLRBITS(sc, IWN_LED, IWN_LED_BSM_CTRL); @@ -5485,6 +5492,10 @@ iwn_collect_noise(struct iwn_softc *sc, #ifdef notyet /* XXX Disable RX chains with no antennas connected. */ sc->rxon->rxchain = htole16(IWN_RXCHAIN_SEL(sc->chainmask)); + if (sc->sc_is_scanning) + device_printf(sc->sc_dev, + "%s: is_scanning set, before RXON\n", + __func__); (void)iwn_cmd(sc, IWN_CMD_RXON, sc->rxon, sc->rxonsz, 1); #endif @@ -6119,6 +6130,10 @@ iwn_config(struct iwn_softc *sc) IWN_RXCHAIN_IDLE_COUNT(2); sc->rxon->rxchain = htole16(rxchain); DPRINTF(sc, IWN_DEBUG_RESET, "%s: setting configuration\n", __func__); + if (sc->sc_is_scanning) + device_printf(sc->sc_dev, + "%s: is_scanning set, before RXON\n", + __func__); error = iwn_cmd(sc, IWN_CMD_RXON, sc->rxon, sc->rxonsz,
svn commit: r258828 - in head/sys: arm/at91 dev/nand
Author: ian Date: Mon Dec 2 03:52:40 2013 New Revision: 258828 URL: http://svnweb.freebsd.org/changeset/base/258828 Log: Add a nand flash controller driver for Atmel at91 family. Tested only on at91rm9200 so far. The files.at91 has listed a nand driver for ages, but it never existed. Added: head/sys/dev/nand/nfc_at91.c (contents, props changed) Modified: head/sys/arm/at91/files.at91 Modified: head/sys/arm/at91/files.at91 == --- head/sys/arm/at91/files.at91Mon Dec 2 03:49:33 2013 (r258827) +++ head/sys/arm/at91/files.at91Mon Dec 2 03:52:40 2013 (r258828) @@ -5,7 +5,7 @@ arm/at91/at91_machdep.c standard arm/at91/at91.cstandard arm/at91/at91_cfata.c optionalat91_cfata arm/at91/at91_mci.coptionalat91_mci -arm/at91/at91_nand.c optionalnand +dev/nand/nfc_at91.coptionalnand arm/at91/at91_pio.cstandard arm/at91/at91_pmc.cstandard arm/at91/at91_pit.coptionalat91sam9 Added: head/sys/dev/nand/nfc_at91.c == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/nand/nfc_at91.cMon Dec 2 03:52:40 2013 (r258828) @@ -0,0 +1,258 @@ +/*- + * Copyright (C) 2013 Ian Lepore. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + *notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +/* + * Atmel at91-family integrated NAND controller driver. + * + * This code relies on the board setup code (in at91/board_whatever.c) having + * set up the EBI and SMC registers appropriately for whatever type of nand part + * is on the board. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include +#include +#include "nfc_if.h" + +/* + * Data cycles are triggered by access to any address within the EBI CS3 region + * that has A21 and A22 clear. Command cycles are any access with bit A21 + * asserted. Address cycles are any access with bit A22 asserted. + * + * XXX The atmel docs say that any address bits can be used instead of A21 and + * A22; these values should be configurable. + */ +#defineAT91_NAND_DATA 0 +#defineAT91_NAND_COMMAND (1 << 21) +#defineAT91_NAND_ADDRESS (1 << 22) + +struct at91_nand_softc { + struct nand_softc nand_sc; + struct resource *res; +}; + +static int at91_nand_attach(device_t); +static int at91_nand_probe(device_t); +static uint8_t at91_nand_read_byte(device_t); +static voidat91_nand_read_buf(device_t, void *, uint32_t); +static int at91_nand_read_rnb(device_t); +static int at91_nand_select_cs(device_t, uint8_t); +static int at91_nand_send_command(device_t, uint8_t); +static int at91_nand_send_address(device_t, uint8_t); +static voidat91_nand_write_buf(device_t, void *, uint32_t); + +static inline u_int8_t +dev_read_1(struct at91_nand_softc *sc, bus_size_t offset) +{ + return bus_read_1(sc->res, offset); +} + +static inline void +dev_write_1(struct at91_nand_softc *sc, bus_size_t offset, u_int8_t value) +{ + bus_write_1(sc->res, offset, value); +} + +static int +at91_nand_probe(device_t dev) +{ + + device_set_desc(dev, "AT91 Integrated NAND controller"); + return (BUS_PROBE_DEFAULT); +} + +static int +at91_nand_attach(device_t dev) +{ + struct at91_nand_softc *sc; + int err, rid; + + sc = device_get_softc(dev); +
svn commit: r258827 - head/sys/dev/iwn
Author: adrian Date: Mon Dec 2 03:49:33 2013 New Revision: 258827 URL: http://svnweb.freebsd.org/changeset/base/258827 Log: Log the rx ring offset as part of the debug message. Modified: head/sys/dev/iwn/if_iwn.c Modified: head/sys/dev/iwn/if_iwn.c == --- head/sys/dev/iwn/if_iwn.c Mon Dec 2 03:47:08 2013(r258826) +++ head/sys/dev/iwn/if_iwn.c Mon Dec 2 03:49:33 2013(r258827) @@ -3508,8 +3508,8 @@ iwn_notif_intr(struct iwn_softc *sc) desc = mtod(data->m, struct iwn_rx_desc *); DPRINTF(sc, IWN_DEBUG_RECV, - "%s: qid %x idx %d flags %x type %d(%s) len %d\n", - __func__, desc->qid & 0xf, desc->idx, desc->flags, + "%s: cur=%d; qid %x idx %d flags %x type %d(%s) len %d\n", + __func__, sc->rxq.cur, desc->qid & 0xf, desc->idx, desc->flags, desc->type, iwn_intr_str(desc->type), le16toh(desc->len)); ___ 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: r258826 - head/contrib/gcclibs/libcpp
Author: pfg Date: Mon Dec 2 03:47:08 2013 New Revision: 258826 URL: http://svnweb.freebsd.org/changeset/base/258826 Log: libcpp: Merge fixes from upstream GCC preprocessor/29966: * macro.c (lex_expansion_token): Save and restore cpp_reader's cur_token. (_cpp_create_definition): Don't restore cur_token here. * lex.c (_cpp_lex_token): Added assertion. GCC preprocessor/28709: * macro.c (paste_tokens): Remove PASTE_LEFT from the old lhs. GCC c/31924 * expr.c (interpret_float_suffix): Check for invalid suffix. GCC preprocessor/14331 * lex.c (_cpp_get_fresh_line): Don't warn if no newline at EOF. Fixup whitespacing Obtained from:gcc per-4.3 (rev. 121340, 124356, 124358, 124730, 125212, 125255 ; GPLv2) MFC after:3 weeks Modified: head/contrib/gcclibs/libcpp/ChangeLog.gcc43 head/contrib/gcclibs/libcpp/expr.c head/contrib/gcclibs/libcpp/lex.c head/contrib/gcclibs/libcpp/macro.c head/contrib/gcclibs/libcpp/pch.c Modified: head/contrib/gcclibs/libcpp/ChangeLog.gcc43 == --- head/contrib/gcclibs/libcpp/ChangeLog.gcc43 Mon Dec 2 03:43:37 2013 (r258825) +++ head/contrib/gcclibs/libcpp/ChangeLog.gcc43 Mon Dec 2 03:47:08 2013 (r258826) @@ -7,6 +7,11 @@ * include/cpplib.h: Add CPP_N_BINARY, to be used for 0b-prefixed binary integer constants. +2007-05-31 Dave Korn (r125212) + + PR preprocessor/14331 + * lex.c (_cpp_get_fresh_line): Don't warn if no newline at EOF. + 2007-05-21 Ian Lance Taylor (r124929) * internal.h (struct cpp_reader): Add new fields: @@ -23,6 +28,29 @@ (_cpp_cleanup_files): Free pfile->nonexistent_file_hash and pfile->nonexistent_file_ob. +2007-05-14 Janis Johnson (r124731) + + PR c/31924 + * expr.c (interpret_float_suffix): Check for invalid suffix. + +2007-05-02 Eric Christopher (r124358) + + * expr.c (num_div_op): Don't overflow if the result is + zero. + +2007-05-02 Tom Tromey (r124356) + + PR preprocessor/28709: + * macro.c (paste_tokens): Remove PASTE_LEFT from the old lhs. + +2007-01-30 Tom Tromey (r121340) + + PR preprocessor/29966: + * macro.c (lex_expansion_token): Save and restore cpp_reader's + cur_token. + (_cpp_create_definition): Don't restore cur_token here. + * lex.c (_cpp_lex_token): Added assertion. + 2006-12-29 Ian Lance Taylor (r120263) * lex.c (_cpp_clean_line): Add uses of __builtin_expect. Don't Modified: head/contrib/gcclibs/libcpp/expr.c == --- head/contrib/gcclibs/libcpp/expr.c Mon Dec 2 03:43:37 2013 (r258825) +++ head/contrib/gcclibs/libcpp/expr.c Mon Dec 2 03:47:08 2013 (r258826) @@ -87,16 +87,19 @@ interpret_float_suffix (const uchar *s, while (len--) switch (s[len]) { - case 'f': case 'F': f++; break; - case 'l': case 'L': l++; break; - case 'i': case 'I': - case 'j': case 'J': i++; break; - case 'd': case 'D': - /* Disallow fd, ld suffixes. */ - if (d && (f || l)) + case 'f': case 'F': + if (d > 0) + return 0; + f++; + break; + case 'l': case 'L': + if (d > 0) return 0; - d++; + l++; break; + case 'i': case 'I': + case 'j': case 'J': i++; break; + case 'd': case 'D': d++; break; default: return 0; } @@ -494,7 +497,7 @@ append_digit (cpp_num num, int digit, in if (add_low + digit < add_low) add_high++; add_low += digit; - + if (result.low + add_low < result.low) add_high++; if (result.high + add_high < result.high) @@ -1580,7 +1583,8 @@ num_div_op (cpp_reader *pfile, cpp_num l { if (negate) result = num_negate (result, precision); - result.overflow = num_positive (result, precision) ^ !negate; + result.overflow = (num_positive (result, precision) ^ !negate +&& !num_zerop (result)); } return result; Modified: head/contrib/gcclibs/libcpp/lex.c == --- head/contrib/gcclibs/libcpp/lex.c Mon Dec 2 03:43:37 2013 (r258825) +++ head/contrib/gcclibs/libcpp/lex.c Mon Dec 2 03:47:08 2013 (r258826) @@ -766,6 +766,11 @@ _cpp_lex_token (cpp_reader *pfile) pfile->cur_run = next_tokenrun (pfile->cur_run); pfile->cur_token = pfile->cur_run->base; } + /* We assume that the current token is somewhere in the current +run. */ + if (pfile->cur_token < pfile->cur_run->base + || pfile->cur_token >= pfile->cur_run->limit) + abort (); if (pfile->lookaheads) { @@ -847,11 +852,8 @@ _cpp_get_fresh
svn commit: r258825 - head/sys/dev/iwn
Author: adrian Date: Mon Dec 2 03:43:37 2013 New Revision: 258825 URL: http://svnweb.freebsd.org/changeset/base/258825 Log: Oops - fix bad indent. Sorry! Modified: head/sys/dev/iwn/if_iwn.c Modified: head/sys/dev/iwn/if_iwn.c == --- head/sys/dev/iwn/if_iwn.c Mon Dec 2 03:42:39 2013(r258824) +++ head/sys/dev/iwn/if_iwn.c Mon Dec 2 03:43:37 2013(r258825) @@ -7506,7 +7506,7 @@ iwn_read_firmware_tlv(struct iwn_softc * DPRINTF(sc, IWN_DEBUG_RESET, "PAN Support found: %d\n", 1); break; - case IWN_FW_TLV_FLAGS: + case IWN_FW_TLV_FLAGS: if (len < sizeof(uint32_t)) break; if (len % sizeof(uint32_t)) ___ 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: r258824 - head/sys/dev/iwn
Author: adrian Date: Mon Dec 2 03:42:39 2013 New Revision: 258824 URL: http://svnweb.freebsd.org/changeset/base/258824 Log: Add some sanity checks to the TLV fetch. Obtained from:Linux iwlwifi Modified: head/sys/dev/iwn/if_iwn.c Modified: head/sys/dev/iwn/if_iwn.c == --- head/sys/dev/iwn/if_iwn.c Mon Dec 2 03:40:51 2013(r258823) +++ head/sys/dev/iwn/if_iwn.c Mon Dec 2 03:42:39 2013(r258824) @@ -7506,8 +7506,16 @@ iwn_read_firmware_tlv(struct iwn_softc * DPRINTF(sc, IWN_DEBUG_RESET, "PAN Support found: %d\n", 1); break; - case IWN_FW_TLV_FLAGS : - sc->tlv_feature_flags = htole32(*ptr); + case IWN_FW_TLV_FLAGS: + if (len < sizeof(uint32_t)) + break; + if (len % sizeof(uint32_t)) + break; + sc->tlv_feature_flags = le32toh(*ptr); + DPRINTF(sc, IWN_DEBUG_RESET, + "%s: feature: 0x%08x\n", + __func__, + sc->tlv_feature_flags); break; case IWN_FW_TLV_PBREQ_MAXLEN: case IWN_FW_TLV_RUNT_EVTLOG_PTR: ___ 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: r258823 - head/sys/dev/iwn
Author: adrian Date: Mon Dec 2 03:40:51 2013 New Revision: 258823 URL: http://svnweb.freebsd.org/changeset/base/258823 Log: Add some code to double-check whether we're correctly populating the TX ring according to what the firmware requires. The firmware requires A-MPDU sub-frames to be at a very specific ring offset - that is, the ring slot offset should be (seqno % 256.) This holds for every NIC I've tested thus far except the 4965, which starts erroring out here shortly before the firmware panics. Which is good, it's doing what it's supposed to (read: capture that we've screwed up somewhere.) The specifics about getting this stuff right: * the initial seqno allocation should match up with the ringid. * .. yes, this means we can start at a ring offset that isn't zero. * .. because we program the start seqno in the firmware message to setup the AC. * The initial seqno allocation may be non-zero _and_ frames may be being transmitted during a-mpdu negotiation. I faced similar issues on ath(4) and had to software queue frames to that node+TID during A-MPDU negotiation. * seqno allocation should be in lockstep with ring increments. * If we fail to transmit some segment, no, we shouldn't reuse that ring slot. We should just transmit a BAR (which we aren't yet doing, sigh) and move onto the next seqno. * In theory there shouldn't be any holes in the seqno space when we are transmitting frames. Tested: * 4965 (throws problems, so yes we have to fix this); * 5100 (seems ok); * 6200 (seems ok); * 2200 (seems ok); * 2230 (seems ok). Modified: head/sys/dev/iwn/if_iwn.c Modified: head/sys/dev/iwn/if_iwn.c == --- head/sys/dev/iwn/if_iwn.c Mon Dec 2 03:36:44 2013(r258822) +++ head/sys/dev/iwn/if_iwn.c Mon Dec 2 03:40:51 2013(r258823) @@ -4070,6 +4070,7 @@ iwn_tx_data(struct iwn_softc *sc, struct } ac = M_WME_GETAC(m); if (m->m_flags & M_AMPDU_MPDU) { + uint16_t seqno; struct ieee80211_tx_ampdu *tap = &ni->ni_tx_ampdu[ac]; if (!IEEE80211_AMPDU_RUNNING(tap)) { @@ -4077,9 +4078,27 @@ iwn_tx_data(struct iwn_softc *sc, struct return EINVAL; } + /* +* Queue this frame to the hardware ring that we've +* negotiated AMPDU TX on. +* +* Note that the sequence number must match the TX slot +* being used! +*/ ac = *(int *)tap->txa_private; + seqno = ni->ni_txseqs[tid]; *(uint16_t *)wh->i_seq = - htole16(ni->ni_txseqs[tid] << IEEE80211_SEQ_SEQ_SHIFT); + htole16(seqno << IEEE80211_SEQ_SEQ_SHIFT); + ring = &sc->txq[ac]; + if ((seqno % 256) != ring->cur) { + device_printf(sc->sc_dev, + "%s: m=%p: seqno (%d) (%d) != ring index (%d) !\n", + __func__, + m, + seqno, + seqno % 256, + ring->cur); + } ni->ni_txseqs[tid]++; } ring = &sc->txq[ac]; ___ 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: r258822 - head/sys/dev/drm2/i915
Author: eadler Date: Mon Dec 2 03:36:44 2013 New Revision: 258822 URL: http://svnweb.freebsd.org/changeset/base/258822 Log: Partial revert of r258779 and r258780: The directory sys/dev/drm2/i915 is apperently contributed code. Revert to the broken version of this file to make future imports easier. Requested by: kib Modified: head/sys/dev/drm2/i915/i915_reg.h Modified: head/sys/dev/drm2/i915/i915_reg.h == --- head/sys/dev/drm2/i915/i915_reg.h Mon Dec 2 03:11:25 2013 (r258821) +++ head/sys/dev/drm2/i915/i915_reg.h Mon Dec 2 03:36:44 2013 (r258822) @@ -798,7 +798,7 @@ __FBSDID("$FreeBSD$"); #define _DPLL_A0x06014 #define _DPLL_B0x06018 #define DPLL(pipe) _PIPE(pipe, _DPLL_A, _DPLL_B) -#define DPLL_VCO_ENABLE (1U << 31) +#define DPLL_VCO_ENABLE (1 << 31) #define DPLL_DVO_HIGH_SPEED (1 << 30) #define DPLL_SYNCLOCK_ENABLE (1 << 29) #define DPLL_VGA_MODE_DIS(1 << 28) @@ -1483,7 +1483,7 @@ __FBSDID("$FreeBSD$"); /* SDVO port control */ #define SDVOB 0x61140 #define SDVOC 0x61160 -#define SDVO_ENABLE (1U << 31) +#define SDVO_ENABLE (1 << 31) #define SDVO_PIPE_B_SELECT (1 << 30) #define SDVO_STALL_SELECT(1 << 29) #define SDVO_INTERRUPT_ENABLE(1 << 26) @@ -1521,7 +1521,7 @@ __FBSDID("$FreeBSD$"); #define DVOA 0x61120 #define DVOB 0x61140 #define DVOC 0x61160 -#define DVO_ENABLE (1U << 31) +#define DVO_ENABLE (1 << 31) #define DVO_PIPE_B_SELECT(1 << 30) #define DVO_PIPE_STALL_UNUSED(0 << 28) #define DVO_PIPE_STALL (1 << 28) @@ -1557,7 +1557,7 @@ __FBSDID("$FreeBSD$"); * Enables the LVDS port. This bit must be set before DPLLs are enabled, as * the DPLL semantics change when the LVDS is assigned to that pipe. */ -#define LVDS_PORT_EN (1U << 31) +#define LVDS_PORT_EN (1 << 31) /* Selects pipe B for LVDS data. Must be set on pre-965. */ #define LVDS_PIPEB_SELECT(1 << 30) #define LVDS_PIPE_MASK (1 << 30) @@ -1604,7 +1604,7 @@ __FBSDID("$FreeBSD$"); /* Video Data Island Packet control */ #define VIDEO_DIP_DATA 0x61178 #define VIDEO_DIP_CTL 0x61170 -#define VIDEO_DIP_ENABLE (1U << 31) +#define VIDEO_DIP_ENABLE (1 << 31) #define VIDEO_DIP_PORT_B (1 << 29) #define VIDEO_DIP_PORT_C (2 << 29) #define VIDEO_DIP_ENABLE_AVI (1 << 21) @@ -1620,7 +1620,7 @@ __FBSDID("$FreeBSD$"); /* Panel power sequencing */ #define PP_STATUS 0x61200 -#define PP_ON(1U << 31) +#define PP_ON(1 << 31) /* * Indicates that all dependencies of the panel are on: * @@ -1653,7 +1653,7 @@ __FBSDID("$FreeBSD$"); /* Panel fitting */ #define PFIT_CONTROL 0x61230 -#define PFIT_ENABLE (1U << 31) +#define PFIT_ENABLE (1 << 31) #define PFIT_PIPE_MASK (3 << 29) #define PFIT_PIPE_SHIFT 29 #define VERT_INTERP_DISABLE (0 << 10) @@ -1714,7 +1714,7 @@ __FBSDID("$FreeBSD$"); /* TV port control */ #define TV_CTL 0x68000 /** Enables the TV encoder */ -# define TV_ENC_ENABLE (1U << 31) +# define TV_ENC_ENABLE (1 << 31) /** Sources the TV encoder input from pipe B instead of A. */ # define TV_ENC_PIPEB_SELECT (1 << 30) /** Outputs composite video (DAC A only) */ @@ -1786,7 +1786,7 @@ __FBSDID("$FreeBSD$"); * * This gets cleared when TV_DAC_STATE_EN is cleared */ -# define TVDAC_STATE_CHG (1U << 31) +# define TVDAC_STATE_CHG (1 << 31) # define TVDAC_SENSE_MASK (7 << 28) /** Reports that DAC A voltage is above the detect threshold */ # define TVDAC_A_SENSE (1 << 30) @@ -1913,7 +1913,7 @@ __FBSDID("$FreeBSD$"); #define TV_H_CTL_2 0x68034 /** Enables the colorburst (needed for non-component color) */ -# define TV_BURST_ENA (1U << 31) +# define TV_BURST_ENA (1 << 31) /** Offset of the colorburst from the start of hsync, in pixels minus one. */ # define TV_HBURST_START_SHIFT 16 # define TV_HBURST_START_MASK 0x1fff @@ -1958,7 +1958,7 @@ __FBSDID("$FreeBSD$"); #define TV_V_CTL_3 0x68044 /** Enables generation of the equalization signal */ -# define TV_EQUAL_ENA (1U << 31) +# define TV_EQUAL_ENA (1 << 31) /** Length of vsync, in half lines */ # define TV_VEQ_LEN_MASK 0x007f # define TV_VEQ_LEN_SHIFT 16 @@ -2032,7 +2032,7 @@ __FBSDID("$FreeBSD$"); #define TV_SC_CTL_10x68060 /** Turns on the fi
Re: svn commit: r258779 - in head/sys/dev: cesa drm drm2/i915 drm2/radeon hatm
On Sun, Dec 1, 2013 at 6:07 PM, Jilles Tjoelker wrote: >> Revert the drm2/i915 changes from this and following commits now. >> You did not contacted obvious maintainer of the file. Of course I did not. This was discussed on arch@ and the change made mechanically. >> The changes are pointless and make the import of upstream changes >> harder; for i915_reg.h, much harder. > > This is a valid concern. The change should be submitted to upstream; if > upstream does not want the change, it is better to avoid the issue by > adding -fno-strict-overflow for the offending files, matching upstream. I will revert to the broken and incorrect code in sys/dev/drm2/i915. Upstream should be contacted with the patch. >> Not to mention that the whole churn is not needed if the >> -fno-strict-overflow flag is used. > > I think the undefined shifts should be fixed where possible and not in > contributed code. Agreed. In addition, contributed code ought to be clearly differentiated in the directory hierarchy. -- Eitan Adler Source, Ports, Doc committer Bugmeister, Ports Security teams ___ 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: r258821 - head/sys/netinet
Author: eadler Date: Mon Dec 2 03:11:25 2013 New Revision: 258821 URL: http://svnweb.freebsd.org/changeset/base/258821 Log: In a situation where: - The remote host sends a FIN - in an ACK for a sequence number for which an ACK has already been received - There is still unacked data on route to the remote host - The packet does not contain a window update The packet may be dropped without processing the FIN flag. PR: kern/99188 Submitted by: Staffan Ulfberg Discussed with: andre MFC after:never Modified: head/sys/netinet/tcp_input.c Modified: head/sys/netinet/tcp_input.c == --- head/sys/netinet/tcp_input.cMon Dec 2 02:33:03 2013 (r258820) +++ head/sys/netinet/tcp_input.cMon Dec 2 03:11:25 2013 (r258821) @@ -2429,13 +2429,15 @@ tcp_do_segment(struct mbuf *m, struct tc hhook_run_tcp_est_in(tp, th, &to); if (SEQ_LEQ(th->th_ack, tp->snd_una)) { - if (tlen == 0 && tiwin == tp->snd_wnd) { + if (tlen == 0 && tiwin == tp->snd_wnd && + !(thflags & TH_FIN)) { TCPSTAT_INC(tcps_rcvdupack); /* * If we have outstanding data (other than * a window probe), this is a completely * duplicate ack (ie, window info didn't -* change), the ack is the biggest we've +* change and FIN isn't set), +* the ack is the biggest we've * seen and we've seen exactly our rexmt * threshhold of them, assume a packet * has been dropped and retransmit it. ___ 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: r258820 - head/sys/arm/at91
Author: ian Date: Mon Dec 2 02:33:03 2013 New Revision: 258820 URL: http://svnweb.freebsd.org/changeset/base/258820 Log: Add definitions for the additional PIO pins found on recent AT91 SoCs. Modified: head/sys/arm/at91/at91_pioreg.h Modified: head/sys/arm/at91/at91_pioreg.h == --- head/sys/arm/at91/at91_pioreg.h Mon Dec 2 00:44:36 2013 (r258819) +++ head/sys/arm/at91/at91_pioreg.h Mon Dec 2 02:33:03 2013 (r258820) @@ -164,5 +164,69 @@ #define AT91C_PIO_PC29 ((unsigned int) 1 << 29) // Pin Controlled by PC29 #define AT91C_PIO_PC30 ((unsigned int) 1 << 30) // Pin Controlled by PC30 #define AT91C_PIO_PC31 ((unsigned int) 1 << 31) // Pin Controlled by PC31 +#define AT91C_PIO_PD0((unsigned int) 1 << 0) // Pin Controlled by PD0 +#define AT91C_PIO_PD1((unsigned int) 1 << 1) // Pin Controlled by PD1 +#define AT91C_PIO_PD2((unsigned int) 1 << 2) // Pin Controlled by PD2 +#define AT91C_PIO_PD3((unsigned int) 1 << 3) // Pin Controlled by PD3 +#define AT91C_PIO_PD4((unsigned int) 1 << 4) // Pin Controlled by PD4 +#define AT91C_PIO_PD5((unsigned int) 1 << 5) // Pin Controlled by PD5 +#define AT91C_PIO_PD6((unsigned int) 1 << 6) // Pin Controlled by PD6 +#define AT91C_PIO_PD7((unsigned int) 1 << 7) // Pin Controlled by PD7 +#define AT91C_PIO_PD8((unsigned int) 1 << 8) // Pin Controlled by PD8 +#define AT91C_PIO_PD9((unsigned int) 1 << 9) // Pin Controlled by PD9 +#define AT91C_PIO_PD10 ((unsigned int) 1 << 10) // Pin Controlled by PD10 +#define AT91C_PIO_PD11 ((unsigned int) 1 << 11) // Pin Controlled by PD11 +#define AT91C_PIO_PD12 ((unsigned int) 1 << 12) // Pin Controlled by PD12 +#define AT91C_PIO_PD13 ((unsigned int) 1 << 13) // Pin Controlled by PD13 +#define AT91C_PIO_PD14 ((unsigned int) 1 << 14) // Pin Controlled by PD14 +#define AT91C_PIO_PD15 ((unsigned int) 1 << 15) // Pin Controlled by PD15 +#define AT91C_PIO_PD16 ((unsigned int) 1 << 16) // Pin Controlled by PD16 +#define AT91C_PIO_PD17 ((unsigned int) 1 << 17) // Pin Controlled by PD17 +#define AT91C_PIO_PD18 ((unsigned int) 1 << 18) // Pin Controlled by PD18 +#define AT91C_PIO_PD19 ((unsigned int) 1 << 19) // Pin Controlled by PD19 +#define AT91C_PIO_PD20 ((unsigned int) 1 << 20) // Pin Controlled by PD20 +#define AT91C_PIO_PD21 ((unsigned int) 1 << 21) // Pin Controlled by PD21 +#define AT91C_PIO_PD22 ((unsigned int) 1 << 22) // Pin Controlled by PD22 +#define AT91C_PIO_PD23 ((unsigned int) 1 << 23) // Pin Controlled by PD23 +#define AT91C_PIO_PD24 ((unsigned int) 1 << 24) // Pin Controlled by PD24 +#define AT91C_PIO_PD25 ((unsigned int) 1 << 25) // Pin Controlled by PD25 +#define AT91C_PIO_PD26 ((unsigned int) 1 << 26) // Pin Controlled by PD26 +#define AT91C_PIO_PD27 ((unsigned int) 1 << 27) // Pin Controlled by PD27 +#define AT91C_PIO_PD28 ((unsigned int) 1 << 28) // Pin Controlled by PD28 +#define AT91C_PIO_PD29 ((unsigned int) 1 << 29) // Pin Controlled by PD29 +#define AT91C_PIO_PD30 ((unsigned int) 1 << 30) // Pin Controlled by PD30 +#define AT91C_PIO_PD31 ((unsigned int) 1 << 31) // Pin Controlled by PD31 +#define AT91C_PIO_PE0((unsigned int) 1 << 0) // Pin Controlled by PE0 +#define AT91C_PIO_PE1((unsigned int) 1 << 1) // Pin Controlled by PE1 +#define AT91C_PIO_PE2((unsigned int) 1 << 2) // Pin Controlled by PE2 +#define AT91C_PIO_PE3((unsigned int) 1 << 3) // Pin Controlled by PE3 +#define AT91C_PIO_PE4((unsigned int) 1 << 4) // Pin Controlled by PE4 +#define AT91C_PIO_PE5((unsigned int) 1 << 5) // Pin Controlled by PE5 +#define AT91C_PIO_PE6((unsigned int) 1 << 6) // Pin Controlled by PE6 +#define AT91C_PIO_PE7((unsigned int) 1 << 7) // Pin Controlled by PE7 +#define AT91C_PIO_PE8((unsigned int) 1 << 8) // Pin Controlled by PE8 +#define AT91C_PIO_PE9((unsigned int) 1 << 9) // Pin Controlled by PE9 +#define AT91C_PIO_PE10 ((unsigned int) 1 << 10) // Pin Controlled by PE10 +#define AT91C_PIO_PE11 ((unsigned int) 1 << 11) // Pin Controlled by PE11 +#define AT91C_PIO_PE12 ((unsigned int) 1 << 12) // Pin Controlled by PE12 +#define AT91C_PIO_PE13 ((unsigned int) 1 << 13) // Pin Controlled by PE13 +#define AT91C_PIO_PE14 ((unsigned int) 1 << 14) // Pin Controlled by PE14 +#define AT91C_PIO_PE15 ((unsigned int) 1 << 15) // Pin Controlled by PE15 +#define AT91C_PIO_PE16 ((unsigned int) 1 << 16) // Pin Controlled by PE16 +#define AT91C_PIO_PE17 ((unsigned int) 1 << 17) // Pin Controlled by PE17 +#define AT91C_PIO_PE18 ((unsigned int) 1 << 18) // Pin Controlled by PE18 +#define AT91C_PIO_PE19 ((unsigned int) 1 << 19) // Pin Controlled by PE19 +#define AT91C
svn commit: r258819 - head/sys/kern
Author: nwhitehorn Date: Mon Dec 2 00:44:36 2013 New Revision: 258819 URL: http://svnweb.freebsd.org/changeset/base/258819 Log: Add new sysctl, kern.supported_abis, containing the list of FreeBSD MACHINE_ARCH values whose binaries this kernel can run. This patch provides a feature requested for implementing pkgng ABI identifiers in a robust way. The list is designed to indicate whether, say, an i386 package can be run on the current system. If kern.supported_abis contains "i386", then the answer is yes. Otherwise, the answer is no. At the moment, this only supports MACHINE_ARCH and MACHINE_ARCH32. As we gain support for more interesting combinations, this needs to become more flexible, possibily through the sysent framework, along with the hw.machine_arch emulation immediately preceding this code in kern_mib.c. Reviewed by: imp MFC after:3 days Modified: head/sys/kern/kern_mib.c Modified: head/sys/kern/kern_mib.c == --- head/sys/kern/kern_mib.cSun Dec 1 22:43:14 2013(r258818) +++ head/sys/kern/kern_mib.cMon Dec 2 00:44:36 2013(r258819) @@ -261,6 +261,13 @@ sysctl_hw_machine_arch(SYSCTL_HANDLER_AR SYSCTL_PROC(_hw, HW_MACHINE_ARCH, machine_arch, CTLTYPE_STRING | CTLFLAG_RD, NULL, 0, sysctl_hw_machine_arch, "A", "System architecture"); +SYSCTL_STRING(_kern, OID_AUTO, supported_abis, CTLFLAG_RD | CTLFLAG_MPSAFE, +#ifdef COMPAT_FREEBSD32 +MACHINE_ARCH " " MACHINE_ARCH32, 0, "List of supported ABIs"); +#else +MACHINE_ARCH, 0, "List of supported ABIs"); +#endif + static int sysctl_hostname(SYSCTL_HANDLER_ARGS) { ___ 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: r258779 - in head/sys/dev: cesa drm drm2/i915 drm2/radeon hatm
On Sun, Dec 01, 2013 at 09:59:44AM +0200, Konstantin Belousov wrote: > On Sat, Nov 30, 2013 at 10:16:38PM +, Eitan Adler wrote: > > Author: eadler > > Date: Sat Nov 30 22:16:37 2013 > > New Revision: 258779 > > URL: http://svnweb.freebsd.org/changeset/base/258779 > > > > Log: > > Similar to the (1 << 31) case it is not defined to do (2 << 30). > > > > Modified: > ... > > head/sys/dev/drm2/i915/i915_reg.h > Revert the drm2/i915 changes from this and following commits now. > You did not contacted obvious maintainer of the file. > The changes are pointless and make the import of upstream changes > harder; for i915_reg.h, much harder. This is a valid concern. The change should be submitted to upstream; if upstream does not want the change, it is better to avoid the issue by adding -fno-strict-overflow for the offending files, matching upstream. > Not to mention that the whole churn is not needed if the > -fno-strict-overflow flag is used. I think the undefined shifts should be fixed where possible and not in contributed code. -- Jilles Tjoelker ___ 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: r258817 - in head/contrib: gcc/cp gcclibs/libiberty gcclibs/libiberty/testsuite
Author: pfg Date: Sun Dec 1 22:08:19 2013 New Revision: 258817 URL: http://svnweb.freebsd.org/changeset/base/258817 Log: libiberty: upstream updates. There is a new ChangeLog.gcc43 file but most notable: * floatformat.c (get_field): Fix segfault with little-endian word order on 64-bit hosts. (put_field): Likewise. (min): Move definition. gcc/cp/ChangeLog 2007-05-04 Geoffrey Keating PR 31775 * mangle.c (write_mangled_name): Mangle static variable names. (write_unqualified_name): Use local-source-name for namespace-scope static variables. (Completes FreeBSD's r258017 ) Obtained from:gcc 4.3 (rev. 118552, 120097, 20698, 120702, 121364, 122972, 126588; GPLv2) MFC after:2 weeks Added: head/contrib/gcclibs/libiberty/ChangeLog.gcc43 Modified: head/contrib/gcc/cp/ChangeLog.gcc43 head/contrib/gcc/cp/mangle.c head/contrib/gcclibs/libiberty/choose-temp.c head/contrib/gcclibs/libiberty/cp-demangle.c head/contrib/gcclibs/libiberty/cp-demangle.h head/contrib/gcclibs/libiberty/floatformat.c head/contrib/gcclibs/libiberty/functions.texi head/contrib/gcclibs/libiberty/pex-unix.c head/contrib/gcclibs/libiberty/strsignal.c head/contrib/gcclibs/libiberty/testsuite/demangle-expected head/contrib/gcclibs/libiberty/testsuite/test-demangle.c Modified: head/contrib/gcc/cp/ChangeLog.gcc43 == --- head/contrib/gcc/cp/ChangeLog.gcc43 Sun Dec 1 21:44:05 2013 (r258816) +++ head/contrib/gcc/cp/ChangeLog.gcc43 Sun Dec 1 22:08:19 2013 (r258817) @@ -1,4 +1,4 @@ -2007-07-09 Geoffrey Keating +2007-07-09 Geoffrey Keating (r126529) PR 32617 * decl.c (cxx_init_decl_processing): Don't set @@ -18,6 +18,13 @@ * decl2.c (determine_visibility): Remove duplicate code for handling type info. +2007-05-05 Geoffrey Keating (r124467) + + PR 31775 + * mangle.c (write_mangled_name): Mangle static variable names. + (write_unqualified_name): Use local-source-name for + namespace-scope static variables. + 2007-03-12 Seongbae Park (r122851) * decl.c (compute_array_index_type): New warning flag warn_vla. Modified: head/contrib/gcc/cp/mangle.c == --- head/contrib/gcc/cp/mangle.cSun Dec 1 21:44:05 2013 (r258816) +++ head/contrib/gcc/cp/mangle.cSun Dec 1 22:08:19 2013 (r258817) @@ -688,7 +688,8 @@ write_mangled_name (const tree decl, boo } } else if (TREE_CODE (decl) == VAR_DECL - /* The names of global variables aren't mangled. */ + /* The names of non-static global variables aren't mangled. */ + && DECL_EXTERNAL_LINKAGE_P (decl) && (CP_DECL_CONTEXT (decl) == global_namespace /* And neither are `extern "C"' variables. */ || DECL_EXTERN_C_P (decl))) @@ -1086,7 +1087,10 @@ write_template_prefix (const tree node) ::= ::= - ::= */ + ::= + ::= + +::= L */ static void write_unqualified_name (const tree decl) @@ -1126,6 +1130,16 @@ write_unqualified_name (const tree decl) write_string (oni[DECL_OVERLOADED_OPERATOR_P (decl)].mangled_name); } + else if (VAR_OR_FUNCTION_DECL_P (decl) && ! TREE_PUBLIC (decl) + && DECL_NAMESPACE_SCOPE_P (decl) + && decl_linkage (decl) == lk_internal) +{ + MANGLE_TRACE_TREE ("local-source-name", decl); + write_char ('L'); + write_source_name (DECL_NAME (decl)); + /* The default discriminator is 1, and that's all we ever use, +so there's no code to output one here. */ +} else write_source_name (DECL_NAME (decl)); } Added: head/contrib/gcclibs/libiberty/ChangeLog.gcc43 == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/gcclibs/libiberty/ChangeLog.gcc43 Sun Dec 1 22:08:19 2013(r258817) @@ -0,0 +1,60 @@ +2007-05-05 Geoffrey Keating (r124467) + + PR 31775 + * mangle.c (write_mangled_name): Mangle static variable names. + (write_unqualified_name): Use local-source-name for + namespace-scope static variables. + +2007-03-15 Geoffrey Keating (r122972) + + * cp-demangle.c (d_encoding): Exit early on error. + (d_pointer_to_member_type): Exit early if cplus_demangle_type + returns NULL. + (cplus_demangle_type): Likewise. + * testsuite/demangle-expected: New testcase. + +2007-01-31 Ben Elliston (r121364) + + * strsignal.c (psignal): Change type of signo to int. + * functions.texi: Regenerate. + +2007-01-12 Ben Elliston (r120702) + + * pex-unix.c (writeerr):
svn commit: r258812 - head/sys/kern
Author: glebius Date: Sun Dec 1 20:03:00 2013 New Revision: 258812 URL: http://svnweb.freebsd.org/changeset/base/258812 Log: Remove unused variable. Modified: head/sys/kern/uipc_syscalls.c Modified: head/sys/kern/uipc_syscalls.c == --- head/sys/kern/uipc_syscalls.c Sun Dec 1 19:59:36 2013 (r258811) +++ head/sys/kern/uipc_syscalls.c Sun Dec 1 20:03:00 2013 (r258812) @@ -2288,7 +2288,6 @@ vn_sendfile(struct file *fp, int sockfd, struct vattr va; off_t off, xfsize, fsbytes, sbytes, rem, obj_size; int error, bsize, nd, hdrlen, mnw; - bool inflight_called; pg = NULL; obj = NULL; @@ -2298,7 +2297,6 @@ vn_sendfile(struct file *fp, int sockfd, hdrlen = mnw = 0; rem = nbytes; obj_size = 0; - inflight_called = false; error = sendfile_getobj(td, fp, &obj, &vp, &shmfd, &obj_size, &bsize); if (error != 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: r258811 - head/sys/powerpc/ofw
Author: nwhitehorn Date: Sun Dec 1 19:59:36 2013 New Revision: 258811 URL: http://svnweb.freebsd.org/changeset/base/258811 Log: Revert last few revisions; apologies for the noise. There are very rare, broken systems that require SPRG state to be preserved. Modified: head/sys/powerpc/ofw/ofw_machdep.c Modified: head/sys/powerpc/ofw/ofw_machdep.c == --- head/sys/powerpc/ofw/ofw_machdep.c Sun Dec 1 19:56:30 2013 (r258810) +++ head/sys/powerpc/ofw/ofw_machdep.c Sun Dec 1 19:59:36 2013 (r258811) @@ -90,6 +90,49 @@ ofw_restore_trap_vec(char *restore_trap_ bcopy(restore_trap_vec, (void *)EXC_RST, EXC_LAST - EXC_RST); __syncicache(EXC_RSVD, EXC_LAST - EXC_RSVD); } + +/* + * Saved SPRG0-3 from OpenFirmware. Will be restored prior to the callback. + */ +register_t ofw_sprg0_save; + +static __inline void +ofw_sprg_prepare(void) +{ + if (ofw_real_mode) + return; + + /* +* Assume that interrupt are disabled at this point, or +* SPRG1-3 could be trashed +*/ + __asm __volatile("mfsprg0 %0\n\t" +"mtsprg0 %1\n\t" +"mtsprg1 %2\n\t" +"mtsprg2 %3\n\t" +"mtsprg3 %4\n\t" +: "=&r"(ofw_sprg0_save) +: "r"(ofmsr[1]), +"r"(ofmsr[2]), +"r"(ofmsr[3]), +"r"(ofmsr[4])); +} + +static __inline void +ofw_sprg_restore(void) +{ + if (ofw_real_mode) + return; + + /* +* Note that SPRG1-3 contents are irrelevant. They are scratch +* registers used in the early portion of trap handling when +* interrupts are disabled. +* +* PCPU data cannot be used until this routine is called ! +*/ + __asm __volatile("mtsprg0 %0" :: "r"(ofw_sprg0_save)); +} #endif static int @@ -287,10 +330,13 @@ openfirmware_core(void *args) /* * Turn off exceptions - we really don't want to end up -* anywhere in the kernel while in OF state. +* anywhere unexpected with PCPU set to something strange +* or the stack pointer wrong. */ oldmsr = intr_disable(); + ofw_sprg_prepare(); + /* Save trap vectors */ ofw_save_trap_vec(save_trap_of); @@ -312,6 +358,8 @@ openfirmware_core(void *args) /* Restore trap vecotrs */ ofw_restore_trap_vec(save_trap_of); + ofw_sprg_restore(); + intr_restore(oldmsr); return (result); ___ 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: r258810 - head/sys/powerpc/ofw
Author: nwhitehorn Date: Sun Dec 1 19:56:30 2013 New Revision: 258810 URL: http://svnweb.freebsd.org/changeset/base/258810 Log: Deleted one line too many. Modified: head/sys/powerpc/ofw/ofw_machdep.c Modified: head/sys/powerpc/ofw/ofw_machdep.c == --- head/sys/powerpc/ofw/ofw_machdep.c Sun Dec 1 19:55:51 2013 (r258809) +++ head/sys/powerpc/ofw/ofw_machdep.c Sun Dec 1 19:56:30 2013 (r258810) @@ -90,6 +90,7 @@ ofw_restore_trap_vec(char *restore_trap_ bcopy(restore_trap_vec, (void *)EXC_RST, EXC_LAST - EXC_RST); __syncicache(EXC_RSVD, EXC_LAST - EXC_RSVD); } +#endif static int parse_ofw_memory(phandle_t node, const char *prop, struct mem_region *output) ___ 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: r258808 - head/sys/powerpc/ofw
Author: nwhitehorn Date: Sun Dec 1 19:45:04 2013 New Revision: 258808 URL: http://svnweb.freebsd.org/changeset/base/258808 Log: No actual hardware supported by FreeBSD requires this SPRG save/restore paranoia, so kill it. In particular, changes to SPRG0 are dangerous, since that is where the PCPU pointer is kept. Modified: head/sys/powerpc/ofw/ofw_machdep.c Modified: head/sys/powerpc/ofw/ofw_machdep.c == --- head/sys/powerpc/ofw/ofw_machdep.c Sun Dec 1 19:43:15 2013 (r258807) +++ head/sys/powerpc/ofw/ofw_machdep.c Sun Dec 1 19:45:04 2013 (r258808) @@ -91,52 +91,6 @@ ofw_restore_trap_vec(char *restore_trap_ __syncicache(EXC_RSVD, EXC_LAST - EXC_RSVD); } -/* - * Saved SPRG0-3 from OpenFirmware. Will be restored prior to the callback. - */ -register_t ofw_sprg0_save; - -static __inline void -ofw_sprg_prepare(void) -{ - if (ofw_real_mode) - return; - - /* -* Assume that interrupt are disabled at this point, or -* SPRG1-3 could be trashed -*/ - __asm __volatile("mfsprg0 %0\n\t" -"mtsprg0 %1\n\t" -"mtsprg1 %2\n\t" -"mtsprg2 %3\n\t" -"mtsprg3 %4\n\t" -: "=&r"(ofw_sprg0_save) -: "r"(ofmsr[1]), -"r"(ofmsr[2]), -"r"(ofmsr[3]), -"r"(ofmsr[4])); -} - -static __inline void -ofw_sprg_restore(void) -{ -#if 0 - if (ofw_real_mode) - return; -#endif - - /* -* Note that SPRG1-3 contents are irrelevant. They are scratch -* registers used in the early portion of trap handling when -* interrupts are disabled. -* -* PCPU data cannot be used until this routine is called ! -*/ - __asm __volatile("mtsprg0 %0" :: "r"(ofw_sprg0_save)); -} -#endif - static int parse_ofw_memory(phandle_t node, const char *prop, struct mem_region *output) { @@ -332,13 +286,10 @@ openfirmware_core(void *args) /* * Turn off exceptions - we really don't want to end up -* anywhere unexpected with PCPU set to something strange -* or the stack pointer wrong. +* anywhere in the kernel while in OF state. */ oldmsr = intr_disable(); - ofw_sprg_prepare(); - /* Save trap vectors */ ofw_save_trap_vec(save_trap_of); @@ -360,8 +311,6 @@ openfirmware_core(void *args) /* Restore trap vecotrs */ ofw_restore_trap_vec(save_trap_of); - ofw_sprg_restore(); - intr_restore(oldmsr); return (result); ___ 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: r258807 - in head/sys/powerpc: booke include mpc85xx ofw powermac powerpc ps3 pseries wii
Author: nwhitehorn Date: Sun Dec 1 19:43:15 2013 New Revision: 258807 URL: http://svnweb.freebsd.org/changeset/base/258807 Log: Rearchitect platform memory map parsing to make it less Open Firmware-centric: - Keep the static list of regions in platform.c instead of ofw_machdep.c - Move various merging and sorting operations to platform.c as well - Move apple_hacks code out of ofw_machdep.c and into platform_powermac.c, where it belongs - Move CHRP-specific dynamic-reconfiguration memory parsing into platform_chrp.c instead of pretending it is shared code Modified: head/sys/powerpc/booke/platform_bare.c head/sys/powerpc/include/ofw_machdep.h head/sys/powerpc/mpc85xx/platform_mpc85xx.c head/sys/powerpc/ofw/ofw_machdep.c head/sys/powerpc/powermac/platform_powermac.c head/sys/powerpc/powerpc/platform.c head/sys/powerpc/powerpc/platform_if.m head/sys/powerpc/ps3/platform_ps3.c head/sys/powerpc/pseries/platform_chrp.c head/sys/powerpc/wii/platform_wii.c Modified: head/sys/powerpc/booke/platform_bare.c == --- head/sys/powerpc/booke/platform_bare.c Sun Dec 1 19:05:32 2013 (r258806) +++ head/sys/powerpc/booke/platform_bare.c Sun Dec 1 19:43:15 2013 (r258807) @@ -45,8 +45,8 @@ __FBSDID("$FreeBSD$"); extern uint32_t *bootinfo; static int bare_probe(platform_t); -static void bare_mem_regions(platform_t, struct mem_region **phys, int *physsz, -struct mem_region **avail, int *availsz); +static void bare_mem_regions(platform_t, struct mem_region *phys, int *physsz, +struct mem_region *avail, int *availsz); static u_long bare_timebase_freq(platform_t, struct cpuref *cpuref); static void bare_reset(platform_t); @@ -80,8 +80,8 @@ bare_probe(platform_t plat) } void -bare_mem_regions(platform_t plat, struct mem_region **phys, int *physsz, -struct mem_region **avail, int *availsz) +bare_mem_regions(platform_t plat, struct mem_region *phys, int *physsz, +struct mem_region *avail, int *availsz) { ofw_mem_regions(phys, physsz, avail, availsz); Modified: head/sys/powerpc/include/ofw_machdep.h == --- head/sys/powerpc/include/ofw_machdep.h Sun Dec 1 19:05:32 2013 (r258806) +++ head/sys/powerpc/include/ofw_machdep.h Sun Dec 1 19:43:15 2013 (r258807) @@ -45,7 +45,7 @@ boolean_t OF_bootstrap(void); void OF_reboot(void); -void ofw_mem_regions(struct mem_region **, int *, struct mem_region **, int *); +void ofw_mem_regions(struct mem_region *, int *, struct mem_region *, int *); void ofw_quiesce(void); /* Must be called before VM is up! */ void ofw_save_trap_vec(char *); Modified: head/sys/powerpc/mpc85xx/platform_mpc85xx.c == --- head/sys/powerpc/mpc85xx/platform_mpc85xx.c Sun Dec 1 19:05:32 2013 (r258806) +++ head/sys/powerpc/mpc85xx/platform_mpc85xx.c Sun Dec 1 19:43:15 2013 (r258807) @@ -72,8 +72,8 @@ static int cpu, maxcpu; static int mpc85xx_probe(platform_t); static int mpc85xx_attach(platform_t); -static void mpc85xx_mem_regions(platform_t, struct mem_region **phys, -int *physsz, struct mem_region **avail, int *availsz); +static void mpc85xx_mem_regions(platform_t, struct mem_region *phys, +int *physsz, struct mem_region *avail, int *availsz); static u_long mpc85xx_timebase_freq(platform_t, struct cpuref *cpuref); static int mpc85xx_smp_first_cpu(platform_t, struct cpuref *cpuref); static int mpc85xx_smp_next_cpu(platform_t, struct cpuref *cpuref); @@ -201,8 +201,8 @@ mpc85xx_attach(platform_t plat) } void -mpc85xx_mem_regions(platform_t plat, struct mem_region **phys, int *physsz, -struct mem_region **avail, int *availsz) +mpc85xx_mem_regions(platform_t plat, struct mem_region *phys, int *physsz, +struct mem_region *avail, int *availsz) { ofw_mem_regions(phys, physsz, avail, availsz); Modified: head/sys/powerpc/ofw/ofw_machdep.c == --- head/sys/powerpc/ofw/ofw_machdep.c Sun Dec 1 19:05:32 2013 (r258806) +++ head/sys/powerpc/ofw/ofw_machdep.c Sun Dec 1 19:43:15 2013 (r258807) @@ -61,11 +61,6 @@ __FBSDID("$FreeBSD$"); #include #include -static struct mem_region OFmem[PHYS_AVAIL_SZ], OFavail[PHYS_AVAIL_SZ]; -static struct mem_region OFfree[PHYS_AVAIL_SZ]; - -static int apple_hacks; - #ifdef AIM extern register_t ofmsr[5]; extern void*openfirmware_entry; @@ -80,7 +75,7 @@ static intopenfirmware(void *args); __inline void ofw_save_trap_vec(char *save_trap_vec) { - if (apple_hacks) + if (!ofw_real_mode) return; bcopy((void *)EXC_RST, save_trap_vec, EXC_LAST - EXC_RST); @@ -89,7 +84,7 @@ ofw_save_trap_vec(char *save_trap_vec) static __inline void ofw_
svn commit: r258806 - head/sys/dev/uart
Author: nwhitehorn Date: Sun Dec 1 19:05:32 2013 New Revision: 258806 URL: http://svnweb.freebsd.org/changeset/base/258806 Log: Real OF systems have an ihandle under /chosen/stdout, not a phandle. Use the right type. Modified: head/sys/dev/uart/uart_cpu_powerpc.c Modified: head/sys/dev/uart/uart_cpu_powerpc.c == --- head/sys/dev/uart/uart_cpu_powerpc.cSun Dec 1 19:03:20 2013 (r258805) +++ head/sys/dev/uart/uart_cpu_powerpc.cSun Dec 1 19:05:32 2013 (r258806) @@ -89,13 +89,13 @@ ofw_get_console_phandle_path(phandle_t n return (ENXIO); OF_getprop(node, prop, &field, sizeof(field)); - /* This property might be a phandle or might be a path. Hooray. */ + /* This property might be either a ihandle or path. Hooray. */ output = -1; if (field.buf[size - 1] == 0) output = OF_finddevice(field.buf); if (output == -1 && size == 4) - output = OF_xref_phandle(field.ref); + output = OF_instance_to_package(field.ref); if (output != -1) { *result = output; ___ 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: r258805 - head/sys/dev/ofw
Author: nwhitehorn Date: Sun Dec 1 19:03:20 2013 New Revision: 258805 URL: http://svnweb.freebsd.org/changeset/base/258805 Log: Open Firmware mandates that certain cross-references, in particular those in /chosen, be ihandles. The ePAPR spec makes those cross-reference phandles, since FDT has no concept of ihandles. Have the OF FDT CI module interpret queries about ihandles as cross-reference phandles. Modified: head/sys/dev/ofw/ofw_fdt.c Modified: head/sys/dev/ofw/ofw_fdt.c == --- head/sys/dev/ofw/ofw_fdt.c Sun Dec 1 18:37:31 2013(r258804) +++ head/sys/dev/ofw/ofw_fdt.c Sun Dec 1 19:03:20 2013(r258805) @@ -207,7 +207,8 @@ static phandle_t ofw_fdt_instance_to_package(ofw_t ofw, ihandle_t instance) { - return (-1); + /* Where real OF uses ihandles in the tree, FDT uses xref phandles */ + return (OF_xref_phandle(instance)); } /* Get the length of a property of a package. */ @@ -350,8 +351,13 @@ ofw_fdt_finddevice(ofw_t ofw, const char static ssize_t ofw_fdt_instance_to_path(ofw_t ofw, ihandle_t instance, char *buf, size_t len) { + phandle_t phandle; - return (-1); + phandle = OF_instance_to_package(instance); + if (phandle == -1) + return (-1); + + return (OF_package_to_path(phandle, buf, len)); } /* Return the fully qualified pathname corresponding to a package. */ ___ 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: r258802 - head/sys/powerpc/powerpc
Author: nwhitehorn Date: Sun Dec 1 17:29:07 2013 New Revision: 258802 URL: http://svnweb.freebsd.org/changeset/base/258802 Log: Remove unnecessary double-setting of the thread's onfault state in copyinstr(). Modified: head/sys/powerpc/powerpc/copyinout.c Modified: head/sys/powerpc/powerpc/copyinout.c == --- head/sys/powerpc/powerpc/copyinout.cSun Dec 1 17:29:00 2013 (r258801) +++ head/sys/powerpc/powerpc/copyinout.cSun Dec 1 17:29:07 2013 (r258802) @@ -250,22 +250,11 @@ copyin(const void *udaddr, void *kaddr, int copyinstr(const void *udaddr, void *kaddr, size_t len, size_t *done) { - struct thread *td; - pmap_t pm; - faultbufenv; const char *up; char*kp; size_t l; int rv, c; - td = curthread; - pm = &td->td_proc->p_vmspace->vm_pmap; - - if (setfault(env)) { - td->td_pcb->pcb_onfault = NULL; - return (EFAULT); - } - kp = kaddr; up = udaddr; @@ -288,7 +277,6 @@ copyinstr(const void *udaddr, void *kadd *done = l; } - td->td_pcb->pcb_onfault = NULL; return (rv); } ___ 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: r258800 - head/sys/powerpc/aim
Author: nwhitehorn Date: Sun Dec 1 17:28:28 2013 New Revision: 258800 URL: http://svnweb.freebsd.org/changeset/base/258800 Log: The kernel stack guard pages are only below the stack pointer, not above. Prevent erroneous detection of stack overflows on legitimate faults on the page after this thread's stack. MFC after:3 days Modified: head/sys/powerpc/aim/trap_subr32.S head/sys/powerpc/aim/trap_subr64.S Modified: head/sys/powerpc/aim/trap_subr32.S == --- head/sys/powerpc/aim/trap_subr32.S Sun Dec 1 17:00:57 2013 (r258799) +++ head/sys/powerpc/aim/trap_subr32.S Sun Dec 1 17:28:28 2013 (r258800) @@ -664,11 +664,12 @@ disitrap: stw %r31,(PC_TEMPSAVE+CPUSAVE_AIM_DSISR)(%r1) #ifdef KDB - /* Try and detect a kernel stack overflow */ + /* Try to detect a kernel stack overflow */ mfsrr1 %r31 mtcr%r31 bt 17,realtrap /* branch is user mode */ mfsprg1 %r31/* get old SP */ + clrrwi %r31,%r31,11/* Round SP down to nearest page */ sub.%r30,%r31,%r30 /* SP - DAR */ bge 1f neg %r30,%r30 /* modulo value */ Modified: head/sys/powerpc/aim/trap_subr64.S == --- head/sys/powerpc/aim/trap_subr64.S Sun Dec 1 17:00:57 2013 (r258799) +++ head/sys/powerpc/aim/trap_subr64.S Sun Dec 1 17:28:28 2013 (r258800) @@ -569,11 +569,12 @@ disitrap: std %r31,(PC_TEMPSAVE+CPUSAVE_AIM_DSISR)(%r1) #ifdef KDB - /* Try and detect a kernel stack overflow */ + /* Try to detect a kernel stack overflow */ mfsrr1 %r31 mtcr%r31 bt 17,realtrap /* branch is user mode */ mfsprg1 %r31/* get old SP */ + clrrdi %r31,%r31,11/* Round SP down to nearest page */ sub.%r30,%r31,%r30 /* SP - DAR */ bge 1f neg %r30,%r30 /* modulo value */ ___ 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: r258799 - head/bin/test
Author: jilles Date: Sun Dec 1 17:00:57 2013 New Revision: 258799 URL: http://svnweb.freebsd.org/changeset/base/258799 Log: test: Simplify the code by unifying op_num and op_type. The global variable t_wp_op is no longer needed. Modified: head/bin/test/test.c Modified: head/bin/test/test.c == --- head/bin/test/test.cSun Dec 1 16:02:22 2013(r258798) +++ head/bin/test/test.cSun Dec 1 17:00:57 2013(r258799) @@ -67,9 +67,18 @@ error(const char *msg, ...) operand ::= */ +enum token_types { + UNOP = 0x100, + BINOP = 0x200, + BUNOP = 0x300, + BBINOP = 0x400, + PAREN = 0x500 +}; + enum token { EOI, - FILRD, + OPERAND, + FILRD = UNOP + 1, FILWR, FILEX, FILEXIST, @@ -85,13 +94,13 @@ enum token { FILSUID, FILSGID, FILSTCK, - FILNT, - FILOT, - FILEQ, - FILUID, - FILGID, STREZ, STRNZ, + FILUID, + FILGID, + FILNT = BINOP + 1, + FILOT, + FILEQ, STREQ, STRNE, STRLT, @@ -102,70 +111,62 @@ enum token { INTGT, INTLE, INTLT, - UNOT, - BAND, + UNOT = BUNOP + 1, + BAND = BBINOP + 1, BOR, - LPAREN, - RPAREN, - OPERAND + LPAREN = PAREN + 1, + RPAREN }; -enum token_types { - UNOP, - BINOP, - BUNOP, - BBINOP, - PAREN -}; +#define TOKEN_TYPE(token) ((token) & 0xff00) static struct t_op { char op_text[4]; - short op_num, op_type; + short op_num; } const ops [] = { - {"-r", FILRD, UNOP}, - {"-w", FILWR, UNOP}, - {"-x", FILEX, UNOP}, - {"-e", FILEXIST,UNOP}, - {"-f", FILREG, UNOP}, - {"-d", FILDIR, UNOP}, - {"-c", FILCDEV,UNOP}, - {"-b", FILBDEV,UNOP}, - {"-p", FILFIFO,UNOP}, - {"-u", FILSUID,UNOP}, - {"-g", FILSGID,UNOP}, - {"-k", FILSTCK,UNOP}, - {"-s", FILGZ, UNOP}, - {"-t", FILTT, UNOP}, - {"-z", STREZ, UNOP}, - {"-n", STRNZ, UNOP}, - {"-h", FILSYM, UNOP}, /* for backwards compat */ - {"-O", FILUID, UNOP}, - {"-G", FILGID, UNOP}, - {"-L", FILSYM, UNOP}, - {"-S", FILSOCK,UNOP}, - {"=", STREQ, BINOP}, - {"==", STREQ, BINOP}, - {"!=", STRNE, BINOP}, - {"<", STRLT, BINOP}, - {">", STRGT, BINOP}, - {"-eq", INTEQ, BINOP}, - {"-ne", INTNE, BINOP}, - {"-ge", INTGE, BINOP}, - {"-gt", INTGT, BINOP}, - {"-le", INTLE, BINOP}, - {"-lt", INTLT, BINOP}, - {"-nt", FILNT, BINOP}, - {"-ot", FILOT, BINOP}, - {"-ef", FILEQ, BINOP}, - {"!", UNOT, BUNOP}, - {"-a", BAND, BBINOP}, - {"-o", BOR,BBINOP}, - {"(", LPAREN, PAREN}, - {")", RPAREN, PAREN}, - {"",0, 0} + {"-r", FILRD}, + {"-w", FILWR}, + {"-x", FILEX}, + {"-e", FILEXIST}, + {"-f", FILREG}, + {"-d", FILDIR}, + {"-c", FILCDEV}, + {"-b", FILBDEV}, + {"-p", FILFIFO}, + {"-u", FILSUID}, + {"-g", FILSGID}, + {"-k", FILSTCK}, + {"-s", FILGZ}, + {"-t", FILTT}, + {"-z", STREZ}, + {"-n", STRNZ}, + {"-h", FILSYM},/* for backwards compat */ + {"-O", FILUID}, + {"-G", FILGID}, + {"-L", FILSYM}, + {"-S", FILSOCK}, + {"=", STREQ}, + {"==", STREQ}, + {"!=", STRNE}, + {"<", STRLT}, + {">", STRGT}, + {"-eq", INTEQ}, + {"-ne", INTNE}, + {"-ge", INTGE}, + {"-gt", INTGT}, + {"-le", INTLE}, + {"-lt", INTLT}, + {"-nt", FILNT}, + {"-ot", FILOT}, + {"-ef", FILEQ}, + {"!", UNOT}, + {"-a", BAND}, + {"-o", BOR}, + {"(", LPAREN}, + {")", RPAREN}, + {"",0} }; -static struct t_op const *t_wp_op; static int nargc; static char **t_wp; static int parenlevel; @@ -295,10 +296,10 @@ primary(enum token n) parenlevel--; return res; } - if (t_wp_op && t_wp_op->op_type == UNOP) { + if (TOKEN_TYPE(n) == UNOP) { /* unary expression */ if (--nargc == 0) - syntax(t_wp_op->op_text, "argument expected"); + syntax(NULL, "argument expected"); /* impossible */ switch (n) { case STREZ: return strlen(*++t_wp) == 0; @@ -311,10 +312,8 @@ primary(enum token n) } } - if (t_lex(nargc > 0 ? t_wp[1] : NULL), t_wp_op && t_wp_op->op_type == - BINOP) { + if (TOKEN_TYPE(t_lex(nargc > 0 ? t_wp[1] : NULL)) == BINOP)
svn commit: r258798 - in head/sys: conf dev/uart
Author: nwhitehorn Date: Sun Dec 1 16:02:22 2013 New Revision: 258798 URL: http://svnweb.freebsd.org/changeset/base/258798 Log: Make uart_cpu_powerpc work on both FDT and OFW systems. This is the last remaining modification required to build kernels that work with both on PowerPC. Modified: head/sys/conf/files.powerpc head/sys/dev/uart/uart_cpu_powerpc.c Modified: head/sys/conf/files.powerpc == --- head/sys/conf/files.powerpc Sun Dec 1 15:24:35 2013(r258797) +++ head/sys/conf/files.powerpc Sun Dec 1 16:02:22 2013(r258798) @@ -63,8 +63,7 @@ dev/syscons/scterm-teken.coptionalsc dev/syscons/scvtb.coptionalsc dev/tsec/if_tsec.c optionaltsec dev/tsec/if_tsec_fdt.c optionaltsec fdt -dev/uart/uart_cpu_fdt.coptionaluart fdt -dev/uart/uart_cpu_powerpc.coptionaluart aim +dev/uart/uart_cpu_powerpc.coptionaluart dev/usb/controller/ehci_fsl.c optionalehci mpc85xx kern/kern_clocksource.cstandard kern/subr_dummy_vdso_tc.c standard Modified: head/sys/dev/uart/uart_cpu_powerpc.c == --- head/sys/dev/uart/uart_cpu_powerpc.cSun Dec 1 15:24:35 2013 (r258797) +++ head/sys/dev/uart/uart_cpu_powerpc.cSun Dec 1 16:02:22 2013 (r258798) @@ -61,42 +61,96 @@ ofw_get_uart_console(phandle_t opts, pha input = OF_finddevice(buf); if (input == -1) return (ENXIO); - if (OF_getprop(opts, outputdev, buf, sizeof(buf)) == -1) - return (ENXIO); - if (OF_finddevice(buf) != input) - return (ENXIO); + + if (outputdev != NULL) { + if (OF_getprop(opts, outputdev, buf, sizeof(buf)) == -1) + return (ENXIO); + if (OF_finddevice(buf) != input) + return (ENXIO); + } *result = input; return (0); } +static int +ofw_get_console_phandle_path(phandle_t node, phandle_t *result, +const char *prop) +{ + union { + char buf[64]; + phandle_t ref; + } field; + phandle_t output; + ssize_t size; + + size = OF_getproplen(node, prop); + if (size == -1) + return (ENXIO); + OF_getprop(node, prop, &field, sizeof(field)); + + /* This property might be a phandle or might be a path. Hooray. */ + + output = -1; + if (field.buf[size - 1] == 0) + output = OF_finddevice(field.buf); + if (output == -1 && size == 4) + output = OF_xref_phandle(field.ref); + + if (output != -1) { + *result = output; + return (0); + } + + return (ENXIO); +} + int uart_cpu_getdev(int devtype, struct uart_devinfo *di) { char buf[64]; struct uart_class *class; - phandle_t input, opts; + phandle_t input, opts, chosen; int error; class = &uart_z8530_class; if (class == NULL) return (ENXIO); - if ((opts = OF_finddevice("/options")) == -1) - return (ENXIO); + opts = OF_finddevice("/options"); + chosen = OF_finddevice("/chosen"); switch (devtype) { case UART_DEV_CONSOLE: - if (ofw_get_uart_console(opts, &input, "input-device", - "output-device")) { - /* -* At least some G5 Xserves require that we -* probe input-device-1 as well -*/ - - if (ofw_get_uart_console(opts, &input, "input-device-1", - "output-device-1")) - return (ENXIO); + error = ENXIO; + if (chosen != -1 && error != 0) + error = ofw_get_uart_console(chosen, &input, + "stdout-path", NULL); + if (chosen != -1 && error != 0) + error = ofw_get_uart_console(chosen, &input, + "linux,stdout-path", NULL); + if (chosen != -1 && error != 0) + error = ofw_get_console_phandle_path(chosen, &input, + "stdout"); + if (chosen != -1 && error != 0) + error = ofw_get_uart_console(chosen, &input, + "stdin-path", NULL); + if (chosen != -1 && error != 0) + error = ofw_get_console_phandle_path(chosen, &input, + "stdin"); + if (opts != -1 && error != 0) + error = ofw_get_uart_console(opts, &input, + "input-device", "output-device"); +
svn commit: r258797 - head/release
Author: hrs Date: Sun Dec 1 15:24:35 2013 New Revision: 258797 URL: http://svnweb.freebsd.org/changeset/base/258797 Log: Use standard CLEANFILES/CLEANDIRS and clean target in bsd.obj.mk. Modified: head/release/Makefile Modified: head/release/Makefile == --- head/release/Makefile Sun Dec 1 15:06:30 2013(r258796) +++ head/release/Makefile Sun Dec 1 15:24:35 2013(r258797) @@ -91,7 +91,12 @@ IMAGES+= memstick.img IMAGES+= mini-memstick.img .endif +CLEANFILES=packagesystem *.txz MANIFEST system ${IMAGES} +CLEANDIRS= dist ftp release bootonly dvd +beforeclean: + chflags -R noschg . .include +clean: beforeclean base.txz: mkdir -p ${DISTDIR} @@ -233,15 +238,6 @@ release: ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} obj ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} ${RELEASE_TARGETS} -clean: - chflags -R noschg . - rm -rf dist ftp - rm -f packagesystem - rm -f *.txz MANIFEST - rm -f system - rm -rf release bootonly dvd - rm -f ${IMAGES} - install: .if defined(DESTDIR) && !empty(DESTDIR) mkdir -p ${DESTDIR} ___ 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: r258796 - head/release
Author: hrs Date: Sun Dec 1 15:06:30 2013 New Revision: 258796 URL: http://svnweb.freebsd.org/changeset/base/258796 Log: - Prevent TARGET and TARGET_ARCH from being defined as empty when TARGET="" and/or TARGET_ARCH="" is specified. - Remove extra (). Modified: head/release/Makefile Modified: head/release/Makefile == --- head/release/Makefile Sun Dec 1 14:03:03 2013(r258795) +++ head/release/Makefile Sun Dec 1 15:06:30 2013(r258796) @@ -29,11 +29,15 @@ PORTSDIR?= /usr/ports DOCDIR?= /usr/doc RELNOTES_LANG?= en_US.ISO8859-1 -TARGET?= ${MACHINE} +.if !defined(TARGET) || empty(TARGET) +TARGET=${MACHINE} +.endif +.if !defined(TARGET_ARCH) || empty(TARGET_ARCH) .if ${TARGET} == ${MACHINE} -TARGET_ARCH?= ${MACHINE_ARCH} +TARGET_ARCH= ${MACHINE_ARCH} .else -TARGET_ARCH?= ${TARGET} +TARGET_ARCH= ${TARGET} +.endif .endif IMAKE= ${MAKE} TARGET_ARCH=${TARGET_ARCH} TARGET=${TARGET} DISTDIR= dist @@ -75,7 +79,7 @@ IMAGES= .if exists(${.CURDIR}/${TARGET}/mkisoimages.sh) RELEASE_TARGETS+= cdrom IMAGES+= disc1.iso bootonly.iso -. if(!defined(NODVD)) +. if !defined(NODVD) RELEASE_TARGETS+= dvdrom IMAGES+= dvd1.iso . 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"
Re: svn commit: r258779 - in head/sys/dev: cesa drm drm2/i915 drm2/radeon hatm
On 1 Dec 2013, at 07:59, Konstantin Belousov wrote: > Revert the drm2/i915 changes from this and following commits now. > You did not contacted obvious maintainer of the file. > > The changes are pointless and make the import of upstream changes > harder; for i915_reg.h, much harder. > > Not to mention that the whole churn is not needed if the > -fno-strict-overflow flag is used. If supporting code that is obviously wrong (as in this case, as the compiler will happily tell you if you don't explicitly silence warnings) is the justification for wanting -fno-strict-overflow, then this is a very flimsy justification. David ___ 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: r258794 - head/lib/libc/sys
Author: jilles Date: Sun Dec 1 12:24:57 2013 New Revision: 258794 URL: http://svnweb.freebsd.org/changeset/base/258794 Log: chmod(2): Document S_ISVTX following SUSv3/SUSv4. S_ISTXT is non-standard. While here, also update fchmodat() standards entry to POSIX.1-2008. Modified: head/lib/libc/sys/chmod.2 Modified: head/lib/libc/sys/chmod.2 == --- head/lib/libc/sys/chmod.2 Sun Dec 1 11:59:37 2013(r258793) +++ head/lib/libc/sys/chmod.2 Sun Dec 1 12:24:57 2013(r258794) @@ -28,7 +28,7 @@ .\" @(#)chmod.28.1 (Berkeley) 6/4/93 .\" $FreeBSD$ .\" -.Dd April 10, 2008 +.Dd December 1, 2013 .Dt CHMOD 2 .Os .Sh NAME @@ -139,21 +139,24 @@ defined in #define S_ISUID 0004000/* set user id on execution */ #define S_ISGID 0002000/* set group id on execution */ -#ifndef __BSD_VISIBLE -#define S_ISTXT 0001000/* sticky bit */ -#endif +#define S_ISVTX 0001000/* sticky bit */ .Ed .Pp +The non-standard +.Dv S_ISTXT +is a synonym for +.Dv S_ISVTX . +.Pp The .Fx VM system totally ignores the sticky bit -.Pq Dv ISTXT +.Pq Dv S_ISVTX for executables. On UFS-based file systems (FFS, LFS) the sticky bit may only be set upon directories. .Pp If mode -.Dv ISTXT +.Dv S_ISVTX (the `sticky bit') is set on a directory, an unprivileged user may not delete or rename files of other users in that directory. @@ -296,12 +299,15 @@ The system call is expected to conform to .St -p1003.1-90 , except for the return of -.Er EFTYPE -and the use of -.Dv S_ISTXT . +.Er EFTYPE . +The +.Dv S_ISVTX +bit on directories is expected to conform to +.St -susv3 . The .Fn fchmodat -system call follows The Open Group Extended API Set 2 specification. +system call is expected to conform to +.St -p1003.1-2008 . .Sh HISTORY The .Fn chmod ___ 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: r258793 - head/lib/libc/sys
Author: jilles Date: Sun Dec 1 11:59:37 2013 New Revision: 258793 URL: http://svnweb.freebsd.org/changeset/base/258793 Log: waitid(2): Do not tell userland programmers to include . Userland should get these definitions by including . Modified: head/lib/libc/sys/wait.2 Modified: head/lib/libc/sys/wait.2 == --- head/lib/libc/sys/wait.2Sun Dec 1 09:52:38 2013(r258792) +++ head/lib/libc/sys/wait.2Sun Dec 1 11:59:37 2013(r258793) @@ -48,7 +48,7 @@ .Fn wait "int *status" .Ft pid_t .Fn waitpid "pid_t wpid" "int *status" "int options" -.In sys/signal.h +.In signal.h .Ft int .Fn waitid "idtype_t idtype" "id_t id" "siginfo_t *info" "int options" .In sys/time.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: r258792 - head/sbin
Author: pjd Date: Sun Dec 1 09:52:38 2013 New Revision: 258792 URL: http://svnweb.freebsd.org/changeset/base/258792 Log: Remove trailing backslash. Modified: head/sbin/Makefile Modified: head/sbin/Makefile == --- head/sbin/Makefile Sun Dec 1 09:41:06 2013(r258791) +++ head/sbin/Makefile Sun Dec 1 09:52:38 2013(r258792) @@ -72,7 +72,7 @@ SUBDIR=adjkerntz \ swapon \ sysctl \ tunefs \ - umount \ + umount .if ${MK_ATM} != "no" SUBDIR+= atm ___ 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: r258791 - in head: . lib lib/libpjdlog share/mk
Author: pjd Date: Sun Dec 1 09:41:06 2013 New Revision: 258791 URL: http://svnweb.freebsd.org/changeset/base/258791 Log: Move my simple logging API to a separate library. It is now already used by hastctl(8), hastd(8) and auditdistd(8) and will soon be also used by casperd(8) and its services. There is no documentation and pjdlog.h header file is not installed in /usr/include/ to keep it private. Unfortunately we don't have /lib/private/ at this point, only /usr/lib/private/, so the library is installed in /lib/. Sponsored by: The FreeBSD Foundation Added: head/lib/libpjdlog/ head/lib/libpjdlog/Makefile (contents, props changed) head/lib/libpjdlog/pjdlog.c (contents, props changed) head/lib/libpjdlog/pjdlog.h (contents, props changed) Modified: head/Makefile.inc1 head/lib/Makefile head/share/mk/bsd.libnames.mk Modified: head/Makefile.inc1 == --- head/Makefile.inc1 Sun Dec 1 08:13:10 2013(r258790) +++ head/Makefile.inc1 Sun Dec 1 09:41:06 2013(r258791) @@ -1505,7 +1505,7 @@ _prebuild_libs= ${_kerberos5_lib_libasn1 lib/libradius lib/libsbuf lib/libtacplus \ ${_cddl_lib_libumem} ${_cddl_lib_libnvpair} \ ${_cddl_lib_libzfs_core} \ - lib/libutil ${_lib_libypclnt} lib/libz lib/msun \ + lib/libutil lib/libpjdlog ${_lib_libypclnt} lib/libz lib/msun \ ${_secure_lib_libcrypto} ${_lib_libldns} \ ${_secure_lib_libssh} ${_secure_lib_libssl} @@ -1521,6 +1521,8 @@ _lib_libthr= lib/libthr _ofed_lib= contrib/ofed/usr.lib/ .endif +lib/libpjdlog__L: lib/libutil__L + _generic_libs= ${_cddl_lib} gnu/lib ${_kerberos5_lib} lib ${_secure_lib} usr.bin/lex/lib ${_ofed_lib} .for _DIR in ${LOCAL_LIB_DIRS} .if exists(${.CURDIR}/${_DIR}/Makefile) Modified: head/lib/Makefile == --- head/lib/Makefile Sun Dec 1 08:13:10 2013(r258790) +++ head/lib/Makefile Sun Dec 1 09:41:06 2013(r258791) @@ -35,6 +35,8 @@ SUBDIR_ORDERED= ${_csu} \ libc_nonshared \ libbsm \ libauditd \ + libutil \ + libpjdlog \ libcompiler_rt \ libcrypt \ libelf \ @@ -49,7 +51,6 @@ SUBDIR_ORDERED= ${_csu} \ librpcsvc \ libsbuf \ libtacplus \ - libutil \ ${_libypclnt} \ ${_libcxxrt} \ ${_libcplusplus} Added: head/lib/libpjdlog/Makefile == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/libpjdlog/Makefile Sun Dec 1 09:41:06 2013(r258791) @@ -0,0 +1,21 @@ +# +# $FreeBSD$ +# + +SHLIBDIR?= /lib + +.include + +LIB= pjdlog +SRCS= pjdlog.c + +SHLIB_MAJOR= 0 + +CFLAGS+=-I${.CURDIR} + +DPADD= ${LIBUTIL} +LDADD= -lutil + +WARNS?=6 + +.include Added: head/lib/libpjdlog/pjdlog.c == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/libpjdlog/pjdlog.c Sun Dec 1 09:41:06 2013(r258791) @@ -0,0 +1,809 @@ +/*- + * Copyright (c) 2009-2010 The FreeBSD Foundation + * Copyright (c) 2011 Pawel Jakub Dawidek + * All rights reserved. + * + * This software was developed by Pawel Jakub Dawidek under sponsorship from + * the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + *notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include + +#include +#include +
svn commit: r258790 - head/sys/dev/iscsi
Author: trasz Date: Sun Dec 1 08:13:10 2013 New Revision: 258790 URL: http://svnweb.freebsd.org/changeset/base/258790 Log: Fix hang on reboot with active iSCSI connections. MFC after:3 days Sponsored by: The FreeBSD Foundation Modified: head/sys/dev/iscsi/iscsi.c Modified: head/sys/dev/iscsi/iscsi.c == --- head/sys/dev/iscsi/iscsi.c Sun Dec 1 07:34:21 2013(r258789) +++ head/sys/dev/iscsi/iscsi.c Sun Dec 1 08:13:10 2013(r258790) @@ -2110,10 +2110,12 @@ iscsi_load(void) sc->sc_cdev->si_drv1 = sc; /* -* XXX: For some reason this doesn't do its job; active sessions still hang out there -* after final sync, making the reboot effectively hang. +* Note that this needs to get run before dashutdown(). Otherwise, +* when rebooting with iSCSI session with outstanding requests, +* but disconnected, dashutdown() will hang on cam_periph_runccb(). */ - sc->sc_shutdown_eh = EVENTHANDLER_REGISTER(shutdown_post_sync, iscsi_shutdown, sc, SHUTDOWN_PRI_DEFAULT); + sc->sc_shutdown_eh = EVENTHANDLER_REGISTER(shutdown_post_sync, + iscsi_shutdown, sc, SHUTDOWN_PRI_FIRST); 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: r258779 - in head/sys/dev: cesa drm drm2/i915 drm2/radeon hatm
On Sat, Nov 30, 2013 at 10:16:38PM +, Eitan Adler wrote: > Author: eadler > Date: Sat Nov 30 22:16:37 2013 > New Revision: 258779 > URL: http://svnweb.freebsd.org/changeset/base/258779 > > Log: > Similar to the (1 << 31) case it is not defined to do (2 << 30). > > Modified: ... > head/sys/dev/drm2/i915/i915_reg.h Revert the drm2/i915 changes from this and following commits now. You did not contacted obvious maintainer of the file. The changes are pointless and make the import of upstream changes harder; for i915_reg.h, much harder. Not to mention that the whole churn is not needed if the -fno-strict-overflow flag is used. pgpw_d6f2JqmM.pgp Description: PGP signature