<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c, branch v5.8</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v5.8</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v5.8'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2020-04-28T20:20:30Z</updated>
<entry>
<title>drm/amdkfd: Enable over-subscription with &gt;1 GWS queue</title>
<updated>2020-04-28T20:20:30Z</updated>
<author>
<name>Joseph Greathouse</name>
<email>Joseph.Greathouse@amd.com</email>
</author>
<published>2019-09-18T19:49:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=b8020b0304c8f44e5e29f0b1a04d31e0bf68d26a'/>
<id>urn:sha1:b8020b0304c8f44e5e29f0b1a04d31e0bf68d26a</id>
<content type='text'>
The current GWS usage model will only allows a single GWS-enabled
process to be active on the GPU at once. This ensures that a
barrier-using kernel gets a known amount of GPU hardware, to
prevent deadlock due to inability to go beyond the GWS barrier.

The HWS watches how many GWS entries are assigned to each process,
and goes into over-subscription mode when two processes need more
than the 64 that are available. The current KFD method for working
with this is to allocate all 64 GWS entries to each GWS-capable
process.

When more than one GWS-enabled process is in the runlist, we must
make sure the runlist is in over-subscription mode, so that the
HWS gets a chained RUN_LIST packet and continues scheduling
kernels.

Signed-off-by: Joseph Greathouse &lt;Joseph.Greathouse@amd.com&gt;
Reviewed-by: Felix Kuehling &lt;Felix.Kuehling@amd.com&gt;
Signed-off-by: Felix Kuehling &lt;Felix.Kuehling@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/amdkfd: Avoid hanging hardware in stop_cpsch</title>
<updated>2020-01-07T16:55:04Z</updated>
<author>
<name>Felix Kuehling</name>
<email>Felix.Kuehling@amd.com</email>
</author>
<published>2019-12-20T07:46:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c2a77fde10ec2cac33a23c8ac53d181bc2fe0cee'/>
<id>urn:sha1:c2a77fde10ec2cac33a23c8ac53d181bc2fe0cee</id>
<content type='text'>
Don't use the HWS if it's known to be hanging. In a reset also
don't try to destroy the HIQ because that may hang on SRIOV if the
KIQ is unresponsive.

Signed-off-by: Felix Kuehling &lt;Felix.Kuehling@amd.com&gt;
Tested-by: Emily Deng &lt;Emily.Deng@amd.com&gt;
Reviewed-by: shaoyunl  &lt;shaoyun.liu@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/amdkfd: Eliminate unnecessary kernel queue function pointers</title>
<updated>2019-12-05T21:24:36Z</updated>
<author>
<name>Yong Zhao</name>
<email>Yong.Zhao@amd.com</email>
</author>
<published>2019-11-08T05:30:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a5a4d68c9326bba7d6ab414a6c1a404f70ab29b1'/>
<id>urn:sha1:a5a4d68c9326bba7d6ab414a6c1a404f70ab29b1</id>
<content type='text'>
Up to this point, those functions are all the same for all ASICs, so
no need to call them by functions pointers. Removing the function
pointers will greatly increase the code readablity. If there is ever
need for those function pointers, we can add it back then.

Signed-off-by: Yong Zhao &lt;Yong.Zhao@amd.com&gt;
Reviewed-by: Felix Kuehling &lt;Felix.Kuehling@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/amdkfd: Eliminate ops_asic_specific in kernel queue</title>
<updated>2019-11-19T14:47:17Z</updated>
<author>
<name>Yong Zhao</name>
<email>Yong.Zhao@amd.com</email>
</author>
<published>2019-11-08T04:59:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ccdef35d0714f620ca70b23b6000cbb630efea1b'/>
<id>urn:sha1:ccdef35d0714f620ca70b23b6000cbb630efea1b</id>
<content type='text'>
The ops_asic_specific function pointers are actually quite generic after
using a simple if condition. Eliminate it by code refactoring.

Signed-off-by: Yong Zhao &lt;Yong.Zhao@amd.com&gt;
Reviewed-by: Felix Kuehling &lt;Felix.Kuehling@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/amdkfd: Merge CIK kernel queue functions into VI</title>
<updated>2019-11-19T14:47:02Z</updated>
<author>
<name>Yong Zhao</name>
<email>Yong.Zhao@amd.com</email>
</author>
<published>2019-11-08T04:18:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=84ce6c48675b55e937814e7c688c46ab15242b8a'/>
<id>urn:sha1:84ce6c48675b55e937814e7c688c46ab15242b8a</id>
<content type='text'>
The only difference that CIK kernel queue functions are different from
VI is avoid allocating eop_mem. We can achieve that by using a if
condition.

Signed-off-by: Yong Zhao &lt;Yong.Zhao@amd.com&gt;
Reviewed-by: Felix Kuehling &lt;Felix.Kuehling@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/amdkfd: Use kernel queue v9 functions for v10</title>
<updated>2019-11-13T20:29:45Z</updated>
<author>
<name>Yong Zhao</name>
<email>Yong.Zhao@amd.com</email>
</author>
<published>2019-10-30T23:22:11Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5d4634b5d4456a0c06f93e32616f7f4f6d23eecd'/>
<id>urn:sha1:5d4634b5d4456a0c06f93e32616f7f4f6d23eecd</id>
<content type='text'>
The kernel queue functions for v9 and v10 are the same except
pm_map_process_v* which have small difference, so they should be reused.
This eliminates the need of reapplying several patches which were
applied on v9 but not on v10, such as bigger GWS and more than 2
SDMA engine support which were introduced on Arcturus.

Signed-off-by: Yong Zhao &lt;Yong.Zhao@amd.com&gt;
Reviewed-by: Felix Kuehling &lt;Felix.Kuehling@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/amdkfd: use navi12 specific family id for navi12 code path</title>
<updated>2019-10-03T14:11:03Z</updated>
<author>
<name>shaoyunl</name>
<email>shaoyun.liu@amd.com</email>
</author>
<published>2019-09-25T21:07:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=0e94b5640bb764cf223f9dec18bed139e8e17f4c'/>
<id>urn:sha1:0e94b5640bb764cf223f9dec18bed139e8e17f4c</id>
<content type='text'>
Keep the same use of CHIP_IDs for navi12 in kfd

Signed-off-by: shaoyunl &lt;shaoyun.liu@amd.com&gt;
Reviewed-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/amdkfd: init kernel queue for renoir</title>
<updated>2019-09-16T14:55:21Z</updated>
<author>
<name>Huang Rui</name>
<email>ray.huang@amd.com</email>
</author>
<published>2019-09-02T15:19:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=59a6fc1aef27c35a68f8b9e1f1e05923de567d82'/>
<id>urn:sha1:59a6fc1aef27c35a68f8b9e1f1e05923de567d82</id>
<content type='text'>
Renoir is GFX v9, so init v9 kernel queue.

Signed-off-by: Huang Rui &lt;ray.huang@amd.com&gt;
Reviewed-by: Felix Kuehling &lt;Felix.Kuehling@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/amdkfd: Support Navi14 in KFD</title>
<updated>2019-09-16T14:54:40Z</updated>
<author>
<name>Yong Zhao</name>
<email>Yong.Zhao@amd.com</email>
</author>
<published>2019-08-13T21:13:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8099ae40d8664e4cc9d7ddadee28bd5c6226a362'/>
<id>urn:sha1:8099ae40d8664e4cc9d7ddadee28bd5c6226a362</id>
<content type='text'>
Initial support of Navi14 in KFD. The device IDs will be added later.

Signed-off-by: Yong Zhao &lt;Yong.Zhao@amd.com&gt;
Reviewed-by: Felix Kuehling &lt;Felix.Kuehling@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>amd/amdkfd: Add ASIC ARCTURUS to kfd</title>
<updated>2019-07-18T19:18:03Z</updated>
<author>
<name>Yong Zhao</name>
<email>Yong.Zhao@amd.com</email>
</author>
<published>2019-07-09T14:37:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=49adcf8a6f951450417c14afa6a404b7caea25ef'/>
<id>urn:sha1:49adcf8a6f951450417c14afa6a404b7caea25ef</id>
<content type='text'>
Add initial support for ARCTURUS to kfd.

Signed-off-by: Yong Zhao &lt;Yong.Zhao@amd.com&gt;
Signed-off-by: Oak Zeng &lt;Oak.Zeng@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
</feed>
