错误 #3926
历史记录
由 高 峰 更新于 3 个月 之前
之前如下加粗的代码修复,提交到5ghl_phy库的hl_dev分支;后来赖雪峰0801提交时,覆盖了此修改。此问题会导致DL任务拿到的dlsymbprocval.txant_addr_start 为随机地址,发送数据存储到随机地址上,踩踏导致各种异常不稳定问题。
正确代码如下:
#ifdef NRSINGLECELL     
        if((0  cell_mode)||(2  cell_mode)||( 4  cell_mode ) )//7D2U||2.5ms双周期
        {
#ifndef ECPRI
            if(0  flag_idx)
            {
                dlsymbprocval.txant_addr_start = LOAD_EX_W(&g_nr_tasks_inf_ptr->nr_cell_even_b7_tx_addr)
                                                + (g_dl_win_d_align32<<2);
                dlsymbprocval.txant_compidx_addr_start = LOAD_EX_W(&g_nr_tasks_inf_ptr->nr_cell_even_tx_compress_factor)
                                                + CPRI_DL_CPRIIDX_PRE_SIZE
                                                + (g_dl_win_d_align32>>3);
txant_addr_post7 = dlsymbprocval.txant_addr_start;
            }
            else
            {
                dlsymbprocval.txant_addr_start = LOAD_EX_W(&g_nr_tasks_inf_ptr->nr_cell_odd_b7_tx_addr)
                                                + (g_dl_win_d_align32<<2);
                dlsymbprocval.txant_compidx_addr_start = LOAD_EX_W(&g_nr_tasks_inf_ptr->nr_cell_odd_tx_compress_factor)
                                                + CPRI_DL_CPRIIDX_PRE_SIZE
                                                + (g_dl_win_d_align32>>3);
                txant_addr_post7 = dlsymbprocval.txant_addr_start;
            }