Re: [RESUBMIT Patch 1/1] net: replace if()/BUG with BUG_ON

From: Frans Klaver
Date: Wed Jun 17 2015 - 04:30:27 EST


On Wed, Jun 17, 2015 at 10:26 AM, Alexander Drozdov
<al.drozdov@xxxxxxxxx> wrote:
> On Wed, 17 Jun 2015 09:36:11 +0200, Frans Klaver wrote:
>>
>> On Wed, Jun 17, 2015 at 6:36 AM, Maninder Singh <maninder1.s@xxxxxxxxxxx>
>> wrote:
>>>
>>> Use BUG_ON(condition) instead of if(condition)/BUG() .
>>>
>>> Signed-off-by: Maninder Singh <maninder1.s@xxxxxxxxxxx>
>>> Reviewed-by: Akhilesh Kumar <akhilesh.k@xxxxxxxxxxx>
>>> ---
>>> net/packet/af_packet.c | 3 +--
>>> 1 files changed, 1 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
>>> index b5989c6..c91d405 100644
>>> --- a/net/packet/af_packet.c
>>> +++ b/net/packet/af_packet.c
>>> @@ -547,8 +547,7 @@ static void prb_setup_retire_blk_timer(struct
>>> packet_sock *po, int tx_ring)
>>> {
>>> struct tpacket_kbdq_core *pkc;
>>>
>>> - if (tx_ring)
>>> - BUG();
>>> + BUG_ON(tx_ring);
>>>
>>> pkc = tx_ring ? GET_PBDQC_FROM_RB(&po->tx_ring) :
>>> GET_PBDQC_FROM_RB(&po->rx_ring);
>>
>>
>> I don't get this. We're not allowed to be using tx_ring, but we can
>> and do handle it? Does that still warrant a BUG() or BUG_ON()? It's
>> been in since the function introduction[0]. Can somebody explain?
>
>
> TPACKET_V3 doesn't support tx for now, so the function is actualy never
> called with non-zero tx_ring. I think there were plans to add the
> support. But retire timer for tx will not be needed anyway as it is
> up to user to fill the ring buffer.

Ah, that explains something. If retire timer is not going to be needed
for tx, wouldn't it be better to remove the whole tx_ring handling
from this function altogether, rather than changing the BUG()?

Thanks,
Frans
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/