mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 22:14:03 +02:00
iio: pressure: dps310: fix NULL pointer dereference on ACPI probe
When the device is enumerated through its ACPI HID (IFX3100),
i2c_client_get_device_id() returns NULL: the ACPI-derived client name
does not match the driver's i2c_device_id table. dps310_probe() then
dereferences that NULL pointer in "iio->name = id->name" and crashes the
kernel during probe.
The IIO device name is always "dps310", so set it directly and drop the
now-unused device-id lookup.
Fixes: 72ff282819 ("iio: pressure: dps310: Add ACPI HID table")
Cc: stable@vger.kernel.org
Signed-off-by: Rupesh Majhi <zoone.rupert@gmail.com>
Signed-off-by: Jonathan Cameron <jonathan.cameron@oss.qualcomm.com>
This commit is contained in:
parent
8662e56c31
commit
26e9213898
|
|
@ -845,7 +845,6 @@ static const struct iio_info dps310_info = {
|
|||
|
||||
static int dps310_probe(struct i2c_client *client)
|
||||
{
|
||||
const struct i2c_device_id *id = i2c_client_get_device_id(client);
|
||||
struct dps310_data *data;
|
||||
struct iio_dev *iio;
|
||||
int rc;
|
||||
|
|
@ -858,7 +857,7 @@ static int dps310_probe(struct i2c_client *client)
|
|||
data->client = client;
|
||||
mutex_init(&data->lock);
|
||||
|
||||
iio->name = id->name;
|
||||
iio->name = DPS310_DEV_NAME;
|
||||
iio->channels = dps310_channels;
|
||||
iio->num_channels = ARRAY_SIZE(dps310_channels);
|
||||
iio->info = &dps310_info;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user