Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 22da3176 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
  [POWERPC] Fixes for the SLB shadow buffer code
  [POWERPC] Fix a compile warning in powermac/feature.c
  [POWERPC] Fix a compile warning in pci_32.c
  [POWERPC] Fix parse_drconf_memory() for 64-bit start addresses
  [POWERPC] Fix num_cpus calculation in smp_call_function_map()
  [POWERPC] ps3: Fix section mismatch in ps3/setup.c
  [POWERPC] spufs: Fix affinity after introduction of node_allowed() calls
  [POWERPC] Fix special PTE code for secondary hash bucket
  [POWERPC] Expand RPN field to 34 bits when using 64k pages
parents 3e847423 67439b76
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -389,8 +389,11 @@ BEGIN_FTR_SECTION
	ld	r9,PACA_SLBSHADOWPTR(r13)
	li	r12,0
	std	r12,SLBSHADOW_STACKESID(r9) /* Clear ESID */
	eieio
	std	r7,SLBSHADOW_STACKVSID(r9)  /* Save VSID */
	eieio
	std	r0,SLBSHADOW_STACKESID(r9)  /* Save ESID */
	eieio

	slbie	r6
	slbie	r6		/* Workaround POWER5 < DD2.1 issue */
+4 −1
Original line number Diff line number Diff line
@@ -581,8 +581,11 @@ pcibios_assign_resources(void)
			if ((r->flags & IORESOURCE_UNSET) && r->end &&
			    (!ppc_md.pcibios_enable_device_hook ||
			     !ppc_md.pcibios_enable_device_hook(dev, 1))) {
				int rc;

				r->flags &= ~IORESOURCE_UNSET;
				pci_assign_resource(dev, idx);
				rc = pci_assign_resource(dev, idx);
				BUG_ON(rc);
			}
		}

+3 −6
Original line number Diff line number Diff line
@@ -212,11 +212,6 @@ int smp_call_function_map(void (*func) (void *info), void *info, int nonatomic,
		atomic_set(&data.finished, 0);

	spin_lock(&call_lock);
	/* Must grab online cpu count with preempt disabled, otherwise
	 * it can change. */
	num_cpus = num_online_cpus() - 1;
	if (!num_cpus)
		goto done;

	/* remove 'self' from the map */
	if (cpu_isset(smp_processor_id(), map))
@@ -224,7 +219,9 @@ int smp_call_function_map(void (*func) (void *info), void *info, int nonatomic,

	/* sanity check the map, remove any non-online processors. */
	cpus_and(map, map, cpu_online_map);
	if (cpus_empty(map))

	num_cpus = cpus_weight(map);
	if (!num_cpus)
		goto done;

	call_data = &data;
+4 −2
Original line number Diff line number Diff line
@@ -472,10 +472,12 @@ _GLOBAL(htab_call_hpte_insert1)
	/* Now try secondary slot */

	/* real page number in r5, PTE RPN value + index */
	rldicl	r5,r31,64-PTE_RPN_SHIFT,PTE_RPN_SHIFT
	andis.	r0,r31,_PAGE_4K_PFN@h
	srdi	r5,r31,PTE_RPN_SHIFT
	bne-	3f
	sldi	r5,r5,PAGE_SHIFT-HW_PAGE_SHIFT
	add	r5,r5,r25
	sldi	r5,r5,HW_PAGE_SHIFT
3:	sldi	r5,r5,HW_PAGE_SHIFT

	/* Calculate secondary group hash */
	andc	r0,r27,r28
+1 −1
Original line number Diff line number Diff line
@@ -759,7 +759,7 @@ int hash_page(unsigned long ea, unsigned long access, unsigned long trap)
		   mmu_psize_defs[mmu_vmalloc_psize].sllp) {
		get_paca()->vmalloc_sllp =
			mmu_psize_defs[mmu_vmalloc_psize].sllp;
		slb_flush_and_rebolt();
		slb_vmalloc_update();
	}
#endif /* CONFIG_PPC_64K_PAGES */

Loading