cegger
df7f595ecd
Ansify function definitions w/o arguments. Generated with sed.
2009-03-18 10:22:21 +00:00
yamt
c69852d701
vmem_rehash_all: remove a debug printf slipped in with the previous changes.
2009-02-18 13:33:46 +00:00
yamt
f68e4571e5
- fix vmem unittest. rename VMEM_DEBUG so that it won't be abused again.
...
- reimplement vmem sanity checks with less code duplication.
- reimplement ddb vmem-related commands in a more consistent ways.
remove automatic whatis.
2009-02-18 13:31:59 +00:00
yamt
f4fa6bbef9
bump VMEM_HASHSIZE_MAX from 8192 to 65536.
2009-01-25 13:08:56 +00:00
pooka
8b32829eeb
Change VMEM_HASHSIZE_INIT from 1 to 128. This mainly benefits
...
quick-running or non-threaded rump jobs, where the rehash algorithm
does not have a chance to run. For other cases it doesn't make
much difference, since the size will grow or decrease when the
rehash algorithm runs for the first time (t=10*hz currently).
2009-01-23 13:45:06 +00:00
ad
50f32f7a93
Put vm_lock into its own cache line.
2008-12-15 10:26:10 +00:00
christos
15e362cca8
fix endif comment
2008-12-10 18:07:30 +00:00
christos
0bff293dd2
disable VMEM_DEBUG by default.
2008-12-10 17:32:32 +00:00
christos
10fdeaec16
vmem_check_sanity is just too expensive for DEBUG. Enable it only for
...
VMEM_DEBUG.
2008-12-10 16:59:12 +00:00
cegger
33d827105a
vmem_check_sanity: refactor overlapping check for better readability.
...
Move use of vmem_check_sanity into locked sections. Pointed out by ad@
2008-12-09 07:54:59 +00:00
cegger
4dfe7b7870
ddb: make show vmem print exact span type
...
vmem_check_sanity: print exact span type
vmem_add1: KASSERT span types
2008-12-07 22:39:01 +00:00
cegger
f132fda3fe
vmem_check_sanity: fix check to correctly detect even exactly duplicate spans.
2008-12-07 11:49:51 +00:00
cegger
bb1d17f443
build fix: make i386 build again
2008-12-07 09:40:42 +00:00
cegger
2aa8aa0f8f
Spans may never overlap. Overlapping spans mean memory corruption
...
when used by kmem(9), for example.
Do sanity checks to detect such spans on DEBUG kernels.
2008-12-07 02:21:04 +00:00
cegger
10de0e2b14
ddb: new 'show vmem' and 'show all vmems' commands.
...
Useful to inspect vmem(9) structures.
2008-12-07 00:51:15 +00:00
yamt
a67bae0b7b
- simplify ASSERT_SLEEPABLE.
...
- move it from proc.h to systm.h.
- add some more checks.
- make it a little more lkm friendly.
2008-03-17 08:27:50 +00:00
ad
fef8681585
Mark some callouts/workqueues/kthreads MPSAFE.
2008-01-24 13:57:52 +00:00
ad
0664a0459b
Start detangling lock.h from intr.h. This is likely to cause short term
...
breakage, but the mess of dependencies has been regularly breaking the
build recently anyhow.
2008-01-04 21:17:40 +00:00
yamt
d2ade1bf0f
vmem_whatis: print "free" btags as well.
2007-12-22 03:27:10 +00:00
yamt
bf162a4cf7
vmem_alloc: round-up size only when necessary. suggested by Andrew Doran.
2007-12-22 01:11:37 +00:00
yamt
0c38201391
add ddb "whatis" command. inspired from solaris ::whatis dcmd.
2007-12-13 02:45:09 +00:00
ad
598ab03ad0
Match the docs: MUTEX_DRIVER/SPIN are now only for porting code written
...
for Solaris.
2007-12-05 07:06:50 +00:00
ad
d18c6ca4de
Merge from vmlocking:
...
- pool_cache changes.
- Debugger/procfs locking fixes.
- Other minor changes.
2007-11-07 00:23:13 +00:00
ad
d831186d55
Merge scheduler changes from the vmlocking branch. All discussed on
...
tech-kern:
- Invert priority space so that zero is the lowest priority. Rearrange
number and type of priority levels into bands. Add new bands like
'kernel real time'.
- Ignore the priority level passed to tsleep. Compute priority for
sleep dynamically.
- For SCHED_4BSD, make priority adjustment per-LWP, not per-process.
2007-11-06 00:42:39 +00:00
yamt
1ea0b1c177
vmem_rehash_all: remove no longer unnecessary splvm/splx pairs.
2007-10-23 11:29:06 +00:00
rmind
20bbb87e34
Implementation of per-CPU work-queues support for workqueue(9) interface.
...
WQ_PERCPU flag for workqueue and additional argument for workqueue_enqueue()
to assign a CPU might be used. Notes:
- For now, the list is used for workqueue_queue, which is non-optimal,
and will be changed with array, where index would be CPU ID.
- The data structures should be changed to be cache-friendly.
Reviewed by: <yamt>, <tech-kern>
2007-07-12 20:39:56 +00:00
ad
88ab7da936
Merge some of the less invasive changes from the vmlocking branch:
...
- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements
2007-07-09 20:51:58 +00:00
yamt
c69798c4e6
periodically resize vmem hash table.
2007-06-17 13:34:42 +00:00
hubertf
3bfc0c42ee
Remove duplicate #include's
...
From: Slava Semushin <php-coder@altlinux.ru>
2007-03-26 22:52:44 +00:00
ad
59d979c5f1
Pass an ipl argument to pool_init/POOL_INIT to be used when initializing
...
the pool's lock.
2007-03-12 18:18:22 +00:00
ad
ba01c7d177
qc_init: don't leave pointers to destroyed pools hanging or we will
...
allocate from them later.
2007-03-10 15:54:14 +00:00
thorpej
4f3d5a9cc0
TRUE -> true, FALSE -> false
2007-02-22 06:34:42 +00:00
thorpej
712239e366
Replace the Mach-derived boolean_t type with the C99 bool type. A
...
future commit will replace use of TRUE and FALSE with true and false.
2007-02-21 22:59:35 +00:00
yamt
9ef6d9f3e5
qc_reap, qc_destroy: simplify.
2006-11-18 07:51:54 +00:00
yamt
c683b6561f
vmem_destroy: don't forget to clean up qcache_t.
2006-11-18 07:51:34 +00:00
yamt
23213de881
vmem: share qcache_t if itemsperpage is same.
2006-11-18 07:51:06 +00:00
yamt
ec585a4e4d
protect bt_poolcache by splvm because it's shared among all arenas
...
including ones which can be used in interrupt context.
PR/35042 from Manuel Bouyer.
2006-11-12 22:28:17 +00:00
yamt
1de5b4994d
vmem_xalloc: plug memory leak on error.
2006-11-09 10:08:53 +00:00
yamt
3aef238dc0
- define some macros and use them.
...
- fix an off-by-one in testcode.
2006-11-04 13:26:22 +00:00
yamt
e1b6afe136
todo.
2006-11-04 13:25:52 +00:00
yamt
1a7bc55dcc
remove some __unused from function parameters.
2006-11-01 10:17:58 +00:00
yamt
17685f3fdc
vmem: use correct function names for ASSERT_SLEEPABLE.
2006-10-27 15:05:16 +00:00
yamt
5239dc5a67
qc_init: fix a problem introduced by rev.1.13.
...
namely, use quantum-size alignment rather than no alignment.
PR/34879 from Peter Postma.
2006-10-23 13:36:33 +00:00
yamt
982b4f66e8
remove a todo which has been done.
2006-10-22 10:19:25 +00:00
yamt
0d14f90ef6
qc_init: when initializing pools, use align==1 (ie. no alignment)
...
rather than align==0, which is converted to ALIGN(1) by pool_init.
2006-10-22 09:42:30 +00:00
yamt
04d4eff807
vmem_alloc: use __unused rather than a cryptic
...
"do { if (&strat) {} } while (/* CONSTCOND */ 0);"
2006-10-17 08:54:03 +00:00
dogcow
3e1f2a8ad1
another day, another __unused sprinkle.
2006-10-16 16:05:34 +00:00
yamt
44923ac48a
implement vmem_xalloc/xfree.
...
XXX importing needs some more thoughts.
2006-10-16 13:09:42 +00:00
christos
4d595fd7b1
- sprinkle __unused on function decls.
...
- fix a couple of unused bugs
- no more -Wno-unused for i386
2006-10-12 01:30:41 +00:00
martin
b87950a9f6
Use %zu for size_t
2006-08-21 09:05:22 +00:00