מוזילה איתרה את הקריסה לשגרת הדחיסה zlib-rs deflate המשמשת בתוך פיירפוקס. במערכות המושפעות, ערך בן 16 סיביות בשם dist עלול להשתבש, וליצור אינדקס מחוץ לתחום (out-of-bounds index) שגורם לדפדפן לקרוס.
המהנדסים מצאו שהשחיתות (corruption) תואמת לבאגים ידועים במעבדי Raptor Lake (RPL050 ו-RPL060), הכוללים מצבים שבהם:
כאשר ערכים שגויים הופיעו בשגרת הדחיסה, הדפדפן קרס, למרות שהשגיאה המקורית התרחשה מוקדם יותר בתוך צינור העיבוד (pipeline) של המעבד.
העדכון Firefox 151.0.1 חיזק את נתיב הקוד המושפע, כך שערכים פגומים כבר לא מפעילים את תרחיש הקריסה. שינוי זה הפחית מאוד את הכישלונות שנראו בדוחות הקריסה של פיירפוקס במערכות Raptor Lake.
עם זאת, העדכון הוא פתרון תוכנה הגנתי (defensive software workaround) ולא תיקון מלא. אם המעבד הבסיסי כבר פגום, יישומים אחרים עדיין עשויים לחוות חוסר יציבות, מכיוון שהסיבה השורשית היא חומרתית.
מוזילה גם ציינה כי מערכות שרצות על גרסאות מיקרו-קוד חדשות יותר של אינטל (כמו 0x12C) הראו הרבה פחות קריסות, מה שמצביע על כך שעדכוני קושחה (firmware) מאינטל כבר הפחיתו את תדירות הבעיה עוד לפני שהתיקון של פיירפוקס שוחרר.
רבים מהדיווחים על חוסר יציבות במעבדי Raptor Lake קשורים לתופעה שאינטל קוראת לה "Vmin Shift Instability".
Vmin Shift מתייחס למצב שבו המתח המינימלי הנדרש לפעולה יציבה של המעבד עולה בהדרגה לאורך זמן, עקב הזדקנות (reliability aging) במעגל שעון (clock-tree circuit) בתוך ליבת IA של המעבד. כאשר המעגל הזה מזדקן בתנאי מתח או טמפרטורה גבוהים, מרווחי התזמון (timing margins) מצטמצמים והמעבד עלול להתחיל להפיק תוצאות שגויות או לקרוס יישומים.
חוסר יציבות זה לא מופיע בהכרח מיד; הוא יכול לצוץ לאחר פעולה ממושכת בתנאים תובעניים.
טמפרטורות גבוהות יותר ועומס רציף על המעבד מאיצים את תהליכי ההזדקנות שמאחורי Vmin Shift. כשהשבבים פועלים קרוב לגבולותיהם – במיוחד תחת מתח גבוה או עומס תרמי – הסיכוי לשגיאות תזמון עולה.
מהנדסי מוזילה שניתחו טלמטריה של קריסות הבחינו אפילו בזינוקים בדוחות הקריסה של פיירפוקס מאזורים שחוו גלי חום קיצוניים בקיץ, מה שמרמז שטמפרטורות סביבה גבוהות יותר דחפו מעבדים גבוליים מעבר לסף היציבות שלהם.
במילים אחרות, קריסות הדפדפן היו לעתים קרובות רק הסימפטום הנראה לעין של חוסר יציבות חומרתית עמוקה יותר שהופעלה תחת עומס.
אינטל הגיבה עם מספר צעדי הפחתה שמטרתם לייצב את המעבדים המושפעים:
עדכוני מיקרו-קוד. אינטל פרסמה מספר עדכוני קושחה – כמו 0x129, 0x12B, ומאוחר יותר 0x12F – לשיפור ניהול המתח ולהפחתת התנאים שיכולים לעורר את חוסר היציבות של Vmin Shift. עדכונים אלה מועברים בדרך כלל דרך עדכוני BIOS של לוח האם.
תיקוני התנהגות מתח. חלק מגרסאות המיקרו-קוד מפחיתות באופן ספציפי בקשות מתח מוגזמות שעלולות להאיץ את ההידרדרות או חוסר היציבות.
הרחבת אחריות. אינטל הרחיבה גם את כיסוי האחריות למעבדים המושפעים, כך שמשתמשים שחווים חוסר יציבות יוכלו לבקש החלפה.
צעדים אלה עוזרים להגביל הידרדרות נוספת ולהפחית קריסות, אך הם לא הופכים את הבלאי הפיזי שכבר קיים בסיליקון.
אם אתם מפעילים מערכת שולחנית עם מעבד אינטל Core מהדור ה-13 או ה-14 וחוויתם קריסות דפדפן או חוסר יציבות, מספר צעדים יכולים להפחית את הסיכון:
1. עדכנו את פיירפוקס. התקינו Firefox 151.0.1 ומעלה כדי שמנגנון הקריסה הידוע יטופל.
2. עדכנו את ה-BIOS של לוח האם שלכם. זה מבטיח שהמערכת שלכם מקבלת את עדכוני המיקרו-קוד העדכניים ביותר של אינטל שנועדו להפחית חוסר יציבות.
3. הפעילו הגדרות מעבד מומלצות של אינטל. הימנעו מפריסות (presets) אגרסיביות של לוח האם או מאוברקלוקינג (overclocking) שמגבירים מתח או חום מתמשך.
4. שפרו קירור וזרימת אוויר. טמפרטורות נמוכות יותר עוזרות להפחית את חוסר יציבות התזמון הקשור ל-Vmin Shift.
5. שקלו מימוש אחריות אם חוסר היציבות נמשך. מערכות שממשיכות לקרוס תחת הגדרות ברירת מחדל עשויות להכיל חומרה שכבר התדרדרה ויכולות להיות זכאיות להחלפה במסגרת תוכנית האחריות המורחבת של אינטל.
קריסות פיירפוקס בחלק ממערכות Raptor Lake התבררו כמקרה נדיר שבו קוד הדפדפן חשף תקלת חומרה עמוקה יותר של המעבד. השחרור של Firefox 151.0.1 מפחית משמעותית את הקריסות הנראות לעין על ידי חיזוק נתיב הקוד המושפע, בעוד שעדכוני המיקרו-קוד של אינטל שואפים למנוע חוסר יציבות נוסף במעבדים עצמם.
עבור רוב המשתמשים, התקנת גרסת פיירפוקס ועדכון ה-BIOS העדכניים ביותר תפחית דרמטית את תדירות הקריסות. אבל אם מעבד כבר חווה הידרדרות משמעותית מעומס מתח או חום, ייתכן שהחלפת המעבד היא הפתרון הקבוע היחיד.