CPU trying to start a GP when no CBs were assigned new GP numbers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,
I am seeing something a bit strange with RCU where it is trying to
start a GP twice from a CPU even though no new CB was queued on that
CPU. It is quite possible that I'm missing something. Anyway, I wrote
a patch to add some tracing when CBs are queued into the segcb. I am
planning to post this trace patch later.

The trace in the link below shows CPU2 queuing around 5 CBs, which
then gets accelerated at 5.192123. The GP thread running on CPU3
starts a new GP. Now the CPU2 softirq runs again (roughly 1ms after
the previous acceleration). The softirq runs probably because the GP
thread is expecting a QS report from CPU 2.  When the CPU2's softirq
runs though, it does an acceleration again which triggers a second new
GP start. This seems a bit unnecessary AFAICS - because the need for
GP *832 was already recorded which is all CPU2 should really be caring
about right?

Here is the trace: https://pastebin.com/raw/AYGzu1g4

Thanks,

  - Joel



[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux