libfabric: don't use __thread
There's no real reason that this routine should use thread local storage. Plus, __thread appears to be a GCC extension.
Этот коммит содержится в:
родитель
9ee8e1dcf4
Коммит
0f28233b35
@ -437,7 +437,7 @@ static void fi_tostr_av_type(char *buf, enum fi_av_type type)
|
|||||||
__attribute__((visibility ("default")))
|
__attribute__((visibility ("default")))
|
||||||
char *fi_tostr_(const void *data, enum fi_type datatype)
|
char *fi_tostr_(const void *data, enum fi_type datatype)
|
||||||
{
|
{
|
||||||
static __thread char *buf;
|
char *buf;
|
||||||
uint64_t val64 = *(const uint64_t *) data;
|
uint64_t val64 = *(const uint64_t *) data;
|
||||||
uint32_t val32 = *(const uint32_t *) data;
|
uint32_t val32 = *(const uint32_t *) data;
|
||||||
int enumval = *(const int *) data;
|
int enumval = *(const int *) data;
|
||||||
@ -445,13 +445,9 @@ char *fi_tostr_(const void *data, enum fi_type datatype)
|
|||||||
if (!data)
|
if (!data)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
if (!buf) {
|
buf = calloc(4096, sizeof (*buf));
|
||||||
buf = calloc(4096, sizeof (*buf));
|
if (!buf)
|
||||||
if (!buf)
|
return NULL;
|
||||||
return NULL;
|
|
||||||
} else {
|
|
||||||
buf[0] = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (datatype) {
|
switch (datatype) {
|
||||||
case FI_TYPE_INFO:
|
case FI_TYPE_INFO:
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user