Age | Commit message (Collapse) | Author |
|
safety. The function has to be called in a context where conflicting
pmap updates cannot happen. Otherwise the returned physical address
might not be valid.
Suggested by kettenis@
|
|
conversion. Because pmap_extract() acquires the PTE mutex, a "locking
against myself" panic is triggered if the cache routine gets called in
a context where the mutex is already held.
In the pmap, all calls to HitSyncDCache() are for a whole page. Add a
new cache routine, HitSyncDCachePage(), which gets both the va and the
pa of a page. This removes the need of the va->pa conversion. The new
routine has the same signature as SyncDCachePage(), allowing reuse of
the same routine for cache implementations that do not need differences
between "Hit" and non-"Hit" routines.
With the diff, POWER Indigo2 R8000 boots multiuser again. Tested on sgi
GENERIC-IP27.MP and octeon GENERIC.MP, too.
Diff from miod@, ok kettenis@
|
|
Keep the modified chain pointer and pass it back to the calling code
so that it will get properly accounted for. Change it to m_pullup
since m_pulldown with a zero offset is just as good.
Tested by yasuoka@, myself and mxb at alumni ! chalmers ! se, thanks!
ok yasuoka, mpi
|
|
|
|
|
|
|
|
Only MCS 0 to 7 are supported for now.
Tested by many. There might still be outstanding issues but they now appear
to be rare. I'm putting this in so that additional fixes can be developed
and tested more easily if required. This diff is already quite large for
one commit.
ok deraadt
|
|
with proper names, now that we have the corresponding macros.
|
|
used for indexing something other than ic_sup_rates. Should have been
part of earlier commit.
|
|
but we were checking bits in these parameters with the wrong set of bitmasks.
Negotiating A-MPDUs with some APs failed because of this bug.
ok kettenis@
|
|
Problem found by benno@
ok benno@ kettenis@
|
|
11a and 11b/g mode correctly when the driver supports 11n.
And make sure the result of this funtion is only used to index ic_sup_rates.
Its stated purpose is to help select a legacy rate.
ok sthen jasper kettenis deraadt mpi
|
|
configure ERP once we are sure about our operation mode against the AP.
ok sthen jasper kettenis deraadt mpi
|
|
ok sthen jasper kettenis deraadt mpi
|
|
if there's lingering bugs we'll deal with them in tree.
ok jmatthew@
|
|
for findopenbsd_gpt().
|
|
This should fix some of the odd termination errors people have been seeing
(vmctl status showing running VMs after they have exited/crashed, and
invalid instruction panics on vmptrld during certain races)
This diff also implements dropping the biglock when running a VCPU, and
reacquiring the lock as needed based on the type of exit (normal vs.
external interrupt)
diff supplied by Stefan Kempf <sn.kempf at t-online.de>, many thanks!
|
|
|
|
Pointed out by mlarkin@
|
|
OpenBSD partition. Just one 128-byte stack copy of a single entry.
Problems with EFI installs involving many disks reported by and fix
tested by Thomas Bohl.
Stefan Kempf pointed finger of suspicion at the addition of the 2nd
16K static buffer for softraid GPT and suggested/reviewed several
versions of the diff.
Tweaked and ok jsing@
|
|
ok kettenis@
|
|
ok kettenis@
|
|
|
|
Otherwise the PHY goes undetected on the slave node of a dual-node
Origin 200. The PHY gets enabled by diagnostic checks but only on the
master node. As the attach code will now do the enabling, the checks can
be disabled on reboot, making reboots faster especially on IP27.
Tested on Origin 200 (IP27), Fuel (IP35 with iec), and Origin 350
(IP35 without iec).
Diff from miod@, ok krw@
|
|
oflags & 3 == 3 case. Therefore this depends on vn_open() blocking the
operation later. Probably this meant the ni_pledge request would be too
high, causing transient operation failure, rather than transient operation
passage). Instead of initializing based on the oflags value use the
result of FFLAGS(). I should have done this from the start.
ok semarie
[oflags & 3 == 3 is major dejavu for me]
|
|
to tputchar() and could crash the kernel. Better use cnwrite() in
sendsyslog2() for writing to console. It takes a struct uio which
does the copyin() automatically. In addition cnwrite() outputs to
the real console or to a redirected one, whichever is appropriate.
One drawback is that the syslog priority cannot be stripped off
easily.
OK deraadt@
|
|
|
|
|
|
This syncs our videoio.h with upstream videodev2.h and inlines their
v4l2-controls.h (which was split off from videodev2.h). Another header,
v4l2-common.h, is currently not imported as it is GPL2 licensed.
There will be a second commit just addressing whitespace and formatting. The
current version has only real changes whereas the second commit will bring
videoio.h in line with videodev2.h formatting so that potential syncs in the
future are easier to implement.
Bulk build by ajacoutot@; ok robert@; "you should go for it" deraadt@
|
|
|
|
|
|
kernel lock in the rx and tx path anymore.
While there seems to be a small decrease in forwarding performance with our
default network stack settings, Performance whiel receiving manymore packets
than we can handle is better. And this change opens the road for future
improvements in the network stack.
ok dlg@, mpi@
|
|
the associated pointer incrementing logic.
Reported by Maxim Pugachev. Looks good to tedu@
|
|
the possible number of slots a packet can use on the tx ring.
to make it easier to reserve and account for space on the ring,
half the number of dma descriptors on those chips so the number of
slots can stay the same.
ok claudio@
|
|
when removing a port from a lacp trunk. Part of a larger diff from mpi,
as suggested by mikeb. ok mpi@
|
|
|
|
in inteldrm(4).
The Intel integrated graphics device has a major design flaw where it needs
legacy VGA io access to disable VGA mode completely. This only works if
legacy VGA io routing is setup such that it actually reaches the IGD. This
typically isn't the case if the primary VGA device is a discrete graphics
device. To make sure we don't whack that device we have to temporarily
route legacy VGA io access to the IGD.
Fixes the "black screen" issue reported by Timo Myrra and others.
|
|
Matches what radeondrm(4) already did.
|
|
operations MP-safe. Tested on octeon and sgi (IP27, IP30).
Feedback from kettenis@ long ago
|
|
|
|
|
|
with gotos.
supported by kettenis@, ok sobrado@
|
|
reviewed by jmatthew@
ok kettenis@
|
|
this in turn gives us ifq_is_serialized() and an IFQ_ASSERT_SERIALIZED()
macro.
ok mpi@
|
|
7Y250M0, refuse to do DMA unless the transfer mode has been set. This causes
reads (and presumably writes) to time out.
Unlike the wdc code, this only sets the UltraDMA transfer mode. If we ever
want to support ancient PATA drivers through the atascsi layer, we probably
need to set the PIO and/or MWDMA transfer modes as well.
ok jmatthew@, dlg@)
|
|
ok tb@
|
|
2. Replace a continue statement in an inner loop with goto loop_end
This fixes a simple logical bug found with Coccinelle.
ok kettenis@
|
|
XOR simple queues.
|
|
positions when deciding how much work to do, and to adjust rl_tx_free with
atomic operations; split the flag that indicates whether we're using
timer based interrupts or not out into a separate field so it can be
changed from interrupt context without needing a lock; take the kernel
lock when calling re_init and re_start from interrupt context; add an
interrupt barrier in re_stop; and finally mark the interrupt handler
as mpsafe.
started by Jim Smith a while ago, mostly finished up at n2k15
tested by dlg@, chris@ and Dimitris Papastamos on various hardware
ok dlg@
|
|
from Martin Natano (and also reported by Stefan Kempf)
|