import libfabric-1.11.2-1.el8
This commit is contained in:
parent
a139283819
commit
81110558de
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
|||||||
SOURCES/libfabric-1.10.0.tar.bz2
|
SOURCES/libfabric-1.11.2.tar.bz2
|
||||||
|
@ -1 +1 @@
|
|||||||
1352168973611327ee9f48ca89b682693a39f3fc SOURCES/libfabric-1.10.0.tar.bz2
|
b26b67cc9ce069d59db99fec64548a512250bb46 SOURCES/libfabric-1.11.2.tar.bz2
|
||||||
|
33
SOURCES/0001-util-shm-add-O_EXCL-flag-to-shm_open.patch
Normal file
33
SOURCES/0001-util-shm-add-O_EXCL-flag-to-shm_open.patch
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
From c862c1384215d5618b148487a84647dc2fcc912c Mon Sep 17 00:00:00 2001
|
||||||
|
From: aingerson <alexia.ingerson@intel.com>
|
||||||
|
Date: Thu, 17 Dec 2020 09:25:04 -0800
|
||||||
|
Subject: [PATCH 1/2] util/shm: add O_EXCL flag to shm_open
|
||||||
|
|
||||||
|
Adding the O_EXCL flag forces the shm_open call to fail
|
||||||
|
if the shared memory region already exists. This prevents
|
||||||
|
a segfault/miscommunication which can occur when two peers
|
||||||
|
try to open an endpoint/shared memory region with the same name.
|
||||||
|
|
||||||
|
Cherry picked from commit c403cc4f
|
||||||
|
|
||||||
|
Signed-off-by: aingerson <alexia.ingerson@intel.com>
|
||||||
|
---
|
||||||
|
prov/util/src/util_shm.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/prov/util/src/util_shm.c b/prov/util/src/util_shm.c
|
||||||
|
index 72301b62dbb6..760b19e15a73 100644
|
||||||
|
--- a/prov/util/src/util_shm.c
|
||||||
|
+++ b/prov/util/src/util_shm.c
|
||||||
|
@@ -151,7 +151,7 @@ int smr_create(const struct fi_provider *prov, struct smr_map *map,
|
||||||
|
&sar_pool_offset, &peer_data_offset,
|
||||||
|
&name_offset);
|
||||||
|
|
||||||
|
- fd = shm_open(attr->name, O_RDWR | O_CREAT, S_IRUSR | S_IWUSR);
|
||||||
|
+ fd = shm_open(attr->name, O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR);
|
||||||
|
if (fd < 0) {
|
||||||
|
FI_WARN(prov, FI_LOG_EP_CTRL, "shm_open error\n");
|
||||||
|
return -errno;
|
||||||
|
--
|
||||||
|
2.25.4
|
||||||
|
|
@ -0,0 +1,97 @@
|
|||||||
|
From 8c2f159809118c6054852d5086582a19be39a2b2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Honggang Li <honli@redhat.com>
|
||||||
|
Date: Fri, 18 Dec 2020 05:18:55 -0800
|
||||||
|
Subject: [PATCH 2/2] src/common.c: fix a stack-buffer-overflow issue
|
||||||
|
|
||||||
|
ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7fff4c61e7e0 at pc 0x14f2cb7ae0b9 bp 0x7fff4c61e650 sp 0x7fff4c61ddd8
|
||||||
|
WRITE of size 17 at 0x7fff4c61e7e0 thread T0
|
||||||
|
#0 0x14f2cb7ae0b8 (/lib64/libasan.so.5+0xb40b8)
|
||||||
|
#1 0x14f2cb7aedd2 in vsscanf (/lib64/libasan.so.5+0xb4dd2)
|
||||||
|
#2 0x14f2cb7aeede in __interceptor_sscanf (/lib64/libasan.so.5+0xb4ede)
|
||||||
|
#3 0x14f2cb230766 in ofi_addr_format src/common.c:401
|
||||||
|
#4 0x14f2cb233238 in ofi_str_toaddr src/common.c:780
|
||||||
|
#5 0x14f2cb314332 in vrb_handle_ib_ud_addr prov/verbs/src/verbs_info.c:1670
|
||||||
|
#6 0x14f2cb314332 in vrb_get_match_infos prov/verbs/src/verbs_info.c:1787
|
||||||
|
#7 0x14f2cb314332 in vrb_getinfo prov/verbs/src/verbs_info.c:1841
|
||||||
|
#8 0x14f2cb21fc28 in fi_getinfo_ src/fabric.c:1010
|
||||||
|
#9 0x14f2cb25fcc0 in ofi_get_core_info prov/util/src/util_attr.c:298
|
||||||
|
#10 0x14f2cb269b20 in ofix_getinfo prov/util/src/util_attr.c:321
|
||||||
|
#11 0x14f2cb3e29fd in rxd_getinfo prov/rxd/src/rxd_init.c:122
|
||||||
|
#12 0x14f2cb21fc28 in fi_getinfo_ src/fabric.c:1010
|
||||||
|
#13 0x407150 in ft_getinfo common/shared.c:794
|
||||||
|
#14 0x414917 in ft_init_fabric common/shared.c:1042
|
||||||
|
#15 0x402f40 in run functional/bw.c:155
|
||||||
|
#16 0x402f40 in main functional/bw.c:252
|
||||||
|
#17 0x14f2ca1b28e2 in __libc_start_main (/lib64/libc.so.6+0x238e2)
|
||||||
|
#18 0x401d1d in _start (/root/libfabric/fabtests/functional/fi_bw+0x401d1d)
|
||||||
|
|
||||||
|
Address 0x7fff4c61e7e0 is located in stack of thread T0 at offset 48 in frame
|
||||||
|
#0 0x14f2cb2306f3 in ofi_addr_format src/common.c:397
|
||||||
|
|
||||||
|
This frame has 1 object(s):
|
||||||
|
[32, 48) 'fmt' <== Memory access at offset 48 overflows this variable
|
||||||
|
HINT: this may be a false positive if your program uses some custom stack unwind mechanism or swapcontext
|
||||||
|
(longjmp and C++ exceptions *are* supported)
|
||||||
|
SUMMARY: AddressSanitizer: stack-buffer-overflow (/lib64/libasan.so.5+0xb40b8)
|
||||||
|
Shadow bytes around the buggy address:
|
||||||
|
0x1000698bbca0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||||
|
0x1000698bbcb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||||
|
0x1000698bbcc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||||
|
0x1000698bbcd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||||
|
0x1000698bbce0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||||
|
=>0x1000698bbcf0: 00 00 00 00 00 00 f1 f1 f1 f1 00 00[f2]f2 f3 f3
|
||||||
|
0x1000698bbd00: f3 f3 00 00 00 00 00 00 00 00 00 00 00 00 f1 f1
|
||||||
|
0x1000698bbd10: f1 f1 00 f2 f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2
|
||||||
|
0x1000698bbd20: f2 f2 00 f2 f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2
|
||||||
|
0x1000698bbd30: f2 f2 00 00 00 00 00 06 f2 f2 f2 f2 f2 f2 00 00
|
||||||
|
0x1000698bbd40: 00 00 00 06 f2 f2 f2 f2 f2 f2 00 00 00 00 00 00
|
||||||
|
Shadow byte legend (one shadow byte represents 8 application bytes):
|
||||||
|
Addressable: 00
|
||||||
|
Partially addressable: 01 02 03 04 05 06 07
|
||||||
|
Heap left redzone: fa
|
||||||
|
Freed heap region: fd
|
||||||
|
Stack left redzone: f1
|
||||||
|
Stack mid redzone: f2
|
||||||
|
Stack right redzone: f3
|
||||||
|
Stack after return: f5
|
||||||
|
Stack use after scope: f8
|
||||||
|
Global redzone: f9
|
||||||
|
Global init order: f6
|
||||||
|
Poisoned by user: f7
|
||||||
|
Container overflow: fc
|
||||||
|
Array cookie: ac
|
||||||
|
Intra object redzone: bb
|
||||||
|
ASan internal: fe
|
||||||
|
Left alloca redzone: ca
|
||||||
|
Right alloca redzone: cb
|
||||||
|
|
||||||
|
Fixes: 5d31276f7304 ("common: Redo address string conversions")
|
||||||
|
Signed-off-by: Honggang Li <honli@redhat.com>
|
||||||
|
---
|
||||||
|
src/common.c | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/common.c b/src/common.c
|
||||||
|
index 4c54dc2dec68..3964cf1f7b4b 100644
|
||||||
|
--- a/src/common.c
|
||||||
|
+++ b/src/common.c
|
||||||
|
@@ -395,14 +395,14 @@ sa_sin6:
|
||||||
|
|
||||||
|
uint32_t ofi_addr_format(const char *str)
|
||||||
|
{
|
||||||
|
- char fmt[16];
|
||||||
|
+ char fmt[17];
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
+ memset(fmt, 0, sizeof(fmt));
|
||||||
|
ret = sscanf(str, "%16[^:]://", fmt);
|
||||||
|
if (ret != 1)
|
||||||
|
return FI_FORMAT_UNSPEC;
|
||||||
|
|
||||||
|
- fmt[sizeof(fmt) - 1] = '\0';
|
||||||
|
if (!strcasecmp(fmt, "fi_sockaddr_in"))
|
||||||
|
return FI_SOCKADDR_IN;
|
||||||
|
else if (!strcasecmp(fmt, "fi_sockaddr_in6"))
|
||||||
|
--
|
||||||
|
2.25.4
|
||||||
|
|
@ -1,11 +1,13 @@
|
|||||||
Name: libfabric
|
Name: libfabric
|
||||||
Version: 1.10.0
|
Version: 1.11.2
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Open Fabric Interfaces
|
Summary: Open Fabric Interfaces
|
||||||
|
|
||||||
License: BSD or GPLv2
|
License: BSD or GPLv2
|
||||||
URL: http://ofiwg.github.io/libfabric/
|
URL: https://github.com/ofiwg/libfabric
|
||||||
Source0: https://github.com/ofiwg/libfabric/releases/download/v%{version}/libfabric-%{version}.tar.bz2
|
Source0: https://github.com/ofiwg/libfabric/releases/download/v%{version}/libfabric-%{version}.tar.bz2
|
||||||
|
Patch1: 0001-util-shm-add-O_EXCL-flag-to-shm_open.patch
|
||||||
|
Patch2: 0002-src-common.c-fix-a-stack-buffer-overflow-issue.patch
|
||||||
|
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
BuildRequires: libnl3-devel
|
BuildRequires: libnl3-devel
|
||||||
@ -47,6 +49,8 @@ developing applications that use %{name}.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch1 -p1
|
||||||
|
%patch2 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure --disable-static --disable-silent-rules
|
%configure --disable-static --disable-silent-rules
|
||||||
@ -84,6 +88,16 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';'
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Dec 22 2020 Honggang Li <honli@redhat.com> - 1.11.2-1
|
||||||
|
- Rebase to upstream release v1.11.2
|
||||||
|
- Fix "shm" segfault issue
|
||||||
|
- Resolves: bz1904291
|
||||||
|
|
||||||
|
* Tue Nov 17 2020 Honggang Li <honli@redhat.com> - 1.11.1-1
|
||||||
|
- Rebase to upstream release v1.11.1
|
||||||
|
- EFA Support requires libfabric
|
||||||
|
- Resolves: bz1831145, bz1852636
|
||||||
|
|
||||||
* Sat Apr 25 2020 Honggang Li <honli@redhat.com> - 1.10.0-1
|
* Sat Apr 25 2020 Honggang Li <honli@redhat.com> - 1.10.0-1
|
||||||
- Rebase to upstream release v1.10.0
|
- Rebase to upstream release v1.10.0
|
||||||
- Resolves: bz1739283
|
- Resolves: bz1739283
|
||||||
|
Loading…
Reference in New Issue
Block a user