thread stage 5: Separate the inline functions out of sys/buf.h, creating
authorMatthew Dillon <dillon@dragonflybsd.org>
Thu, 19 Jun 2003 01:55:08 +0000 (01:55 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Thu, 19 Jun 2003 01:55:08 +0000 (01:55 +0000)
commit3020e3be3756cae1943fa7319645e49add96f8f7
treed78e7f19f9ac2a3c217f67fc192de64b742ba605
parentfbea3b7582aa4707392899ad6b4daf841fad4e84
thread stage 5: Separate the inline functions out of sys/buf.h, creating
sys/buf2.h (A methodology that will continue as time passes).  This solves
inline vs struct ordering problems.

Do a major cleanup of the globaldata access methodology.  Create a
gcc-cacheable 'mycpu' macro & inline to access per-cpu data.  Atomicy is not
required because we will never change cpus out from under a thread, even if
it gets preempted by an interrupt thread, because we want to be able to
implement per-cpu caches that do not require locked bus cycles or special
instructions.
56 files changed:
sys/bus/cam/scsi/scsi_cd.c
sys/bus/cam/scsi/scsi_da.c
sys/bus/cam/scsi/scsi_pass.c
sys/bus/cam/scsi/scsi_sa.c
sys/cpu/i386/include/cpu.h
sys/dev/disk/ata/ata-disk.c
sys/dev/disk/ata/ata-raid.c
sys/dev/disk/ata/atapi-cd.c
sys/dev/disk/ata/atapi-fd.c
sys/dev/disk/ata/atapi-tape.c
sys/dev/disk/ccd/ccd.c
sys/dev/disk/fd/fd.c
sys/dev/disk/md/md.c
sys/dev/raid/aac/aac_compat.h
sys/dev/raid/amr/amr_compat.h
sys/dev/raid/mlx/mlx_compat.h
sys/dev/raid/twe/twe_compat.h
sys/dev/raid/vinum/vinumhdr.h
sys/i386/i386/genassym.c
sys/i386/i386/machdep.c
sys/i386/include/cpu.h
sys/i386/include/globaldata.h
sys/i386/include/globals.h
sys/i386/include/proc.h
sys/kern/init_main.c
sys/kern/kern_exit.c
sys/kern/kern_resource.c
sys/kern/kern_shutdown.c
sys/kern/kern_subr.c
sys/kern/kern_synch.c
sys/kern/vfs_bio.c
sys/kern/vfs_cluster.c
sys/kern/vfs_subr.c
sys/platform/pc32/i386/genassym.c
sys/platform/pc32/i386/machdep.c
sys/platform/pc32/include/globaldata.h
sys/platform/pc32/include/globals.h
sys/platform/pc32/include/proc.h
sys/platform/vkernel/i386/genassym.c
sys/sys/buf.h
sys/sys/buf2.h [new file with mode: 0644]
sys/sys/proc.h
sys/vfs/mfs/mfs_vfsops.c
sys/vfs/mfs/mfs_vnops.c
sys/vfs/msdosfs/msdosfs_vnops.c
sys/vfs/nfs/nfs_bio.c
sys/vfs/nfs/nfs_serv.c
sys/vfs/nfs/nfs_subs.c
sys/vfs/nfs/nfs_vnops.c
sys/vfs/specfs/spec_vnops.c
sys/vfs/ufs/ffs_balloc.c
sys/vfs/ufs/ffs_softdep.c
sys/vfs/ufs/ffs_vnops.c
sys/vfs/ufs/ufs_disksubr.c
sys/vm/swap_pager.c
sys/vm/vm_pager.c