Commit 0317b16
authored
Do not enter vendor SAI critical section for counter polling/clearing operations (sonic-net#1450)
There are two types of threads in syncd:
The syncd main thread in which the create/destroy/set/get SAI APIs are called
Flex counter threads in which counter-polling/-clearing APIs are called
The critical section in vendor SAI was introduced to protect vendors' SAI from being re-entered, which prevents the flex counter threads from running concurrently, and introduces latency for one flex counter thread when it's waiting for the critical section.
It is not necessary to enter a section in counter-polling/clearing operations since the objects' state won't be changed in that API.1 parent 90c79c7 commit 0317b16
1 file changed
Lines changed: 0 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
313 | 313 | | |
314 | 314 | | |
315 | 315 | | |
316 | | - | |
317 | 316 | | |
318 | 317 | | |
319 | 318 | | |
| |||
351 | 350 | | |
352 | 351 | | |
353 | 352 | | |
354 | | - | |
355 | 353 | | |
356 | 354 | | |
357 | 355 | | |
| |||
366 | 364 | | |
367 | 365 | | |
368 | 366 | | |
369 | | - | |
370 | 367 | | |
371 | 368 | | |
372 | 369 | | |
| |||
386 | 383 | | |
387 | 384 | | |
388 | 385 | | |
389 | | - | |
390 | 386 | | |
391 | 387 | | |
392 | 388 | | |
| |||
414 | 410 | | |
415 | 411 | | |
416 | 412 | | |
417 | | - | |
418 | 413 | | |
419 | 414 | | |
420 | 415 | | |
| |||
0 commit comments