lkml.org 
[lkml]   [2017]   [Nov]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 3.2 103/147] dccp: Fix compile warning in probe code.
    3.2.95-rc1 review patch.  If anyone has any objections, please let me know.

    ------------------

    From: "David S. Miller" <davem@davemloft.net>

    commit d984e6197ecd2babc1537f42dc1e676133005cda upstream.

    Commit 1386be55e32a3c5d8ef4a2b243c530a7b664c02c ("dccp: fix
    auto-loading of dccp(_probe)") fixed a bug but created a new
    compiler warning:

    net/dccp/probe.c: In function ‘dccpprobe_init’:
    net/dccp/probe.c:166:2: warning: the omitted middle operand in ?: will always be ‘true’, suggest explicit middle operand [-Wparentheses]

    try_then_request_module() is built for situations where the
    "existence" test is some lookup function that returns a non-NULL
    object on success, and with a reference count of some kind held.

    Here we're looking for a success return of zero from the jprobe
    registry.

    Instead of fighting the way try_then_request_module() works, simply
    open code what we want to happen in a local helper function.

    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    ---
    net/dccp/probe.c | 14 ++++++++++++--
    1 file changed, 12 insertions(+), 2 deletions(-)

    --- a/net/dccp/probe.c
    +++ b/net/dccp/probe.c
    @@ -152,6 +152,17 @@ static const struct file_operations dccp
    .llseek = noop_llseek,
    };

    +static __init int setup_jprobe(void)
    +{
    + int ret = register_jprobe(&dccp_send_probe);
    +
    + if (ret) {
    + request_module("dccp");
    + ret = register_jprobe(&dccp_send_probe);
    + }
    + return ret;
    +}
    +
    static __init int dccpprobe_init(void)
    {
    int ret = -ENOMEM;
    @@ -163,8 +174,7 @@ static __init int dccpprobe_init(void)
    if (!proc_net_fops_create(&init_net, procname, S_IRUSR, &dccpprobe_fops))
    goto err0;

    - try_then_request_module((ret = register_jprobe(&dccp_send_probe)) == 0,
    - "dccp");
    + ret = setup_jprobe();
    if (ret)
    goto err1;

    \
     
     \ /
      Last update: 2017-11-08 20:58    [W:4.063 / U:0.108 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site