Open bluecmd opened 5 years ago
Hi,
In https://github.com/facebook/fboss/blob/master/fboss/agent/configs/sample3.json you document that a reasonable number for an interface ID is 1000. This number is not allowed by the code in TunManager.cpp.
Using interface 1000 results in a negative table ID and this trace:
[...] 1017 21:45:55.289333 10665 ArpHandler.cpp:153] sending ARP request on vlan 552 to 10.32.12.250 (ff:ff:ff:ff:ff:ff): 10.32.12.250 is 56:ab:3a:05:fc:0a I1017 21:45:55.726236 10671 FunctionScheduler.cpp:505] Now running updateStats I1017 21:45:56.011499 10664 SwSwitch.cpp:1129] Link state changed: 61->UP V1017 21:45:56.011653 10664 SwSwitch.cpp:39] LinkState: Port 61 Up I1017 21:45:56.011729 10666 SwSwitch.cpp:787] preparing state update Port OperState Update I1017 21:45:56.011877 10666 SwSwitch.cpp:921] Updating state: old_gen=2 new_gen=3 V1017 21:45:56.012053 10666 BcmSwitch.cpp:927] Oper state changed on port 61: UP V1017 21:45:56.012317 10666 SwSwitch.cpp:970] Update state took 437us V1017 21:45:56.012439 10669 QsfpCache.cpp:95] Will sync port 61 V1017 21:45:56.012494 10669 QsfpCache.cpp:158] Starting new request V1017 21:45:56.013056 10669 QsfpCache.cpp:140] Will try to sync 1 ports to qsfp_service I1017 21:45:56.013183 10664 SwSwitch.cpp:1129] Link state changed: 62->UP V1017 21:45:56.013342 10664 SwSwitch.cpp:39] LinkState: Port 62 Up I1017 21:45:56.013737 10667 TunManager.cpp:229] Brought up interface fboss1000 @ index 6 F1017 21:45:56.013898 10667 TunManager.cpp:252] Check failed: tableId >= 1 (-740 vs. 1) I1017 21:45:56.014421 10666 SwSwitch.cpp:787] preparing state update Port OperState Update I1017 21:45:56.014553 10666 SwSwitch.cpp:921] Updating state: old_gen=3 new_gen=4 V1017 21:45:56.015269 10666 BcmSwitch.cpp:927] Oper state changed on port 62: UP V1017 21:45:56.015559 10666 SwSwitch.cpp:970] Update state took 1000us V1017 21:45:56.015684 10669 QsfpCache.cpp:84] Already an active outstanding request to qsfp_service *** Check failure stack trace: *** @ 0x7fac6b11213d google::LogMessage::Fail() @ 0x7fac6b113fa3 google::LogMessage::SendToLog() @ 0x7fac6b111ccb google::LogMessage::Flush() @ 0x7fac6b11498e google::LogMessageFatal::~LogMessageFatal() @ 0x55a8782e8efb facebook::fboss::TunManager::getTableId() @ 0x55a8782e935b facebook::fboss::TunManager::addRemoveRouteTable() @ 0x55a8782f0350 facebook::fboss::TunManager::addRouteTable() @ 0x55a8782ed5cc _ZZN8facebook5fboss10TunManager4syncESt10shared_ptrINS0_11SwitchStateEEENKUlRN5boost9container16container_detail12vec_iteratorIPSt4pairINS0_11InterfaceIDES9_IbNS6_8flat_mapIN5folly9IPAddressEhSt4lessISD_ENS6_13new_allocatorIS9_ISD_hEEEEEEELb1EEESO_E0_clESO_SO_ @ 0x55a8782eedd2 _ZN8facebook5fboss10TunManager12applyChangesIN5boost9container8flat_mapINS0_11InterfaceIDESt4pairIbNS5_IN5folly9IPAddressEhSt4lessIS9_ENS4_13new_allocatorIS7_IS9_hEEEEEESA_IS6_ENSC_IS7_IS6_SG_EEEEEZNS1_4syncESt10shared_ptrINS0_11SwitchStateEEEUlRNS4_16container_detail12vec_iteratorIPSI_Lb1EEESS_E0_ZNS1_4syncESN_EUlSS_E1_ZNS1_4syncESN_EUlSS_E2_EEvRKT_SY_T0_T1_T2_ @ 0x55a8782edd08 facebook::fboss::TunManager::sync() @ 0x55a8782e771a _ZZN8facebook5fboss10TunManager12stateUpdatedERKNS0_10StateDeltaEENKUlvE_clEv @ 0x55a8782ef76c _ZN5folly6detail8function14FunctionTraitsIFvvEE9callSmallIZN8facebook5fboss10TunManager12stateUpdatedERKNS7_10StateDeltaEEUlvE_EEvRNS1_4DataE @ 0x55a878106d55 folly::detail::function::FunctionTraits<>::operator()() @ 0x55a878d13910 folly::EventBase::FunctionRunner::messageAvailable() @ 0x55a878d165f9 folly::NotificationQueue<>::Consumer::consumeMessages() I1017 21:45:56.099323 10669 Cpp2Channel.cpp:198] Got an EOF on channel V1017 21:45:56.099586 10669 QsfpCache.cpp:149] Got 1 transceivers from qsfp_service V1017 21:45:56.099711 10669 QsfpCache.cpp:172] Finished request @ 0x55a878d15224 folly::NotificationQueue<>::Consumer::handlerReady() @ 0x55a878d1cc33 folly::EventHandler::libeventCallback() @ 0x7fac6aca75a0 event_base_loop @ 0x55a878d0fd4c folly::EventBase::loopBody() @ 0x55a878d0f7f6 folly::EventBase::loop() @ 0x55a878d10db5 folly::EventBase::loopForever() @ 0x55a878292840 facebook::fboss::SwSwitch::threadLoop() @ 0x55a878291fc2 _ZZN8facebook5fboss8SwSwitch12startThreadsEvENKUlvE1_clEv @ 0x55a87829be84 _ZNSt12_Bind_simpleIFZN8facebook5fboss8SwSwitch12startThreadsEvEUlvE1_vEE9_M_invokeIJEEEvSt12_Index_tupleIJXspT_EEE @ 0x55a87829bcbf _ZNSt12_Bind_simpleIFZN8facebook5fboss8SwSwitch12startThreadsEvEUlvE1_vEEclEv @ 0x55a87829bbf2 _ZNSt6thread11_State_implISt12_Bind_simpleIFZN8facebook5fboss8SwSwitch12startThreadsEvEUlvE1_vEEE6_M_runEv @ 0x7fac652d4e6f (unknown) @ 0x7fac6ba3c494 start_thread @ 0x7fac64a49acf clone @ (nil) (unknown) Aborted
Configuration:
... "vlans": [ { "id": 1, "ipAddresses": [], "name": "DEFAULT", "recordStats": true, "routable": false }, { "id": 552, "ipAddresses": [], "name": "DEPLOY", "recordStats": true, "routable": false } ], "interfaces": [ { "intfID": 10, "routerID": 0, "vlanID": 552, "ipAddresses": [ "10.32.12.250/24" ] } ] }
Hi,
In https://github.com/facebook/fboss/blob/master/fboss/agent/configs/sample3.json you document that a reasonable number for an interface ID is 1000. This number is not allowed by the code in TunManager.cpp.
Using interface 1000 results in a negative table ID and this trace:
Configuration: