Re: [PATCH] Fix line too long warning

From: Joe Perches
Date: Sun Oct 29 2017 - 11:19:59 EST


On Sat, 2017-10-28 at 22:46 -0400, Kien Ha wrote:
> From fc52a98aca0c033f2c03fdc7e8f83ae49625675a Mon Sep 17 00:00:00 2001
> From: Kien Ha <kienha9922@xxxxxxxxx>
> Date: Fri, 27 Oct 2017 14:07:55 -0400
> Subject: [PATCH] Fix line too long warning
>
> Signed-off-by: Kien Ha <kienha9922@xxxxxxxxx>

Hi.

Instead of merely shutting up checkpatch warnings,
always try to improve the code instead.

Look at the flow of this cascaded if / else { if
and transform it to a simpler if ... else if ... else if ...

if (sta && sta->vht_cap.vht_supported) {
tcb_desc->hw_rate =
_rtl_get_vht_highest_n_rate(hw, sta);
} else {
if (sta && (sta->ht_cap.ht_supported)) {
tcb_desc->hw_rate =
_rtl_get_highest_n_rate(hw, sta);
} else {
if (rtlmac->mode == WIRELESS_MODE_B) {
tcb_desc->hw_rate =
rtlpriv->cfg->maps[RTL_RC_CCK_RATE11M];
} else {
tcb_desc->hw_rate =
rtlpriv->cfg->maps[RTL_RC_OFDM_RATE54M];
}
}
}


This block could be

tcb_desc->hw_rate =
sta && sta->vht_cap.vht_supported ?
_rtl_get_vht_highest_n_rate(hw, sta) :
sta && sta->ht_cap.ht_supported ?
_rtl_get_highest_n_rate(hw, sta) :
rtlmac->mode == WIRELESS_MODE_B ?
rtlpriv->cfg->maps[RTL_RC_CCK_RATE11M] :
rtlpriv->cfg->maps[RTL_RC_OFDM_RATE54M];

which seems easier to read.