Граф коммитов

70 Коммитов

Автор SHA1 Сообщение Дата
Kent Russell eb7a1eea27 CMakeLists: Combine binary and devel packages
Consolidate all thunk components into a single development package
Also declare build dependencies via find_package/library and report the
location of said dependencies during build time

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


[ROCm/ROCR-Runtime commit: 79d00a35f9]
2021-08-26 14:38:10 -04:00
Kent Russell f1404ea392 CMakeLists: Re-enable pkgconfig, require libdrm
This was an implicit requirement, but the change to needing libdrm/drm.h
means we should be explicitly looking for this package during the build

Change-Id: I75064bf6f5477cb1ca99318681afca76c0060f72


[ROCm/ROCR-Runtime commit: 6778da4460]
2021-07-30 18:20:12 -04:00
Icarus Sparry e97ebfd200 Add dependency on rocm-core
Signed-off-by: Icarus Sparry <icarus.sparry@amd.com>
Change-Id: I5f99114e9186679585862f05db8a508663b74b0d
Signed-off-by: Icarus Sparry <icarus.sparry@amd.com>


[ROCm/ROCR-Runtime commit: b63dde24d0]
2021-07-21 15:57:54 -04:00
Jonathan Kim de34fa23ed libhsakmt: add drm.h header dependency for sles
Update to thunk API introduced dependency on drm.h in commit
1001f27cb5 libhsakmt: update thunk api for exception handling
so update dependency list in SLES builds.

Signed-off-by: Jonathan Kim <jonathan.kim@amd.com>
Change-Id: I6d987fac07612e3eca7b6087205d76df50dc13d9


[ROCm/ROCR-Runtime commit: 303c0748ce]
2021-07-19 12:48:13 -04:00
Felix Kuehling 024781d8e8 libhsakmt: add SVM thunk implementation
Implement SVM (Shared Virtual Memory) in the thunk.

Change-Id: I0380150d1d3da48070f9389a06f416d6059d6948
Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Signed-off-by: Sean Keely <Sean.Keely@amd.com>
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Sierra <alex.sierra@amd.com>


[ROCm/ROCR-Runtime commit: dd72f236c1]
2021-04-16 00:10:25 -04:00
Kent Russell 3f3b280a4c CMakelists: Build thunk as static by default
This can be overwritten by changing BUILD_SHARED_LIBS=true, but we
default it to static to allow for merging into ROCr

Change-Id: Ic286ef7903a5bc788fe3b84bb13b15bdd3a6f60b


[ROCm/ROCR-Runtime commit: d748d6dce7]
2021-04-08 14:38:20 -04:00
Roberto Di Remigio 1e3e88e20f Treat link flags as a string, rather than a list
Fixes linking failure with gold

Change-Id: Ie9d2a7f68e71a0a793b041d57b8078ead22a93c8
Signed-off-by: Roberto Di Remigio <roberto.diremigio@gmail.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>


[ROCm/ROCR-Runtime commit: b6d613d284]
2021-04-05 13:18:33 -04:00
Cole Nelson ba4a8f6088 CMakeLists.txt: add ENABLE_LDCONFIG to support multi-version install
Depends-On: I58fdf1d0b4e864b5a61ffe8e335d430d424811ab
Change-Id: I8e3e873fde99eaec79651ce6c3581870e9c2112d
Signed-off-by: Cole Nelson <cole.nelson@amd.com>


[ROCm/ROCR-Runtime commit: a9ce8683eb]
2021-03-27 15:27:55 -07:00
Felix Kuehling 9216fb99b8 Revert "libhsakmt: add SVM thunk implementation"
This reverts commit a247255a6a.
SVM is not ready yet. This was merged by accident.

Change-Id: I372f7d293fd38429ec570bc0e0add7e612871594
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>


[ROCm/ROCR-Runtime commit: 4ebda913cd]
2021-03-10 22:33:34 -05:00
Kent Russell 3a90583c47 Merge gfx90a into amd-staging
Conflicts:
	CMakeLists.txt
	include/hsakmt.h
	src/libhsakmt.h
	src/libhsakmt.ver
	src/queues.c
	src/topology.c
	tests/kfdtest/src/KFDMemoryTest.cpp
	tests/kfdtest/src/KFDTestUtil.hpp

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


[ROCm/ROCR-Runtime commit: 83d80074f7]
2021-03-02 07:48:22 -05:00
Alex Sierra a247255a6a libhsakmt: add SVM thunk implementation
Implement SVM (Shared Virtual Memory) in the thunk.

Change-Id: I0380150d1d3da48070f9389a06f416d6059d6948
Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Signed-off-by: Sean Keely <Sean.Keely@amd.com>
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Sierra <alex.sierra@amd.com>


[ROCm/ROCR-Runtime commit: 75e8fe383f]
2021-02-23 12:20:29 -05:00
Kent Russell 55746a770b Remove extra brace, use libsan vs libasan
Change-Id: I82e0d4fc8ea7dc292def7485bcf53c3849442c47


[ROCm/ROCR-Runtime commit: bb7e7df02a]
2021-01-14 07:51:23 -05:00
Kent Russell 3c4e0e0c0d Merge address sanitizer branch into amd-staging
Merge in topic branch to enable address sanitizer and CLANG compilation
support into amd-staging branch

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


[ROCm/ROCR-Runtime commit: c742764d01]
2021-01-06 11:50:54 -05:00
Kent Russell 3011f47324 CMakeLists.txt: Use %{dist} in RPM naming
The %{dist} suffix is part of the package name due to
CPACK_RPM_PACKAGE_RELEASE_DIST, but the string provided to the
"REQUIRES" field lacks it. Add it in here so the devel package can
reference the thunk package correctly. Use a nice function suggested by
Cole since CPACK_RPM_PACKAGE_RELEASE_DIST has caused some infra issues
in the past

This works for packages build in both Ubuntu and CentOS
Also fix a mistake in the naming for DEBIAN packages, which should be a
no-op since both the DEBIAN and RPM PACKAGE_RELEASE variables are the
same right now

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


[ROCm/ROCR-Runtime commit: 1290d4d56c]
2021-01-06 08:06:49 -05:00
Kent Russell 3b67730e18 libhsakmt: Explicitly set shared/static sanitizer flags
Don't rely on default values for static/shared sanitizer flags, set them
explicitly based on whether BUILD_SHARED_LIBS is defined or not

Change-Id: Ifbfe95269d1cf184237643176a033a3ce98b62f9


[ROCm/ROCR-Runtime commit: 3c8273c57b]
2020-12-24 10:32:01 -08:00
Kent Russell 17a83e8e69 Remove address-sanitizer debug messages
Change-Id: I08509aaed36459329f0a65264e42f287c27f4a18


[ROCm/ROCR-Runtime commit: f6f47aa43d]
2020-12-24 10:32:01 -08:00
Kent Russell 0682ddc56a Set -no-undefined properly if it's CC
Address-sanitizer doesn't like it at all. And it's called differently
under clang than gcc, so adjust accordingly

Change-Id: Iebe8cd68618d3f7a4c310419c64b4f73d7ecfda4


[ROCm/ROCR-Runtime commit: 8e0a9aa417]
2020-12-24 10:32:01 -08:00
Kent Russell 5b7549331f CMakeLists: Address-sanitizer fix and cleanup
Move all the logic into 1 spot, and make sure -fsanitize=address is also
passed to the library flags

Change-Id: I7b60629d32df6436b5c7ad37997fe14ea48f5d72


[ROCm/ROCR-Runtime commit: 3d9f60d7fe]
2020-12-24 10:32:01 -08:00
Gefei Jiang 4b5fa5bb42 CMakeLists.txt: Address Sanitizer Support
1. add sanitize flag to link flags
  2. use ${ADDRESS_SANITIZER} as a condition to turn on/off
     instead of (DEFINED ADDRESS_SANITIZER).
     The latter will always turn the feature on regardless of
     the value as long as there is "-DADDRESS_SANITIZER in
     cmake command line,which will be an issue when merging to
     the mainline
Amended: put -fsanitize=address at the begining in link flags

Change-Id: I84df0e5b6d7fb8f02f18bf7961f25f15cac10443
Signed-off-by: Gefei Jiang <gefei.jiang@amd.com>


[ROCm/ROCR-Runtime commit: d3bc75d229]
2020-12-24 10:32:01 -08:00
Gefei Jiang e93ba06265 CMakeLists.txt: Address Sanitize Support
ROCMOPS-1249
	correct if statement and -f flag name

Change-Id: I92e9aa30b1c81f855ad269c0c686ec1e136a85fd
Signed-off-by: Gefei Jiang <gefei.jiang@amd.com>


[ROCm/ROCR-Runtime commit: b92d28bd71]
2020-12-24 10:32:01 -08:00
Gefei Jiang 8d6f41350a CMakeList.txt -- Support Address Sanitize
ROCMOPS-1249
	append address sanitize flag

Change-Id: Ie5d1e5b8b93022b80e0ca74106a16d53d52e41af
Signed-off-by: Gefei Jiang <gefei.jiang@amd.com>


[ROCm/ROCR-Runtime commit: f0e6e7ae17]
2020-12-24 10:32:01 -08:00
Aakash Sudhanwa 0e2e1aca74 Revert "CMakeLists: Fix RPM dependency declaration"
This reverts commit 4aae34276b.

Reason for revert: <INSERT REASONING HERE>

Change-Id: Ieaf2da0067c3e89577569c5d478c70b97ca5f5ca


[ROCm/ROCR-Runtime commit: ac6e96e7a3]
2020-11-17 20:10:45 -05:00
Kent Russell 4aae34276b CMakeLists: Fix RPM dependency declaration
RPM needs _REQUIRES at the end, not _DEPENDS, and also requires a space
before the version of the required package.

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


[ROCm/ROCR-Runtime commit: 089fdeb1fe]
2020-11-17 12:36:05 -05:00
Gang Ba 0ddd455ead libhsakmt: add Streaming Performance Monitors APIs
Signed-off-by: Gang Ba <gaba@amd.com>
Change-Id: Iab9a98fa2079b7cae7158c524479dfc3fa672407


[ROCm/ROCR-Runtime commit: e8c0426c54]
2020-11-16 16:36:21 -05:00
Ashutosh Mishra 5026ed2f8a Standardizing Package names
: Enables standards compliant package naming for debian and rpm

Signed-off-by: Ashutosh Mishra <ashutosh.mishra@amd.com>
Change-Id: I177af15ec7a3f909d05135be30a0acc7b0b20745


[ROCm/ROCR-Runtime commit: aefc173da4]
2020-11-11 00:37:20 -05:00
Kent Russell 3262952918 Fix lintian errors in deb packages
Add extended descriptions and e-mail address to CMakeLists
A lintian error will remain regarding stripping the .so, as we
will not be doing this for Release versions of the hsakmt .so

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


[ROCm/ROCR-Runtime commit: 0a4b23d625]
2020-09-09 11:28:18 -04:00
Cole Nelson 86b8707391 libhsakmt: set packaging arch, field separators, vendor info
Change-Id: Ia1392285f5ee0beeaae136ad7d68e1723bc590ba
Signed-off-by: Cole Nelson <cole.nelson@amd.com>


[ROCm/ROCR-Runtime commit: 141246eeeb]
2020-06-30 07:38:14 -04:00
Gang Ba 04e57413f4 Revert "libhsakmt: add Streaming Performance Monitors APIs"
This reverts commit c0a0ada18b.

Reason for revert: Change was submitted by accident

Change-Id: If05c705e22296fd3ca789f269737d379a933361d
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>


[ROCm/ROCR-Runtime commit: fec3780c1a]
2020-06-29 10:54:54 -04:00
Vlad Sytchenko 7bdf69c167 Correctly set CMAKE_MODULE_PATH
Since CMAKE_MODULE_PATH can already be set by another project,
we should just append the libhsamkt cmake module directory to it.

Change-Id: I999dc52a2862e4bbff02e0a8e8b39530f4dae2cd
Signed-off-by: Vlad Sytchenko <vladislav.sytchenko@amd.com>


[ROCm/ROCR-Runtime commit: 5fb771a195]
2020-06-24 15:47:06 -04:00
Sean Keely c84d389aa2 Add warning about incorrect package names when using CMake 3.5
Signed-off-by: Sean Keely <Sean.Keely@amd.com>
Change-Id: Ie35b287224ec6b963bc317baf60853fbe223fc17


[ROCm/ROCR-Runtime commit: f101875de8]
2020-06-19 20:12:16 -05:00
Sean Keely 7f35aa9739 Add optional support for the cmake per user package registry.
Default is OFF to conform to latest cmake standard (3.15) and
because this feature can cause some confusion for unaware developers.

Change-Id: I6fdbd5ab76c90b73ac6451a383334a83cabef438
Signed-off-by: Sean Keely <Sean.Keely@amd.com>


[ROCm/ROCR-Runtime commit: f0b0555996]
2020-06-11 14:25:57 -05:00
Sean Keely 676e600040 Update to conform with modern cmake best practices.
Immediate benefit is that this enables cmake native find_package
support including transitive passthrough of link dependencies,
options, and include paths.

It does require a bump to cmake 3.6 to enable proper package file
names.

Change-Id: I3f4e2f2db745c04a7f686111b080098a0d92fbf5
Signed-off-by: Sean Keely <Sean.Keely@amd.com>


[ROCm/ROCR-Runtime commit: 06add334b9]
2020-06-11 14:25:41 -05:00
Gang Ba c0a0ada18b libhsakmt: add Streaming Performance Monitors APIs
Signed-off-by: Gang Ba <gaba@amd.com>
Change-Id: I5c23a8dacf9bc50c740908aabe391432f2c7112e
Signed-off-by: Gang Ba <gaba@amd.com>


[ROCm/ROCR-Runtime commit: d675d1cce1]
2020-05-29 09:34:31 -04:00
Kent Russell 606037de2f Make thunk lib type be defined by cmake
Make the hsakmt library take the value from CMake regarding
static/shared
KFDTest automatically grabs the right one due to it checking the normal
shared folders. Tested locally (and via automation by the time that this
is merged)
Also set the default to building SOs if BUILD_SHARED_LIBS is not defined

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


[ROCm/ROCR-Runtime commit: ddd38deab7]
2020-04-27 13:52:42 -04:00
Jon Chesterfield ffadc0c8c6 Replace libpci with new parser.
libpci was only used to find a marketing string for a device.
This patch looks for a pci.ids on disk and parses it to extract the
same string, using 'Device xxxx' as the fallback on file i/o error
or missing data from the text file. Tested by checking every vendor/
device pair against the values returned from libpci.

Change-Id: I21af3157472c1824d57fcee31393c6ee8ce07330
Signed-off-by: Jon Chesterfield <Jonathan.Chesterfield@amd.com>


[ROCm/ROCR-Runtime commit: 0a1718b753]
2020-03-20 17:50:47 +00:00
Jeffrey Poznanovic c90e8c1389 Added CentOS-6 mods to support manylinux2010
Change-Id: I8c303ccfdc7d314d1b4609ed6181d46795ada621


[ROCm/ROCR-Runtime commit: 5dcd49f726]
2020-03-20 08:47:25 -04:00
Srinivasan Subramanian e003ef836a Use runpath instead of rpath for libraries
enable-new-dtags option is added

Change-Id: I1f406b3f30ddc6491aad3ef7a84dfd415917b1aa
Signed-off-by: Freddy Paul <Freddy.paul@amd.com>


[ROCm/ROCR-Runtime commit: 5c2fc61d95]
2020-01-09 18:05:57 -05:00
Pruthvi Madugundu 19c6d8094f support installtion of multiple ROCM version
Changes to resolve
1) Multiple rocm release installation support
2) Multiple rocm shared lib conflicts

Change-Id: I792feb36cdf4516d108f1ef71abe0c87522f018a
Signed-off-by: Pruthvi Madugundu <pruthvi.madugundu@amd.com>
Signed-off-by: Freddy Paul <Freddy.paul@amd.com>


[ROCm/ROCR-Runtime commit: 3f8a07e460]
2020-01-09 18:05:24 -05:00
Kent Russell c463d39ddc Set package name explicitly
Instead of letting CPack generate the filename according to
CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_SYSTEM_NAME},
set the package name ourselves. Also take the change to fix the name of
hsakmt-dev to hsakmt-devel for RPM, since that's their convention

Previous packaging format:
hsakmt-roct-1.0.9-229-g2144854-Linux.deb
hsakmt-roct-1.0.9-229-g2144854-Linux.rpm
hsakmt-roct-dev-1.0.9-229-g2144854-Linux.deb
hsakmt-roct-dev-1.0.9-229-g2144854-Linux.rpm

New format:
hsakmt-roct-1.0.9-292-gc66f8cf.x86_64.deb
hsakmt-roct-1.0.9-292-gc66f8cf.x86_64.rpm
hsakmt-roct-dev-1.0.9-292-gc66f8cf.x86_64.deb
hsakmt-roct-devel-1.0.9-292-gc66f8cf.x86_64.rpm

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


[ROCm/ROCR-Runtime commit: 57b42045d0]
2019-12-18 12:21:33 -05:00
Jeremy Newton e9dd9ef156 libhsakmt: default packaging prefix to install
If CPACK_PACKAGING_INSTALL_PREFIX is not set, it's safer to assume it's the
same as CMAKE_INSTALL_PREFIX, incase only the latter is set.

Change-Id: I70727ebbc50f21f8d6e3add10d7f9f2d5e747dee
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>


[ROCm/ROCR-Runtime commit: cb4d4107ed]
2019-10-25 15:40:03 -04:00
Craig Andrews 5e89b20d6d Install LICENSE.md to DOCDIR
LICENSE.md should be installed to the DOCDIR, not /usr/libhsakmt

Change-Id: I2020547b3174b9d91c1f800d9db2d73f627a6ce3
Signed-off-by: Craig Andrews <candrews@integralblue.com>
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>


[ROCm/ROCR-Runtime commit: 6c9a49076a]
2019-08-29 19:22:47 -04:00
Lad, Aditya 7b73909a5a Support for SLES on thunk
Made changes in the CMakeLists.txt
1) Detects the OS of the system
2) Accordingly setsup the runtime dependencies

Change-Id: Ief9a0217caae77d4be4850167e2a9b8387f639e4
Signed-off-by: Lad, Aditya <aditya.lad@amd.com>


[ROCm/ROCR-Runtime commit: cabebaa091]
2019-08-29 14:06:55 -04:00
Konstantin Zhuravlyov f53a7875a9 Allow ccache enabled builds if -DROCM_CCACHE_BUILD=ON
Change-Id: Ia80965feb6e4ff22d466f1ff3142fb2ef303f99c


[ROCm/ROCR-Runtime commit: 53e4eca485]
2019-07-31 16:39:27 -04:00
Felix Kuehling 1629c543db libhsakmt: Disable -Werror by default
This can cause build failures on unknown of future compiler versions.
Only enable it if explicitly enabled by an environment variable. This
allows us to continue building with -Werror in internal builds with
known compiler versions.

Change-Id: Ic1cd9d223218cc4e4cddba49df93bb357c1cbd40
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>


[ROCm/ROCR-Runtime commit: 8f10c9375d]
2019-05-07 16:06:51 -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
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
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
Kent Russell 0cf61d242b Add lib requirement in CMake file
Adding it to the DEBIAN/control won't work, since we use CMake to build
it. Add all required packages to the CMakeLists file

Change-Id: Iaf62f42e0f998d66038338fb2cf793d29c790205


[ROCm/ROCR-Runtime commit: 666f90440a]
2019-01-02 07:50:12 -05:00