From: Pankaj Gupta Date: Tue, 30 Jul 2019 11:37:08 +0000 (+0530) Subject: dm table: fix dax_dev NULL dereference in device_synchronous() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=5348deb138abb90ca8f728356772e38abc791cf9;p=linux.git dm table: fix dax_dev NULL dereference in device_synchronous() If a device doesn't support DAX its 'dax_dev' is NULL. Fix device_synchronous() to first check if dax_dev is NULL before dereferencing it. Fixes: 2e9ee0955d3c ("dm: enable synchronous dax") Reported-by: jencce.kernel@gmail.com Signed-off-by: Pankaj Gupta Acked-by: Dan Williams Signed-off-by: Mike Snitzer --- diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c index caaee8032afef..12857beaa7f90 100644 --- a/drivers/md/dm-table.c +++ b/drivers/md/dm-table.c @@ -894,7 +894,7 @@ int device_supports_dax(struct dm_target *ti, struct dm_dev *dev, static int device_synchronous(struct dm_target *ti, struct dm_dev *dev, sector_t start, sector_t len, void *data) { - return dax_synchronous(dev->dax_dev); + return dev->dax_dev && dax_synchronous(dev->dax_dev); } bool dm_table_supports_dax(struct dm_table *t,