Page MenuHomeFreeBSD

nvmecontrol wdc: Don't pass a bogus pointer to free().
ClosedPublic

Authored by jhb on Sep 29 2022, 10:39 PM.
Tags
None
Referenced Files
F137890633: D36827.id111394.diff
Wed, Nov 26, 10:38 PM
Unknown Object (File)
Sun, Nov 23, 3:13 PM
Unknown Object (File)
Thu, Nov 20, 2:23 AM
Unknown Object (File)
Sun, Nov 9, 2:18 AM
Unknown Object (File)
Fri, Nov 7, 2:41 PM
Unknown Object (File)
Thu, Nov 6, 9:18 AM
Unknown Object (File)
Wed, Nov 5, 9:54 PM
Unknown Object (File)
Thu, Oct 30, 2:24 AM
Subscribers

Details

Summary

wdc_get_dui_log_size allocates a buffer and then advances the
returned pointer. Passing this advanced pointer to free() is UB,
so save the original pointer to pass to free() instead.

Reported by: GCC 12 -Wfree-nonheap-object

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable