git: kernel - Make filters able to be marked MPSAFE

看板DFBSD_commit作者時間15年前 (2010/08/04 02:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit 4c91dbc92f2298fa9a4c90d45e468a667fc2d75f Author: Samuel J. Greear <sjg@thesjg.com> Date: Tue Aug 3 15:11:21 2010 +0000 kernel - Make filters able to be marked MPSAFE * Change struct filterops f_isfd field to f_flags, taking FILTEROP_ISFD and/or FILTEROP_MPSAFE. * Convert all existing filter definitions to use new flags. * Create filter_attach/detach/event wrapper functions for calling through the struct filterops vector that grab the MPLOCK as necessary. * kern_event() uses kq->kq_count to determine whether or not to sleep, kqueue_scan() removes events from the TAILQ and can possibly sleep, releasing the global kq token, before updating kq->kq_count. Summary of changes: sys/bus/cam/scsi/scsi_target.c | 4 +- sys/bus/firewire/fwdev.c | 4 +- sys/bus/usb/usb.c | 2 +- sys/dev/drm/drm_fops.c | 2 +- sys/dev/misc/cmx/cmx.c | 4 +- sys/dev/misc/hotplug/hotplug.c | 2 +- sys/dev/misc/kbd/kbd.c | 2 +- sys/dev/misc/mse/mse.c | 2 +- sys/dev/misc/psm/psm.c | 2 +- sys/dev/misc/snp/snp.c | 4 +- sys/dev/misc/spic/spic.c | 2 +- sys/dev/misc/tw/tw.c | 4 +- sys/dev/raid/aac/aac.c | 2 +- sys/dev/raid/vinum/vinum.c | 4 +- sys/dev/sound/pcm/dsp.c | 4 +- sys/dev/usbmisc/ugen/ugen.c | 4 +- sys/dev/usbmisc/uhid/uhid.c | 4 +- sys/dev/usbmisc/ums/ums.c | 2 +- sys/dev/usbmisc/uscanner/uscanner.c | 2 +- sys/dev/video/bktr/bktr_os.c | 2 +- sys/dev/video/cxm/cxm.c | 2 +- sys/kern/kern_event.c | 98 ++++++++++++++++++++++++------ sys/kern/kern_memio.c | 4 +- sys/kern/kern_sig.c | 2 +- sys/kern/kern_udev.c | 2 +- sys/kern/subr_bus.c | 2 +- sys/kern/subr_log.c | 2 +- sys/kern/sys_mqueue.c | 4 +- sys/kern/sys_pipe.c | 4 +- sys/kern/tty.c | 4 +- sys/kern/tty_pty.c | 4 +- sys/kern/tty_tty.c | 4 +- sys/kern/uipc_socket.c | 8 +- sys/net/bpf.c | 2 +- sys/net/i4b/driver/i4b_rbch.c | 4 +- sys/net/i4b/driver/i4b_tel.c | 4 +- sys/net/i4b/layer4/i4b_i4bdrv.c | 4 +- sys/net/tap/if_tap.c | 4 +- sys/net/tun/if_tun.c | 4 +- sys/platform/pc32/acpica5/acpi_machdep.c | 2 +- sys/platform/pc32/apm/apm.c | 4 +- sys/platform/pc32/isa/asc.c | 2 +- sys/platform/pc64/acpica5/acpi_machdep.c | 2 +- sys/platform/pc64/apm/apm.c | 4 +- sys/platform/pc64/isa/asc.c | 2 +- sys/sys/event.h | 8 ++- sys/vfs/fifofs/fifo_vnops.c | 4 +- sys/vfs/gnu/ext2fs/ext2_vnops.c | 6 +- sys/vfs/hammer/hammer_vnops.c | 6 +- sys/vfs/ufs/ufs_vnops.c | 6 +- 50 files changed, 164 insertions(+), 102 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/4c91dbc92f2298fa9a4c90d45e468a667fc2d75f -- DragonFly BSD source repository
文章代碼(AID): #1CM5bct3 (DFBSD_commit)