NetBSD/sys/kern
dsl 2a54322c7b If a multithreaded app closes an fd while another thread is blocked in
read/write/accept, then the expectation is that the blocked thread will
exit and the close complete.
Since only one fd is affected, but many fd can refer to the same file,
the close code can only request the fs code unblock with ERESTART.
Fixed for pipes and sockets, ERESTART will only be generated after such
a close - so there should be no change for other programs.
Also rename fo_abort() to fo_restart() (this used to be fo_drain()).
Fixes PR/26567
2009-12-20 09:36:05 +00:00
..
bufq_disksort.c malloc -> kmem_alloc 2009-01-19 14:54:28 +00:00
bufq_fcfs.c malloc -> kmem_alloc 2009-01-19 14:54:28 +00:00
bufq_priocscan.c malloc -> kmem_alloc 2009-01-19 14:54:28 +00:00
bufq_readprio.c malloc -> kmem_alloc 2009-01-19 14:54:28 +00:00
cnmagic.c Move Eduardo Horvath's license to 2 clause. OK eeh@. 2009-10-19 18:12:37 +00:00
core_elf32.c Merge from matt-nb5-mips64 2009-12-14 00:47:10 +00:00
core_elf64.c
core_netbsd.c Make the emulations, exec formats, coredump, NFS, and the NFS server 2008-11-19 18:35:57 +00:00
exec_aout.c Make the emulations, exec formats, coredump, NFS, and the NFS server 2008-11-19 18:35:57 +00:00
exec_ecoff.c make this compile 2008-11-19 21:29:32 +00:00
exec_elf32.c Make the emulations, exec formats, coredump, NFS, and the NFS server 2008-11-19 18:35:57 +00:00
exec_elf64.c Make the emulations, exec formats, coredump, NFS, and the NFS server 2008-11-19 18:35:57 +00:00
exec_elf.c Merge from matt-nb5-mips64 2009-12-14 00:47:10 +00:00
exec_macho.c Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
exec_script.c Make the emulations, exec formats, coredump, NFS, and the NFS server 2008-11-19 18:35:57 +00:00
exec_subr.c Change u_long to vaddr_t/vsize_t in exec code where appropriate (mostly 2009-12-10 14:13:48 +00:00
genlintstub.awk
init_main.c Replace few USER_TO_UAREA/UAREA_TO_USER uses, reduce sys/user.h inclusions. 2009-12-17 01:25:10 +00:00
init_sysctl_base.c Chop init_sysctl into base nodes (init_sysctl_base.c) and the 2009-09-16 15:03:56 +00:00
init_sysctl.c Report L_INMEM in the lwp info as well. 2009-12-12 17:29:34 +00:00
init_sysent.c Regen (new makesyscalls.sh) 2009-12-14 00:53:32 +00:00
kern_acct.c s/NOFOLLOW/FOLLOW/ in NDINIT so that it matches actual behavior 2009-02-11 00:32:45 +00:00
kern_auth.c Implement the vnode scope and adapt tmpfs to use it. 2009-09-03 04:45:27 +00:00
kern_cctr.c remove extra semicolons. 2009-01-03 03:31:23 +00:00
kern_clock.c hardclock() itself doesn't schedule callout softintrs any more, 2008-10-05 21:57:20 +00:00
kern_condvar.c tsleep() on lbolt is now illegal. Convert cv_wakeup(&lbolt) to 2009-12-05 22:38:19 +00:00
kern_core.c merge christos-time_t 2009-01-11 02:45:45 +00:00
kern_cpu.c cpuctl: 2009-04-19 14:11:36 +00:00
kern_descrip.c If a multithreaded app closes an fd while another thread is blocked in 2009-12-20 09:36:05 +00:00
kern_drvctl.c If a multithreaded app closes an fd while another thread is blocked in 2009-12-20 09:36:05 +00:00
kern_event.c If a multithreaded app closes an fd while another thread is blocked in 2009-12-20 09:36:05 +00:00
kern_exec.c Change u_long to vaddr_t/vsize_t in exec code where appropriate (mostly 2009-12-10 14:13:48 +00:00
kern_exit.c do_sys_wait(): fix previous by checking for ru != NULL. Noticed by 2009-11-04 21:23:02 +00:00
kern_fileassoc.c - Convert hashinit() to use kmem_alloc(). The hash tables can be large 2008-05-05 17:11:16 +00:00
kern_fork.c Remove uarea swap-out functionality: 2009-10-21 21:11:57 +00:00
kern_idle.c set LP_RUNNING when starting lwp0 and idle lwps. 2009-07-19 10:11:55 +00:00
kern_ksyms.c Remove highly questionable assert which demans that the kernel symbol 2009-11-25 13:16:55 +00:00
kern_kthread.c Remove uarea swap-out functionality: 2009-10-21 21:11:57 +00:00
kern_ktrace.c Move ktrace's subsystem security policy to the subsystem itself, and keep 2009-10-02 21:47:35 +00:00
kern_lock.c Fix spelling: situatations -> situations. 2009-07-17 22:17:37 +00:00
kern_lwp.c Replace few USER_TO_UAREA/UAREA_TO_USER uses, reduce sys/user.h inclusions. 2009-12-17 01:25:10 +00:00
kern_malloc_debug.c Add a flags argument to pmap_kenter_pa(9). 2009-11-07 07:27:40 +00:00
kern_malloc_stdtype.c g/c M_SOFTINTR 2009-11-06 13:32:41 +00:00
kern_malloc.c Wipe out the last vestiges of POOL_INIT with one swift stroke. In 2009-09-13 18:45:10 +00:00
kern_module_vfs.c * make it possible to include kern_module in a kernel without vfs 2009-11-18 17:40:45 +00:00
kern_module.c * make it possible to include kern_module in a kernel without vfs 2009-11-18 17:40:45 +00:00
kern_mutex_obj.c Heave-ho mutex/rwlock object routines into separate modules -- they 2009-11-04 13:29:45 +00:00
kern_mutex.c Heave-ho mutex/rwlock object routines into separate modules -- they 2009-11-04 13:29:45 +00:00
kern_ntptime.c remove !NTP stub. 2009-01-11 21:00:11 +00:00
kern_pax.c Fix broken enable test; fixes random coredumps. 2008-06-04 12:26:20 +00:00
kern_physio.c PR kern/39536: bufq related problem when writing DVDR and DVDRWs. 2009-05-26 14:59:31 +00:00
kern_pmf.c - Use pool(9) for pmf_event_workitem_t, instead of pool_cache(9). Still, 2009-10-27 02:55:07 +00:00
kern_proc.c Replace few USER_TO_UAREA/UAREA_TO_USER uses, reduce sys/user.h inclusions. 2009-12-17 01:25:10 +00:00
kern_prot.c - Rearrange pg_delete() and pg_remove() (renamed pg_free), thus 2009-04-25 15:06:31 +00:00
kern_ras.c Merge wrstuden-revivesa into HEAD. 2008-10-15 06:51:17 +00:00
kern_rate.c Split rate-checking routines into their own module for easier reuse. 2008-09-25 17:17:10 +00:00
kern_resource.c Stick nice policy in its own subsystem and call the listener "resource" 2009-10-02 22:46:18 +00:00
kern_runq.c Remove uarea swap-out functionality: 2009-10-21 21:11:57 +00:00
kern_rwlock_obj.c Heave-ho mutex/rwlock object routines into separate modules -- they 2009-11-04 13:29:45 +00:00
kern_rwlock.c Heave-ho mutex/rwlock object routines into separate modules -- they 2009-11-04 13:29:45 +00:00
kern_sig.c signal(9) code: add some comments, improve/fix wrong ones. While here, kill 2009-12-20 04:49:09 +00:00
kern_sleepq.c Remove uarea swap-out functionality: 2009-10-21 21:11:57 +00:00
kern_softint.c set LP_RUNNING when starting lwp0 and idle lwps. 2009-07-19 10:11:55 +00:00
kern_ssp.c If sys/param.h is not included, the kernel compile fails on some platforms 2009-02-26 05:50:54 +00:00
kern_stub.c Add a kernel configuration flag, SPLDEBUG, that activates a per-CPU log 2009-11-03 05:23:27 +00:00
kern_subr.c Use deviter(9) instead of accessing alldevs directly. 2009-11-05 18:07:19 +00:00
kern_synch.c tsleep() on lbolt is now illegal. Convert cv_wakeup(&lbolt) to 2009-12-05 22:38:19 +00:00
kern_sysctl.c Replace a large number of link set based sysctl node creations with 2009-09-16 15:23:04 +00:00
kern_tc.c Make PPS work with fast time counters (> 2GHz) 2009-06-14 13:16:32 +00:00
kern_time.c If a struct sigevent with SIGEV_SIGNAL is passed to timer_create(2), 2009-12-10 12:39:12 +00:00
kern_timeout.c Allocate sleep queue locks with mutex_obj_alloc. Reduces memory usage 2009-03-21 13:11:14 +00:00
kern_todr.c Remove `volatile' qualifier from argument types of 2009-12-12 15:10:34 +00:00
kern_turnstile.c turnstile_block: reduce code duplication. 2009-11-18 12:26:22 +00:00
kern_uidinfo.c uid_init: maxproc -> maxcpus 2009-03-22 00:49:13 +00:00
kern_uuid.c Make uuidgen available for the kernel. 2008-11-18 14:01:03 +00:00
kern_verifiedexec.c Add a flags argument to pmap_kenter_pa(9). 2009-11-07 07:27:40 +00:00
kern_xxx.c Remove unneeded playing about with kernel_lock. 2008-04-25 11:23:42 +00:00
kgdb_stub.c make kgdb_dev a dev_t 2009-01-11 10:20:53 +00:00
Make.tags.inc A definition in aic79xxvar.h somehow shadows pci_attach_args (ctags 2009-07-16 23:53:10 +00:00
Makefile Use ${TOOL_SED} instead of plain "sed" in "!=" assignments. 2008-10-25 22:35:36 +00:00
makesyscalls.sh Pullup from matt-nb5-mips64. 2009-12-13 04:47:45 +00:00
sched_4bsd.c sched_pstats_hook: fix estcpu decay. 2009-05-31 04:13:33 +00:00
sched_m2.c more s/the the/the/ 2009-11-22 19:09:15 +00:00
subr_autoconf.c Per rmind@'s suggestion, avoid an acquire/release-mutex dance by 2009-12-15 03:02:24 +00:00
subr_blist.c
subr_bufq.c Provide unwind log for bufq sysctls, since (theoretically) bufq might 2009-09-17 09:54:27 +00:00
subr_callback.c Add assert that ce->ce_func is not NULL. 2009-11-24 20:11:50 +00:00
subr_copy.c Split uiomove() and high-level copy routines out of the crowded 2009-11-04 16:54:00 +00:00
subr_debug.c Disable the freecheck stuff atomically so we only get one warning about 2008-04-30 20:20:53 +00:00
subr_devsw.c In bdev_strategy, return ENXIO instead of panicing if the block device has 2009-09-03 11:42:21 +00:00
subr_disk_mbr.c Make this work on some m68k ports which like putting the disklabel 2009-11-27 13:29:33 +00:00
subr_disk_open.c Remove autoconf dependency on vfs and dk: 2009-09-06 16:18:55 +00:00
subr_disk.c When truncating a request in bounds_check_with_mediasize() multiply 2009-11-28 22:38:07 +00:00
subr_evcnt.c protect allevents list with a mutex 2009-03-29 18:21:06 +00:00
subr_exec_fd.c More changes to improve kern_descrip.c. 2009-05-24 21:41:25 +00:00
subr_extent.c Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
subr_hash.c - Convert hashinit() to use kmem_alloc(). The hash tables can be large 2008-05-05 17:11:16 +00:00
subr_humanize.c Give humanize_number & format_bytes their own spots in the sun and move 2009-10-02 15:48:41 +00:00
subr_iostat.c Create CTL_HW before creating nodes on top of it (sysctl constructors 2009-11-30 11:28:35 +00:00
subr_kmem.c constify 2009-10-12 23:36:02 +00:00
subr_kobj_vfs.c Due to the schizophrenic nature of kobj (mem + vfs source), 2009-11-27 17:54:11 +00:00
subr_kobj.c Due to the schizophrenic nature of kobj (mem + vfs source), 2009-11-27 17:54:11 +00:00
subr_lockdebug.c Make lockdebug_lock_print(NULL, ...) dump all locks. Now, in ddb, 2009-11-03 00:29:11 +00:00
subr_log.c Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
subr_once.c ansify function definitions 2009-03-15 17:14:40 +00:00
subr_optstr.c Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
subr_pcq.c - Optimise by avoiding few memory barriers, when atomic operations 2008-11-11 21:45:33 +00:00
subr_percpu.c Remove uarea swap-out functionality: 2009-10-21 21:11:57 +00:00
subr_pool.c Fix a bug where on MP systems, pool_cache_invalidate(9) could be called 2009-10-20 17:24:22 +00:00
subr_prf.c Add a kernel configuration flag, SPLDEBUG, that activates a per-CPU log 2009-11-03 05:23:27 +00:00
subr_prof.c Replace few USER_TO_UAREA/UAREA_TO_USER uses, reduce sys/user.h inclusions. 2009-12-17 01:25:10 +00:00
subr_specificdata.c Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
subr_spldebug.c Address some of the concerns that SPLDEBUG is not machine-independent, 2009-11-24 17:28:32 +00:00
subr_syscall_stats.c Convert to new 2 clause license 2008-04-29 06:53:00 +00:00
subr_tftproot.c Back out previous change: do not skip the test on rootspec, but make it 2009-08-23 12:10:50 +00:00
subr_time.c - Move inittimeleft() and gettimeleft() to subr_time.c, where they belong. 2009-11-01 21:46:09 +00:00
subr_userconf.c Follow upstream's lead and remove third and fourth clauses (except on 2009-10-20 00:51:13 +00:00
subr_vmem.c Ansify function definitions w/o arguments. Generated with sed. 2009-03-18 10:22:21 +00:00
subr_workqueue.c workqueue_finiqueue: remove unused variable. 2009-11-11 14:54:40 +00:00
subr_xcall.c explicitly initialize static boolean 2009-11-30 15:37:56 +00:00
sys_aio.c more s/the the/the/ 2009-11-22 19:09:15 +00:00
sys_descrip.c Make flock(2) more robust to invalid operation, such as 2009-10-28 18:24:44 +00:00
sys_generic.c Allow undescribed, direct ioctls as used by Unix. This capability was removed in BSD, presumably because nothing used it any more. 2009-08-13 08:57:43 +00:00
sys_lwp.c - Move inittimeleft() and gettimeleft() to subr_time.c, where they belong. 2009-11-01 21:46:09 +00:00
sys_module.c allow passing a NULL proplib dictionary to modctl(MODCTL_LOAD, ...) 2009-10-16 00:27:07 +00:00
sys_mqueue.c If a multithreaded app closes an fd while another thread is blocked in 2009-12-20 09:36:05 +00:00
sys_pipe.c If a multithreaded app closes an fd while another thread is blocked in 2009-12-20 09:36:05 +00:00
sys_pmc.c Make ntp, pmc, reboot, sysarch, time syscalls MPSAFE. 2008-04-21 12:56:30 +00:00
sys_process.c Replace few USER_TO_UAREA/UAREA_TO_USER uses, reduce sys/user.h inclusions. 2009-12-17 01:25:10 +00:00
sys_pset.c Move psets security policy back to the subsystem and keep suser logic only 2009-10-02 21:56:28 +00:00
sys_sched.c - Move sched_listener and co. from kern_synch.c to sys_sched.c, where it 2009-10-03 22:32:56 +00:00
sys_select.c Bounding the 'nfds' arg to poll() at the current process limit for actual 2009-12-12 17:47:05 +00:00
sys_sig.c signal(9) code: add some comments, improve/fix wrong ones. While here, kill 2009-12-20 04:49:09 +00:00
sys_socket.c If a multithreaded app closes an fd while another thread is blocked in 2009-12-20 09:36:05 +00:00
sys_syscall.c Convert to new 2 clause license 2008-04-29 06:53:00 +00:00
syscalls.c Regen (new makesyscalls.sh) 2009-12-14 00:53:32 +00:00
syscalls.conf Use rump/include/rump as the rump_syscalls.h directory. 2008-11-17 08:46:42 +00:00
syscalls.master pipe +RUMP 2009-11-26 17:20:20 +00:00
sysv_ipc.c Replace malloc with kmem(9). 2009-04-16 14:55:44 +00:00
sysv_msg.c Do not call put_type() but use copyout() when returning the message 2009-01-28 00:59:03 +00:00
sysv_sem.c semu_alloc: simplify a little. 2009-10-05 23:46:02 +00:00
sysv_shm.c shmexit: simplify a lot by avoiding unnecessary memory allocations, since 2009-10-05 23:47:04 +00:00
tty_bsdpty.c malloc -> kmem_alloc 2009-01-22 14:38:34 +00:00
tty_conf.c Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
tty_ptm.c malloc -> kmem_alloc 2009-01-22 14:38:34 +00:00
tty_pty.c Error out of ptcread() if the uio length supplied is zero before the code 2009-10-14 19:25:39 +00:00
tty_subr.c Christos was worried about clrbits() being called with a length of zero. 2009-11-14 13:18:41 +00:00
tty_tty.c Network protocol interrupts can now block on locks, so merge the globals 2008-04-24 15:35:27 +00:00
tty.c Check for zero length read here - and return zero. 2009-10-11 17:20:48 +00:00
uipc_accf.c Can't use CTLFLAG_PERMANENT here without providing a rollback log, 2009-09-17 08:09:49 +00:00
uipc_domain.c KAUTH_GENERIC_CANSEE -> KAUTH_REQ_NETWORK_SOCKET_CANSEE. 2009-10-03 20:24:39 +00:00
uipc_mbuf2.c Remove extra whitespace added by a stupid tool. 2009-04-18 14:58:02 +00:00
uipc_mbuf.c m_split0(): If the newly allocated mbuf holds only the header, 2009-04-05 16:31:21 +00:00
uipc_proto.c Merge the socket locking patch: 2008-04-24 11:38:36 +00:00
uipc_sem.c Replace semid_t with intptr_t. No function change. This is a libc/kernel 2008-11-14 15:49:20 +00:00
uipc_socket2.c Add a direction argument to socket upcalls, so they can tell why they've 2009-09-02 14:56:57 +00:00
uipc_socket.c If a multithreaded app closes an fd while another thread is blocked in 2009-12-20 09:36:05 +00:00
uipc_syscalls.c If a multithreaded app closes an fd while another thread is blocked in 2009-12-20 09:36:05 +00:00
uipc_usrreq.c In uipc_usrreq(PRU_ACCEPT), grab the unp_streamlock before unp_setpeerlocks(). 2009-08-26 22:34:47 +00:00
vfs_bio.c Add a comment saying "name" to pool_init() is never freed (fixing 2009-11-17 14:38:31 +00:00
vfs_cache.c cache_lookup_entry: add an assertion. 2009-02-18 13:36:11 +00:00
vfs_cwd.c cwdinit: whitespace fix. no functional changes. 2009-09-24 06:14:22 +00:00
vfs_dirhash.c Previous code ususally works since compiler won't put gap between 2009-02-06 23:56:26 +00:00
vfs_getcwd.c malloc -> kmem_alloc. 2009-01-17 07:02:35 +00:00
vfs_hooks.c ansify function definitions 2009-03-15 17:14:40 +00:00
vfs_init.c - Add usermount_common_policy() that implements some common (everything 2009-10-05 04:20:13 +00:00
vfs_lockf.c lockf() passes its arguments through to fcntl() but is supposed to 2009-08-05 19:39:50 +00:00
vfs_lookup.c Move a big wodge of symlink-following code from nfsd to inside 2009-09-27 17:23:53 +00:00
vfs_subr.c Previous did cause a deadlock with layered FS: the vrele thread 2009-11-28 10:10:17 +00:00
vfs_syscalls.c Use the kernel space version of the vfs name, not the original userspace 2009-12-19 20:28:27 +00:00
vfs_trans.c don't forget to skip marker processes. 2009-05-12 11:42:12 +00:00
vfs_vnops.c If a multithreaded app closes an fd while another thread is blocked in 2009-12-20 09:36:05 +00:00
vfs_wapbl.c make WAPBL_DEBUG_PRINT compile 2009-11-25 14:43:31 +00:00
vfs_xattr.c Convert 67 namei call sites to use namei_simple, in these functions: 2009-06-29 05:08:15 +00:00
vnode_if.c regen: remove VNODE_LOCKDEBUG 2009-09-29 11:54:52 +00:00
vnode_if.sh Generate scheduling points around rump vnode operations. 2009-10-15 00:29:40 +00:00
vnode_if.src vpp is not logically passed in IN with lookup, so INOUT -> OUT. 2008-11-15 19:08:12 +00:00