Age | Commit message (Collapse) | Author |
|
code block (not 'high_next' but 'low').
While here, change the KASSERT to a KDASSERT.
Pointed out by Amit Kulkarni.
ok thib@, miod@
|
|
Iinitially I wanted to just lose the static for ddb, but then I realised
they will be needed for the futex implementation as well so its better to
have them in a separate header file.
|
|
buffer as the result of bread_cluster.
ok art@ thib@
|
|
Add pcb_fsbase to the PCB for tracking what the value for the thread
is, and ci_cur_fsbase to struct cpu_info for tracking the CPU's current
value for FS.base, then on return to user-space, skip the setting if the
CPU has the right value already. Non-threaded processes without TLS leave
FS.base zero, which can be conveniently optimized: setting %fs zeros
FS.base for fewer cycles than wrmsr.
ok kettenis@
|
|
ok mikeb@ deraadt@
|
|
to be ok. there is no checksum we could verify and for the moment these
are locally generated packets anyway. and this really is just the stupid
'stealth bridge detection' countermeasure shit (when you want a "stealth"
bridge and explictely ask pf to return RSTs/icmp errors, you need to
seek medical help in any case).
this is needed so that we eventually can move the in_proto_cksum_out (and
its ipvshit counterpart once we get it) calls to after the pf_test calls
in the output routines
ok dlg fondue-kinda-ok claudio
|
|
ok dlg fondue-kinda-ok claudio
|
|
dunno wether there is any hardware that supports icmp cksum offloading,
but that's not the point - we're moving towards a world where the stack
doesn't bother with setting checksums, and lets the hardware do them. in
case the harware can't the output routines cope
ok dlg, claudio kinda too, he's fondueing and thus not reading the diff
but i explained it to him and he agrees
|
|
and it does not exist at all on newer hardware so only map
it on those types we are interested in.
Fixes "PRO/1000 PT (82575EB)" for Sylvain Desveaux and will
also be required for at least 82580.
ok claudio@
|
|
damage kernel memory very much while doing the job. It is not very
pretty yet, but improving it will need some MI work.
ok mlarkin jsg dlg
|
|
"reads OK" claudio@
|
|
ok dlg@ marco@
|
|
|
|
|
|
While it is a terribly cool idea, it's just awful and since noone has stepped
up to the plate to keep it up with the current vop state, retire it to the
attic.
ok krw@, deraadt@, guenther@, miod@.
comments from jmc@
|
|
testing tcp flags.
ok henning@ claudio@
|
|
ok claudio krw
|
|
|
|
"Go ahead" kettenis@
|
|
|
|
when switching to virtual mode in the trap handler. Re-enabling interrupts
whilst in the trap handler for an interrupt makes life interesting.
ok kettenis@
|
|
|
|
This is more than a simple syscall.This expands TLS support quite a bit.
Also linux_sys_clone() handles CLONE_CHILD_CLEARTID, CLONE_CHILD_SETTID,
CLONE_PARENT_SETTID flags as well as the CLONE_SETTLS by doing what
set_thread_area() is doing.
Next on the list is futex support which should allow compat to cope with
newer Linux kernels.
|
|
|
|
ok kettenis@
|
|
the device was reset rather than blindly fail it.
requested by claudio@
|
|
ok henning@ claudio@
|
|
correctly handle this in the failure case.
|
|
shibboleth - NO_CCB. This in no way means this driver works.
ok gcc@ dlg@
|
|
Remember the hub widget number of each node, instead of only the master node.
Use this in xbridge to compute the proper direct DMA map configuration
register value (it needs to embed the hub widget number matching the
physical address range).
This should allow us to pick memory from a different node than the one
we booted from, as the DMA window, if wanted.
|
|
as it's unused and unset.
|
|
the big change is how paths between mpath capable devices and the
kernel are managed.
originally the midlayer would steal the links to the devices and
hide them behind mpath. all the changes an adapter made to a link
(eg activate or detach), the midlayer had to test if it was an mpath
link and then call special mpath code to handle it.
the original code also assumed that all paths behaved the same, but
the reality is that different devices have different command sets
and behaviours. figuring out which behaviour to pick and prioritising
them is basically the same job autoconf does with match and attach.
rather than special casing mpath in the midlayer and reimplimenting
autoconf, this turns paths into actual device drivers with match
and attach routines. after they figure out if the path is active,
they then give it to mpath(4) to use as a backend.
i have written drivers for symmetric access devices (sym(4)) where
all paths to the same logical unit are as good as each other,
lsi/engenio arrays (rdac(4), and emc arrays (emc(4)).
the rdac and emc drivers only detect active paths at attach time,
the do not cope if the controller changes state unless you unplug
the path and plug it in again to retest the active state. they also
do not have support for directing array failover.
operating and hoplugging has been tested with mpii(4), fc and sas
mpi(4), and iscsi via vscsi (claudio did this too).
ok krw@ deraadt@
|
|
and return EOPNOTSUPP directly from the VOP_* functions.
Filesystems should, at some point fill in every function
in the vop_default struct so we can get rid of the 'if'
statements in VOP_*.
|
|
ok kettenis@
|
|
|
|
route-to and friends were introduced making it obsolete. one even
has to look it up int the ipf manual to get and idea what it's
supposed to do. reuse some kernel bits for the upcoming nat64
stuff. "kill it with fire" from mcbride, "what mcbride said"
from mpf, "kill kill kill" and ok henning.
|
|
reloading from kpsl.
ok kettenis@
|
|
one has been weeding it, and it makes life harder.
Toasts of Brennivin for its passing from many; diff ok henning@
|
|
is probing, rather than every time it issues an io.
ok krw@
|
|
future) will try to dma the command buffer to the disk in some way. Use
dma_alloc() to get ahead of this potential failure path.
ok dlg krw
|
|
the caller and the function that the function will not fail to allocate
memory and return a NULL pointer. However, m_dup_pkthdr() violates
this contract, making it possible for functions that pass M_WAITOK to
be surprised in ways that hurt.
Fix this by passing the wait flag all the way down the functions that
actually do the allocation for m_dup_pkthdr() so that we won't be
surprised.
man page update forthcoming
ok claudio@
|
|
|
|
- Use km_alloc for all backend allocations in pools.
- Use km_alloc for the emergmency kentry allocations in uvm_mapent_alloc
- Garbage collect uvm_km_getpage, uvm_km_getpage_pla and uvm_km_putpage
ariane@ ok
|
|
at physical address zero onwards, but instead assume it is controlled by
the dma_constraints range.
This will eventually allow a different window to be selected.
|
|
|
|
on amd64
ok claudio@
|
|
Pointed out and ok mlarkin@
|
|
before entering ddb for real, so that `show registers' displays (what passes
for) sane values for them.
Noticed & prodded by mlarkin@
|
|
in order to skip most of the reassembly logic and try to flush
available tcp segments to the socket, just split it off into its
own function and use it where appropriate.
ok claudio@ henning@
|
|
|