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


Groups > linux.kernel > #1672138

Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c

From Michael J Dilmore <michael.j.dilmore@gmail.com>
Newsgroups linux.kernel
Subject Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c
Date 2017-06-22 01:10 +0200
Message-ID <tUWV4-4yk-7@gated-at.bofh.it> (permalink)
References (1 earlier) <tUVvX-3sm-1@gated-at.bofh.it> <tUVFD-3xy-11@gated-at.bofh.it> <tUVPk-3BI-17@gated-at.bofh.it> <tUWil-42Q-3@gated-at.bofh.it> <tUWs1-46Z-11@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 21/06/17 23:39, Jay Vosburgh wrote:
> Michael J Dilmore <michael.j.dilmore@gmail.com> wrote:
>
>> On 21/06/17 22:56, David Miller wrote:
>>
>>> From: Michael D <michael.j.dilmore@gmail.com>
>>> Date: Wed, 21 Jun 2017 22:41:07 +0100
>>>
>>>> I don't think you can stop it being dereferenced... you just need to
>>>> prevent an attacker from exploiting the null pointer dereference
>>>> vulnerability right? And this is done by returning the function right
>>>> away?
>>> What's all of this about an "attacker"?
>>>
>>> If there is a bug, we dererence a NULL pointer, and we should
>>> fix that bug.
>>>
>>> The BUG_ON() helps us see where the problem is while at the
>>> same time stopping the kernel before the NULL deref happens.
>> Ok this is starting to make sense now - went a bit off track but think my
>> general thinking is ok - i.e. if we return the function with an error code
>> before the dereference then this basically does the same thing as BUG_ON
>> but without crashing the kernel.
>>
>> Something like:
>>
>> if (WARN_ON(!new_active_slave) {
>>     netdev_dbg("Can't add new active slave - pointer null");
>>     return ERROR_CODE
>> }
> 	In general, yes, but in this case, the condition should be
> impossible to hit, so BUG_ON seems appropriate.
>
> 	If bond_slave_get_rtnl/rcu() returns NULL for an actual bonding
> slave, other code paths (bond_fill_slave_info, bond_handle_frame) will
> likely crash before getting to this one.
>
> 	-J
>
> ---
> 	-Jay Vosburgh, jay.vosburgh@canonical.com
That did cross my mind but I read that Linus that was quite averse to 
BUG_ON anywhere in the kernel so thought it might be have been worth doing.

Is it worth at least wrapping BUG_ON in an unlikely macro then?

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH] Convert BUG_ON to WARN_ON in bond_options.c Michael J Dilmore <michael.j.dilmore@gmail.com> - 2017-06-21 20:10 +0200
  Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c Jay Vosburgh <jay.vosburgh@canonical.com> - 2017-06-21 20:40 +0200
    Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c David Miller <davem@davemloft.net> - 2017-06-21 23:40 +0200
      Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c Michael D <michael.j.dilmore@gmail.com> - 2017-06-21 23:50 +0200
        Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c David Miller <davem@davemloft.net> - 2017-06-22 00:00 +0200
          Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c Michael J Dilmore <michael.j.dilmore@gmail.com> - 2017-06-22 00:30 +0200
            Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c Jay Vosburgh <jay.vosburgh@canonical.com> - 2017-06-22 00:40 +0200
              Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c Michael J Dilmore <michael.j.dilmore@gmail.com> - 2017-06-22 01:10 +0200
                Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c Michal Kubecek <mkubecek@suse.cz> - 2017-06-22 10:10 +0200
              Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c Bjørn Mork <bjorn@mork.no> - 2017-06-22 10:20 +0200
          Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c Jay Vosburgh <jay.vosburgh@canonical.com> - 2017-06-22 00:40 +0200
        Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c David Miller <davem@davemloft.net> - 2017-06-22 00:00 +0200
    Re: [PATCH] Convert BUG_ON to WARN_ON in bond_options.c Michael D <michael.j.dilmore@gmail.com> - 2017-06-21 23:40 +0200

csiph-web