diff --git a/src/osmo-bsc/acc.c b/src/osmo-bsc/acc.c index 74ebe9952..06f96c625 100644 --- a/src/osmo-bsc/acc.c +++ b/src/osmo-bsc/acc.c @@ -222,18 +222,28 @@ void get_subset_limits(struct acc_mgr *acc_mgr, uint8_t *first, uint8_t *last) * Assumption: The permanent set is bigger than the current selected subset */ bool is_wrapped = false; uint8_t i = (lowest + 1) % 10; - do { - if (!acc_is_permanently_barred(acc_mgr->bts, i) && - !(acc_mgr->allowed_subset_mask & (1 << i))) { - is_wrapped = true; - break; - } - i = (i + 1 ) % 10; - } while (i != (highest + 1) % 10); + if (lowest != highest) { /* len(allowed_subset_mask) > 1 */ + i = (lowest + 1) % 10; + do { + if (!acc_is_permanently_barred(acc_mgr->bts, i) && + !(acc_mgr->allowed_subset_mask & (1 << i))) { + is_wrapped = true; + break; + } + i = (i + 1) % 10; + } while (i != (highest + 1) % 10); + } if (is_wrapped) { - *first = highest; - *last = lowest; + /* Assumption: "i" is pointing to the lowest dynamically barred ACC. + Example: 11 1000 00>0<1. */ + *last = i - 1; + while (acc_is_permanently_barred(acc_mgr->bts, *last)) + *last -= 1; + *first = i + 1; + while (acc_is_permanently_barred(acc_mgr->bts, *first) || + !(acc_mgr->allowed_subset_mask & (1 << (*first)))) + *first += 1; } else { *first = lowest; *last = highest; diff --git a/tests/acc/acc_test.ok b/tests/acc/acc_test.ok index 431498a7f..afe4ef073 100644 --- a/tests/acc/acc_test.ok +++ b/tests/acc/acc_test.ok @@ -356,13 +356,13 @@ sys={2.000000}: select() (bts=0) ACC: rotate ACC allowed active subset 0x1e0 -> 0x1c1 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x3e, allowed: 0 6 7 8 sys={4.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x0c3 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x3c, allowed: 0 1 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x183 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x7c, allowed: 0 1 7 8 sys={6.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0c3 -> 0x047 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xb8, allowed: 0 1 2 6 +(bts=0) ACC: rotate ACC allowed active subset 0x183 -> 0x107 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf8, allowed: 0 1 2 8 sys={8.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x047 -> 0x00f (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) +(bts=0) ACC: rotate ACC allowed active subset 0x107 -> 0x00f (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xf0, allowed: 0 1 2 3 sys={10.000000}: select() (bts=0) ACC: rotate ACC allowed active subset 0x00f -> 0x01e (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) @@ -383,13 +383,13 @@ sys={20.000000}: select() (bts=0) ACC: rotate ACC allowed active subset 0x1e0 -> 0x1c1 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x3e, allowed: 0 6 7 8 sys={22.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x0c3 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x3c, allowed: 0 1 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x183 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x7c, allowed: 0 1 7 8 sys={24.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0c3 -> 0x047 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xb8, allowed: 0 1 2 6 +(bts=0) ACC: rotate ACC allowed active subset 0x183 -> 0x107 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf8, allowed: 0 1 2 8 sys={26.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x047 -> 0x00f (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) +(bts=0) ACC: rotate ACC allowed active subset 0x107 -> 0x00f (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xf0, allowed: 0 1 2 3 sys={28.000000}: select() (bts=0) ACC: rotate ACC allowed active subset 0x00f -> 0x01e (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) @@ -410,8 +410,8 @@ sys={38.000000}: select() (bts=0) ACC: rotate ACC allowed active subset 0x1e0 -> 0x1c1 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x3e, allowed: 0 6 7 8 sys={40.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x0c3 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x3c, allowed: 0 1 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x183 (active_len=4, ramp_len=10, adm_len=4, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x7c, allowed: 0 1 7 8 BTS deallocated OK in test_acc_mgr_rotate() ===test_acc_ramp=== (bts=0) ACC: New ACC allowed subset 0x3ff (active_len=10, ramp_len=10, adm_len=10, perm_len=10, rotation=off) @@ -536,49 +536,49 @@ sys={750.000000}: select() (bts=0) ACC: update ACC allowed active subset 0x1c0 -> 0x1c1 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x3e, allowed: 0 6 7 8 sys={850.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x0c3 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x3c, allowed: 0 1 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x183 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x7c, allowed: 0 1 7 8 sys={950.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0c3 -> 0x047 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xb8, allowed: 0 1 2 6 +(bts=0) ACC: rotate ACC allowed active subset 0x183 -> 0x107 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf8, allowed: 0 1 2 8 sys={1000.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x047 -> 0x0c7 (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x38, allowed: 0 1 2 6 7 +(bts=0) ACC: update ACC allowed active subset 0x107 -> 0x10f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf0, allowed: 0 1 2 3 8 sys={1100.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0c7 -> 0x04f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xb0, allowed: 0 1 2 3 6 -sys={1200.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x04f -> 0x01f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: rotate ACC allowed active subset 0x10f -> 0x01f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xe0, allowed: 0 1 2 3 4 +sys={1200.000000}: select() +(bts=0) ACC: rotate ACC allowed active subset 0x01f -> 0x03e (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0xc1, allowed: 1 2 3 4 5 sys={1250.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x01f -> 0x03f (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xc0, allowed: 0 1 2 3 4 5 -sys={1350.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x03f -> 0x07e (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x03e -> 0x07e (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0x81, allowed: 1 2 3 4 5 6 -sys={1450.000000}: select() +sys={1350.000000}: select() (bts=0) ACC: rotate ACC allowed active subset 0x07e -> 0x0fc (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0x03, allowed: 2 3 4 5 6 7 +sys={1450.000000}: select() +(bts=0) ACC: rotate ACC allowed active subset 0x0fc -> 0x1f8 (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x07, allowed: 3 4 5 6 7 8 sys={1500.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x0fc -> 0x1fc (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x03, allowed: 2 3 4 5 6 7 8 -sys={1600.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1fc -> 0x1f9 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x1f8 -> 0x1f9 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x06, allowed: 0 3 4 5 6 7 8 +sys={1600.000000}: select() +(bts=0) ACC: rotate ACC allowed active subset 0x1f9 -> 0x1f3 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x0c, allowed: 0 1 4 5 6 7 8 sys={1700.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1f9 -> 0x0fb (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x04, allowed: 0 1 3 4 5 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1f3 -> 0x1e7 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x18, allowed: 0 1 2 5 6 7 8 sys={1750.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x0fb -> 0x1fb (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x04, allowed: 0 1 3 4 5 6 7 8 +(bts=0) ACC: update ACC allowed active subset 0x1e7 -> 0x1ef (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x10, allowed: 0 1 2 3 5 6 7 8 sys={1850.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1fb -> 0x0ff (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x00, allowed: 0 1 2 3 4 5 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1ef -> 0x1df (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x20, allowed: 0 1 2 3 4 6 7 8 sys={1950.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0ff -> 0x1fe (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x01, allowed: 1 2 3 4 5 6 7 8 +(bts=0) ACC: rotate ACC allowed active subset 0x1df -> 0x1bf (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x40, allowed: 0 1 2 3 4 5 7 8 sys={2000.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x1fe -> 0x1ff (active_len=9, ramp_len=9, adm_len=10, perm_len=9, rotation=off) +(bts=0) ACC: update ACC allowed active subset 0x1bf -> 0x1ff (active_len=9, ramp_len=9, adm_len=10, perm_len=9, rotation=off) pcu_info_update(): t2=0x02 t3=0x00, allowed: 0 1 2 3 4 5 6 7 8 sys={2250.000000}: select() (bts=0) ACC: update ACC allowed active subset 0x1ff -> 0x1ff (active_len=9, ramp_len=10, adm_len=10, perm_len=9, rotation=off) @@ -625,49 +625,49 @@ sys={750.000000}: select() (bts=0) ACC: update ACC allowed active subset 0x1c0 -> 0x1c1 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x3e, allowed: 0 6 7 8 sys={850.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x0c3 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x3c, allowed: 0 1 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x183 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x7c, allowed: 0 1 7 8 sys={950.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0c3 -> 0x047 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xb8, allowed: 0 1 2 6 +(bts=0) ACC: rotate ACC allowed active subset 0x183 -> 0x107 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf8, allowed: 0 1 2 8 sys={1000.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x047 -> 0x0c7 (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x38, allowed: 0 1 2 6 7 +(bts=0) ACC: update ACC allowed active subset 0x107 -> 0x10f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf0, allowed: 0 1 2 3 8 sys={1100.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0c7 -> 0x04f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xb0, allowed: 0 1 2 3 6 -sys={1200.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x04f -> 0x01f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: rotate ACC allowed active subset 0x10f -> 0x01f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xe0, allowed: 0 1 2 3 4 +sys={1200.000000}: select() +(bts=0) ACC: rotate ACC allowed active subset 0x01f -> 0x03e (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0xc1, allowed: 1 2 3 4 5 sys={1250.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x01f -> 0x03f (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xc0, allowed: 0 1 2 3 4 5 -sys={1350.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x03f -> 0x07e (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x03e -> 0x07e (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0x81, allowed: 1 2 3 4 5 6 -sys={1450.000000}: select() +sys={1350.000000}: select() (bts=0) ACC: rotate ACC allowed active subset 0x07e -> 0x0fc (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0x03, allowed: 2 3 4 5 6 7 +sys={1450.000000}: select() +(bts=0) ACC: rotate ACC allowed active subset 0x0fc -> 0x1f8 (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x07, allowed: 3 4 5 6 7 8 sys={1500.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x0fc -> 0x1fc (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x03, allowed: 2 3 4 5 6 7 8 -sys={1600.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1fc -> 0x1f9 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x1f8 -> 0x1f9 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x06, allowed: 0 3 4 5 6 7 8 +sys={1600.000000}: select() +(bts=0) ACC: rotate ACC allowed active subset 0x1f9 -> 0x1f3 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x0c, allowed: 0 1 4 5 6 7 8 sys={1700.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1f9 -> 0x0fb (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x04, allowed: 0 1 3 4 5 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1f3 -> 0x1e7 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x18, allowed: 0 1 2 5 6 7 8 sys={1750.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x0fb -> 0x1fb (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x04, allowed: 0 1 3 4 5 6 7 8 +(bts=0) ACC: update ACC allowed active subset 0x1e7 -> 0x1ef (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x10, allowed: 0 1 2 3 5 6 7 8 sys={1850.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1fb -> 0x0ff (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x00, allowed: 0 1 2 3 4 5 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1ef -> 0x1df (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x20, allowed: 0 1 2 3 4 6 7 8 sys={1950.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0ff -> 0x1fe (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x01, allowed: 1 2 3 4 5 6 7 8 +(bts=0) ACC: rotate ACC allowed active subset 0x1df -> 0x1bf (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x40, allowed: 0 1 2 3 4 5 7 8 sys={2000.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x1fe -> 0x1ff (active_len=9, ramp_len=9, adm_len=10, perm_len=9, rotation=off) +(bts=0) ACC: update ACC allowed active subset 0x1bf -> 0x1ff (active_len=9, ramp_len=9, adm_len=10, perm_len=9, rotation=off) pcu_info_update(): t2=0x02 t3=0x00, allowed: 0 1 2 3 4 5 6 7 8 sys={2250.000000}: select() (bts=0) ACC: update ACC allowed active subset 0x1ff -> 0x1ff (active_len=9, ramp_len=10, adm_len=10, perm_len=9, rotation=off) @@ -714,49 +714,49 @@ sys={750.000000}: select() (bts=0) ACC: update ACC allowed active subset 0x1c0 -> 0x1c1 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x3e, allowed: 0 6 7 8 sys={850.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x0c3 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x3c, allowed: 0 1 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x183 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x7c, allowed: 0 1 7 8 sys={950.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0c3 -> 0x047 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xb8, allowed: 0 1 2 6 +(bts=0) ACC: rotate ACC allowed active subset 0x183 -> 0x107 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf8, allowed: 0 1 2 8 sys={1000.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x047 -> 0x0c7 (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x38, allowed: 0 1 2 6 7 +(bts=0) ACC: update ACC allowed active subset 0x107 -> 0x10f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf0, allowed: 0 1 2 3 8 sys={1100.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0c7 -> 0x04f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xb0, allowed: 0 1 2 3 6 -sys={1200.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x04f -> 0x01f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: rotate ACC allowed active subset 0x10f -> 0x01f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xe0, allowed: 0 1 2 3 4 +sys={1200.000000}: select() +(bts=0) ACC: rotate ACC allowed active subset 0x01f -> 0x03e (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0xc1, allowed: 1 2 3 4 5 sys={1250.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x01f -> 0x03f (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xc0, allowed: 0 1 2 3 4 5 -sys={1350.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x03f -> 0x07e (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x03e -> 0x07e (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0x81, allowed: 1 2 3 4 5 6 -sys={1450.000000}: select() +sys={1350.000000}: select() (bts=0) ACC: rotate ACC allowed active subset 0x07e -> 0x0fc (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0x03, allowed: 2 3 4 5 6 7 +sys={1450.000000}: select() +(bts=0) ACC: rotate ACC allowed active subset 0x0fc -> 0x1f8 (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x07, allowed: 3 4 5 6 7 8 sys={1500.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x0fc -> 0x1fc (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x03, allowed: 2 3 4 5 6 7 8 -sys={1600.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1fc -> 0x1f9 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x1f8 -> 0x1f9 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x06, allowed: 0 3 4 5 6 7 8 +sys={1600.000000}: select() +(bts=0) ACC: rotate ACC allowed active subset 0x1f9 -> 0x1f3 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x0c, allowed: 0 1 4 5 6 7 8 sys={1700.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1f9 -> 0x0fb (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x04, allowed: 0 1 3 4 5 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1f3 -> 0x1e7 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x18, allowed: 0 1 2 5 6 7 8 sys={1750.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x0fb -> 0x1fb (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x04, allowed: 0 1 3 4 5 6 7 8 +(bts=0) ACC: update ACC allowed active subset 0x1e7 -> 0x1ef (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x10, allowed: 0 1 2 3 5 6 7 8 sys={1850.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x1fb -> 0x0ff (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x00, allowed: 0 1 2 3 4 5 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1ef -> 0x1df (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x20, allowed: 0 1 2 3 4 6 7 8 sys={1950.000000}: select() -(bts=0) ACC: rotate ACC allowed active subset 0x0ff -> 0x1fe (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x01, allowed: 1 2 3 4 5 6 7 8 +(bts=0) ACC: rotate ACC allowed active subset 0x1df -> 0x1bf (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x40, allowed: 0 1 2 3 4 5 7 8 sys={2000.000000}: select() -(bts=0) ACC: update ACC allowed active subset 0x1fe -> 0x1ff (active_len=9, ramp_len=9, adm_len=10, perm_len=9, rotation=off) +(bts=0) ACC: update ACC allowed active subset 0x1bf -> 0x1ff (active_len=9, ramp_len=9, adm_len=10, perm_len=9, rotation=off) pcu_info_update(): t2=0x02 t3=0x00, allowed: 0 1 2 3 4 5 6 7 8 sys={2250.000000}: select() (bts=0) ACC: update ACC allowed active subset 0x1ff -> 0x1ff (active_len=9, ramp_len=10, adm_len=10, perm_len=9, rotation=off) @@ -804,62 +804,62 @@ sys={850.000000}: select(9): chan_load_avg=70 (bts=0) ACC: rotate ACC allowed active subset 0x1c0 -> 0x181 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x7e, allowed: 0 7 8 sys={950.000000}: select(10): chan_load_avg=55 -(bts=0) ACC: rotate ACC allowed active subset 0x181 -> 0x083 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x7c, allowed: 0 1 7 +(bts=0) ACC: rotate ACC allowed active subset 0x181 -> 0x103 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xfc, allowed: 0 1 8 sys={1000.000000}: select(11): chan_load_avg=40 -(bts=0) ACC: update ACC allowed active subset 0x083 -> 0x183 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x7c, allowed: 0 1 7 8 +(bts=0) ACC: update ACC allowed active subset 0x103 -> 0x107 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf8, allowed: 0 1 2 8 sys={1100.000000}: select(12): chan_load_avg=25 -(bts=0) ACC: rotate ACC allowed active subset 0x183 -> 0x087 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x78, allowed: 0 1 2 7 -sys={1200.000000}: select(13): chan_load_avg=10 -(bts=0) ACC: rotate ACC allowed active subset 0x087 -> 0x00f (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: rotate ACC allowed active subset 0x107 -> 0x00f (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xf0, allowed: 0 1 2 3 +sys={1200.000000}: select(13): chan_load_avg=10 +(bts=0) ACC: rotate ACC allowed active subset 0x00f -> 0x01e (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0xe1, allowed: 1 2 3 4 sys={1250.000000}: select(14): chan_load_avg=0 -(bts=0) ACC: update ACC allowed active subset 0x00f -> 0x01f (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xe0, allowed: 0 1 2 3 4 -sys={1350.000000}: select(15): chan_load_avg=15 -(bts=0) ACC: rotate ACC allowed active subset 0x01f -> 0x03e (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x01e -> 0x03e (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xc1, allowed: 1 2 3 4 5 -sys={1450.000000}: select(16): chan_load_avg=30 +sys={1350.000000}: select(15): chan_load_avg=15 (bts=0) ACC: rotate ACC allowed active subset 0x03e -> 0x07c (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0x83, allowed: 2 3 4 5 6 +sys={1450.000000}: select(16): chan_load_avg=30 +(bts=0) ACC: rotate ACC allowed active subset 0x07c -> 0x0f8 (active_len=5, ramp_len=5, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0x07, allowed: 3 4 5 6 7 sys={1500.000000}: select(17): chan_load_avg=45 -(bts=0) ACC: update ACC allowed active subset 0x07c -> 0x0fc (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x03, allowed: 2 3 4 5 6 7 -sys={1600.000000}: select(18): chan_load_avg=60 -(bts=0) ACC: rotate ACC allowed active subset 0x0fc -> 0x1f8 (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x0f8 -> 0x1f8 (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x07, allowed: 3 4 5 6 7 8 -sys={1700.000000}: select(19): chan_load_avg=75 +sys={1600.000000}: select(18): chan_load_avg=60 (bts=0) ACC: rotate ACC allowed active subset 0x1f8 -> 0x1f1 (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x0e, allowed: 0 4 5 6 7 8 +sys={1700.000000}: select(19): chan_load_avg=75 +(bts=0) ACC: rotate ACC allowed active subset 0x1f1 -> 0x1e3 (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x1c, allowed: 0 1 5 6 7 8 sys={1750.000000}: select(20): chan_load_avg=90 sys={1850.000000}: select(21): chan_load_avg=100 -(bts=0) ACC: rotate ACC allowed active subset 0x1f1 -> 0x0f3 (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x0c, allowed: 0 1 4 5 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x1e3 -> 0x1c7 (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x38, allowed: 0 1 2 6 7 8 sys={1950.000000}: select(22): chan_load_avg=85 -(bts=0) ACC: rotate ACC allowed active subset 0x0f3 -> 0x077 (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x88, allowed: 0 1 2 4 5 6 +(bts=0) ACC: rotate ACC allowed active subset 0x1c7 -> 0x18f (active_len=6, ramp_len=6, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x70, allowed: 0 1 2 3 7 8 sys={2000.000000}: select(23): chan_load_avg=70 -(bts=0) ACC: update ACC allowed active subset 0x077 -> 0x0f7 (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x08, allowed: 0 1 2 4 5 6 7 +(bts=0) ACC: update ACC allowed active subset 0x18f -> 0x19f (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x60, allowed: 0 1 2 3 4 7 8 sys={2100.000000}: select(24): chan_load_avg=55 -(bts=0) ACC: rotate ACC allowed active subset 0x0f7 -> 0x07f (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x80, allowed: 0 1 2 3 4 5 6 +(bts=0) ACC: rotate ACC allowed active subset 0x19f -> 0x13f (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xc0, allowed: 0 1 2 3 4 5 8 sys={2200.000000}: select(25): chan_load_avg=40 -(bts=0) ACC: rotate ACC allowed active subset 0x07f -> 0x0fe (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x01, allowed: 1 2 3 4 5 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x13f -> 0x07f (active_len=7, ramp_len=7, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0x80, allowed: 0 1 2 3 4 5 6 sys={2250.000000}: select(26): chan_load_avg=25 -(bts=0) ACC: update ACC allowed active subset 0x0fe -> 0x1fe (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x01, allowed: 1 2 3 4 5 6 7 8 +(bts=0) ACC: update ACC allowed active subset 0x07f -> 0x0ff (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0x00, allowed: 0 1 2 3 4 5 6 7 sys={2350.000000}: select(27): chan_load_avg=10 +(bts=0) ACC: rotate ACC allowed active subset 0x0ff -> 0x1fe (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x01, allowed: 1 2 3 4 5 6 7 8 +sys={2450.000000}: select(28): chan_load_avg=0 (bts=0) ACC: rotate ACC allowed active subset 0x1fe -> 0x1fd (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x02, allowed: 0 2 3 4 5 6 7 8 -sys={2450.000000}: select(28): chan_load_avg=0 -(bts=0) ACC: rotate ACC allowed active subset 0x1fd -> 0x0ff (active_len=8, ramp_len=8, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x00, allowed: 0 1 2 3 4 5 6 7 sys={2500.000000}: select(29): chan_load_avg=15 -(bts=0) ACC: update ACC allowed active subset 0x0ff -> 0x1ff (active_len=9, ramp_len=9, adm_len=10, perm_len=9, rotation=off) +(bts=0) ACC: update ACC allowed active subset 0x1fd -> 0x1ff (active_len=9, ramp_len=9, adm_len=10, perm_len=9, rotation=off) pcu_info_update(): t2=0x02 t3=0x00, allowed: 0 1 2 3 4 5 6 7 8 sys={2750.000000}: select(30): chan_load_avg=30 (bts=0) ACC: update ACC allowed active subset 0x1ff -> 0x1ff (active_len=9, ramp_len=10, adm_len=10, perm_len=9, rotation=off) @@ -1098,87 +1098,87 @@ sys={1850.000000}: select(21): chan_load_avg=10 (bts=0) ACC: rotate ACC allowed active subset 0x1c0 -> 0x181 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x7e, allowed: 0 7 8 sys={1950.000000}: select(22): chan_load_avg=20 -(bts=0) ACC: rotate ACC allowed active subset 0x181 -> 0x083 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x7c, allowed: 0 1 7 +(bts=0) ACC: rotate ACC allowed active subset 0x181 -> 0x103 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xfc, allowed: 0 1 8 sys={2000.000000}: select(23): chan_load_avg=30 -(bts=0) ACC: update ACC allowed active subset 0x083 -> 0x183 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x7c, allowed: 0 1 7 8 +(bts=0) ACC: update ACC allowed active subset 0x103 -> 0x107 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf8, allowed: 0 1 2 8 sys={2100.000000}: select(24): chan_load_avg=40 -(bts=0) ACC: rotate ACC allowed active subset 0x183 -> 0x087 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x78, allowed: 0 1 2 7 -sys={2200.000000}: select(25): chan_load_avg=50 -(bts=0) ACC: rotate ACC allowed active subset 0x087 -> 0x00f (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: rotate ACC allowed active subset 0x107 -> 0x00f (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xf0, allowed: 0 1 2 3 +sys={2200.000000}: select(25): chan_load_avg=50 +(bts=0) ACC: rotate ACC allowed active subset 0x00f -> 0x01e (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0xe1, allowed: 1 2 3 4 sys={2250.000000}: select(26): chan_load_avg=60 -(bts=0) ACC: update ACC allowed active subset 0x00f -> 0x00e (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xf1, allowed: 1 2 3 -sys={2350.000000}: select(27): chan_load_avg=70 -(bts=0) ACC: rotate ACC allowed active subset 0x00e -> 0x01c (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x01e -> 0x01c (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xe3, allowed: 2 3 4 -sys={2450.000000}: select(28): chan_load_avg=80 +sys={2350.000000}: select(27): chan_load_avg=70 (bts=0) ACC: rotate ACC allowed active subset 0x01c -> 0x038 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xc7, allowed: 3 4 5 +sys={2450.000000}: select(28): chan_load_avg=80 +(bts=0) ACC: rotate ACC allowed active subset 0x038 -> 0x070 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0x8f, allowed: 4 5 6 sys={2500.000000}: select(29): chan_load_avg=90 -(bts=0) ACC: update ACC allowed active subset 0x038 -> 0x030 (active_len=2, ramp_len=2, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xcf, allowed: 4 5 -sys={2600.000000}: select(30): chan_load_avg=100 -(bts=0) ACC: rotate ACC allowed active subset 0x030 -> 0x060 (active_len=2, ramp_len=2, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x070 -> 0x060 (active_len=2, ramp_len=2, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0x9f, allowed: 5 6 -sys={2700.000000}: select(31): chan_load_avg=90 +sys={2600.000000}: select(30): chan_load_avg=100 (bts=0) ACC: rotate ACC allowed active subset 0x060 -> 0x0c0 (active_len=2, ramp_len=2, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0x3f, allowed: 6 7 +sys={2700.000000}: select(31): chan_load_avg=90 +(bts=0) ACC: rotate ACC allowed active subset 0x0c0 -> 0x180 (active_len=2, ramp_len=2, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x7f, allowed: 7 8 sys={2750.000000}: select(32): chan_load_avg=80 -(bts=0) ACC: update ACC allowed active subset 0x0c0 -> 0x080 (active_len=1, ramp_len=1, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x7f, allowed: 7 -sys={2850.000000}: select(33): chan_load_avg=70 -(bts=0) ACC: rotate ACC allowed active subset 0x080 -> 0x100 (active_len=1, ramp_len=1, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x180 -> 0x100 (active_len=1, ramp_len=1, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0xff, allowed: 8 -sys={2950.000000}: select(34): chan_load_avg=60 +sys={2850.000000}: select(33): chan_load_avg=70 (bts=0) ACC: rotate ACC allowed active subset 0x100 -> 0x001 (active_len=1, ramp_len=1, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xfe, allowed: 0 -sys={3000.000000}: select(35): chan_load_avg=50 -sys={3100.000000}: select(36): chan_load_avg=40 +sys={2950.000000}: select(34): chan_load_avg=60 (bts=0) ACC: rotate ACC allowed active subset 0x001 -> 0x002 (active_len=1, ramp_len=1, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xfd, allowed: 1 -sys={3200.000000}: select(37): chan_load_avg=30 +sys={3000.000000}: select(35): chan_load_avg=50 +sys={3100.000000}: select(36): chan_load_avg=40 (bts=0) ACC: rotate ACC allowed active subset 0x002 -> 0x004 (active_len=1, ramp_len=1, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xfb, allowed: 2 +sys={3200.000000}: select(37): chan_load_avg=30 +(bts=0) ACC: rotate ACC allowed active subset 0x004 -> 0x008 (active_len=1, ramp_len=1, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0xf7, allowed: 3 sys={3250.000000}: select(38): chan_load_avg=20 -(bts=0) ACC: update ACC allowed active subset 0x004 -> 0x00c (active_len=2, ramp_len=2, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xf3, allowed: 2 3 -sys={3350.000000}: select(39): chan_load_avg=10 -(bts=0) ACC: rotate ACC allowed active subset 0x00c -> 0x018 (active_len=2, ramp_len=2, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x008 -> 0x018 (active_len=2, ramp_len=2, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xe7, allowed: 3 4 -sys={3450.000000}: select(40): chan_load_avg=0 +sys={3350.000000}: select(39): chan_load_avg=10 (bts=0) ACC: rotate ACC allowed active subset 0x018 -> 0x030 (active_len=2, ramp_len=2, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xcf, allowed: 4 5 +sys={3450.000000}: select(40): chan_load_avg=0 +(bts=0) ACC: rotate ACC allowed active subset 0x030 -> 0x060 (active_len=2, ramp_len=2, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0x9f, allowed: 5 6 sys={3500.000000}: select(41): chan_load_avg=10 -(bts=0) ACC: update ACC allowed active subset 0x030 -> 0x070 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x8f, allowed: 4 5 6 -sys={3600.000000}: select(42): chan_load_avg=20 -(bts=0) ACC: rotate ACC allowed active subset 0x070 -> 0x0e0 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x060 -> 0x0e0 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0x1f, allowed: 5 6 7 -sys={3700.000000}: select(43): chan_load_avg=30 +sys={3600.000000}: select(42): chan_load_avg=20 (bts=0) ACC: rotate ACC allowed active subset 0x0e0 -> 0x1c0 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x02 t3=0x3f, allowed: 6 7 8 +sys={3700.000000}: select(43): chan_load_avg=30 +(bts=0) ACC: rotate ACC allowed active subset 0x1c0 -> 0x181 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x7e, allowed: 0 7 8 sys={3750.000000}: select(44): chan_load_avg=40 -(bts=0) ACC: update ACC allowed active subset 0x1c0 -> 0x1c1 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x02 t3=0x3e, allowed: 0 6 7 8 +(bts=0) ACC: update ACC allowed active subset 0x181 -> 0x183 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0x7c, allowed: 0 1 7 8 sys={3850.000000}: select(45): chan_load_avg=50 -(bts=0) ACC: rotate ACC allowed active subset 0x1c1 -> 0x0c3 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0x3c, allowed: 0 1 6 7 +(bts=0) ACC: rotate ACC allowed active subset 0x183 -> 0x107 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x02 t3=0xf8, allowed: 0 1 2 8 sys={3950.000000}: select(46): chan_load_avg=60 -(bts=0) ACC: rotate ACC allowed active subset 0x0c3 -> 0x047 (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xb8, allowed: 0 1 2 6 +(bts=0) ACC: rotate ACC allowed active subset 0x107 -> 0x00f (active_len=4, ramp_len=4, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0xf0, allowed: 0 1 2 3 sys={4000.000000}: select(47): chan_load_avg=70 -(bts=0) ACC: update ACC allowed active subset 0x047 -> 0x046 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) -pcu_info_update(): t2=0x03 t3=0xb9, allowed: 1 2 6 -sys={4100.000000}: select(48): chan_load_avg=80 -(bts=0) ACC: rotate ACC allowed active subset 0x046 -> 0x00e (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) +(bts=0) ACC: update ACC allowed active subset 0x00f -> 0x00e (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xf1, allowed: 1 2 3 -sys={4200.000000}: select(49): chan_load_avg=90 +sys={4100.000000}: select(48): chan_load_avg=80 (bts=0) ACC: rotate ACC allowed active subset 0x00e -> 0x01c (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) pcu_info_update(): t2=0x03 t3=0xe3, allowed: 2 3 4 +sys={4200.000000}: select(49): chan_load_avg=90 +(bts=0) ACC: rotate ACC allowed active subset 0x01c -> 0x038 (active_len=3, ramp_len=3, adm_len=10, perm_len=9, rotation=on) +pcu_info_update(): t2=0x03 t3=0xc7, allowed: 3 4 5 BTS deallocated OK in test_acc_ramp_updown_rotate() ===test_acc_ramp_updown_rotate(30, 80, 30, 80, 5)=== (bts=0) ACC: New ACC allowed subset 0x3ff (active_len=10, ramp_len=10, adm_len=10, perm_len=10, rotation=off)