tree: git://people.freedesktop.org/~agd5f/linux.git amd-staging-dkms-4.18 head: 937a0a9df97d4c1c7cecf6faa2f501d175bc3c2a commit: 67f5976ee4842d01af79144a8355a040ed36b6d2 [805/1379] drm/amdkfd: Copy in non-KFD changes reproduce: make htmldocs All warnings (new ones prefixed by >>): WARNING: convert(1) not found, for SVG to PDF conversion install ImageMagick (https://www.imagemagick.org) mm/mempool.c:228: warning: Function parameter or member 'pool' not described in 'mempool_init' include/net/cfg80211.h:4279: warning: Function parameter or member 'wext.ibss' not described in 'wireless_dev' include/net/cfg80211.h:4279: warning: Function parameter or member 'wext.connect' not described in 'wireless_dev' include/net/cfg80211.h:4279: warning: Function parameter or member 'wext.keys' not described in 'wireless_dev' include/net/cfg80211.h:4279: warning: Function parameter or member 'wext.ie' not described in 'wireless_dev' include/net/cfg80211.h:4279: warning: Function parameter or member 'wext.ie_len' not described in 'wireless_dev' include/net/cfg80211.h:4279: warning: Function parameter or member 'wext.bssid' not described in 'wireless_dev' include/net/cfg80211.h:4279: warning: Function parameter or member 'wext.ssid' not described in 'wireless_dev' include/net/cfg80211.h:4279: warning: Function parameter or member 'wext.default_key' not described in 'wireless_dev' include/net/cfg80211.h:4279: warning: Function parameter or member 'wext.default_mgmt_key' not described in 'wireless_dev' include/net/cfg80211.h:4279: warning: Function parameter or member 'wext.prev_bssid_valid' not described in 'wireless_dev' include/net/mac80211.h:2282: warning: Function parameter or member 'radiotap_timestamp.units_pos' not described in 'ieee80211_hw' include/net/mac80211.h:2282: warning: Function parameter or member 'radiotap_timestamp.accuracy' not described in 'ieee80211_hw' include/net/mac80211.h:955: warning: Function parameter or member 'control.rates' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'control.rts_cts_rate_idx' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'control.use_rts' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'control.use_cts_prot' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'control.short_preamble' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'control.skip_table' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'control.jiffies' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'control.vif' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'control.hw_key' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'control.flags' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'control.enqueue_time' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'ack' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'ack.cookie' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'status.rates' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'status.ack_signal' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'status.ampdu_ack_len' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'status.ampdu_len' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'status.antenna' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'status.tx_time' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'status.is_valid_ack_signal' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'status.status_driver_data' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'driver_rates' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'pad' not described in 'ieee80211_tx_info' include/net/mac80211.h:955: warning: Function parameter or member 'rate_driver_data' not described in 'ieee80211_tx_info' 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/sched/fair.c:3760: warning: Function parameter or member 'flags' not described in 'attach_entity_load_avg' include/linux/device.h:93: warning: bad line: this bus. include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_excl.cb' not described in 'dma_buf' include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_excl.poll' not described in 'dma_buf' include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_excl.active' not described in 'dma_buf' include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_shared.cb' not described in 'dma_buf' include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_shared.poll' not described in 'dma_buf' include/linux/dma-buf.h:307: 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:142: warning: Function parameter or member 'request_key' not described in 'gpio_irq_chip' include/linux/iio/hw-consumer.h:1: warning: no structured comments found include/linux/device.h:94: warning: bad line: this bus. 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_early' not described in 'regulator_ops' drivers/regulator/core.c:4465: warning: Excess function parameter 'state' description in 'regulator_suspend_late' 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/usb/dwc3/gadget.c:510: warning: Excess function parameter 'dwc' description in 'dwc3_gadget_start_config' drivers/gpu/drm/amd/amdgpu/amdgpu_prime.c:210: warning: Function parameter or member 'target_dev' not described in 'amdgpu_gem_map_attach' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:3063: warning: Excess function parameter 'dev' description in 'amdgpu_vm_get_task_info' >> drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1542: warning: Function parameter or member 'vram_base_offset' not described in 'amdgpu_vm_bo_split_mapping' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:3064: warning: Function parameter or member 'adev' not described in 'amdgpu_vm_get_task_info' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:3064: warning: Excess function parameter 'dev' description in 'amdgpu_vm_get_task_info' include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_pin' not described in 'drm_driver' include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_unpin' not described in 'drm_driver' include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_res_obj' not described in 'drm_driver' include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_get_sg_table' not described in 'drm_driver' include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_import_sg_table' not described in 'drm_driver' include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_vmap' not described in 'drm_driver' include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_vunmap' not described in 'drm_driver' include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_mmap' not described in 'drm_driver' drivers/gpu/drm/i915/i915_vma.h:48: warning: cannot understand function prototype: 'struct i915_vma ' drivers/gpu/drm/i915/i915_vma.h:1: warning: no structured comments found include/drm/tinydrm/tinydrm.h:34: warning: Function parameter or member 'fb_dirty' not described in 'tinydrm_device' drivers/gpu/drm/tinydrm/mipi-dbi.c:272: warning: Function parameter or member 'crtc_state' not described in 'mipi_dbi_enable_flush' drivers/gpu/drm/tinydrm/mipi-dbi.c:272: warning: Function parameter or member 'plane_state' not described in 'mipi_dbi_enable_flush' include/linux/skbuff.h:852: warning: Function parameter or member 'dev_scratch' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'ip_defrag_offset' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'skb_mstamp' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member '__cloned_offset' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'head_frag' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member '__pkt_type_offset' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'encapsulation' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'encap_hdr_csum' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'csum_valid' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'csum_complete_sw' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'csum_level' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'inner_protocol_type' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'remcsum_offload' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'offload_fwd_mark' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'offload_mr_fwd_mark' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'sender_cpu' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'reserved_tailroom' not described in 'sk_buff' include/linux/skbuff.h:852: warning: Function parameter or member 'inner_ipproto' not described in 'sk_buff' include/net/sock.h:234: warning: Function parameter or member 'skc_addrpair' not described in 'sock_common' include/net/sock.h:234: warning: Function parameter or member 'skc_portpair' not described in 'sock_common' include/net/sock.h:234: warning: Function parameter or member 'skc_ipv6only' not described in 'sock_common' include/net/sock.h:234: warning: Function parameter or member 'skc_net_refcnt' not described in 'sock_common' include/net/sock.h:234: warning: Function parameter or member 'skc_v6_daddr' not described in 'sock_common' include/net/sock.h:234: warning: Function parameter or member 'skc_v6_rcv_saddr' not described in 'sock_common' include/net/sock.h:234: warning: Function parameter or member 'skc_cookie' not described in 'sock_common' include/net/sock.h:234: warning: Function parameter or member 'skc_listener' not described in 'sock_common' include/net/sock.h:234: warning: Function parameter or member 'skc_tw_dr' not described in 'sock_common' include/net/sock.h:234: warning: Function parameter or member 'skc_rcv_wnd' not described in 'sock_common' include/net/sock.h:234: warning: Function parameter or member 'skc_tw_rcv_nxt' not described in 'sock_common' include/net/sock.h:493: warning: Function parameter or member 'sk_backlog.rmem_alloc' not described in 'sock' include/net/sock.h:493: warning: Function parameter or member 'sk_backlog.len' not described in 'sock' include/net/sock.h:493: warning: Function parameter or member 'sk_backlog.head' not described in 'sock' include/net/sock.h:493: warning: Function parameter or member 'sk_backlog.tail' not described in 'sock' include/net/sock.h:493: warning: Function parameter or member 'sk_wq_raw' not described in 'sock' include/net/sock.h:493: warning: Function parameter or member 'tcp_rtx_queue' not described in 'sock' include/net/sock.h:493: warning: Function parameter or member 'sk_route_forced_caps' not described in 'sock' include/net/sock.h:493: warning: Function parameter or member 'sk_validate_xmit_skb' not described in 'sock' include/linux/netdevice.h:1997: warning: Function parameter or member 'adj_list.upper' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'adj_list.lower' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'gso_partial_features' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'switchdev_ops' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'l3mdev_ops' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'xfrmdev_ops' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'tlsdev_ops' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'name_assign_type' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'ieee802154_ptr' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'mpls_ptr' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'xdp_prog' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'gro_flush_timeout' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'nf_hooks_ingress' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member '____cacheline_aligned_in_smp' not described in 'net_device' include/linux/netdevice.h:1997: warning: Function parameter or member 'qdisc_hash' not described in 'net_device' include/linux/phylink.h:56: warning: Function parameter or member '__ETHTOOL_DECLARE_LINK_MODE_MASK(advertising' not described in 'phylink_link_state' include/linux/phylink.h:56: warning: Function parameter or member '__ETHTOOL_DECLARE_LINK_MODE_MASK(lp_advertising' not described in 'phylink_link_state' sound/soc/soc-core.c:2787: warning: Excess function parameter 'legacy_dai_naming' description in 'snd_soc_register_dais' include/linux/rcupdate.h:571: ERROR: Unexpected indentation. include/linux/rcupdate.h:575: ERROR: Unexpected indentation. include/linux/rcupdate.h:579: WARNING: Block quote ends without a blank line; unexpected unindent. include/linux/rcupdate.h:581: WARNING: Block quote ends without a blank line; unexpected unindent. include/linux/rcupdate.h:581: WARNING: Inline literal start-string without end-string. lib/reed_solomon/reed_solomon.c:287: ERROR: Unknown target name: "gfp". include/linux/wait.h:110: WARNING: Block quote ends without a blank line; unexpected unindent. include/linux/wait.h:113: ERROR: Unexpected indentation. include/linux/wait.h:115: WARNING: Block quote ends without a blank line; unexpected unindent. kernel/time/hrtimer.c:1129: WARNING: Block quote ends without a blank line; unexpected unindent. kernel/signal.c:327: WARNING: Inline literal start-string without end-string. drivers/video/fbdev/core/modedb.c:647: WARNING: Inline strong start-string without end-string. drivers/video/fbdev/core/modedb.c:647: WARNING: Inline strong start-string without end-string. drivers/video/fbdev/core/modedb.c:647: WARNING: Inline strong start-string without end-string. drivers/video/fbdev/core/modedb.c:647: WARNING: Inline strong start-string without end-string. drivers/ata/libata-core.c:5946: ERROR: Unknown target name: "hw". drivers/message/fusion/mptbase.c:5054: WARNING: Definition list ends without a blank line; unexpected unindent. drivers/tty/serial/serial_core.c:1892: WARNING: Definition list ends without a blank line; unexpected unindent. include/linux/mtd/rawnand.h:1446: WARNING: Inline strong start-string without end-string. include/linux/mtd/rawnand.h:1448: WARNING: Inline strong start-string without end-string. include/linux/regulator/driver.h:279: ERROR: Unknown target name: "regulator_regmap_x_voltage". Documentation/driver-api/soundwire/locking.rst:50: ERROR: Inconsistent literal block quoting. Documentation/driver-api/soundwire/locking.rst:51: WARNING: Line block ends without a blank line. Documentation/driver-api/soundwire/locking.rst:55: WARNING: Inline substitution_reference start-string without end-string. Documentation/driver-api/soundwire/locking.rst:56: WARNING: Line block ends without a blank line. Documentation/driver-api/soundwire/stream.rst:177: WARNING: Explicit markup ends without a blank line; unexpected unindent. Documentation/driver-api/soundwire/stream.rst:203: WARNING: Explicit markup ends without a blank line; unexpected unindent. Documentation/driver-api/soundwire/stream.rst:248: WARNING: Explicit markup ends without a blank line; unexpected unindent. Documentation/driver-api/soundwire/stream.rst:277: WARNING: Explicit markup ends without a blank line; unexpected unindent. Documentation/driver-api/soundwire/stream.rst:304: WARNING: Explicit markup ends without a blank line; unexpected unindent. vim +1542 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c d38ceaf9 Alex Deucher 2015-04-20 1513 d38ceaf9 Alex Deucher 2015-04-20 1514 /** a14faa65 Christian König 2016-01-25 1515 * amdgpu_vm_bo_split_mapping - split a mapping into smaller chunks a14faa65 Christian König 2016-01-25 1516 * a14faa65 Christian König 2016-01-25 1517 * @adev: amdgpu_device pointer 3cabaa54 Christian König 2016-06-06 1518 * @exclusive: fence we need to sync to 8358dcee Christian König 2016-03-30 1519 * @pages_addr: DMA addresses to use for mapping a14faa65 Christian König 2016-01-25 1520 * @vm: requested vm a14faa65 Christian König 2016-01-25 1521 * @mapping: mapped range and flags to use for the update 8358dcee Christian König 2016-03-30 1522 * @flags: HW flags for the mapping 63e0ba40 Christian König 2016-08-16 1523 * @nodes: array of drm_mm_nodes with the MC addresses a14faa65 Christian König 2016-01-25 1524 * @fence: optional resulting fence a14faa65 Christian König 2016-01-25 1525 * a14faa65 Christian König 2016-01-25 1526 * Split the mapping into smaller chunks so that each update fits a14faa65 Christian König 2016-01-25 1527 * into a SDMA IB. 8df7b3b4 Andrey Grodzovsky 2018-06-11 1528 * 8df7b3b4 Andrey Grodzovsky 2018-06-11 1529 * Returns: 8df7b3b4 Andrey Grodzovsky 2018-06-11 1530 * 0 for success, -EINVAL for failure. a14faa65 Christian König 2016-01-25 1531 */ a14faa65 Christian König 2016-01-25 1532 static int amdgpu_vm_bo_split_mapping(struct amdgpu_device *adev, f54d1867 Chris Wilson 2016-10-25 1533 struct dma_fence *exclusive, 8358dcee Christian König 2016-03-30 1534 dma_addr_t *pages_addr, a14faa65 Christian König 2016-01-25 1535 struct amdgpu_vm *vm, a14faa65 Christian König 2016-01-25 1536 struct amdgpu_bo_va_mapping *mapping, 67f5976e Kent Russell 2017-11-14 1537 uint64_t vram_base_offset, 6b777607 Chunming Zhou 2016-09-21 1538 uint64_t flags, 63e0ba40 Christian König 2016-08-16 1539 struct drm_mm_node *nodes, f54d1867 Chris Wilson 2016-10-25 1540 struct dma_fence **fence) a14faa65 Christian König 2016-01-25 1541 { 9fc8fc70 Christian König 2017-09-18 @1542 unsigned min_linear_pages = 1 << adev->vm_manager.fragment_size; 570144c6 Christian König 2017-08-30 1543 uint64_t pfn, start = mapping->start; a14faa65 Christian König 2016-01-25 1544 int r; a14faa65 Christian König 2016-01-25 1545 a14faa65 Christian König 2016-01-25 1546 /* normally,bo_va->flags only contians READABLE and WIRTEABLE bit go here a14faa65 Christian König 2016-01-25 1547 * but in case of something, we filter the flags in first place a14faa65 Christian König 2016-01-25 1548 */ a14faa65 Christian König 2016-01-25 1549 if (!(mapping->flags & AMDGPU_PTE_READABLE)) a14faa65 Christian König 2016-01-25 1550 flags &= ~AMDGPU_PTE_READABLE; a14faa65 Christian König 2016-01-25 1551 if (!(mapping->flags & AMDGPU_PTE_WRITEABLE)) a14faa65 Christian König 2016-01-25 1552 flags &= ~AMDGPU_PTE_WRITEABLE; a14faa65 Christian König 2016-01-25 1553 15b31c59 Alex Xie 2017-03-03 1554 flags &= ~AMDGPU_PTE_EXECUTABLE; 15b31c59 Alex Xie 2017-03-03 1555 flags |= mapping->flags & AMDGPU_PTE_EXECUTABLE; 15b31c59 Alex Xie 2017-03-03 1556 b0fd18b0 Alex Xie 2017-03-03 1557 flags &= ~AMDGPU_PTE_MTYPE_MASK; b0fd18b0 Alex Xie 2017-03-03 1558 flags |= (mapping->flags & AMDGPU_PTE_MTYPE_MASK); b0fd18b0 Alex Xie 2017-03-03 1559 d0766e98 Zhang, Jerry 2017-04-19 1560 if ((mapping->flags & AMDGPU_PTE_PRT) && d0766e98 Zhang, Jerry 2017-04-19 1561 (adev->asic_type >= CHIP_VEGA10)) { d0766e98 Zhang, Jerry 2017-04-19 1562 flags |= AMDGPU_PTE_PRT; d0766e98 Zhang, Jerry 2017-04-19 1563 flags &= ~AMDGPU_PTE_VALID; d0766e98 Zhang, Jerry 2017-04-19 1564 } d0766e98 Zhang, Jerry 2017-04-19 1565 a14faa65 Christian König 2016-01-25 1566 trace_amdgpu_vm_bo_update(mapping); a14faa65 Christian König 2016-01-25 1567 63e0ba40 Christian König 2016-08-16 1568 pfn = mapping->offset >> PAGE_SHIFT; 63e0ba40 Christian König 2016-08-16 1569 if (nodes) { 63e0ba40 Christian König 2016-08-16 1570 while (pfn >= nodes->size) { 63e0ba40 Christian König 2016-08-16 1571 pfn -= nodes->size; 63e0ba40 Christian König 2016-08-16 1572 ++nodes; 63e0ba40 Christian König 2016-08-16 1573 } 63e0ba40 Christian König 2016-08-16 1574 } 63e0ba40 Christian König 2016-08-16 1575 63e0ba40 Christian König 2016-08-16 1576 do { 9fc8fc70 Christian König 2017-09-18 1577 dma_addr_t *dma_addr = NULL; 63e0ba40 Christian König 2016-08-16 1578 uint64_t max_entries; 63e0ba40 Christian König 2016-08-16 1579 uint64_t addr, last; 63e0ba40 Christian König 2016-08-16 1580 63e0ba40 Christian König 2016-08-16 1581 if (nodes) { 63e0ba40 Christian König 2016-08-16 1582 addr = nodes->start << PAGE_SHIFT; 63e0ba40 Christian König 2016-08-16 1583 max_entries = (nodes->size - pfn) * eb2ac2fc Michel Dänzer 2018-06-22 1584 AMDGPU_GPU_PAGES_IN_CPU_PAGE; 63e0ba40 Christian König 2016-08-16 1585 } else { 63e0ba40 Christian König 2016-08-16 1586 addr = 0; 63e0ba40 Christian König 2016-08-16 1587 max_entries = S64_MAX; 63e0ba40 Christian König 2016-08-16 1588 } 63e0ba40 Christian König 2016-08-16 1589 8358dcee Christian König 2016-03-30 1590 if (pages_addr) { 9fc8fc70 Christian König 2017-09-18 1591 uint64_t count; 9fc8fc70 Christian König 2017-09-18 1592 63e0ba40 Christian König 2016-08-16 1593 max_entries = min(max_entries, 16ull * 1024ull); 38e624a1 Michel Dänzer 2018-06-21 1594 for (count = 1; eb2ac2fc Michel Dänzer 2018-06-22 1595 count < max_entries / AMDGPU_GPU_PAGES_IN_CPU_PAGE; 38e624a1 Michel Dänzer 2018-06-21 1596 ++count) { 9fc8fc70 Christian König 2017-09-18 1597 uint64_t idx = pfn + count; 9fc8fc70 Christian König 2017-09-18 1598 9fc8fc70 Christian König 2017-09-18 1599 if (pages_addr[idx] != 9fc8fc70 Christian König 2017-09-18 1600 (pages_addr[idx - 1] + PAGE_SIZE)) 9fc8fc70 Christian König 2017-09-18 1601 break; 9fc8fc70 Christian König 2017-09-18 1602 } 9fc8fc70 Christian König 2017-09-18 1603 9fc8fc70 Christian König 2017-09-18 1604 if (count < min_linear_pages) { 9fc8fc70 Christian König 2017-09-18 1605 addr = pfn << PAGE_SHIFT; 9fc8fc70 Christian König 2017-09-18 1606 dma_addr = pages_addr; 9fc8fc70 Christian König 2017-09-18 1607 } else { 9fc8fc70 Christian König 2017-09-18 1608 addr = pages_addr[pfn]; eb2ac2fc Michel Dänzer 2018-06-22 1609 max_entries = count * AMDGPU_GPU_PAGES_IN_CPU_PAGE; 9fc8fc70 Christian König 2017-09-18 1610 } 9fc8fc70 Christian König 2017-09-18 1611 63e0ba40 Christian König 2016-08-16 1612 } else if (flags & AMDGPU_PTE_VALID) { 67f5976e Kent Russell 2017-11-14 1613 addr += vram_base_offset; 63e0ba40 Christian König 2016-08-16 1614 addr += pfn << PAGE_SHIFT; 9fc8fc70 Christian König 2017-09-18 1615 } a14faa65 Christian König 2016-01-25 1616 a9f87f64 Christian König 2017-03-30 1617 last = min((uint64_t)mapping->last, start + max_entries - 1); 9fc8fc70 Christian König 2017-09-18 1618 r = amdgpu_vm_bo_update_mapping(adev, exclusive, dma_addr, vm, a14faa65 Christian König 2016-01-25 1619 start, last, flags, addr, a14faa65 Christian König 2016-01-25 1620 fence); a14faa65 Christian König 2016-01-25 1621 if (r) a14faa65 Christian König 2016-01-25 1622 return r; a14faa65 Christian König 2016-01-25 1623 eb2ac2fc Michel Dänzer 2018-06-22 1624 pfn += (last - start + 1) / AMDGPU_GPU_PAGES_IN_CPU_PAGE; 63e0ba40 Christian König 2016-08-16 1625 if (nodes && nodes->size == pfn) { 63e0ba40 Christian König 2016-08-16 1626 pfn = 0; 63e0ba40 Christian König 2016-08-16 1627 ++nodes; a14faa65 Christian König 2016-01-25 1628 } 63e0ba40 Christian König 2016-08-16 1629 start = last + 1; 63e0ba40 Christian König 2016-08-16 1630 a9f87f64 Christian König 2017-03-30 1631 } while (unlikely(start != mapping->last + 1)); a14faa65 Christian König 2016-01-25 1632 a14faa65 Christian König 2016-01-25 1633 return 0; a14faa65 Christian König 2016-01-25 1634 } a14faa65 Christian König 2016-01-25 1635 :::::: The code at line 1542 was first introduced by commit :::::: 9fc8fc709b356c85034cbcb3b84c9d8b77865f52 drm/amdgpu: add VM support for huge pages 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
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel