aboutsummaryrefslogtreecommitdiff
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix a mismerge from p4 in that in_localaddr() is not available without INET.Bjoern A. Zeeb2011-04-301-1/+5
| | | | | | | | | Sponsored by: The FreeBSD Foundation Sponsored by: iXsystems MFC after: 4 days Notes: svn path=/head/; revision=221264
* Fix deduplicated zfs receiveMartin Matuska2011-04-302-58/+37
| | | | | | | | | | | | | (dmu_recv_stream builds incomplete guid_to_ds_map) Illumos-gate changeset: 13329:c48b8bf84ab7 MFC together with v28 Approved by: pjd Obtained from: Illumos (Bug #755) Notes: svn path=/head/; revision=221263
* Fis a problem with r221258 that mac is still needed in case for ient6 onlyBjoern A. Zeeb2011-04-301-1/+1
| | | | | | | | | | for mac_inet.c. Reported by: Luiz Otavio O Souza (lists.br gmail.com) MFC after: 4 days Notes: svn path=/head/; revision=221262
* Clarify the comment.Konstantin Belousov2011-04-302-3/+6
| | | | | | | MFC after: 1 week Notes: svn path=/head/; revision=221261
* After r221249 allow SCTP to be compiled in an IPv6 only environment as well.Bjoern A. Zeeb2011-04-301-15/+15
| | | | | | | | | Sponsored by: The FreeBSD Foundation Sponsored by: iXsystems MFC after: 10 days Notes: svn path=/head/; revision=221260
* An example configuration file for the Atheros PB92.Adrian Chadd2011-04-302-0/+165
| | | | | | | | | | TODO: * pcie doesn't yet work properly, I'm working on it. * if_arge doesn't work - it's likely the phy mask is wrong; again I'm working on it. Notes: svn path=/head/; revision=221259
* Add some more missing optional dependencies on inet6, not only inet,Bjoern A. Zeeb2011-04-301-4/+4
| | | | | | | | | | | | | to get the files for an IPv6 only kernel as well, remove extra inet6 option where not needed. Reviewed by: gnn Sponsored by: The FreeBSD Foundation Sponsored by: iXsystems MFC after: 4 days Notes: svn path=/head/; revision=221258
* The AR724x SoC's require the irq status line to be acked/cleared.Adrian Chadd2011-04-301-0/+15
| | | | | | | | | | This allows console IO to occur correctly once the kernel is in multi-user mode. Submitted by: Luiz Otavio O Souza Notes: svn path=/head/; revision=221257
* Call the DDR FIFO flush method when IP2 interrupts occur.Adrian Chadd2011-04-301-0/+3
| | | | Notes: svn path=/head/; revision=221256
* Flip off debugging for now.Adrian Chadd2011-04-301-1/+1
| | | | Notes: svn path=/head/; revision=221255
* Add some initial PCIe bridge support for the AR724x chipsets.Adrian Chadd2011-04-303-2/+636
| | | | | | | | | | | | | | | This is reported to work on the AR7240 based Ubiquiti Rocket M5 but I haven't tested it on that hardware. I also don't yet have it fully working on the AR7242 based development board here; probe/attach functions but the register space resource looks like the endian-ness is wrong (0x10000000 instead of 0x00001000).o Further digging will be required. Submitted by: Luiz Otavio O Souza Notes: svn path=/head/; revision=221254
* In preparation for the AR724x PCIe bus code, make the AR71xx PCI busAdrian Chadd2011-04-302-1/+2
| | | | | | | | | | | | | glue require 'device ar71xx_pci' . Users of the AR71xx board configs will now require this for functioning PCI: device pci device ar71xx_pci Notes: svn path=/head/; revision=221252
* Remove some leftover debug code.Michael Tuexen2011-04-301-2/+0
| | | | | | | MFC after: 1 week Notes: svn path=/head/; revision=221251
* Make the TCP code compile without INET. Sort #includes and add #ifdef INETs.Bjoern A. Zeeb2011-04-307-97/+278
| | | | | | | | | | | | | | Add some comments at #endifs given more nestedness. To make the compiler happy, some default initializations were added in accordance with the style on the files. Reviewed by: gnn Sponsored by: The FreeBSD Foundation Sponsored by: iXsystems MFC after: 4 days Notes: svn path=/head/; revision=221250
* Improve compilation of SCTP code without INET support.Michael Tuexen2011-04-3011-1331/+2144
| | | | | | | | | | | | | | | | | Some bugs where fixed while doing this: * ASCONF-ACK messages might use wrong port number when using IPv6. * Checking for additional addresses takes the correct address into account and also does not do more comparisons than necessary. This patch is based on one received from bz@ who was sponsored by The FreeBSD Foundation and iXsystems. MFC after: 1 week Notes: svn path=/head/; revision=221249
* Make the UDP code compile without INET. Expose udp_usrreq.c to IPv6 onlyBjoern A. Zeeb2011-04-303-10/+32
| | | | | | | | | | | | | as well compiling out most functions adding or extending #ifdef INET coverage. Reviewed by: gnn Sponsored by: The FreeBSD Foundation Sponsored by: iXsystems MFC after: 4 days Notes: svn path=/head/; revision=221248
* Make the PCB code compile without INET support by adding #ifdef INETsBjoern A. Zeeb2011-04-302-5/+30
| | | | | | | | | | | | and correcting few #includes. Reviewed by: gnn Sponsored by: The FreeBSD Foundation Sponsored by: iXsystems MFC after: 4 days Notes: svn path=/head/; revision=221247
* Add a missing DDR FIFO method for the ar71xx.Adrian Chadd2011-04-301-1/+7
| | | | Notes: svn path=/head/; revision=221240
* Add a new bus method, BUS_ADJUST_RESOURCE() that is intended to be aJohn Baldwin2011-04-293-0/+61
| | | | | | | | | | wrapper around rman_adjust_resource(). Include a generic implementation, bus_generic_adjust_resource() which passes the request up to the parent bus. There is currently no default implementation. A bus_adjust_resource() wrapper is provided for use in drivers. Notes: svn path=/head/; revision=221231
* Implement BIO_DELETE for vnode devices by simply overwriting the deletedDag-Erling Smørgrav2011-04-291-0/+42
| | | | | | | | | | | | | | | sectors with all-zeroes. The zeroes come from a static buffer; null(4) uses a dynamic buffer for the same purpose (for /dev/zero). It might be a good idea to have a static, shared, read-only all-zeroes page somewhere in the kernel that md(4), null(4) and any other code that needs zeroes could use. Reviewed by: kib MFC after: 3 weeks Notes: svn path=/head/; revision=221229
* Extend the rman(9) API to support altering an existing resource.John Baldwin2011-04-292-0/+161
| | | | | | | | | | | | | | | | | | | | | Specifically, these changes allow a resource to back a relocatable and resizable resource such as the I/O window decoders in PCI-PCI bridges. - rman_adjust_resource() can adjust the start and end address of an existing resource. It only succeeds if the newly requested address space is already free. It also supports shrinking a resource in which case the freed space will be marked unallocated in the rman. - rman_first_free_region() and rman_last_free_region() return the start and end addresses for the first or last unallocated region in an rman, respectively. This can be used to determine by how much the resource backing an rman must be adjusted to accomodate an allocation request that does not fit into the existing rman. While here, document the rm_start and rm_end fields in struct rman, rman_is_region_manager(), the bound argument to rman_reserve_resource_bound(), and rman_init_from_resource(). Notes: svn path=/head/; revision=221220
* Change rman_manage_region() to actually honor the rm_start and rm_endJohn Baldwin2011-04-298-9/+13
| | | | | | | | | | | | | constraints on the rman and reject attempts to manage a region that is out of range. - Fix various places that set rm_end incorrectly (to ~0 or ~0u instead of ~0ul). - To preserve existing behavior, change rman_init() to set rm_start and rm_end to allow managing the full range (0 to ~0ul) if they are not set by the caller when rman_init() is called. Notes: svn path=/head/; revision=221218
* Add the AH_SUPPORT_AR9130 option.John Baldwin2011-04-291-0/+1
| | | | Notes: svn path=/head/; revision=221215
* Detect VMware guest and set the TSC frequency as reported by the hypervisor.Jung-uk Kim2011-04-291-17/+101
| | | | | | | | | | VMware products virtualize TSC and it run at fixed frequency in so-called "apparent time". Although virtualized i8254 also runs in apparent time, TSC calibration always gives slightly off frequency because of the complicated timer emulation and lost-tick correction mechanism. Notes: svn path=/head/; revision=221214
* Cosmetic changes to fit 80 character screen width.Adrian Chadd2011-04-291-3/+3
| | | | Notes: svn path=/head/; revision=221210
* TCP reuses t_rxtshift to determine the backoff timer used for both theJohn Baldwin2011-04-294-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | persist state and the retransmit timer. However, the code that implements "bad retransmit recovery" only checks t_rxtshift to see if an ACK has been received in during the first retransmit timeout window. As a result, if ticks has wrapped over to a negative value and a socket is in the persist state, it can incorrectly treat an ACK from the remote peer as a "bad retransmit recovery" and restore saved values such as snd_ssthresh and snd_cwnd. However, if the socket has never had a retransmit timeout, then these saved values will be zero, so snd_ssthresh and snd_cwnd will be set to 0. If the socket is in fast recovery (this can be caused by excessive duplicate ACKs such as those fixed by 220794), then each ACK that arrives triggers either NewReno or SACK partial ACK handling which clamps snd_cwnd to be no larger than snd_ssthresh. In effect, the socket's send window is permamently stuck at 0 even though the remote peer is advertising a much larger window and pending data is only sent via TCP window probes (so one byte every few seconds). Fix this by adding a new TCP pcb flag (TF_PREVVALID) that indicates that the various snd_*_prev fields in the pcb are valid and only perform "bad retransmit recovery" if this flag is set in the pcb. The flag is set on the first retransmit timeout that occurs and is cleared on subsequent retransmit timeouts or when entering the persist state. Reviewed by: bz MFC after: 2 weeks Notes: svn path=/head/; revision=221209
* Fix build of this kernel config. The ath(4) bits need the 11n frame formatJohn Baldwin2011-04-291-1/+1
| | | | | | | | | even though ar5416 isn't enabled. Reviewed by: adrian Notes: svn path=/head/; revision=221207
* Remove some holdovers from the AR5212 origin of this code.Adrian Chadd2011-04-291-17/+2
| | | | | | | These aren't relevant here. Notes: svn path=/head/; revision=221206
* The build was broken by r221190 for 64bit arches like amd64.Rick Macklem2011-04-291-2/+3
| | | | | | | | | This patch fixes it. MFC after: 2 weeks Notes: svn path=/head/; revision=221205
* Make CAM_DEBUG_CDB also dump ATA commands in addition to SCSI.Alexander Motin2011-04-291-28/+29
| | | | Notes: svn path=/head/; revision=221201
* Add urtw(4)Kevin Lo2011-04-293-0/+5
| | | | Notes: svn path=/head/; revision=221200
* Guard against default ni_chanKevin Lo2011-04-291-5/+6
| | | | | | | | PR: kern/144642 Submitted by: Arthur Hartwig <a_hartwig at fastmaildot fm> Notes: svn path=/head/; revision=221199
* Tidy up the naming of the ip2 DDR flush routine, and add an inlineAdrian Chadd2011-04-291-1/+6
| | | | | | | accessor method (which is currently unused) in there. Notes: svn path=/head/; revision=221198
* Fix the new NFS client so that it handles the "nfs_args" valueRick Macklem2011-04-281-19/+64
| | | | | | | | | | | | | | | in mnt_optnew. This is needed so that the old mount(2) syscall works and that is needed so that amd(8) works. The code was basically just cribbed from sys/nfsclient/nfs_vfsops.c with minor changes. This patch is mainly to fix the new NFS client so that amd(8) works with it. Thanks go to Craig Rodrigues for helping with this. Tested by: Craig Rodrigues (for amd) MFC after: 2 weeks Notes: svn path=/head/; revision=221190
* Add a #define for driver portability to older OSJack F Vogel2011-04-281-0/+5
| | | | Notes: svn path=/head/; revision=221189
* Define "Hypervisor Present" bit. This bit is used by several hypervisors toJung-uk Kim2011-04-284-2/+4
| | | | | | | | | | identify CPUs running under emulation. Currently QEMU-KVM, Xen-HVM, VMware, and MS Hyper-V are known to set this bit. MFC after: 3 days Notes: svn path=/head/; revision=221188
* Small change to make backporting to stable/7,Jack F Vogel2011-04-281-1/+1
| | | | | | | thanks to Arnaud Lacombe for suggesting it. Notes: svn path=/head/; revision=221187
* Update a comment since ext2fs does not use SU.John Baldwin2011-04-281-3/+3
| | | | | | | Reviewed by: kib Notes: svn path=/head/; revision=221183
* Add support for Oxford PCI Express Expresso family devices.John Baldwin2011-04-281-1/+134
| | | | | | | | | | | | For these devices, the number of supported ports is read from a register in BAR 0. PR: kern/134878 Submitted by: David Wood david of wood2 org uk MFC after: 1 week Notes: svn path=/head/; revision=221182
* Trim some additional unnecessary <linker_set.h> includes.John Baldwin2011-04-282-2/+0
| | | | | | | MFC after: 1 week Notes: svn path=/head/; revision=221179
* Turn off periodic recalibration of CPU ticker frequency if it is invariant.Jung-uk Kim2011-04-281-1/+1
| | | | Notes: svn path=/head/; revision=221178
* Due to space constraints, the UFS boot2 and boot1 use an evil hack whereJohn Baldwin2011-04-284-129/+33
| | | | | | | | | | | | boot2 calls back into boot1 to perform disk reads. The ZFS MBR boot blocks do not have the same space constraints, so remove this hack for ZFS. While here, remove commented out code to support C/H/S addressing from zfsldr. The ZFS and GPT bootstraps always just use EDD LBA addressing. MFC after: 2 weeks Notes: svn path=/head/; revision=221177
* The b_dep field of buffers is always empty for ext2fs, it is only usedJohn Baldwin2011-04-281-6/+3
| | | | | | | | | for SU in FFS. Reported by: kib Notes: svn path=/head/; revision=221176
* Add the watchdogs patting during the (shutdown time) disk syncing andAttilio Rao2011-04-2810-0/+82
| | | | | | | | | | | | | | | | | | | disk dumping. With the option SW_WATCHDOG on, these operations are doomed to let watchdog fire, fi they take too long. I implemented the stubs this way because I really want wdog_kern_* KPI to not be dependant by SW_WATCHDOG being on (and really, the option only enables watchdog activation in hardclock) and also avoid to call them when not necessary (avoiding not-volountary watchdog activations). Sponsored by: Sandvine Incorporated Discussed with: emaste, des MFC after: 2 weeks Notes: svn path=/head/; revision=221173
* Exar driver for X3100 10GbE Server/Storage adaptersGeorge V. Neville-Neil2011-04-2869-0/+107644
| | | | | | | | | | | Features: Jumbo frames (up to 9600), LRO (Large Receive Offload), TSO (TCP segmentation offload), RTH (Receive Traffic Hash). Submitted by: Sriram Rapuru at Exar MFC after: 2 weeks Notes: svn path=/head/; revision=221167
* Sync with several changes in UFS/FFS:John Baldwin2011-04-288-69/+168
| | | | | | | | | | | | | | | | | | | | | | | | - 77115: Implement support for O_DIRECT. - 98425: Fix a performance issue introduced in 70131 that was causing reads before writes even when writing full blocks. - 98658: Rename the BALLOC flags from B_* to BA_* to avoid confusion with the struct buf B_ flags. - 100344: Merge the BA_ and IO_ flags so so that they may both be used in the same flags word. This merger is possible by assigning the IO_ flags to the low sixteen bits and the BA_ flags the high sixteen bits. - 105422: Fix a file-rewrite performance case. - 129545: Implement IO_INVAL in VOP_WRITE() by marking the buffer as "no cache". - Readd the DOINGASYNC() macro and use it to control asynchronous writes. Change i-node updates to honor DOINGASYNC() instead of always being synchronous. - Use a PRIV_VFS_RETAINSUGID check instead of checking cr_uid against 0 directly when deciding whether or not to clear suid and sgid bits. Submitted by: Pedro F. Giffuni giffunip at yahoo Notes: svn path=/head/; revision=221166
* Re-enable the wireless build parameters for the AR9130 WMAC.Adrian Chadd2011-04-281-12/+15
| | | | | | | | | | * enable 11n * add ath_ahb so the AHB<->ath glue is linked in * disable descriptor order swapping, it isn't needed here * disable interrupt mitigation, it isn't supported here Notes: svn path=/head/; revision=221164
* Introduce AR9130 (HOWL) WMAC support to the FreeBSD HAL.Adrian Chadd2011-04-2819-93/+1376
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The AR9130 is an AR9160/AR5416 family WMAC which is glued directly to the AR913x SoC peripheral bus (APB) rather than via a PCI/PCIe bridge. The specifics: * A new build option is required to use the AR9130 - AH_SUPPORT_AR9130. This is needed due to the different location the RTC registers live with this chip; hopefully this will be undone in the future. This does currently mean that enabling this option will break non-AR9130 builds, so don't enable it unless you're specifically building an image for the AR913x SoC. * Add the new probe, attach, EEPROM and PLL methods specific to Howl. * Add a work-around to ah_eeprom_v14.c which disables some of the checks for endian-ness and magic in the EEPROM image if an eepromdata block is provided. This'll be fixed at a later stage by porting the ath9k probe code and making sure it doesn't break in other setups (which my previous attempt at this did.) * Sprinkle Howl modifications throughput the interrupt path - it doesn't implement the SYNC interrupt registers, so ignore those. * Sprinkle Howl chip powerup/down throughout the reset path; the RTC methods were * Sprinkle some other Howl workarounds in the reset path. * Hard-code an alternative setup for the AR_CFG register for Howl, that sets up things suitable for Big-Endian MIPS (which is the only platform this chip is glued to.) This has been tested on the AR913x based TP-Link WR-1043nd mode, in legacy, HT/20 and HT/40 modes. Caveats: * 2ghz has only been tested. I've not seen any 5ghz radios glued to this chipset so I can't test it. * AR5416_INTERRUPT_MITIGATION is not supported on the AR9130. At least, it isn't implemented in ath9k. Please don't enable this. * This hasn't been tested in MBSS mode or in RX/TX block-aggregation mode. Notes: svn path=/head/; revision=221163
* Add the IP2 DDR flush handlers.Adrian Chadd2011-04-283-2/+17
| | | | | | | These aren't yet used in the interrupt handler path but should be. Notes: svn path=/head/; revision=221160
* Fix module names and dependencies so the NFS clients willRick Macklem2011-04-272-6/+10
| | | | | | | load correctly as modules after r221124. Notes: svn path=/head/; revision=221139