freebsd-dev/sys/kern
John Baldwin 01c04d2de9 Change the way we ensure td_ucred is NULL if DIAGNOSTIC is defined.
Instead of caching the ucred reference, just go ahead and eat the
decerement and increment of the refcount.  Now that Giant is pushed down
into crfree(), we no longer have to get Giant in the common case.  In the
case when we are actually free'ing the ucred, we would normally free it on
the next kernel entry, so the cost there is not new, just in a different
place.  This also removse td_cache_ucred from struct thread.  This is
still only done #ifdef DIAGNOSTIC.

[ missed this file in the previous commit ]

Tested on:	i386, alpha
2002-03-20 21:12:04 +00:00
..
bus_if.m Alter the return value and arguments of the GET_RESOURCE_LIST bus method. 2000-11-28 06:49:15 +00:00
device_if.m
genassym.sh Allow one to specify the AWK used in the environment(commandline). 2002-02-11 03:54:30 +00:00
imgact_aout.c Remove __P. 2002-03-19 21:25:46 +00:00
imgact_elf.c Remove __P. 2002-03-19 21:25:46 +00:00
imgact_gzip.c Remove __P. 2002-03-19 21:25:46 +00:00
imgact_shell.c Return a more meaningful errno when the length of the interpreter 2001-11-28 03:26:58 +00:00
inflate.c Remove __P. 2002-03-19 21:25:46 +00:00
init_main.c Move the mount of the root filesystem to happen in the init process before 2002-03-08 10:33:11 +00:00
init_sysent.c Part II: update various mechanically generated files to allow for new 2002-03-05 16:13:01 +00:00
kern_acct.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_acl.c Fix a gcc-3.1+ warning. 2002-03-19 11:02:06 +00:00
kern_cap.c - Attempt to help declutter kern. sysctl by moving security out from 2002-01-16 06:55:30 +00:00
kern_clock.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_condvar.c In a threaded world, differnt priorirites become properties of 2002-02-11 20:37:54 +00:00
kern_conf.c Make the proposed name arg to dev_stdclone() const. 2002-03-10 10:50:05 +00:00
kern_descrip.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
kern_environment.c Fix an inverted test csae. Success of getenv() is determined by a return 2001-10-25 17:22:31 +00:00
kern_event.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
kern_exec.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_exit.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
kern_fork.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
kern_idle.c Pre-KSE/M3 commit. 2002-02-07 20:58:47 +00:00
kern_intr.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_jail.c Make getcredhostname() take a buffer and the buffer's size 2002-02-27 16:43:20 +00:00
kern_kthread.c Fix a couple of style bugs introduced (or touched by) previous commit. 2002-02-07 23:06:26 +00:00
kern_ktr.c Read KTR_CPU into a temporary variable so that we use a consistent value 2002-03-08 18:55:59 +00:00
kern_ktrace.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_linker.c - Change a check of securelevel to securelevel_gt() call in order to help 2002-03-20 16:03:42 +00:00
kern_lock.c Change wmesg to const char * instead of char * 2002-03-05 17:45:12 +00:00
kern_lockf.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_malloc.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_mib.c Simple p_ucred -> td_ucred changes to start using the per-thread ucred 2002-02-27 18:32:23 +00:00
kern_module.c - Lock down the ``module'' structure by adding an SX lock that is used by 2002-03-18 07:45:30 +00:00
kern_mtxpool.c Rename SI_SUB_MUTEX to SI_SUB_MTX_POOL to make the name at all accurate. 2002-03-13 23:48:08 +00:00
kern_mutex.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_ntptime.c Revise timercounters to use binary fixed point format internally. 2002-02-07 21:21:55 +00:00
kern_physio.c
kern_poll.c Make the DEVICE_POLLING code compile with -Werror and in LINT 2002-03-09 08:02:52 +00:00
kern_proc.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
kern_prot.c - Push down Giant into crfree() in the case that we actually free a ucred. 2002-03-20 21:00:50 +00:00
kern_random.c Load the current timecounter into tc. The timecounter global can change 2002-02-18 19:49:30 +00:00
kern_resource.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_sema.c Repeat after me -- "Use of ANSI string concatenation can be bad." 2001-12-10 05:40:12 +00:00
kern_shutdown.c Add needed includes of machine/smp.h, remove nested include in sys/smp.h 2002-03-07 04:43:51 +00:00
kern_sig.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_subr.c In a threaded world, differnt priorirites become properties of 2002-02-11 20:37:54 +00:00
kern_switch.c Rename runq_find() to runq_findproc(), and hide it behind #ifdef DIAGNOSTIC, 2002-03-06 15:34:07 +00:00
kern_sx.c Invert the test of sx_xholder for SX_LOCKED. We need to warn if a 2002-01-18 09:21:15 +00:00
kern_synch.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_syscalls.c - Lock down the ``module'' structure by adding an SX lock that is used by 2002-03-18 07:45:30 +00:00
kern_sysctl.c Simple p_ucred -> td_ucred changes to start using the per-thread ucred 2002-02-27 18:32:23 +00:00
kern_tc.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_time.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_timeout.c Remove __P. 2002-03-19 21:25:46 +00:00
kern_xxx.c KSE Milestone 2 2001-09-12 08:38:13 +00:00
ksched.c In a threaded world, differnt priorirites become properties of 2002-02-11 20:37:54 +00:00
link_aout.c Simple p_ucred -> td_ucred changes to start using the per-thread ucred 2002-02-27 18:32:23 +00:00
link_elf_obj.c Simple p_ucred -> td_ucred changes to start using the per-thread ucred 2002-02-27 18:32:23 +00:00
link_elf.c Simple p_ucred -> td_ucred changes to start using the per-thread ucred 2002-02-27 18:32:23 +00:00
linker_if.m Add the sysctl "kern.function_list", which currently exports all 2001-10-30 15:21:45 +00:00
Make.tags.inc Don't hardcode /sys when making tags, instead use ${.CURDIR}/.. this 2002-02-27 10:07:15 +00:00
Makefile Don't generate <sys/syscalls-hide.h> it has never had any users anywhere in 2001-10-13 09:17:49 +00:00
makeobjops.pl Switch warnings and strict back on again in a way that's compatible 2001-11-16 02:02:42 +00:00
makesyscalls.sh don't generate files with __P. 2002-03-19 20:48:32 +00:00
md4c.c Import kernel part of SMB/CIFS requester. 2001-04-10 07:59:06 +00:00
md5c.c Add ia64 support. 2000-09-29 13:36:47 +00:00
p1003_1b.c Pre-KSE/M3 commit. 2002-02-07 20:58:47 +00:00
posix4_mib.c
subr_acl_posix1e.c Fix a gcc-3.1+ warning. 2002-03-19 11:02:06 +00:00
subr_autoconf.c Remove __P. 2002-03-19 21:25:46 +00:00
subr_blist.c With Alfred's permission, remove vm_mtx in favor of a fine-grained approach 2001-07-04 16:20:28 +00:00
subr_bus.c Don't (blindly) truncate the unit number to 4 digits when formatting the 2002-03-06 11:34:02 +00:00
subr_clist.c Remove __P. 2002-03-19 21:25:46 +00:00
subr_devstat.c GC: BIO_ORDERED, various infrastructure dealing with BIO_ORDERED. 2002-02-22 09:26:35 +00:00
subr_disk.c Make the disk_clone() routine more robust for abuse. 2002-03-11 08:08:02 +00:00
subr_disklabel.c GC: BIO_ORDERED, various infrastructure dealing with BIO_ORDERED. 2002-02-22 09:26:35 +00:00
subr_diskmbr.c Remove __P. 2002-03-19 21:25:46 +00:00
subr_diskslice.c Remove __P. 2002-03-19 21:25:46 +00:00
subr_eventhandler.c KSE Milestone 2 2001-09-12 08:38:13 +00:00
subr_hints.c Fix a fatal type mismatch (char *static_env; vs char static_env[]). 2001-09-17 21:27:41 +00:00
subr_kobj.c Convert more malloc+bzero to malloc+M_ZERO. 2000-12-08 21:51:06 +00:00
subr_log.c Use the passed in thread to selrecord() instead of curthread. 2001-09-21 22:46:54 +00:00
subr_mbuf.c Fix bug in mb_alloc that made systems configured with 2002-03-03 22:10:04 +00:00
subr_mchain.c Add support for iovcnt greater than 1. This should resolve problems 2002-02-21 16:23:38 +00:00
subr_module.c Preceed/preceeding are not english words. Use precede and preceding. 2001-02-18 10:43:53 +00:00
subr_param.c Unconditionally limit maxproc so that it is not possible 2002-03-07 04:50:36 +00:00
subr_pcpu.c Add a per-cpu variable, cpumask, the preshifted equivalent of 1 << cpuid. 2002-01-05 09:35:50 +00:00
subr_power.c Add generalized power profile code. 2002-03-04 18:46:13 +00:00
subr_prf.c Remove __P. 2002-03-19 21:25:46 +00:00
subr_prof.c Remove __P. 2002-03-19 21:25:46 +00:00
subr_rman.c Add a rman_reserve_resource_bound() function that takes an additional 2001-12-21 21:40:55 +00:00
subr_sbuf.c Fix warnings on gcc-3.1+ where __func__ is a const char * instead of a 2002-03-19 10:56:46 +00:00
subr_scanf.c
subr_smp.c - Remove a semi-colon from after SYSINIT that was introduced in rev. 1.163. 2002-03-20 14:46:38 +00:00
subr_taskqueue.c Change the preemption code for software interrupt thread schedules and 2002-01-05 08:47:13 +00:00
subr_trap.c Change the way we ensure td_ucred is NULL if DIAGNOSTIC is defined. 2002-03-20 21:12:04 +00:00
subr_turnstile.c Remove __P. 2002-03-19 21:25:46 +00:00
subr_witness.c - Use a MI critical section in witness_sleep() and witness_list() as they 2002-03-08 18:57:57 +00:00
subr_xxx.c GC the unused einval() 2002-02-10 22:07:41 +00:00
sys_generic.c Remove __P. 2002-03-19 21:25:46 +00:00
sys_pipe.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
sys_process.c Convert all pmap_kenter/pmap_kremove pairs in MI code to use pmap_qenter/ 2002-03-17 00:56:41 +00:00
sys_socket.c Giant pushdown for read/write/pread/pwrite syscalls. 2002-03-15 08:03:46 +00:00
syscalls.c Part II: update various mechanically generated files to allow for new 2002-03-05 16:13:01 +00:00
syscalls.master Reserve system call numbers for the MAC framework. This will prevent 2002-03-05 16:11:11 +00:00
sysv_ipc.c Simple p_ucred -> td_ucred changes to start using the per-thread ucred 2002-02-27 18:32:23 +00:00
sysv_msg.c Remove __P. 2002-03-19 21:25:46 +00:00
sysv_sem.c Remove __P. 2002-03-19 21:25:46 +00:00
sysv_shm.c Remove __P. 2002-03-19 21:25:46 +00:00
tty_compat.c Remove __P. 2002-03-19 21:25:46 +00:00
tty_conf.c KSE Milestone 2 2001-09-12 08:38:13 +00:00
tty_cons.c Simple p_ucred -> td_ucred changes to start using the per-thread ucred 2002-02-27 18:32:23 +00:00
tty_pty.c Remove __P. 2002-03-19 21:25:46 +00:00
tty_subr.c Remove __P. 2002-03-19 21:25:46 +00:00
tty_tty.c Remove __P. 2002-03-19 21:25:46 +00:00
tty.c Remove __P. 2002-03-19 21:25:46 +00:00
uipc_accf.c Revert the last bits of my bogus move of NMBCLUSTERS 2001-06-01 21:47:34 +00:00
uipc_domain.c Add calls to uma_zone_set_max() to restore previously enforced limits. 2002-03-20 05:30:58 +00:00
uipc_mbuf2.c Remove __P. 2002-03-19 21:25:46 +00:00
uipc_mbuf.c Get rid of the twisted MFREE() macro entirely. 2002-02-05 02:00:56 +00:00
uipc_proto.c Implement a LOCAL_PEERCRED socket option which returns a 2001-08-17 22:01:18 +00:00
uipc_sockbuf.c Backout part of my previous commit; I was wrong about vm_zone's handling of 2002-03-20 04:39:32 +00:00
uipc_socket2.c Backout part of my previous commit; I was wrong about vm_zone's handling of 2002-03-20 04:39:32 +00:00
uipc_socket.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
uipc_syscalls.c Remove __P. 2002-03-19 21:25:46 +00:00
uipc_usrreq.c Add calls to uma_zone_set_max() to restore previously enforced limits. 2002-03-20 05:30:58 +00:00
vfs_acl.c Fix a gcc-3.1+ warning. 2002-03-19 11:02:06 +00:00
vfs_aio.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
vfs_bio.c Remove __P. 2002-03-19 21:25:46 +00:00
vfs_cache.c Remove __P. 2002-03-19 21:25:46 +00:00
vfs_cluster.c Remove __P. 2002-03-19 21:25:46 +00:00
vfs_conf.c Move the mount of the root filesystem to happen in the init process before 2002-03-08 10:33:11 +00:00
vfs_default.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
vfs_export.c Remove __P. 2002-03-19 21:25:46 +00:00
vfs_extattr.c - Change a check of securelevel to securelevel_gt() call in order to help 2002-03-20 16:03:42 +00:00
vfs_init.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
vfs_lookup.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
vfs_mount.c Move the mount of the root filesystem to happen in the init process before 2002-03-08 10:33:11 +00:00
vfs_subr.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:09:59 +00:00
vfs_syscalls.c - Change a check of securelevel to securelevel_gt() call in order to help 2002-03-20 16:03:42 +00:00
vfs_vnops.c Remove __P. 2002-03-19 21:25:46 +00:00
vnode_if.pl Throw the $FreeBSD$s back in, properly escaping them. 2002-01-04 05:27:47 +00:00
vnode_if.src Introduce the new 64-bit size disk block, daddr64_t. Change 2002-03-15 18:49:47 +00:00