Commit a1ebf517 authored by Scott Breyer's avatar Scott Breyer

Updated to latest from build 10.0.1.0.2 (FF 10.0.1.0.2)

parent 718475ea
......@@ -205,7 +205,7 @@ sub os_vendor_version($)
my $rval = "";
my $mn = "";
if ( -e "/etc/os-release" ) {
if ( -e "/etc/os-release" && -e "/etc/redhat-release" ) {
$rval=`cat /etc/os-release | grep VERSION_ID | cut -d'=' -f2 | tr -d [\\"\\.0]`;
chop($rval);
$rval="ES".$rval;
......
......@@ -930,10 +930,8 @@ struct dsap_port * dsap_lock_prov_port(dsap_src_port_t *src_port)
if (acm_get_gid((struct acm_port *) port->port, 0,
&gid))
goto next_port;
if (!memcmp(&gid, &src_port->gid, sizeof(gid))) {
SpinLockRelease(&port->lock);
if (!memcmp(&gid, &src_port->gid, sizeof(gid)))
goto get_exit;
}
next_port:
SpinLockRelease(&port->lock);
port = NULL;
......
......@@ -4146,14 +4146,15 @@ FSTATUS putPMSweepImageDataR(uint8_t *p_img_in, uint32_t len_img_in) {
PmShortTermHistory_t *sth = &pm->ShortTermHistory;
PmImage_t *pmimagep;
#ifndef __VXWORKS__
PmCompositeImage_t *cimg_in = (PmCompositeImage_t *)p_img_in;
Status_t status;
#endif
PmCompositeImage_t *cimg_in = (PmCompositeImage_t *)p_img_in;
PmCompositeImage_t *cimg_out = NULL;
unsigned char *p_decompress = NULL;
unsigned char *bf_decompress = NULL;
static time_t firstImageSweepStart;
static uint32 processedSweepNum=0;
uint32 history_version;
double isTdelta;
boolean skipCompounding = FALSE;
uint8 tempInstanceId;
......@@ -4165,7 +4166,15 @@ FSTATUS putPMSweepImageDataR(uint8_t *p_img_in, uint32_t len_img_in) {
return -1;
}
BSWAP_PM_FILE_HEADER(&((PmCompositeImage_t *)p_img_in)->header);
// check the version
history_version = cimg_in->header.common.historyVersion;
BSWAP_PM_HISTORY_VERSION(&history_version);
if (history_version != PM_HISTORY_VERSION) {
IB_LOG_INFO0("Received image buffer version does not match current version");
return FINVALID_PARAMETER;
}
BSWAP_PM_FILE_HEADER(&cimg_in->header);
#ifndef __VXWORKS__
// Decompress image if compressed
if (cimg_in->header.common.isCompressed) {
......
......@@ -2494,11 +2494,11 @@ PmCompositeImage_t *PmCreateComposite(Pm_t *pm, uint32 imageIndex, uint8 isCompr
return NULL;
// intialize some of the header fields
cimg->header.common.historyVersion = PM_HISTORY_VERSION;
cimg->header.common.isCompressed = isCompressed;
cimg->header.common.imagesPerComposite = 1;
cimg->header.common.imageSweepInterval = pm_config.sweep_interval;
cimg->header.common.imageIDs[0] = buildShortTermHistoryImageId(pm, imageIndex);
cimg->header.historyVersion = PM_HISTORY_VERSION;
// initialize the composite vales from the image
cimg->sweepStart = (uint64)img->sweepStart;
......@@ -3288,6 +3288,19 @@ FSTATUS PmLoadComposite(Pm_t *pm, PmHistoryRecord_t *record, PmCompositeImage_t
return FERROR;
}
// check the version
if (((PmFileHeader_t *)raw_data)->common.historyVersion != PM_HISTORY_VERSION) {
#ifdef __VXWORKS__
IB_LOG_ERROR0("Loaded PM history image that does not match current version");
#else
IB_LOG_ERROR_FMT("Loaded PM history image that does not match current version: %s",
record->header.filename);
#endif
free(raw_data);
fclose(fp);
return FERROR;
}
// allocate the img_data buffer
img_len = (size_t)((PmFileHeader_t*)raw_data)->flatSize;
// checkout the flat size - it needs to be at least enough to hold the image header
......@@ -3338,16 +3351,6 @@ FSTATUS PmLoadComposite(Pm_t *pm, PmHistoryRecord_t *record, PmCompositeImage_t
free(raw_data);
}
// check the version
if (((PmFileHeader_t*)img_data)->historyVersion != PM_HISTORY_VERSION) {
#ifdef __VXWORKS__
IB_LOG_ERROR0("Loaded PM history image that does not match current version");
#else
IB_LOG_ERROR_FMT("Loaded PM history image that does not match current version: %s",
record->header.filename);
#endif
}
*cimg = calloc(1 , sizeof(PmCompositeImage_t));
if (!(*cimg)) {
IB_LOG_ERROR0("Unable to allocate memory for the cached PM Composite Image");
......@@ -3938,14 +3941,26 @@ static Status_t PmLoadHistory(Pm_t *pm, boolean master) {
ret = VSTATUS_EIO;
} else {
const size_t readSize = sizeof(PmHistoryHeaderCommon_t);
uint8 bf_header[sizeof(PmHistoryHeaderCommon_t)];
PmHistoryRecord_t *rec = pm->ShortTermHistory.historyRecords[i];
// read the header of the file into the record entry
if (fread(pm->ShortTermHistory.historyRecords[i], 1, readSize, fp) != readSize) {
// read the header of the file and check the version
if (fread(bf_header, 1, readSize, fp) != readSize) {
IB_LOG_WARN0("Encountered a problem while loading a Short-Term History file");
fclose(fp);
continue;
}
if (((PmHistoryHeaderCommon_t *)bf_header)->historyVersion != PM_HISTORY_VERSION) {
IB_LOG_WARN_FMT(__func__, "Encountered a Short-Term History file that does not match current version (%u): %s is v%u",
PM_HISTORY_VERSION, filename, ((PmHistoryHeaderCommon_t *)bf_header)->historyVersion);
fclose(fp);
continue;
}
// Move header into the record entry
memcpy(pm->ShortTermHistory.historyRecords[i], bf_header, readSize);
// if this was a failover the record may have the wrong filepath, so overwrite it
strncpy(pm->ShortTermHistory.historyRecords[i]->header.filename, filename, PM_HISTORY_FILENAME_LEN);
fclose(fp);
// Enforce max disk usage
......
......@@ -755,7 +755,7 @@ typedef struct PmImage_s {
#define PM_HISTORY_MAX_IMAGES_PER_COMPOSITE 60
#define PM_HISTORY_MAX_SMS_PER_COMPOSITE 2
#define PM_HISTORY_MAX_LOCATION_LEN 111
#define PM_HISTORY_VERSION 4
#define PM_HISTORY_VERSION 5
#define PM_MAX_COMPRESSION_DIVISIONS 32
typedef struct PmCompositePort_s {
......@@ -891,10 +891,12 @@ typedef struct PmCompositeGroups_s {
} PmCompositeGroup_t;
typedef struct PmHistoryHeaderCommon_s {
uint32 historyVersion; // Must remain fixed for all versions
uint32 reserved;
char filename[PM_HISTORY_FILENAME_LEN];
uint64 timestamp;
uint8 isCompressed;
uint8 reserved;
uint8 reserved2;
uint16 imagesPerComposite;
uint32 imageSweepInterval;
uint64 imageIDs[PM_HISTORY_MAX_IMAGES_PER_COMPOSITE];
......@@ -903,9 +905,8 @@ typedef struct PmHistoryHeaderCommon_s {
typedef struct PmFileHeader_s {
PmHistoryHeaderCommon_t common;
uint64 flatSize;
uint16 historyVersion;
uint8 numDivisions;
uint8 reserved[5];
uint8 reserved[7];
uint64 divisionSizes[PM_MAX_COMPRESSION_DIVISIONS];
} PmFileHeader_t;
......@@ -1306,6 +1307,15 @@ BSWAP_PM_COMPOSITE_SM_INFO(struct PmCompositeSmInfo *Dest, uint32 numSMs)
#endif
} // End of BSWAP_PM_COMPOSITE_SM_INFO
static __inline
void
BSWAP_PM_HISTORY_VERSION(uint32 *Dest)
{
#if CPU_LE
*Dest = ntoh32(*Dest);
#endif
} // End of BSWAP_PM_HISTORY_VERSION
static __inline
void
BSWAP_PM_HISTORY_HEADER_COMMON(PmHistoryHeaderCommon_t *Dest)
......@@ -1313,6 +1323,7 @@ BSWAP_PM_HISTORY_HEADER_COMMON(PmHistoryHeaderCommon_t *Dest)
#if CPU_LE
uint32 i;
BSWAP_PM_HISTORY_VERSION(&Dest->historyVersion);
Dest->timestamp = ntoh64(Dest->timestamp);
Dest->imagesPerComposite = ntoh16(Dest->imagesPerComposite);
Dest->imageSweepInterval = ntoh32(Dest->imageSweepInterval);
......@@ -1330,7 +1341,6 @@ BSWAP_PM_FILE_HEADER(PmFileHeader_t *Dest)
BSWAP_PM_HISTORY_HEADER_COMMON(&Dest->common);
Dest->flatSize = ntoh64(Dest->flatSize);
Dest->historyVersion = ntoh16(Dest->historyVersion);
for (i = 0; i < PM_MAX_COMPRESSION_DIVISIONS; i++)
Dest->divisionSizes[i] = ntoh64(Dest->divisionSizes[i]);
#endif
......@@ -1369,7 +1379,6 @@ BSWAP_PM_COMPOSITE_IMAGE_FLAT(PmCompositeImage_t *Dest, boolean hton)
Dest->numGroups = ntoh32(Dest->numGroups);
Dest->numVFs = ntoh32(Dest->numVFs);
Dest->numVFsActive = ntoh32(Dest->numVFsActive);
Dest->maxLid = ntoh32(Dest->maxLid);
Dest->numPorts = ntoh32(Dest->numPorts);
BSWAP_PM_COMPOSITE_SM_INFO(Dest->SMs, PM_HISTORY_MAX_SMS_PER_COMPOSITE);
BSWAP_PM_COMPOSITE_GROUP(&Dest->allPortsGroup, 1);
......
......@@ -148,9 +148,9 @@ IbPortDownDefaultToText( IN IB_PORT_PHYS_STATE state )
* Convert IB_MTU enumeration to a byte count
*/
static __inline uint16
GetBytesFromMtu(IB_MTU mtu)
GetBytesFromMtu(uint8 mtu)
{
switch ((int)mtu)
switch (mtu)
{
default:
#if !defined (VXWORKS)
......@@ -167,18 +167,16 @@ GetBytesFromMtu(IB_MTU mtu)
return 2048;
case IB_MTU_4096:
return 4096;
#if !defined (VXWORKS)
case STL_MTU_8192:
return 8192;
case STL_MTU_10240:
return 10240;
#endif
}
}
/* Convert byte count to nearest IB_MTU enumeration (rounds up)
* (eg. returns IB MTU required to support packet sizes of "bytes")
*/
static __inline IB_MTU
static __inline uint8
GetMtuFromBytes(uint16 bytes)
{
#if !defined (VXWORKS)
......@@ -196,12 +194,10 @@ GetMtuFromBytes(uint16 bytes)
return IB_MTU_2048;
else if (bytes <= 4096)
return IB_MTU_4096;
#if !defined (VXWORKS)
else if (bytes <= 8192)
return STL_MTU_8192;
else if (bytes <= 10240)
return STL_MTU_10240;
#endif
else
return IB_MTU_4096;
}
......
......@@ -238,15 +238,21 @@ test_pcicfg()
# get Storm Lake Intel stand-alone WFR HFI
set -x
"${lspci}" -vvv -d 0x8086:0x24f0 2>pcicfg.stderr | tee -a pcicfg.stdout || fail "Error running lspci"
"${lspci}" -n -d 0x8086:0x24f0 2>pcicfg.stderr | tee -a pcicfg.stdout || fail "Error running lspci"
set +x
[ -s pcicfg.stderr ] && fail "Error during run of lspci: $(cat pcicfg.stderr)"
# also get Storm Lake Intel integrated WFR HFI
set -x
"${lspci}" -vvv -d 0x8086:0x24f1 2>pcicfg.stderr | tee -a pcicfg.stdout || fail "Error running lspci"
"${lspci}" -n -d 0x8086:0x24f1 2>pcicfg.stderr | tee -a pcicfg.stdout || fail "Error running lspci"
set +x
[ -s pcicfg.stderr ] && fail "Error during run of lspci: $(cat pcicfg.stderr)"
set -x
pci_id=$(grep -o -m1 "24f[01]" pcicfg.stdout)
"${lspci}" -vvv -d 0x8086:$pci_id 2>pcicfg.stderr | tee -a pcicfg.stdout || fail "Error running lspci"
set +x
hfi_count=$(cat pcicfg.stdout|grep 'MaxPayload .* bytes, MaxReadReq .* bytes' | wc -l)
[ $hfi_count -ne $HFI_COUNT ] && { fail_msg "Incorrect number of Intel HFIs: Expect $HFI_COUNT Got: $hfi_count"; failure=1; }
[ $HFI_COUNT -eq 0 ] && pass
......@@ -295,15 +301,20 @@ test_pcispeed()
# get Storm Lake Intel stand-alone WFR HFI
set -x
"${lspci}" -vvv -d 0x8086:0x24f0 2>pcispeed.stderr | tee -a pcispeed.stdout || fail "Error running lspci"
"${lspci}" -n -d 0x8086:0x24f0 2>pcispeed.stderr | tee -a pcispeed.stdout || fail "Error running lspci"
set +x
[ -s pcispeed.stderr ] && fail "Error during run of lspci: $(cat pcispeed.stderr)"
# also get Storm Lake Intel integrated WFR HFI
set -x
"${lspci}" -vvv -d 0x8086:0x24f1 2>pcispeed.stderr | tee -a pcispeed.stdout || fail "Error running lspci"
"${lspci}" -n -d 0x8086:0x24f1 2>pcispeed.stderr | tee -a pcispeed.stdout || fail "Error running lspci"
set +x
[ -s pcispeed.stderr ] && fail "Error during run of lspci: $(cat pcispeed.stderr)"
set -x
pci_id=$(grep -o -m1 "24f[01]" pcicfg.stdout)
"${lspci}" -vvv -d 0x8086:$pci_id 2>pcispeed.stderr | tee -a pcispeed.stdout || fail "Error running lspci"
set +x
hfi_count=$(cat pcispeed.stdout|grep 'Speed .*, Width .*' pcispeed.stdout|egrep -v 'LnkCap|LnkCtl|Supported'| wc -l)
[ $hfi_count -ne $HFI_COUNT ] && { fail_msg "Incorrect number of Intel HFIs: Expect $HFI_COUNT Got: $hfi_count"; failure=1; }
[ $HFI_COUNT -eq 0 ] && pass
......@@ -478,12 +489,12 @@ test_hfi_pkt()
# get Storm Lake Intel stand-alone WFR HFI
set -x
"${lspci}" -vvv -d 0x8086:0x24f0 2>pciinfo.stderr | tee -a pciinfo.stdout || fail "Error running lspci"
"${lspci}" -n -d 0x8086:0x24f0 2>pciinfo.stderr | tee -a pciinfo.stdout || fail "Error running lspci"
set +x
[ -s pciinfo.stderr ] && fail "Error during run of lspci: $(cat pciinfo.stderr)"
# also get Storm Lake Intel integrated WFR HFI
set -x
"${lspci}" -vvv -d 0x8086:0x24f1 2>pciinfo.stderr | tee -a pciinfo.stdout || fail "Error running lspci"
"${lspci}" -n -d 0x8086:0x24f1 2>pciinfo.stderr | tee -a pciinfo.stdout || fail "Error running lspci"
set +x
[ -s pciinfo.stderr ] && fail "Error during run of lspci: $(cat pciinfo.stderr)"
......@@ -501,6 +512,9 @@ test_hfi_pkt()
[ ! -x "${hfi_pkt_test}" ] && fail "Can't find hfi_pkt_test"
failure=0
declare -a pci_addr
pci_addr=($(lspci -nd 0x8086:$pci_id | cut -d' ' -f1))
for hfi in $(seq 0 $(($HFI_COUNT-1)) )
do
if [ -z "${nomemflush}" ]; then
......@@ -516,6 +530,9 @@ test_hfi_pkt()
failure=1
continue
fi
pci_bus="$(echo ${pci_addr[$hfi]} | cut -d : -f1):"
set -x
taskset -c ${HFI_CPU_CORE[$hfi]} "${hfi_pkt_test}" -B -U $hfi 2>hfi_pkt_test.stderr | tee hfi_pkt_test.stdout || { fail_msg "HFI $hfi: Error running hfi_pkt_test"; failure=1; continue; }
set +x
......@@ -529,7 +546,7 @@ test_hfi_pkt()
# First check the HFI device itself
set -x
"${setpci}" -d 0x8086:$pci_id CAP_EXP+0xa.w 2>pciiset.stderr | tee pciiset.stdout || fail "Error running setpci"
"${setpci}" -s $pci_bus -d 0x8086:$pci_id CAP_EXP+0xa.w 2>pciiset.stderr | tee pciiset.stdout || fail "Error running setpci"
set +x
[ -s pciiset.stderr ] && fail "Error running setpci: $(cat pciiset.stderr)"
......@@ -540,9 +557,8 @@ test_hfi_pkt()
# Now let's check the PCI-E root port the HFI device is attatched to, as it may report errors on it's side independently
# of the HFI.
pci_bus=$(head -1 pciinfo.stdout | cut -d' ' -f1 | cut -d : -f1)
set -x
pci_root_port="$(${lspci} -M 2> /dev/null | grep "$pci_bus: Entered via" | cut -d' ' -f4)"
pci_root_port="$(${lspci} -M 2> /dev/null | grep "$pci_bus Entered via" | cut -d' ' -f4)"
set +x
set -x
......
......@@ -872,7 +872,7 @@ void writePCAP(int fd, uint64 pktLen, time_t sec, long nsec, uint8 *pkt)
ext.tv_nsec = nsec;
ext.flags = 4;
ext.lossCtr = 0;
ext.linkType = ERF_TYPE_STORMLAKE;
ext.linkType = ERF_TYPE_OPA_SNC;
if (verbose > 1 && mode == WFR_MODE) {
fprintf(stderr, "Direction: %u\n", snc->Direction);
......
......@@ -48,12 +48,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define STL_WIRESHARK_MAGIC 0xa1b2c3d4
#define STL_WIRESHARK_ERF 197
#define ERF_TYPE_INFINIBAND 21
#define ERF_TYPE_INFINIBAND_LINK 25
#define ERF_TYPE_STORMLAKE 26
#define PROTOCOL_MODE_IB 1
#define PROTOCOL_MODE_STL 2
#define ERF_TYPE_OPA_SNC 28
#define ERF_TYPE_OPA_9B 29
#define ERF_TYPE_OPA_BYPASS 30
#define FILTER_COND 0
#define FILTER_DLID 1
......
......@@ -286,15 +286,15 @@ FSTATUS getStatus()
boolean checkWritable() // 1 if the otp is fully writable (unlocked), 0 otherwise
{
uint32_t offset;
uint8_t buffer[OTP_SIZE + 16] = {0};
uint8_t *locks = &buffer[OTP_SIZE];
uint8_t buffer[OTP_SIZE] = {0};
uint8_t *locks = &buffer[OTP_SIZE - 16];
boolean write_status, partial;
FSTATUS status = FSUCCESS;
// lock statuses are 16 additional bytes at the end of the otp region
// each lock byte corresponds to a 32 byte sector of the otp region
offset = (BYTES_OFFSET << 24) | (SLV_ADDR << 16) | (E_ADMIN_CMD_READ_MEM & 0xFF);
status = readFromFile(i2cFd, offset, (unsigned char*)&buffer[0], OTP_SIZE + 16);
status = readFromFile(i2cFd, offset, (unsigned char*)&buffer[0], OTP_SIZE);
if (status != FSUCCESS) {
fprintf(stderr, "opatmmtool: Unable to read system lock state: %s\n", strerror(errno));
return -1;
......
......@@ -61,7 +61,7 @@ typedef enum {
#define I2C_FILE_SIZE 40
#define FNAME_SIZE 64
#define RETRIES 3
#define OTP_SIZE 512
#define OTP_SIZE 528
#define BYTES_OFFSET 1
// TODO: find out the actual values
......
......@@ -31,7 +31,7 @@
#
# $Source: /cvs/ics/MakeTools/Test/Err.msg,v $
# $Author: mwheinz $
# $Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_0_0_692 $
# $Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_1_0_2 $
# $Revision: 1.3 $
# $Date: 2015/01/28 20:18:11 $
#
......
......@@ -31,7 +31,7 @@
#
# $Source: /cvs/ics/MakeTools/Test/Log.msg,v $
# $Author: mwheinz $
# $Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_0_0_692 $
# $Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_1_0_2 $
# $Revision: 1.3 $
# $Date: 2015/01/28 20:18:11 $
#
......
......@@ -31,7 +31,7 @@
#
# $Source: /cvs/ics/MakeTools/Test/Osa.msg,v $
# $Author: mwheinz $
# $Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_0_0_692 $
# $Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_1_0_2 $
# $Revision: 1.3 $
# $Date: 2015/01/28 20:18:11 $
#
......
......@@ -31,7 +31,7 @@
#
# $Source: /cvs/ics/MakeTools/Test/Test.msg,v $
# $Author: mwheinz $
# $Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_0_0_692 $
# $Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_1_0_2 $
# $Revision: 1.4 $
# $Date: 2015/01/28 20:18:11 $
#
......
......@@ -31,7 +31,7 @@
#
# $Source: /cvs/ics/MakeTools/Test/UiUtil.msg,v $
# $Author: mwheinz $
# $Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_0_0_692 $
# $Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_1_0_2 $
# $Revision: 1.3 $
# $Date: 2015/01/28 20:18:11 $
#
......
/*!
@file $Source: /cvs/ics/MakeTools/patch_version/patch_version.c,v $
$Author: mwheinz $
$Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_0_0_692 $
$Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_1_0_2 $
$Revision: 1.14 $
$Date: 2015/01/22 18:03:59 $
@brief Utility to manage version and branding strings in executable code
......
......@@ -29,7 +29,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/*!
@file $Source: /cvs/ics/MakeTools/rm_version/rm_version.c,v $
$Author: mwheinz $
$Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_0_0_692 $
$Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_1_0_2 $
$Revision: 1.5 $
$Date: 2015/01/22 18:04:00 $
@brief Program to remove version strings appended at end of file by prep
......
......@@ -30,7 +30,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/*!
@file $Source: /cvs/ics/Md5/Md5.c,v $
$Author: mwheinz $
$Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_0_0_692 $
$Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_1_0_2 $
$Revision: 1.3 $
$Date: 2015/01/22 18:08:49 $
@brief Md5 API
......
......@@ -32,7 +32,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/*!
@file $Source: /cvs/ics/Md5/Md5.h,v $
$Author: mwheinz $
$Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_0_0_692 $
$Name: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_1_0_2 $
$Revision: 1.4 $
$Date: 2015/01/22 18:08:49 $
@brief Md5 API
......
# Adjust the environment variables if necessary
export PRODUCT=OPENIB_FF
export RELEASE_TAG=10_0_0_0_692
export RELEASE_TAG=10_0_1_0_2
export BUILD_CONFIG=${BUILD_CONFIG:-"release"}
export BUILD_WITH_STACK=
export MODULEVERSION=10.0.0.0.692
export MODULEVERSION=10.0.1.0.2
Build of OPENIB_FF 01/26/16 21:04 Tag: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_0_0_692
Build of OPENIB_FF 02/24/16 06:41 Tag: OPENIB_FF_LINUX_ALL_10_0-BRANCH_10_0_1_0_2
Name: opa
Version: 10.0.0.0
Release: 692
Version: 10.0.1.0
Release: 2
Summary: Intel Omni-Path basic tools and libraries for fabric managment.
Group: System Environment/Libraries
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment