Fix legacy mode detection of the address of an agent allocated variable. In this mode, there exist two executables per each code object, one created by HCC and one created by HIP. Since we dispatch through HCC in legacy mode, we should obtain the address for an agent allocated variable from the latter's executable. Also add two omitted validity checks, whose absence could lead to segfaults when the current process had no .kernel section and / or when an invalid or empty blob was extracted from the latter.

Bu işleme şunda yer alıyor:
Alex Voicu
2017-11-30 03:29:04 +00:00
ebeveyn 20fc68c9a1
işleme 7c0b9a005b
3 değiştirilmiş dosya ile 31 ekleme ve 17 silme
+2
Dosyayı Görüntüle
@@ -76,6 +76,8 @@ namespace hip_impl
RandomAccessIterator l,
Bundled_code_header& x)
{
if (f == l) return false;
std::copy_n(f, sizeof(x.cbuf_), x.cbuf_);
if (valid(x)) {