summaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
2007-04-21oopsTheo de Raadt
2007-04-21Introduce a smp aware hw.setperf mechanism, it will scale all CPUs orGordon Willem Klok
cores by the same amount, i.e. if you do hw.setperf=50 both cores will be scaled to the opearting state corresponing to 50%. Tested by many with est (mainly on core2duo machines like X60 thinkpads). Only enable est during GENERIC.MP build no one tested powernow. ok art@
2007-04-21Back out last. the world is not i386.Artur Grabowski
2007-04-21do not ignore linker failures; ok miodTheo de Raadt
2007-04-21No more vtophys() on arm.Miod Vallat
2007-04-21backout: compile before you commit, pleaseTheo de Raadt
2007-04-21did you know that IPv6 packets are actually carried by turtles?Jun-ichiro itojun Hagino
because turtles are slow but reliable and trustworthy, packets stays on the net for a long period of time. bigger turtles can stay much longer. that is the hidden secret reason for the name of KAME project (i'm lying). j> some IETFers need to be sent to bondage/SM club and spanked/whipped j> by thousands of dominas and then chopped into million peaces by samurai j> swords. t> maybe that is what they actually want, and that is why they t> fucked RFC1883 and put rosemary's baby into RFC2460. j> I am king of IETF now, and tomorrow i may become beggar on the IETF venue j> hotel corridor. http://www.secdev.org/conf/IPv6_RH_security-csw07.pdf ok by myself, deraadt@, <samurais at kame.net>
2007-04-21correct list of architecturesReyk Floeter
ok deraadt@
2007-04-21developers keep killing ramdisk driversTheo de Raadt
2007-04-21correct list of architecturesTheo de Raadt
2007-04-21Fix the rcs tags.Gordon Willem Klok
2007-04-21Add blinkenlights(4) a driver to control the 16 leds found on the frontGordon Willem Klok
panel of the Xserve G4 and G5. The leds will provide an indication of the system load slowing as the load climbs, and system health e.g. no lights means its dead or in DDB. Split some of the shared registers and clock divisors from i2s into i2sreg.h while there nuke some evil C++ style comments. Man page to follow shortly. ok deraadt
2007-04-21fill the rx free fifo on interface up, and drain it on interface down.David Gwynne
2007-04-21tht wants at least 128 bytes in the first physical segment of an rx bufferDavid Gwynne
for some reason, so i had some code in there that tried to guarantee that. however, newly allocated mbufs and clusters are physically contiguous and bigger than 128 bytes. therefore we dont need to do that check. while here check if there is enough space in the fifo before trying to fill any of it. this means we can skip dma syncs if we're not going to end up writing anything in the fifo.
2007-04-21rename tht_rx to tht_rxf_fill to avoid confusion.David Gwynne
keep a list of used pkts in tht_pkt_list as well as free ones. add tht_pkt_used which can be used to see if a tht_pkt_list is in use by returning the head of the used list inside itself. (ab)use this to drain the rx free fifo when the interface is brought down. tht_rxf_drain pulls used pkts off, unmaps their mbufs, frees them, and then returns the pkt to the free list. the whole tht_pkt_list can then be freed safely.
2007-04-21Do a simple switch to VM_PAGE_MD. Just the path of least resistance for now,Artur Grabowski
more work coming soon. kettenis@ ok
2007-04-21add tht_rx. this function will try to fill as much of the rx free fifo asDavid Gwynne
possible. it loops till it runs out of tht_pkts to use on the rx descriptor free list, until it runs out of space in the fifo, or until it cant allocate or map any more mbufs. tht has a weird requirement that the first physical buffer in an sg list is at least 128 bytes long. i have code that tries to guarantee that, but id like someone else to look at it and tell me if its necessary or dumb.
2007-04-21when allocating a new mbuf for rx, do a dmamap_sync before handing it toDavid Gwynne
the hardware. oops.
2007-04-21simplify some maths in fw_load a bitDavid Gwynne
2007-04-21allocate a small list of tx and rx descriptors on interface up and down.David Gwynne
2007-04-21quick macro to figure out how many 64bit words a buffer will use.David Gwynne
2007-04-21create struct tht_pkt to keep track of mbufs that are on the hardware andDavid Gwynne
their dmamaps. so far it looks like the same thing can be used to look after both the transmitted and recved packets. this also adds code to allocate a list of them and set up their dmamaps, some free list handling, and code to free them when you dont want them anymore.
2007-04-21represent the uid field in all the descriptors as a u_int64_t instead ofDavid Gwynne
two u_int32_ts
2007-04-21rename tht_rxf to tht_rx_free. tweak comments describing the hw structuresDavid Gwynne
a bit so theyre less offensive to my eyes. massage tht_rx_free a bit.
2007-04-21Remove unused header files.Marc Balmer
2007-04-20Increase the delay while uploading a firmware buffer in malo_load_firmware().Claudio Jeker
We're doing DMA transfers without interrupts or some other indication and 100 microseconds is not enough on my X40 and so the firmware gets corrupted. Increasing it to 500 microseconds this should give us enough safety margin. OK mglocker@
2007-04-20Do not use time_t for on-disk data structures, use int32_t insteadTodd C. Miller
since time_t will have to be crank to 64 bits at some point in the future. OK pedro@
2007-04-20Remove leftover trapwrite() prototype from... 80386 support.Miod Vallat
2007-04-20Segment tables are integral multiples of the page size in LP64 mode, soMiod Vallat
do not manage a freelist ourselves, but release them in pmap_destroy().
2007-04-20add a lock around ioctl handling to prevent the posssibility that someoneDavid Gwynne
will try to bring the interface up in the middle of it being brought down. im sleeping in tht_down while waiting for the tx fifos to drain, so its possible something else can enter the ioctl handler while that's happening.
2007-04-20this implements up and down routines for the interface. currently whenDavid Gwynne
brought up they allocate all four fifos and set the interface flags. when theyre brought down they clear the flags, wait for the tx fifos to drain, and then free all the fifos. interrupts are not yet dealt with.
2007-04-20implement reads from a fifo.David Gwynne
2007-04-20add fifo descriptors for the rxf and rxd fifos.David Gwynne
2007-04-20tht uses ifmedia and firmloadDavid Gwynne
2007-04-20we'd like to show if the nic has link regardless of whether the interfaceDavid Gwynne
is up or not.
2007-04-20implement checking of the link status according to the firmware, and teachDavid Gwynne
ifmedia about it. im not sure what the point of the ifmedia goo is if the only link type we support is "autoselect". using it to show the link state seems to be easier than implementing that ioctl ourselves.
2007-04-20bits in the link status registerDavid Gwynne
2007-04-19Save volume and chunk metadata as well.Marco Peereboom
2007-04-19Cleanup phy selection code, simplifying the code considerably. Attach onlyMark Kettenis
one phy on Sun ERI; gets rid of the duplicate phy on the blade1k. tested by many, ok drahn@
2007-04-19When doing pmap_collect, skip wired mappings when removing.Artur Grabowski
From NetBSD, miod@ ok
2007-04-19Also show fpu context switches in show uvmexp in ddb.Artur Grabowski
From mickey. art@ ok
2007-04-19Do the late freeing of ptps in pae pmap as well.Artur Grabowski
From mickey.
2007-04-19descend into thtDavid Gwynne
2007-04-19Replace the nfskevq_lock lockmgr lock with rwlock.Thordur I. Bjornsson
Replace nfs_kqinit() wich just calls lockinit with RWLOCK_INITALIZER. Assorted cleanup. ok tedu@ "reads good" art@
2007-04-19this is two (and a half) changes, but im too lazy to split them up.David Gwynne
the first is the addition of handlers for the fifos. you can now check if there the fifo is ready to be used, pre sync it for use, do many incremental updates to it, then post sync it to tell the hardware that you've done something. the ready, pre, and post funcs are done for both the reader and writer fifos, but only updates to the writer fifos is implemented so far. the second change is the firmware loading. i needed the above changes to do this, and i needed firmware loading to test them, so this change gets both. so we have a mountroot hook (that was the half change) that allocates the tx task fifo, reads the firmware from disk, and then pushes the firmware onto the fifo. once that is done it spins till the firmware is ready, then cleans up everything it allocated for loading the firmware. this diff wont time out if anything goes wrong during fw_load. if anyone wants to look at a nice way of doing it, please do.
2007-04-19make it compile again if LMDEBUG is defined;Robert Nagy
ok kettenis@
2007-04-19Cleanup spaces.Claudio Jeker
2007-04-19Fix freeing of namecache entries in cache_purgevfs(), okay miod@ art@Pedro Martelletto
2007-04-19After we bumped the maximal number of vnodes by quite a bit we becameArtur Grabowski
painfully aware of what the comment: "This makes the algorithm O(n^2), but do you think I care?" actually means. I started to care. Fix up the cache_purgevfs algorithm to not be O(n^2) since it's not preemptible anyway and while I'm here, make this code actually return the cache entries to the pool instead of hogging them and implement a marginally faster free list. This way we return memory to the system when some parameters change. miod@ ok
2007-04-19sili(4) works fine here.David Gwynne