+ 64-bit-resources-arch-powerpc-changes-update.patch added to -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The patch titled

     64-bit-resources-arch-powerpc-changes update

has been added to the -mm tree.  Its filename is

     64-bit-resources-arch-powerpc-changes-update.patch

See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
out what to do about this

------------------------------------------------------
Subject: 64-bit-resources-arch-powerpc-changes update
From: Mel Gorman <mel@xxxxxxxxx>


The 64-bit resource change ended up causing us to do a 64-bit divide and
ppc32 won't link (missing __udivdi3).

The following patch has been successfully boot tested on the same
machine with 64 bit resource_size_t.  Because the mask is assumed to be a
power-of-two - 1, I added a comment and a BUG_ON() to be sure.

Signed-off-by: Mel Gorman <mel@xxxxxxxxx>
Cc: Segher Boessenkool <segher@xxxxxxxxxxxxxxxxxxx>
Cc: Greg KH <greg@xxxxxxxxx>
Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxx>
---

 arch/powerpc/kernel/pci_32.c |   12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff -puN arch/powerpc/kernel/pci_32.c~64-bit-resources-arch-powerpc-changes-update arch/powerpc/kernel/pci_32.c
--- devel/arch/powerpc/kernel/pci_32.c~64-bit-resources-arch-powerpc-changes-update	2006-05-29 15:52:59.000000000 -0700
+++ devel-akpm/arch/powerpc/kernel/pci_32.c	2006-05-29 15:54:45.000000000 -0700
@@ -1114,8 +1114,16 @@ check_for_io_childs(struct pci_bus *bus,
 	int	i;
 	int	rc = 0;
 
-#define push_end(res, size) do { unsigned long __sz = (size) ; \
-	res->end = ((res->end + __sz) / (__sz + 1)) * (__sz + 1) + __sz; \
+	/*
+	 * Assuming mask is a power of two - 1, push_end
+	 * moves res->end to the end of the next
+	 * mask-aligned boundary.
+	 * e.g. res->end of 0x1fff moves to 0x2fff
+	 */
+#define push_end(res, mask) do {				\
+	BUG_ON(((mask+1) & mask) != 0);			\
+	res->end = -(-res->end & ~(unsigned long)mask);		\
+	res->end += mask;					\
     } while (0)
 
 	list_for_each_entry(dev, &bus->devices, bus_list) {
_

Patches currently in -mm which might be from mel@xxxxxxxxx are

64-bit-resources-arch-powerpc-changes-update.patch
flatmem-relax-requirement-for-memory-to-start-at-pfn-0.patch
sparsemem-record-nid-during-memory-present.patch

-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux