lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <14834066-9820-a2cc-9c98-eebb9b89e7fe@lwfinger.net>
Date:   Wed, 17 May 2017 20:38:58 -0500
From:   Larry Finger <Larry.Finger@...inger.net>
To:     "Gustavo A. R. Silva" <garsilva@...eddedor.com>,
        Chaoming Li <chaoming_li@...lsil.com.cn>,
        Kalle Valo <kvalo@...eaurora.org>
Cc:     linux-wireless@...r.kernel.org, netdev@...r.kernel.org,
        linux-kernel@...r.kernel.org, Pkshih <pkshih@...ltek.com>
Subject: Re: [net-realtek-btcoexist] question about identical code for
 different branches

On 05/17/2017 04:52 PM, Gustavo A. R. Silva wrote:
> 
> Hello everybody,
> 
> While looking into Coverity ID 1362263 I ran into the following piece of code at 
> drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtcoutsrc.c:1000:
> 
> 1000void exhalbtc_set_ant_num(struct rtl_priv *rtlpriv, u8 type, u8 ant_num)
> 1001{
> 1002        if (BT_COEX_ANT_TYPE_PG == type) {
> 1003                gl_bt_coexist.board_info.pg_ant_num = ant_num;
> 1004                gl_bt_coexist.board_info.btdm_ant_num = ant_num;
> 1005                /* The antenna position:
> 1006                 * Main (default) or Aux for pgAntNum=2 && btdmAntNum =1.
> 1007                 * The antenna position should be determined by
> 1008                 * auto-detect mechanism.
> 1009                 * The following is assumed to main,
> 1010                 * and those must be modified
> 1011                 * if y auto-detect mechanism is ready
> 1012                 */
> 1013                if ((gl_bt_coexist.board_info.pg_ant_num == 2) &&
> 1014                    (gl_bt_coexist.board_info.btdm_ant_num == 1))
> 1015                        gl_bt_coexist.board_info.btdm_ant_pos =
> 1016                                                       
> BTC_ANTENNA_AT_MAIN_PORT;
> 1017                else
> 1018                        gl_bt_coexist.board_info.btdm_ant_pos =
> 1019                                                       
> BTC_ANTENNA_AT_MAIN_PORT;
> 1020        } else if (BT_COEX_ANT_TYPE_ANTDIV == type) {
> 1021                gl_bt_coexist.board_info.btdm_ant_num = ant_num;
> 1022                gl_bt_coexist.board_info.btdm_ant_pos =
> 1023                                                       
> BTC_ANTENNA_AT_MAIN_PORT;
> 1024        } else if (type == BT_COEX_ANT_TYPE_DETECTED) {
> 1025                gl_bt_coexist.board_info.btdm_ant_num = ant_num;
> 1026                if (rtlpriv->cfg->mod_params->ant_sel == 1)
> 1027                        gl_bt_coexist.board_info.btdm_ant_pos =
> 1028                                BTC_ANTENNA_AT_AUX_PORT;
> 1029                else
> 1030                        gl_bt_coexist.board_info.btdm_ant_pos =
> 1031                                BTC_ANTENNA_AT_MAIN_PORT;
> 1032        }
> 1033}
> 
> The issue is that lines of code 1015-1016 and 1018-1019 are identical for 
> different branches.
> 
> My question here is if one of those assignments should be modified, or the 
> entire _if_ statement replaced and the function refactored?
> 
> I'd really appreciate any comment on this.
> 
> Thank you!
> -- 
> Gustavo A. R. Silva

Gustavo,

Thanks for the notification. I will discuss with Realtek as to the proper fix.

Larry


Powered by blists - more mailing lists