From: He Zhe <zhe...@windriver.com> And add strncpy warning/error fixes for GCC8
Signed-off-by: He Zhe <zhe...@windriver.com> --- .../dpdk-17.11-Fix-strncpy-error-for-GCC8.patch | 82 ++++++++++++++++++++++ .../dpdk/{dpdk_17.11.1.bb => dpdk_17.11.3.bb} | 4 +- 2 files changed, 85 insertions(+), 1 deletion(-) create mode 100644 recipes-extended/dpdk/dpdk/dpdk-17.11-Fix-strncpy-error-for-GCC8.patch rename recipes-extended/dpdk/{dpdk_17.11.1.bb => dpdk_17.11.3.bb} (66%) diff --git a/recipes-extended/dpdk/dpdk/dpdk-17.11-Fix-strncpy-error-for-GCC8.patch b/recipes-extended/dpdk/dpdk/dpdk-17.11-Fix-strncpy-error-for-GCC8.patch new file mode 100644 index 0000000..2014b3e --- /dev/null +++ b/recipes-extended/dpdk/dpdk/dpdk-17.11-Fix-strncpy-error-for-GCC8.patch @@ -0,0 +1,82 @@ +From 30234e8bf0a8c0fe348aaa147307488f59b3265a Mon Sep 17 00:00:00 2001 +From: He Zhe <zhe...@windriver.com> +Date: Mon, 13 Aug 2018 20:06:31 +0800 +Subject: [PATCH] dpdk 17.11: Fix strncpy error for GCC8 + +GCC 8 adds -Wstringop-truncation. If -Werror=stringop-truncation is +enabled. We will meet errors like the following: + +examples/vhost_scsi/scsi.c:213:4: error: 'strncpy' output may be truncated +copying 32 bytes from a string of length 63 [-Werror=stringop-truncation] +| strncpy((char *)vpage->params, bdev->name, 32); +| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Upstream-Status: Submitted [sta...@dpdk.org] + +Signed-off-by: He Zhe <zhe...@windriver.com> +--- + examples/ip_pipeline/config_parse_tm.c | 2 +- + examples/ipsec-secgw/parser.c | 2 +- + examples/vhost_scsi/scsi.c | 6 +++--- + 3 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/examples/ip_pipeline/config_parse_tm.c b/examples/ip_pipeline/config_parse_tm.c +index e75eed7..1c945c9 100644 +--- a/examples/ip_pipeline/config_parse_tm.c ++++ b/examples/ip_pipeline/config_parse_tm.c +@@ -352,7 +352,7 @@ tm_cfgfile_load_sched_subport( + char name[CFG_NAME_LEN + 1]; + + profile = atoi(entries[j].value); +- strncpy(name, ++ memcpy(name, + entries[j].name, + sizeof(name)); + n_tokens = rte_strsplit( +diff --git a/examples/ipsec-secgw/parser.c b/examples/ipsec-secgw/parser.c +index 9d0ea46..e0881b7 100644 +--- a/examples/ipsec-secgw/parser.c ++++ b/examples/ipsec-secgw/parser.c +@@ -544,7 +544,7 @@ parse_cfg_file(const char *cfg_filename) + goto error_exit; + } + +- strncpy(str + strlen(str), oneline, ++ memcpy(str + strlen(str), oneline, + strlen(oneline)); + + continue; +diff --git a/examples/vhost_scsi/scsi.c b/examples/vhost_scsi/scsi.c +index fd430ec..47c5c83 100644 +--- a/examples/vhost_scsi/scsi.c ++++ b/examples/vhost_scsi/scsi.c +@@ -210,7 +210,7 @@ vhost_bdev_scsi_inquiry_command(struct vhost_block_dev *bdev, + break; + case SPC_VPD_UNIT_SERIAL_NUMBER: + hlen = 4; +- strncpy((char *)vpage->params, bdev->name, 32); ++ memcpy((char *)vpage->params, bdev->name, 32); + vpage->alloc_len = rte_cpu_to_be_16(32); + break; + case SPC_VPD_DEVICE_IDENTIFICATION: +@@ -247,7 +247,7 @@ vhost_bdev_scsi_inquiry_command(struct vhost_block_dev *bdev, + strncpy((char *)desig->desig, "INTEL", 8); + vhost_strcpy_pad((char *)&desig->desig[8], + bdev->product_name, 16, ' '); +- strncpy((char *)&desig->desig[24], bdev->name, 32); ++ memcpy((char *)&desig->desig[24], bdev->name, 32); + len += sizeof(struct scsi_desig_desc) + 8 + 16 + 32; + + buf += sizeof(struct scsi_desig_desc) + desig->len; +@@ -312,7 +312,7 @@ vhost_bdev_scsi_inquiry_command(struct vhost_block_dev *bdev, + bdev->product_name); + + /* PRODUCT REVISION LEVEL */ +- strncpy((char *)inqdata->product_rev, "0001", 4); ++ memcpy((char *)inqdata->product_rev, "0001", 4); + + /* Standard inquiry data ends here. Only populate + * remaining fields if alloc_len indicates enough +-- +2.7.4 + diff --git a/recipes-extended/dpdk/dpdk_17.11.1.bb b/recipes-extended/dpdk/dpdk_17.11.3.bb similarity index 66% rename from recipes-extended/dpdk/dpdk_17.11.1.bb rename to recipes-extended/dpdk/dpdk_17.11.3.bb index c3eb59f..b4b0023 100644 --- a/recipes-extended/dpdk/dpdk_17.11.1.bb +++ b/recipes-extended/dpdk/dpdk_17.11.3.bb @@ -2,8 +2,10 @@ include dpdk.inc STABLE = "-stable" BRANCH = "17.11" -SRCREV = "d864d418fa3424098bd14d0b7fd1c8ed078dbb25" +SRCREV = "01dc7ba3ef05afe7e1e52514a8f5d476b1bf67f1" LICENSE = "LGPLv2 & GPLv2" LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=751419260aa954499f7abaabaa882bbe\ file://LICENSE.LGPL;md5=4fbd65380cdd255951079008b364516c" + +SRC_URI += "file://dpdk-17.11-Fix-strncpy-error-for-GCC8.patch" -- 2.7.4 -- _______________________________________________ meta-intel mailing list meta-intel@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-intel