summaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
2014-07-09dont try to be smart about avoiding the use of too many descriptorsDavid Gwynne
when filling the rx ring. trust the hwm. problem found by sthen@
2014-07-08sys/user.h can now be substantially gutted.Theo de Raadt
ok guenther
2014-07-08also use inverted poison patterns, to mix things up. ok deraadt miodTed Unangst
2014-07-08Recognize (and ignore) ``black button'' presses. ok beck@Miod Vallat
2014-07-08Repair compilability after the recent uvmexp changes, especially forMiod Vallat
not compile-time-known page size platforms.
2014-07-08decouple struct uvmexp into a new file, so that uvm_extern.h and sysctl.hTheo de Raadt
don't need to be married. ok guenther miod beck jsing kettenis
2014-07-08Typo in previous assym.h dependency changesMiod Vallat
2014-07-08white space repairsTheo de Raadt
2014-07-08This is bootblock code. Don't pull in uvm header files to deal withTheo de Raadt
page rounding! Disgusting. Instead, define local copies of those macros.
2014-07-08rearrange some includes. also, pull in uvm/uvm.h because soon sysctl.hTheo de Raadt
won't be pulling in the uvm side of the kitchen.
2014-07-08the #ifdef _KERNEL can wrap the entire file. uvm_extern.h only pullsTheo de Raadt
this inside #ifdef _KERNEL in any case, so nothing really changes.
2014-07-08subtle rearrangement of includesTheo de Raadt
2014-07-08A few missing sys/systm.h includes. Soon the universes dragged in viaTheo de Raadt
uvm_extern.h, uvm_param.h, and sysctl.h will no longer gaurantee that _KERNEL code gets it.
2014-07-08These do not need the extremely poorly named uvm/uvm_extern.h (whichTheo de Raadt
pulls in the universe). occasionally they need sys/systm.h
2014-07-08bye bye UBC; ok beck dlgTheo de Raadt
2014-07-08undo accidentally committed changesStefan Sperling
2014-07-08Remove left-over call to removed function m_clsetwms().Stefan Sperling
ok mpi
2014-07-08pull the rx ring accounting out of the mbuf layer now that its all doneDavid Gwynne
via if_rxring things. this effectively deprecates the third argument for MCLGETI and m_clget and makes the mbuf layer no longer care about interfaces and simplifies the allocation paths. the timeout used to measure livelock has been moved to net/if.c. ok mpi@
2014-07-08cut things that relied on mclgeti for rx ring accounting/restriction overDavid Gwynne
to using if_rxr. cut the reporting systat did over to the rxr ioctl. tested as much as i can on alpha, amd64, and sparc64. mpi@ has run it on macppc. ok mpi@
2014-07-08introduce the if_rxr api. it is intended to pull the rx ring accountingDavid Gwynne
out of the mbuf layer, and break the assumption that an interface will only have a single ring per mbuf cluster size. mpi@ is ok with moving this forward
2014-07-08the way vnet works means mclgeti cant do its job. remove hte ifpDavid Gwynne
argument to MCLGETI to make that clear.
2014-07-08bus_dmamap_sync the rx ring once per em_rxeof call, rather than for everyDavid Gwynne
rx descriptor. slightly tweak by matthew tested on alpha and amd64
2014-07-08in em_rxeof, when the ifp stack var is declared its initted to theDavid Gwynne
right value out of the softc. then its assigned the same value again after the rest of the var decls. well, it used to be. not after this commit.
2014-07-08em_rxeof is only called from em_intr, and only if IFF_RUNNING isDavid Gwynne
set. em_rxeof doesnt have to check that flag again.
2014-07-07if em encounters a heavilty fragmented packet, it can (will) stall theDavid Gwynne
entire tx path. if we try to bus_dmamap_load a very fragmented packet m_defrag it and try again. this is just like if_bge.c r1.355.
2014-07-07regenMatthew Dempsky
2014-07-07Mark get{,e,res}{u,g}id() and getgroups() as NOLOCKMatthew Dempsky
A little while back, guenther moved user credentials to a per-process property, but also kept a per-thread cache that would remain stable for the duration of a thread's system call. These system calls now only access the thread's cached credentials, so they're safe to run without the kernel lock. ok kettenis, guenther
2014-07-07Do the 64-bit argument swap dance, for the syscalls which require it,Miod Vallat
unconditionaly instead of only doing it if invoked indirectly through syscall or __syscall. While there, tweak stack argument fetching to only perform one large copyin() call, rather than a loop of small ones. ok kettenis@
2014-07-07Don't print warnings for mouse interrupts on bsd.rdAlexandr Shadchin
request and ok deraadt
2014-07-07fork1: FORK_THREAD requires FORK_SHAREFILESMatthew Dempsky
Now that file descriptor tables have moved from a per-thread resource to per-process, it's impossible to fork a thread without sharing the file descriptor table. ok guenther
2014-07-07regenPhilip Guenther
2014-07-06If we find a bogus interrupt (undefined polarity or trigger) don't panic butMark Kettenis
print a message and ignore the interrupt. There are BIOSen out there with random garbage in NMI entries for the non-BP CPUs.
2014-07-06getentropy(2) doesn't need the kernel lock, so mark it with NOLOCK.Mark Kettenis
ok matthew@
2014-07-06Build with -Wall. Make sure main() returns zero.Miod Vallat
(found the hard way by building with -fstack-shuffle)
2014-07-06drm/radeon: avoid segfault on device open when accel is not working.Jonathan Gray
From Jerome Glisse 16d30071c6cd4b72a950d265b0d7d08fb4220b92 in ubuntu 3.8 24f47acc78b0ab5e2201f859fe1f693ae90c7c83 in mainline linux
2014-07-06drm/radeon: handle non-VGA class pci devices with ATRMJonathan Gray
From Alex Deucher 6a6170926060797bdf25e5d6609a3168466f2e6c in ubuntu 3.8 d8ade3526b2aa0505132c404c05a38b73ea15490 in mainline linux
2014-07-06drm/radeon: also try GART for CPU accessed buffersJonathan Gray
From Christian Koenig 72568eb7e4e40096fd80c7c8abd04ac630e45bb9 in ubuntu 3.8 544092596e8ac269f70e70961b5e9381909c9b1e in mainline linux
2014-07-05Matthias Pfaller rescinded clauses three and four of his licenseJonathan Gray
http://mail-index.netbsd.org/source-changes/2009/10/18/msg002090.html
2014-07-04Create the ioport_ex and iomem_ex extents after we've set up the gdt gatesMark Kettenis
such that curcpu() works. The extent code creates pools, and if we want to add any sort of locking to the pool code we need that working. Found out the hard way by guenther@. ok dlg@, guenther@
2014-07-04Track whether a process is a zombie or not yet fully built via flagsPhilip Guenther
PS_{ZOMBIE,EMBRYO} on the process instead of peeking into the process's thread data. This eliminates the need for the thread-level SDEAD state. Change kvm_getprocs() (both the sysctl() and kvm backends) to report the "most active" scheduler state for the process's threads. tweaks kettenis@ feedback and ok matthew@
2014-07-03Add identcpu detection for 1-GByte pagesMatthew Dempsky
ok mlarkin
2014-07-03Get clocks from Open Firmware on macppc and sparc64.Mark Kettenis
ok jsg@
2014-07-03sending a heavily fragmented packet will cause the bus_dmamap_loadDavid Gwynne
in bge_encap to fail because the dmamap lacks space, not necessarily because the ring is full. however, bge_encap failure sets the OACTIVE flag on the interface and keeps the packet at the start of the send queue. the next time we try to fill the tx ring we'll try to load the same packet and fail. an empty tx ring means bge_txeof hasnt got anything which is where the OACTIVE condition is cleared. this diff adds handling of fragmented packets via m_defrag. this might fix the issues landry@ has been complaining about on his bulk build machines. i can reproduce the above problem in contrived circumstances here and this diff fixes it, so its going in so landry@ is forced to test it.
2014-07-03It is important that we don't release the kernel lock between issuing aMark Kettenis
wakeup and clearing the PG_BUSY and PG_WANTED flags, so try to keep those bits as close together and defenitely avoid calling random code in between. ok guenther@, tedu@
2014-07-03Revert back to 1.129: pool_init() is called before rwlocks can bePhilip Guenther
used on some archs.
2014-07-03Include <sys/mutex.h> explicitely here.Matthieu Herrb
It will no longer be pulled by uvm_extern.h in the short future. ok jsg@
2014-07-02Be more careful when recreating single-precision (float) argument to serviceMiod Vallat
precise exceptions, as the actual data the FPU gives us is a 35-bit number, with the exponent sign-extended to the double-precision exponent width. Make sure we shrink it and fetch the remaining three low bits of mantissa from the LS registers.
2014-07-02In fpu_compare(), set the `not equal' bit when the result of the comparisonMiod Vallat
is `not comparable'. gcc relies upon `not equal' being set when comparing numbers to infinities.
2014-07-02Make sure the kernel lock is held when invoking process_domem(); fixesMiod Vallat
ptrace operation on MP kernels.
2014-07-02On IP28, ignore (as in, do not report) GIO bus errors where the address isn'tMiod Vallat
actually part of the GIO address range; these obviously come from speculative R10000 execution and are completely harmless (except for the need to acknowledge them, which we have to do anyway).