On Tue, Apr 08, 2025 at 03:30:01PM +0800, Wentao Liang wrote: > The function pdc20621_prog_dimm0() calls the function pdc20621_i2c_read() > but does not handle the error if the read fails. This could lead to > process with invalid data. A proper implementation can be found in > /source/drivers/ata/sata_sx4.c, pdc20621_prog_dimm_global(). As mentioned > in its commit: bb44e154e25125bef31fa956785e90fccd24610b, the variable spd0 > might be used uninitialized when pdc20621_i2c_read() fails. > > Add error handling to pdc20621_i2c_read(). If a read operation fails, > an error message is logged via dev_err(), and return a negative error > code. > > Add error handling to pdc20621_prog_dimm0() in pdc20621_dimm_init(), and > return a negative error code if pdc20621_prog_dimm0() fails. > > Fixes: 4447d3515616 ("libata: convert the remaining SATA drivers to new init model") > Signed-off-by: Wentao Liang <vulab@xxxxxxxxxxx> > --- Reviewed-by: Niklas Cassel <cassel@xxxxxxxxxx>