2022-11-09 21:44:32

by Daniel Latypov

[permalink] [raw]
Subject: [PATCH] kunit: remove KUNIT_INIT_MEM_ASSERTION macro

Commit 870f63b7cd78 ("kunit: eliminate KUNIT_INIT_*_ASSERT_STRUCT
macros") removed all the other macros of this type.

But it raced with commit b8a926bea8b1 ("kunit: Introduce
KUNIT_EXPECT_MEMEQ and KUNIT_EXPECT_MEMNEQ macros"), which added another
instance.

Remove KUNIT_INIT_MEM_ASSERTION and just use the generic
KUNIT_INIT_ASSERT macro instead.
Rename the `size` arg to avoid conflicts by appending a "_" (like we did
in the previous commit).

Signed-off-by: Daniel Latypov <[email protected]>
---
include/kunit/assert.h | 7 -------
include/kunit/test.h | 12 ++++++------
2 files changed, 6 insertions(+), 13 deletions(-)

diff --git a/include/kunit/assert.h b/include/kunit/assert.h
index 43144cfddc19..24c2b9fa61e8 100644
--- a/include/kunit/assert.h
+++ b/include/kunit/assert.h
@@ -192,13 +192,6 @@ void kunit_binary_str_assert_format(const struct kunit_assert *assert,
const struct va_format *message,
struct string_stream *stream);

-#define KUNIT_INIT_MEM_ASSERT_STRUCT(text_, left_val, right_val, size_) { \
- .text = text_, \
- .left_value = left_val, \
- .right_value = right_val, \
- .size = size_ \
-}
-
/**
* struct kunit_mem_assert - An expectation/assertion that compares two
* memory blocks.
diff --git a/include/kunit/test.h b/include/kunit/test.h
index d7f60e8aab30..4666a4d199ea 100644
--- a/include/kunit/test.h
+++ b/include/kunit/test.h
@@ -666,13 +666,13 @@ do { \
left, \
op, \
right, \
- size, \
+ size_, \
fmt, \
...) \
do { \
const void *__left = (left); \
const void *__right = (right); \
- const size_t __size = (size); \
+ const size_t __size = (size_); \
static const struct kunit_binary_assert_text __text = { \
.operation = #op, \
.left_text = #left, \
@@ -686,10 +686,10 @@ do { \
assert_type, \
kunit_mem_assert, \
kunit_mem_assert_format, \
- KUNIT_INIT_MEM_ASSERT_STRUCT(&__text, \
- __left, \
- __right, \
- __size), \
+ KUNIT_INIT_ASSERT(.text = &__text, \
+ .left_value = __left, \
+ .right_value = __right, \
+ .size = __size), \
fmt, \
##__VA_ARGS__); \
} while (0)

base-commit: 870f63b7cd78d0055902d839a60408f7428b4e84
--
2.38.1.431.g37b22c650d-goog



2022-11-19 08:46:38

by David Gow

[permalink] [raw]
Subject: Re: [PATCH] kunit: remove KUNIT_INIT_MEM_ASSERTION macro

On Thu, Nov 10, 2022 at 5:20 AM Daniel Latypov <[email protected]> wrote:
>
> Commit 870f63b7cd78 ("kunit: eliminate KUNIT_INIT_*_ASSERT_STRUCT
> macros") removed all the other macros of this type.
>
> But it raced with commit b8a926bea8b1 ("kunit: Introduce
> KUNIT_EXPECT_MEMEQ and KUNIT_EXPECT_MEMNEQ macros"), which added another
> instance.
>
> Remove KUNIT_INIT_MEM_ASSERTION and just use the generic
> KUNIT_INIT_ASSERT macro instead.
> Rename the `size` arg to avoid conflicts by appending a "_" (like we did
> in the previous commit).
>
> Signed-off-by: Daniel Latypov <[email protected]>
> ---

Thanks for catching this. Looks good and works here.

Reviewed-by: David Gow <[email protected]>

Cheers,
-- David

> include/kunit/assert.h | 7 -------
> include/kunit/test.h | 12 ++++++------
> 2 files changed, 6 insertions(+), 13 deletions(-)
>
> diff --git a/include/kunit/assert.h b/include/kunit/assert.h
> index 43144cfddc19..24c2b9fa61e8 100644
> --- a/include/kunit/assert.h
> +++ b/include/kunit/assert.h
> @@ -192,13 +192,6 @@ void kunit_binary_str_assert_format(const struct kunit_assert *assert,
> const struct va_format *message,
> struct string_stream *stream);
>
> -#define KUNIT_INIT_MEM_ASSERT_STRUCT(text_, left_val, right_val, size_) { \
> - .text = text_, \
> - .left_value = left_val, \
> - .right_value = right_val, \
> - .size = size_ \
> -}
> -
> /**
> * struct kunit_mem_assert - An expectation/assertion that compares two
> * memory blocks.
> diff --git a/include/kunit/test.h b/include/kunit/test.h
> index d7f60e8aab30..4666a4d199ea 100644
> --- a/include/kunit/test.h
> +++ b/include/kunit/test.h
> @@ -666,13 +666,13 @@ do { \
> left, \
> op, \
> right, \
> - size, \
> + size_, \
> fmt, \
> ...) \
> do { \
> const void *__left = (left); \
> const void *__right = (right); \
> - const size_t __size = (size); \
> + const size_t __size = (size_); \
> static const struct kunit_binary_assert_text __text = { \
> .operation = #op, \
> .left_text = #left, \
> @@ -686,10 +686,10 @@ do { \
> assert_type, \
> kunit_mem_assert, \
> kunit_mem_assert_format, \
> - KUNIT_INIT_MEM_ASSERT_STRUCT(&__text, \
> - __left, \
> - __right, \
> - __size), \
> + KUNIT_INIT_ASSERT(.text = &__text, \
> + .left_value = __left, \
> + .right_value = __right, \
> + .size = __size), \
> fmt, \
> ##__VA_ARGS__); \
> } while (0)
>
> base-commit: 870f63b7cd78d0055902d839a60408f7428b4e84
> --
> 2.38.1.431.g37b22c650d-goog
>


Attachments:
smime.p7s (3.91 kB)
S/MIME Cryptographic Signature