netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 net 0/4] qbv cycle time extension/truncation
@ 2023-12-19  8:14 Faizal Rahim
  2023-12-19  8:14 ` [PATCH v3 net 1/4] net/sched: taprio: fix too early schedules switching Faizal Rahim
                   ` (5 more replies)
  0 siblings, 6 replies; 13+ messages in thread
From: Faizal Rahim @ 2023-12-19  8:14 UTC (permalink / raw)
  To: Vladimir Oltean, Vinicius Costa Gomes, Jamal Hadi Salim,
	Cong Wang, Jiri Pirko, David S . Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni
  Cc: netdev, linux-kernel

According to IEEE Std. 802.1Q-2018 section Q.5 CycleTimeExtension,
the Cycle Time Extension variable allows this extension of the last old
cycle to be done in a defined way. If the last complete old cycle would
normally end less than OperCycleTimeExtension nanoseconds before the new
base time, then the last complete cycle before AdminBaseTime is reached
is extended so that it ends at AdminBaseTime.

Changes in v3:
- Removed the last 3 patches related to fixing cycle time adjustment
for the "current entry". This is to simplify this patch series submission 
which only covers cycle time adjustment for the "next entry".
- Negative correction calculation in get_cycle_time_correction() is
  guarded so that it doesn't exceed interval
- Some rename (macro, function)
- Transport commit message comments to the code comments 
- Removed unnecessary null check
- Reword commit message 

Changes in v2:
- Added 's64 cycle_time_correction' in 'sched_gate_list struct'.
- Removed sched_changed created in v1 since the new cycle_time_correction
  field can also serve to indicate the need for a schedule change.
- Added 'bool correction_active' in 'struct sched_entry' to represent
  the correction state from the entry's perspective and return corrected
  interval value when active.
- Fix cycle time correction logics for the next entry in advance_sched()
- Fix and implement proper cycle time correction logics for current
  entry in taprio_start_sched()

v2 at:
https://lore.kernel.org/lkml/20231107112023.676016-1-faizal.abdul.rahim@linux.intel.com/
v1 at:
https://lore.kernel.org/lkml/20230530082541.495-1-muhammad.husaini.zulkifli@intel.com/

Faizal Rahim (4):
  net/sched: taprio: fix too early schedules switching
  net/sched: taprio: fix cycle time adjustment for next entry
  net/sched: taprio: fix impacted fields value during cycle time
    adjustment
  net/sched: taprio: get corrected value of cycle_time and interval

 net/sched/sch_taprio.c | 178 +++++++++++++++++++++++++++++++----------
 1 file changed, 135 insertions(+), 43 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2023-12-29  2:15 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-19  8:14 [PATCH v3 net 0/4] qbv cycle time extension/truncation Faizal Rahim
2023-12-19  8:14 ` [PATCH v3 net 1/4] net/sched: taprio: fix too early schedules switching Faizal Rahim
2023-12-19  8:14 ` [PATCH v3 net 2/4] net/sched: taprio: fix cycle time adjustment for next entry Faizal Rahim
2023-12-19  8:14 ` [PATCH v3 net 3/4] net/sched: taprio: fix impacted fields value during cycle time adjustment Faizal Rahim
2023-12-19  8:14 ` [PATCH v3 net 4/4] net/sched: taprio: get corrected value of cycle_time and interval Faizal Rahim
2023-12-19 16:56 ` [PATCH v3 net 0/4] qbv cycle time extension/truncation Vladimir Oltean
2023-12-20  3:25   ` Abdul Rahim, Faizal
2023-12-21 13:35     ` Vladimir Oltean
2023-12-29  2:15       ` Abdul Rahim, Faizal
2023-12-21  8:52   ` Paolo Abeni
2023-12-21 10:12     ` Abdul Rahim, Faizal
2023-12-19 17:02 ` Eric Dumazet
2023-12-21  5:57   ` Abdul Rahim, Faizal

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).