Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mshv: Initialize local variables early upon region invalidation

Ensure local variables are initialized before use so that the warning can
print the right values if locking the region to invalidate fails due to
inability to lock the region.

Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Fixes: b9a66cd5ccbb ("mshv: Add support for movable memory regions")
Signed-off-by: Stanislav Kinsburskii <skinsburskii@linux.microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>

authored by

Stanislav Kinsburskii and committed by
Wei Liu
beb15a60 3a2bcc12

+7 -7
+7 -7
drivers/hv/mshv_regions.c
··· 494 494 unsigned long mstart, mend; 495 495 int ret = -EPERM; 496 496 497 - if (mmu_notifier_range_blockable(range)) 498 - mutex_lock(&region->mutex); 499 - else if (!mutex_trylock(&region->mutex)) 500 - goto out_fail; 501 - 502 - mmu_interval_set_seq(mni, cur_seq); 503 - 504 497 mstart = max(range->start, region->start_uaddr); 505 498 mend = min(range->end, region->start_uaddr + 506 499 (region->nr_pages << HV_HYP_PAGE_SHIFT)); 507 500 508 501 page_offset = HVPFN_DOWN(mstart - region->start_uaddr); 509 502 page_count = HVPFN_DOWN(mend - mstart); 503 + 504 + if (mmu_notifier_range_blockable(range)) 505 + mutex_lock(&region->mutex); 506 + else if (!mutex_trylock(&region->mutex)) 507 + goto out_fail; 508 + 509 + mmu_interval_set_seq(mni, cur_seq); 510 510 511 511 ret = mshv_region_remap_pages(region, HV_MAP_GPA_NO_ACCESS, 512 512 page_offset, page_count);