freebsd-dev/sys/kern
Bill Paul b7f6c65f7c Grrrr. Fix a really lame bug that I tripped over while testing my miibus
stuff: unregister_methods() is horribly broken. The idea, if I'm not mistaken,
is that the refcount on a method is decremented, and only when it reaches
zero is the method freed. However desc->method is set to NULL unconditionally
regardless of the refcount, which means the method pointer is trashed the
first time the method is deallocated. The obvious detrimental effect is
that memory is leaked. The not so obvious effect is that when you call
unregister_method() the second time on the same method, you get a NULL
pointer dereference and a panic.

Now I can successfully unload network device drivers and the miibus module
without crashing the system.

*sigh*
1999-08-14 05:11:01 +00:00
..
bus_if.m Alter the behavior of sys/kern/subr_bus.c:device_print_child() 1999-07-29 01:03:04 +00:00
device_if.m Update the comments on values than can be returned by DEVICE_PROBE. 1999-06-17 19:22:12 +00:00
imgact_aout.c Add the options MAP_PREFAULT and MAP_PREFAULT_PARTIAL to vm_map_find/insert, 1999-05-17 00:53:56 +00:00
imgact_elf.c Fix the previous warning a different way since the emul_path exposure was 1999-07-09 19:10:14 +00:00
imgact_gzip.c Correctly return ENOEXEC for really short zipped files. The way this is 1999-06-21 16:23:13 +00:00
imgact_shell.c Fix a couple of warnings and some bitrot in comments. 1999-05-09 16:04:14 +00:00
inflate.c kzipboot uses kern/inflate.c outside the kernel by providing its own 1998-11-10 09:08:49 +00:00
init_main.c Slight reorganization of kernel thread/process creation. Instead of using 1999-07-01 13:21:46 +00:00
init_sysent.c Re-commit these files after updating syscalls.master (in the proper order 1999-08-05 08:26:27 +00:00
kern_acct.c Fix a dev_t/udev_t issue with accounting. lastcomm now shows the 1999-07-10 06:27:36 +00:00
kern_clock.c Oops, the previous commit only worked in the one case it was tested for. 1999-07-24 20:21:10 +00:00
kern_conf.c The bdevsw() and cdevsw() are now identical, so kill the former. 1999-08-13 10:29:38 +00:00
kern_descrip.c Fix fd race conditions (during shared fd table usage.) Badfileops is 1999-08-04 18:53:50 +00:00
kern_environment.c Fix warnings related to -Wall -Wcast-qual 1999-01-28 17:32:05 +00:00
kern_exec.c Stop profiling on exec. 1999-08-11 20:35:38 +00:00
kern_exit.c From the submitter: 1999-06-07 20:37:29 +00:00
kern_fork.c Fix the following problem: 1999-07-21 18:02:27 +00:00
kern_intr.c Stage 1 of a cleanup of the i386 interrupt registration mechanism. 1999-04-21 07:26:30 +00:00
kern_jail.c Add beer-ware license and $Id$ 1999-04-30 06:51:51 +00:00
kern_kthread.c Slight reorganization of kernel thread/process creation. Instead of using 1999-07-01 13:21:46 +00:00
kern_ktrace.c Make sure syscall arguments properly aligned in ktrace records. 1999-06-16 18:37:01 +00:00
kern_linker.c Slight reorganization of kernel thread/process creation. Instead of using 1999-07-01 13:21:46 +00:00
kern_lock.c When requesting an exclusive lock with LK_NOWAIT, do not panic 1999-06-28 07:54:58 +00:00
kern_lockf.c Fixed corruption of the "blocked" list in lf_setlock() when tsleep() 1999-07-04 14:43:01 +00:00
kern_malloc.c Move the initialisation/tuning of nmbclusters from param.c/machdep.c 1999-07-05 08:52:54 +00:00
kern_mib.c Decommision miscfs/specfs/specdev.h. Most of it goes into <sys/conf.h>, 1999-08-08 18:43:05 +00:00
kern_module.c Oops, set module->file.. 1999-05-20 00:00:58 +00:00
kern_ntptime.c Suser() simplification: 1999-04-27 11:18:52 +00:00
kern_physio.c Convert buffer locking from using the B_BUSY and B_WANTED flags to using 1999-06-26 02:47:16 +00:00
kern_proc.c Reverse the sense of a test, dev2udev() will be much cheaper than 1999-07-17 20:29:10 +00:00
kern_prot.c This Implements the mumbled about "Jail" feature. 1999-04-28 11:38:52 +00:00
kern_random.c Add sufficient braces to keep egcs happy about potentially ambiguous 1999-05-06 18:13:11 +00:00
kern_resource.c This Implements the mumbled about "Jail" feature. 1999-04-28 11:38:52 +00:00
kern_shutdown.c The bdevsw() and cdevsw() are now identical, so kill the former. 1999-08-13 10:29:38 +00:00
kern_sig.c Reset SA_NOCLDWAIT on exec(). 1999-07-18 13:40:11 +00:00
kern_subr.c These changes appear to give us benefits with both small (32MB) and 1999-07-08 06:06:00 +00:00
kern_synch.c The magic "no-cpu" cpu number is 0xff. Don't misrepresent cpu 1999-03-05 16:38:13 +00:00
kern_syscalls.c Call the chained module handler before unregistering the syscall so that 1999-06-27 09:38:44 +00:00
kern_sysctl.c Minor tweaks to make sure (new) prerequisites for <sys/buf.h> (mostly 1999-06-27 11:44:22 +00:00
kern_tc.c Oops, the previous commit only worked in the one case it was tested for. 1999-07-24 20:21:10 +00:00
kern_threads.c Removed bogus casts to c_caddr_t. This is part of terminating 1999-01-29 08:29:05 +00:00
kern_time.c Minor tweaks to make sure (new) prerequisites for <sys/buf.h> (mostly 1999-06-27 11:44:22 +00:00
kern_timeout.c Fix callout_init(). This didn't have any practical effect since it 1999-03-06 22:27:02 +00:00
kern_xxx.c This Implements the mumbled about "Jail" feature. 1999-04-28 11:38:52 +00:00
ksched.c 1. Add new defs for mins and maxs for the POSIX flavor priorities. They 1998-05-19 21:11:53 +00:00
link_aout.c Add enough include files to make this actually compile on an a.out system. 1999-05-15 23:18:32 +00:00
link_elf_obj.c Use KERNBASE for the load address of the kernel rather than magic constants 1999-05-08 13:03:49 +00:00
link_elf.c Use KERNBASE for the load address of the kernel rather than magic constants 1999-05-08 13:03:49 +00:00
Make.tags.inc Update to know about current kernel directory layout. 1999-02-28 22:14:16 +00:00
makedevops.pl Remove hack to accept French spelling of METHOD (METHODE) 1999-05-10 17:45:49 +00:00
Makefile Added ../sys/syscall.mk to targets. Back it up like all the other 1999-05-13 09:19:14 +00:00
makesyscalls.sh Add trailing newline to sys/syscall.mk so that diff doesn't choke on it. 1998-06-28 10:01:52 +00:00
md5c.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
p1003_1b.c Well folks, this is it - The second stage of the removal for build support 1999-04-17 08:36:07 +00:00
posix4_mib.c * Change sysctl from using linker_set to construct its tree using SLISTs. 1999-02-16 10:49:55 +00:00
subr_autoconf.c Fix a very long standing bug in run_interrupt_driven_config_hooks(). It 1999-04-25 22:13:34 +00:00
subr_blist.c Add Id strings 1999-06-17 23:42:45 +00:00
subr_bus.c Grrrr. Fix a really lame bug that I tripped over while testing my miibus 1999-08-14 05:11:01 +00:00
subr_clist.c Quiet warnings on an Alpha. CBSIZE has long type and causes the other 1999-07-01 19:46:36 +00:00
subr_devstat.c Add sysctl descriptions to many SYSCTL_XXXs 1999-05-03 23:57:32 +00:00
subr_disklabel.c Convert buffer locking from using the B_BUSY and B_WANTED flags to using 1999-06-26 02:47:16 +00:00
subr_diskmbr.c Convert buffer locking from using the B_BUSY and B_WANTED flags to using 1999-06-26 02:47:16 +00:00
subr_diskslice.c dsopen: Print a message if the unit has an invalid sector size. 1999-06-21 03:48:16 +00:00
subr_dkbad.c Convert buffer locking from using the B_BUSY and B_WANTED flags to using 1999-06-26 02:47:16 +00:00
subr_log.c Simplify cdevsw registration. 1999-05-31 11:29:30 +00:00
subr_module.c Align to sizeof(long) rather than sizeof(int32_t). It needs to be 1998-10-14 05:07:23 +00:00
subr_param.c Move the initialisation/tuning of nmbclusters from param.c/machdep.c 1999-07-05 08:52:54 +00:00
subr_prf.c Merge the cons.c and cons.h to the best of my ability. alpha may or 1999-08-09 10:35:05 +00:00
subr_prof.c Fixed profiling of elf kernels. Made high resolution profiling compile 1999-05-06 09:44:57 +00:00
subr_rman.c Make sure that we record the flags in all cases. 1999-06-26 10:27:30 +00:00
subr_scanf.c Only needed to cast array index from char to unsigned char, did not 1999-02-14 20:58:21 +00:00
subr_smp.c Merge the cons.c and cons.h to the best of my ability. alpha may or 1999-08-09 10:35:05 +00:00
subr_trap.c On FPU exceptions, pass a useful error code (one of the FPE_... 1999-07-25 13:16:09 +00:00
subr_xxx.c Try an fix a couple of dev_t/major/minor etc nits. 1999-05-12 22:30:50 +00:00
sys_generic.c Add standard padding argument to pread and pwrite syscall. That should make them 1999-04-04 21:41:28 +00:00
sys_pipe.c Fix fd race conditions (during shared fd table usage.) Badfileops is 1999-08-04 18:53:50 +00:00
sys_process.c Implement support for hardware debug registers on the i386. 1999-07-09 04:16:00 +00:00
sys_socket.c Fix fd race conditions (during shared fd table usage.) Badfileops is 1999-08-04 18:53:50 +00:00
syscalls.c Re-commit these files after updating syscalls.master (in the proper order 1999-08-05 08:26:27 +00:00
syscalls.master Add CPT_NOA, LIBCOMPAT, NODEF, NOARGS, NOPROTO, and NOIMPL to the commented 1999-08-11 22:13:46 +00:00
sysv_ipc.c Change suser_xxx() to suser() where it applies. 1999-04-27 12:21:16 +00:00
sysv_msg.c Change suser_xxx() to suser() where it applies. 1999-04-27 12:21:16 +00:00
sysv_sem.c Change suser_xxx() to suser() where it applies. 1999-04-27 12:21:16 +00:00
sysv_shm.c For consistency with other implementations, check for the existence 1999-06-19 23:53:13 +00:00
tty_compat.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
tty_conf.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
tty_cons.c Register our dev_t with make_dev 1999-08-13 10:52:22 +00:00
tty_pty.c Add new sysctl "kern.ttys" which return all the struct tty's which have 1999-08-08 19:47:32 +00:00
tty_snoop.c Add Id strings 1999-06-17 23:42:45 +00:00
tty_subr.c Quiet warnings on an Alpha. CBSIZE has long type and causes the other 1999-07-01 19:46:36 +00:00
tty_tb.c Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not 1997-02-22 09:48:43 +00:00
tty_tty.c Simplify cdevsw registration. 1999-05-31 11:29:30 +00:00
tty.c Enable ttymalloc(). 1999-08-08 20:24:58 +00:00
uipc_domain.c Redo domain registration to use SYSINITS rather than linker sets. 1999-04-26 08:56:09 +00:00
uipc_mbuf.c Move the initialisation/tuning of nmbclusters from param.c/machdep.c 1999-07-05 08:52:54 +00:00
uipc_proto.c Register the local (unix domain) sockets ourselves. 1999-04-26 08:56:53 +00:00
uipc_sockbuf.c Move the initialisation/tuning of nmbclusters from param.c/machdep.c 1999-07-05 08:52:54 +00:00
uipc_socket2.c Move the initialisation/tuning of nmbclusters from param.c/machdep.c 1999-07-05 08:52:54 +00:00
uipc_socket.c Reviewed by: the cast of thousands 1999-06-17 23:54:50 +00:00
uipc_syscalls.c Fix fd race conditions (during shared fd table usage.) Badfileops is 1999-08-04 18:53:50 +00:00
uipc_usrreq.c Divorce "dev_t" from the "major|minor" bitmap, which is now called 1999-05-11 19:55:07 +00:00
vfs_aio.c s/v_specinfo/v_rdev/ 1999-08-13 10:10:12 +00:00
vfs_bio.c Decommision miscfs/specfs/specdev.h. Most of it goes into <sys/conf.h>, 1999-08-08 18:43:05 +00:00
vfs_cache.c Fix a braino in the v_id wraparound code. Give more (current) details 1999-04-24 17:58:14 +00:00
vfs_cluster.c These changes appear to give us benefits with both small (32MB) and 1999-07-08 06:06:00 +00:00
vfs_conf.c Fix warnings in last commit (dev_t is not an int, and not even int 1999-07-03 17:40:31 +00:00
vfs_default.c Add Id strings 1999-06-17 23:42:45 +00:00
vfs_export.c The bdevsw() and cdevsw() are now identical, so kill the former. 1999-08-13 10:29:38 +00:00
vfs_extattr.c Replace a redundant vfs_object_create() call (already done in vn_open) 1999-08-12 20:38:32 +00:00
vfs_init.c Removed references to a nonexistent variable. This fixes building kernels 1999-07-29 07:14:28 +00:00
vfs_lookup.c Add sysctl and support code to allow directories to be VMIO'd. The default 1999-07-26 06:25:53 +00:00
vfs_mount.c Fix warnings in last commit (dev_t is not an int, and not even int 1999-07-03 17:40:31 +00:00
vfs_subr.c The bdevsw() and cdevsw() are now identical, so kill the former. 1999-08-13 10:29:38 +00:00
vfs_syscalls.c Replace a redundant vfs_object_create() call (already done in vn_open) 1999-08-12 20:38:32 +00:00
vfs_vnops.c oops: Add missing include. 1999-08-13 11:22:48 +00:00
vnode_if.pl Add a vnode argument to VOP_BWRITE to get rid of the last vnode 1999-06-16 23:27:55 +00:00
vnode_if.sh Add a vnode argument to VOP_BWRITE to get rid of the last vnode 1999-06-16 23:27:55 +00:00
vnode_if.src Add a vnode argument to VOP_BWRITE to get rid of the last vnode 1999-06-16 23:27:55 +00:00