Thread (4 messages) flat view 4 messages, 2 authors, 2017-09-05

Re: [PATCH] radix-tree: must check __radix_tree_preload() return value

From: Eric Dumazet <hidden>
Date: 2017-09-05 18:34:51
Also in: lkml

On Tue, 2017-09-05 at 11:07 -0700, Linus Torvalds wrote:
On Tue, Sep 5, 2017 at 10:59 AM, Eric Dumazet [off-list ref] wrote:
quoted
@@ -2104,7 +2104,10 @@ EXPORT_SYMBOL(radix_tree_tagged);
  */
 void idr_preload(gfp_t gfp_mask)
 {
-       __radix_tree_preload(gfp_mask, IDR_PRELOAD_SIZE);
+       int ret = __radix_tree_preload(gfp_mask, IDR_PRELOAD_SIZE);
+
+       if (ret)
+               preempt_disable();
 }
 EXPORT_SYMBOL(idr_preload);
Is there a reason for the "ret" variable that is entirely mis-named,
since it's never actually used as a return value?

(Sure. it's the return value of a function, but that is entirely
useless and pointless information, and adds no value. We should name
variables by the data they contain or how they are used, not by "it
was the return value of a function").

In other words, why isn't this just

        if (__radix_tree_preload(..))
                preempt_disable();

which is shorter and clearer and not confusing?

...
Same issue, but this time strengthened by an additional "why doesn't
this just use that idr_preload function then?" question..
Yep, I will send a v2, thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help