เจฒเฉ€เจจเจ•เจธ 5.12 เจ•เจฐเจจเจฒ เจจเฉ‡ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚ เจ—เจฒเจคเฉ€เจ†เจ‚ เจฆเจพ เจชเจคเจพ เจฒเจ—เจพเจ‰เจฃ เจฒเจˆ KFence เจธเจฌ-เจธเจฟเจธเจŸเจฎ เจจเฉ‚เฉฐ เจ…เจชเจฃเจพเจ‡เจ† เจนเฉˆเฅค

เจฒเฉ€เจจเจ•เจธ เจ•เจฐเจจเจฒ 5.12, เจœเฉ‹ เจ•เจฟ เจตเจฟเจ•เจพเจธ เจตเจฟเฉฑเจš เจนเฉˆ, เจตเจฟเฉฑเจš KFence (เจ•เจฐเจจเจฒ เจ‡เจฒเฉˆเจ•เจŸเฉเจฐเจฟเจ• เจซเฉˆเจ‚เจธ) เจตเจฟเจงเฉ€ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ เจธเจผเจพเจฎเจฒ เจนเฉˆ, เจœเฉ‹ เจ•เจฟ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจนเฉˆเจ‚เจกเจฒเจฟเฉฐเจ—, เจ•เฉˆเจšเจฟเฉฐเจ— เจฌเจซเจฐ เจ“เจตเจฐเจฐเจจ, เจซเจฐเฉ€ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจเจ•เจธเฉˆเจธ, เจ…เจคเฉ‡ เจธเจฎเจพเจจ เจ•เจฒเจพเจธ เจฆเฉ€เจ†เจ‚ เจนเฉ‹เจฐ เจ—เจฒเจคเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจ‡เจธเฉ‡ เจคเจฐเฉเจนเจพเจ‚ เจฆเฉ€ เจ•เจพเจฐเจœเจธเจผเฉ€เจฒเจคเจพ KASAN เจฌเจฟเจฒเจก เจตเจฟเจ•เจฒเจช เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ•เจฐเจจเจฒ เจตเจฟเฉฑเจš เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจฎเฉŒเจœเฉ‚เจฆ เจธเฉ€ (เจ•เจฐเจจเจฒ เจเจกเจฐเฉˆเฉฑเจธ เจธเฉˆเจจเฉ€เจŸเจพเจˆเจœเจผเจฐ, เจ†เจงเฉเจจเจฟเจ• gcc เจ…เจคเฉ‡ เจ•เจฒเฉˆเจ‚เจ— เจตเจฟเฉฑเจš เจเจกเจฐเฉˆเฉฑเจธ เจธเฉˆเจจเฉ€เจŸเจพเจˆเจœเจผเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ) - เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจ‡เจธเจจเฉ‚เฉฐ เจฎเฉเฉฑเจ– เจคเฉŒเจฐ 'เจคเฉ‡ เจกเฉ€เจฌเฉฑเจ—เจฟเฉฐเจ— เจตเจฐเจคเฉ‹เจ‚ เจฒเจˆ เจฐเฉฑเจ–เจฟเจ† เจ—เจฟเจ† เจธเฉ€เฅค KFence เจธเจฌ-เจธเจฟเจธเจŸเจฎ เจ†เจชเจฃเฉ€ เจ‰เฉฑเจš เจ“เจชเจฐเฉ‡เจŸเจฟเฉฐเจ— เจธเจชเฉ€เจก เจตเจฟเฉฑเจš KASAN เจคเฉ‹เจ‚ เจตเฉฑเจ–เจฐเจพ เจนเฉˆ, เจœเฉ‹ เจ‡เจธ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพ เจจเฉ‚เฉฐ เจ•เจพเจฐเจœเจธเจผเฉ€เจฒ เจชเฉเจฐเจฃเจพเจฒเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจ•เฉ‹เจฐเจพเจ‚ 'เจคเฉ‡ เจตเฉ€ เจตเจฐเจคเจฃเจพ เจธเฉฐเจญเจต เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆเฅค

เจ‰เจคเจชเจพเจฆเจจ เจชเฉเจฐเจฃเจพเจฒเฉ€เจ†เจ‚ 'เจคเฉ‡ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจฆเฉ€เจ†เจ‚ เจ—เจฒเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจซเฉœเจจเจพ เจธเฉฐเจญเจต เจฌเจฃเจพเจตเฉ‡เจ—เฉ€ เจœเฉ‹ เจŸเฉˆเจธเจŸ เจฐเจจ เจตเจฟเฉฑเจš เจฆเจฟเจ–เจพเจˆ เจจเจนเฉ€เจ‚ เจฆเจฟเฉฐเจฆเฉ€เจ†เจ‚ เจ…เจคเฉ‡ เจธเจฟเจฐเจซ เจตเจฐเจ•เจฒเฉ‹เจก เจœเจพเจ‚ เจฒเฉฐเจฌเฉ‡ เจธเจฎเฉ‡เจ‚ เจฆเฉ‡ เจ“เจชเจฐเฉ‡เจธเจผเจจ (เจตเฉฑเจกเฉ‡ เจ…เจชเจŸเจพเจˆเจฎ เจฆเฉ‡ เจจเจพเจฒ) เจฆเฉŒเจฐเจพเจจ เจฆเจฟเจ–เจพเจˆ เจฆเจฟเฉฐเจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจ‰เจคเจชเจพเจฆเจจ เจชเฉเจฐเจฃเจพเจฒเฉ€เจ†เจ‚ 'เจคเฉ‡ KFence เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจจเจพเจฒ เจ•เจฐเจจเจฒ เจฆเฉ‡ เจธเฉฐเจšเจพเจฒเจจ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเจจ เจตเจฟเฉฑเจš เจธเจผเจพเจฎเจฒ เจฎเจธเจผเฉ€เจจเจพเจ‚ เจฆเฉ€ เจ—เจฟเจฃเจคเฉ€ เจจเฉ‚เฉฐ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจคเฉŒเจฐ 'เจคเฉ‡ เจตเจงเจพเจ‰เจฃเจพ เจธเฉฐเจญเจต เจฌเจฃเจพเจตเฉ‡เจ—เฉ€เฅค

KFence เจจเจฟเจธเจผเจšเจฟเจค เจ…เฉฐเจคเจฐเจพเจฒเจพเจ‚ 'เจคเฉ‡ เจนเฉ€เจช เจตเจฟเฉฑเจš เจ—เจพเจฐเจก เจชเฉฐเจจเจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจธเจผเจพเจฎเจฒ เจ•เจฐเจ•เฉ‡ เจจเจฟเจŠเจจเจคเจฎ เจฒเฉ‹เจก-เจธเฉเจคเฉฐเจคเจฐ เจ“เจตเจฐเจนเฉˆเฉฑเจก เจชเฉเจฐเจพเจชเจค เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ…เจ—เจฒเฉ‡ เจธเฉเจฐเฉฑเจ–เจฟเจ† เจ…เฉฐเจคเจฐเจพเจฒ เจฆเฉ€ เจฎเจฟเจ†เจฆ เจชเฉเฉฑเจ—เจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, KFence, เจธเจŸเฉˆเจ‚เจกเจฐเจก เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจ…เจฒเฉ‹เจ•เฉ‡เจธเจผเจจ เจธเจฟเจธเจŸเจฎ (SLAB เจœเจพเจ‚ SLUB เจ…เจฒเฉ‹เจ•เฉ‡เจŸเจฐ) เจฆเฉเจ†เจฐเจพ, KFence เจ†เจฌเจœเฉˆเจ•เจŸ เจชเฉ‚เจฒ เจคเฉ‹เจ‚ เจ…เจ—เจฒเจพ เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉฐเจจเจพ เจœเฉ‹เฉœเจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจŸเจพเจˆเจฎ เจ•เจพเจŠเจ‚เจŸเจฐ เจฐเจฟเจชเฉ‹เจฐเจŸ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจนเจฐเฉ‡เจ• KFence เจ†เจฌเจœเฉˆเจ•เจŸ เจ‡เฉฑเจ• เจตเฉฑเจ–เจฐเฉ‡ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจชเฉฐเจจเฉ‡ เจตเจฟเฉฑเจš เจธเจฅเจฟเจค เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ–เฉฑเจฌเฉ‡ เจ…เจคเฉ‡ เจธเฉฑเจœเฉ‡ เจ•เจฟเจจเจพเจฐเจฟเจ†เจ‚ เจฆเฉ‡ เจจเจพเจฒ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจชเฉฐเจจเฉ‡ เจ—เจพเจฐเจก เจชเฉฐเจจเฉ‡ เจฌเจฃเจพเจ‰เจ‚เจฆเฉ‡ เจนเจจ, เจœเจฟเจธเจฆเจพ เจ†เจ•เจพเจฐ เจฌเฉ‡เจคเจฐเจคเฉ€เจฌ เจšเฉเจฃเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚, เจ†เจฌเจœเฉˆเจ•เจŸ เจตเจพเจฒเฉ‡ เจชเฉฐเจจเจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉฐเจจเจฟเจ†เจ‚ เจฆเฉเจ†เจฐเจพ เจ‡เฉฑเจ• เจฆเฉ‚เจœเฉ‡ เจคเฉ‹เจ‚ เจตเฉฑเจ– เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจœเฉ‹ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจชเจนเฉเฉฐเจš 'เจคเฉ‡ เจ‡เฉฑเจ• "เจชเฉ‡เจœ เจซเจพเจฒเจŸ" เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจ•เฉ€เจคเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจเฅค เจ†เจฌเจœเฉˆเจ•เจŸ เจชเฉ‡เจœเจพเจ‚ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจธเฉ€เจฎเจพ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจฆเฉ€เจ†เจ‚ เจฒเจฟเจ–เจคเจพเจ‚ เจฆเจพ เจชเจคเจพ เจฒเจ—เจพเจ‰เจฃ เจฒเจˆ, เจชเฉˆเจŸเจฐเจจ-เจ…เจงเจพเจฐเจฟเจค "เจฐเฉˆเฉฑเจก เจœเจผเฉ‹เจจ" เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจตเฉ€ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจœเฉ‹ เจ•เจฟ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจจเฉ‚เฉฐ เจตเจธเจคเฉ‚เจ†เจ‚ เจฆเฉเจ†เจฐเจพ เจจเจนเฉ€เจ‚ เจตเจฐเจคเฉ€ เจœเจพเจ‚เจฆเฉ€, เจฌเจพเจ•เฉ€ เจฐเจนเจฟเฉฐเจฆเฉ€ เจนเฉˆ เจœเจฆเฉ‹เจ‚ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจชเฉฐเจจเจฟเจ†เจ‚ เจฆเจพ เจ†เจ•เจพเจฐ เจ‡เจ•เจธเจพเจฐ เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค โ€”+โ€”โ€”โ€”โ€”+โ€”โ€”โ€”โ€”+โ€”โ€”โ€”โ€”+โ€”โ€”โ€”โ€”+โ€”โ€”โ€”+โ€” | xxxxxxxxx | เจ“: | xxxxxxxxx | :เจ“ | xxxxxxxxx | | xxxxxxxxx | เจฌเฉ€: | xxxxxxxxx | :เจฌเฉ€ | xxxxxxxxx | | x เจ—เจพเจฐเจก x | เจœเฉ‡: เจฒเจพเจฒ- | x เจ—เจพเจฐเจก x | เจฒเจพเจฒ- : เจœเฉ‡ | x เจ—เจพเจฐเจก x | | xxxxxxxxx | เจˆ: เจœเจผเฉ‹เจจ | xxxxxxxxx | เจœเจผเฉ‹เจจ: เจˆ | xxxxxxxxx | | xxxxxxxxx | เจธเฉ€: | xxxxxxxxx | : เจธเฉ€ | xxxxxxxxx | | xxxxxxxxx | เจŸเฉ€: | xxxxxxxxx | : เจŸเฉ€ | xxxxxxxxx | โ€”+โ€”โ€”โ€”โ€”+โ€”โ€”โ€”โ€”+โ€”โ€”โ€”โ€”+โ€”โ€”โ€”โ€”+โ€”โ€”โ€”+

เจœเฉ‡เจ•เจฐ เจฌเจซเจฐ เจธเฉ€เจฎเจพเจตเจพเจ‚ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจ•เจฟเจธเฉ‡ เจ–เฉ‡เจคเจฐ เจจเฉ‚เฉฐ เจเจ•เจธเฉˆเจธ เจ•เจฐเจจ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจคเจพเจ‚ เจ“เจชเจฐเฉ‡เจธเจผเจจ เจธเฉเจฐเฉฑเจ–เจฟเจ† เจชเฉฐเจจเฉ‡ เจจเฉ‚เฉฐ เจชเฉเจฐเจญเจพเจตเจฟเจค เจ•เจฐเจฆเจพ เจนเฉˆ, เจœเจฟเจธ เจจเจพเจฒ "เจชเฉ‡เจœ เจซเจพเจฒเจŸ" เจชเฉˆเจฆเจพ เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจœเฉ‹ เจ•เฉ‡-เจซเฉˆเจ‚เจธ เจจเฉ‚เฉฐ เจฐเฉ‹เจ•เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจชเจ›เจพเจฃเฉ€ เจ—เจˆ เจธเจฎเฉฑเจธเจฟเจ† เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจจเฉ‚เฉฐ เจฒเฉŒเจ— เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš, KFence เจ‡เฉฑเจ• เจ—เจฒเจคเฉ€ เจจเฉ‚เฉฐ เจฌเจฒเฉŒเจ• เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจธเจฟเจฐเจซ เจฒเฉŒเจ— เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจšเฉ‡เจคเจพเจตเจจเฉ€ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจ•เจฐเจฆเจพ เจนเฉˆ, เจชเจฐ เจ‡เฉฑเจ• "panic_on_warn" เจธเฉˆเจŸเจฟเฉฐเจ— เจนเฉˆ เจœเฉ‹ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เจฐเจจเจฒ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจชเฉˆเจจเจฟเจ• เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš เจฐเฉฑเจ–เจฃ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆ เจœเฉ‡เจ•เจฐ เจ•เฉ‹เจˆ เจ—เจฒเจคเฉ€ เจ–เฉ‹เจœเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค

เจธเจฐเฉ‹เจค: opennet.ru

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹