l1sap: Correctly count RACH slots in calc_exprd_rach_frames()
We used a bogus multiplication factor of four when computing the number of expired RACH slots. While there are four RACH slots per block (i.e. 4 times more RACH received than normal MAC blocks), that multiplier doesn't apply here: We are calling this function per *frame* and not per *block*. So the maximum number of RACH slots per *frame* is (in most suual cases with a single CCCH) at maximum 1. Only some obscure configurations with multiple CCCHs in a single cell would render higher values. In any case, *blocks* never even enter this equation. This wrong multiplier resulted in rather weird RACH load reports to the BSC. Related: OS#3750 Change-Id: I6b14fd6e7819f9164fb4a09b432a9f419e3b6e5c
This commit is contained in:
parent
095654d361
commit
03e3fae639
|
@ -484,10 +484,7 @@ static unsigned int calc_exprd_rach_frames(struct gsm_bts *bts, uint32_t fn)
|
|||
rach_frames_expired = 1;
|
||||
}
|
||||
|
||||
/* Each Frame has room for 4 RACH slots, since RACH
|
||||
* slots are short enough to fit into a single radio
|
||||
* burst, so we need to multiply the final result by 4 */
|
||||
return rach_frames_expired * 4;
|
||||
return rach_frames_expired;
|
||||
}
|
||||
|
||||
/* time information received from bts model */
|
||||
|
|
Loading…
Reference in New Issue