Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm
Pull ARM fixes from Russell King: "Three further fixes for ARM. Alexandre Courbot was having problems with DMA allocations with the GFP flags affecting where the tracking data was being allocated from. Vladimir Murzin noticed that the CPU feature code was not entirely correct, which can cause some features to be misreported" * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm: ARM: 8564/1: fix cpu feature extracting helper ARM: 8563/1: fix demoting HWCAP_SWP ARM: 8551/2: DMA: Fix kzalloc flags in __dma_alloc
This commit is contained in:
commit
f862d66a1a
@ -276,7 +276,7 @@ static inline int __attribute_const__ cpuid_feature_extract_field(u32 features,
|
|||||||
int feature = (features >> field) & 15;
|
int feature = (features >> field) & 15;
|
||||||
|
|
||||||
/* feature registers are signed values */
|
/* feature registers are signed values */
|
||||||
if (feature > 8)
|
if (feature > 7)
|
||||||
feature -= 16;
|
feature -= 16;
|
||||||
|
|
||||||
return feature;
|
return feature;
|
||||||
|
@ -512,7 +512,7 @@ static void __init elf_hwcap_fixup(void)
|
|||||||
*/
|
*/
|
||||||
if (cpuid_feature_extract(CPUID_EXT_ISAR3, 12) > 1 ||
|
if (cpuid_feature_extract(CPUID_EXT_ISAR3, 12) > 1 ||
|
||||||
(cpuid_feature_extract(CPUID_EXT_ISAR3, 12) == 1 &&
|
(cpuid_feature_extract(CPUID_EXT_ISAR3, 12) == 1 &&
|
||||||
cpuid_feature_extract(CPUID_EXT_ISAR3, 20) >= 3))
|
cpuid_feature_extract(CPUID_EXT_ISAR4, 20) >= 3))
|
||||||
elf_hwcap &= ~HWCAP_SWP;
|
elf_hwcap &= ~HWCAP_SWP;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -762,7 +762,8 @@ static void *__dma_alloc(struct device *dev, size_t size, dma_addr_t *handle,
|
|||||||
if (!mask)
|
if (!mask)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
buf = kzalloc(sizeof(*buf), gfp);
|
buf = kzalloc(sizeof(*buf),
|
||||||
|
gfp & ~(__GFP_DMA | __GFP_DMA32 | __GFP_HIGHMEM));
|
||||||
if (!buf)
|
if (!buf)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user