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
F148684746: D36827.id.diff
Thu, Mar 19, 3:00 PM
F148601128: D36827.id.diff
Thu, Mar 19, 1:58 AM
Unknown Object (File)
Mon, Mar 16, 11:30 AM
Unknown Object (File)
Sun, Feb 22, 2:59 PM
Unknown Object (File)
Feb 14 2026, 8:48 PM
Unknown Object (File)
Jan 16 2026, 1:32 PM
Unknown Object (File)
Jan 15 2026, 10:07 PM
Unknown Object (File)
Jan 15 2026, 6:56 PM
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