Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc64: Fix NMI startup bug which also breaks perf. sparc: fix size argument to find_next_zero_bit() sparc: use bitmap_set() sparc32: unaligned memory access (MNA) trap handler bug
This commit is contained in:
@@ -255,10 +255,9 @@ static inline iopte_t *alloc_npages(struct device *dev, struct iommu *iommu,
|
||||
static int iommu_alloc_ctx(struct iommu *iommu)
|
||||
{
|
||||
int lowest = iommu->ctx_lowest_free;
|
||||
int sz = IOMMU_NUM_CTXS - lowest;
|
||||
int n = find_next_zero_bit(iommu->ctx_bitmap, sz, lowest);
|
||||
int n = find_next_zero_bit(iommu->ctx_bitmap, IOMMU_NUM_CTXS, lowest);
|
||||
|
||||
if (unlikely(n == sz)) {
|
||||
if (unlikely(n == IOMMU_NUM_CTXS)) {
|
||||
n = find_next_zero_bit(iommu->ctx_bitmap, lowest, 1);
|
||||
if (unlikely(n == lowest)) {
|
||||
printk(KERN_WARNING "IOMMU: Ran out of contexts.\n");
|
||||
|
@@ -167,5 +167,3 @@ out_unregister:
|
||||
unregister_perf_hsvc();
|
||||
return err;
|
||||
}
|
||||
|
||||
early_initcall(pcr_arch_init);
|
||||
|
@@ -49,6 +49,7 @@
|
||||
#include <asm/mdesc.h>
|
||||
#include <asm/ldc.h>
|
||||
#include <asm/hypervisor.h>
|
||||
#include <asm/pcr.h>
|
||||
|
||||
#include "cpumap.h"
|
||||
|
||||
@@ -1358,6 +1359,7 @@ void __cpu_die(unsigned int cpu)
|
||||
|
||||
void __init smp_cpus_done(unsigned int max_cpus)
|
||||
{
|
||||
pcr_arch_init();
|
||||
}
|
||||
|
||||
void smp_send_reschedule(int cpu)
|
||||
|
@@ -24,9 +24,9 @@ retl_efault:
|
||||
.globl __do_int_store
|
||||
__do_int_store:
|
||||
ld [%o2], %g1
|
||||
cmp %1, 2
|
||||
cmp %o1, 2
|
||||
be 2f
|
||||
cmp %1, 4
|
||||
cmp %o1, 4
|
||||
be 1f
|
||||
srl %g1, 24, %g2
|
||||
srl %g1, 16, %g7
|
||||
|
Reference in New Issue
Block a user