mirror of
https://github.com/opnsense/src.git
synced 2026-03-14 14:42:40 -04:00
The current notion of an active vnode is eliminated. Vnodes transition between 0<->1 hold counts all the time and the associated traversal between different lists induces significant scalability problems in certain workloads. Introduce a global list containing all allocated vnodes. They get unlinked only when UMA reclaims memory and are only requeued when hold count reaches 0. Sample result from an incremental make -s -j 104 bzImage on tmpfs: stock: 118.55s user 3649.73s system 7479% cpu 50.382 total patched: 122.38s user 1780.45s system 6242% cpu 30.480 total Reviewed by: jeff Tested by: pho (in a larger patch, previous version) Differential Revision: https://reviews.freebsd.org/D22997 |
||
|---|---|---|
| .. | ||
| bootsect.h | ||
| bpb.h | ||
| denode.h | ||
| direntry.h | ||
| fat.h | ||
| msdosfs_conv.c | ||
| msdosfs_denode.c | ||
| msdosfs_fat.c | ||
| msdosfs_iconv.c | ||
| msdosfs_lookup.c | ||
| msdosfs_vfsops.c | ||
| msdosfs_vnops.c | ||
| msdosfsmount.h | ||