freebsd-nq/sys/sys
Poul-Henning Kamp 6c325a2a21 Currently (almost) all filesystems maintain a local inode hash table
to get from (mount + inode) to vnode.  These tables are mostly
copy&pasted from UFS, sized based on desiredvnodes and therefore
quite large (128K-512K).  Several filesystems are buggy enough that
they allocate the hash table even before they know if they will
ever be used or not.

Add "vfs_hash", a system wide hash table, which will replace all
the per-filesystem hash-tables.

The fields we add to struct vnode will more or less be saved in
the respective filesystems inodes.

Having one central implementation will save code and will allow us
to justify the complexity of code to dynamically (re)size the hash
at a later point.
2005-03-14 10:01:29 +00:00
..
_iovec.h
_label.h
_lock.h
_mutex.h
_null.h
_semaphore.h
_sigset.h
_task.h
_timespec.h
_timeval.h
_types.h
aac_ioctl.h
acct.h
acl.h
agpio.h
aio.h
alq.h
assym.h
ata.h
bio.h
bitstring.h
blist.h
buf.h make cluster_callback() static 2005-02-10 12:17:48 +00:00
bufobj.h Try to unbreak the vnode locking around vop_reclaim() (based mostly on 2005-02-19 11:44:57 +00:00
bus_dma.h
bus.h Introduce defines for different levels of match in the bus probe routine to 2005-02-24 19:22:54 +00:00
callout.h
cdefs.h The macros __GNUCLIKE_ATTRIBUTE_PRINTF and 2005-03-07 15:40:25 +00:00
cdio.h
cdrio.h
chio.h
clist.h
clock.h
condvar.h
conf.h Fix signedness of minor2unit(). 2005-03-08 10:40:03 +00:00
cons.h
consio.h
copyright.h
cpu.h Add a new field to struct cf_setting for special values. These are driver- 2005-02-19 06:13:26 +00:00
ctype.h
dataacq.h
device_port.h
devicestat.h
digiio.h
dir.h netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
dirent.h
disk.h
disklabel.h
diskmbr.h
diskpc98.h
dkstat.h
domain.h
dvdio.h
elf32.h
elf64.h
elf_common.h
elf_generic.h
endian.h
errno.h
eui64.h
event.h Use kern_kevent instead of the stackgap for 32bit syscall wrapping. 2005-03-01 17:45:55 +00:00
eventhandler.h
eventvar.h
exec.h
extattr.h
fbio.h
fcntl.h
fdcio.h
file.h Make some file/filedesc related functions static 2005-02-10 12:27:58 +00:00
filedesc.h Make some file/filedesc related functions static 2005-02-10 12:27:58 +00:00
filio.h Add ioctl to ask DEVFS about the name of device. 2005-03-08 21:32:19 +00:00
fnv_hash.h
gmon.h
gpt.h
iconv.h
imgact_aout.h
imgact_elf.h
imgact.h Welcome to the 21st century: increase MAXSHELLCMDLEN from 128 bytes to 2005-02-25 11:49:42 +00:00
inflate.h
interrupt.h
ioccom.h
ioctl_compat.h
ioctl.h netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
ipc.h
jail.h Add a new sysctl, "security.jail.chflags_allowed", which controls the 2005-02-08 21:31:11 +00:00
joystick.h
kbio.h
kdb.h
kenv.h
kernel.h
kerneldump.h
kobj.h
kse.h
kthread.h
ktr.h Addendum to netchild's C compiler abstraction mega-patch which somehow 2005-03-04 21:26:07 +00:00
ktrace.h
libkern.h Add strspn() to libkern. 2005-02-10 20:39:39 +00:00
limits.h
linedisc.h
link_aout.h
link_elf.h
linker_set.h netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
linker.h
lock.h
lockf.h
lockmgr.h
mac_policy.h
mac.h
malloc.h
mbpool.h
mbuf.h The m_ext reference counts are potentially shared and modified 2005-03-06 20:09:00 +00:00
mchain.h
md4.h
md5.h MD5Pad() should never have been exposed. 2005-02-10 12:20:42 +00:00
mdioctl.h
memrange.h
mman.h
module.h
mount.h Remove VFS_START(). Its original purpose involved the mfs filesystem, 2005-02-20 23:02:20 +00:00
mouse.h
msg.h
msgbuf.h
mtio.h
mutex.h Add macro NET_CALLOUT_MPSAFE, which should be used when initializing 2005-03-01 11:54:46 +00:00
namei.h
nlist_aout.h
param.h Make MSG_NOSIGNAL available to native programs. 2005-03-09 00:17:33 +00:00
pciio.h
pcpu.h
pioctl.h
pipe.h
poll.h
posix4.h
power.h
priority.h
proc.h Allocate umtx_q from heap instead of stack, this avoids 2005-03-05 09:15:03 +00:00
procfs.h
protosw.h
ptio.h
ptrace.h
queue.h netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
random.h
reboot.h
regression.h
resource.h
resourcevar.h
rman.h
rtprio.h
runq.h
sbuf.h
sched.h
select.h
selinfo.h
sem.h
sema.h
semaphore.h
serial.h
sf_buf.h
shm.h
sigio.h
signal.h
signalvar.h
sleepqueue.h
smp.h
snoop.h
socket.h Make MSG_NOSIGNAL available to native programs. 2005-03-09 00:17:33 +00:00
socketvar.h Move the logic implementing retrieval of the SO_ACCEPTFILTER socket option 2005-03-12 12:57:18 +00:00
sockio.h
soundcard.h
stat.h
statvfs.h
stddef.h
stdint.h
sun_disklabel.h
sx.h
syscall.h regen 2005-03-01 17:44:34 +00:00
syscall.mk regen 2005-03-01 17:44:34 +00:00
syscallsubr.h regen 2005-03-01 17:44:34 +00:00
sysctl.h Add a sysctl that records the amount of physical memory in the machine. 2005-02-28 21:42:56 +00:00
sysent.h
syslimits.h netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
syslog.h
sysproto.h regen 2005-03-01 17:44:34 +00:00
systm.h Reengineer subr_unit 2005-03-08 10:40:48 +00:00
taskqueue.h
termios.h
thr.h
tiio.h
time.h
timeb.h
timepps.h
timers.h
times.h
timespec.h
timetc.h
timex.h
tree.h
tty.h
ttychars.h
ttycom.h
ttydefaults.h
ttydev.h
turnstile.h
types.h
ucontext.h
ucred.h
uio.h
umtx.h Allocate umtx_q from heap instead of stack, this avoids 2005-03-05 09:15:03 +00:00
un.h
unistd.h
unpcb.h
user.h
utsname.h
uuid.h
vmmeter.h
vnode.h Currently (almost) all filesystems maintain a local inode hash table 2005-03-14 10:01:29 +00:00
wait.h
watchdog.h
xrpuio.h