summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Do not require radix write lock to be held while dumping route tablemelifaro2012-04-221-2/+2
| | | | | | | | | | via sysctl(4) interface. This permits router not to stop forwarding packets while route table is being written to user-supplied buffer. Reported by: Pawel Tyll <ptyll@nitronet.pl> Approved by: kib(mentor) MFC after: 1 week
* Import jemalloc a8f8d7540d66ddee7337db80c92890916e1063ca (dev branch,jasone2012-04-2215-152/+100
| | | | | | | | | prior to 3.0.0 release). This fixes several bugs related to memory initialization. Mangle __jemalloc_a0{malloc,calloc,free}() just like all the other library-internal symbols in jemalloc, and adjust the tls allocation code in libc to use the mangled names.
* The .Fx macro needs the version number be in its own word separated bydelphij2012-04-221-1/+1
| | | | a space. This change have no visible effect for rendering.
* - Use quote when tab is used;delphij2012-04-221-2/+3
| | | | - Follow the same macros used in device driver manual pages.
* - Correct a typo which prevents 'lzjb' be displayed;delphij2012-04-221-7/+7
| | | | - Use quotes when tab is used.
* Use 10.0 instead of 10 for FreeBSD version number. The latter undefined.delphij2012-04-221-2/+2
|
* MFi386: revisions 234074 and 234105nyan2012-04-221-0/+7
| | | | - Adding the BSP as an interrupt target directly in cpu_startup().
* Interrupts must be disabled while handling a partial cache line flush,marius2012-04-221-20/+27
| | | | | | | | | | as otherwise the interrupt handling code may modify data in the non-DMA part of the cache line while we have it stashed away in the temporary stack buffer, then we end up restoring a stale value. PR: 160431 Submitted by: Ian Lepore MFC after: 1 week
* - Add support for MCI1 revision 2xx controllers and a work-around for theirmarius2012-04-222-7/+51
| | | | | | "Data Write Operation and number of bytes" erratum. - Use DEVMETHOD_END. - Use NULL instead of 0 for pointers.
* When MAP_STACK mapping is created, the map entry is created only tokib2012-04-211-2/+4
| | | | | | | | | | | | cover the initial stack size. For MCL_WIREFUTURE maps, the subsequent call to vm_map_wire() to wire the whole stack region fails due to VM_MAP_WIRE_NOHOLES flag. Use the VM_MAP_WIRE_HOLESOK to only wire mapped part of the stack. Reported and tested by: Sushanth Rai <sushanth_rai yahoo com> Reviewed by: alc MFC after: 1 week
* As documented in vm_page.h, updates to the vm_page's flags no longeralc2012-04-211-7/+4
| | | | | | require the page queues lock. MFC after: 1 week
* Fix partially merged patch from my external compiler tree in r234546.imp2012-04-211-0/+4
| | | | Define NM except when we're in strict POSIX mode.
* Replace a bare use of nm with ${NM} for easier cross compilation inimp2012-04-211-2/+2
| | | | environments where nm is spelled differently.
* Import jemalloc 606f1fdc3cdbc700717133ca56685313caea24bb (dev branch,jasone2012-04-2125-158/+262
| | | | prior to 3.0.0 release), and mangle internal symbols.
* Organize some members of ucontext_t in the same order they are in thenwhitehorn2012-04-211-3/+3
| | | | | | trap frame. These are usually not used, and so this changes very little. MFC after: 5 days
* Add support for the SIMCom SIM5218, tested by me.kevlo2012-04-212-0/+2
|
* Fix the following clang warning in dpt(4):dim2012-04-211-1/+1
| | | | | | | | | | | sys/dev/dpt/dpt_scsi.c:612:18: error: implicit truncation from 'int' to bitfield changes value from -2 to 2 [-Werror,-Wconstant-conversion] dpt->cache_type = DPT_CACHE_WRITEBACK; ^ ~~~~~~~~~~~~~~~~~~~ by defining DPT_CACHE_WRITEBACK as 2, since dpt_softc::cache_type is an unsigned bitfield. No binary change. MFC after: 1 week
* Fix check used by stream reset related events.tuexen2012-04-211-3/+3
| | | | MFC after: 3 days
* Minor mdoc fixes.joel2012-04-211-6/+6
|
* Fix use-after-free introduced in r234036.trasz2012-04-211-1/+5
| | | | | Reviewed by: mckusick Tested by: pho
* As noted by Peter Jeremy, r234528 only partially fixed the infinitedas2012-04-211-1/+1
| | | | | | | loop bug introduced in r187302. This completes the fix. PR: 167039 MFC after: 3 days
* If the size passed to {,v}s{w,n}printf is larger than INT_MAX+1das2012-04-215-6/+29
| | | | | | | | | | | | | | | | | (i.e., the return value would overflow), set errno to EOVERFLOW and return an error. This improves the chances that buggy applications -- for instance, ones that pass in a negative integer as the size due to a bogus calculation -- will fail in safe ways. Returning an error in these situations is specified by POSIX, but POSIX appears to have an off-by-one error that isn't duplicated in this change. Previously, some of these functions would silently cap the size at INT_MAX+1, and others would exit with an error after writing more than INT_MAX characters. PR: 39256 MFC after: 2 weeks
* - Fix the claim that the output is always null-terminated. This isn'tdas2012-04-211-17/+29
| | | | | | | | | | | true if the size is zero. - Fix a claim that sprintf() is the same as snprintf() with an infinite size. It's equivalent to snprintf() with a size of INT_MAX + 1. - Document the return values in the return values section. - Document the possible errno value of EOVERFLOW. MFC after: 2 weeks
* Ensure that the {,v}swprintf functions always null-terminate thedas2012-04-211-0/+3
| | | | output string, even if an encoding error or malloc failure occurs.
* Fix a bug introduced in r187302 that was causing fputws() to enter andas2012-04-211-1/+1
| | | | | | | | | infinite loop pretty much unconditionally. It's remarkable that the patch that introduced the bug was never tested, but even more remarkable that nobody noticed for over two years. PR: 167039 MFC after: 3 days
* Allow for MIPS devices to have a specific probe/attach order.adrian2012-04-211-1/+4
| | | | | | | | The default priority is now '1000' rather than '0'. This may cause some unforseen regressions. Submitted by: Stefan Bethke <stb@lassitu.de> Reviewed by: imp
* o Fixes:marius2012-04-216-34/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | - When switching to 4-bit operation, send a SET_CLR_CARD_DETECT command to disconnect the card-detect pull-up resistor from the DAT3 line before sending the SET_BUS_WIDTH command. - Add the missing "reserved" zero entry to the mantissa table used to decode various CSD fields. This was causing SD cards to report that they could run at 30 MHz instead of the maximum 25 MHz mandated in the spec. o Enhancements: - At the MMC layer, format various info from the CID into a string that uniquely identifies the card instance (manufacturer number, serial number, product name and revision, etc). Export it as an instance variable. - At the MMCSD layer, display the formatted card ID string, and also report the clock speed of the hardware (not the card's max speed), and the number of bits and number of blocks per transfer. It comes out like this now: mmcsd0: 968MB <SD SD01G 8.0 SN 276886905 MFG 08/2008 by 3 SD> at mmc0 22.5MHz/4bit/128-block o Use DEVMETHOD_END. o Use NULL instead of 0 for pointers. PR: 156496 Submitted by: Ian Lepore MFC after: 1 week
* Make sure all pending operations have completed on the existing threadnwhitehorn2012-04-202-0/+2
| | | | | | before (potentially) migrating it to a different CPU. MFC after: 5 days
* Allow for a default GPIO pin "high", which is required for some boardsadrian2012-04-201-1/+9
| | | | | | which tie the USB device enable to a GPIO line. Submitted by: Stefan Bethke <stb@lassitu.de>
* .. oops.adrian2012-04-201-0/+1
|
* "Upgrade" the AR9285 code to support PCI/ART EEPROM on flash.adrian2012-04-203-8/+18
| | | | | I've just verified that this boots on an Atheros AP91. I haven't verified it with traffic though, so YMMV.
* Fix the following compilation warnings in sys/contrib/rdma/rdma_cma.c:dim2012-04-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sys/contrib/rdma/rdma_cma.c:1259:8: error: case value not in enumerated type 'enum iw_cm_event_status' [-Werror,-Wswitch] case ECONNRESET: ^ @/sys/errno.h:118:20: note: expanded from macro 'ECONNRESET' #define ECONNRESET 54 /* Connection reset by peer */ ^ sys/contrib/rdma/rdma_cma.c:1263:8: error: case value not in enumerated type 'enum iw_cm_event_status' [-Werror,-Wswitch] case ETIMEDOUT: ^ @/sys/errno.h:124:19: note: expanded from macro 'ETIMEDOUT' #define ETIMEDOUT 60 /* Operation timed out */ ^ sys/contrib/rdma/rdma_cma.c:1260:8: error: case value not in enumerated type 'enum iw_cm_event_status' [-Werror,-Wswitch] case ECONNREFUSED: ^ @/sys/errno.h:125:22: note: expanded from macro 'ECONNREFUSED' #define ECONNREFUSED 61 /* Connection refused */ ^ This is because the switch uses iw_cm_event::status, which is an enum iw_cm_event_status, while ECONNRESET, ETIMEDOUT and ECONNREFUSED are just plain defines from errno.h. It looks like there is only one use of any of the enumeration values of iw_cm_event_status, in: sys/contrib/rdma/rdma_iwcm.c: if (iw_event->status == IW_CM_EVENT_STATUS_ACCEPTED) { So messing around with the enum definitions to fix the warning seems too disruptive; the simplest fix is to cast the argument of the switch to int. Reviewed by: kmacy MFC after: 1 week
* Fix the following compilation warnings in nxge(4):dim2012-04-201-1/+1
| | | | | | | | | | | | | | | | | | | sys/dev/nxge/if_nxge.c:1276:11: error: case value not in enumerated type 'xge_hal_event_e' (aka 'enum xge_hal_event_e') [-Werror,-Wswitch] case XGE_LL_EVENT_TRY_XMIT_AGAIN: ^ sys/dev/nxge/if_nxge.c:1289:11: error: case value not in enumerated type 'xge_hal_event_e' (aka 'enum xge_hal_event_e') [-Werror,-Wswitch] case XGE_LL_EVENT_DEVICE_RESETTING: ^ This is because the switch uses xge_queue_item_t::event_type, which is an enum xge_hal_event_e, while the XGE_LL_EVENT_xx values are of the enum xge_event_e. Since messing around with the enum definitions is too disruptive, the simplest fix is to cast the argument of the switch to int. Reviewed by: gnn MFC after: 1 week
* Enable DTrace hooks in GENERIC.brooks2012-04-202-3/+7
| | | | | | | Reviewed by: gnn Approved by: core (jhb, imp) Requested by: a cast of thousands MFC after: 3 days
* Replace homegrown list implementation in sys/dev/asr/asr.c withdim2012-04-201-11/+11
| | | | | | | | STAILQ(). While here, fix another clang warning about a switch which tests an enum type for a regular integer value. Submitted by: jhb MFC after: 1 week
* After r217375, some startup objects under lib/csu are built in a specialdim2012-04-207-21/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | way: first they are compiled to assembly, then some sed'ing is done on the assembly, and lastly the assembly is compiled to an object file. This last step is done using ${CC}, and not ${AS}, because when the compiler is clang, it outputs directives that are too advanced for our old gas. So we use clang's integrated assembler instead. (When the compiler is gcc, it just calls gas, and nothing is different, except one extra fork.) However, in the .s to .o rules in lib/csu/$ARCH/Makefile, I still passed CFLAGS to the compiler, instead of ACFLAGS, which are specifically for compiling .s files. In case you are using '-g' for debug info anywhere in your CFLAGS, it causes the .s files to already contain debug information in the assembly itself. In the next step, the .s files are also compiled using '-g', and if the compiler is clang, it complains: "error: input can't have .file dwarf directives when -g is used to generate dwarf debug info for assembly code". Fix this by using ${ACFLAGS} for compiling the .s files instead. Reported by: jasone MFC after: 1 week
* The amr(4) firmware contains a rather dubious "feature" where itjhb2012-04-201-14/+31
| | | | | | | | | | | | | | | | | assumes for small buffers (< 64k) that the OS driver is actually using a buffer rounded up to the next power of 2. It also assumes that the buffer is at least 4k in size. Furthermore, there is at least one known instance of megarc sending a request with a 12k buffer where the firmware writes out a 24k-ish reply. To workaround the data corruption triggered by this "feature", ensure that buffers for user commands use a minimum size of 32k, and that buffers between 32k and 64k use a 64k buffer. PR: kern/155658 Submitted by: Andreas Longwitz longwitz incore de Reviewed by: scottl MFC after: 1 week
* Include the associated wait channel message for context switch ktracejhb2012-04-207-22/+44
| | | | | | | records. kdump supports both the old and new messages. Submitted by: Andrey Zonov andrey zonov org MFC after: 1 week
* Build a 32-bit EFI loader on amd64. This to match the rest of themarcel2012-04-202-2/+16
| | | | | | | | | code that is used to construct a loader (e.g. libstand, ficl, etc). There is such a thing as a 64-bit EFI application, but it's not as standard as 32-bit is. Let's make the 32-bit functional (as in we can load and actualy boot a kernel) before solving the 64-bit loader problem.
* Fix some compile warnings.hselasky2012-04-206-30/+29
| | | | MFC after: 1 week
* The value of flags matching VNOVAL can't be supported. Return EOPNOTSUPPjh2012-04-201-0/+4
| | | | | | | | from setfflags() in this case. This fixes the return value of chflags(path, -1). Discussed with: bde MFC after: 2 weeks
* Move the interface media check to a taskqueue, some interfaces (usb) sleepthompsa2012-04-202-21/+44
| | | | during SIOCGIFMEDIA and we were holding locks.
* Add linkstate to bridge(4), set the link to up when at least one underlyingthompsa2012-04-204-35/+60
| | | | | | | | | interface is up, otherwise the link is down. This, among other things, allows carp to work on a bridge. Prodded by: glebius Tested by: Alexander Lunev
* Introduce the matching PCI ath(4) fixup code from ar71xx_pci intoadrian2012-04-205-83/+275
| | | | | | | | | | | | | | | | | | | | | | | | | ar724x_pci.c. * Move out the code which populates the firmware into ar71xx_fixup.c * Shuffle around the ar724x fixup code to match what the ar71xx fixup code does. I've validated this on an AR7240 with AR9285 on-board NIC. It doesn't yet load, as the AR9285 EEPROM code needs to be made "flash aware." TODO: * Validate that I haven't broken AR71xx * Test AR9285/AR9287 onboard NICs, complete with EEPROM code changes * Port over the needed BAR hacks for AR7240, AR7241 and AR7242 from Linux OpenWRT. The current WAR has only been tested on the AR7240 and I'm not sure the way the BAR register is treated is "right". The "fixup" method here is right when setting the BAR for local access - ie, the BAR address is either 0xffff (AR7240) or 0x1000ffff (AR7241/AR7242), but the ath9k-fixup.c code (Linux OpenWRT) does this when setting the initial "fixup" BAR. It then restores the original BAR. I'll have to read the ar724x PCI bus glue to see what other special cases await.
* This update uses the MNT_VNODE_FOREACH_ACTIVE interface that loopsmckusick2012-04-205-6/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | over just the active vnodes associated with a mount point to replace MNT_VNODE_FOREACH_ALL in the vfs_msync, ffs_sync_lazy, and qsync routines. The vfs_msync routine is run every 30 seconds for every writably mounted filesystem. It ensures that any files mmap'ed from the filesystem with modified pages have those pages queued to be written back to the file from which they are mapped. The ffs_lazy_sync and qsync routines are run every 30 seconds for every writably mounted UFS/FFS filesystem. The ffs_lazy_sync routine ensures that any files that have been accessed in the previous 30 seconds have had their access times queued for updating in the filesystem. The qsync routine ensures that any files with modified quotas have those quotas queued to be written back to their associated quota file. In a system configured with 250,000 vnodes, less than 1000 are typically active at any point in time. Prior to this change all 250,000 vnodes would be locked and inspected twice every minute by the syncer. For UFS/FFS filesystems they would be locked and inspected six times every minute (twice by each of these three routines since each of these routines does its own pass over the vnodes associated with a mount point). With this change the syncer now locks and inspects only the tiny set of vnodes that are active. Reviewed by: kib Tested by: Peter Holm MFC after: 2 weeks
* This change creates a new list of active vnodes associated withmckusick2012-04-206-12/+203
| | | | | | | | | | | | | | | | | | | | a mount point. Active vnodes are those with a non-zero use or hold count, e.g., those vnodes that are not on the free list. Note that this list is in addition to the list of all the vnodes associated with a mount point. To avoid adding another set of linkage pointers to the vnode structure, the active list uses the existing linkage pointers used by the free list (previously named v_freelist, now renamed v_actfreelist). This update adds the MNT_VNODE_FOREACH_ACTIVE interface that loops over just the active vnodes associated with a mount point (typically less than 1% of the vnodes associated with the mount point). Reviewed by: kib Tested by: Peter Holm MFC after: 2 weeks
* Fix build.delphij2012-04-201-9/+5
|
* Do a better job at determining the username of the login session.ed2012-04-191-1/+23
| | | | | | | | | | | When multiple users share the same UID, the old code will simply pick an arbitrary username to attach to the utmpx entries. Make the code a bit more accurate by first checking whether getlogin() returns a username which corresponds to the uid of the calling process. If this fails, simply fall back to picking an arbitrary username. Reported by: saurik on GitHub MFC after: 2 weeks
* - Update the rest of struct ithd references.pluknet2012-04-191-14/+9
| | | | | | - net_ih and softclock_ih cookies have gone away. MFC after: 1 week
* Whitespace changes.tuexen2012-04-192-2/+2
| | | | MFC after: 3 days
OpenPOWER on IntegriCloud