Re: [PATCH] video: constify geode ops structures

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 9 Nov 2015, Dan Carpenter wrote:

> Cool.  So, in grsec they use a GCC plugin to make these const
> automatically since they only contain function pointers.  There about
> 100 struct types marked as __no_const.  Kees would like to adopt the
> grsec pluggin approach I expect.  Do you have an idea how many structs
> only contain function pointers or how many consts we would have to add
> to get the same effect without the plugin?

My list has 373 type names.  In the list there are counts for good
(already const) and bad (not const).  The sum of the bad values is 2467.
The list is below.

julia

cpuidle_ops: 	good: 0, bad: 1
xen_pci_frontend_ops: 	good: 0, bad: 1
pch_dev_ops: 	good: 0, bad: 1
s3c_ide_platdata: 	good: 0, bad: 1
bfin_cpu_pm_fns: 	good: 0, bad: 1
meta_type_ops: 	good: 0, bad: 1
bnx2x_func_sp_drv_ops: 	good: 0, bad: 1
hfi1_filter_array: 	good: 0, bad: 1
ttusbdecfe_config: 	good: 0, bad: 1
au1k_irda_platform_data: 	good: 0, bad: 1
dao_rsc_ops: 	good: 0, bad: 1
mic_hw_intr_ops: 	good: 0, bad: 1
mic_smpt_ops: 	good: 0, bad: 1
scpi_ops: 	good: 0, bad: 1
fmc_operations: 	good: 0, bad: 1
geode_dc_ops: 	good: 0, bad: 1
superhyway_ops: 	good: 0, bad: 1
vsock_transport: 	good: 0, bad: 1
ti_clk_ll_ops: 	good: 0, bad: 1
enclosure_component_callbacks: 	good: 0, bad: 1
dai_rsc_ops: 	good: 0, bad: 1
cfs_psdev_ops: 	good: 0, bad: 1
x86_msi_ops: 	good: 0, bad: 1
intel_sst_ops: 	good: 0, bad: 1
nf_ct_event_notifier: 	good: 0, bad: 1
geode_vid_ops: 	good: 0, bad: 1
menelaus_platform_data: 	good: 0, bad: 1
mipi_dsim_master_ops: 	good: 0, bad: 1
in_cache_ops: 	good: 0, bad: 1
ste_modem_dev_cb: 	good: 0, bad: 1
kernfs_syscall_ops: 	good: 0, bad: 1
amixer_rsc_ops: 	good: 0, bad: 1
nes_cm_ops: 	good: 0, bad: 1
radio_tea5777_ops: 	good: 0, bad: 1
x86_cpuinit_ops: 	good: 0, bad: 1
hpc_ops: 	good: 0, bad: 1
vexpress_config_bridge_ops: 	good: 0, bad: 1
x86_platform_ops: 	good: 0, bad: 1
powercap_zone_ops: 	good: 0, bad: 1
as102_priv_ops_t: 	good: 0, bad: 1
lpc32xx_slc_platform_data: 	good: 0, bad: 1
src_rsc_ops: 	good: 0, bad: 1
pxafb_layer_ops: 	good: 0, bad: 1
ds278x_battery_ops: 	good: 0, bad: 1
hnae_buf_ops: 	good: 0, bad: 1
mcp_ops: 	good: 0, bad: 1
nfnl_ct_hook: 	good: 0, bad: 1
xpc_interface: 	good: 0, bad: 1
vpbe_device_ops: 	good: 0, bad: 1
stmp3xxx_wdt_pdata: 	good: 0, bad: 1
cosm_hw_ops: 	good: 0, bad: 1
fm10k_iov_ops: 	good: 0, bad: 1
s3fwrn5_phy_ops: 	good: 0, bad: 1
tc6387xb_platform_data: 	good: 0, bad: 1
visorchipset_busdev_responders: 	good: 0, bad: 1
csio_hw_chip_ops: 	good: 0, bad: 1
visorchipset_busdev_notifiers: 	good: 0, bad: 1
concap_device_ops: 	good: 0, bad: 1
stv6110x_devctl: 	good: 0, bad: 1
powercap_zone_constraint_ops: 	good: 0, bad: 1
eg_cache_ops: 	good: 0, bad: 1
trace_lock_handler: 	good: 0, bad: 1
gnttab_ops: 	good: 0, bad: 1
ldlm_valblock_ops: 	good: 0, bad: 1
rtl_btc_ops: 	good: 0, bad: 1
max197_platform_data: 	good: 0, bad: 1
qla_tgt_func_tmpl: 	good: 0, bad: 1
arm_pmu_platdata: 	good: 0, bad: 1
amd_sched_backend_ops: 	good: 0, bad: 1
da903x_chip_ops: 	good: 0, bad: 1
hnae_ae_ops: 	good: 0, bad: 1
ds2404_chip_ops: 	good: 0, bad: 1
cardbus_type: 	good: 0, bad: 1
sh_mobile_lcdc_sys_bus_ops: 	good: 0, bad: 1
ieee802154_llsec_ops: 	good: 0, bad: 1
kvm_mips_callbacks: 	good: 0, bad: 1
nf_exp_event_notifier: 	good: 0, bad: 1
usb_mon_operations: 	good: 0, bad: 1
nlmsvc_binding: 	good: 0, bad: 1
cleancache_ops: 	good: 0, bad: 1
bfa_fcs_mod_s: 	good: 0, bad: 1
dac_ops: 	good: 0, bad: 1
sst_block_ops: 	good: 0, bad: 1
lane2_ops: 	good: 0, bad: 1
llog_operations: 	good: 0, bad: 1
concap_proto_ops: 	good: 0, bad: 1
x86_io_apic_ops: 	good: 0, bad: 1
od_ops: 	good: 0, bad: 1
omap_mcbsp_ops: 	good: 0, bad: 1
cpuidle_exynos_data: 	good: 0, bad: 1
pci_platform_pm_ops: 	good: 0, bad: 1
lpc32xx_mlc_platform_data: 	good: 0, bad: 1
dw_spi_dma_ops: 	good: 0, bad: 1
mmp_overlay_ops: 	good: 0, bad: 1
iommu_table_group_ops: 	good: 0, bad: 1
md_cluster_operations: 	good: 0, bad: 1
cpu_pm_ops: 	good: 0, bad: 1
mxl111sf_demod_config: 	good: 0, bad: 1
srcimp_rsc_ops: 	good: 0, bad: 1
dca_ops: 	good: 0, bad: 1
mcfqspi_cs_control: 	good: 0, bad: 1
skl_dsp_fw_ops: 	good: 0, bad: 1
iser_reg_ops: 	good: 0, bad: 2
saa7146_use_ops: 	good: 0, bad: 2
qlcnic_dcb_ops: 	good: 0, bad: 2
fm10k_mac_ops: 	good: 0, bad: 2
v3020_chip_ops: 	good: 0, bad: 2
intel_mid_ops: 	good: 0, bad: 2
wlcore_ops: 	good: 0, bad: 2
au1200fb_platdata: 	good: 0, bad: 2
mxr_layer_ops: 	good: 0, bad: 2
ocfs2_stack_operations: 	good: 0, bad: 2
kvm_pmu_ops: 	good: 0, bad: 2
hdmi_phy_ops: 	good: 0, bad: 2
rtl_intf_ops: 	good: 0, bad: 2
mxc_extra_irq: 	good: 0, bad: 2
hwicap_driver_config: 	good: 0, bad: 2
dev_power_governor: 	good: 0, bad: 2
ptlrpc_ctx_ops: 	good: 0, bad: 2
olpc_ec_driver: 	good: 0, bad: 2
xpc_arch_operations: 	good: 0, bad: 2
cal_chipset_ops: 	good: 0, bad: 2
mal_commac_ops: 	good: 0, bad: 2
mmc_pwrseq_ops: 	good: 0, bad: 2
mem_access: 	good: 0, bad: 2
fd_dma_ops: 	good: 0, bad: 2
mvumi_instance_template: 	good: 0, bad: 2
imx_pwm_data: 	good: 0, bad: 2
nfc_llc_ops: 	good: 0, bad: 2
amba_pl010_data: 	good: 0, bad: 2
emitter: 	good: 0, bad: 2
fc_rport_operations: 	good: 0, bad: 2
adfs_dir_ops: 	good: 0, bad: 2
mpt_pci_driver: 	good: 0, bad: 2
gpio_methods: 	good: 0, bad: 2
s5p_mfc_hw_cmds: 	good: 0, bad: 2
bfin_sport_transfer_ops: 	good: 0, bad: 2
ct_timer_ops: 	good: 0, bad: 2
cmac_ops: 	good: 0, bad: 2
vio_driver_ops: 	good: 0, bad: 2
dummy_timer_ops: 	good: 0, bad: 2
mdesc_mem_ops: 	good: 0, bad: 2
uprobe_xol_ops: 	good: 0, bad: 2
dcon_platform_data: 	good: 0, bad: 2
vmci_transport_notify_ops: 	good: 0, bad: 2
w100_tg_info: 	good: 0, bad: 2
knav_range_ops: 	good: 0, bad: 2
drm_dp_mst_topology_cbs: 	good: 0, bad: 2
snd_rawmidi_global_ops: 	good: 0, bad: 2
s5p_mfc_codec_ops: 	good: 0, bad: 2
hwbus_ops: 	good: 0, bad: 2
ufs_qcom_phy_specific_ops: 	good: 0, bad: 2
nfc_digital_ops: 	good: 0, bad: 2
alpha_agp_ops: 	good: 0, bad: 2
ath_ps_ops: 	good: 0, bad: 2
hmcdrv_ftp_ops: 	good: 0, bad: 2
spu_context_ops: 	good: 0, bad: 2
snd_i2c_ops: 	good: 0, bad: 2
md_ops: 	good: 0, bad: 2
sunhv_ops: 	good: 0, bad: 2
uartlite_reg_ops: 	good: 0, bad: 2
ptlrpc_sec_sops: 	good: 0, bad: 2
pci_bios_ops: 	good: 0, bad: 2
microcode_ops: 	good: 0, bad: 2
s5p_mfc_hw_ops: 	good: 0, bad: 2
of_pdt_ops: 	good: 0, bad: 2
wl1271_if_operations: 	good: 0, bad: 2
otg_fsm_ops: 	good: 0, bad: 2
nfsd4_callback_ops: 	good: 0, bad: 2
abx500_ops: 	good: 0, bad: 2
m48t86_ops: 	good: 0, bad: 2
ptlrpc_sec_cops: 	good: 0, bad: 2
mbus_hw_ops: 	good: 0, bad: 2
fcoe_sysfs_function_template: 	good: 0, bad: 2
smp_ops: 	good: 1, bad: 1
pv_time_ops: 	good: 1, bad: 1
wl1251_if_operations: 	good: 1, bad: 1
pv_init_ops: 	good: 1, bad: 1
xfs_nameops: 	good: 1, bad: 1
ixgbe_mbx_operations: 	good: 1, bad: 1
dm_space_map: 	good: 0, bad: 3
at91_pinctrl_mux_ops: 	good: 0, bad: 3
ipmi_user_hndl: 	good: 0, bad: 3
brcmf_bus_ops: 	good: 0, bad: 3
ixgbe_eeprom_operations: 	good: 0, bad: 3
fsi_stream_handler: 	good: 0, bad: 3
xgene_mac_ops: 	good: 0, bad: 3
sbc_ops: 	good: 0, bad: 3
snd_vx_ops: 	good: 0, bad: 3
go7007_hpi_ops: 	good: 0, bad: 3
ixgbe_phy_operations: 	good: 0, bad: 3
sh_irda_xir_func: 	good: 0, bad: 3
matrox_switch: 	good: 0, bad: 3
qlcnic_hardware_ops: 	good: 0, bad: 3
btrfs_free_space_op: 	good: 0, bad: 3
snd_compr_ops: 	good: 0, bad: 3
xgene_port_ops: 	good: 0, bad: 3
nfsd4_client_tracking_ops: 	good: 0, bad: 3
samsung_gpio_pm: 	good: 0, bad: 3
drbg_state_ops: 	good: 0, bad: 3
nilfs_sc_operations: 	good: 0, bad: 3
snd_i2c_bit_ops: 	good: 0, bad: 3
snd_midi_op: 	good: 0, bad: 3
fatent_operations: 	good: 0, bad: 3
mwifiex_if_ops: 	good: 0, bad: 3
pci_port_ops: 	good: 0, bad: 3
portals_handle_ops: 	good: 0, bad: 3
logfs_block_ops: 	good: 0, bad: 3
nfc_hci_ops: 	good: 0, bad: 3
ace_reg_ops: 	good: 0, bad: 3
cx2341x_handler_ops: 	good: 0, bad: 3
conf_printer: 	good: 0, bad: 3
ui_progress_ops: 	good: 0, bad: 3
trace_sched_handler: 	good: 0, bad: 3
perf_error_ops: 	good: 0, bad: 3
perf_guest_info_callbacks: 	good: 0, bad: 3
aes_ops: 	good: 0, bad: 3
xfrm_replay: 	good: 0, bad: 3
pccard_resource_ops: 	good: 0, bad: 3
qtree_fmt_operations: 	good: 0, bad: 3
ui_helpline: 	good: 0, bad: 3
machine_ops: 	good: 1, bad: 2
bpf_verifier_ops: 	good: 2, bad: 1
sn_pcibus_provider: 	good: 0, bad: 4
sas_function_template: 	good: 0, bad: 4
cfs_hash_hlist_ops: 	good: 0, bad: 4
io_pgtable_init_fns: 	good: 0, bad: 4
rproc_ops: 	good: 0, bad: 4
fb_tile_ops: 	good: 0, bad: 4
sst_ops: 	good: 0, bad: 4
usb_phy_io_ops: 	good: 0, bad: 4
raw3270_fn: 	good: 0, bad: 4
radeon_audio_basic_funcs: 	good: 0, bad: 4
qlcnic_nic_template: 	good: 0, bad: 4
board_ops: 	good: 0, bad: 4
irda_platform_data: 	good: 0, bad: 4
drm_encoder_slave_funcs: 	good: 0, bad: 4
rchan_callbacks: 	good: 0, bad: 4
hppa_dma_ops: 	good: 0, bad: 4
nfcmrvl_if_ops: 	good: 0, bad: 4
iommu_gather_ops: 	good: 0, bad: 4
cm_ll_data: 	good: 0, bad: 4
plat_sci_port_ops: 	good: 0, bad: 4
sas_domain_function_template: 	good: 0, bad: 4
ib_dma_mapping_ops: 	good: 0, bad: 4
psc_ops: 	good: 0, bad: 4
z8530_irqhandler: 	good: 0, bad: 4
prm_ll_data: 	good: 0, bad: 4
ixgbe_mac_operations: 	good: 1, bad: 3
v4l2_subdev_sensor_ops: 	good: 1, bad: 3
of_bus: 	good: 1, bad: 3
e1000_mac_operations: 	good: 3, bad: 1
mipi_dsi_host_ops: 	good: 3, bad: 1
rpc_xprt_ops: 	good: 0, bad: 5
ep93xx_spi_chip_ops: 	good: 0, bad: 5
item_operations: 	good: 0, bad: 5
page_ext_operations: 	good: 0, bad: 5
bcache_ops: 	good: 0, bad: 5
ocfs2_extent_tree_operations: 	good: 0, bad: 5
ion_heap_ops: 	good: 0, bad: 5
svc_xprt_ops: 	good: 0, bad: 5
clkdm_ops: 	good: 0, bad: 5
nfc_ops: 	good: 0, bad: 5
pwrdm_ops: 	good: 0, bad: 5
megasas_instance_template: 	good: 0, bad: 5
esp_driver_ops: 	good: 4, bad: 1
exynos_drm_crtc_ops: 	good: 4, bad: 1
lu_device_operations: 	good: 4, bad: 1
e1000_nvm_operations: 	good: 4, bad: 1
cl_device_operations: 	good: 4, bad: 1
ins_ops: 	good: 0, bad: 6
exynos_drm_ipp_ops: 	good: 0, bad: 6
snd_tea575x_ops: 	good: 0, bad: 6
intel_dvo_dev_ops: 	good: 0, bad: 6
cfs_hash_lock_ops: 	good: 0, bad: 6
hid_ll_driver: 	good: 0, bad: 6
ftdi_sio_quirk: 	good: 0, bad: 6
e1000_phy_operations: 	good: 5, bad: 1
mbox_chan_ops: 	good: 5, bad: 1
kset_uevent_ops: 	good: 5, bad: 1
crypt_iv_operations: 	good: 0, bad: 7
sa1100_port_fns: 	good: 0, bad: 7
radeon_audio_funcs: 	good: 0, bad: 7
rsc_ops: 	good: 0, bad: 7
dma_ops: 	good: 0, bad: 7
nfc_phy_ops: 	good: 0, bad: 7
fsnotify_ops: 	good: 6, bad: 1
cl_lock_operations: 	good: 6, bad: 1
pcie_host_ops: 	good: 0, bad: 8
action_ops: 	good: 0, bad: 8
cpu_user_fns: 	good: 0, bad: 8
snd_info_entry_ops: 	good: 0, bad: 8
cfs_hash_ops: 	good: 0, bad: 8
sparc32_cachetlb_ops: 	good: 5, bad: 3
virtio_config_ops: 	good: 6, bad: 2
xfs_item_ops: 	good: 7, bad: 1
msi_domain_ops: 	good: 0, bad: 9
plat_lcd_data: 	good: 0, bad: 9
rtl_hal_ops: 	good: 0, bad: 9
ttm_bo_driver: 	good: 0, bad: 10
usbhs_pkt_handle: 	good: 0, bad: 10
usb_protocol_ops: 	good: 0, bad: 10
clkops: 	good: 6, bad: 4
drm_bridge_funcs: 	good: 7, bad: 3
fence_ops: 	good: 9, bad: 1
omap_dss_driver: 	good: 0, bad: 11
dma_buf_ops: 	good: 5, bad: 6
thermal_zone_of_device_ops: 	good: 7, bad: 4
mmu_notifier_ops: 	good: 8, bad: 3
kvm_io_device_ops: 	good: 10, bad: 1
ttm_backend_func: 	good: 0, bad: 12
access_method: 	good: 0, bad: 12
event_trigger_ops: 	good: 0, bad: 12
stacktrace_ops: 	good: 10, bad: 2
isp_operations: 	good: 0, bad: 13
hv_ops: 	good: 11, bad: 2
ftrace_probe_ops: 	good: 0, bad: 14
v4l2_m2m_ops: 	good: 2, bad: 12
thermal_cooling_device_ops: 	good: 7, bad: 7
plat_smp_ops: 	good: 0, bad: 15
clk_hw_omap_ops: 	good: 14, bad: 1
videobuf_queue_ops: 	good: 1, bad: 15
drm_plane_helper_funcs: 	good: 15, bad: 1
pccard_operations: 	good: 0, bad: 17
mii_phy_ops: 	good: 0, bad: 18
radeon_asic_ring: 	good: 0, bad: 19
drm_fb_helper_funcs: 	good: 18, bad: 1
reset_control_ops: 	good: 0, bad: 20
ide_dma_ops: 	good: 18, bad: 2
thermal_zone_device_ops: 	good: 0, bad: 21
drm_framebuffer_funcs: 	good: 15, bad: 6
drm_plane_funcs: 	good: 18, bad: 4
lcd_ops: 	good: 0, bad: 24
intel_uncore_ops: 	good: 0, bad: 24
export_operations: 	good: 24, bad: 2
drm_mode_config_funcs: 	good: 25, bad: 2
header_ops: 	good: 26, bad: 3
iio_buffer_setup_ops: 	good: 29, bad: 1
usb_gadget_ops: 	good: 31, bad: 2
mmc_host_ops: 	good: 21, bad: 13
drm_crtc_funcs: 	good: 28, bad: 6
rfkill_ops: 	good: 29, bad: 5
drm_crtc_helper_funcs: 	good: 30, bad: 4
usb_ep_ops: 	good: 18, bad: 18
tty_port_operations: 	good: 33, bad: 4
configfs_group_operations: 	good: 0, bad: 38
v4l2_subdev_internal_ops: 	good: 37, bad: 1
configfs_item_operations: 	good: 0, bad: 44
platform_suspend_ops: 	good: 41, bad: 4
snd_ac97_bus_ops: 	good: 0, bad: 49
pinctrl_ops: 	good: 40, bad: 9
dentry_operations: 	good: 52, bad: 1
pci_error_handlers: 	good: 46, bad: 9
snd_rawmidi_ops: 	good: 0, bad: 68
drm_connector_helper_funcs: 	good: 50, bad: 18
drm_encoder_funcs: 	good: 61, bad: 14
drm_connector_funcs: 	good: 56, bad: 20
drm_encoder_helper_funcs: 	good: 65, bad: 12
vb2_ops: 	good: 20, bad: 59
snd_soc_ops: 	good: 2, bad: 85
snd_device_ops: 	good: 0, bad: 93
v4l2_subdev_video_ops: 	good: 81, bad: 32
pci_ops: 	good: 0, bad: 121
rtc_class_ops: 	good: 117, bad: 31
v4l2_ctrl_ops: 	good: 198, bad: 6
inode_operations: 	good: 209, bad: 5
snd_soc_dai_ops: 	good: 226, bad: 18
ethtool_ops: 	good: 239, bad: 11
regulator_ops: 	good: 15, bad: 237
snd_pcm_ops: 	good: 7, bad: 278
clk_ops: 	good: 257, bad: 71
seq_operations: 	good: 328, bad: 1
dev_pm_ops: 	good: 337, bad: 19
--
To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux