Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1252668
| From | Rasmus Villemoes <linux@rasmusvillemoes.dk> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v5 2/2] lib/test-string_helpers.c: add string_get_size() tests |
| Date | 2015-10-21 12:20 +0200 |
| Message-ID | <qlYEW-8lO-5@gated-at.bofh.it> (permalink) |
| References | <q9DZf-89b-3@gated-at.bofh.it> <q9DZf-89b-1@gated-at.bofh.it> |
| Organization | D03 |
On Thu, Sep 17 2015, Vitaly Kuznetsov <vkuznets@redhat.com> wrote:
> +
> +static __init void test_string_get_size(void)
> +{
> + test_string_get_size_one(16384, 512, STRING_UNITS_2, "8.00 MiB");
> + test_string_get_size_one(8192, 4096, STRING_UNITS_10, "32.7 MB");
This is a little late, but I just noticed that string_get_size with
STRING_UNITS_10, block size >= 1024 and sufficiently large size seems to
be broken. Yes, 32.7 MB is what it produces, but is it what it should
give? 8192*4096 = 33554432, so I'd expect "33.5 MB". It does give that
when we pass size=65536 and block_size=512; a combination with the same
product.
I think the problem is that the remainder coming out of the while
(blk_size >= divisor[units]) loop is dropped on the floor in the
subsequent size > exp case - but I'm too lazy right now to figure out how
to fix it.
Rasmus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
Re: [PATCH v5 2/2] lib/test-string_helpers.c: add string_get_size() tests Rasmus Villemoes <linux@rasmusvillemoes.dk> - 2015-10-21 12:20 +0200 Re: [PATCH v5 2/2] lib/test-string_helpers.c: add string_get_size() tests Vitaly Kuznetsov <vkuznets@redhat.com> - 2015-10-23 14:40 +0200
csiph-web