Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1564333 > unrolled thread
| Started by | SF Markus Elfring <elfring@users.sourceforge.net> |
|---|---|
| First post | 2017-01-22 09:40 +0100 |
| Last post | 2017-01-23 16:20 +0100 |
| Articles | 6 — 3 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH 1/5] blk-throttle: Move three assignments for the variable "ret" in tg_set_max() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-01-22 09:40 +0100
Re: [PATCH 1/5] blk-throttle: Move three assignments for the variable "ret" in tg_set_max() Johannes Thumshirn <jthumshirn@suse.de> - 2017-01-23 10:20 +0100
Re: [PATCH 1/5] blk-throttle: Move three assignments for the variable "ret" in tg_set_max() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-01-23 11:10 +0100
Re: [PATCH 1/5] blk-throttle: Move three assignments for the variable "ret" in tg_set_max() Johannes Thumshirn <jthumshirn@suse.de> - 2017-01-23 12:50 +0100
Re: blk-throttle: Move three assignments for the variable "ret" in tg_set_max() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-01-23 13:10 +0100
Re: blk-throttle: Move three assignments for the variable "ret" in tg_set_max() Jens Axboe <axboe@kernel.dk> - 2017-01-23 16:20 +0100
| From | SF Markus Elfring <elfring@users.sourceforge.net> |
|---|---|
| Date | 2017-01-22 09:40 +0100 |
| Subject | [PATCH 1/5] blk-throttle: Move three assignments for the variable "ret" in tg_set_max() |
| Message-ID | <t2lQS-6Vp-17@gated-at.bofh.it> |
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Sat, 21 Jan 2017 21:23:06 +0100
A local variable was set to an error code before a concrete error situation
was detected. Thus move the corresponding assignments into if branches
to indicate a software failure there.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
block/blk-throttle.c | 23 +++++++++++++----------
1 file changed, 13 insertions(+), 10 deletions(-)
diff --git a/block/blk-throttle.c b/block/blk-throttle.c
index 6f4c96e5f86b..51d112deb02e 100644
--- a/block/blk-throttle.c
+++ b/block/blk-throttle.c
@@ -1327,27 +1327,30 @@ static ssize_t tg_set_max(struct kernfs_open_file *of,
break;
ctx.body += len;
- ret = -EINVAL;
p = tok;
strsep(&p, "=");
- if (!p || (sscanf(p, "%llu", &val) != 1 && strcmp(p, "max")))
+ if (!p || (sscanf(p, "%llu", &val) != 1 && strcmp(p, "max"))) {
+ ret = -EINVAL;
goto out_finish;
+ }
- ret = -ERANGE;
- if (!val)
+ if (!val) {
+ ret = -ERANGE;
goto out_finish;
+ }
- ret = -EINVAL;
- if (!strcmp(tok, "rbps"))
+ if (!strcmp(tok, "rbps")) {
v[0] = val;
- else if (!strcmp(tok, "wbps"))
+ } else if (!strcmp(tok, "wbps")) {
v[1] = val;
- else if (!strcmp(tok, "riops"))
+ } else if (!strcmp(tok, "riops")) {
v[2] = min_t(u64, val, UINT_MAX);
- else if (!strcmp(tok, "wiops"))
+ } else if (!strcmp(tok, "wiops")) {
v[3] = min_t(u64, val, UINT_MAX);
- else
+ } else {
+ ret = -EINVAL;
goto out_finish;
+ }
}
tg->bps[READ] = v[0];
--
2.11.0
[toc] | [next] | [standalone]
| From | Johannes Thumshirn <jthumshirn@suse.de> |
|---|---|
| Date | 2017-01-23 10:20 +0100 |
| Subject | Re: [PATCH 1/5] blk-throttle: Move three assignments for the variable "ret" in tg_set_max() |
| Message-ID | <t2IX8-4Ae-19@gated-at.bofh.it> |
| In reply to | #1564333 |
On Sun, Jan 22, 2017 at 09:31:29AM +0100, SF Markus Elfring wrote:
> From: Markus Elfring <elfring@users.sourceforge.net>
> Date: Sat, 21 Jan 2017 21:23:06 +0100
>
> A local variable was set to an error code before a concrete error situation
> was detected. Thus move the corresponding assignments into if branches
> to indicate a software failure there.
>
> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
> ---
> block/blk-throttle.c | 23 +++++++++++++----------
> 1 file changed, 13 insertions(+), 10 deletions(-)
>
> diff --git a/block/blk-throttle.c b/block/blk-throttle.c
> index 6f4c96e5f86b..51d112deb02e 100644
> --- a/block/blk-throttle.c
> +++ b/block/blk-throttle.c
> @@ -1327,27 +1327,30 @@ static ssize_t tg_set_max(struct kernfs_open_file *of,
> break;
> ctx.body += len;
>
> - ret = -EINVAL;
> p = tok;
> strsep(&p, "=");
> - if (!p || (sscanf(p, "%llu", &val) != 1 && strcmp(p, "max")))
> + if (!p || (sscanf(p, "%llu", &val) != 1 && strcmp(p, "max"))) {
> + ret = -EINVAL;
> goto out_finish;
> + }
Sorry, I don't like this patch. We know the next error if we encounter one
will be EINVAL until we change it. Your patch doesn't introduce a functual
change and doesn't improve readability, so I don't really see a point for it.
Byte,
Johannes
--
Johannes Thumshirn Storage
jthumshirn@suse.de +49 911 74053 689
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)
Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850
[toc] | [prev] | [next] | [standalone]
| From | SF Markus Elfring <elfring@users.sourceforge.net> |
|---|---|
| Date | 2017-01-23 11:10 +0100 |
| Message-ID | <t2JJw-56E-21@gated-at.bofh.it> |
| In reply to | #1564800 |
>> @@ -1327,27 +1327,30 @@ static ssize_t tg_set_max(struct kernfs_open_file *of,
>> break;
>> ctx.body += len;
>>
>> - ret = -EINVAL;
>> p = tok;
>> strsep(&p, "=");
>> - if (!p || (sscanf(p, "%llu", &val) != 1 && strcmp(p, "max")))
>> + if (!p || (sscanf(p, "%llu", &val) != 1 && strcmp(p, "max"))) {
>> + ret = -EINVAL;
>> goto out_finish;
>> + }
>
> Sorry, I don't like this patch. We know the next error if we encounter one
> will be EINVAL until we change it.
Thanks for your constructive feedback.
> Your patch doesn't introduce a functual change and doesn't improve readability,
> so I don't really see a point for it.
We have got different preferences for the placement of error code settings.
Do you care about run time changes there?
Regards,
Markus
[toc] | [prev] | [next] | [standalone]
| From | Johannes Thumshirn <jthumshirn@suse.de> |
|---|---|
| Date | 2017-01-23 12:50 +0100 |
| Subject | Re: [PATCH 1/5] blk-throttle: Move three assignments for the variable "ret" in tg_set_max() |
| Message-ID | <t2Lii-5UD-15@gated-at.bofh.it> |
| In reply to | #1564840 |
On Mon, Jan 23, 2017 at 11:00:15AM +0100, SF Markus Elfring wrote:
> >> @@ -1327,27 +1327,30 @@ static ssize_t tg_set_max(struct kernfs_open_file *of,
> >> break;
> >> ctx.body += len;
> >>
> >> - ret = -EINVAL;
> >> p = tok;
> >> strsep(&p, "=");
> >> - if (!p || (sscanf(p, "%llu", &val) != 1 && strcmp(p, "max")))
> >> + if (!p || (sscanf(p, "%llu", &val) != 1 && strcmp(p, "max"))) {
> >> + ret = -EINVAL;
> >> goto out_finish;
> >> + }
> >
> > Sorry, I don't like this patch. We know the next error if we encounter one
> > will be EINVAL until we change it.
>
> Thanks for your constructive feedback.
>
>
> > Your patch doesn't introduce a functual change and doesn't improve readability,
> > so I don't really see a point for it.
>
> We have got different preferences for the placement of error code settings.
Yes we do, so what's the point? Both are OK. Please don't go down that road it
opens so much potential for needless bikeshedding and waste all of our
(including your) time.
Thanks,
Johannes
--
Johannes Thumshirn Storage
jthumshirn@suse.de +49 911 74053 689
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)
Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850
[toc] | [prev] | [next] | [standalone]
| From | SF Markus Elfring <elfring@users.sourceforge.net> |
|---|---|
| Date | 2017-01-23 13:10 +0100 |
| Subject | Re: blk-throttle: Move three assignments for the variable "ret" in tg_set_max() |
| Message-ID | <t2LBE-6hm-13@gated-at.bofh.it> |
| In reply to | #1564905 |
>> We have got different preferences for the placement of error code settings. > Yes we do, so what's the point? Both are OK. Can a function implementation be executed a bit faster in the case that error codes will usually only matter if they would be set after a concrete software failure > Please don't go down that road it opens so much potential for needless bikeshedding > and waste all of our (including your) time. I would appreciate to clarify involved run time consequences a bit more. Regards, Markus
[toc] | [prev] | [next] | [standalone]
| From | Jens Axboe <axboe@kernel.dk> |
|---|---|
| Date | 2017-01-23 16:20 +0100 |
| Subject | Re: blk-throttle: Move three assignments for the variable "ret" in tg_set_max() |
| Message-ID | <t2Ozw-84K-17@gated-at.bofh.it> |
| In reply to | #1564924 |
On 01/23/2017 05:06 AM, SF Markus Elfring wrote: >>> We have got different preferences for the placement of error code settings. >> Yes we do, so what's the point? Both are OK. > > Can a function implementation be executed a bit faster in the case > that error codes will usually only matter if they would be set after > a concrete software failure Don't turn this into a troll fest. Maintainability trumps performance. Every time. See previous email for reasoning for that. >> Please don't go down that road it opens so much potential for needless bikeshedding >> and waste all of our (including your) time. > > I would appreciate to clarify involved run time consequences a bit more. How about you go and benchmark the before and after, and present some compelling evidence based on those tests for why the change should be made? The onus is on the submitter here, not the reviewer. As I said in the previous email, don't bother sending these types of patches for the block layer again. They are just going to be ignored. -- Jens Axboe
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web