diff --git a/.gitignore b/.gitignore index 51448dd..1be6c68 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/mstflint-4.11.0-2.tar.gz +SOURCES/mstflint-4.12.0-1.tar.gz diff --git a/.mstflint.metadata b/.mstflint.metadata index 19292e7..2721ccc 100644 --- a/.mstflint.metadata +++ b/.mstflint.metadata @@ -1 +1 @@ -f5aa2812b7c57810779938cbf69bf87e967f782c SOURCES/mstflint-4.11.0-2.tar.gz +6dbd1b010078f1f3853a57a05495cdf0cddce876 SOURCES/mstflint-4.12.0-1.tar.gz diff --git a/SOURCES/0001-Fix-shebang-for-python-scripts.patch b/SOURCES/0001-Fix-shebang-for-python-scripts.patch index 22bd73b..e55a6d1 100644 --- a/SOURCES/0001-Fix-shebang-for-python-scripts.patch +++ b/SOURCES/0001-Fix-shebang-for-python-scripts.patch @@ -1,6 +1,6 @@ -From f355d4902890e5b4db15b87903a299697764bc8a Mon Sep 17 00:00:00 2001 +From 8a54316a15c76154d307ba53be5d98b8503a5d5f Mon Sep 17 00:00:00 2001 From: Honggang Li -Date: Fri, 8 Feb 2019 21:26:39 -0500 +Date: Thu, 13 Jun 2019 20:58:50 -0400 Subject: [PATCH] Fix shebang for python scripts rhel-8 does not support python2. User '#!/usr/bin/python3' for all @@ -13,107 +13,30 @@ The substitution was done with following bash script. pys=$(find . -type f -name '*.py') for f in $pys; do - sed -ne '1p' $f | grep -q -E '^#!/usr/bin' - if [ $? -eq 0 ]; then - echo $f - sed -e '/^#!\/usr\/bin/d' -i $f - sed -e '1 i\#!/usr/bin/python3' -i $f - fi + sed -ne '1p' $f | grep -q -E '^#!/usr/bin' + if [ $? -eq 0 ]; then + echo $f + sed -e '/^#!\/usr\/bin/d' -i $f + sed -e '1 i\#!/usr/bin/python3' -i $f + fi done === Signed-off-by: Honggang Li --- - mtcr_py/test.py | 2 +- - small_utils/mlxfwresetlib/mcra.py | 2 +- - small_utils/mlxfwresetlib/mlnx_peripheral_components.py | 2 +- - small_utils/mlxfwresetlib/mlxfwreset_mlnxdriver.py | 2 +- - small_utils/mlxfwresetlib/mlxfwreset_status_checker.py | 2 +- - small_utils/mlxfwresetlib/mlxfwreset_utils.py | 2 +- - small_utils/mlxfwresetlib/pci_device.py | 2 +- - small_utils/mstfwreset.py | 2 +- - 8 files changed, 8 insertions(+), 8 deletions(-) + tracers/fwtrace/mstfwtrace.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/mtcr_py/test.py b/mtcr_py/test.py -index 74c5d28..1e44232 100755 ---- a/mtcr_py/test.py -+++ b/mtcr_py/test.py +diff --git a/tracers/fwtrace/mstfwtrace.py b/tracers/fwtrace/mstfwtrace.py +index 3c3ef8f..5193a31 100755 +--- a/tracers/fwtrace/mstfwtrace.py ++++ b/tracers/fwtrace/mstfwtrace.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/python3 - # Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. - # - # This software is available to you under a choice of one of two -diff --git a/small_utils/mlxfwresetlib/mcra.py b/small_utils/mlxfwresetlib/mcra.py -index 2144d43..bc44356 100644 ---- a/small_utils/mlxfwresetlib/mcra.py -+++ b/small_utils/mlxfwresetlib/mcra.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python -+#!/usr/bin/python3 - - # Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. - # -diff --git a/small_utils/mlxfwresetlib/mlnx_peripheral_components.py b/small_utils/mlxfwresetlib/mlnx_peripheral_components.py -index 0ddf8d9..469e24b 100644 ---- a/small_utils/mlxfwresetlib/mlnx_peripheral_components.py -+++ b/small_utils/mlxfwresetlib/mlnx_peripheral_components.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python -+#!/usr/bin/python3 - - # Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. - # -diff --git a/small_utils/mlxfwresetlib/mlxfwreset_mlnxdriver.py b/small_utils/mlxfwresetlib/mlxfwreset_mlnxdriver.py -index 4971b00..1f34925 100755 ---- a/small_utils/mlxfwresetlib/mlxfwreset_mlnxdriver.py -+++ b/small_utils/mlxfwresetlib/mlxfwreset_mlnxdriver.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python -+#!/usr/bin/python3 - - # Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. - # -diff --git a/small_utils/mlxfwresetlib/mlxfwreset_status_checker.py b/small_utils/mlxfwresetlib/mlxfwreset_status_checker.py -index 1d614ac..153c87b 100755 ---- a/small_utils/mlxfwresetlib/mlxfwreset_status_checker.py -+++ b/small_utils/mlxfwresetlib/mlxfwreset_status_checker.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python -+#!/usr/bin/python3 - - # Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. - # -diff --git a/small_utils/mlxfwresetlib/mlxfwreset_utils.py b/small_utils/mlxfwresetlib/mlxfwreset_utils.py -index 9b07328..2c64044 100755 ---- a/small_utils/mlxfwresetlib/mlxfwreset_utils.py -+++ b/small_utils/mlxfwresetlib/mlxfwreset_utils.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python -+#!/usr/bin/python3 - - # Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. - # -diff --git a/small_utils/mlxfwresetlib/pci_device.py b/small_utils/mlxfwresetlib/pci_device.py -index 69a65ed..04a6c9a 100644 ---- a/small_utils/mlxfwresetlib/pci_device.py -+++ b/small_utils/mlxfwresetlib/pci_device.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python -+#!/usr/bin/python3 - - # Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. - # -diff --git a/small_utils/mstfwreset.py b/small_utils/mstfwreset.py -index 6d45200..f764de3 100755 ---- a/small_utils/mstfwreset.py -+++ b/small_utils/mstfwreset.py -@@ -1,4 +1,4 @@ --#!/usr/bin/python -+#!/usr/bin/python3 - - # Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. - # + # -- + # + # Copyright (C) 2019 Mellanox Technologies Ltd. All rights reserved. -- 2.20.1 diff --git a/SOURCES/0001-mstflint-crash-when-compiled-with-CXXFLAGS-Wp-D_GLIB.patch b/SOURCES/0001-mstflint-crash-when-compiled-with-CXXFLAGS-Wp-D_GLIB.patch deleted file mode 100644 index 45f7dc7..0000000 --- a/SOURCES/0001-mstflint-crash-when-compiled-with-CXXFLAGS-Wp-D_GLIB.patch +++ /dev/null @@ -1,26 +0,0 @@ -From cef28b2989c4df76869ca0d71322c099134774ab Mon Sep 17 00:00:00 2001 -From: root -Date: Sun, 10 Feb 2019 14:25:44 +0200 -Subject: [PATCH] mstflint crash when compiled with - 'CXXFLAGS='-Wp,-D_GLIBCXX_ASSERTIONS'' - ---- - mlxfwops/lib/fs3_ops.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/mlxfwops/lib/fs3_ops.cpp b/mlxfwops/lib/fs3_ops.cpp -index bfe8adb..55f2b71 100644 ---- a/mlxfwops/lib/fs3_ops.cpp -+++ b/mlxfwops/lib/fs3_ops.cpp -@@ -525,7 +525,7 @@ bool Fs3Operations::VerifyTOC(u_int32_t dtoc_addr, bool &bad_signature, VerifyCa - } - // Only when we have full verify or the info of this section should be collected for query - std::vector buffv(entry_size_in_bytes); -- u_int8_t *buff = (u_int8_t *)(&(buffv[0])); -+ u_int8_t *buff = (u_int8_t *)(buffv.size() ? (&(buffv[0])) : NULL); - if (show_itoc) { - cibfw_itoc_entry_dump(&toc_entry, stdout); - if (!DumpFs3CRCCheck(toc_entry.type, phys_addr, entry_size_in_bytes, 0, 0, true, verifyCallBackFunc)) { --- -2.20.1 - diff --git a/SOURCES/add-default-link-flags-for-shared-libraries.patch b/SOURCES/add-default-link-flags-for-shared-libraries.patch index 4d99c18..1ba9e8a 100644 --- a/SOURCES/add-default-link-flags-for-shared-libraries.patch +++ b/SOURCES/add-default-link-flags-for-shared-libraries.patch @@ -1,8 +1,8 @@ diff --git a/cmdif/Makefile.am b/cmdif/Makefile.am -index d4f89a2..46604f5 100644 +index 0d8f53b..d800302 100644 --- a/cmdif/Makefile.am +++ b/cmdif/Makefile.am -@@ -46,7 +46,7 @@ libcmdif_a_SOURCES = tools_cif.c tools_cif.h icmd_cif_common.c icmd_cif_common.h +@@ -50,7 +50,7 @@ libcmdif_a_SOURCES = tools_cif.c tools_cif.h icmd_cif_common.c icmd_cif_common.h cmdif_pylibdir = $(libdir)/mstflint/python_tools/ cmdif_pylib_DATA = ${CCMDIF_SO} cmdif.py ${CCMDIF_SO}: libcmdif.a @@ -12,7 +12,7 @@ index d4f89a2..46604f5 100644 CLEANFILES = ${CCMDIF_SO} diff --git a/dev_mgt/Makefile.am b/dev_mgt/Makefile.am -index 907e5ce..a7e2249 100644 +index 3118b85..e708ad8 100644 --- a/dev_mgt/Makefile.am +++ b/dev_mgt/Makefile.am @@ -50,7 +50,7 @@ dev_mgt_pylib_DATA = c_dev_mgt.so dev_mgt.py @@ -37,8 +37,135 @@ index 5f5677d..566a870 100644 CLEANFILES = cmtcr.so +diff --git a/mvpd/Makefile.am b/mvpd/Makefile.am +index e9fa5c6..fab1599 100755 +--- a/mvpd/Makefile.am ++++ b/mvpd/Makefile.am +@@ -1,61 +1,61 @@ +-#-- +-# Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. +-# +-# This software is available to you under a choice of one of two +-# licenses. You may choose to be licensed under the terms of the GNU +-# General Public License (GPL) Version 2, available from the file +-# COPYING in the main directory of this source tree, or the +-# OpenIB.org BSD license below: +-# +-# Redistribution and use in source and binary forms, with or +-# without modification, are permitted provided that the following +-# conditions are met: +-# +-# - Redistributions of source code must retain the above +-# copyright notice, this list of conditions and the following +-# disclaimer. +-# +-# - Redistributions in binary form must reproduce the above +-# copyright notice, this list of conditions and the following +-# disclaimer in the documentation and/or other materials +-# provided with the distribution. +-# +-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS +-# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +-# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +-# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +-# SOFTWARE. +-#-- +- +-# Makefile.am -- Process this file with automake to produce Makefile.in +-MTCR_DIR = $(top_srcdir)/${MTCR_CONF_DIR} +-COMMON_DIR = $(top_srcdir)/common +-LAYOUTS_DIR = $(top_srcdir)/tools_layouts +-USER_DIR = $(top_srcdir) +- +-AM_CPPFLAGS = -I. -I$(USER_DIR) -I$(srcdir) -I$(LAYOUTS_DIR) -I$(USER_DIR)/include/mtcr_ul +-AM_CFLAGS = -W -Wall -g -MP -MD $(COMPILER_FPIC) +- +-noinst_LTLIBRARIES = libmvpd.a +- +-libmvpd_a_SOURCES = mvpd.c mvpd.h +- +-libmvpd_a_DEPENDENCIES = $(MTCR_DIR)/libmtcr_ul.a +-libmvpd_a_LIBADD = $(libmvpd_a_DEPENDENCIES) +- +-RMVPD_SO = rmvpd.so +- +- +-LDADD= ../${MTCR_CONF_DIR}/libmtcr_ul.a ${LDL} +- +- +-noinst_HEADERS = mvpd.h +- +-${RMVPD_SO}: libmvpd.a +- $(CC) -g -Wall -pthread -shared ${CFLAGS} *.o -o ${RMVPD_SO} \ +- -L$(MTCR_DIR) -lmtcr_ul +- +-CLEANFILES = ${RMVPD_SO} ++#-- ++# Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. ++# ++# This software is available to you under a choice of one of two ++# licenses. You may choose to be licensed under the terms of the GNU ++# General Public License (GPL) Version 2, available from the file ++# COPYING in the main directory of this source tree, or the ++# OpenIB.org BSD license below: ++# ++# Redistribution and use in source and binary forms, with or ++# without modification, are permitted provided that the following ++# conditions are met: ++# ++# - Redistributions of source code must retain the above ++# copyright notice, this list of conditions and the following ++# disclaimer. ++# ++# - Redistributions in binary form must reproduce the above ++# copyright notice, this list of conditions and the following ++# disclaimer in the documentation and/or other materials ++# provided with the distribution. ++# ++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ++# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS ++# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ++# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN ++# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ++# SOFTWARE. ++#-- ++ ++# Makefile.am -- Process this file with automake to produce Makefile.in ++MTCR_DIR = $(top_srcdir)/${MTCR_CONF_DIR} ++COMMON_DIR = $(top_srcdir)/common ++LAYOUTS_DIR = $(top_srcdir)/tools_layouts ++USER_DIR = $(top_srcdir) ++ ++AM_CPPFLAGS = -I. -I$(USER_DIR) -I$(srcdir) -I$(LAYOUTS_DIR) -I$(USER_DIR)/include/mtcr_ul ++AM_CFLAGS = -W -Wall -g -MP -MD $(COMPILER_FPIC) ++ ++noinst_LTLIBRARIES = libmvpd.a ++ ++libmvpd_a_SOURCES = mvpd.c mvpd.h ++ ++libmvpd_a_DEPENDENCIES = $(MTCR_DIR)/libmtcr_ul.a ++libmvpd_a_LIBADD = $(libmvpd_a_DEPENDENCIES) ++ ++RMVPD_SO = rmvpd.so ++ ++ ++LDADD= ../${MTCR_CONF_DIR}/libmtcr_ul.a ${LDL} ++ ++ ++noinst_HEADERS = mvpd.h ++ ++${RMVPD_SO}: libmvpd.a ++ $(CC) -g -Wall -pthread -shared ${CFLAGS} ${LDFLAGS} *.o -o ${RMVPD_SO} \ ++ -L$(MTCR_DIR) -lmtcr_ul ++ ++CLEANFILES = ${RMVPD_SO} diff --git a/reg_access/Makefile.am b/reg_access/Makefile.am -index 353fe02..7d70fd8 100644 +index f28290e..a141704 100644 --- a/reg_access/Makefile.am +++ b/reg_access/Makefile.am @@ -53,7 +53,7 @@ reg_access_pylib_DATA = ${RREG_ACCESS_SO} regaccess.py diff --git a/SOURCES/convert-format-for-mlxfwreset_status_checker.patch b/SOURCES/convert-format-for-mlxfwreset_status_checker.patch deleted file mode 100644 index 52a8f39..0000000 --- a/SOURCES/convert-format-for-mlxfwreset_status_checker.patch +++ /dev/null @@ -1,180 +0,0 @@ -diff --git a/small_utils/mlxfwresetlib/mlxfwreset_status_checker.py b/small_utils/mlxfwresetlib/mlxfwreset_status_checker.py -index 36b82ff..1d614ac 100755 ---- a/small_utils/mlxfwresetlib/mlxfwreset_status_checker.py -+++ b/small_utils/mlxfwresetlib/mlxfwreset_status_checker.py -@@ -1,87 +1,87 @@ --#!/usr/bin/python -- --# Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. --# --# This software is available to you under a choice of one of two --# licenses. You may choose to be licensed under the terms of the GNU --# General Public License (GPL) Version 2, available from the file --# COPYING in the main directory of this source tree, or the --# OpenIB.org BSD license below: --# --# Redistribution and use in source and binary forms, with or --# without modification, are permitted provided that the following --# conditions are met: --# --# - Redistributions of source code must retain the above --# copyright notice, this list of conditions and the following --# disclaimer. --# --# - Redistributions in binary form must reproduce the above --# copyright notice, this list of conditions and the following --# disclaimer in the documentation and/or other materials --# provided with the distribution. --# --# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, --# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND --# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS --# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN --# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN --# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE --# SOFTWARE. --#-- -- --""" --* $Id : fwreset_status_checker.py 2017-11-28 --* $Authors : Ahmad Soboh (ahmads@mellanox.com) --""" -- --###################################################################### --# Description: FirmwareResetStatusChecker --# OS Support : Linux/Windows. --###################################################################### -- -- --class FirmwareResetStatusChecker(object): -- -- FirmwareUptimeStatusInit = 0x0 -- FirmwareUptimeStatusBeforeDone = 0x1 -- FirmwareUptimeStatusAfterDone = 0x2 -- FirmwareUptimeStatusError = 0x3 -- -- FirmwareResetStatusDone = 0x0 -- FirmwareResetStatusFailed = 0x1 -- FirmwareResetStatusUnknown = 0x2 -- -- def __init__(self, regAccessObj): -- self._RegAccessObj = regAccessObj -- self._UptimeBeforeReset = 0x0 -- self._UptimeBeforeStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusInit -- self._UptimeAfterReset = 0x0 -- self._UptimeAfterStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusInit -- -- def UpdateUptimeBeforeReset(self): -- try: -- self._UptimeBeforeReset = self._RegAccessObj.getFWUptime() -- self._UptimeBeforeStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusBeforeDone -- except Exception as e: -- self._UptimeBeforeStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusError -- -- def UpdateUptimeAfterReset(self): -- try: -- self._UptimeAfterReset = self._RegAccessObj.getFWUptime() -- self._UptimeAfterStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusAfterDone -- except Exception as e: -- self._UptimeAfterStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusError -- -- def GetStatus(self): -- if self._UptimeBeforeStatus == FirmwareResetStatusChecker.FirmwareUptimeStatusBeforeDone and\ -- self._UptimeAfterStatus == FirmwareResetStatusChecker.FirmwareUptimeStatusAfterDone: -- if self._UptimeAfterReset < self._UptimeBeforeReset: -- return FirmwareResetStatusChecker.FirmwareResetStatusDone -- else: -- if self._UptimeBeforeReset > 5: #5 seconds -- return FirmwareResetStatusChecker.FirmwareResetStatusFailed -- else: -- return FirmwareResetStatusChecker.FirmwareResetStatusUnknown -- return FirmwareResetStatusChecker.FirmwareResetStatusUnknown -\ No newline at end of file -+#!/usr/bin/python -+ -+# Copyright (c) 2004-2010 Mellanox Technologies LTD. All rights reserved. -+# -+# This software is available to you under a choice of one of two -+# licenses. You may choose to be licensed under the terms of the GNU -+# General Public License (GPL) Version 2, available from the file -+# COPYING in the main directory of this source tree, or the -+# OpenIB.org BSD license below: -+# -+# Redistribution and use in source and binary forms, with or -+# without modification, are permitted provided that the following -+# conditions are met: -+# -+# - Redistributions of source code must retain the above -+# copyright notice, this list of conditions and the following -+# disclaimer. -+# -+# - Redistributions in binary form must reproduce the above -+# copyright notice, this list of conditions and the following -+# disclaimer in the documentation and/or other materials -+# provided with the distribution. -+# -+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS -+# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN -+# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -+# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -+# SOFTWARE. -+#-- -+ -+""" -+* $Id : fwreset_status_checker.py 2017-11-28 -+* $Authors : Ahmad Soboh (ahmads@mellanox.com) -+""" -+ -+###################################################################### -+# Description: FirmwareResetStatusChecker -+# OS Support : Linux/Windows. -+###################################################################### -+ -+ -+class FirmwareResetStatusChecker(object): -+ -+ FirmwareUptimeStatusInit = 0x0 -+ FirmwareUptimeStatusBeforeDone = 0x1 -+ FirmwareUptimeStatusAfterDone = 0x2 -+ FirmwareUptimeStatusError = 0x3 -+ -+ FirmwareResetStatusDone = 0x0 -+ FirmwareResetStatusFailed = 0x1 -+ FirmwareResetStatusUnknown = 0x2 -+ -+ def __init__(self, regAccessObj): -+ self._RegAccessObj = regAccessObj -+ self._UptimeBeforeReset = 0x0 -+ self._UptimeBeforeStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusInit -+ self._UptimeAfterReset = 0x0 -+ self._UptimeAfterStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusInit -+ -+ def UpdateUptimeBeforeReset(self): -+ try: -+ self._UptimeBeforeReset = self._RegAccessObj.getFWUptime() -+ self._UptimeBeforeStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusBeforeDone -+ except Exception as e: -+ self._UptimeBeforeStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusError -+ -+ def UpdateUptimeAfterReset(self): -+ try: -+ self._UptimeAfterReset = self._RegAccessObj.getFWUptime() -+ self._UptimeAfterStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusAfterDone -+ except Exception as e: -+ self._UptimeAfterStatus = FirmwareResetStatusChecker.FirmwareUptimeStatusError -+ -+ def GetStatus(self): -+ if self._UptimeBeforeStatus == FirmwareResetStatusChecker.FirmwareUptimeStatusBeforeDone and\ -+ self._UptimeAfterStatus == FirmwareResetStatusChecker.FirmwareUptimeStatusAfterDone: -+ if self._UptimeAfterReset < self._UptimeBeforeReset: -+ return FirmwareResetStatusChecker.FirmwareResetStatusDone -+ else: -+ if self._UptimeBeforeReset > 5: #5 seconds -+ return FirmwareResetStatusChecker.FirmwareResetStatusFailed -+ else: -+ return FirmwareResetStatusChecker.FirmwareResetStatusUnknown -+ return FirmwareResetStatusChecker.FirmwareResetStatusUnknown diff --git a/SOURCES/replace-mlxfwreset-with-mstfwreset-in-mstflint-message.patch b/SOURCES/replace-mlxfwreset-with-mstfwreset-in-mstflint-message.patch index ca4201f..3d30269 100644 --- a/SOURCES/replace-mlxfwreset-with-mstfwreset-in-mstflint-message.patch +++ b/SOURCES/replace-mlxfwreset-with-mstfwreset-in-mstflint-message.patch @@ -1,8 +1,8 @@ diff --git a/flint/subcommands.cpp b/flint/subcommands.cpp -index 8c85e55..0822e8b 100644 +index 9dd3afd..076879a 100755 --- a/flint/subcommands.cpp +++ b/flint/subcommands.cpp -@@ -2997,7 +2997,7 @@ FlintStatus SgSubCommand::sgFs2() +@@ -3103,7 +3103,7 @@ FlintStatus SgSubCommand::sgFs2() return FLINT_SUCCESS; } @@ -11,16 +11,3 @@ index 8c85e55..0822e8b 100644 FlintStatus SgSubCommand::sgFs3() { -diff --git a/mlxfwops/lib/flint_base.h b/mlxfwops/lib/flint_base.h -index eb434dc..e851085 100644 ---- a/mlxfwops/lib/flint_base.h -+++ b/mlxfwops/lib/flint_base.h -@@ -394,7 +394,7 @@ struct BOARD_ID { - #define TLV_FORMAT_SECT "TLVs format section" - #define TRACER_HASH_SECT "Tracer Hash section" - #define REBOOT_REQUIRED_STR "To load new FW run reboot machine." --#define REBOOT_OR_FWRESET_REQUIRED_STR "To load new FW run mlxfwreset or reboot machine." -+#define REBOOT_OR_FWRESET_REQUIRED_STR "To load new FW run mstfwreset or reboot machine." - #define numbel(x) (sizeof(x) / sizeof((x)[0])) - - void report(const char *format, ...); diff --git a/SPECS/mstflint.spec b/SPECS/mstflint.spec index 4902fb7..67c09a3 100644 --- a/SPECS/mstflint.spec +++ b/SPECS/mstflint.spec @@ -2,16 +2,14 @@ Name: mstflint Summary: Mellanox firmware burning tool -Version: 4.11.0 -Release: 2%{?dist} +Version: 4.12.0 +Release: 1%{?dist} License: GPLv2+ or BSD Group: Applications/System -Source: https://github.com/Mellanox/mstflint/releases/download/v4.11.0-2/mstflint-4.11.0-2.tar.gz -Patch1: convert-format-for-mlxfwreset_status_checker.patch +Source: https://github.com/Mellanox/mstflint/releases/download/v4.12.0-1/mstflint-4.12.0-1.tar.gz Patch2: 0001-Fix-shebang-for-python-scripts.patch Patch3: extend-buffer.patch Patch4: add-default-link-flags-for-shared-libraries.patch -Patch5: 0001-mstflint-crash-when-compiled-with-CXXFLAGS-Wp-D_GLIB.patch Patch6: replace-mlxfwreset-with-mstfwreset-in-mstflint-message.patch Url: https://github.com/Mellanox/mstflint BuildRequires: libstdc++-devel, zlib-devel, libibmad-devel, gcc-c++, gcc @@ -29,11 +27,9 @@ for network adapters based on Mellanox Technologies chips. %prep %setup -q -%patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 -%patch5 -p1 %patch6 -p1 find . -type f -iname '*.[ch]' -exec chmod a-x '{}' ';' find . -type f -iname '*.cpp' -exec chmod a-x '{}' ';' @@ -71,6 +67,10 @@ find %{buildroot} -type f -name pci_device.py -exec chmod -v a+x '{}' ';' %{_mandir}/man1/* %changelog +* Thu Jun 13 2019 Honggang Li - 4.12.0-1 +- Rebase to latest upstream release v4.12.0-1 +- Resolves: bz1683083 + * Fri Feb 1 2019 Honggang Li - 4.11.0-2 - Rebase to latest upstream release v4.11.0-2 - Resolves: bz1634777