キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

IOS-XR: object_tracking プロセスでメモリリークが発生する

2016年9月28日(初版)

TAC SR Collection
主な問題

IOS-XR が動作する Cisco ルータで、object tracking を設定している状況にて、show track コマンドを実施すると、object_tracking プロセスでメモリリークが発生し、最終的に object_tracking プロセスがクラッシュする場合があります。

設定例

track track1
 type line-protocol state
  interface GigabitEthernet0/2/0/30

事象確認方法

show track を実行後、sysdb_internal_lib_rply_datalist_interpret と sysdb_lib_send_opt_v において block count の増加が確認できます。

RP/0/RSP0/CPU0:Router#show memory heap dllname 450 | include "sysdb_internal_lib_rply_datalist_interpret|sysdb_lib_send_opt_v"
0x00016400 0x000166c8 0x00000059  0x0fd8ab5d sysdb_internal_lib_rply_datalist_interpret
0x00005a00 0x00005ce0 0x0000005a  0x0fd67d02 sysdb_lib_send_opt_v
0x000014dc 0x00001908 0x00000059  0x0fd8aa36 sysdb_internal_lib_rply_datalist_interpret
0x00000f4c 0x00001378 0x00000059  0x0fd8aae1 sysdb_internal_lib_rply_datalist_interpret
0x000002c8 0x00000590 0x00000059  0x0fd8abb5 sysdb_internal_lib_rply_datalist_interpret
RP/0/RSP0/CPU0:Router#
RP/0/RSP0/CPU0:Router#show track

Track track1
        Interface GigabitEthernet0/2/0/30 line-protocol
        Line protocol is DOWN
        1 change, last change 21:40:32 JST Wed Oct 26 2016
RP/0/RSP0/CPU0:Router#
RP/0/RSP0/CPU0:Router#show memory heap dllname 450 | include "sysdb_internal_lib_rply_datalist_interpret|sysdb_lib_send_opt_v"
0x00016800 0x00016ad0 0x0000005a  0x0fd8ab5d sysdb_internal_lib_rply_datalist_interpret
0x00005b00 0x00005de8 0x0000005b  0x0fd67d02 sysdb_lib_send_opt_v
0x00001518 0x00001950 0x0000005a  0x0fd8aa36 sysdb_internal_lib_rply_datalist_interpret
0x00000f78 0x000013b0 0x0000005a  0x0fd8aae1 sysdb_internal_lib_rply_datalist_interpret
0x000002d0 0x000005a0 0x0000005a  0x0fd8abb5 sysdb_internal_lib_rply_datalist_interpret

上記例の show memory heal dllname <Job Id> コマンドで指定する <Job Id> の部分は、以下のコマンドで確認できます。

RP/0/RSP0/CPU0:Router#show processes object_tracking
                  Job Id: 450
                     PID: 1630543
///snip///
                   Ready: 0.116s
        Process cpu time: 0.058 user, 0.009 kernel, 0.067 total
JID   TID CPU Stack pri state        TimeInState    HR:MM:SS:MSEC   NAME
450    1    2   60K  10 Receive        0:02:57:0734    0:00:00:0059 object_tracking
450    2    2   60K  10 Sigwaitinfo    0:34:03:0923    0:00:00:0000 object_tracking
450    3    3   60K  10 Receive        0:34:03:0862    0:00:00:0000 object_tracking
450    4    2   60K  10 Condvar        0:34:03:0841    0:00:00:0000 object_tracking
450    5    3   60K  10 Receive        0:34:03:0609    0:00:00:0006 object_tracking
450    6    2   60K  10 Condvar        0:34:03:0609    0:00:00:0000 object_tracking
-------------------------------------------------------------------------------
原因

この問題は、CSCva64536 として報告されています。

CSCva64536 memory leak in object_tracking

解決策

メモリリークの結果、object_tracking プロセスの再起動に至った場合でも、同プロセスは自動的に復旧する為、対処の必要はありません。

問題の解決には CSCva64536 の修正されたバージョンを使用する必要があります。

備考
本不具合は、Bug Search Tool でも確認できます。

バージョン履歴
改訂番号
1/1
最終更新:
‎10-27-2016 10:33 PM
更新者:
 
ラベル(1)
タグ(1)