Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1258906 > unrolled thread

[PATCH v3 0/4] lib/string_helpers: fix precision issues and introduce tests

Started byVitaly Kuznetsov <vkuznets@redhat.com>
First post2015-10-29 17:40 +0100
Last post2015-10-31 01:10 +0100
Articles 3 on this page of 23 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v3 0/4] lib/string_helpers: fix precision issues and introduce tests Vitaly Kuznetsov <vkuznets@redhat.com> - 2015-10-29 17:40 +0100
    [PATCH v3 4/4] lib/test-string_helpers.c: add string_get_size() tests Vitaly Kuznetsov <vkuznets@redhat.com> - 2015-10-29 17:40 +0100
      Re: [PATCH v3 4/4] lib/test-string_helpers.c: add string_get_size() tests Andy Shevchenko <andy.shevchenko@gmail.com> - 2015-10-29 22:40 +0100
    [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for string_get_size() interface Vitaly Kuznetsov <vkuznets@redhat.com> - 2015-10-29 17:40 +0100
      Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for  string_get_size() interface James Bottomley <jbottomley@odin.com> - 2015-10-29 23:30 +0100
        Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for string_get_size() interface Rasmus Villemoes <linux@rasmusvillemoes.dk> - 2015-10-30 00:20 +0100
          Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for string_get_size() interface Rasmus Villemoes <linux@rasmusvillemoes.dk> - 2015-10-30 00:30 +0100
          Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for  string_get_size() interface James Bottomley <jbottomley@odin.com> - 2015-10-30 04:40 +0100
        Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for string_get_size() interface Vitaly Kuznetsov <vkuznets@redhat.com> - 2015-10-30 11:50 +0100
          Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for  string_get_size() interface James Bottomley <jbottomley@odin.com> - 2015-10-31 01:30 +0100
            Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for string_get_size() interface Vitaly Kuznetsov <vkuznets@redhat.com> - 2015-11-02 17:00 +0100
              Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for  string_get_size() interface James Bottomley <jbottomley@odin.com> - 2015-11-03 04:50 +0100
                Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for string_get_size() interface Vitaly Kuznetsov <vkuznets@redhat.com> - 2015-11-03 14:20 +0100
                  Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for  string_get_size() interface James Bottomley <jbottomley@odin.com> - 2015-11-03 18:10 +0100
                    Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for string_get_size() interface Rasmus Villemoes <linux@rasmusvillemoes.dk> - 2015-11-03 22:00 +0100
                      Re: [PATCH v3 1/4] lib/string_helpers: change blk_size to u32 for  string_get_size() interface James Bottomley <jbottomley@odin.com> - 2015-11-03 22:20 +0100
    [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size() against blk_size=0 Vitaly Kuznetsov <vkuznets@redhat.com> - 2015-10-29 17:40 +0100
      Re: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size()  against blk_size=0 Andy Shevchenko <andy.shevchenko@gmail.com> - 2015-10-29 22:30 +0100
      Re: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size()  against blk_size=0 James Bottomley <jbottomley@odin.com> - 2015-10-30 00:10 +0100
        Re: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size()  against blk_size=0 Andy Shevchenko <andy.shevchenko@gmail.com> - 2015-10-30 00:40 +0100
          Re: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size()  against blk_size=0 James Bottomley <jbottomley@odin.com> - 2015-10-30 04:40 +0100
            Re: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size() against blk_size=0 Vitaly Kuznetsov <vkuznets@redhat.com> - 2015-10-30 11:50 +0100
              Re: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size()  against blk_size=0 James Bottomley <jbottomley@odin.com> - 2015-10-31 01:10 +0100

Page 2 of 2 — ← Prev page 1 [2]


#1259188 — Re: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size() against blk_size=0

FromJames Bottomley <jbottomley@odin.com>
Date2015-10-30 04:40 +0100
SubjectRe: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size() against blk_size=0
Message-ID<qp8HL-DT-1@gated-at.bofh.it>
In reply to#1259104
T24gRnJpLCAyMDE1LTEwLTMwIGF0IDAxOjMyICswMjAwLCBBbmR5IFNoZXZjaGVua28gd3JvdGU6
DQo+IE9uIEZyaSwgT2N0IDMwLCAyMDE1IGF0IDE6MDAgQU0sIEphbWVzIEJvdHRvbWxleSA8amJv
dHRvbWxleUBvZGluLmNvbT4gd3JvdGU6DQo+ID4gT24gVGh1LCAyMDE1LTEwLTI5IGF0IDE3OjMw
ICswMTAwLCBWaXRhbHkgS3V6bmV0c292IHdyb3RlOg0KPiA+PiBEaXZpc2lvbiBieSB6ZXJvIGhh
cHBlbnMgaWYgYmxrX3NpemU9MCBpcyBzdXBwbGllZCB0byBzdHJpbmdfZ2V0X3NpemUoKS4NCj4g
Pj4gQWRkIFdBUk5fT04oKSBhbmQgc2V0IHNpemUgdG8gMCB0byByZXBvcnQgJzAgQicuDQo+ID4+
DQo+ID4+IFNpZ25lZC1vZmYtYnk6IFZpdGFseSBLdXpuZXRzb3YgPHZrdXpuZXRzQHJlZGhhdC5j
b20+DQo+ID4+IC0tLQ0KPiA+PiAgbGliL3N0cmluZ19oZWxwZXJzLmMgfCA1ICsrKysrDQo+ID4+
ICAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspDQo+ID4+DQo+ID4+IGRpZmYgLS1naXQg
YS9saWIvc3RyaW5nX2hlbHBlcnMuYyBiL2xpYi9zdHJpbmdfaGVscGVycy5jDQo+ID4+IGluZGV4
IGY2YzI3ZGMuLmZmMzU3NWIgMTAwNjQ0DQo+ID4+IC0tLSBhL2xpYi9zdHJpbmdfaGVscGVycy5j
DQo+ID4+ICsrKyBiL2xpYi9zdHJpbmdfaGVscGVycy5jDQo+ID4+IEBAIC01MCw2ICs1MCwxMSBA
QCB2b2lkIHN0cmluZ19nZXRfc2l6ZSh1NjQgc2l6ZSwgdTMyIGJsa19zaXplLCBjb25zdCBlbnVt
IHN0cmluZ19zaXplX3VuaXRzIHVuaXRzLA0KPiA+Pg0KPiA+PiAgICAgICB0bXBbMF0gPSAnXDAn
Ow0KPiA+PiAgICAgICBpID0gMDsNCj4gPj4gKw0KPiA+PiArICAgICAvKiBDYWxsaW5nIHN0cmlu
Z19nZXRfc2l6ZSgpIHdpdGggYmxrX3NpemU9MCBpcyB3cm9uZyEgKi8NCj4gPj4gKyAgICAgaWYg
KFdBUk5fT04oIWJsa19zaXplKSkNCj4gPg0KPiA+IEdldCByaWQgb2YgdGhlIFdBUk5fT047IGl0
J3MgdGhlIHN0YW5kYXJkIHRoaW5nIHRvIGRvIGZvciBhIHBhcnRpYWxseQ0KPiA+IGNvbm5lY3Rl
ZCBkZXZpY2UuICBTZWVpbmcgemVybyBpcyBzdGFuZGFyZCBpbiBhIHdob2xlIHZhcmlldHkgb2YN
Cj4gPiBzaXR1YXRpb25zLiAgU0NTSSBzaGltcyB0aGUgemVybyBidXQgbW9zdCBvdGhlciBkcml2
ZXJzIGRvbid0Lg0KPiANCj4gRm9yICpibG9jayogc2l6ZT8gSXQgd2lsbCBjcmFzaCB0aGUga2Vy
bmVsLiBJJ3ZlIGNoZWNrZWQsIGl0IHdhc24ndA0KPiBjaGFuZ2VkIGZyb20gdGhlIGJlZ2lubmlu
ZyAoYjlmMjhkODYzNTk0KS4NCg0KVGhlIHN0YW5kYXJkIHNpZ25hbCBmb3IgYSBkcml2ZSBlcnJv
ciBpbiBjYXBhY2l0eSBpcyB6ZXJvIHNpemUgYW5kIHplcm8NCmJsb2NrIHNpemUuICBXZSBoYXZl
IHRvIHRha2UgdGhhdCBjYXNlIGFzIHN0YW5kYXJkIHdpdGhvdXQgZW1pdHRpbmcNCnNjYXJ5IHdh
cm5pbmdzLg0KDQpKYW1lcw0KDQo=
--
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/

[toc] | [prev] | [next] | [standalone]


#1259392 — Re: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size() against blk_size=0

FromVitaly Kuznetsov <vkuznets@redhat.com>
Date2015-10-30 11:50 +0100
SubjectRe: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size() against blk_size=0
Message-ID<qpfpU-4J3-31@gated-at.bofh.it>
In reply to#1259188
James Bottomley <jbottomley@odin.com> writes:

> On Fri, 2015-10-30 at 01:32 +0200, Andy Shevchenko wrote:
>> On Fri, Oct 30, 2015 at 1:00 AM, James Bottomley <jbottomley@odin.com> wrote:
>> > On Thu, 2015-10-29 at 17:30 +0100, Vitaly Kuznetsov wrote:
>> >> Division by zero happens if blk_size=0 is supplied to string_get_size().
>> >> Add WARN_ON() and set size to 0 to report '0 B'.
>> >>
>> >> Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
>> >> ---
>> >>  lib/string_helpers.c | 5 +++++
>> >>  1 file changed, 5 insertions(+)
>> >>
>> >> diff --git a/lib/string_helpers.c b/lib/string_helpers.c
>> >> index f6c27dc..ff3575b 100644
>> >> --- a/lib/string_helpers.c
>> >> +++ b/lib/string_helpers.c
>> >> @@ -50,6 +50,11 @@ void string_get_size(u64 size, u32 blk_size, const enum string_size_units units,
>> >>
>> >>       tmp[0] = '\0';
>> >>       i = 0;
>> >> +
>> >> +     /* Calling string_get_size() with blk_size=0 is wrong! */
>> >> +     if (WARN_ON(!blk_size))
>> >
>> > Get rid of the WARN_ON; it's the standard thing to do for a partially
>> > connected device.  Seeing zero is standard in a whole variety of
>> > situations.  SCSI shims the zero but most other drivers don't.
>> 
>> For *block* size? It will crash the kernel. I've checked, it wasn't
>> changed from the beginning (b9f28d863594).
>
> The standard signal for a drive error in capacity is zero size and zero
> block size.  We have to take that case as standard without emitting
> scary warnings.

Ok, but what if size != 0? Is WARN_ON() justified in this case?

-- 
  Vitaly
--
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/

[toc] | [prev] | [next] | [standalone]


#1259870 — Re: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size() against blk_size=0

FromJames Bottomley <jbottomley@odin.com>
Date2015-10-31 01:10 +0100
SubjectRe: [PATCH v3 2/4] lib/string_helpers.c: protect string_get_size() against blk_size=0
Message-ID<qprU5-482-7@gated-at.bofh.it>
In reply to#1259392
T24gRnJpLCAyMDE1LTEwLTMwIGF0IDExOjQxICswMTAwLCBWaXRhbHkgS3V6bmV0c292IHdyb3Rl
Og0KPiBKYW1lcyBCb3R0b21sZXkgPGpib3R0b21sZXlAb2Rpbi5jb20+IHdyaXRlczoNCj4gDQo+
ID4gT24gRnJpLCAyMDE1LTEwLTMwIGF0IDAxOjMyICswMjAwLCBBbmR5IFNoZXZjaGVua28gd3Jv
dGU6DQo+ID4+IE9uIEZyaSwgT2N0IDMwLCAyMDE1IGF0IDE6MDAgQU0sIEphbWVzIEJvdHRvbWxl
eSA8amJvdHRvbWxleUBvZGluLmNvbT4gd3JvdGU6DQo+ID4+ID4gT24gVGh1LCAyMDE1LTEwLTI5
IGF0IDE3OjMwICswMTAwLCBWaXRhbHkgS3V6bmV0c292IHdyb3RlOg0KPiA+PiA+PiBEaXZpc2lv
biBieSB6ZXJvIGhhcHBlbnMgaWYgYmxrX3NpemU9MCBpcyBzdXBwbGllZCB0byBzdHJpbmdfZ2V0
X3NpemUoKS4NCj4gPj4gPj4gQWRkIFdBUk5fT04oKSBhbmQgc2V0IHNpemUgdG8gMCB0byByZXBv
cnQgJzAgQicuDQo+ID4+ID4+DQo+ID4+ID4+IFNpZ25lZC1vZmYtYnk6IFZpdGFseSBLdXpuZXRz
b3YgPHZrdXpuZXRzQHJlZGhhdC5jb20+DQo+ID4+ID4+IC0tLQ0KPiA+PiA+PiAgbGliL3N0cmlu
Z19oZWxwZXJzLmMgfCA1ICsrKysrDQo+ID4+ID4+ICAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRp
b25zKCspDQo+ID4+ID4+DQo+ID4+ID4+IGRpZmYgLS1naXQgYS9saWIvc3RyaW5nX2hlbHBlcnMu
YyBiL2xpYi9zdHJpbmdfaGVscGVycy5jDQo+ID4+ID4+IGluZGV4IGY2YzI3ZGMuLmZmMzU3NWIg
MTAwNjQ0DQo+ID4+ID4+IC0tLSBhL2xpYi9zdHJpbmdfaGVscGVycy5jDQo+ID4+ID4+ICsrKyBi
L2xpYi9zdHJpbmdfaGVscGVycy5jDQo+ID4+ID4+IEBAIC01MCw2ICs1MCwxMSBAQCB2b2lkIHN0
cmluZ19nZXRfc2l6ZSh1NjQgc2l6ZSwgdTMyIGJsa19zaXplLCBjb25zdCBlbnVtIHN0cmluZ19z
aXplX3VuaXRzIHVuaXRzLA0KPiA+PiA+Pg0KPiA+PiA+PiAgICAgICB0bXBbMF0gPSAnXDAnOw0K
PiA+PiA+PiAgICAgICBpID0gMDsNCj4gPj4gPj4gKw0KPiA+PiA+PiArICAgICAvKiBDYWxsaW5n
IHN0cmluZ19nZXRfc2l6ZSgpIHdpdGggYmxrX3NpemU9MCBpcyB3cm9uZyEgKi8NCj4gPj4gPj4g
KyAgICAgaWYgKFdBUk5fT04oIWJsa19zaXplKSkNCj4gPj4gPg0KPiA+PiA+IEdldCByaWQgb2Yg
dGhlIFdBUk5fT047IGl0J3MgdGhlIHN0YW5kYXJkIHRoaW5nIHRvIGRvIGZvciBhIHBhcnRpYWxs
eQ0KPiA+PiA+IGNvbm5lY3RlZCBkZXZpY2UuICBTZWVpbmcgemVybyBpcyBzdGFuZGFyZCBpbiBh
IHdob2xlIHZhcmlldHkgb2YNCj4gPj4gPiBzaXR1YXRpb25zLiAgU0NTSSBzaGltcyB0aGUgemVy
byBidXQgbW9zdCBvdGhlciBkcml2ZXJzIGRvbid0Lg0KPiA+PiANCj4gPj4gRm9yICpibG9jayog
c2l6ZT8gSXQgd2lsbCBjcmFzaCB0aGUga2VybmVsLiBJJ3ZlIGNoZWNrZWQsIGl0IHdhc24ndA0K
PiA+PiBjaGFuZ2VkIGZyb20gdGhlIGJlZ2lubmluZyAoYjlmMjhkODYzNTk0KS4NCj4gPg0KPiA+
IFRoZSBzdGFuZGFyZCBzaWduYWwgZm9yIGEgZHJpdmUgZXJyb3IgaW4gY2FwYWNpdHkgaXMgemVy
byBzaXplIGFuZCB6ZXJvDQo+ID4gYmxvY2sgc2l6ZS4gIFdlIGhhdmUgdG8gdGFrZSB0aGF0IGNh
c2UgYXMgc3RhbmRhcmQgd2l0aG91dCBlbWl0dGluZw0KPiA+IHNjYXJ5IHdhcm5pbmdzLg0KPiAN
Cj4gT2ssIGJ1dCB3aGF0IGlmIHNpemUgIT0gMD8gSXMgV0FSTl9PTigpIGp1c3RpZmllZCBpbiB0
aGlzIGNhc2U/DQoNCkl0J3MgYW4gYXJpdGhtZW50aWMgcm91dGluZSB3aG9zZSBqb2IgaXMgdG8g
bXVsdGlwbHkgdHdvIG51bWJlcnMsIG5vdA0Kc2Vjb25kIGd1ZXNzIHRoZSBzdWJzeXN0ZW0gdGhh
dCBnYXZlIGl0IHRoZSBudW1iZXJzLiAgSnVzdCBvbiBnZW5lcmFsDQphcmNoaXRlY3R1cmFsIHBy
aW5jaXBsZXMgdGhlIG9ubHkgdGltZSBpdCdzIGFsbG93ZWQgdG8gZHVtcCBhIHN0YWNrDQp0cmFj
ZSB3aXRob3V0IGNvbmZ1c2luZyBwZW9wbGUgaXMgd2hlbiB0aGUgYXJpdGhtZXRpYyBvcGVyYXRp
b24gaXQgaGFzDQpiZWVuIGFza2VkIHRvIGRvIHdvdWxkIHByb2R1Y2UgYW4gaWxsZWdhbCByZXN1
bHQgKHdoaWNoIGZvciB0d28gc2l4dHkNCmZvdXIgYml0IG51bWJlcnMgbXVsdGlwbHlpbmcgdG8g
YSAxMjggYml0IG9uZSBpcyBuZXZlcikuDQoNCkphbWVzDQoNCg==
--
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/

[toc] | [prev] | [standalone]


Page 2 of 2 — ← Prev page 1 [2]

Back to top | Article view | linux.kernel


csiph-web