BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//pretalx//cfp.embedded-recipes.org//er2026//talk//8D7H8V
BEGIN:VTIMEZONE
TZID:CET
BEGIN:STANDARD
DTSTART:20001029T040000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
TZNAME:CET
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:20000326T030000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3
TZNAME:CEST
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
UID:pretalx-er2026-8D7H8V@cfp.embedded-recipes.org
DTSTART;TZID=CET:20260528T153000
DTEND;TZID=CET:20260528T154500
DESCRIPTION:Ethernet bring‑up on embedded hardware is supposed to be pred
 ictable: reset the PHY\, bring up clocks\, negotiate the link\, and move o
 n with your life. A routine kernel upgrade on an Arria 10 platform turned 
 into an unexpectedly deep debugging journey through PHY reset sequencing\,
  Ethernet CRC errors\, and a behavior that only surfaced reliably with PRE
 EMPT_RT.\n\nAlong the way\, I’ll introduce the basics of the Linux netwo
 rk stack as it applies to embedded devices: how drivers\, PHYs\, resets\, 
 and the kernel’s initialization paths interact\, and why ordering matter
 s.\nWhat followed was a debugging journey that went much deeper than expec
 ted. The symptoms were loud -CRC errors\, severe packet loss at boot\, and
  a driver that only behaved after an unbind/rebind but the root cause was 
 hiding behind assumptions we never realized we’d made. The hardware\, PH
 Y\, and DMA path all appeared to check out\, leaving us to suspect somethi
 ng subtle in the initialization order.\n\nPREEMPT_RT made the failure repr
 oducible\, and that was the real clue. It forced us to revisit everything:
  PHY reset timing\, misleading device‑tree reset names\, and the subtle 
 ways real‑time preemption changes how the kernel actually runs. A probe 
 path that had always “worked” was only working because the non‑RT ke
 rnel had been quietly guaranteeing an execution order it never promised. T
 his talk walks through the investigation\, the wrong turns\, and where thi
 ngs stand today. While we’ve narrowed the problem to initialization orde
 ring and reset handling\, the full picture is still emerging - and the ong
 oing work highlights how PREEMPT_RT doesn’t break your code\, it just st
 ops covering for it.
DTSTAMP:20260407T013037Z
LOCATION:Auditorium
SUMMARY:When Preemption exposes What You Missed - Mamta Shukla
URL:https://cfp.embedded-recipes.org/er2026/talk/8D7H8V/
END:VEVENT
END:VCALENDAR
