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
F163852982: D44585.diff
Sun, Jul 26, 3:40 PM
F163808412: D44585.id.diff
Sun, Jul 26, 6:02 AM
F163808406: D44585.id.diff
Sun, Jul 26, 6:02 AM
Unknown Object (File)
Fri, Jul 24, 11:17 PM
Unknown Object (File)
Wed, Jul 22, 4:02 AM
Unknown Object (File)
Tue, Jul 21, 2:10 AM
Unknown Object (File)
Sat, Jul 18, 7:11 PM
Unknown Object (File)
Sun, Jul 12, 12:14 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