CyberRota Analysis
AI-GeneratedThe vulnerability affects the Linux kernel's bnx2x driver, specifically in the bnx2x_init_firmware() function, where a double free condition can occur due to improper handling of pointers during error cleanup. This flaw could lead to memory corruption, potentially allowing an attacker to execute arbitrary code or crash the system. Organizations using affected Linux distributions with the bnx2x driver should prioritize applying the fix to mitigate potential exploitation risks.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: bnx2x: fix double free in bnx2x_init_firmware() error path bnx2x_init_firmware() frees bp->init_ops, bp->init_data and bp->init_ops_offsets in its error path without setting them to NULL. The cleanup function bnx2x_release_firmware() frees the same three pointers unconditionally, so if init_firmware fails and release_firmware is later called (e.g. from __bnx2x_remove or through the function state machine), all three are freed a second time. Set each pointer to NULL after kfree() in the error path so that the subsequent kfree(NULL) in bnx2x_release_firmware() is a safe no-op.