On Wed, Aug 19, 2020 at 6:30 PM Brendan Higgins <brendanhiggins@xxxxxxxxxx> wrote: > > On Wed, Aug 19, 2020 at 12:46 PM Vitor Massaru Iha <vitor@xxxxxxxxxxx> wrote: > > > > Some tests, such as overflow_kunit(), uses unsigned int, > > But kunit_binary_assert_format() only prints signed int, > > this commit also deals with the unsigned int print. Oops, Thanks! I'll fix it. > > > > Signed-off-by: Vitor Massaru Iha <vitor@xxxxxxxxxxx> > > --- > > lib/kunit/assert.c | 15 +++++++++++++-- > > 1 file changed, 13 insertions(+), 2 deletions(-) > > > > diff --git a/lib/kunit/assert.c b/lib/kunit/assert.c > > index 202f9fdeed0e..3ae90c09986a 100644 > > --- a/lib/kunit/assert.c > > +++ b/lib/kunit/assert.c > > @@ -104,12 +104,23 @@ void kunit_binary_assert_format(const struct kunit_assert *assert, > > binary_assert->left_text, > > binary_assert->operation, > > binary_assert->right_text); > > - string_stream_add(stream, KUNIT_SUBSUBTEST_INDENT "%s == %lld\n", > > + > > + if (binary_assert->left_value - 1 < 0) { > > + string_stream_add(stream, KUNIT_SUBSUBTEST_INDENT "%s == %lld\n", > > + binary_assert->left_text, > > + binary_assert->left_value); > > + string_stream_add(stream, KUNIT_SUBSUBTEST_INDENT "%s == %lld", > > + binary_assert->right_text, > > + binary_assert->right_value); > > + } > > + else { > > + string_stream_add(stream, KUNIT_SUBSUBTEST_INDENT "%s == %llu\n", > > binary_assert->left_text, > > binary_assert->left_value); > > - string_stream_add(stream, KUNIT_SUBSUBTEST_INDENT "%s == %lld", > > + string_stream_add(stream, KUNIT_SUBSUBTEST_INDENT "%s == %llu", > > binary_assert->right_text, > > binary_assert->right_value); > > + } > > I agree that you found a bug here; however, I disagree that this is > the correct fix. Given that the value is stored as a long long; isn't > the value always stored as a signed value? So if the value overflows, > won't it still not pass the check you have here? > > > } > > kunit_assert_print_msg(assert, stream); > > } > > > > base-commit: d43c7fb05765152d4d4a39a8ef957c4ea14d8847 > > prerequisite-patch-id: bf4b0962b0b955e4e45f5d25fece889562118158 > > -- > > 2.26.2 > >