Page MenuHomeFreeBSD

Reinstate returning EOVERFLOW from stats_v1_blob_clone()
ClosedPublic

Authored by lstewart on Apr 2 2024, 6:59 AM.
Tags
None
Referenced Files
F115940740: D44585.id136460.diff
Wed, Apr 30, 4:34 PM
F115928350: D44585.diff
Wed, Apr 30, 1:03 PM
Unknown Object (File)
Mon, Apr 7, 1:17 AM
Unknown Object (File)
Feb 14 2025, 11:53 PM
Unknown Object (File)
Feb 12 2025, 8:20 PM
Unknown Object (File)
Feb 12 2025, 7:58 AM
Unknown Object (File)
Feb 5 2025, 3:46 AM
Unknown Object (File)
Feb 5 2025, 3:35 AM
Subscribers

Details

Summary

a0993376ec5f (from D43179) subtly changed stats_v1_blob_clone() to stop returning EOVERFLOW in the case where the user buffer is not large enough to receive the entire statsblob. This results in any consumers which are implemented to retry on receiving EOVERFLOW to instead give up after receiving an empty statsblob header.

Fix by latching any errors recorded prior to copyout.

Obtained from: Netflix, Inc.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 56863
Build 53751: arc lint + arc unit