summaryrefslogtreecommitdiff
path: root/sys/conf
AgeCommit message (Collapse)Author
2010-06-08Introduce a diskmap pseudo device which allows userland to open a diskJoel Sing
specified via its disklabel UID. The mapping from the disklabel UID to the real disk and the opening of the resulting device is performed atomically using a single ioctl. ok krw@ deraadt@
2010-05-26Reintroduce bufqs. A few changes since it was backed out after some goodThordur I. Bjornsson
comments from dlg@. No need for a separate bufq.h, keep all of in buf.h; As requested by kittens and deraadt. Only sd(4) and wd(4) for now. The rest of the drivers will be converted soon, also other goodies like heuristics for sd(4) for selecting the bufq type and the death of disksort() are forthcoming. Tested on: i386, amd64, sparc64, macppc, loongson and alpha by myself and phessler. OK art@, beck@, kettenis@, oga@
2010-05-26PAGEFASTRECYCLE does not exist as an option after uvm_pmemrange; it isTheo de Raadt
implied.
2010-05-11ip_ether.c makes only sense if the kernel has gif(4) support.Claudio Jeker
OK sthen@
2010-05-10athn(4) is going to support a new family of Atheros 802.11nDamien Bergamini
chips (AR9003), which differs from the currently supported families (AR5008, AR9001 and AR9002). The main differences (from a driver point of view) are: * DMA: Tx and Rx descriptors have changed. A single Tx descriptor can now reference up to 4 scatter/gather DMA segments. There is now a DMA ring for reporting Tx status with separate Tx status descriptors (this ring is used to report Tx status for all the Tx FIFOs). Rx status descriptors are now put at the beginning of Rx buffers and do not need to be allocated separately from buffers. There are two Rx FIFOs (low priority and high priority) instead of one. * ROM: The AR9003 family uses OTP-ROM instead of EEPROM. Reading the ROM is totally insane since vendors can provide only the chunks of ROM that differ from a default image (and thus the default image has to be stored in the driver). This is referenced as "compressed ROM" in the Linux driver, though there is no real compression involved, at least for the moment. * PHY registers: All PHY registers have changed. Some registers offsets do not fit on 16 bits anymore, but since they are 32-bit aligned, we can still make them fit on 16 bits to save .rodata space in initialization tables. * MAC registers: Some MAC registers offsets have changed (GPIO, interrupt masks) which is quite annoying (though ~98% remain the same.) * Initialization values: Initialization values are now split in mac/soc/bb/radio blocks and pre/core/post phases in the Linux driver. I have chosen to not go that road and merge these blocks in modal and non-modal initialization values (similar to the other families). The initialization order remains exactly the same as the Linux driver though. To manage these differences, I have split athn.c in two backends: ar5008.c contains the bits that are specific to the AR5008, AR9001 and AR9002 families (used by ar5416.c, ar9280.c, ar9285.c and ar9287.c) and that were previously in athn.c. ar9003.c contains the bits that are specific to the new AR9003 family (used by ar9380.c only for now.) I have introduced a thin hardware abstraction layer (actually a set of pointers to functions) that is used in athn.c. My intent is to keep this abstraction layer as thin as possible and not to create another ugly pile of abstraction layers a la MadWifi. I think I've managed to keep things sane, probably at the expense of duplicating some code in both ar5008.c and ar9003.c, but at least we do not have to dig through layers and layers of virtual descriptors to figure out what is mapped to the hardware. Tested for non-regression on various AR5416 (sparc64+i386), AR9281 and AR9285 (i386 only) adapters. AR9380 part is not tested (hardware is not available to the general public yet). Committed over my AR9285 2.0.
2010-05-07order the network pseudo-devices by name. Move pppoe and sppp into that list.Claudio Jeker
OK kettenis, krw, dlg
2010-05-01Unbreak ramdisks.Owain Ainsworth
I forgot that uvm_object.c wasn't build if SMALL_KERNEL. Fix this by building the file unconditionally and only building the less used functions when SMALL_KERNEL is not defined. unbreaks ramdisk build. ok jsg@
2010-04-30Add commented MPLS and mpe(4) entries.Claudio Jeker
OK sthen, jsg
2010-04-22Committing on behalf or ariane@.Owain Ainsworth
recommit pmemrange: physmem allocator: change the view of free memory from single free pages to free ranges. Classify memory based on region with associated use-counter (which is used to construct a priority list of where to allocate memory). Based on code from tedu@, help from many. Useable now that bugs have been found and fixed in most architecture's pmap.c ok by everyone who has done a pmap or uvm commit in the last year.
2010-04-20Add bus_dma and oosiop(4), as found on the AV530 family. Tested on model 4605.Miod Vallat
2010-03-22Split existing spdmem@i2c code into bus-agnostic spd record decoding code,Miod Vallat
and an i2c attachment. No functional change; ok jsg@ deraadt@
2010-03-22Enable PAGEFASTRECYCLE.Mark Kettenis
ok deraadt@, ariane@
2010-03-18enable POOL_DEBUGOtto Moerbeek
2010-03-18move to 4.7-currentOtto Moerbeek
2010-03-07we disable POOL_DEBUG for releases. Reminded by mpfTheo de Raadt
After release, someone please remind us to turn it on again. It helps find bugs. We just don't want people to get hosed too much during release.
2010-03-05head towards release, correctly. tsk tsk tsk.Miod Vallat
2010-03-05head towards releaseTheo de Raadt
2010-01-264.7-BETA (also, lo-carb and ozone layer friendly)Miod Vallat
2010-01-11Add PIPEX option, disabled by default for now.Ryan Thomas McBride
ok deraadt yasuoka
2010-01-11Initial import PIPEX. PIPEX(Pppac IP EXtension) is a IP forwardingYASUOKA Masahiko
acceleration for PPP access concentrator. ok mcbride@ dlg@ deraadt@ reyk@.
2009-12-08Remove old SysV SHM size limits global variables, they are no longer neededMiod Vallat
since blambert@ rewrote the allocation code.
2009-11-25re-add uvm_objwire and uvm_objunwire. needed for intel GEM support.Owain Ainsworth
It was backed out as part of the date-based revert after c2k9. "you can commit that" kettenis@ original diff oked by ariane@, art@.
2009-11-14athn(4), a driver for Atheros 802.11a/g/n devices.Damien Bergamini
written from scratch based on the vendor driver for Linux (ath9k). AR9285 and AR9287 parts are 100% untested. only basic functionnalities are enabled for now. committed over an AR9281. "commit" deraadt
2009-11-09vether(4) is a virtual ethernet device driver which can be usedTheo de Raadt
so that a bridge-etherip-tunnel host can join into the bridge itself. It is ridiculous that this capability was missing from our network stack portfolio, considering we have bgp and ospf daemons... discussed at length with claudio
2009-11-05IPv6 support for divert sockets.Michele Marchetto
tested by phessler@ pyr@ ok claudio@ "go ahead" deraadt@
2009-10-08Import EDID handling code from NetBSD. Ok deraadt@, miod@, mglocker@.Matthieu Herrb
2009-10-04Add (again) support for divert sockets. They allow you to:Michele Marchetto
- queue packets from pf(4) to a userspace application - reinject packets from the application into the kernel stack. The divert socket can be bound to a special "divert port" and will receive every packet diverted to that port by pf(4). The pf syntax is pretty simple, e.g.: pass on em0 inet proto tcp from any to any port 80 divert-packet port 1 A lot of discussion have happened since my last commit that resulted in many changes and improvements. I would *really* like to thank everyone who took part in the discussion especially canacar@ who spotted out which are the limitations of this approach. OpenBSD divert(4) is meant to be compatible with software running on top of FreeBSD's divert sockets even though they are pretty different and will become even more with time. discusses with many, but mainly reyk@ canacar@ deraadt@ dlg@ claudio@ beck@ tested by reyk@ and myself ok reyk@ claudio@ beck@ manpage help and ok by jmc@
2009-10-03Driver for the SD/MMC part of the Winbond W83L518D/W83L519D Integrated MediaMark Kettenis
Reader.
2009-09-08I had not enough oks to commit this diff.Michele Marchetto
Sorry.
2009-09-08Add support for divert sockets. They allow you to:Michele Marchetto
- queue packets from pf(4) to a userspace application - reinject packets from the application into the kernel stack. The divert socket can be bound to a special "divert port" and will receive every packet diverted to that port by pf(4). The pf syntax is pretty simple, e.g.: pass on em0 inet proto tcp from any to any port 80 divert-packet port 8000 test, bugfix and ok by reyk@ manpage help and ok by jmc@ no objections from many others.
2009-09-02Backout the asyncio/aiod change, as it causes buf's to get hung.Thordur I. Bjornsson
problem noticed by deraadt@ ok beck@
2009-08-29Split the ti(4) driver into mostly bus-agnostic code and PCI-specificMark Kettenis
attachment. Add SBus support to the bus-agnostic code.
2009-08-26add commented out options for PAGEFASTRECYCLE, KVA_GUARDPAGES, shuffle VFSDEBUGThordur I. Bjornsson
around and add POOL_DEBUG as an enabled option, removing the define from subr_pool.c. comments & ok deraadt@.
2009-08-25Remove support for packet mode of Metricom Ricochet radios.Jonathan Gray
It currently doesn't compile and this is unlikely to change as there are many alternatives now since we no longer live in the early 1990s and Metricom went bankrupt some time ago. ok many @
2009-08-20Rework the way we do async I/O in nfs. Introduce separate buf queues forThordur I. Bjornsson
each mount, and when work is "found", peg an aiod to that mount todo the I/O. Make nfs_asyncio() a bit smarter when deciding when to do asyncio and when to force it sync, this is done by keeping the aiod's one two lists, an "idle" and an "all" list, so asyncio is only done when there are aiods hanging around todo it for us or are already pegged to the mount. Idea liked by at least beck@ (and I think art@). Extensive testing done by myself and jasper and a few others on various arch's. Ideas/Code from Net/Free. OK blambert@.
2009-08-13wire vscsi up to a cdevDavid Gwynne
for claudio@ ok deraadt@
2009-08-09Introduce option DDB_STRUCT. Kernels compiled with this option (except onMiod Vallat
a few arches where toolchain limitations apply) will embed some symbolic information about the various structs used within the kernel, and have new ddb commands allowing struct display and some useful information gathering. Kernel rodata increase varies accross platforms from ~150KB to ~300KB. This option is not enabled by default.
2009-08-09add mpath(4), a driver that steals paths to scsi devices if itDavid Gwynne
thinks they could be available via multiple paths. those stolen devices are then made available via mpath(4). this is the minimum amount of code to implement the stealing. it is generally broken and very brittle, so it is currently disabled. it is going in so i can work on it in the tree.
2009-08-09Rototill system V message queues.Bret Lambert
No longer allocate a static amount of memory for messages in MD boot path; message queues, message metadata, and message data now all use dynamic memory, which means that runtime sysctls should now be trivial to implement. Since I'm going to be around all week to fix any breakage, this should probably just go in now.
2009-07-23Adding disabled framework for RAID6Jordan Hargrave
ok marco@
2009-07-05take us to 4.6-currentDavid Gwynne
2009-07-01take us to 4.6, though there will still be some changesTheo de Raadt
2009-06-204.6-BETAMiod Vallat
2009-06-17Revert bufq's. this is inline with the major midlayer reverts thatThordur I. Bjornsson
have been going on. this appears to bring us back to stable state. lots of testing by oga and ariane and my self.
2009-06-16Backout pmemrange (which to most people is more well known as physmemAriane van der Steldt
allocator). "i can't see any obvious problems" oga
2009-06-16Backout all changes to uvm after pmemrange (which will be backed outOwain Ainsworth
separately). a change at or just before the hackathon has either exposed or added a very very nasty memory corruption bug that is giving us hell right now. So in the interest of kernel stability these diffs are being backed out until such a time as that corruption bug has been found and squashed, then the ones that are proven good may slowly return. a quick hitlist of the main commits this backs out: mine: uvm_objwire the lock change in uvm_swap.c using trees for uvm objects instead of the hash removing the pgo_releasepg callback. art@'s: putting pmap_page_protect(VM_PROT_NONE) in uvm_pagedeactivate() since all callers called that just prior anyway. ok beck@, ariane@. prompted by deraadt@.
2009-06-10Add framework for raid 4 & 5 so that we can work in tree.Marco Peereboom
2009-06-06Add uvm_objwire() and uvm_objunwire(), I need this for some of my crazyOwain Ainsworth
shitz. Code mostly from netbsd with some tweaks from me. The loaning case is specifcically if 0ed out right now because we do not do loaning. ok ariane@, art@.
2009-06-06option X86EMU is how this subsystem is brought into a kernelTheo de Raadt
2009-06-06fix include pathsTheo de Raadt