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
Unknown Object (File)
Fri, Sep 18, 5:39 PM
Unknown Object (File)
Fri, Sep 18, 5:23 PM
Unknown Object (File)
Fri, Sep 18, 2:50 PM
Unknown Object (File)
Fri, Sep 18, 3:55 AM
Unknown Object (File)
Sat, Sep 5, 8:01 PM
Unknown Object (File)
Sat, Sep 5, 3:46 AM
Unknown Object (File)
Thu, Sep 3, 7:36 PM
Unknown Object (File)
Thu, Sep 3, 4:59 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