tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: 15814356aac416bea48544b76b761d8687b5a1e9 commit: c3a8616c95df8ced5d1acd838dc7dc384cb5276b [6857/7074] mm/mmu_notifier: use structure for invalidate_range_start/end callback reproduce: make htmldocs All warnings (new ones prefixed by >>): include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' include/net/mac80211.h:477: warning: cannot understand function prototype: 'struct ieee80211_ftm_responder_params ' net/mac80211/sta_info.h:588: warning: Function parameter or member 'rx_stats_avg' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'rx_stats_avg.signal' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'rx_stats_avg.chain_signal' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.filtered' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.retry_failed' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.retry_count' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.lost_packets' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.last_tdls_pkt_time' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.msdu_retries' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.msdu_failed' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.last_ack' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.last_ack_signal' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.ack_signal_filled' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.avg_ack_signal' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'tx_stats.packets' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'tx_stats.bytes' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'tx_stats.last_rate' not described in 'sta_info' net/mac80211/sta_info.h:588: warning: Function parameter or member 'tx_stats.msdu' not described in 'sta_info' kernel/rcu/tree.c:685: warning: Excess function parameter 'irq' description in 'rcu_nmi_exit' include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_excl.cb' not described in 'dma_buf' include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_excl.poll' not described in 'dma_buf' include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_excl.active' not described in 'dma_buf' include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_shared.cb' not described in 'dma_buf' include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_shared.poll' not described in 'dma_buf' include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_shared.active' not described in 'dma_buf' include/linux/dma-fence-array.h:54: warning: Function parameter or member 'work' not described in 'dma_fence_array' include/linux/gpio/driver.h:375: warning: Function parameter or member 'init_valid_mask' not described in 'gpio_chip' include/linux/iio/hw-consumer.h:1: warning: no structured comments found include/linux/input/sparse-keymap.h:46: warning: Function parameter or member 'sw' not described in 'key_entry' include/linux/regulator/driver.h:227: warning: Function parameter or member 'resume' not described in 'regulator_ops' arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw0' not described in 'irb' arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw1' not described in 'irb' arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw2' not described in 'irb' arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw3' not described in 'irb' arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.eadm' not described in 'irb' drivers/slimbus/stream.c:1: warning: no structured comments found include/linux/spi/spi.h:177: warning: Function parameter or member 'driver_override' not described in 'spi_device' drivers/target/target_core_device.c:1: warning: no structured comments found drivers/usb/typec/bus.c:1: warning: no structured comments found drivers/usb/typec/class.c:1: warning: no structured comments found include/linux/w1.h:281: warning: Function parameter or member 'of_match_table' not described in 'w1_family' fs/direct-io.c:257: warning: Excess function parameter 'offset' description in 'dio_complete' fs/file_table.c:1: warning: no structured comments found fs/libfs.c:477: warning: Excess function parameter 'available' description in 'simple_write_end' fs/posix_acl.c:646: warning: Function parameter or member 'inode' not described in 'posix_acl_update_mode' fs/posix_acl.c:646: warning: Function parameter or member 'mode_p' not described in 'posix_acl_update_mode' fs/posix_acl.c:646: warning: Function parameter or member 'acl' not described in 'posix_acl_update_mode' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:250: warning: Excess function parameter 'mm' description in 'amdgpu_mn_invalidate_range_start_gfx' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:250: warning: Excess function parameter 'start' description in 'amdgpu_mn_invalidate_range_start_gfx' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:250: warning: Excess function parameter 'end' description in 'amdgpu_mn_invalidate_range_start_gfx' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:296: warning: Excess function parameter 'mm' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:296: warning: Excess function parameter 'start' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:296: warning: Excess function parameter 'end' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:345: warning: Excess function parameter 'mm' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:345: warning: Excess function parameter 'start' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:345: warning: Excess function parameter 'end' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:183: warning: Function parameter or member 'blockable' not described in 'amdgpu_mn_read_lock' >> drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:251: warning: Function parameter or member 'range' not described in 'amdgpu_mn_invalidate_range_start_gfx' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:251: warning: Excess function parameter 'mm' description in 'amdgpu_mn_invalidate_range_start_gfx' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:251: warning: Excess function parameter 'start' description in 'amdgpu_mn_invalidate_range_start_gfx' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:251: warning: Excess function parameter 'end' description in 'amdgpu_mn_invalidate_range_start_gfx' >> drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:297: warning: Function parameter or member 'range' not described in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:297: warning: Excess function parameter 'mm' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:297: warning: Excess function parameter 'start' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:297: warning: Excess function parameter 'end' description in 'amdgpu_mn_invalidate_range_start_hsa' >> drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:346: warning: Function parameter or member 'range' not described in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:346: warning: Excess function parameter 'mm' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:346: warning: Excess function parameter 'start' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:346: warning: Excess function parameter 'end' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:382: warning: cannot understand function prototype: 'struct amdgpu_vm_pt_cursor ' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:383: warning: cannot understand function prototype: 'struct amdgpu_vm_pt_cursor ' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:555: warning: Function parameter or member 'adev' not described in 'for_each_amdgpu_vm_pt_leaf' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:555: warning: Function parameter or member 'vm' not described in 'for_each_amdgpu_vm_pt_leaf' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:555: warning: Function parameter or member 'start' not described in 'for_each_amdgpu_vm_pt_leaf' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:555: warning: Function parameter or member 'end' not described in 'for_each_amdgpu_vm_pt_leaf' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:555: warning: Function parameter or member 'cursor' not described in 'for_each_amdgpu_vm_pt_leaf' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:603: warning: Function parameter or member 'adev' not described in 'for_each_amdgpu_vm_pt_dfs_safe' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:603: warning: Function parameter or member 'vm' not described in 'for_each_amdgpu_vm_pt_dfs_safe' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:603: warning: Function parameter or member 'cursor' not described in 'for_each_amdgpu_vm_pt_dfs_safe' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:603: warning: Function parameter or member 'entry' not described in 'for_each_amdgpu_vm_pt_dfs_safe' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:848: warning: Function parameter or member 'level' not described in 'amdgpu_vm_bo_param' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1356: warning: Function parameter or member 'params' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1356: warning: Function parameter or member 'bo' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1356: warning: Function parameter or member 'pe' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1356: warning: Function parameter or member 'addr' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1356: warning: Function parameter or member 'count' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1356: warning: Function parameter or member 'incr' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1356: warning: Function parameter or member 'flags' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1523: warning: Function parameter or member 'params' not described in 'amdgpu_vm_update_huge' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1523: warning: Function parameter or member 'bo' not described in 'amdgpu_vm_update_huge' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1523: warning: Function parameter or member 'level' not described in 'amdgpu_vm_update_huge' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1523: warning: Function parameter or member 'pe' not described in 'amdgpu_vm_update_huge' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1523: warning: Function parameter or member 'addr' not described in 'amdgpu_vm_update_huge' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1523: warning: Function parameter or member 'count' not described in 'amdgpu_vm_update_huge' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1523: warning: Function parameter or member 'incr' not described in 'amdgpu_vm_update_huge' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1523: warning: Function parameter or member 'flags' not described in 'amdgpu_vm_update_huge' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:3100: warning: Function parameter or member 'pasid' not described in 'amdgpu_vm_make_compute' include/drm/drm_drv.h:609: warning: Function parameter or member 'gem_prime_pin' not described in 'drm_driver' include/drm/drm_drv.h:609: warning: Function parameter or member 'gem_prime_unpin' not described in 'drm_driver' include/drm/drm_drv.h:609: warning: Function parameter or member 'gem_prime_res_obj' not described in 'drm_driver' include/drm/drm_drv.h:609: warning: Function parameter or member 'gem_prime_get_sg_table' not described in 'drm_driver' include/drm/drm_drv.h:609: warning: Function parameter or member 'gem_prime_import_sg_table' not described in 'drm_driver' include/drm/drm_drv.h:609: warning: Function parameter or member 'gem_prime_vmap' not described in 'drm_driver' include/drm/drm_drv.h:609: warning: Function parameter or member 'gem_prime_vunmap' not described in 'drm_driver' include/drm/drm_drv.h:609: warning: Function parameter or member 'gem_prime_mmap' not described in 'drm_driver' include/drm/drm_mode_config.h:869: warning: Function parameter or member 'quirk_addfb_prefer_xbgr_30bpp' not described in 'drm_mode_config' drivers/gpu/drm/i915/i915_vma.h:49: warning: cannot understand function prototype: 'struct i915_vma ' drivers/gpu/drm/i915/i915_vma.h:1: warning: no structured comments found drivers/gpu/drm/i915/intel_guc_fwif.h:554: warning: cannot understand function prototype: 'struct guc_log_buffer_state ' drivers/gpu/drm/i915/i915_trace.h:1: warning: no structured comments found include/linux/skbuff.h:862: warning: Function parameter or member 'dev_scratch' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'list' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'ip_defrag_offset' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'skb_mstamp_ns' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member '__cloned_offset' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'head_frag' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member '__pkt_type_offset' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'encapsulation' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'encap_hdr_csum' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'csum_valid' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'csum_complete_sw' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'csum_level' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'inner_protocol_type' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'remcsum_offload' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'offload_fwd_mark' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'offload_mr_fwd_mark' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'sender_cpu' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'reserved_tailroom' not described in 'sk_buff' include/linux/skbuff.h:862: warning: Function parameter or member 'inner_ipproto' not described in 'sk_buff' include/net/sock.h:238: warning: Function parameter or member 'skc_addrpair' not described in 'sock_common' include/net/sock.h:238: warning: Function parameter or member 'skc_portpair' not described in 'sock_common' include/net/sock.h:238: warning: Function parameter or member 'skc_ipv6only' not described in 'sock_common' include/net/sock.h:238: warning: Function parameter or member 'skc_net_refcnt' not described in 'sock_common' include/net/sock.h:238: warning: Function parameter or member 'skc_v6_daddr' not described in 'sock_common' include/net/sock.h:238: warning: Function parameter or member 'skc_v6_rcv_saddr' not described in 'sock_common' include/net/sock.h:238: warning: Function parameter or member 'skc_cookie' not described in 'sock_common' include/net/sock.h:238: warning: Function parameter or member 'skc_listener' not described in 'sock_common' include/net/sock.h:238: warning: Function parameter or member 'skc_tw_dr' not described in 'sock_common' include/net/sock.h:238: warning: Function parameter or member 'skc_rcv_wnd' not described in 'sock_common' include/net/sock.h:238: warning: Function parameter or member 'skc_tw_rcv_nxt' not described in 'sock_common' include/net/sock.h:509: warning: Function parameter or member 'sk_backlog.rmem_alloc' not described in 'sock' include/net/sock.h:509: warning: Function parameter or member 'sk_backlog.len' not described in 'sock' include/net/sock.h:509: warning: Function parameter or member 'sk_backlog.head' not described in 'sock' include/net/sock.h:509: warning: Function parameter or member 'sk_backlog.tail' not described in 'sock' include/net/sock.h:509: warning: Function parameter or member 'sk_wq_raw' not described in 'sock' include/net/sock.h:509: warning: Function parameter or member 'tcp_rtx_queue' not described in 'sock' include/net/sock.h:509: warning: Function parameter or member 'sk_route_forced_caps' not described in 'sock' include/net/sock.h:509: warning: Function parameter or member 'sk_txtime_report_errors' not described in 'sock' include/net/sock.h:509: warning: Function parameter or member 'sk_validate_xmit_skb' not described in 'sock' include/linux/netdevice.h:2052: warning: Function parameter or member 'adj_list.upper' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'adj_list.lower' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'gso_partial_features' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'switchdev_ops' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'l3mdev_ops' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'xfrmdev_ops' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'tlsdev_ops' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'name_assign_type' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'ieee802154_ptr' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'mpls_ptr' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'xdp_prog' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'gro_flush_timeout' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'nf_hooks_ingress' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member '____cacheline_aligned_in_smp' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'qdisc_hash' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'xps_cpus_map' not described in 'net_device' include/linux/netdevice.h:2052: warning: Function parameter or member 'xps_rxqs_map' not described in 'net_device' vim +251 drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c 3fe89771cb Christian König 2017-09-12 175 d38ceaf99e Alex Deucher 2015-04-20 176 /** ad7f0b6334 Christian König 2018-06-05 177 * amdgpu_mn_read_lock - take the read side lock for this notifier 1ed3d2567c Christian König 2017-09-05 178 * 528e083d85 Christian König 2018-06-13 179 * @amn: our notifier 1ed3d2567c Christian König 2017-09-05 180 */ 93065ac753 Michal Hocko 2018-08-21 181 static int amdgpu_mn_read_lock(struct amdgpu_mn *amn, bool blockable) 1ed3d2567c Christian König 2017-09-05 182 { 93065ac753 Michal Hocko 2018-08-21 @183 if (blockable) 528e083d85 Christian König 2018-06-13 184 mutex_lock(&amn->read_lock); 93065ac753 Michal Hocko 2018-08-21 185 else if (!mutex_trylock(&amn->read_lock)) 93065ac753 Michal Hocko 2018-08-21 186 return -EAGAIN; 93065ac753 Michal Hocko 2018-08-21 187 528e083d85 Christian König 2018-06-13 188 if (atomic_inc_return(&amn->recursion) == 1) 528e083d85 Christian König 2018-06-13 189 down_read_non_owner(&amn->lock); 528e083d85 Christian König 2018-06-13 190 mutex_unlock(&amn->read_lock); 93065ac753 Michal Hocko 2018-08-21 191 93065ac753 Michal Hocko 2018-08-21 192 return 0; 1ed3d2567c Christian König 2017-09-05 193 } 1ed3d2567c Christian König 2017-09-05 194 1ed3d2567c Christian König 2017-09-05 195 /** ad7f0b6334 Christian König 2018-06-05 196 * amdgpu_mn_read_unlock - drop the read side lock for this notifier 1ed3d2567c Christian König 2017-09-05 197 * 528e083d85 Christian König 2018-06-13 198 * @amn: our notifier 1ed3d2567c Christian König 2017-09-05 199 */ 528e083d85 Christian König 2018-06-13 200 static void amdgpu_mn_read_unlock(struct amdgpu_mn *amn) 1ed3d2567c Christian König 2017-09-05 201 { 528e083d85 Christian König 2018-06-13 202 if (atomic_dec_return(&amn->recursion) == 0) 528e083d85 Christian König 2018-06-13 203 up_read_non_owner(&amn->lock); 1ed3d2567c Christian König 2017-09-05 204 } 1ed3d2567c Christian König 2017-09-05 205 d38ceaf99e Alex Deucher 2015-04-20 206 /** ae20f12d2d Christian König 2016-03-18 207 * amdgpu_mn_invalidate_node - unmap all BOs of a node d38ceaf99e Alex Deucher 2015-04-20 208 * ae20f12d2d Christian König 2016-03-18 209 * @node: the node with the BOs to unmap ad7f0b6334 Christian König 2018-06-05 210 * @start: start of address range affected ad7f0b6334 Christian König 2018-06-05 211 * @end: end of address range affected d38ceaf99e Alex Deucher 2015-04-20 212 * ad7f0b6334 Christian König 2018-06-05 213 * Block for operations on BOs to finish and mark pages as accessed and ad7f0b6334 Christian König 2018-06-05 214 * potentially dirty. d38ceaf99e Alex Deucher 2015-04-20 215 */ ae20f12d2d Christian König 2016-03-18 216 static void amdgpu_mn_invalidate_node(struct amdgpu_mn_node *node, d38ceaf99e Alex Deucher 2015-04-20 217 unsigned long start, d38ceaf99e Alex Deucher 2015-04-20 218 unsigned long end) d38ceaf99e Alex Deucher 2015-04-20 219 { d38ceaf99e Alex Deucher 2015-04-20 220 struct amdgpu_bo *bo; 7ab7e8a409 Jack Xiao 2015-04-27 221 long r; d38ceaf99e Alex Deucher 2015-04-20 222 d38ceaf99e Alex Deucher 2015-04-20 223 list_for_each_entry(bo, &node->bos, mn_list) { d38ceaf99e Alex Deucher 2015-04-20 224 ae20f12d2d Christian König 2016-03-18 225 if (!amdgpu_ttm_tt_affect_userptr(bo->tbo.ttm, start, end)) a961ea7349 Christian König 2015-05-04 226 continue; a961ea7349 Christian König 2015-05-04 227 d38ceaf99e Alex Deucher 2015-04-20 228 r = reservation_object_wait_timeout_rcu(bo->tbo.resv, d38ceaf99e Alex Deucher 2015-04-20 229 true, false, MAX_SCHEDULE_TIMEOUT); 7ab7e8a409 Jack Xiao 2015-04-27 230 if (r <= 0) 7ab7e8a409 Jack Xiao 2015-04-27 231 DRM_ERROR("(%ld) failed to wait for user bo\n", r); d38ceaf99e Alex Deucher 2015-04-20 232 1b0c0f9dc5 Christian König 2017-09-05 233 amdgpu_ttm_tt_mark_user_pages(bo->tbo.ttm); d38ceaf99e Alex Deucher 2015-04-20 234 } d38ceaf99e Alex Deucher 2015-04-20 235 } 0d2b42b0bd Christian König 2016-03-18 236 ae20f12d2d Christian König 2016-03-18 237 /** e52482dec8 Felix Kuehling 2018-03-23 238 * amdgpu_mn_invalidate_range_start_gfx - callback to notify about mm change ae20f12d2d Christian König 2016-03-18 239 * ae20f12d2d Christian König 2016-03-18 240 * @mn: our notifier ad7f0b6334 Christian König 2018-06-05 241 * @mm: the mm this callback is about ae20f12d2d Christian König 2016-03-18 242 * @start: start of updated range ae20f12d2d Christian König 2016-03-18 243 * @end: end of updated range ae20f12d2d Christian König 2016-03-18 244 * ad7f0b6334 Christian König 2018-06-05 245 * Block for operations on BOs to finish and mark pages as accessed and ad7f0b6334 Christian König 2018-06-05 246 * potentially dirty. ae20f12d2d Christian König 2016-03-18 247 */ 93065ac753 Michal Hocko 2018-08-21 248 static int amdgpu_mn_invalidate_range_start_gfx(struct mmu_notifier *mn, c3a8616c95 Jerome Glisse 2018-12-05 249 const struct mmu_notifier_range *range) ae20f12d2d Christian König 2016-03-18 @250 { 528e083d85 Christian König 2018-06-13 @251 struct amdgpu_mn *amn = container_of(mn, struct amdgpu_mn, mn); ae20f12d2d Christian König 2016-03-18 252 struct interval_tree_node *it; c3a8616c95 Jerome Glisse 2018-12-05 253 unsigned long end; ae20f12d2d Christian König 2016-03-18 254 ae20f12d2d Christian König 2016-03-18 255 /* notification is exclusive, but interval is inclusive */ c3a8616c95 Jerome Glisse 2018-12-05 256 end = range->end - 1; ae20f12d2d Christian König 2016-03-18 257 93065ac753 Michal Hocko 2018-08-21 258 /* TODO we should be able to split locking for interval tree and 93065ac753 Michal Hocko 2018-08-21 259 * amdgpu_mn_invalidate_node 93065ac753 Michal Hocko 2018-08-21 260 */ c3a8616c95 Jerome Glisse 2018-12-05 261 if (amdgpu_mn_read_lock(amn, range->blockable)) 93065ac753 Michal Hocko 2018-08-21 262 return -EAGAIN; ae20f12d2d Christian König 2016-03-18 263 c3a8616c95 Jerome Glisse 2018-12-05 264 it = interval_tree_iter_first(&amn->objects, range->start, end); ae20f12d2d Christian König 2016-03-18 265 while (it) { ae20f12d2d Christian König 2016-03-18 266 struct amdgpu_mn_node *node; ae20f12d2d Christian König 2016-03-18 267 c3a8616c95 Jerome Glisse 2018-12-05 268 if (!range->blockable) { 93065ac753 Michal Hocko 2018-08-21 269 amdgpu_mn_read_unlock(amn); 93065ac753 Michal Hocko 2018-08-21 270 return -EAGAIN; 93065ac753 Michal Hocko 2018-08-21 271 } 93065ac753 Michal Hocko 2018-08-21 272 ae20f12d2d Christian König 2016-03-18 273 node = container_of(it, struct amdgpu_mn_node, it); c3a8616c95 Jerome Glisse 2018-12-05 274 it = interval_tree_iter_next(it, range->start, end); ae20f12d2d Christian König 2016-03-18 275 c3a8616c95 Jerome Glisse 2018-12-05 276 amdgpu_mn_invalidate_node(node, range->start, end); ae20f12d2d Christian König 2016-03-18 277 } 93065ac753 Michal Hocko 2018-08-21 278 93065ac753 Michal Hocko 2018-08-21 279 return 0; 1ed3d2567c Christian König 2017-09-05 280 } ae20f12d2d Christian König 2016-03-18 281 1ed3d2567c Christian König 2017-09-05 282 /** e52482dec8 Felix Kuehling 2018-03-23 283 * amdgpu_mn_invalidate_range_start_hsa - callback to notify about mm change e52482dec8 Felix Kuehling 2018-03-23 284 * e52482dec8 Felix Kuehling 2018-03-23 285 * @mn: our notifier 87e3f1366e Darren Powell 2018-06-25 286 * @mm: the mm this callback is about e52482dec8 Felix Kuehling 2018-03-23 287 * @start: start of updated range e52482dec8 Felix Kuehling 2018-03-23 288 * @end: end of updated range e52482dec8 Felix Kuehling 2018-03-23 289 * e52482dec8 Felix Kuehling 2018-03-23 290 * We temporarily evict all BOs between start and end. This e52482dec8 Felix Kuehling 2018-03-23 291 * necessitates evicting all user-mode queues of the process. The BOs e52482dec8 Felix Kuehling 2018-03-23 292 * are restorted in amdgpu_mn_invalidate_range_end_hsa. e52482dec8 Felix Kuehling 2018-03-23 293 */ 93065ac753 Michal Hocko 2018-08-21 294 static int amdgpu_mn_invalidate_range_start_hsa(struct mmu_notifier *mn, c3a8616c95 Jerome Glisse 2018-12-05 295 const struct mmu_notifier_range *range) e52482dec8 Felix Kuehling 2018-03-23 @296 { 528e083d85 Christian König 2018-06-13 @297 struct amdgpu_mn *amn = container_of(mn, struct amdgpu_mn, mn); e52482dec8 Felix Kuehling 2018-03-23 298 struct interval_tree_node *it; c3a8616c95 Jerome Glisse 2018-12-05 299 unsigned long end; e52482dec8 Felix Kuehling 2018-03-23 300 e52482dec8 Felix Kuehling 2018-03-23 301 /* notification is exclusive, but interval is inclusive */ c3a8616c95 Jerome Glisse 2018-12-05 302 end = range->end - 1; e52482dec8 Felix Kuehling 2018-03-23 303 c3a8616c95 Jerome Glisse 2018-12-05 304 if (amdgpu_mn_read_lock(amn, range->blockable)) 93065ac753 Michal Hocko 2018-08-21 305 return -EAGAIN; e52482dec8 Felix Kuehling 2018-03-23 306 c3a8616c95 Jerome Glisse 2018-12-05 307 it = interval_tree_iter_first(&amn->objects, range->start, end); e52482dec8 Felix Kuehling 2018-03-23 308 while (it) { e52482dec8 Felix Kuehling 2018-03-23 309 struct amdgpu_mn_node *node; e52482dec8 Felix Kuehling 2018-03-23 310 struct amdgpu_bo *bo; e52482dec8 Felix Kuehling 2018-03-23 311 c3a8616c95 Jerome Glisse 2018-12-05 312 if (!range->blockable) { 93065ac753 Michal Hocko 2018-08-21 313 amdgpu_mn_read_unlock(amn); 93065ac753 Michal Hocko 2018-08-21 314 return -EAGAIN; 93065ac753 Michal Hocko 2018-08-21 315 } 93065ac753 Michal Hocko 2018-08-21 316 e52482dec8 Felix Kuehling 2018-03-23 317 node = container_of(it, struct amdgpu_mn_node, it); c3a8616c95 Jerome Glisse 2018-12-05 318 it = interval_tree_iter_next(it, range->start, end); e52482dec8 Felix Kuehling 2018-03-23 319 e52482dec8 Felix Kuehling 2018-03-23 320 list_for_each_entry(bo, &node->bos, mn_list) { e52482dec8 Felix Kuehling 2018-03-23 321 struct kgd_mem *mem = bo->kfd_bo; e52482dec8 Felix Kuehling 2018-03-23 322 e52482dec8 Felix Kuehling 2018-03-23 323 if (amdgpu_ttm_tt_affect_userptr(bo->tbo.ttm, c3a8616c95 Jerome Glisse 2018-12-05 324 range->start, c3a8616c95 Jerome Glisse 2018-12-05 325 end)) c3a8616c95 Jerome Glisse 2018-12-05 326 amdgpu_amdkfd_evict_userptr(mem, range->mm); e52482dec8 Felix Kuehling 2018-03-23 327 } e52482dec8 Felix Kuehling 2018-03-23 328 } 93065ac753 Michal Hocko 2018-08-21 329 93065ac753 Michal Hocko 2018-08-21 330 return 0; e52482dec8 Felix Kuehling 2018-03-23 331 } e52482dec8 Felix Kuehling 2018-03-23 332 e52482dec8 Felix Kuehling 2018-03-23 333 /** 1ed3d2567c Christian König 2017-09-05 334 * amdgpu_mn_invalidate_range_end - callback to notify about mm change 1ed3d2567c Christian König 2017-09-05 335 * 1ed3d2567c Christian König 2017-09-05 336 * @mn: our notifier ad7f0b6334 Christian König 2018-06-05 337 * @mm: the mm this callback is about 1ed3d2567c Christian König 2017-09-05 338 * @start: start of updated range 1ed3d2567c Christian König 2017-09-05 339 * @end: end of updated range 1ed3d2567c Christian König 2017-09-05 340 * 1ed3d2567c Christian König 2017-09-05 341 * Release the lock again to allow new command submissions. 1ed3d2567c Christian König 2017-09-05 342 */ 1ed3d2567c Christian König 2017-09-05 343 static void amdgpu_mn_invalidate_range_end(struct mmu_notifier *mn, c3a8616c95 Jerome Glisse 2018-12-05 344 const struct mmu_notifier_range *range) 1ed3d2567c Christian König 2017-09-05 345 { 528e083d85 Christian König 2018-06-13 @346 struct amdgpu_mn *amn = container_of(mn, struct amdgpu_mn, mn); ae20f12d2d Christian König 2016-03-18 347 528e083d85 Christian König 2018-06-13 348 amdgpu_mn_read_unlock(amn); d38ceaf99e Alex Deucher 2015-04-20 349 } d38ceaf99e Alex Deucher 2015-04-20 350 :::::: The code at line 251 was first introduced by commit :::::: 528e083d85bd0306e056fe1bdfd05493ebbff9cc drm/amdgpu: rename rmn to amn in the MMU notifier code (v2) :::::: TO: Christian König <christian.koenig@xxxxxxx> :::::: CC: Alex Deucher <alexander.deucher@xxxxxxx> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip