Age | Commit message (Collapse) | Author |
|
(no crashes in nearly forever)
ok kettenis
|
|
supported it doesn't do any harm), so put the KNOTE() in selwakeup() itself and
remove it from any occurences where both are used, except one for kqueue itself
and one in sys_pipe.c (where the selwakeup is under a PIPE_SEL flag).
Based on a diff from tedu.
ok deraadt
|
|
ok jsing@, miod@
|
|
miod@ deraadt@ ok.
|
|
calls can go directly into selwakeup() safely
long discussion with nicm, murmers of consent from tedu and miod, noone
else seems to care of kqueue is busted as long as it makes their sockets
move data fast... pretty sad.
|
|
than the root disk... annoying.
|
|
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms
|
|
bsd) unless some other object has changed. Rebuild and reinstall
in /usr/src/usr.sbin/config/ after updating!
"I like it" deraadt@
|
|
were only running on the non-PCI models. Many years have passed since then...
Update the bus walking code to support dino and elroy PCI bridges, in order
to identify PCI graphics devices and USB controllers (in order to support
USB keyboards). Also recognize com@ssio, so that high-class four digit B and C
machines (and probably four digit J as well) can configure console from the
boot blocks correctly.
Of course, this is of questionable usefulness, since these console related
routines were written with the 712 in mind, which has a castrated ROM preventing
the user from configuring a serial console. Yet providing a consistent
feature set never hurts.
(three digit J series still need some love, due to the different way of
walking the buses; to be addressed in a later commit, soon)
|
|
Tested by myself, sthen, oga, kettenis, and jasper.
Input from sthen and jasper.
ok kettenis
(Manpage follows shortly.)
|
|
We cannot find gaurantees in the documents that any icache filling from
the cache is terminated by a icache flush or idtlb invalidation, so this is
probably safer, and unlikely to be unsafer.
ok kettenis
|
|
errnos. Note that the error strings are being ignored, since we long ago
decided to not spam the console, and there is no other nice way to use the
errors (without changing the ioctls to pass it back)
The errno is now useful, since we can pass b_error from failing IO up, and
the drive can decide how to use that
ok miod
|
|
|
|
for claudio@ ok deraadt@
|
|
Ok oga@, "the time is now" deraadt@.
|
|
doesn't have a usuable uncachable bit, whack all other mappings of a page
if we are about to create a non-equivalent writable alias by entering a
mapping for it.
ok art@, miod@
|
|
exactly the same the mi could will use if bufinit() is invoked with
bufpages == 0.
|
|
anymore. Get rid of it completely.
|
|
a few arches where toolchain limitations apply) will embed some symbolic
information about the various structs used within the kernel, and have
new ddb commands allowing struct display and some useful information
gathering. Kernel rodata increase varies accross platforms from ~150KB to
~300KB.
This option is not enabled by default.
|
|
for us.
|
|
|
|
evil so we should complain about them until we have a way to fix them.
|
|
No longer allocate a static amount of memory for messages in MD
boot path; message queues, message metadata, and message data now
all use dynamic memory, which means that runtime sysctls should now
be trivial to implement.
Since I'm going to be around all week to fix any breakage, this should
probably just go in now.
|
|
Now instead of the global object hashtable, we have a per object tree.
Testing shows no performance difference and a slight code shrink. OTOH when
locking is more fine grained this should be faster due to lock contention on
uvm.hashlock.
ok thib@, art@.
|
|
after c2k9
allows buffer cache to be extended and grow/shrink dynamically
tested by many, ok oga@, "why not just commit it" deraadt@
|
|
or'ed together, even on platforms where bus_space_barrier() ignores the
barrier argument yet.
|
|
that function. It seems this function was intended to be called with
interrupts disabled but that is not (no longer?) the case. As a result
there were some races accessing the list of interrupt handlers and we would
leave the function with interrupts disabled if there were any interrupts
pending. This could make us end up in the idle loop with interrupts disabled,
which would "hang" the machine.
Found with help from deraadt@
|
|
|
|
of the pcb and using the p_addr member of 'struct proc' to calculate the
address of the kernel stack when switching to virtual mode after taking a trap.
Remove the now unecessary cache flushes; they're actually harmful since they
create non-equivalent aliases. This seems to fix the memory corruption we
have been observing from time to time.
This diff does not rename fpu_curpcb, which is now somewhat incorrectly named.
I hope to change things back again as soon as we are able to map the pcb 1:1.
|
|
|
|
bus_space_alloc() as a bitmask of flags, and not a boolean controlling
cacheability; and make sure the three MI BUS_SPACE_MAP_xxx values documented
in the manual page are defined on all platforms as well.
|
|
batch = pdemask == sva && sva + ~PDE_MASK + 1 <= eva;
with something that's a little bit easier to read.
|
|
range covered by the next PDE and not somewhere in the middle. The old could
have skipped over some valid PTE's causing them to stay behind in the pmap.
Since we would not flush the cache for those pages either this could also
cause memory corruption when dirty cache lines would be written back to
memory at a later stage.
|
|
ok kettenis
|
|
of the bus_space_tag_t it contains; an upcoming implementation will need
to know the rbus_tag_t for which it works at this point.
All callers updated accordingly; no functional change intended.
|
|
logic to be chipset dependent; no functional change yet.
ok kettenis@
|
|
|
|
p->p_stats earlier, and loss of information there can cause spurious
SIGPROF or SIGVTALRM to be delivered. ok kettenis@
|
|
test built and booted by me
ok marco@, deraadt@
|
|
a diff by kettenis but he is gone for a day or so
|
|
separately).
a change at or just before the hackathon has either exposed or added a
very very nasty memory corruption bug that is giving us hell right now.
So in the interest of kernel stability these diffs are being backed out
until such a time as that corruption bug has been found and squashed,
then the ones that are proven good may slowly return.
a quick hitlist of the main commits this backs out:
mine:
uvm_objwire
the lock change in uvm_swap.c
using trees for uvm objects instead of the hash
removing the pgo_releasepg callback.
art@'s:
putting pmap_page_protect(VM_PROT_NONE) in uvm_pagedeactivate() since
all callers called that just prior anyway.
ok beck@, ariane@.
prompted by deraadt@.
|
|
three
commits:
1) The sysctl allowing bufcachepercent to be changed at boot time.
2) The change moving the buffer cache hash chains to a red-black tree
3) The dynamic buffer cache (Which depended on the earlier too).
ok on the backout from marco and todd
|
|
indicates that writedisklabel is trying to find the location for writing
the label. If the lp is messed with, an invalid checksum is written.
done with miod and kettenis, lots of moaning and gnashing of teeth, etc
|
|
allocator.
|
|
bounds information, ie. the zone of the disk that OpenBSD can use. Have each
pre-disklabel parser (MBR, DPME, or per-arch MD disklabel parsers) figure out
this area and pass it up to userland. Then, delete all the same disk parsing
code from disklabel(8) since the kernel passes it up. Lots and lots of - signs
in the disklabel(8) code.
Tested on as many platforms as possible, the fallout will be repaired as time
goes on. To test, use disklabel -d <drive> and validate that the bounds do not
overlap any boot blocks. This same information is used by disklabel -A...
OK for the concept from krw, miod, and drahn
|
|
size on a running system.
ok art@, oga@
|
|
arches. ok todd@ beck@
|
|
global lock, switch the uvm object pages to being kept in a per-object
RB_TREE. Right now this is approximately the same speed, but cleaner.
When biglock usage is reduced this will improve concurrency due to lock
contention..
ok beck@ art@. Thanks to jasper for the speed testing.
|
|
|
|
other BUS_DMA_xxx flag names, and nothing uses it.
ok many@
|