Age | Commit message (Collapse) | Author |
|
we block all interrupts that can grab the kernel lock. The simplest way to
achieve this is to make sure mutexes always raise the ipl to the highest
level that has interrupts that grab the kernel lock. This will allow us
to have "mpsafe" interrupt handlers at lower priority levels.
No change for non-MULTIPROCESSOR kernels.
ok matthew@
|
|
is should return D3. It should return the current power state.
ok kettenis mlarkin
|
|
cleaning up some shutdown-hook related code on the way.
(A few drivers related to sparc are still skipped at kettenis' request)
ok kettenis mlarkin, tested by many others too
|
|
kernel lock upon entry through a new IPL_MPSAFE flag/level.
|
|
support to reload bindings after suspend/resume and to update cachability
flags in the address translation table entries.
|
|
ok guenther millert kettenis
|
|
wdog_shutdown() for external usage.
|
|
paths are reflexive. It is now possible to fail part-way through a
suspend sequence, and recover along the resume code path.
Split DVACT_SUSPEND by adding a new DVACT_POWERDOWN method is used
after hibernate (and suspend too) to finish the job. Some drivers
must be converted at the same time to use this instead of shutdown hooks
(the others will follow at a later time)
ok kettenis mlarkin
|
|
This is a fixed version reinstating the previous commit, fix from
Christian Ehrhardt, same fix from brad@.
|
|
|
|
Based on a diff from Christian Ehrhardt.
|
|
|
|
|
|
ok miod
|
|
failures to be neglected; ok markus
|
|
diffability with the amd64 codebase.
|
|
safety panic from occuring.
Found the hard way by nick@
|
|
nit while I'm there.
|
|
accidentally use ISA or EISA interrupt mappings on PCI busses.
ok jsg@
|
|
space and not noticing because they only test on amd64. So enforce alignment
there as well, at least for a little while such that we find those bugs and
force people to fix them.
|
|
This mandatory function will get invoked in pci_probe_device(), and allows
a pci host driver to alter the pci_attach_args passed to a device when
attaching.
This function will also, if returning non-zero, cause the device to be
skipped completely during all the phases of the PCI device discovery
(i.e. ressource enumeration, ressource assignment, and actual attachment).
This particular feature is experimental and might be reverted in the future
(or the scope narrowed to device attachment only).
A dummy #define pci_probe_device_hook() 0 is added to all platforms except
sgi, where real functions (currently only returning 0) are added; real meat
will be added shortly.
Discussed at s2k11, no objection from the usual suspects.
|
|
ok deraadt@
|
|
- Intel chipset supporting Pentium 4 or later.
- Any AMD chipset made in this century.
- Any NVIDIA chipset that has PCIe.
Explicitly disable MSI on chipsets that connect to the CPU over HyperTransport.
Enabling MSI on those systems is handled by the HyperTransport support code
in our PCI subsystem.
|
|
|
|
progress. The code is effectively disabled as long as PCI_FLAGS_MSI_ENABLED
doesn't get set for the root PCI bus.
|
|
interrupts. It is irreleveant, confuses people and the information is
available in pcidump(8) output anyway.
ok oga@, jsg@, deraadt@
|
|
contains key material (note, that is not true in all drivers... hence
not always neccessary)
discussed with mikeb
|
|
explicit_bzero() where required
ok markus mikeb
|
|
devices on AMD Family 0Fh processors.
|
|
advertised in the MCFG table, and fall back on the traditional method for
other busses. Fixes issue reported by henning@.
|
|
access to PCIe extended configuration space access on modern i386 and amd64
machines.
|
|
the hardware crypto accelerator land. This fixes aes-ni, via xcrypt,
glxsb(4), hifn(4), safe(4) and ubsec(4) drivers.
Original commit message by angelos:
Don't keep the last blocksize-bytes of ciphertext for use as the next
plaintext's IV, in CBC mode. Use arc4random() to acquire fresh IVs per
message.
with and ok deraadt, ok markus, djm
|
|
given pcitag_t configuration address space. Currently, all pci controllers
will return the usual 0x100 bytes of PCI configuration space, but this will
eventually change on PCIe-capable controlers.
ok kettenis@
|
|
uncommenting it is intentional.
ok deraadt@
|
|
Specific features of the companion chip will be handled in MD land.
Okay deraadt@.
|
|
defines for the constants used while mapping.
Okay miod@, deraadt@.
|
|
|
|
ok pirofti
|
|
current crypto operation to finish but doesn't do that yet.
The suspend and resume operations assume that SB_GLD_MSR_CTRL gets
trashed
ok pirofti
|
|
we expect some specific register restoration will be needed here later
too.
ok pirofti
|
|
compiler from doing stupid things like reordering stores around it. There is
some debate whether this will be enough for newer versions of GCC and LLVM.
If this is indeed deemed necessary, this will be addressed in a future diff.
ok miod@, oga@
|
|
DVACT_SUSPEND, therefore DVACT_QUIECE can do standard sleeping operations
to get ready.
Discussed quite a while back with kettenis and jakemsr, oga suddenly needed
it as well and wrote half of it, so it was time to finish it.
proofread by miod.
|
|
|
|
ok kettenis
|
|
|
|
|
|
Simplify resource parsing function to use buffer argument
Convert namespace linked lists to use queue macros
ok marco@, deraadt@
|
|
|
|
ok kettenis@
|
|
are required to detect that.
Change the function to take a wait argument (used in nfs server, but
M_NOWAIT everywhere else for now) and to return an error
ok claudio@ henning@ krw@
|