summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* IFp4: Don't rely on disk IDs and always use vdev guids, which means always lookpjd2008-11-222-224/+70
| | | | | up for components by reading metadata. This might be slower when there are big number of disks in the system, but is definiately more reliable.
* IFp4: Regression tests for FreeBSD/ZFS chflags(2)/lchflags(2).pjd2008-11-2214-88/+136
|
* IFp4: Finish implemnetation of chflags(2) for ZFS. While doing this I foundpjd2008-11-221-3/+54
| | | | | that zfs_access() can only handle VREAD, VWRITE and VEXEC, for the rest we need to use vaccess(9).
* IFp4: Don't free pathname too soon, debugging code is still using it.pjd2008-11-221-5/+4
|
* Busy ufs filesystem around block of code that does ".." lookup. Sincekib2008-11-221-1/+26
| | | | | | | | | | | | | | | | mnt_lock is before lock of any vnode on the mp, it uses LK_NOWAIT. Since MNTK_UNMOUNT may be transient, pdp lock is dropped when vfs_busy() failed, and operation is retried after some time. This way, ffs_vget() is not called on the mp that may be in the process of being destroyed by unmount. Check for the VI_DOOMED flag on pdp after its lock is reacquired, to better detect some situations where directory containing ".." entry is removed during the lookup. Reviewed by: tegge, attilio (previous version) Tested by: pho MFC after: 1 month
* Add sv_flags field to struct sysentvec with intention to provide descriptionkib2008-11-2216-20/+50
| | | | | | | | of the ABI of the currently executing image. Change some places to test the flags instead of explicit comparing with address of known sysentvec structures to determine ABI features. Discussed with: dchagin, imp, jhb, peter
* Unbreak LINT.jkoshy2008-11-224-0/+24
|
* Add flowid to mbuf to allow drivers to uniquelykmacy2008-11-221-0/+3
| | | | | identify connection flows to guarantee ordering across queues
* - enable multiple transmit queueskmacy2008-11-225-246/+109
| | | | | | | | | | | - invert sense of hw.cxgb.singleq tunable to hw.cxgb.multiq - don't wake up transmitting thread by default - add per tx queue ifaltq to handle ALTQ - remove several unused functions in cxgb_multiq.c - add several sysctls: multiq_tx_enable, coalesce_tx_enable, and wakeup_tx_thread - this obsoletes the hw.cxgb.snd_queue_len as ifq is replaced by a buf_ring
* convert calls to IFQ_HANDOFF to if_transmitkmacy2008-11-2210-15/+11
|
* Define mb(), rmb() and wmb() for real.marcel2008-11-221-3/+3
|
* - bump __FreeBSD version to reflect added buf_ring, memory barriers,kmacy2008-11-2224-256/+472
| | | | | | | | | | | | | | | | | and ifnet functions - add memory barriers to <machine/atomic.h> - update drivers to only conditionally define their own - add lockless producer / consumer ring buffer - remove ring buffer implementation from cxgb and update its callers - add if_transmit(struct ifnet *ifp, struct mbuf *m) to ifnet to allow drivers to efficiently manage multiple hardware queues (i.e. not serialize all packets through one ifq) - expose if_qflush to allow drivers to flush any driver managed queues This work was supported by Bitgravity Inc. and Chelsio Inc.
* Several small additions to the Chelsio 10G driver.gnn2008-11-214-5/+38
| | | | | | | | | | | | | 1) Fix a bug in dealing with the Alerus 1006 PHY which prevented the device from ever coming back up once it had been set to down. 2) Add a kernel tunable (hw.cxgb.snd_queue_len) which makes it possible to give the device more than IFQ_MAXLEN entries in its send queue. The default remains 50. 3) Add code to place the card'd identification and serial number into its description (%desc) so that users can tell which card they have installed.
* 'Strict EAP conformance' makes more sense here than 'String EAPimp2008-11-211-1/+1
| | | | conformance.'
* use the correct variable in a debug message.luigi2008-11-211-1/+1
|
* Add definitions for ZFS pool version 13.dfr2008-11-211-2/+16
|
* Disconnect gptzfsboot from the build until dfr@ gets his act together.des2008-11-211-1/+1
|
* Create a /dev/cardbus%d.cis, to be compatible with older versions ofimp2008-11-212-1/+6
| | | | | the software. This is a trivial amount of code to keep wireless monitoring software working... I plan on removing it in 9.0.
* - According to OpenSolaris, CDMA flushing/syncing for Tomatillosmarius2008-11-204-74/+218
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and XMITS has to be basically done in the same manner as for the Sabres, i.e. only for devices behind PCI-PCI-bridges and after a PIO read on the far side of the farest PCI-PCI-bridge. Given that the Tomatillo documentation mentions no difference to the Schizo bridges in this regard and this is also still part of the procedure described Schizo documentation this seems about right so adjust accordingly (the unconditional CDMA flushing/syncing previously done was based on how Linux behaves). - Implement CDMA flushing/syncing for Schizo version >= 5, which requires the workaround described in Schizo Errata I-23. According to Schizo Errata I-13 it's just unusable with version < 5 though. [1] - Don't register the Schizo streaming buffer for now until it's usage is sorted out according to the erratas. - Register our interrupt filters with the revived INTR_FAST so they these interrupts can even interrupt filters of device drivers as necessary. - Remove the comment regarding lack of newbus'ified bus_dma(9) as being able to associate a DMA tag with a device would allow to implement CDMA flushing/syncing in bus_dmamap_sync(9) but that would totally kill performance. Given that for devices not behind a PCI-PCI bridge the host-to-PCI bridges also only do CDMA flushing/syncing based on interrupts there's no additional disadvantage for polling(4) callbacks in the case schizo(4) has to do the CDMA flushing/syncing but rather a general problem. Reported by: Michael Moll [1]
* As reported in kern/118222, pxeboot in RELENG7 (and presumablyluigi2008-11-201-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | above) exhibits some misbehaviours on machines with AMD64 CPUs, which at least in some cases I have tracked down to a heap overflow. It is unclear whether it depends on the CPU or on the pxe bios itself which may use more memory on AMD machines. Noticeably a pxeboot compiled from 6.x sources works fine on all machines I have tried so far, while a pxeboot compiled from 7.x sources does not. This patch is a first step in reducing the amount of memory used while processing the configuration files read by the loader at boot (some of them are quite large, 1700+ lines), and it does so by: + moving a buffer to static memory instead of allocating in the heap; + skipping empty lines; + reducing the amount of memory used for line descriptors; Unfortunately there are several changes between 6.x and above, affecting the compiler, the loader code itself, and libstand, and it is not so straightforward to These changes fix the behaviour on one motherboard with a single-core AMD cpu, but are still not enough e.g on an Asus M2N-VM (with a dual-core CPU). I need to investigate the problem a bit more before figuring out what should be committed to RELENG_7 PR: kern/118222
* damn. Always do make depend. Forgot to recompile main because of it,imp2008-11-201-5/+5
| | | | | so the changes for the struct cis -> struct tuple_list didn't get made. They have been now.
* Fix check for link target so we don't print cardbus CIS information twice.imp2008-11-201-38/+39
| | | | Also, eliminate some magic constants and replace them with values from cis.h.
* Restore now-useless ioctl as a roadmap. The original dumpcis codeimp2008-11-201-0/+1
| | | | | | | | | | | | | | | | assumed it had to toggle between attribute and common memory in the cards. The kernel is supposed to cope with that automatically and give us a tuple list. However, there's a number of details of how that happens that's currently, ummm, magical and/or not implemented for 16-bit PC Cards that have CIS_LONGLINK_C tuples in them (eg, mix both attribute memory and common memory). Also, CIS_LOGNLINK_A entries might not be handled completely correctly either, since there can be gaps in the attribute vs common stuff. All this will need to be corrected in the kernel. Once it is corrected, dumpcis can be made even simpler in some ways, a little more complicated in others once an API for presentation of CIS to userland in these weird cases is settled upon.
* More dead code removal.imp2008-11-201-6/+0
|
* The original programs that this code was lifted from (pccardd andimp2008-11-203-413/+19
| | | | | | | | | | pccardc) parsed data to make decisions about stuff related to card configuration. The purely CIS dumping aspect of this program obviates the need for such parsing. Save some space and don't parse the data anymore for configuration purposes. Just parse it to print an interpreatation of it.
* dump() really is unused, so retire it.imp2008-11-203-23/+0
|
* Simplify: move dumpcis.c and dumpcisfile.c into main.imp2008-11-205-134/+43
|
* Use the interrupt level right below PIL_FAST for executing interruptmarius2008-11-192-10/+19
| | | | | | | filters instead of PIL_FAST and allow special filters and handlers for interrupts which need to be able to interrupt even filters, f.e. bus error interrupts, to be registered with the revived INTR_FAST at PIL_FAST.
* Given that the buffer dcons_crom(4) exposes is used for both inputmarius2008-11-191-1/+1
| | | | | | | | | | | and output, set BUS_DMA_COHERENT when creating the DMA map used for loading the buffer. As a side-effect this solves locking issues on sparc64 when dcons(4) calls bus_dmamap_sync(9) while in an interrupt filter, which are executed in a critical section, and iommu(4) has to use a sleep lock when taking advantage of the streaming buffer. Reported and tested by: kensmith Approved by: simokawa
* Also make dcons(4) use MPSAFE callouts.ed2008-11-191-1/+1
| | | | | The callout locks the TTY layer the way it should, so there is no reason why its callout shouldn't set this flag.
* Make nmdm(4) use MPSAFE callouts.ed2008-11-191-2/+2
| | | | | | For some reason the nmdm(4) driver doesn't use CALLOUT_MPSAFE, even though we live in the MPSAFE TTY era. Add the CALLOUT_MPSAFE flags. System survives.
* Use "KSE" instead of "kse".delphij2008-11-191-1/+1
|
* Use igb(4) entrydelphij2008-11-191-1/+1
|
* Make sure legacy replacement route is turned off when enbling HPET.jkim2008-11-191-2/+5
| | | | Reviewed by: jhb
* Fix typo.jhb2008-11-191-1/+1
|
* Fix a scope problem in the multiple routing table code that stopped thejulian2008-11-194-2/+19
| | | | | | | SO_SETFIB socket option from working correctly. Obtained from: Ironport MFC after: 3 days
* Initial storage functionality for U-Boot support library.raj2008-11-1910-91/+429
| | | | | | | | - Only non-sliced bsdlabel style partitioning is currently supported (but provisions are made towards GPT support, which should follow soon) - Enable storage support in loader on ARM Obtained from: Semihalf
* Improve error handling in pcib_mbus_identify().raj2008-11-191-1/+3
|
* Some zfsboot fixes from Norikatsu Shigemura:dfr2008-11-193-25/+31
| | | | | | | | 1. zfsboot2 (boot2) doesn't %d (printf), so change %d to %u. 2. chase new zpool versioning as SPA_VERSION. Obtained from: sys/cddl/contrib/opensolaris/uts/common/sys/fs/zfs.h Submitted by: nork
* Add a GPT-aware variant of zfsboot which should be used in a similar mannerdfr2008-11-194-5/+188
| | | | | | | | to gptboot, i.e. installed in a freebsd-boot partition using /sbin/gpart or /sbin/gpt. Tweak the /boot/loader ZFS support so that it can find ZFS pools that are contained in GPT partitions.
* If we free the GPT partition list in bd_open_gpt() because of an error, don'tdfr2008-11-191-2/+4
| | | | try to free it again in bd_closedisk(). While I'm here, fix a DEBUG print.
* Improve style(9) and other cosmetics in Marvell SOCs code.raj2008-11-193-64/+64
|
* Fix off-by-one error in mbus_attach().raj2008-11-191-1/+1
|
* Enable PCI in Marvell kernel configs.raj2008-11-193-0/+6
|
* PCI/PCI-Express support for Marvell systems.raj2008-11-1912-93/+1011
| | | | Obtained from: Marvell, Semihalf
* Change the initialization methodology for global variables scheduledzec2008-11-1960-306/+747
| | | | | | | | | | | | | | | | | | | | | | | | for virtualization. Instead of initializing the affected global variables at instatiation, assign initial values to them in initializer functions. As a rule, initialization at instatiation for such variables should never be introduced again from now on. Furthermore, enclose all instantiations of such global variables in #ifdef VIMAGE_GLOBALS blocks. Essentialy, this change should have zero functional impact. In the next phase of merging network stack virtualization infrastructure from p4/vimage branch, the new initialization methology will allow us to switch between using global variables and their counterparts residing in virtualization containers with minimum code churn, and in the long run allow us to intialize multiple instances of such container structures. Discussed at: devsummit Strassburg Reviewed by: bz, julian Approved by: julian (mentor) Obtained from: //depot/projects/vimage-commit2/... X-MFC after: never Sponsored by: NLnet Foundation, The FreeBSD Foundation
* src/sys/dev/usb2/controller/uss820dci_pccard.calfred2008-11-1943-3483/+989
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/sys/dev/usb2/core/usbdevs src/sys/dev/usb2/include/urio2_ioctl.h src/sys/dev/usb2/storage/ustorage2_fs.h These files are not used any more. src/usr.sbin/Makefile src/etc/mtree/BSD.include.dist src/include/Makefile src/lib/Makefile src/share/man/man7/hier.7 src/share/mk/bsd.libnames.mk src/etc/mtree/BSD.include.dist Make "usbconfig" and "libusb20" a part of the default build. src/sys/dev/usb/rio500_usb.h src/sys/dev/usb2/storage/urio2.c Use common include file. src/sys/dev/usb2/bluetooth/ng_ubt2.c Make USB bluetooth depend on "ng_hci" module. src/sys/dev/usb2/controller/ehci2.c src/sys/dev/usb2/controller/ehci2.h Patches for Marvell EHCI. src/sys/dev/usb2/core/usb2_busdma.c Bugfix for 64-bit platforms. Need to unload the previously loaded DMA map and some cleanup regarding some corner cases. src/sys/dev/usb2/core/usb2_core.h src/sys/dev/usb2/core/usb2_dev.c src/sys/dev/usb2/core/usb2_dev.h Bugfix for libusb filesystem interface. New feature: Add support for filtering device data at the expense of the userland process. Add some more comments. Some minor code styling. Remove unused function, usb2_fifo_get_data_next(). Fix an issue about "fifo_index" being used instead of "ep_index". src/sys/dev/usb2/core/usb2_device.c src/sys/dev/usb2/core/usb2_generic.c Bugfix for Linux USB compat layer. Do not free non-generic FIFOs when doing an alternate setting. Cleanup USB IOCTL and USB reference handling. Fix a corner case where USB-FS was left initialised after setting a new configuration or alternate setting. src/sys/dev/usb2/core/usb2_hub.c Improvement: Check all USB HUB ports by default at least one time. src/sys/dev/usb2/core/usb2_request.c Bugfix: Make sure destination ASCII string is properly zero terminated in all cases. Improvement: Skip invalid characters instead of replacing with a dot. src/sys/dev/usb2/core/usb2_util.c src/sys/dev/usb2/image/uscanner2.c Spelling. src/sys/dev/usb2/include/Makefile Share "usbdevs" with the old USB stack. src/sys/dev/usb2/include/usb2_devid.h src/sys/dev/usb2/include/usb2_devtable.h Regenerate files. Alfred: Please fix the RCS tag at the top. src/sys/dev/usb2/include/usb2_ioctl.h Fix compilation of "kdump". src/sys/dev/usb2/serial/ubsa2.c src/sys/dev/usb2/serial/ugensa2.c Remove device ID's which will end up in a new 3G driver. src/sys/dev/usb2/sound/uaudio2.c Correct a debug printout. src/sys/dev/usb2/storage/umass2.c Sync with old USB stack. src/lib/libusb20/libusb20.3 Add more documentation. src/lib/libusb20/libusb20.c Various bugfixes and improvements. src/usr.sbin/usbconfig/dump.c src/usr.sbin/usbconfig/usbconfig.c New commands for dumping strings and doing custom USB requests from the command line. Remove keyword requirements from generated files: "head/sys/dev/usb2/include/usb2_devid.h" "head/sys/dev/usb2/include/usb2_devtable.h"
* Correct a logic error when testing BCE_PHY_SERDES_FLAG.delphij2008-11-191-1/+1
| | | | | | | PR: kern/128801 Pointed out by: Adam Morrison Ok'ed by: davidch MFC after: 3 days
* As a matter of good programming style, stop PMCs before releasingjkoshy2008-11-191-0/+3
| | | | them.
* Grammar.delphij2008-11-191-2/+2
| | | | Submitted by: "bf" <bf2006a at yahoo com>
OpenPOWER on IntegriCloud