Age | Commit message (Collapse) | Author |
|
after analysis and testing. when flushing a large mmapped file, we can
eat up all the reserve bufs, but there's a good chance there will be more
clean ones available.
ok beck kettenis
|
|
|
|
|
|
<machine/pmap.h> where it belongs, and compensate in <uvm/uvm_extern.h>
by including <uvm/uvm_pmap.h> before <uvm/uvm_page.h>. Tested on all
MACHINE_ARCH but amd64 and i386 (and hppa64).
|
|
|
|
|
|
like the rest of tmpfs
|
|
A few tweaks asked by kettenis@
(code doesn't affect systems without mounted tmpfs at all)
okay beck@
|
|
list traversals with LIST_FOREACH.
ok beck@ krw@
|
|
overloading of that thing.
the only hardware that seems to care about cylinders in our tree
are floppy drives, and the drivers for those calculate their own
cylinders from logical block addresses and ignore whatever the rest
of the kernel thought b_cylinders should be.
most of this diff is moving the floppy drivers to using b_resid as
a resid and using that as part of the calculation for real cylinder
values.
the rest of the diff is getting rid of the useless assignments to
b_cylinder that dont get used by anything (now that disksort is
gone).
ok miod@
|
|
Resource maps have been removed more than 10 years ago, it's about time to
update comments to better match reality.
No functional change.
|
|
aren't being passed to them. Fix UVM_WAIT() to not pass PNORELOCK to
tsleep(), as that flag only does something with msleep().
ok beck@ dlg@
|
|
for completing swap io against files. this in turn bloated struct buf.
this moves from using workq_tasks to the task api, but stores the task
handler in vndbuf which is allocated specially for every io in this path
anyway.
ok kettenis@ beck@
|
|
hibernate can use place the data.
ok mlarkin
|
|
space (in case we need to place a hibernate signature there)
ok miod
|
|
|
|
|
|
(u_int64_t) instead of (daddr_t) when casting a variable in an
expression passed to DL_SETDSIZE().
Change a variable counting open files from daddr_t to int64_t.
ok deraadt@ with the tweak to fix that pesky expression.
|
|
|
|
ok maja@, miod@, jsg@
|
|
will come back soon.
ok deraadt@
|
|
set the wire count on the pages to 0 before we call uvm_pagefree() on them,
just like we do in buf_free_pages(). Otherwise the wired pages counter goes
negative. While there, also sprinkle some KASSERTs in there that
buf_free_pages() has as well.
ok beck@
|
|
This change splits the buffer cache free lists into lists of dma reachable
buffers and high memory buffers based on the ranges returned by pmemrange.
Buffers move from dma to high memory as they age, but are flipped to dma
reachable memory if IO is needed to/from and high mem buffer. The total
amount of buffers allocated is now bufcachepercent of both the dma and
the high memory region.
This change allows the use of large buffer caches on amd64 using more than
4 GB of memory
ok tedu@ krw@ - testing by many.
|
|
test period; i think 3 years ago the last bugs fell out.
ok otto beck others
|
|
DRM_I915_GEM_MMAP and DRM_I915_GEM_MMAP_GTT ioctls to be compatible with
Linux. This also is the first step that moves us away from accessing all
graphics memory through the GTT, which should make things faster.
ok tedu@ (for the uvm bits)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
u areas since quite a few years now.
|
|
pointed out by jsg@
ok tedu@
|
|
then move it up. previous revision would leave addr uninitialized.
pointed out by oga at nicotinebsd.org
|
|
allocations have been made, open it up. this is a variation on a previous
change that was lost in the great uvm map rewrite. allows some platforms,
notably i386, to fully utilize their address space.
|
|
Initial diff to replace unclear short variable name "nd" by
"nfs_diskless" and to display the real nfs path to swap in pstat -s by
deraadt@
Testing by me revealed diskless swap automount was broken since some
time. Fix this by passing and using the correct vnode in nfs_diskless
to swapmount().
Lots of input / help deraadt@, tweaks by deraadt@
OK deraadt@
|
|
|
|
ok tedu
|
|
machines where atomic ops aren't so simple.
ok beck deraadt miod
|
|
to keep definitions our of user space. The MD files now follow a consistant
order -- all namespace intrusion is at the tail can be cleaned up
independently. locore, bootblocks, and libkvm still see enough visibility to
build. Checked on 90% of platforms...
|
|
step 3 - re-merge 1.116 to 1.118
|
|
step 2 - re-merge 1.119 (the WAITOK diff)
|
|
step 1 - backout 1.116 to 1.119
|
|
This fix actually by mikeb@, this needs thorough testing to verify
it doesn't bring up other issues in what it hid.
ok deraadt@
|
|
Spotted by oga@nicotinebsd.org, with help from dhill@. Fix by me.
ok miod@
|
|
of times. No function change but makes the code a bit smaller.
ok mpi@
|
|
instead of two, building upon the knowledge of the state uvm_pagealloc_pg()
leaves the uvm_page in.
ok mpi@
|
|
deadlock ourselves - based on an infrequent hang caught by sthen, and
diagnosed by kettenis and me. Fix after some iterations is to simply
call uvm_map_allocate and allocate the map entry before grabbing the
lock so we don't wait while holding the lock.
ok miod@ kettenis@
|
|
It was removed as this function was redone to use pmemrange in mid 2010
with the result that kernel malloc and other users of this function can
consume the page daemon reserve and run us out of memory.
ok kettenis@
|