linux/drivers/md
Bian Jin chen 0c17853c97 dm table: Avoid null pointer dereference
Test: vts_libdm_test

Unable to handle kernel access to user memory outside uaccess routines
at virtual address 0000000000000018
[   83.108561] Mem abort info:
[   83.108896]   ESR = 0x96000005
[   83.109191]   Exception class = DABT (current EL), IL = 32 bits
[   83.110203]   SET = 0, FnV = 0
[   83.110505]   EA = 0, S1PTW = 0
[   83.110894] Data abort info:
[   83.111182]   ISV = 0, ISS = 0x00000005
[   83.111537]   CM = 0, WnR = 0
[   83.111929] user pgtable: 4k pages, 39-bit VAs, pgdp = 00000000cff2854e
[   83.112534] [0000000000000018] pgd=0000000033f28003, pud=0000000033f28003, pmd=0000000000000000
[   83.113403] Internal error: Oops: 96000005 [#1] PREEMPT SMP
[   83.113912] Modules linked in: 8723cs
[   83.114257] Process vts_libdm_test (pid: 1985, stack limit = 0x000000007ea1bacc)
[   83.114923] CPU: 3 PID: 1985 Comm: vts_libdm_test Not tainted 4.19.154 #41
[   83.115534] Hardware name: Rockchip rk3326 863 rkisp1 board (DT)
[   83.116082] pstate: 40400005 (nZcv daif +PAN -UAO)
[   83.116534] pc : __pi_strncmp+0x24/0x208
[   83.116908] lr : dm_table_add_target+0x184/0x3bc
[   83.117326] sp : ffffff8012bcbb70

Fixes: 531fc5e280 ("dm: add check target device probe completely")
Signed-off-by: Bian Jin chen <kenjc.bian@rock-chips.com>
Change-Id: Icb943c4d1dfe116b3b39f4cd77b2eda232de65fe
2020-11-17 15:20:08 +08:00
..
bcache bcache: fix a lost wake-up problem caused by mca_cannibalize_lock 2020-10-01 13:14:27 +02:00
persistent-data dm space map common: fix to ensure new block isn't already in use 2020-02-11 04:34:03 -08:00
dm-bio-prison-v1.c
dm-bio-prison-v1.h
dm-bio-prison-v2.c
dm-bio-prison-v2.h
dm-bio-record.h dm bio record: save/restore bi_end_io and bi_integrity 2020-03-25 08:06:07 +01:00
dm-bow.c ANDROID: dm-bow: Add block_size option 2020-06-09 15:25:41 +00:00
dm-bufio.c UPSTREAM: dm bufio: introduce a global cache replacement 2019-10-31 15:53:20 +01:00
dm-builtin.c
dm-cache-background-tracker.c
dm-cache-background-tracker.h
dm-cache-block-types.h
dm-cache-metadata.c dm cache metadata: Avoid returning cmd->bm wild pointer on error 2020-09-09 19:04:31 +02:00
dm-cache-metadata.h
dm-cache-policy-internal.h
dm-cache-policy-smq.c
dm-cache-policy.c
dm-cache-policy.h
dm-cache-target.c dm cache: fix a crash due to incorrect work item cancelling 2020-03-11 14:15:05 +01:00
dm-core.h dm: disable DISCARD if the underlying storage no longer supports it 2019-08-25 10:48:01 +02:00
dm-crypt.c This is the 4.19.129 stable release 2020-06-22 10:50:54 +02:00
dm-default-key.c ANDROID: dm-default-key: set dun_bytes more precisely 2020-05-14 15:44:27 -07:00
dm-delay.c dm delay: fix a crash when invalid device is specified 2019-05-25 18:23:39 +02:00
dm-era-target.c
dm-exception-store.c
dm-exception-store.h
dm-flakey.c dm flakey: Properly corrupt multi-page bios. 2019-12-05 09:20:36 +01:00
dm-integrity.c dm integrity: fix integrity recalculation that is improperly skipped 2020-07-29 10:16:59 +02:00
dm-io.c
dm-ioctl.c dm ioctl: harden copy_params()'s copy_from_user() from malicious users 2018-11-13 11:08:49 -08:00
dm-kcopyd.c dm kcopyd: always complete failed jobs 2019-08-29 08:28:55 +02:00
dm-linear.c ANDROID: dm: enable may_passthrough_inline_crypto on some targets 2020-01-24 10:49:09 -08:00
dm-log-userspace-base.c
dm-log-userspace-transfer.c
dm-log-userspace-transfer.h
dm-log-writes.c dm log writes: make sure super sector log updates are written in order 2019-07-03 13:14:45 +02:00
dm-log.c
dm-mpath.c dm mpath: switch paths in dm_blk_ioctl() code path 2020-06-25 15:32:49 +02:00
dm-mpath.h
dm-path-selector.c
dm-path-selector.h
dm-queue-length.c
dm-raid.c dm raid: fix false -EBUSY when handling check/repair message 2019-12-05 09:20:37 +01:00
dm-raid1.c dm: Check for device sector overflow if CONFIG_LBDAF is not set 2019-01-26 09:32:42 +01:00
dm-region-hash.c
dm-round-robin.c
dm-rq.c dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue() 2020-08-21 11:05:35 +02:00
dm-rq.h
dm-service-time.c
dm-snap-persistent.c block: fix an integer overflow in logical block size 2020-01-23 08:21:29 +01:00
dm-snap-transient.c
dm-snap.c dm snapshot: rework COW throttling to fix deadlock 2019-11-06 13:05:11 +01:00
dm-stats.c
dm-stats.h
dm-stripe.c
dm-switch.c
dm-sysfs.c
dm-table.c dm table: Avoid null pointer dereference 2020-11-17 15:20:08 +08:00
dm-target.c dm mpath: fix missing call of path selector type->end_io 2019-09-16 08:22:12 +02:00
dm-thin-metadata.c dm thin metadata: Avoid returning cmd->bm wild pointer on error 2020-09-09 19:04:31 +02:00
dm-thin-metadata.h dm thin: fix passdown_double_checking_shared_status() 2019-01-31 08:14:38 +01:00
dm-thin.c dm thin: add sanity checks to thin-pool and external snapshot creation 2019-04-05 22:32:59 +02:00
dm-uevent.c
dm-uevent.h
dm-unstripe.c dm: Check for device sector overflow if CONFIG_LBDAF is not set 2019-01-26 09:32:42 +01:00
dm-verity-avb.c ANDROID: AVB error handler to invalidate vbmeta partition. 2018-12-05 09:48:12 -08:00
dm-verity-fec.c dm verity fec: fix hash block number in verity_fec_decode 2020-05-06 08:13:28 +02:00
dm-verity-fec.h
dm-verity-target.c ANDROID: Add kconfig to make dm-verity check_at_most_once default enabled 2019-11-29 09:53:13 +08:00
dm-verity.h ANDROID: AVB error handler to invalidate vbmeta partition. 2018-12-05 09:48:12 -08:00
dm-writecache.c dm writecache: handle DAX to partitions on persistent memory correctly 2020-09-09 19:04:31 +02:00
dm-zero.c
dm-zoned-metadata.c dm zoned: return NULL if dmz_get_zone_for_reclaim() fails to find a zone 2020-06-25 15:32:58 +02:00
dm-zoned-reclaim.c dm zoned: return NULL if dmz_get_zone_for_reclaim() fails to find a zone 2020-06-25 15:32:58 +02:00
dm-zoned-target.c dm zoned: assign max_io_len correctly 2020-07-09 09:37:12 +02:00
dm-zoned.h dm zoned: reduce overhead of backing device checks 2019-12-17 20:34:53 +01:00
dm.c This is the 4.19.135 stable release 2020-07-29 13:22:30 +02:00
dm.h
Kconfig Merge remote branch 'android-4.19' of https://android.googlesource.com/kernel/common 2020-03-21 19:46:46 +08:00
Makefile ANDROID: dm: add dm-default-key target for metadata encryption 2020-01-24 10:49:09 -08:00
md-bitmap.c md/bitmap: avoid race window between md_bitmap_resize and bitmap_file_clear_bit 2019-12-31 16:35:25 +01:00
md-bitmap.h md: Avoid namespace collision with bitmap API 2018-08-01 15:49:39 -07:00
md-cluster.c md-cluster: fix wild pointer of unlock_all_bitmaps() 2020-08-19 08:14:51 +02:00
md-cluster.h
md-faulty.c
md-linear.c md: improve handling of bio with REQ_PREFLUSH in md_flush_request() 2019-12-17 20:34:55 +01:00
md-linear.h
md-multipath.c md: improve handling of bio with REQ_PREFLUSH in md_flush_request() 2019-12-17 20:34:55 +01:00
md-multipath.h
md.c md: add feature flag MD_FEATURE_RAID0_LAYOUT 2020-06-25 15:33:10 +02:00
md.h md: improve handling of bio with REQ_PREFLUSH in md_flush_request() 2019-12-17 20:34:55 +01:00
raid1-10.c
raid1.c md: raid1: check rdev before reference in raid1_sync_request func 2020-01-09 10:18:57 +01:00
raid1.h
raid5-cache.c md/raid5: fix 'out of memory' during raid cache recovery 2019-02-06 17:30:16 +01:00
raid5-log.h md/raid5-cache: disable reshape completely 2018-08-31 17:38:09 -07:00
raid5-ppl.c
raid5.c md/raid5: Fix Force reconstruct-write io stuck in degraded raid5 2020-08-21 11:05:32 +02:00
raid5.h
raid10.c md: improve handling of bio with REQ_PREFLUSH in md_flush_request() 2019-12-17 20:34:55 +01:00
raid10.h
raid0.c md: add feature flag MD_FEATURE_RAID0_LAYOUT 2020-06-25 15:33:10 +02:00
raid0.h md/raid0: avoid RAID0 data corruption due to layout confusion. 2019-10-05 13:10:12 +02:00