1
1

This commit adds a help message when system limitations prevent setting up OSHMEM's symmetric heap. This fixes trac:4399 and should be added to

cmr=v1.7.5:reviewer=jsquyres

This commit was SVN r31172.

The following Trac tickets were found above:
  Ticket 4399 --> https://svn.open-mpi.org/trac/ompi/ticket/4399
Этот коммит содержится в:
Joshua Ladd 2014-03-20 14:42:25 +00:00
родитель d8288fa39d
Коммит 3e51d28b97
2 изменённых файлов: 20 добавлений и 4 удалений

Просмотреть файл

@ -21,3 +21,13 @@ output of the "ompi_info" command and ensure that components of this
type are available on your system. You may also wish to check the
value of the "component_path" MCA parameter and ensure that it has at
least one directory that contains valid MCA components.
[sysv:create-segment-failture]
'sshmem' 'sysv' was failed to allocate shared memory segment
of requested size. Returned error corresponds to
invalid agrument function call which most likely
is size of shared segment to allocate.
Try using other 'sshmem' components (e.g. 'mmap')
with '-mca sshmem mmap' or decrease symmetric heap area size
with '-x SHMEM_SYMMETRIC_HEAP_SIZE=<value>'.

Просмотреть файл

@ -44,6 +44,7 @@
#include "opal/util/output.h"
#include "opal/util/path.h"
#include "opal/util/show_help.h"
#include "orte/util/show_help.h"
#include "oshmem/mca/sshmem/sshmem.h"
#include "oshmem/mca/sshmem/base/base.h"
@ -192,10 +193,15 @@ segment_create(map_segment_t *ds_buf,
shmid = shmget(IPC_PRIVATE, size, flags);
if (shmid == MAP_SEGMENT_SHM_INVALID) {
OPAL_OUTPUT_VERBOSE(
(5, oshmem_sshmem_base_framework.framework_output,
"Failed to shmget() %llu bytes (errno=%d)",
(unsigned long long)size, errno)
);
(5, oshmem_sshmem_base_framework.framework_output,
"Failed to shmget() %llu bytes (errno=%d)",
(unsigned long long)size, errno));
if (EINVAL == errno) {
orte_show_help("help-shmem-mca.txt",
"sysv:create-segment-failture",
true);
}
return OSHMEM_ERROR;
}