All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hemant Agrawal <hemant.agrawal@nxp.com>
To: Bruce Richardson <bruce.richardson@intel.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Cc: Shreyansh Jain <shreyansh.jain@nxp.com>,
	"stable@dpdk.org" <stable@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v2 1/4] raw/skeleton: fix failing test case
Date: Thu, 27 Jun 2019 11:50:37 +0000	[thread overview]
Message-ID: <2b089ed3-6b2f-ba4f-9df6-66e2f417f859@nxp.com> (raw)
In-Reply-To: <20190621155659.29297-2-bruce.richardson@intel.com>

Series-Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>

On 21-Jun-19 9:26 PM, Bruce Richardson wrote:
> Rawdev unit test for setting and getting parameters is failing because
> of a pointer value being dereferenced after the memory it pointed to is
> freed.
>
> The freeing of the malloced memory is difficult when using asserts to
> cause early abort of the test cases, since that can leak memory. The
> original placement of the free call caused a memory leak if the test
> finished early, while a fix for that leak caused the test to fail at
> times due to the memory variable being referenced after free. For a case
> like this, using stack rather than heap memory is just easier and avoids
> all issues.
>
> Fixes: 55ca1b0f2151 ("raw/skeleton: add test cases")
> Fixes: 88d0e47880ec ("raw/skeleton: fix memory leak on test failure")
> Cc: shreyansh.jain@nxp.com
> Cc: stable@dpdk.org
>
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> ---
>   drivers/raw/skeleton_rawdev/skeleton_rawdev_test.c | 8 ++------
>   1 file changed, 2 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/raw/skeleton_rawdev/skeleton_rawdev_test.c b/drivers/raw/skeleton_rawdev/skeleton_rawdev_test.c
> index 359c9e296..a0961c77b 100644
> --- a/drivers/raw/skeleton_rawdev/skeleton_rawdev_test.c
> +++ b/drivers/raw/skeleton_rawdev/skeleton_rawdev_test.c
> @@ -274,17 +274,14 @@ static int
>   test_rawdev_attr_set_get(void)
>   {
>   	int ret;
> -	int *dummy_value;
> +	int dummy_value_store;
> +	int *dummy_value = &dummy_value_store;
>   	uint64_t ret_value;
>   
>   	/* Set an attribute and fetch it */
>   	ret = rte_rawdev_set_attr(TEST_DEV_ID, "Test1", 100);
>   	RTE_TEST_ASSERT(!ret, "Unable to set an attribute (Test1)");
>   
> -	dummy_value = malloc(sizeof(int));
> -	if (!dummy_value)
> -		RTE_TEST_ASSERT(1, "Unable to allocate memory (dummy_value)");
> -
>   	*dummy_value = 200;
>   	ret = rte_rawdev_set_attr(TEST_DEV_ID, "Test2", (uintptr_t)dummy_value);
>   
> @@ -294,7 +291,6 @@ test_rawdev_attr_set_get(void)
>   			      "Attribute (Test1) not set correctly (%" PRIu64 ")",
>   			      ret_value);
>   
> -	free(dummy_value);
>   
>   	ret_value = 0;
>   	ret = rte_rawdev_get_attr(TEST_DEV_ID, "Test2", &ret_value);

  reply	other threads:[~2019-06-27 11:50 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-19 17:08 [dpdk-dev] [PATCH 0/2] rawdev autotest fixes Bruce Richardson
2019-06-19 17:08 ` [dpdk-dev] [PATCH 1/2] raw/skeleton: fix failing test case Bruce Richardson
2019-06-19 17:08 ` [dpdk-dev] [PATCH 2/2] app/test: add missing rawdev autotest to meson build Bruce Richardson
2019-06-21 15:56 ` [dpdk-dev] [PATCH v2 0/4] fixes and improvements for rawdev Bruce Richardson
2019-06-21 15:56   ` [dpdk-dev] [PATCH v2 1/4] raw/skeleton: fix failing test case Bruce Richardson
2019-06-27 11:50     ` Hemant Agrawal [this message]
2019-07-01 18:03     ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
2019-06-21 15:56   ` [dpdk-dev] [PATCH v2 2/4] app/test: add missing rawdev test to meson build Bruce Richardson
2019-07-01 18:10     ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
2019-06-21 15:56   ` [dpdk-dev] [PATCH v2 3/4] raw/skeleton: remove compile-time constant for device id Bruce Richardson
2019-06-21 15:56   ` [dpdk-dev] [PATCH v2 4/4] rawdev: pass device id as parameter to selftest Bruce Richardson
2019-07-04  9:33     ` Shreyansh Jain
2019-07-02  9:56 ` [dpdk-dev] [PATCH v3 0/3] fixes and improvements for rawdev Bruce Richardson
2019-07-02  9:56   ` [dpdk-dev] [PATCH v3 1/3] app/test: add missing rawdev autotest to meson build Bruce Richardson
2019-07-02  9:56   ` [dpdk-dev] [PATCH v3 2/3] raw/skeleton: remove compile-time constant for device id Bruce Richardson
2019-07-02  9:56   ` [dpdk-dev] [PATCH v3 3/3] rawdev: pass the device id as parameter to selftest Bruce Richardson
2019-07-02 15:05   ` [dpdk-dev] [PATCH v3 0/3] fixes and improvements for rawdev Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2b089ed3-6b2f-ba4f-9df6-66e2f417f859@nxp.com \
    --to=hemant.agrawal@nxp.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=shreyansh.jain@nxp.com \
    --cc=stable@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.