Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\rcu\srcutree.c Create Date:2022-07-28 10:18:48
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:If SRCU is likely idle, return true, otherwise return false.* Note that it is OK for several current from-idle requests for a new* grace period from idle to specify expediting because they will all end* up requesting the same grace period anyhow

Proto:static bool srcu_might_be_idle(struct srcu_struct *ssp)

Type:bool

Parameter:

TypeParameterName
struct srcu_struct *ssp
768  local_irq_save(flags)
769  sdp = this_cpu_ptr(sda)
770  If Does the specified rcu_segcblist structure contain callbacks that* are still pending, that is, not yet ready to be invoked? Then
771  local_irq_restore(flags)
772  Return false
774  local_irq_restore(flags)
783  t = ktime_get_mono_fast_ns()
784  tlast = READ_ONCE(srcu_last_gp_end)
785  If exp_holdoff == 0 || Calculate whether a is in the range of [b, c).(t, tlast, tlast + exp_holdoff) Then Return false
790  curseq = Return the current value the update side's sequence number, no ordering.
791  smp_mb()
792  If ULONG_CMP_LT(curseq, READ_ONCE(srcu_gp_seq_needed)) Then Return false
794  smp_mb()
795  If curseq != Return the current value the update side's sequence number, no ordering. Then Return false
797  Return true
Caller
NameDescribe
synchronize_srcusynchronize_srcu - wait for prior SRCU read-side critical-section completion*@ssp: srcu_struct with which to synchronize