Wykres commitów

2800 Commity

Autor SHA1 Wiadomość Data
Yong Zhao c14a254f2e kfdtest: Add CreateDestroyCpQueue and CreateDestroySdmaQueue test
Those two tests cover the basic queue creation and destruction
without submitting packets to CP and SDMA user queues. During bringup,
they bring values in term of untangling the issues arising in queue
creation and packet execution, which are two very different kinds.

Because of those two tests, we also rename some existing tests as
follows:
CreateCpQueue             ->   SubmitPacketCpQueue
CreateSdmaQueue           ->   SubmitPacketSdmaQueue
CreateMultipleCpQueues    ->   MultipleCpQueues
CreateMultipleSdmaQueues  ->   MultipleSdmaQueues

Lastly, move MultipleCpQueues test closer to the CP queue section
rather than leaving it behind the SDMA queue section.

Change-Id: I110fb3f3fb21878339045dd1d1c8c9d61b8988b7
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>


[ROCm/ROCR-Runtime commit: 5b18614eaf]
2019-04-23 15:08:17 -04:00
Kent Russell 56bbd862e6 Fix test if Render Node can't be found
If a Render Node can't be found, we should finish off all child
processes immediately, then return.

Trying to do the check before forking the children results in the test
failing as well, regardless of the status of finding the render node,
which is likely why the forking occurred first in the test's initial
creation. This way we ensure that things finish cleanly before moving to
the next test


Change-Id: I2e1b62fed25c30ff1f179612127c23960da4ee5e


[ROCm/ROCR-Runtime commit: e109ce541c]
2019-04-23 07:14:35 -04:00
Alex Voicu 87d0f4246b Macros are devious, wrap argument to prevent surprises.
Change-Id: Ib99e7d2ec1e7a2802f4ae7946ba1fa92c9940a85


[ROCm/ROCR-Runtime commit: ee9831779c]
2019-04-19 07:06:28 -04:00
Alex Voicu 605a038c57 Fix Clang build
Change-Id: I0b51699c0a1368cf5813bd9d3cd4479139d23d6a


[ROCm/ROCR-Runtime commit: fdadae6745]
2019-04-19 07:06:28 -04:00
Andreas Schneider f3838c57bc cmake: Do not mess with CMAKE flags
Specifically, don't mess with CMAKE_SHARED_LINKER_FLAGS or
CMAKE_C_FLAGS

Change-Id: I73e287df5b80d440079c6b3abe8c401d492d11dd


[ROCm/ROCR-Runtime commit: 0045974858]
2019-04-19 07:06:28 -04:00
Andreas Schneider d698471b8a cmake: Do not strip targets in the release build
Distributions want to generate debuginfo packages, do not strip them! If
you want to do it during installation use 'make install/strip'!

Change-Id: I3983af24ce4f4ddb189ede0ed0820dfee83b6280


[ROCm/ROCR-Runtime commit: 8ccfa4c75c]
2019-04-19 07:06:28 -04:00
Sean Keely bdf4b84f82 Don't create blits when copy profiling is enabled.
Change-Id: I879827133957ee610c3381ea30c536ec7d10ffab


[ROCm/ROCR-Runtime commit: 1251842900]
2019-04-18 20:00:02 -05:00
Jay Cornwall 2c3c92208d Detect memory event through Flags field insetad of Failure
KFD no longer reports MemoryAccessFault.Failure with retry fault
implementation. ROCr ignores the memory event when Failure = 0.

Use the Flags field instead, which will be non-zero when the
event is triggered.

Change-Id: Ie90799a303b0b2f1b476b20ffafdde79ae137182


[ROCm/ROCR-Runtime commit: 56f280c8a7]
2019-04-15 19:16:07 -05:00
Ramesh Errabolu fd05ee66a7 Remove instantiation of MemoryRegion for heap type SVM surfaced by ROCt
Change-Id: Ib4ff7e7cabe9aacb811888aeb74f652dcb57f9e0


[ROCm/ROCR-Runtime commit: ba029ebe21]
2019-04-10 18:33:07 -05:00
Andreas Schneider 4006e1f112 cmake: Create cmake config file
Another cmake project like hsa-runtime could just use:

find_package(hsakmt REQUIRED 1.9.0)

Change-Id: Ia1c9a80ef287facdd607382d69649b0718d687b4


[ROCm/ROCR-Runtime commit: b8a1331763]
2019-04-03 08:36:09 -04:00
Konstantin Zhuravlyov dde11e307d Process symbols with 0 address
Change-Id: I9ed943a8ccd3b103edd6aba8264c009d8cda29fa


[ROCm/ROCR-Runtime commit: 7001134757]
2019-03-30 02:14:43 -04:00
Sean Keely 59e91f0be8 Add hsa_amd_memory_lock_to_pool.
Makes malloc memory accessible to GPUs so that the memory has the
capabilities of the pool it is locked to.
This admits fine grained locked memory and reserves API space for any future
special CPU pools.

Change-Id: If8c3dd8582a43f19d3d36b3763c1a688cc419ef0


[ROCm/ROCR-Runtime commit: a535e18cc1]
2019-03-29 01:09:21 -05:00
Sean Keely f819304f49 Remove legacy memory fault event name.
Change-Id: I3ad240482523409e1152548009aecf127e63bbfa


[ROCm/ROCR-Runtime commit: 9f7df6d6fe]
2019-03-28 15:25:25 -05:00
Sean Keely 6121ae4f6b Fix void* arithmetic.
GCC allows arithmetic on void* treating void as char.  Clang and
the language spec does not.

Change-Id: I939f2432f276979bb81881406e10528597ac6001


[ROCm/ROCR-Runtime commit: e5de33dd9a]
2019-03-28 12:49:19 -05:00
Sean Keely cdd2c26ac4 Disable sram-ecc reporting via ISA until HCC is fixed.
Change-Id: I0382825884b727173385f04da9f2088650c3ba1d


[ROCm/ROCR-Runtime commit: 7ea0cd688f]
2019-03-21 17:46:56 -04:00
Chris Freehill 30f23c3ff4 Re-enable RSMI call using updated API prototype
Change-Id: Ifc8fa35708fea05cbc8a9bea727a6d4c9d2ecea7


[ROCm/ROCR-Runtime commit: 68c202de1f]
2019-03-18 23:18:42 -05:00
Chris Freehill 79ad9eebf6 Temporary disable of rsmi call due to api change
Change-Id: If73f31c5fbe4bcd34f8e52a5109a6fbfff70b5e1


[ROCm/ROCR-Runtime commit: 7b3537cf44]
2019-03-16 21:05:47 -05:00
Sean Keely 906c36278a Do not strip release builds.
Customer request.

Change-Id: Id77dcdc0b6908c7a5e460edfd7d9468a1691e351


[ROCm/ROCR-Runtime commit: fd9fb77e28]
2019-03-07 14:04:14 -06:00
Tom Stellard 540fa908f6 Separate build version from library version
This patch separates the build version (i.e. ROCm version) from the
library version used to set the SONAME of the shared objects.  This
prevents the SONAME from getting bumped each time there is a new ROCm
release without any change to the libhsakmt ABI.

1.0.6 was choosen as the library version since this was the
last library version used prior to switching to the ROCm version
numbers.

Change-Id: I7c29ae84d8a362a831e804569d8147ca65155cad


[ROCm/ROCR-Runtime commit: 006c2c248d]
2019-02-28 21:32:45 -08:00
Eric Huang cec44d33c9 kfdtest: fix and change in RAS test
1. RAS error injection debugfs interface has been changed which
is using ras_ctrl instead of *_err_inject.

2. Remove ASSERT_SUCCESS for fwrite, because fwrite returns
the size of written item but not the error number.

3. Using throw exception instead of return to avoid a segment fault.

Change-Id: I6c4d9c2f7e66719faec99abd1552105a08c238a4
Signed-off-by: Eric Huang <JinhuiEric.Huang@amd.com>


[ROCm/ROCR-Runtime commit: e5b215570b]
2019-03-29 11:00:01 -04:00
Eric Huang 6e93266f63 libhsakmt: update kfd_ioctl.h regarding RAS interface
It is aligned with RAS changes in KFD.

Change-Id: I52816da01a4001158a40a1207d1fbe6ec3271343
Signed-off-by: Eric Huang <JinhuiEric.Huang@amd.com>


[ROCm/ROCR-Runtime commit: d6cde5bf08]
2019-03-28 21:38:44 -04:00
Sean Keely 80ffb43205 Add hsaKmtRegisterMemoryWithFlags.
API follows hsaKmtRegisterMemory but allows passing HsaMemFlags.

Change-Id: I66a230a87c8b085f27c769bdf2cb4d0d96a5d6dd


[ROCm/ROCR-Runtime commit: c7f1277013]
2019-03-28 17:17:40 -04:00
Kent Russell 5de58e1ab2 libhsakmt: Add Vega M support
While this may not be supported in the runtime, the kernel/firmware
support it

Change-Id: I7fe4536a6b3055f39e25f453060e899938645d91
Signed-off-by: Kent Russell <kent.russell@amd.com>


[ROCm/ROCR-Runtime commit: 1304a92e17]
2019-03-21 08:05:47 -04:00
Kent Russell 14676959fb libhsakmt: Add another gfx902 GPU ID
Change-Id: I967f16bf548171df73d2e721f16c1aac52e99852
Signed-off-by: Kent Russell <kent.russell@amd.com>


[ROCm/ROCR-Runtime commit: c7439a0039]
2019-03-21 08:05:47 -04:00
Philip Yang c140f95b1b Revert "kfdtest.exclude: Temporarily blacklist IPC on gfx900"
This reverts commit a349805264.

Fixes for HMM change corner cases are merged in from drm-next.
Tests are passed on gfx900 with the latest amd-kfd-staging.

Change-Id: I6c00d1eacf6b3f1ce715e085ae622b4e9ff1b7ff
Signed-off-by: Philip Yang <Philip.Yang@amd.com>


[ROCm/ROCR-Runtime commit: 0bd9f35563]
2019-03-18 10:10:00 -04:00
Amber Lin bc0bc878f4 libhsakmt: Fix missing apicid in topology
While adding x2APIC support, apicid for non-x2apic was missing out by
mistake.



Change-Id: I25eed362c035c0e9fb9ea948899c49f70311f269
Signed-off-by: Amber Lin <Amber.Lin@amd.com>


[ROCm/ROCR-Runtime commit: cfa47ac1f9]
2019-03-11 13:05:37 -04:00
Oak Zeng 1efba15c34 Introduce XGMI SDMA queue type
Change-Id: I8c6ff04f92c2bbea0bab94ddb8cc4cceb5d74d02
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>


[ROCm/ROCR-Runtime commit: 1046a1fd72]
2019-03-07 19:42:20 -05:00
Oak Zeng f77c754281 Thunk interface to get SDMA engine info
Add SDMA engine info fields to node properties and
modify get node properties API to read SDMA engine
info from sysfs

Change-Id: Iea877b5bc008cc9df9405daf564a359535f1bc9f
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>


[ROCm/ROCR-Runtime commit: 414a3508d6]
2019-03-07 14:09:43 -05:00
Oak Zeng a75addec83 Use latest kfd_ioctl.h
A new SDMA queue type for XGMI was added

Change-Id: Iad065c1a7c053a58e0d86becfb374215e316a611
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>


[ROCm/ROCR-Runtime commit: e4109de26d]
2019-03-07 13:25:33 -05:00
Amber Lin ee54c2ec5a libhsakmt: Support x2APIC in topology
Current processor/cache topology code implements xAPIC architecture, which
is 8 bits addressability. This is not enough for a system having more than
255 processors. x2APIC is the extension of xAPIC architecture to support
32 bit addressability of processors. This patch detects the x2APIC
enablement and uses the extension leaf to get apicid when detected.

Change-Id: I0826585d02f696a46cd5efb9a6630c60af01e2d8
Signed-off-by: Amber Lin <Amber.Lin@amd.com>


[ROCm/ROCR-Runtime commit: f8028a40fd]
2019-03-01 16:42:30 -05:00
Kent Russell a349805264 kfdtest.exclude: Temporarily blacklist IPC on gfx900
Due to the recent HMM changes, the KFDIPCTest can intermittently fail,
combined with CrossMemoryAttach consistently failing. Remove it for now
while Philip Yang investigates

Change-Id: Icf272100bb7882eff4202ad6f4ced63b569f4e7d


[ROCm/ROCR-Runtime commit: d00ec779ce]
2019-02-28 07:29:47 -05:00
Sean Keely 953355e0f7 Report SRAM ECC errors through the system event handler.
Modify the system event handler to support multiple users.
Name memory fault reason codes.

Change-Id: I1b5979b36ab15637eb2be59a61e2d57e76d0a70e


[ROCm/ROCR-Runtime commit: 67376e06ab]
2019-02-27 18:08:07 -05:00
Kent Russell 16d110f9c1 Temporarily remove CMATest from gfx900
Per Philip Yang:
For forked child process, userptr allocated on heap (through malloc)
will have two vmas if child process malloc smaller size buf, free it,
this is on vma cloned from parent process. Then malloc larger size buf,
kernel will put some pages on previous freed space from vma cloned,
create new vma for the rest of pages. This is what IPCTest does.

Change-Id: I054771e20880f975d7cc774225f19aad5363843f


[ROCm/ROCR-Runtime commit: a0b8dd8462]
2019-02-27 07:05:42 -05:00
Sean Keely 8b90c223ac Loader support for SRAM ECC.
Change-Id: I0c6791c356d9186cc8dabae9fd698b1d4de19b09


[ROCm/ROCR-Runtime commit: 3c3db0243e]
2019-02-25 18:30:05 -05:00
Yong Zhao c326949ac7 kfdtest: Add a result check in CreateCpQueue test
With the orginal code, CreateCpQueue will report failure if
WaitOnValue return false. Add EXPECT_TRUE() so that in that case
the failure is reported.

Change-Id: I043d013958b452d7ccb9538dc296d99d024abf01
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>


[ROCm/ROCR-Runtime commit: 1d478f3cf2]
2019-02-21 17:42:45 -05:00
Sean Keely f7dbaf103b Add fine grain vram pool.
Part 1 of 2.
Enables fine grain vram over PCIe based on env flag.
Part 2 will extend to XGMI.

Change-Id: I8ad506e004b398d56d462b0200274eae2293a461


[ROCm/ROCR-Runtime commit: c56d86100b]
2019-02-21 13:08:11 -05:00
Sean Keely c66675d192 Suppress exception reporting for well defined invalid signal handles.
hsa_exceptions with empty what() strings will not report in debug builds.

Change-Id: I0d424d3b1d3044808ece1720a460a57d68bf878e


[ROCm/ROCR-Runtime commit: 344d964f9f]
2019-02-15 19:35:57 -05:00
Eric Huang 658a1d8f41 kfdtest: add RAS tests
They are disabled for now.

Change-Id: I9c936130cbaf8c773f4b8e94bccf4af1f45eda65
Signed-off-by: Eric Huang <JinhuiEric.Huang@amd.com>


[ROCm/ROCR-Runtime commit: 7349276860]
2019-02-15 15:03:32 -05:00
Philip Cox 9c9641cc47 kfdtest: Blacklist BasicDebuggerSuspendResume
We need to black list this testcase temporarily because
it is failing intermittently.  The failure tends to only happen
when the certain build machine is used to build it.

This issue is being tracked by Jira ticket:
    ROCMOPS-389

Change-Id: Ic4682c9da389ed731cbc034dff57e6646bba0e9d
Signed-off-by: Philip Cox <Philip.Cox@amd.com>


[ROCm/ROCR-Runtime commit: 90a3697e1d]
2019-02-13 10:45:20 -05:00
Philip Cox c60888f043 kfdtest: Initial basic dbg suspend/resume testcase
A basic sanity test that tests the codepath for
the debugger suspend and resume code path.

Change-Id: If4c64f7bd6a1ef45068a33965b829725a78ce492
Signed-off-by: Philip Cox <Philip.Cox@amd.com>


[ROCm/ROCR-Runtime commit: ac6f089f26]
2019-02-08 11:28:33 -05:00
Sean Keely 3183fea597 Remove stop using ROCm release tags for library version numbers.
Version is now a fixed string that matches previous internal builds.
This also matches released DEB/RPM builds (but not github versions).

Change-Id: Id4819b9de8c855250aadf1a1cebb187b5c031721


[ROCm/ROCR-Runtime commit: 400304aa10]
2019-02-06 19:22:53 -05:00
Ramesh Errabolu 30363b9dbb Allows users, via env ROCR_VISIBLE_DEVICES, to surface a subset of Gpu devices
Change-Id: I5662639d5d70f054831969669f9d30dec356dd5a

Update per review comments

Change-Id: I18c7d7cb00b261493b61c2cf5454d486166f40d8


[ROCm/ROCR-Runtime commit: 3fbf03af76]
2019-02-06 02:02:29 -06:00
Chris Freehill 4661538a0a Fix boolean semantic error
Change-Id: Ic927370d5874af3f33105fca6ee0b581ebc6fa08


[ROCm/ROCR-Runtime commit: 014945310a]
2019-01-31 14:03:48 -06:00
Yong Zhao 6394a52ab4 libhsakmt: Use a better name doorbell_mmap_offset
The previous name doorbell_offset is used too extensively throughout
the code and did not reflect the true usage.

Change-Id: I50d33f5c00e82c46cdf4264a78b8f925705bed6a
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>


[ROCm/ROCR-Runtime commit: 776077fe65]
2019-01-31 14:50:04 -05:00
Yong Zhao 24f85f70de kfdtest: Use SDMA queue info from class KFDBaseComponentTest
Change-Id: Iacdb75006ef5f9ce6c4fbb0525d2c3a8535fdd23
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>


[ROCm/ROCR-Runtime commit: 7cd7830182]
2019-01-31 14:00:57 -05:00
Yong Zhao 112269ed7f kfdtest: Include SDMA queue info in class KFDBaseComponentTest
This will facilitate us to avoid using family ID to differentiate the
SDMA engines and SDMA queues.

Change-Id: I8d6203cc5d330e9130a1b2624997c86ba53e8ae4
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>


[ROCm/ROCR-Runtime commit: 6857602cbc]
2019-01-31 14:00:57 -05:00
Chris Freehill 8f1a9494cd Fix async memory test; temporarily disable NUMA memory test
Change-Id: I1c0618f5dba513c1cf8fafb5fc64e5c811df8454


[ROCm/ROCR-Runtime commit: 626f13a88b]
2019-01-31 09:14:54 -05:00
Yong Zhao 39ef88d37f libhsakmt: Introduce HSA_ZFB environment variable
This variable is 0 by default. When set to 1, it means there is no frame
buffer, so all memory allocation is routed to system memory. This mode
is mainly used during emulation.

Use CoarseGrain for VRAM under ZFB mode

Change-Id: I29e8e98be56935e3ceb94782d70771cc45700749
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>


[ROCm/ROCR-Runtime commit: 51ee5c324a]
2019-01-29 19:46:26 -05:00
xinhui pan 83a8534e4b thunk: fix size overflow
Some test case alloc >4gb memory.
Use HSAuint64 in bytes and HSAuint32 in pages.

Change-Id: I0d5e6c299903b5898cfea024178a7a26b9ba3c90
Signed-off-by: xinhui pan <xinhui.pan@amd.com>


[ROCm/ROCR-Runtime commit: 41bf449e99]
2019-01-28 10:49:45 -05:00
Sean Keely f39ed0dc23 Unify APU and dGPU initial queue scratch allocation.
Both support dynamic scratch allocation so there is no reason
to preemptively allocate on APUs.

Change-Id: I22eaec01a83a091ee9dc1f594a1a9106e8dd81fc


[ROCm/ROCR-Runtime commit: 65d39cc476]
2019-01-25 02:11:39 -05:00