Fix large order allocation in dm mq policy (rhbz 993744)

This commit is contained in:
Josh Boyer 2013-10-10 08:53:35 -04:00
parent 8ca8f7ed8c
commit 58a132eb16
2 changed files with 40 additions and 0 deletions

View File

@ -0,0 +1,31 @@
diff --git a/drivers/md/dm-cache-policy-mq.c b/drivers/md/dm-cache-policy-mq.c
index cab6dd2..ec79c8f 100644
--- a/drivers/md/dm-cache-policy-mq.c
+++ b/drivers/md/dm-cache-policy-mq.c
@@ -868,7 +868,7 @@ static void mq_destroy(struct dm_cache_policy *p)
struct mq_policy *mq = to_mq_policy(p);
free_bitset(mq->allocation_bitset);
- kfree(mq->table);
+ vfree(mq->table);
free_entries(mq);
kfree(mq);
}
@@ -1189,7 +1189,7 @@ static struct dm_cache_policy *mq_create(dm_cblock_t cache_size,
mq->nr_buckets = next_power(from_cblock(cache_size) / 2, 16);
mq->hash_bits = ffs(mq->nr_buckets) - 1;
- mq->table = kzalloc(sizeof(*mq->table) * mq->nr_buckets, GFP_KERNEL);
+ mq->table = vzalloc(sizeof(*mq->table) * mq->nr_buckets);
if (!mq->table)
goto bad_alloc_table;
@@ -1200,7 +1200,7 @@ static struct dm_cache_policy *mq_create(dm_cblock_t cache_size,
return &mq->policy;
bad_alloc_bitset:
- kfree(mq->table);
+ vfree(mq->table);
bad_alloc_table:
free_entries(mq);
bad_cache_alloc:

View File

@ -786,6 +786,9 @@ Patch25125: vfio-iommu-Fixed-interaction-of-VFIO_IOMMU_MAP_DMA.patch
Patch25126: 0001-iwlwifi-don-t-WARN-on-host-commands-sent-when-firmwa.patch
Patch25127: 0002-iwlwifi-don-t-WARN-on-bad-firmware-state.patch
#rhbz 993744
Patch25128: dm-cache-policy-mq_fix-large-scale-table-allocation-bug.patch
# END OF PATCH DEFINITIONS
%endif
@ -1509,6 +1512,9 @@ ApplyPatch vfio-iommu-Fixed-interaction-of-VFIO_IOMMU_MAP_DMA.patch
ApplyPatch 0001-iwlwifi-don-t-WARN-on-host-commands-sent-when-firmwa.patch
ApplyPatch 0002-iwlwifi-don-t-WARN-on-bad-firmware-state.patch
#rhbz 993744
ApplyPatch dm-cache-policy-mq_fix-large-scale-table-allocation-bug.patch
# END OF PATCH APPLICATIONS
%endif
@ -2350,6 +2356,9 @@ fi
# ||----w |
# || ||
%changelog
* Thu Oct 10 2013 Josh Boyer <jwboyer@fedoraproject.org>
- Fix large order allocation in dm mq policy (rhbz 993744)
* Wed Oct 09 2013 Josh Boyer <jwboyer@fedoraproject.org>
- Don't trigger a stack trace on crashing iwlwifi firmware (rhbz 896695)
- Add patch to fix VFIO IOMMU crash (rhbz 998732)