From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zhigang Lu Subject: [PATCH v3 04/12] eal: allow empty compile time flags Date: Mon, 6 Jul 2015 16:51:29 +0800 Message-ID: <1436172698-21749-5-git-send-email-zlu@ezchip.com> References: <1436172698-21749-1-git-send-email-zlu@ezchip.com> Mime-Version: 1.0 Content-Type: text/plain To: Return-path: Received: from emea01-db3-obe.outbound.protection.outlook.com (mail-db3on0091.outbound.protection.outlook.com [157.55.234.91]) by dpdk.org (Postfix) with ESMTP id 682263792 for ; Mon, 6 Jul 2015 10:52:44 +0200 (CEST) In-Reply-To: <1436172698-21749-1-git-send-email-zlu@ezchip.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The rte_cpu_check_supported() code breaks with a "comparison is always false due to limited range of data type" when the compile_time_flags[] array is empty. Assigning the array dimension to a local variable apparently solves this. Change-Id: I0ae21f529cf7b6dd9cf0f4532dce9198f4bf4230 Signed-off-by: Zhigang Lu --- lib/librte_eal/common/eal_common_cpuflags.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/librte_eal/common/eal_common_cpuflags.c b/lib/librte_eal/common/eal_common_cpuflags.c index 6fd360c..8ba7b30 100644 --- a/lib/librte_eal/common/eal_common_cpuflags.c +++ b/lib/librte_eal/common/eal_common_cpuflags.c @@ -30,6 +30,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include /* @@ -62,10 +63,10 @@ rte_cpu_check_supported(void) static const enum rte_cpu_flag_t compile_time_flags[] = { RTE_COMPILE_TIME_CPUFLAGS }; - unsigned i; + unsigned count = RTE_DIM(compile_time_flags), i; int ret; - for (i = 0; i < sizeof(compile_time_flags)/sizeof(compile_time_flags[0]); i++) { + for (i = 0; i < count; i++) { ret = rte_cpu_get_flag_enabled(compile_time_flags[i]); if (ret < 0) { -- 2.1.2