svn commit: r358333 - in head/sys: amd64/amd64 amd64/linux32 arm/altera/socfpga arm/arm arm/broadcom/bcm2835 arm/freescale/imx arm/mv arm/nvidia arm/nvidia/tegra124 arm/ti arm/ti/am335x arm/ti/cpsw...
Pawel Biernacki
kaktus at FreeBSD.org
Wed Feb 26 14:26:46 UTC 2020
Author: kaktus
Date: Wed Feb 26 14:26:36 2020
New Revision: 358333
URL: https://svnweb.freebsd.org/changeset/base/358333
Log:
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)
r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are
still not MPSAFE (or already are but aren’t properly marked).
Use it in preparation for a general review of all nodes.
This is non-functional change that adds annotations to SYSCTL_NODE and
SYSCTL_PROC nodes using one of the soon-to-be-required flags.
Mark all obvious cases as MPSAFE. All entries that haven't been marked
as MPSAFE before are by default marked as NEEDGIANT
Approved by: kib (mentor, blanket)
Commented by: kib, gallatin, melifaro
Differential Revision: https://reviews.freebsd.org/D23718
Modified:
head/sys/amd64/amd64/efirt_machdep.c
head/sys/amd64/amd64/machdep.c
head/sys/amd64/amd64/pmap.c
head/sys/amd64/amd64/prof_machdep.c
head/sys/amd64/linux32/linux32_sysvec.c
head/sys/arm/altera/socfpga/socfpga_rstmgr.c
head/sys/arm/arm/busdma_machdep.c
head/sys/arm/arm/cpuinfo.c
head/sys/arm/arm/machdep_boot.c
head/sys/arm/arm/pmap-v6.c
head/sys/arm/broadcom/bcm2835/bcm2835_audio.c
head/sys/arm/broadcom/bcm2835/bcm2835_bsc.c
head/sys/arm/broadcom/bcm2835/bcm2835_cpufreq.c
head/sys/arm/broadcom/bcm2835/bcm2835_fbd.c
head/sys/arm/broadcom/bcm2835/bcm2835_gpio.c
head/sys/arm/broadcom/bcm2835/bcm2835_pwm.c
head/sys/arm/broadcom/bcm2835/bcm2835_rng.c
head/sys/arm/broadcom/bcm2835/bcm2835_spi.c
head/sys/arm/freescale/imx/imx6_anatop.c
head/sys/arm/freescale/imx/imx_machdep.c
head/sys/arm/mv/mv_thermal.c
head/sys/arm/mv/mv_ts.c
head/sys/arm/nvidia/tegra124/tegra124_coretemp.c
head/sys/arm/nvidia/tegra_soctherm.c
head/sys/arm/ti/am335x/am335x_ehrpwm.c
head/sys/arm/ti/am335x/am335x_lcd.c
head/sys/arm/ti/am335x/am335x_musb.c
head/sys/arm/ti/cpsw/if_cpsw.c
head/sys/arm/ti/ti_adc.c
head/sys/arm/ti/ti_pruss.c
head/sys/arm/ti/twl/twl_clks.c
head/sys/arm/ti/twl/twl_vreg.c
head/sys/arm/xilinx/zy7_devcfg.c
head/sys/arm/xilinx/zy7_slcr.c
head/sys/arm64/arm64/busdma_bounce.c
head/sys/arm64/arm64/pmap.c
head/sys/cam/ata/ata_da.c
head/sys/cam/ata/ata_pmp.c
head/sys/cam/cam.c
head/sys/cam/cam_iosched.c
head/sys/cam/ctl/ctl.c
head/sys/cam/ctl/ctl_backend_block.c
head/sys/cam/ctl/ctl_frontend_cam_sim.c
head/sys/cam/ctl/ctl_frontend_iscsi.c
head/sys/cam/ctl/ctl_ha.c
head/sys/cam/nvme/nvme_da.c
head/sys/cam/scsi/scsi_all.c
head/sys/cam/scsi/scsi_cd.c
head/sys/cam/scsi/scsi_da.c
head/sys/cam/scsi/scsi_enc.c
head/sys/cam/scsi/scsi_sa.c
head/sys/cam/scsi/scsi_xpt.c
head/sys/cddl/compat/opensolaris/kern/opensolaris_kstat.c
head/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/ddt.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c
head/sys/cddl/dev/dtrace/dtrace_sysctl.c
head/sys/cddl/dev/dtrace/dtrace_test.c
head/sys/cddl/dev/profile/profile.c
head/sys/compat/ia32/ia32_sysvec.c
head/sys/compat/linux/linux_mib.c
head/sys/compat/ndis/subr_ntoskrnl.c
head/sys/compat/x86bios/x86bios.c
head/sys/contrib/rdma/krping/krping_dev.c
head/sys/crypto/ccp/ccp_hardware.c
head/sys/ddb/db_capture.c
head/sys/ddb/db_main.c
head/sys/ddb/db_script.c
head/sys/ddb/db_textdump.c
head/sys/dev/aac/aac.c
head/sys/dev/aacraid/aacraid.c
head/sys/dev/acpi_support/acpi_asus.c
head/sys/dev/acpi_support/acpi_asus_wmi.c
head/sys/dev/acpi_support/acpi_fujitsu.c
head/sys/dev/acpi_support/acpi_hp.c
head/sys/dev/acpi_support/acpi_ibm.c
head/sys/dev/acpi_support/acpi_panasonic.c
head/sys/dev/acpi_support/acpi_rapidstart.c
head/sys/dev/acpi_support/acpi_sony.c
head/sys/dev/acpi_support/acpi_toshiba.c
head/sys/dev/acpi_support/atk0110.c
head/sys/dev/acpica/acpi.c
head/sys/dev/acpica/acpi_acad.c
head/sys/dev/acpica/acpi_battery.c
head/sys/dev/acpica/acpi_cpu.c
head/sys/dev/acpica/acpi_dock.c
head/sys/dev/acpica/acpi_ec.c
head/sys/dev/acpica/acpi_smbat.c
head/sys/dev/acpica/acpi_thermal.c
head/sys/dev/acpica/acpi_timer.c
head/sys/dev/acpica/acpi_video.c
head/sys/dev/adb/adb_kbd.c
head/sys/dev/adb/adb_mouse.c
head/sys/dev/ae/if_ae.c
head/sys/dev/age/if_age.c
head/sys/dev/ahci/ahci.c
head/sys/dev/aic7xxx/aic79xx_osm.c
head/sys/dev/alc/if_alc.c
head/sys/dev/ale/if_ale.c
head/sys/dev/altera/atse/if_atse.c
head/sys/dev/altera/jtag_uart/altera_jtag_uart_cons.c
head/sys/dev/amd_ecc_inject/ecc_inject.c
head/sys/dev/amdtemp/amdtemp.c
head/sys/dev/amr/amr.c
head/sys/dev/an/if_an.c
head/sys/dev/asmc/asmc.c
head/sys/dev/ata/ata-all.c
head/sys/dev/atkbdc/psm.c
head/sys/dev/bce/if_bce.c
head/sys/dev/bfe/if_bfe.c
head/sys/dev/bge/if_bge.c
head/sys/dev/bhnd/cores/pmu/bhnd_pmu.c
head/sys/dev/bktr/bktr_os.c
head/sys/dev/bnxt/bnxt_sysctl.c
head/sys/dev/bwn/if_bwn.c
head/sys/dev/bxe/bxe.c
head/sys/dev/cadence/if_cgem.c
head/sys/dev/cardbus/cardbus.c
head/sys/dev/coretemp/coretemp.c
head/sys/dev/cxgb/cxgb_main.c
head/sys/dev/cxgb/cxgb_sge.c
head/sys/dev/cxgbe/crypto/t4_crypto.c
head/sys/dev/cxgbe/cxgbei/cxgbei.c
head/sys/dev/cxgbe/cxgbei/icl_cxgbei.c
head/sys/dev/cxgbe/iw_cxgbe/cm.c
head/sys/dev/cxgbe/t4_main.c
head/sys/dev/cxgbe/t4_sge.c
head/sys/dev/dcons/dcons_os.c
head/sys/dev/efidev/efirt.c
head/sys/dev/ena/ena_sysctl.c
head/sys/dev/et/if_et.c
head/sys/dev/etherswitch/mtkswitch/mtkswitch.c
head/sys/dev/etherswitch/rtl8366/rtl8366rb.c
head/sys/dev/evdev/evdev.c
head/sys/dev/extres/clk/clk.c
head/sys/dev/extres/regulator/regulator.c
head/sys/dev/fb/vesa.c
head/sys/dev/fdc/fdc.c
head/sys/dev/fdt/fdt_common.c
head/sys/dev/firewire/firewire.c
head/sys/dev/firewire/fwmem.c
head/sys/dev/firewire/if_fwe.c
head/sys/dev/firewire/if_fwip.c
head/sys/dev/firewire/sbp.c
head/sys/dev/fxp/if_fxp.c
head/sys/dev/gpio/gpiobacklight.c
head/sys/dev/hifn/hifn7751.c
head/sys/dev/hptmv/hptproc.c
head/sys/dev/hwpmc/hwpmc_mod.c
head/sys/dev/hyperv/netvsc/if_hn.c
head/sys/dev/if_ndis/if_ndis_usb.c
head/sys/dev/iicbus/ad7417.c
head/sys/dev/iicbus/ad7418.c
head/sys/dev/iicbus/ads111x.c
head/sys/dev/iicbus/adt746x.c
head/sys/dev/iicbus/ds1631.c
head/sys/dev/iicbus/ds1775.c
head/sys/dev/iicbus/max6690.c
head/sys/dev/ioat/ioat.c
head/sys/dev/ioat/ioat_test.c
head/sys/dev/ipmi/ipmi.c
head/sys/dev/ipw/if_ipw.c
head/sys/dev/isci/isci_sysctl.c
head/sys/dev/iscsi_initiator/isc_sm.c
head/sys/dev/iscsi_initiator/iscsi.c
head/sys/dev/iser/icl_iser.c
head/sys/dev/isl/isl.c
head/sys/dev/isp/isp_freebsd.c
head/sys/dev/iwi/if_iwi.c
head/sys/dev/jme/if_jme.c
head/sys/dev/kbd/kbd.c
head/sys/dev/liquidio/lio_sysctl.c
head/sys/dev/malo/if_malo.c
head/sys/dev/malo/if_malo_pci.c
head/sys/dev/mfi/mfi.c
head/sys/dev/mge/if_mge.c
head/sys/dev/mlx4/mlx4_core/mlx4_main.c
head/sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c
head/sys/dev/mlx5/mlx5_core/mlx5_main.c
head/sys/dev/mlx5/mlx5_en/mlx5_en_ethtool.c
head/sys/dev/mlx5/mlx5_en/mlx5_en_hw_tls.c
head/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
head/sys/dev/mlx5/mlx5_en/mlx5_en_rl.c
head/sys/dev/mlx5/mlx5_ib/mlx5_ib_cong.c
head/sys/dev/mmc/mmc.c
head/sys/dev/mmc/mmcsd.c
head/sys/dev/mpr/mpr.c
head/sys/dev/mps/mps.c
head/sys/dev/mpt/mpt_raid.c
head/sys/dev/mrsas/mrsas.c
head/sys/dev/msk/if_msk.c
head/sys/dev/mwl/if_mwl.c
head/sys/dev/mwl/mwlhal.c
head/sys/dev/mxge/if_mxge.c
head/sys/dev/neta/if_mvneta.c
head/sys/dev/netmap/netmap.c
head/sys/dev/nfe/if_nfe.c
head/sys/dev/nge/if_nge.c
head/sys/dev/ntb/if_ntb/if_ntb.c
head/sys/dev/ntb/ntb.c
head/sys/dev/ntb/ntb_hw/ntb_hw_intel.c
head/sys/dev/ntb/ntb_transport.c
head/sys/dev/ntb/test/ntb_tool.c
head/sys/dev/nvd/nvd.c
head/sys/dev/nvme/nvme_sysctl.c
head/sys/dev/oce/oce_sysctl.c
head/sys/dev/ocs_fc/ocs_ioctl.c
head/sys/dev/ow/ow.c
head/sys/dev/ow/ow_temp.c
head/sys/dev/pccard/pccard.c
head/sys/dev/pccbb/pccbb.c
head/sys/dev/pccbb/pccbb_isa.c
head/sys/dev/puc/puc.c
head/sys/dev/qlnx/qlnxe/qlnx_os.c
head/sys/dev/qlnx/qlnxr/qlnxr_os.c
head/sys/dev/qlxgb/qla_os.c
head/sys/dev/qlxgbe/ql_hw.c
head/sys/dev/qlxgbe/ql_os.c
head/sys/dev/qlxge/qls_hw.c
head/sys/dev/qlxge/qls_os.c
head/sys/dev/re/if_re.c
head/sys/dev/rndtest/rndtest.c
head/sys/dev/rt/if_rt.c
head/sys/dev/safe/safe.c
head/sys/dev/sdhci/sdhci.c
head/sys/dev/sfxge/sfxge.c
head/sys/dev/sfxge/sfxge_ev.c
head/sys/dev/sfxge/sfxge_port.c
head/sys/dev/sfxge/sfxge_rx.c
head/sys/dev/sfxge/sfxge_tx.c
head/sys/dev/sk/if_sk.c
head/sys/dev/sound/clone.c
head/sys/dev/sound/midi/midi.c
head/sys/dev/sound/midi/sequencer.c
head/sys/dev/sound/pci/atiixp.c
head/sys/dev/sound/pci/emu10kx.c
head/sys/dev/sound/pci/es137x.c
head/sys/dev/sound/pci/hda/hdaa.c
head/sys/dev/sound/pci/hda/hdac.c
head/sys/dev/sound/pci/maestro.c
head/sys/dev/sound/pci/via8233.c
head/sys/dev/sound/pcm/ac97.c
head/sys/dev/sound/pcm/channel.c
head/sys/dev/sound/pcm/feeder_eq.c
head/sys/dev/sound/pcm/feeder_rate.c
head/sys/dev/sound/pcm/mixer.c
head/sys/dev/sound/pcm/sndstat.c
head/sys/dev/sound/pcm/sound.c
head/sys/dev/sound/pcm/vchan.c
head/sys/dev/ste/if_ste.c
head/sys/dev/stge/if_stge.c
head/sys/dev/syscons/syscons.c
head/sys/dev/tsec/if_tsec.c
head/sys/dev/twa/tw_osl_freebsd.c
head/sys/dev/twe/twe_freebsd.c
head/sys/dev/tws/tws.c
head/sys/dev/uart/uart_core.c
head/sys/dev/ubsec/ubsec.c
head/sys/dev/vge/if_vge.c
head/sys/dev/virtio/block/virtio_blk.c
head/sys/dev/virtio/network/if_vtnet.c
head/sys/dev/vmware/pvscsi/pvscsi.c
head/sys/dev/vmware/vmxnet3/if_vmx.c
head/sys/dev/vr/if_vr.c
head/sys/dev/vt/vt_core.c
head/sys/dev/vte/if_vte.c
head/sys/dev/watchdog/watchdog.c
head/sys/dev/wbwd/wbwd.c
head/sys/dev/wi/if_wi.c
head/sys/fs/cd9660/cd9660_vnops.c
head/sys/fs/devfs/devfs_devs.c
head/sys/fs/ext2fs/ext2_alloc.c
head/sys/fs/ext2fs/ext2_lookup.c
head/sys/fs/msdosfs/msdosfs_vnops.c
head/sys/fs/nfs/nfs_commonport.c
head/sys/fs/nfsclient/nfs_clnfsiod.c
head/sys/fs/nfsserver/nfs_fha_new.c
head/sys/fs/nfsserver/nfs_nfsdport.c
head/sys/fs/smbfs/smbfs_vfsops.c
head/sys/fs/tmpfs/tmpfs_subr.c
head/sys/gdb/gdb_main.c
head/sys/gdb/netgdb.c
head/sys/geom/cache/g_cache.c
head/sys/geom/concat/g_concat.c
head/sys/geom/gate/g_gate.c
head/sys/geom/geom_dev.c
head/sys/geom/geom_disk.c
head/sys/geom/geom_kern.c
head/sys/geom/journal/g_journal.c
head/sys/geom/label/g_label.c
head/sys/geom/label/g_label.h
head/sys/geom/linux_lvm/g_linux_lvm.c
head/sys/geom/mirror/g_mirror.c
head/sys/geom/mountver/g_mountver.c
head/sys/geom/multipath/g_multipath.c
head/sys/geom/nop/g_nop.c
head/sys/geom/part/g_part.c
head/sys/geom/part/g_part_gpt.c
head/sys/geom/part/g_part_ldm.c
head/sys/geom/part/g_part_mbr.c
head/sys/geom/raid/g_raid.c
head/sys/geom/raid/g_raid.h
head/sys/geom/raid3/g_raid3.c
head/sys/geom/shsec/g_shsec.c
head/sys/geom/stripe/g_stripe.c
head/sys/geom/uzip/g_uzip.c
head/sys/geom/vinum/geom_vinum.c
head/sys/geom/virstor/g_virstor.c
head/sys/geom/zero/g_zero.c
head/sys/gnu/gcov/gcov_subr.c
head/sys/i386/i386/elan-mmcr.c
head/sys/i386/i386/longrun.c
head/sys/i386/i386/machdep.c
head/sys/i386/i386/mp_clock.c
head/sys/i386/i386/pmap_base.c
head/sys/i386/i386/prof_machdep.c
head/sys/kern/imgact_binmisc.c
head/sys/kern/imgact_elf.c
head/sys/kern/kern_acct.c
head/sys/kern/kern_clock.c
head/sys/kern/kern_cons.c
head/sys/kern/kern_cpu.c
head/sys/kern/kern_et.c
head/sys/kern/kern_fail.c
head/sys/kern/kern_ffclock.c
head/sys/kern/kern_fork.c
head/sys/kern/kern_intr.c
head/sys/kern/kern_jail.c
head/sys/kern/kern_kcov.c
head/sys/kern/kern_ktr.c
head/sys/kern/kern_ktrace.c
head/sys/kern/kern_linker.c
head/sys/kern/kern_malloc.c
head/sys/kern/kern_mbuf.c
head/sys/kern/kern_mib.c
head/sys/kern/kern_mutex.c
head/sys/kern/kern_ntptime.c
head/sys/kern/kern_pmc.c
head/sys/kern/kern_poll.c
head/sys/kern/kern_proc.c
head/sys/kern/kern_prot.c
head/sys/kern/kern_racct.c
head/sys/kern/kern_rwlock.c
head/sys/kern/kern_sendfile.c
head/sys/kern/kern_shutdown.c
head/sys/kern/kern_sig.c
head/sys/kern/kern_switch.c
head/sys/kern/kern_sx.c
head/sys/kern/kern_tc.c
head/sys/kern/kern_thr.c
head/sys/kern/kern_umtx.c
head/sys/kern/posix4_mib.c
head/sys/kern/sched_4bsd.c
head/sys/kern/sched_ule.c
head/sys/kern/subr_bus.c
head/sys/kern/subr_devstat.c
head/sys/kern/subr_epoch.c
head/sys/kern/subr_kdb.c
head/sys/kern/subr_lock.c
head/sys/kern/subr_param.c
head/sys/kern/subr_prof.c
head/sys/kern/subr_rman.c
head/sys/kern/subr_rtc.c
head/sys/kern/subr_sleepqueue.c
head/sys/kern/subr_smp.c
head/sys/kern/subr_smr.c
head/sys/kern/subr_stats.c
head/sys/kern/subr_turnstile.c
head/sys/kern/subr_witness.c
head/sys/kern/sys_socket.c
head/sys/kern/uipc_accf.c
head/sys/kern/uipc_ktls.c
head/sys/kern/uipc_mbuf.c
head/sys/kern/uipc_mqueue.c
head/sys/kern/uipc_sockbuf.c
head/sys/kern/uipc_socket.c
head/sys/kern/uipc_usrreq.c
head/sys/kern/vfs_aio.c
head/sys/kern/vfs_cache.c
head/sys/libkern/iconv.c
head/sys/mips/atheros/ar531x/ar5315_machdep.c
head/sys/mips/atheros/if_arge.c
head/sys/mips/cavium/octe/mv88e61xxphy.c
head/sys/mips/cavium/octeon_machdep.c
head/sys/mips/cavium/usb/octusb.c
head/sys/mips/ingenic/jz4780_aic.c
head/sys/mips/mips/busdma_machdep.c
head/sys/mips/mips/pmap.c
head/sys/mips/mips/tick.c
head/sys/mips/nlm/cms.c
head/sys/mips/nlm/dev/net/xlpge.c
head/sys/mips/nlm/tick.c
head/sys/net/bpf.c
head/sys/net/bpf_jitter.c
head/sys/net/debugnet.c
head/sys/net/ieee8023ad_lacp.c
head/sys/net/if.c
head/sys/net/if_bridge.c
head/sys/net/if_enc.c
head/sys/net/if_epair.c
head/sys/net/if_ethersubr.c
head/sys/net/if_gif.c
head/sys/net/if_gre.c
head/sys/net/if_lagg.c
head/sys/net/if_me.c
head/sys/net/if_mib.c
head/sys/net/if_stf.c
head/sys/net/if_tuntap.c
head/sys/net/if_vxlan.c
head/sys/net/iflib.c
head/sys/net/netisr.c
head/sys/net/raw_cb.c
head/sys/net/route.c
head/sys/net/rss_config.c
head/sys/net/rtsock.c
head/sys/net/vnet.h
head/sys/netgraph/bluetooth/common/ng_bluetooth.c
head/sys/netgraph/bluetooth/socket/ng_btsocket.c
head/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c
head/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c
head/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c
head/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c
head/sys/netgraph/bluetooth/socket/ng_btsocket_sco.c
head/sys/netgraph/ng_base.c
head/sys/netgraph/ng_iface.c
head/sys/netgraph/ng_mppc.c
head/sys/netgraph/ng_pptpgre.c
head/sys/netgraph/ng_socket.c
head/sys/netinet/accf_http.c
head/sys/netinet/cc/cc.c
head/sys/netinet/cc/cc_cdg.c
head/sys/netinet/cc/cc_chd.c
head/sys/netinet/cc/cc_dctcp.c
head/sys/netinet/cc/cc_hd.c
head/sys/netinet/cc/cc_htcp.c
head/sys/netinet/cc/cc_newreno.c
head/sys/netinet/cc/cc_vegas.c
head/sys/netinet/if_ether.c
head/sys/netinet/in_mcast.c
head/sys/netinet/in_pcb.c
head/sys/netinet/in_proto.c
head/sys/netinet/ip_divert.c
head/sys/netinet/ip_id.c
head/sys/netinet/ip_input.c
head/sys/netinet/ip_mroute.c
head/sys/netinet/ip_reass.c
head/sys/netinet/libalias/alias.c
head/sys/netinet/netdump/netdump_client.c
head/sys/netinet/raw_ip.c
head/sys/netinet/siftr.c
head/sys/netinet/tcp_fastopen.c
head/sys/netinet/tcp_hostcache.c
head/sys/netinet/tcp_hpts.c
head/sys/netinet/tcp_input.c
head/sys/netinet/tcp_log_buf.c
head/sys/netinet/tcp_ratelimit.c
head/sys/netinet/tcp_reass.c
head/sys/netinet/tcp_sack.c
head/sys/netinet/tcp_stacks/bbr.c
head/sys/netinet/tcp_stacks/rack.c
head/sys/netinet/tcp_stats.c
head/sys/netinet/tcp_subr.c
head/sys/netinet/tcp_syncache.c
head/sys/netinet/tcp_timer.c
head/sys/netinet/tcp_timewait.c
head/sys/netinet/udp_usrreq.c
head/sys/netinet6/frag6.c
head/sys/netinet6/in6_mcast.c
head/sys/netinet6/in6_proto.c
head/sys/netinet6/in6_src.c
head/sys/netinet6/ip6_input.c
head/sys/netinet6/ip6_mroute.c
head/sys/netinet6/mld6.c
head/sys/netinet6/udp6_usrreq.c
head/sys/netipsec/ipsec.c
head/sys/netipsec/key.c
head/sys/netipsec/keysock.c
head/sys/netpfil/ipfw/dn_aqm_codel.c
head/sys/netpfil/ipfw/dn_aqm_pie.c
head/sys/netpfil/ipfw/dn_sched_fq_codel.c
head/sys/netpfil/ipfw/dn_sched_fq_pie.c
head/sys/netpfil/ipfw/ip_dn_io.c
head/sys/netpfil/ipfw/ip_fw2.c
head/sys/netpfil/ipfw/ip_fw_dynamic.c
head/sys/netpfil/ipfw/ip_fw_pfil.c
head/sys/netpfil/ipfw/nat64/ip_fw_nat64.c
head/sys/netsmb/smb_conn.c
head/sys/nfs/nfs_fha.c
head/sys/nlm/nlm_prot_impl.c
head/sys/ofed/drivers/infiniband/ulp/sdp/sdp_main.c
head/sys/opencrypto/ktls_ocf.c
head/sys/powerpc/amigaone/cpld_x5000.c
head/sys/powerpc/fpu/fpu_emu.c
head/sys/powerpc/ofw/ofw_syscons.c
head/sys/powerpc/powermac/atibl.c
head/sys/powerpc/powermac/fcu.c
head/sys/powerpc/powermac/nvbl.c
head/sys/powerpc/powermac/pmu.c
head/sys/powerpc/powermac/smu.c
head/sys/powerpc/powernv/opal_sensor.c
head/sys/powerpc/powerpc/busdma_machdep.c
head/sys/powerpc/powerpc/elf32_machdep.c
head/sys/powerpc/ps3/ps3disk.c
head/sys/riscv/riscv/busdma_bounce.c
head/sys/riscv/riscv/pmap.c
head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c
head/sys/rpc/svc.c
head/sys/security/audit/audit.c
head/sys/security/mac/mac_framework.c
head/sys/security/mac_biba/mac_biba.c
head/sys/security/mac_bsdextended/mac_bsdextended.c
head/sys/security/mac_ifoff/mac_ifoff.c
head/sys/security/mac_lomac/mac_lomac.c
head/sys/security/mac_mls/mac_mls.c
head/sys/security/mac_ntpd/mac_ntpd.c
head/sys/security/mac_partition/mac_partition.c
head/sys/security/mac_portacl/mac_portacl.c
head/sys/security/mac_seeotheruids/mac_seeotheruids.c
head/sys/security/mac_stub/mac_stub.c
head/sys/security/mac_test/mac_test.c
head/sys/security/mac_veriexec/mac_veriexec.c
head/sys/security/mac_veriexec/veriexec_fingerprint.c
head/sys/sys/jail.h
head/sys/tests/epoch/epoch_test.c
head/sys/tests/framework/kern_testfrwk.c
head/sys/ufs/ffs/ffs_alloc.c
head/sys/ufs/ffs/ffs_softdep.c
head/sys/ufs/ufs/ufs_dirhash.c
head/sys/ufs/ufs/ufs_vnops.c
head/sys/vm/memguard.c
head/sys/vm/redzone.c
head/sys/vm/swap_pager.c
head/sys/vm/uma_core.c
head/sys/vm/vm_meter.c
head/sys/vm/vm_object.c
head/sys/vm/vm_page.c
head/sys/vm/vm_pageout.c
head/sys/vm/vm_phys.c
head/sys/vm/vm_reserv.c
head/sys/x86/bios/vpd.c
head/sys/x86/cpufreq/hwpstate_intel.c
head/sys/x86/iommu/intel_utils.c
head/sys/x86/isa/clock.c
head/sys/x86/x86/busdma_bounce.c
head/sys/x86/x86/cpu_machdep.c
head/sys/x86/x86/intr_machdep.c
head/sys/x86/x86/local_apic.c
head/sys/x86/x86/mca.c
head/sys/x86/x86/mp_watchdog.c
head/sys/x86/x86/mp_x86.c
head/sys/x86/x86/tsc.c
Modified: head/sys/amd64/amd64/efirt_machdep.c
==============================================================================
--- head/sys/amd64/amd64/efirt_machdep.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/amd64/amd64/efirt_machdep.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -325,5 +325,7 @@ efi_time_sysctl_handler(SYSCTL_HANDLER_ARGS)
return (error);
}
-SYSCTL_PROC(_debug, OID_AUTO, efi_time, CTLTYPE_INT | CTLFLAG_RW, NULL, 0,
- efi_time_sysctl_handler, "I", "");
+SYSCTL_PROC(_debug, OID_AUTO, efi_time,
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, NULL, 0,
+ efi_time_sysctl_handler, "I",
+ "");
Modified: head/sys/amd64/amd64/machdep.c
==============================================================================
--- head/sys/amd64/amd64/machdep.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/amd64/amd64/machdep.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -1960,8 +1960,10 @@ smap_sysctl_handler(SYSCTL_HANDLER_ARGS)
}
return (error);
}
-SYSCTL_PROC(_machdep, OID_AUTO, smap, CTLTYPE_OPAQUE|CTLFLAG_RD, NULL, 0,
- smap_sysctl_handler, "S,bios_smap_xattr", "Raw BIOS SMAP data");
+SYSCTL_PROC(_machdep, OID_AUTO, smap,
+ CTLTYPE_OPAQUE | CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, 0,
+ smap_sysctl_handler, "S,bios_smap_xattr",
+ "Raw BIOS SMAP data");
static int
efi_map_sysctl_handler(SYSCTL_HANDLER_ARGS)
@@ -1980,8 +1982,10 @@ efi_map_sysctl_handler(SYSCTL_HANDLER_ARGS)
efisize = *((uint32_t *)efihdr - 1);
return (SYSCTL_OUT(req, efihdr, efisize));
}
-SYSCTL_PROC(_machdep, OID_AUTO, efi_map, CTLTYPE_OPAQUE|CTLFLAG_RD, NULL, 0,
- efi_map_sysctl_handler, "S,efi_map_header", "Raw EFI Memory Map");
+SYSCTL_PROC(_machdep, OID_AUTO, efi_map,
+ CTLTYPE_OPAQUE | CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, 0,
+ efi_map_sysctl_handler, "S,efi_map_header",
+ "Raw EFI Memory Map");
void
spinlock_enter(void)
Modified: head/sys/amd64/amd64/pmap.c
==============================================================================
--- head/sys/amd64/amd64/pmap.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/amd64/amd64/pmap.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -390,7 +390,8 @@ vm_paddr_t dmaplimit;
vm_offset_t kernel_vm_end = VM_MIN_KERNEL_ADDRESS;
pt_entry_t pg_nx;
-static SYSCTL_NODE(_vm, OID_AUTO, pmap, CTLFLAG_RD, 0, "VM/pmap parameters");
+static SYSCTL_NODE(_vm, OID_AUTO, pmap, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "VM/pmap parameters");
static int pg_ps_enabled = 1;
SYSCTL_INT(_vm_pmap, OID_AUTO, pg_ps_enabled, CTLFLAG_RDTUN | CTLFLAG_NOFETCH,
@@ -2196,7 +2197,7 @@ SYSCTL_UINT(_vm_pmap, OID_AUTO, large_map_pml4_entries
"Maximum number of PML4 entries for use by large map (tunable). "
"Each entry corresponds to 512GB of address space.");
-static SYSCTL_NODE(_vm_pmap, OID_AUTO, pde, CTLFLAG_RD, 0,
+static SYSCTL_NODE(_vm_pmap, OID_AUTO, pde, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
"2MB page mapping counters");
static u_long pmap_pde_demotions;
@@ -2215,7 +2216,7 @@ static u_long pmap_pde_promotions;
SYSCTL_ULONG(_vm_pmap_pde, OID_AUTO, promotions, CTLFLAG_RD,
&pmap_pde_promotions, 0, "2MB page promotions");
-static SYSCTL_NODE(_vm_pmap, OID_AUTO, pdpe, CTLFLAG_RD, 0,
+static SYSCTL_NODE(_vm_pmap, OID_AUTO, pdpe, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
"1GB page mapping counters");
static u_long pmap_pdpe_demotions;
Modified: head/sys/amd64/amd64/prof_machdep.c
==============================================================================
--- head/sys/amd64/amd64/prof_machdep.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/amd64/amd64/prof_machdep.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -262,8 +262,10 @@ sysctl_machdep_cputime_clock(SYSCTL_HANDLER_ARGS)
return (error);
}
-SYSCTL_PROC(_machdep, OID_AUTO, cputime_clock, CTLTYPE_INT | CTLFLAG_RW,
- 0, sizeof(u_int), sysctl_machdep_cputime_clock, "I", "");
+SYSCTL_PROC(_machdep, OID_AUTO, cputime_clock,
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, 0, sizeof(u_int),
+ sysctl_machdep_cputime_clock, "I",
+ "");
/*
* The start and stop routines need not be here since we turn off profiling
Modified: head/sys/amd64/linux32/linux32_sysvec.c
==============================================================================
--- head/sys/amd64/linux32/linux32_sysvec.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/amd64/linux32/linux32_sysvec.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -837,7 +837,7 @@ linux_copyout_strings(struct image_params *imgp, uintp
return (0);
}
-static SYSCTL_NODE(_compat, OID_AUTO, linux32, CTLFLAG_RW, 0,
+static SYSCTL_NODE(_compat, OID_AUTO, linux32, CTLFLAG_RW | CTLFLAG_MPSAFE, 0,
"32-bit Linux emulation");
static u_long linux32_maxdsiz = LINUX32_MAXDSIZ;
Modified: head/sys/arm/altera/socfpga/socfpga_rstmgr.c
==============================================================================
--- head/sys/arm/altera/socfpga/socfpga_rstmgr.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/altera/socfpga/socfpga_rstmgr.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -190,13 +190,16 @@ rstmgr_add_sysctl(struct rstmgr_softc *sc)
children = SYSCTL_CHILDREN(device_get_sysctl_tree(sc->dev));
SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "fpga2hps",
- CTLTYPE_UINT | CTLFLAG_RW, sc, RSTMGR_SYSCTL_FPGA2HPS,
+ CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT,
+ sc, RSTMGR_SYSCTL_FPGA2HPS,
rstmgr_sysctl, "I", "Enable fpga2hps bridge");
SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "lwhps2fpga",
- CTLTYPE_UINT | CTLFLAG_RW, sc, RSTMGR_SYSCTL_LWHPS2FPGA,
+ CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT,
+ sc, RSTMGR_SYSCTL_LWHPS2FPGA,
rstmgr_sysctl, "I", "Enable lwhps2fpga bridge");
SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "hps2fpga",
- CTLTYPE_UINT | CTLFLAG_RW, sc, RSTMGR_SYSCTL_HPS2FPGA,
+ CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT,
+ sc, RSTMGR_SYSCTL_HPS2FPGA,
rstmgr_sysctl, "I", "Enable hps2fpga bridge");
return (0);
Modified: head/sys/arm/arm/busdma_machdep.c
==============================================================================
--- head/sys/arm/arm/busdma_machdep.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/arm/busdma_machdep.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -148,7 +148,8 @@ static counter_u64_t maploads_physmem;
static STAILQ_HEAD(, bounce_zone) bounce_zone_list;
-SYSCTL_NODE(_hw, OID_AUTO, busdma, CTLFLAG_RD, 0, "Busdma parameters");
+SYSCTL_NODE(_hw, OID_AUTO, busdma, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "Busdma parameters");
SYSCTL_UINT(_hw_busdma, OID_AUTO, tags_total, CTLFLAG_RD, &tags_total, 0,
"Number of active tags");
SYSCTL_UINT(_hw_busdma, OID_AUTO, maps_total, CTLFLAG_RD, &maps_total, 0,
@@ -1591,7 +1592,7 @@ alloc_bounce_zone(bus_dma_tag_t dmat)
sysctl_ctx_init(&bz->sysctl_tree);
bz->sysctl_tree_top = SYSCTL_ADD_NODE(&bz->sysctl_tree,
SYSCTL_STATIC_CHILDREN(_hw_busdma), OID_AUTO, bz->zoneid,
- CTLFLAG_RD, 0, "");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, 0, "");
if (bz->sysctl_tree_top == NULL) {
sysctl_ctx_free(&bz->sysctl_tree);
return (0); /* XXX error code? */
Modified: head/sys/arm/arm/cpuinfo.c
==============================================================================
--- head/sys/arm/arm/cpuinfo.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/arm/cpuinfo.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -56,9 +56,9 @@ struct cpuinfo cpuinfo =
.icache_line_mask = 31,
};
-static SYSCTL_NODE(_hw, OID_AUTO, cpu, CTLFLAG_RD, 0,
+static SYSCTL_NODE(_hw, OID_AUTO, cpu, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
"CPU");
-static SYSCTL_NODE(_hw_cpu, OID_AUTO, quirks, CTLFLAG_RD, 0,
+static SYSCTL_NODE(_hw_cpu, OID_AUTO, quirks, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
"CPU quirks");
/*
Modified: head/sys/arm/arm/machdep_boot.c
==============================================================================
--- head/sys/arm/arm/machdep_boot.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/arm/machdep_boot.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -88,7 +88,8 @@ static char linux_command_line[LBABI_MAX_COMMAND_LINE
static char atags[LBABI_MAX_COMMAND_LINE * 2];
#endif /* defined(LINUX_BOOT_ABI) */
-SYSCTL_NODE(_hw, OID_AUTO, board, CTLFLAG_RD, 0, "Board attributes");
+SYSCTL_NODE(_hw, OID_AUTO, board, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "Board attributes");
SYSCTL_UINT(_hw_board, OID_AUTO, revision, CTLFLAG_RD,
&board_revision, 0, "Board revision");
SYSCTL_STRING(_hw_board, OID_AUTO, serial, CTLFLAG_RD,
Modified: head/sys/arm/arm/pmap-v6.c
==============================================================================
--- head/sys/arm/arm/pmap-v6.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/arm/pmap-v6.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -1550,7 +1550,8 @@ pmap_pte2list_init(vm_offset_t *head, void *base, int
*
*****************************************************************************/
-SYSCTL_NODE(_vm, OID_AUTO, pmap, CTLFLAG_RD, 0, "VM/pmap parameters");
+SYSCTL_NODE(_vm, OID_AUTO, pmap, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "VM/pmap parameters");
SYSCTL_INT(_vm_pmap, OID_AUTO, pv_entry_max, CTLFLAG_RD, &pv_entry_max, 0,
"Max number of PV entries");
@@ -1572,7 +1573,7 @@ pmap_ps_enabled(pmap_t pmap __unused)
return (sp_enabled != 0);
}
-static SYSCTL_NODE(_vm_pmap, OID_AUTO, pte1, CTLFLAG_RD, 0,
+static SYSCTL_NODE(_vm_pmap, OID_AUTO, pte1, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
"1MB page mapping counters");
static u_long pmap_pte1_demotions;
@@ -2108,8 +2109,9 @@ kvm_size(SYSCTL_HANDLER_ARGS)
return (sysctl_handle_long(oidp, &ksize, 0, req));
}
-SYSCTL_PROC(_vm, OID_AUTO, kvm_size, CTLTYPE_LONG|CTLFLAG_RD,
- 0, 0, kvm_size, "IU", "Size of KVM");
+SYSCTL_PROC(_vm, OID_AUTO, kvm_size,
+ CTLTYPE_LONG | CTLFLAG_RD | CTLFLAG_NEEDGIANT, 0, 0, kvm_size, "IU",
+ "Size of KVM");
static int
kvm_free(SYSCTL_HANDLER_ARGS)
@@ -2118,8 +2120,9 @@ kvm_free(SYSCTL_HANDLER_ARGS)
return (sysctl_handle_long(oidp, &kfree, 0, req));
}
-SYSCTL_PROC(_vm, OID_AUTO, kvm_free, CTLTYPE_LONG|CTLFLAG_RD,
- 0, 0, kvm_free, "IU", "Amount of KVM free");
+SYSCTL_PROC(_vm, OID_AUTO, kvm_free,
+ CTLTYPE_LONG | CTLFLAG_RD | CTLFLAG_NEEDGIANT, 0, 0, kvm_free, "IU",
+ "Amount of KVM free");
/***********************************************
*
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_audio.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_audio.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_audio.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -810,7 +810,7 @@ vchi_audio_sysctl_init(struct bcm2835_audio_info *sc)
tree_node = device_get_sysctl_tree(sc->dev);
tree = SYSCTL_CHILDREN(tree_node);
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "dest",
- CTLFLAG_RW | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, sizeof(*sc),
sysctl_bcm2835_audio_dest, "IU", "audio destination, "
"0 - auto, 1 - headphones, 2 - HDMI");
SYSCTL_ADD_UQUAD(ctx, tree, OID_AUTO, "callbacks",
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_bsc.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_bsc.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_bsc.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -248,16 +248,20 @@ bcm_bsc_sysctl_init(struct bcm_bsc_softc *sc)
tree_node = device_get_sysctl_tree(sc->sc_dev);
tree = SYSCTL_CHILDREN(tree_node);
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "frequency",
- CTLFLAG_RW | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT,
+ sc, sizeof(*sc),
bcm_bsc_clock_proc, "IU", "I2C BUS clock frequency");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "clock_stretch",
- CTLFLAG_RW | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT,
+ sc, sizeof(*sc),
bcm_bsc_clkt_proc, "IU", "I2C BUS clock stretch timeout");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "fall_edge_delay",
- CTLFLAG_RW | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT,
+ sc, sizeof(*sc),
bcm_bsc_fall_proc, "IU", "I2C BUS falling edge delay");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "rise_edge_delay",
- CTLFLAG_RW | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT,
+ sc, sizeof(*sc),
bcm_bsc_rise_proc, "IU", "I2C BUS rising edge delay");
SYSCTL_ADD_INT(ctx, tree, OID_AUTO, "debug",
CTLFLAG_RWTUN, &sc->sc_debug, 0,
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_cpufreq.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_cpufreq.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_cpufreq.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -1245,7 +1245,8 @@ bcm2835_cpufreq_init(void *arg)
ctx = device_get_sysctl_ctx(cpu);
SYSCTL_ADD_PROC(ctx,
SYSCTL_CHILDREN(device_get_sysctl_tree(cpu)), OID_AUTO,
- "temperature", CTLTYPE_INT | CTLFLAG_RD, sc, 0,
+ "temperature",
+ CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0,
sysctl_bcm2835_devcpu_temperature, "IK",
"Current SoC temperature");
}
@@ -1312,57 +1313,67 @@ bcm2835_cpufreq_attach(device_t dev)
/* create node for hw.cpufreq */
oid = SYSCTL_ADD_NODE(&bcm2835_sysctl_ctx,
SYSCTL_STATIC_CHILDREN(_hw), OID_AUTO, "cpufreq",
- CTLFLAG_RD, NULL, "");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "");
/* Frequency (Hz) */
SYSCTL_ADD_PROC(&bcm2835_sysctl_ctx, SYSCTL_CHILDREN(oid),
- OID_AUTO, "arm_freq", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ OID_AUTO, "arm_freq",
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
sysctl_bcm2835_cpufreq_arm_freq, "IU",
"ARM frequency (Hz)");
SYSCTL_ADD_PROC(&bcm2835_sysctl_ctx, SYSCTL_CHILDREN(oid),
- OID_AUTO, "core_freq", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ OID_AUTO, "core_freq",
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
sysctl_bcm2835_cpufreq_core_freq, "IU",
"Core frequency (Hz)");
SYSCTL_ADD_PROC(&bcm2835_sysctl_ctx, SYSCTL_CHILDREN(oid),
- OID_AUTO, "sdram_freq", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ OID_AUTO, "sdram_freq",
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
sysctl_bcm2835_cpufreq_sdram_freq, "IU",
"SDRAM frequency (Hz)");
/* Turbo state */
SYSCTL_ADD_PROC(&bcm2835_sysctl_ctx, SYSCTL_CHILDREN(oid),
- OID_AUTO, "turbo", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ OID_AUTO, "turbo",
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
sysctl_bcm2835_cpufreq_turbo, "IU",
"Disables dynamic clocking");
/* Voltage (offset from 1.2V in units of 0.025V) */
SYSCTL_ADD_PROC(&bcm2835_sysctl_ctx, SYSCTL_CHILDREN(oid),
- OID_AUTO, "voltage_core", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ OID_AUTO, "voltage_core",
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
sysctl_bcm2835_cpufreq_voltage_core, "I",
"ARM/GPU core voltage"
"(offset from 1.2V in units of 0.025V)");
SYSCTL_ADD_PROC(&bcm2835_sysctl_ctx, SYSCTL_CHILDREN(oid),
- OID_AUTO, "voltage_sdram", CTLTYPE_INT | CTLFLAG_WR, sc,
+ OID_AUTO, "voltage_sdram",
+ CTLTYPE_INT | CTLFLAG_WR | CTLFLAG_NEEDGIANT, sc,
0, sysctl_bcm2835_cpufreq_voltage_sdram, "I",
"SDRAM voltage (offset from 1.2V in units of 0.025V)");
/* Voltage individual SDRAM */
SYSCTL_ADD_PROC(&bcm2835_sysctl_ctx, SYSCTL_CHILDREN(oid),
- OID_AUTO, "voltage_sdram_c", CTLTYPE_INT | CTLFLAG_RW, sc,
+ OID_AUTO, "voltage_sdram_c",
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc,
0, sysctl_bcm2835_cpufreq_voltage_sdram_c, "I",
"SDRAM controller voltage"
"(offset from 1.2V in units of 0.025V)");
SYSCTL_ADD_PROC(&bcm2835_sysctl_ctx, SYSCTL_CHILDREN(oid),
- OID_AUTO, "voltage_sdram_i", CTLTYPE_INT | CTLFLAG_RW, sc,
+ OID_AUTO, "voltage_sdram_i",
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc,
0, sysctl_bcm2835_cpufreq_voltage_sdram_i, "I",
"SDRAM I/O voltage (offset from 1.2V in units of 0.025V)");
SYSCTL_ADD_PROC(&bcm2835_sysctl_ctx, SYSCTL_CHILDREN(oid),
- OID_AUTO, "voltage_sdram_p", CTLTYPE_INT | CTLFLAG_RW, sc,
+ OID_AUTO, "voltage_sdram_p",
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc,
0, sysctl_bcm2835_cpufreq_voltage_sdram_p, "I",
"SDRAM phy voltage (offset from 1.2V in units of 0.025V)");
/* Temperature */
SYSCTL_ADD_PROC(&bcm2835_sysctl_ctx, SYSCTL_CHILDREN(oid),
- OID_AUTO, "temperature", CTLTYPE_INT | CTLFLAG_RD, sc, 0,
+ OID_AUTO, "temperature",
+ CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0,
sysctl_bcm2835_cpufreq_temperature, "I",
"SoC temperature (thousandths of a degree C)");
}
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_fbd.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_fbd.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_fbd.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -199,7 +199,7 @@ bcm_fb_sysctl_init(struct bcmsc_softc *sc)
tree_node = device_get_sysctl_tree(sc->dev);
tree = SYSCTL_CHILDREN(tree_node);
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "resync",
- CTLFLAG_RW | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, sizeof(*sc),
bcm_fb_resync_sysctl, "IU", "Set to resync framebuffer with VC");
}
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_gpio.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_gpio.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_gpio.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -594,14 +594,14 @@ bcm_gpio_sysctl_init(struct bcm_gpio_softc *sc)
tree_node = device_get_sysctl_tree(sc->sc_dev);
tree = SYSCTL_CHILDREN(tree_node);
pin_node = SYSCTL_ADD_NODE(ctx, tree, OID_AUTO, "pin",
- CTLFLAG_RD, NULL, "GPIO Pins");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "GPIO Pins");
pin_tree = SYSCTL_CHILDREN(pin_node);
for (i = 0; i < sc->sc_gpio_npins; i++) {
snprintf(pinbuf, sizeof(pinbuf), "%d", i);
pinN_node = SYSCTL_ADD_NODE(ctx, pin_tree, OID_AUTO, pinbuf,
- CTLFLAG_RD, NULL, "GPIO Pin");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "GPIO Pin");
pinN_tree = SYSCTL_CHILDREN(pinN_node);
sc->sc_sysctl[i].sc = sc;
@@ -609,7 +609,7 @@ bcm_gpio_sysctl_init(struct bcm_gpio_softc *sc)
sc_sysctl->sc = sc;
sc_sysctl->pin = sc->sc_gpio_pins[i].gp_pin;
SYSCTL_ADD_PROC(ctx, pinN_tree, OID_AUTO, "function",
- CTLFLAG_RW | CTLTYPE_STRING, sc_sysctl,
+ CTLFLAG_RW | CTLTYPE_STRING | CTLFLAG_NEEDGIANT, sc_sysctl,
sizeof(struct bcm_gpio_sysctl), bcm_gpio_func_proc,
"A", "Pin Function");
}
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_pwm.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_pwm.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_pwm.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -364,7 +364,8 @@ bcm_pwm_sysctl_init(struct bcm_pwm_softc *sc)
if (bootverbose) {
#define RR(x,y) \
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, y, \
- CTLFLAG_RW | CTLTYPE_UINT, sc, 0x##x, \
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, \
+ sc, 0x##x, \
bcm_pwm_reg_proc, "IU", "Register 0x" #x " " y);
RR(24, "DAT2")
@@ -379,31 +380,31 @@ bcm_pwm_sysctl_init(struct bcm_pwm_softc *sc)
}
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "pwm_freq",
- CTLFLAG_RD | CTLTYPE_UINT, sc, 0,
+ CTLFLAG_RD | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, 0,
bcm_pwm_pwm_freq_proc, "IU", "PWM frequency ch 1 (Hz)");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "period",
- CTLFLAG_RW | CTLTYPE_UINT, sc, 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, 0,
bcm_pwm_period_proc, "IU", "PWM period ch 1 (#clocks)");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "ratio",
- CTLFLAG_RW | CTLTYPE_UINT, sc, 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, 0,
bcm_pwm_ratio_proc, "IU", "PWM ratio ch 1 (0...period)");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "freq",
- CTLFLAG_RW | CTLTYPE_UINT, sc, 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, 0,
bcm_pwm_freq_proc, "IU", "PWM clock (Hz)");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "mode",
- CTLFLAG_RW | CTLTYPE_UINT, sc, 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, 0,
bcm_pwm_mode_proc, "IU", "PWM mode ch 1 (0=off, 1=pwm, 2=dither)");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "pwm_freq2",
- CTLFLAG_RD | CTLTYPE_UINT, sc, 0,
+ CTLFLAG_RD | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, 0,
bcm_pwm_pwm_freq2_proc, "IU", "PWM frequency ch 2 (Hz)");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "period2",
- CTLFLAG_RW | CTLTYPE_UINT, sc, 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, 0,
bcm_pwm_period2_proc, "IU", "PWM period ch 2 (#clocks)");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "ratio2",
- CTLFLAG_RW | CTLTYPE_UINT, sc, 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, 0,
bcm_pwm_ratio2_proc, "IU", "PWM ratio ch 2 (0...period)");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "mode2",
- CTLFLAG_RW | CTLTYPE_UINT, sc, 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, 0,
bcm_pwm_mode2_proc, "IU", "PWM mode ch 2 (0=off, 1=pwm, 2=dither)");
}
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_rng.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_rng.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_rng.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -403,14 +403,14 @@ bcm2835_rng_attach(device_t dev)
"underrun", CTLFLAG_RD, &sc->sc_underrun,
"Number of FIFO underruns");
SYSCTL_ADD_PROC(sysctl_ctx, SYSCTL_CHILDREN(sysctl_tree), OID_AUTO,
- "2xspeed", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ "2xspeed", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
sysctl_bcm2835_rng_2xspeed, "I", "Enable RBG 2X SPEED");
SYSCTL_ADD_INT(sysctl_ctx, SYSCTL_CHILDREN(sysctl_tree), OID_AUTO,
"stall_count", CTLFLAG_RW, &sc->sc_stall_count,
RNG_STALL_COUNT_DEFAULT, "Number of underruns to assume RNG stall");
#ifdef BCM2835_RNG_DEBUG_REGISTERS
SYSCTL_ADD_PROC(sysctl_ctx, SYSCTL_CHILDREN(sysctl_tree), OID_AUTO,
- "dumpregs", CTLTYPE_STRING | CTLFLAG_RD, sc, 0,
+ "dumpregs", CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0,
sysctl_bcm2835_rng_dump, "S", "Dump RNG registers");
#endif
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_spi.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_spi.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_spi.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -204,22 +204,22 @@ bcm_spi_sysctl_init(struct bcm_spi_softc *sc)
tree_node = device_get_sysctl_tree(sc->sc_dev);
tree = SYSCTL_CHILDREN(tree_node);
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "clock",
- CTLFLAG_RD | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RD | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, sizeof(*sc),
bcm_spi_clock_proc, "IU", "SPI BUS clock frequency");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "cpol",
- CTLFLAG_RD | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RD | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, sizeof(*sc),
bcm_spi_cpol_proc, "IU", "SPI BUS clock polarity");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "cpha",
- CTLFLAG_RD | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RD | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, sizeof(*sc),
bcm_spi_cpha_proc, "IU", "SPI BUS clock phase");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "cspol0",
- CTLFLAG_RD | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RD | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, sizeof(*sc),
bcm_spi_cspol0_proc, "IU", "SPI BUS chip select 0 polarity");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "cspol1",
- CTLFLAG_RD | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RD | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, sizeof(*sc),
bcm_spi_cspol1_proc, "IU", "SPI BUS chip select 1 polarity");
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "cspol2",
- CTLFLAG_RD | CTLTYPE_UINT, sc, sizeof(*sc),
+ CTLFLAG_RD | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, sizeof(*sc),
bcm_spi_cspol2_proc, "IU", "SPI BUS chip select 2 polarity");
}
Modified: head/sys/arm/freescale/imx/imx6_anatop.c
==============================================================================
--- head/sys/arm/freescale/imx/imx6_anatop.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/freescale/imx/imx6_anatop.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -400,11 +400,13 @@ cpufreq_initialize(struct imx6_anatop_softc *sc)
"CPU frequency");
SYSCTL_ADD_PROC(NULL, SYSCTL_STATIC_CHILDREN(_hw_imx),
- OID_AUTO, "cpu_minmhz", CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH,
+ OID_AUTO, "cpu_minmhz",
+ CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_NEEDGIANT,
sc, 0, cpufreq_sysctl_minmhz, "IU", "Minimum CPU frequency");
SYSCTL_ADD_PROC(NULL, SYSCTL_STATIC_CHILDREN(_hw_imx),
- OID_AUTO, "cpu_maxmhz", CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH,
+ OID_AUTO, "cpu_maxmhz",
+ CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_NEEDGIANT,
sc, 0, cpufreq_sysctl_maxmhz, "IU", "Maximum CPU frequency");
SYSCTL_ADD_INT(NULL, SYSCTL_STATIC_CHILDREN(_hw_imx),
@@ -627,10 +629,12 @@ initialize_tempmon(struct imx6_anatop_softc *sc)
0, tempmon_throttle_check, sc, 0);
SYSCTL_ADD_PROC(NULL, SYSCTL_STATIC_CHILDREN(_hw_imx),
- OID_AUTO, "temperature", CTLTYPE_INT | CTLFLAG_RD, sc, 0,
+ OID_AUTO, "temperature",
+ CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0,
temp_sysctl_handler, "IK", "Current die temperature");
SYSCTL_ADD_PROC(NULL, SYSCTL_STATIC_CHILDREN(_hw_imx),
- OID_AUTO, "throttle_temperature", CTLTYPE_INT | CTLFLAG_RW, sc,
+ OID_AUTO, "throttle_temperature",
+ CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc,
0, temp_throttle_sysctl_handler, "IK",
"Throttle CPU when exceeding this temperature");
}
Modified: head/sys/arm/freescale/imx/imx_machdep.c
==============================================================================
--- head/sys/arm/freescale/imx/imx_machdep.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/freescale/imx/imx_machdep.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -47,7 +47,8 @@ __FBSDID("$FreeBSD$");
#include <arm/freescale/imx/imx_machdep.h>
#include <arm/freescale/imx/imx_wdogreg.h>
-SYSCTL_NODE(_hw, OID_AUTO, imx, CTLFLAG_RW, NULL, "i.MX container");
+SYSCTL_NODE(_hw, OID_AUTO, imx, CTLFLAG_RW | CTLFLAG_MPSAFE, NULL,
+ "i.MX container");
static int last_reset_status;
SYSCTL_UINT(_hw_imx, OID_AUTO, last_reset_status, CTLFLAG_RD,
Modified: head/sys/arm/mv/mv_thermal.c
==============================================================================
--- head/sys/arm/mv/mv_thermal.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/mv/mv_thermal.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -333,7 +333,7 @@ mv_thermal_attach(device_t dev)
oid = SYSCTL_CHILDREN(device_get_sysctl_tree(dev));
/* There is always at least one sensor */
SYSCTL_ADD_PROC(ctx, oid, OID_AUTO, "internal",
- CTLTYPE_INT | CTLFLAG_RD,
+ CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT,
dev, 0, mv_thermal_sysctl,
"IK",
"Internal Temperature");
@@ -342,7 +342,7 @@ mv_thermal_attach(device_t dev)
snprintf(name, sizeof(name), "cpu%d", i);
snprintf(desc, sizeof(desc), "CPU%d Temperature", i);
SYSCTL_ADD_PROC(ctx, oid, OID_AUTO, name,
- CTLTYPE_INT | CTLFLAG_RD,
+ CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT,
dev, i + 1, mv_thermal_sysctl,
"IK",
desc);
Modified: head/sys/arm/mv/mv_ts.c
==============================================================================
--- head/sys/arm/mv/mv_ts.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/mv/mv_ts.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -150,7 +150,8 @@ ts_attach(device_t dev)
}
ctx = device_get_sysctl_ctx(dev);
SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(device_get_sysctl_tree(dev)),
- OID_AUTO, "temperature", CTLTYPE_INT | CTLFLAG_RD, dev,
+ OID_AUTO, "temperature",
+ CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, dev,
0, ts_sysctl_handler, "IK", "Current Temperature");
return (0);
Modified: head/sys/arm/nvidia/tegra124/tegra124_coretemp.c
==============================================================================
--- head/sys/arm/nvidia/tegra124/tegra124_coretemp.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/nvidia/tegra124/tegra124_coretemp.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -220,7 +220,8 @@ tegra124_coretemp_attach(device_t dev)
oid = SYSCTL_ADD_NODE(ctx,
SYSCTL_CHILDREN(device_get_sysctl_tree(pdev)), OID_AUTO,
- "coretemp", CTLFLAG_RD, NULL, "Per-CPU thermal information");
+ "coretemp", CTLFLAG_RD | CTLFLAG_MPSAFE, NULL,
+ "Per-CPU thermal information");
/*
* Add the MIBs to dev.cpu.N and dev.cpu.N.coretemp.
Modified: head/sys/arm/nvidia/tegra_soctherm.c
==============================================================================
--- head/sys/arm/nvidia/tegra_soctherm.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/nvidia/tegra_soctherm.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -511,7 +511,7 @@ soctherm_init_sysctl(struct soctherm_softc *sc)
/* create node for hw.temp */
oid = SYSCTL_ADD_NODE(&soctherm_sysctl_ctx,
SYSCTL_STATIC_CHILDREN(_hw), OID_AUTO, "temperature",
- CTLFLAG_RD, NULL, "");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "");
if (oid == NULL)
return (ENXIO);
@@ -519,7 +519,7 @@ soctherm_init_sysctl(struct soctherm_softc *sc)
for (i = sc->ntsensors - 1; i >= 0; i--) {
tmp = SYSCTL_ADD_PROC(&soctherm_sysctl_ctx,
SYSCTL_CHILDREN(oid), OID_AUTO, sc->tsensors[i].name,
- CTLTYPE_INT | CTLFLAG_RD, sc, i,
+ CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, i,
soctherm_sysctl_temperature, "IK", "SoC Temperature");
if (tmp == NULL)
return (ENXIO);
Modified: head/sys/arm/ti/am335x/am335x_ehrpwm.c
==============================================================================
--- head/sys/arm/ti/am335x/am335x_ehrpwm.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/ti/am335x/am335x_ehrpwm.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -589,23 +589,23 @@ am335x_ehrpwm_attach(device_t dev)
tree = device_get_sysctl_tree(sc->sc_dev);
sc->sc_clkdiv_oid = SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO,
- "clkdiv", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ "clkdiv", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
am335x_ehrpwm_sysctl_clkdiv, "I", "PWM clock prescaler");
sc->sc_freq_oid = SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO,
- "freq", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ "freq", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
am335x_ehrpwm_sysctl_freq, "I", "PWM frequency");
sc->sc_period_oid = SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO,
- "period", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ "period", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
am335x_ehrpwm_sysctl_period, "I", "PWM period");
sc->sc_chanA_oid = SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO,
- "dutyA", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ "dutyA", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
am335x_ehrpwm_sysctl_duty, "I", "Channel A duty cycles");
sc->sc_chanB_oid = SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO,
- "dutyB", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ "dutyB", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
am335x_ehrpwm_sysctl_duty, "I", "Channel B duty cycles");
/* CONFIGURE EPWM1 */
Modified: head/sys/arm/ti/am335x/am335x_lcd.c
==============================================================================
--- head/sys/arm/ti/am335x/am335x_lcd.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/ti/am335x/am335x_lcd.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -1025,7 +1025,7 @@ am335x_lcd_attach(device_t dev)
ctx = device_get_sysctl_ctx(sc->sc_dev);
tree = device_get_sysctl_tree(sc->sc_dev);
sc->sc_oid = SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO,
- "backlight", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
+ "backlight", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0,
am335x_lcd_sysctl_backlight, "I", "LCD backlight");
sc->sc_backlight = 0;
/* Check if eCAS interface is available at this point */
Modified: head/sys/arm/ti/am335x/am335x_musb.c
==============================================================================
--- head/sys/arm/ti/am335x/am335x_musb.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/ti/am335x/am335x_musb.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -115,7 +115,9 @@ static struct resource_spec am335x_musbotg_mem_spec[]
#ifdef USB_DEBUG
static int usbssdebug = 0;
-static SYSCTL_NODE(_hw_usb, OID_AUTO, am335x_usbss, CTLFLAG_RW, 0, "AM335x USBSS");
+static SYSCTL_NODE(_hw_usb, OID_AUTO, am335x_usbss,
+ CTLFLAG_RW | CTLFLAG_MPSAFE, 0,
+ "AM335x USBSS");
SYSCTL_INT(_hw_usb_am335x_usbss, OID_AUTO, debug, CTLFLAG_RW,
&usbssdebug, 0, "Debug level");
#endif
Modified: head/sys/arm/ti/cpsw/if_cpsw.c
==============================================================================
--- head/sys/arm/ti/cpsw/if_cpsw.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/ti/cpsw/if_cpsw.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -2725,15 +2725,17 @@ cpsw_add_sysctls(struct cpsw_softc *sc)
CTLFLAG_RW, &sc->debug, 0, "Enable switch debug messages");
SYSCTL_ADD_PROC(ctx, parent, OID_AUTO, "attachedSecs",
- CTLTYPE_UINT | CTLFLAG_RD, sc, 0, cpsw_stat_attached, "IU",
+ CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT,
+ sc, 0, cpsw_stat_attached, "IU",
"Time since driver attach");
SYSCTL_ADD_PROC(ctx, parent, OID_AUTO, "intr_coalesce_us",
- CTLTYPE_UINT | CTLFLAG_RW, sc, 0, cpsw_intr_coalesce, "IU",
+ CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT,
+ sc, 0, cpsw_intr_coalesce, "IU",
"minimum time between interrupts");
node = SYSCTL_ADD_NODE(ctx, parent, OID_AUTO, "ports",
- CTLFLAG_RD, NULL, "CPSW Ports Statistics");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "CPSW Ports Statistics");
ports_parent = SYSCTL_CHILDREN(node);
for (i = 0; i < CPSW_PORTS; i++) {
if (!sc->dualemac && i != sc->active_slave)
@@ -2741,38 +2743,39 @@ cpsw_add_sysctls(struct cpsw_softc *sc)
port[0] = '0' + i;
port[1] = '\0';
node = SYSCTL_ADD_NODE(ctx, ports_parent, OID_AUTO,
- port, CTLFLAG_RD, NULL, "CPSW Port Statistics");
+ port, CTLFLAG_RD | CTLFLAG_MPSAFE, NULL,
+ "CPSW Port Statistics");
port_parent = SYSCTL_CHILDREN(node);
SYSCTL_ADD_PROC(ctx, port_parent, OID_AUTO, "uptime",
- CTLTYPE_UINT | CTLFLAG_RD, sc, i,
+ CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, i,
cpsw_stat_uptime, "IU", "Seconds since driver init");
}
stats_node = SYSCTL_ADD_NODE(ctx, parent, OID_AUTO, "stats",
- CTLFLAG_RD, NULL, "CPSW Statistics");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "CPSW Statistics");
stats_parent = SYSCTL_CHILDREN(stats_node);
for (i = 0; i < CPSW_SYSCTL_COUNT; ++i) {
SYSCTL_ADD_PROC(ctx, stats_parent, i,
cpsw_stat_sysctls[i].oid,
- CTLTYPE_U64 | CTLFLAG_RD, sc, 0,
- cpsw_stats_sysctl, "IU",
+ CTLTYPE_U64 | CTLFLAG_RD | CTLFLAG_NEEDGIANT,
+ sc, 0, cpsw_stats_sysctl, "IU",
cpsw_stat_sysctls[i].oid);
}
queue_node = SYSCTL_ADD_NODE(ctx, parent, OID_AUTO, "queue",
- CTLFLAG_RD, NULL, "CPSW Queue Statistics");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "CPSW Queue Statistics");
queue_parent = SYSCTL_CHILDREN(queue_node);
node = SYSCTL_ADD_NODE(ctx, queue_parent, OID_AUTO, "tx",
- CTLFLAG_RD, NULL, "TX Queue Statistics");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "TX Queue Statistics");
cpsw_add_queue_sysctls(ctx, node, &sc->tx);
node = SYSCTL_ADD_NODE(ctx, queue_parent, OID_AUTO, "rx",
- CTLFLAG_RD, NULL, "RX Queue Statistics");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "RX Queue Statistics");
cpsw_add_queue_sysctls(ctx, node, &sc->rx);
node = SYSCTL_ADD_NODE(ctx, parent, OID_AUTO, "watchdog",
- CTLFLAG_RD, NULL, "Watchdog Statistics");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "Watchdog Statistics");
cpsw_add_watchdog_sysctls(ctx, node, sc);
}
Modified: head/sys/arm/ti/ti_adc.c
==============================================================================
--- head/sys/arm/ti/ti_adc.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/ti/ti_adc.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -562,10 +562,10 @@ ti_adc_sysctl_init(struct ti_adc_softc *sc)
tree_node = device_get_sysctl_tree(sc->sc_dev);
tree = SYSCTL_CHILDREN(tree_node);
SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "clockdiv",
- CTLFLAG_RW | CTLTYPE_UINT, sc, 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT, sc, 0,
ti_adc_clockdiv_proc, "IU", "ADC clock prescaler");
inp_node = SYSCTL_ADD_NODE(ctx, tree, OID_AUTO, "ain",
- CTLFLAG_RD, NULL, "ADC inputs");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "ADC inputs");
inp_tree = SYSCTL_CHILDREN(inp_node);
for (i = 0; i < sc->sc_adc_nchannels; i++) {
@@ -573,17 +573,20 @@ ti_adc_sysctl_init(struct ti_adc_softc *sc)
snprintf(pinbuf, sizeof(pinbuf), "%d", ain);
inpN_node = SYSCTL_ADD_NODE(ctx, inp_tree, OID_AUTO, pinbuf,
- CTLFLAG_RD, NULL, "ADC input");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "ADC input");
inpN_tree = SYSCTL_CHILDREN(inpN_node);
SYSCTL_ADD_PROC(ctx, inpN_tree, OID_AUTO, "enable",
- CTLFLAG_RW | CTLTYPE_UINT, &ti_adc_inputs[ain], 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT,
+ &ti_adc_inputs[ain], 0,
ti_adc_enable_proc, "IU", "Enable ADC input");
SYSCTL_ADD_PROC(ctx, inpN_tree, OID_AUTO, "open_delay",
- CTLFLAG_RW | CTLTYPE_UINT, &ti_adc_inputs[ain], 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT,
+ &ti_adc_inputs[ain], 0,
ti_adc_open_delay_proc, "IU", "ADC open delay");
SYSCTL_ADD_PROC(ctx, inpN_tree, OID_AUTO, "samples_avg",
- CTLFLAG_RW | CTLTYPE_UINT, &ti_adc_inputs[ain], 0,
+ CTLFLAG_RW | CTLTYPE_UINT | CTLFLAG_NEEDGIANT,
+ &ti_adc_inputs[ain], 0,
ti_adc_samples_avg_proc, "IU", "ADC samples average");
SYSCTL_ADD_INT(ctx, inpN_tree, OID_AUTO, "input",
CTLFLAG_RD, &ti_adc_inputs[ain].value, 0,
Modified: head/sys/arm/ti/ti_pruss.c
==============================================================================
--- head/sys/arm/ti/ti_pruss.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/ti/ti_pruss.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -542,10 +542,11 @@ ti_pruss_attach(device_t dev)
sc->sc_glob_irqen = false;
struct sysctl_oid *irq_root = SYSCTL_ADD_NODE(clist, SYSCTL_CHILDREN(poid),
- OID_AUTO, "irq", CTLFLAG_RD, 0,
+ OID_AUTO, "irq", CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
"PRUSS Host Interrupts");
SYSCTL_ADD_PROC(clist, SYSCTL_CHILDREN(poid), OID_AUTO,
- "global_interrupt_enable", CTLFLAG_RW | CTLTYPE_U8,
+ "global_interrupt_enable",
+ CTLFLAG_RW | CTLTYPE_U8 | CTLFLAG_NEEDGIANT,
sc, 0, ti_pruss_global_interrupt_enable,
"CU", "Global interrupt enable");
@@ -564,16 +565,19 @@ ti_pruss_attach(device_t dev)
snprintf(name, sizeof(name), "%d", i);
struct sysctl_oid *irq_nodes = SYSCTL_ADD_NODE(clist, SYSCTL_CHILDREN(irq_root),
- OID_AUTO, name, CTLFLAG_RD, 0,
+ OID_AUTO, name, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
"PRUSS Interrupts");
SYSCTL_ADD_PROC(clist, SYSCTL_CHILDREN(irq_nodes), OID_AUTO,
- "channel", CTLFLAG_RW | CTLTYPE_STRING, sc, i, ti_pruss_channel_map,
+ "channel", CTLFLAG_RW | CTLTYPE_STRING | CTLFLAG_NEEDGIANT,
+ sc, i, ti_pruss_channel_map,
"A", "Channel attached to this irq");
SYSCTL_ADD_PROC(clist, SYSCTL_CHILDREN(irq_nodes), OID_AUTO,
- "event", CTLFLAG_RW | CTLTYPE_STRING, sc, i, ti_pruss_event_map,
+ "event", CTLFLAG_RW | CTLTYPE_STRING | CTLFLAG_NEEDGIANT,
+ sc, i, ti_pruss_event_map,
"A", "Event attached to this irq");
SYSCTL_ADD_PROC(clist, SYSCTL_CHILDREN(irq_nodes), OID_AUTO,
- "enable", CTLFLAG_RW | CTLTYPE_U8, sc, i, ti_pruss_interrupt_enable,
+ "enable", CTLFLAG_RW | CTLTYPE_U8 | CTLFLAG_NEEDGIANT,
+ sc, i, ti_pruss_interrupt_enable,
"CU", "Enable/Disable interrupt");
sc->sc_irq_devs[i].event = -1;
Modified: head/sys/arm/ti/twl/twl_clks.c
==============================================================================
--- head/sys/arm/ti/twl/twl_clks.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/ti/twl/twl_clks.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -471,7 +471,7 @@ twl_clks_add_clock(struct twl_clks_softc *sc, const ch
/* Add a sysctl entry for the clock */
new->oid = SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, name,
- CTLTYPE_INT | CTLFLAG_RD, sc, 0,
+ CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0,
twl_clks_sysctl_clock, "I", "external clock");
/* Finally add the regulator to list of supported regulators */
Modified: head/sys/arm/ti/twl/twl_vreg.c
==============================================================================
--- head/sys/arm/ti/twl/twl_vreg.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/ti/twl/twl_vreg.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -848,7 +848,7 @@ twl_vreg_add_regulator(struct twl_vreg_softc *sc, cons
/* Add a sysctl entry for the voltage */
new->oid = SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, name,
- CTLTYPE_INT | CTLFLAG_RD, sc, 0,
+ CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0,
twl_vreg_sysctl_voltage, "I", "voltage regulator");
/* Finally add the regulator to list of supported regulators */
Modified: head/sys/arm/xilinx/zy7_devcfg.c
==============================================================================
--- head/sys/arm/xilinx/zy7_devcfg.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/xilinx/zy7_devcfg.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -101,12 +101,14 @@ static struct zy7_fclk_config fclk_configs[FCLK_NUM];
#define RD4(sc, off) (bus_read_4((sc)->mem_res, (off)))
#define WR4(sc, off, val) (bus_write_4((sc)->mem_res, (off), (val)))
-SYSCTL_NODE(_hw, OID_AUTO, fpga, CTLFLAG_RD, 0, \
- "Xilinx Zynq-7000 PL (FPGA) section");
+SYSCTL_NODE(_hw, OID_AUTO, fpga, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "Xilinx Zynq-7000 PL (FPGA) section");
static int zy7_devcfg_sysctl_pl_done(SYSCTL_HANDLER_ARGS);
-SYSCTL_PROC(_hw_fpga, OID_AUTO, pl_done, CTLTYPE_INT | CTLFLAG_RD, NULL, 0,
- zy7_devcfg_sysctl_pl_done, "I", "PL section config DONE signal");
+SYSCTL_PROC(_hw_fpga, OID_AUTO, pl_done,
+ CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, NULL, 0,
+ zy7_devcfg_sysctl_pl_done, "I",
+ "PL section config DONE signal");
static int zy7_en_level_shifters = 1;
SYSCTL_INT(_hw_fpga, OID_AUTO, en_level_shifters, CTLFLAG_RW,
@@ -119,9 +121,9 @@ SYSCTL_INT(_hw, OID_AUTO, ps_vers, CTLFLAG_RD, &zy7_ps
static int zy7_devcfg_fclk_sysctl_level_shifters(SYSCTL_HANDLER_ARGS);
SYSCTL_PROC(_hw_fpga, OID_AUTO, level_shifters,
- CTLFLAG_RW | CTLTYPE_INT,
- NULL, 0, zy7_devcfg_fclk_sysctl_level_shifters,
- "I", "Enable/disable level shifters");
+ CTLFLAG_RW | CTLTYPE_INT | CTLFLAG_NEEDGIANT, NULL, 0,
+ zy7_devcfg_fclk_sysctl_level_shifters, "I",
+ "Enable/disable level shifters");
/* cdev entry points. */
static int zy7_devcfg_open(struct cdev *, int, int, struct thread *);
@@ -360,7 +362,7 @@ zy7_devcfg_init_fclk_sysctl(struct zy7_devcfg_softc *s
sysctl_ctx_init(&sc->sysctl_tree);
sc->sysctl_tree_top = SYSCTL_ADD_NODE(&sc->sysctl_tree,
SYSCTL_STATIC_CHILDREN(_hw_fpga), OID_AUTO, "fclk",
- CTLFLAG_RD, 0, "");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, 0, "");
if (sc->sysctl_tree_top == NULL) {
sysctl_ctx_free(&sc->sysctl_tree);
return (-1);
@@ -370,7 +372,7 @@ zy7_devcfg_init_fclk_sysctl(struct zy7_devcfg_softc *s
snprintf(fclk_num, sizeof(fclk_num), "%d", i);
fclk_node = SYSCTL_ADD_NODE(&sc->sysctl_tree,
SYSCTL_CHILDREN(sc->sysctl_tree_top), OID_AUTO, fclk_num,
- CTLFLAG_RD, 0, "");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, 0, "");
SYSCTL_ADD_INT(&sc->sysctl_tree,
SYSCTL_CHILDREN(fclk_node), OID_AUTO,
@@ -379,13 +381,13 @@ zy7_devcfg_init_fclk_sysctl(struct zy7_devcfg_softc *s
"Actual frequency");
SYSCTL_ADD_PROC(&sc->sysctl_tree,
SYSCTL_CHILDREN(fclk_node), OID_AUTO,
- "freq", CTLFLAG_RW | CTLTYPE_INT,
+ "freq", CTLFLAG_RW | CTLTYPE_INT | CTLFLAG_NEEDGIANT,
&fclk_configs[i], i,
zy7_devcfg_fclk_sysctl_freq,
"I", "Configured frequency");
SYSCTL_ADD_PROC(&sc->sysctl_tree,
SYSCTL_CHILDREN(fclk_node), OID_AUTO,
- "source", CTLFLAG_RW | CTLTYPE_STRING,
+ "source", CTLFLAG_RW | CTLTYPE_STRING | CTLFLAG_NEEDGIANT,
&fclk_configs[i], i,
zy7_devcfg_fclk_sysctl_source,
"A", "Clock source");
Modified: head/sys/arm/xilinx/zy7_slcr.c
==============================================================================
--- head/sys/arm/xilinx/zy7_slcr.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm/xilinx/zy7_slcr.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -80,7 +80,8 @@ extern void (*zynq7_cpu_reset);
#define ZYNQ_DEFAULT_PS_CLK_FREQUENCY 33333333 /* 33.3 Mhz */
-SYSCTL_NODE(_hw, OID_AUTO, zynq, CTLFLAG_RD, 0, "Xilinx Zynq-7000");
+SYSCTL_NODE(_hw, OID_AUTO, zynq, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "Xilinx Zynq-7000");
static char zynq_bootmode[64];
SYSCTL_STRING(_hw_zynq, OID_AUTO, bootmode, CTLFLAG_RD, zynq_bootmode, 0,
Modified: head/sys/arm64/arm64/busdma_bounce.c
==============================================================================
--- head/sys/arm64/arm64/busdma_bounce.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm64/arm64/busdma_bounce.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -113,7 +113,8 @@ static int total_bpages;
static int busdma_zonecount;
static STAILQ_HEAD(, bounce_zone) bounce_zone_list;
-static SYSCTL_NODE(_hw, OID_AUTO, busdma, CTLFLAG_RD, 0, "Busdma parameters");
+static SYSCTL_NODE(_hw, OID_AUTO, busdma, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "Busdma parameters");
SYSCTL_INT(_hw_busdma, OID_AUTO, total_bpages, CTLFLAG_RD, &total_bpages, 0,
"Total bounce pages");
@@ -1146,7 +1147,7 @@ alloc_bounce_zone(bus_dma_tag_t dmat)
sysctl_ctx_init(&bz->sysctl_tree);
bz->sysctl_tree_top = SYSCTL_ADD_NODE(&bz->sysctl_tree,
SYSCTL_STATIC_CHILDREN(_hw_busdma), OID_AUTO, bz->zoneid,
- CTLFLAG_RD, 0, "");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, 0, "");
if (bz->sysctl_tree_top == NULL) {
sysctl_ctx_free(&bz->sysctl_tree);
return (0); /* XXX error code? */
Modified: head/sys/arm64/arm64/pmap.c
==============================================================================
--- head/sys/arm64/arm64/pmap.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/arm64/arm64/pmap.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -270,7 +270,8 @@ extern pt_entry_t pagetable_dmap[];
static vm_paddr_t physmap[PHYSMAP_SIZE];
static u_int physmap_idx;
-static SYSCTL_NODE(_vm, OID_AUTO, pmap, CTLFLAG_RD, 0, "VM/pmap parameters");
+static SYSCTL_NODE(_vm, OID_AUTO, pmap, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "VM/pmap parameters");
/*
* This ASID allocator uses a bit vector ("asid_set") to remember which ASIDs
@@ -294,7 +295,8 @@ struct asid_set {
static struct asid_set asids;
-static SYSCTL_NODE(_vm_pmap, OID_AUTO, asid, CTLFLAG_RD, 0, "ASID allocator");
+static SYSCTL_NODE(_vm_pmap, OID_AUTO, asid, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "ASID allocator");
SYSCTL_INT(_vm_pmap_asid, OID_AUTO, bits, CTLFLAG_RD, &asids.asid_bits, 0,
"The number of bits in an ASID");
SYSCTL_INT(_vm_pmap_asid, OID_AUTO, next, CTLFLAG_RD, &asids.asid_next, 0,
@@ -1032,7 +1034,7 @@ pmap_init(void)
vm_initialized = 1;
}
-static SYSCTL_NODE(_vm_pmap, OID_AUTO, l2, CTLFLAG_RD, 0,
+static SYSCTL_NODE(_vm_pmap, OID_AUTO, l2, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
"2MB page mapping counters");
static u_long pmap_l2_demotions;
Modified: head/sys/cam/ata/ata_da.c
==============================================================================
--- head/sys/cam/ata/ata_da.c Wed Feb 26 13:48:33 2020 (r358332)
+++ head/sys/cam/ata/ata_da.c Wed Feb 26 14:26:36 2020 (r358333)
@@ -881,8 +881,8 @@ static int ada_read_ahead = ADA_DEFAULT_READ_AHEAD;
static int ada_write_cache = ADA_DEFAULT_WRITE_CACHE;
static int ada_enable_biospeedup = 1;
-static SYSCTL_NODE(_kern_cam, OID_AUTO, ada, CTLFLAG_RD, 0,
- "CAM Direct Access Disk driver");
+static SYSCTL_NODE(_kern_cam, OID_AUTO, ada, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "CAM Direct Access Disk driver");
SYSCTL_INT(_kern_cam_ada, OID_AUTO, retry_count, CTLFLAG_RWTUN,
&ada_retry_count, 0, "Normal I/O retry count");
SYSCTL_INT(_kern_cam_ada, OID_AUTO, default_timeout, CTLFLAG_RWTUN,
@@ -1455,7 +1455,7 @@ adasysctlinit(void *context, int pending)
softc->flags |= ADA_FLAG_SCTX_INIT;
softc->sysctl_tree = SYSCTL_ADD_NODE_WITH_LABEL(&softc->sysctl_ctx,
SYSCTL_STATIC_CHILDREN(_kern_cam_ada), OID_AUTO, tmpstr2,
- CTLFLAG_RD, 0, tmpstr, "device_index");
+ CTLFLAG_RD | CTLFLAG_MPSAFE, 0, tmpstr, "device_index");
if (softc->sysctl_tree == NULL) {
printf("adasysctlinit: unable to allocate sysctl tree\n");
cam_periph_release(periph);
@@ -1463,7 +1463,8 @@ adasysctlinit(void *context, int pending)
}
SYSCTL_ADD_PROC(&softc->sysctl_ctx, SYSCTL_CHILDREN(softc->sysctl_tree),
- OID_AUTO, "delete_method", CTLTYPE_STRING | CTLFLAG_RW,
+ OID_AUTO, "delete_method",
+ CTLTYPE_STRING | CTLFLAG_RW | CTLFLAG_NEEDGIANT,
softc, 0, adadeletemethodsysctl, "A",
"BIO_DELETE execution method");
SYSCTL_ADD_UQUAD(&softc->sysctl_ctx,
@@ -1491,11 +1492,13 @@ adasysctlinit(void *context, int pending)
OID_AUTO, "rotating", CTLFLAG_RD | CTLFLAG_MPSAFE,
&softc->rotating, 0, "Rotating media");
SYSCTL_ADD_PROC(&softc->sysctl_ctx, SYSCTL_CHILDREN(softc->sysctl_tree),
- OID_AUTO, "zone_mode", CTLTYPE_STRING | CTLFLAG_RD,
+ OID_AUTO, "zone_mode",
+ CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT,
softc, 0, adazonemodesysctl, "A",
"Zone Mode");
SYSCTL_ADD_PROC(&softc->sysctl_ctx, SYSCTL_CHILDREN(softc->sysctl_tree),
- OID_AUTO, "zone_support", CTLTYPE_STRING | CTLFLAG_RD,
+ OID_AUTO, "zone_support",
+ CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT,
softc, 0, adazonesupsysctl, "A",
"Zone Support");
SYSCTL_ADD_UQUAD(&softc->sysctl_ctx,
@@ -1540,7 +1543,7 @@ adasysctlinit(void *context, int pending)
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-all
mailing list