All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build
@ 2011-11-14  7:53 Anton Blanchard
  2011-11-14  7:54 ` [PATCH 2/3] kexec-tools: powerpc: Add more 64bit relocations Anton Blanchard
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Anton Blanchard @ 2011-11-14  7:53 UTC (permalink / raw)
  To: Simon Horman, Matt Evans, Michael Neuling, Milton Miller, amodra; +Cc: kexec


commit 46b2d0b8a719 (kexec/powerpc fix optimization for size (gcc -Os)
build) added out of line GPR save/restore handlers for 32bit -Os
builds. This patch adds the handlers for 64bit builds.

Signed-off-by: Anton Blanchard <anton@samba.org>
---

Index: kexec-tools/purgatory/arch/ppc64/Makefile
===================================================================
--- kexec-tools.orig/purgatory/arch/ppc64/Makefile	2011-11-14 18:50:59.269323640 +1100
+++ kexec-tools/purgatory/arch/ppc64/Makefile	2011-11-14 18:51:01.361361348 +1100
@@ -7,6 +7,7 @@ ppc64_PURGATORY_SRCS += purgatory/arch/p
 ppc64_PURGATORY_SRCS += purgatory/arch/ppc64/purgatory-ppc64.c
 ppc64_PURGATORY_SRCS += purgatory/arch/ppc64/console-ppc64.c
 ppc64_PURGATORY_SRCS += purgatory/arch/ppc64/crashdump_backup.c
+ppc64_PURGATORY_SRCS += purgatory/arch/ppc64/misc.S
 
 ppc64_PURGATORY_EXTRA_CFLAGS += -m64 -mcall-aixdesc
 ppc64_PURGATORY_EXTRA_ASFLAGS += -m64 -mcall-aixdesc
Index: kexec-tools/purgatory/arch/ppc64/misc.S
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ kexec-tools/purgatory/arch/ppc64/misc.S	2011-11-14 18:51:01.361361348 +1100
@@ -0,0 +1,197 @@
+/*
+ * This is from linux/arch/powerpc/lib/crtsavres.S:
+ *
+ * Special support for eabi and SVR4
+ *
+ *   Copyright (C) 1995, 1996, 1998, 2000, 2001 Free Software Foundation, Inc.
+ *   Copyright 2008 Freescale Semiconductor, Inc.
+ *   Written By Michael Meissner
+ *
+ * Based on gcc/config/rs6000/crtsavres.asm from gcc
+ * 64 bit additions from reading the PPC elf64abi document.
+ *
+ * This file is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2, or (at your option) any
+ * later version.
+ *
+ * In addition to the permissions in the GNU General Public License, the
+ * Free Software Foundation gives you unlimited permission to link the
+ * compiled version of this file with other programs, and to distribute
+ * those programs without any restriction coming from the use of this
+ * file.  (The General Public License restrictions do apply in other
+ * respects; for example, they cover modification of the file, and
+ * distribution when not linked into another program.)
+ *
+ * This file is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; see the file COPYING.  If not, write to
+ * the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ *
+ *    As a special exception, if you link this library with files
+ *    compiled with GCC to produce an executable, this does not cause
+ *    the resulting executable to be covered by the GNU General Public License.
+ *    This exception does not however invalidate any other reasons why
+ *    the executable file might be covered by the GNU General Public License.
+ */
+
+#define	r0	0
+#define	r1	1
+#define	r2	2
+#define	r3	3
+#define	r4	4
+#define	r5	5
+#define	r6	6
+#define	r7	7
+#define	r8	8
+#define	r9	9
+#define	r10	10
+#define	r11	11
+#define	r12	12
+#define	r13	13
+#define	r14	14
+#define	r15	15
+#define	r16	16
+#define	r17	17
+#define	r18	18
+#define	r19	19
+#define	r20	20
+#define	r21	21
+#define	r22	22
+#define	r23	23
+#define	r24	24
+#define	r25	25
+#define	r26	26
+#define	r27	27
+#define	r28	28
+#define	r29	29
+#define	r30	30
+#define	r31	31
+
+	.text
+
+.globl	_savegpr0_14
+_savegpr0_14:
+	std	r14,-144(r1)
+.globl	_savegpr0_15
+_savegpr0_15:
+	std	r15,-136(r1)
+.globl	_savegpr0_16
+_savegpr0_16:
+	std	r16,-128(r1)
+.globl	_savegpr0_17
+_savegpr0_17:
+	std	r17,-120(r1)
+.globl	_savegpr0_18
+_savegpr0_18:
+	std	r18,-112(r1)
+.globl	_savegpr0_19
+_savegpr0_19:
+	std	r19,-104(r1)
+.globl	_savegpr0_20
+_savegpr0_20:
+	std	r20,-96(r1)
+.globl	_savegpr0_21
+_savegpr0_21:
+	std	r21,-88(r1)
+.globl	_savegpr0_22
+_savegpr0_22:
+	std	r22,-80(r1)
+.globl	_savegpr0_23
+_savegpr0_23:
+	std	r23,-72(r1)
+.globl	_savegpr0_24
+_savegpr0_24:
+	std	r24,-64(r1)
+.globl	_savegpr0_25
+_savegpr0_25:
+	std	r25,-56(r1)
+.globl	_savegpr0_26
+_savegpr0_26:
+	std	r26,-48(r1)
+.globl	_savegpr0_27
+_savegpr0_27:
+	std	r27,-40(r1)
+.globl	_savegpr0_28
+_savegpr0_28:
+	std	r28,-32(r1)
+.globl	_savegpr0_29
+_savegpr0_29:
+	std	r29,-24(r1)
+.globl	_savegpr0_30
+_savegpr0_30:
+	std	r30,-16(r1)
+.globl	_savegpr0_31
+_savegpr0_31:
+	std	r31,-8(r1)
+	std	r0,16(r1)
+	blr
+
+.globl	_restgpr0_14
+_restgpr0_14:
+	ld	r14,-144(r1)
+.globl	_restgpr0_15
+_restgpr0_15:
+	ld	r15,-136(r1)
+.globl	_restgpr0_16
+_restgpr0_16:
+	ld	r16,-128(r1)
+.globl	_restgpr0_17
+_restgpr0_17:
+	ld	r17,-120(r1)
+.globl	_restgpr0_18
+_restgpr0_18:
+	ld	r18,-112(r1)
+.globl	_restgpr0_19
+_restgpr0_19:
+	ld	r19,-104(r1)
+.globl	_restgpr0_20
+_restgpr0_20:
+	ld	r20,-96(r1)
+.globl	_restgpr0_21
+_restgpr0_21:
+	ld	r21,-88(r1)
+.globl	_restgpr0_22
+_restgpr0_22:
+	ld	r22,-80(r1)
+.globl	_restgpr0_23
+_restgpr0_23:
+	ld	r23,-72(r1)
+.globl	_restgpr0_24
+_restgpr0_24:
+	ld	r24,-64(r1)
+.globl	_restgpr0_25
+_restgpr0_25:
+	ld	r25,-56(r1)
+.globl	_restgpr0_26
+_restgpr0_26:
+	ld	r26,-48(r1)
+.globl	_restgpr0_27
+_restgpr0_27:
+	ld	r27,-40(r1)
+.globl	_restgpr0_28
+_restgpr0_28:
+	ld	r28,-32(r1)
+.globl	_restgpr0_29
+_restgpr0_29:
+	ld	r0,16(r1)
+	ld	r29,-24(r1)
+	mtlr	r0
+	ld	r30,-16(r1)
+	ld	r31,-8(r1)
+	blr
+
+.globl	_restgpr0_30
+_restgpr0_30:
+	ld	r30,-16(r1)
+.globl	_restgpr0_31
+_restgpr0_31:
+	ld	r0,16(r1)
+	ld	r31,-8(r1)
+	mtlr	r0
+	blr

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 2/3] kexec-tools: powerpc: Add more 64bit relocations
  2011-11-14  7:53 [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build Anton Blanchard
@ 2011-11-14  7:54 ` Anton Blanchard
  2011-11-14  7:56 ` [PATCH 3/3] kexec-tools: powerpc: Cleanup relocation code Anton Blanchard
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 9+ messages in thread
From: Anton Blanchard @ 2011-11-14  7:54 UTC (permalink / raw)
  To: Simon Horman, Matt Evans, Michael Neuling, Milton Miller, amodra; +Cc: kexec


Add all the TOC16 relocations. These were hit when building kexec
with a recent toolchain.

Signed-off-by: Anton Blanchard <anton@samba.org>
---

Index: kexec-tools/kexec/arch/ppc64/kexec-elf-rel-ppc64.c
===================================================================
--- kexec-tools.orig/kexec/arch/ppc64/kexec-elf-rel-ppc64.c	2011-11-14 18:02:44.933276441 +1100
+++ kexec-tools/kexec/arch/ppc64/kexec-elf-rel-ppc64.c	2011-11-14 18:06:07.492903716 +1100
@@ -46,6 +46,19 @@ unsigned long my_r2(const struct mem_ehd
 	return shdr->sh_addr + 0x8000;
 }
 
+static void do_relative_toc(unsigned long value, uint16_t *location,
+	unsigned long mask, int complain_signed)
+{
+	if (complain_signed && (value + 0x8000 > 0xffff)) {
+		die("TOC16 relocation overflows (%lu)\n", value);
+	}
+
+	if ((~mask & 0xffff) & value) {
+		die("bad TOC16 relocation (%lu)\n", value);
+	}
+
+	*location = (*location & ~mask) | (value & mask);
+}
 
 void machine_apply_elf_rel(struct mem_ehdr *ehdr, unsigned long r_type,
 	void *location, unsigned long address, unsigned long value)
@@ -70,15 +83,30 @@ void machine_apply_elf_rel(struct mem_eh
 		*(uint64_t *)location = my_r2(ehdr);
 		break;
 
+	case R_PPC64_TOC16:
+		do_relative_toc(value - my_r2(ehdr), location, 0xffff, 1);
+		break;
+
 	case R_PPC64_TOC16_DS:
-		/* Subtact TOC pointer */
-		value -= my_r2(ehdr);
-		if ((value & 3) != 0 || value + 0x8000 > 0xffff) {
-			die("bad TOC16_DS relocation (%lu)\n", value);
-		}
-		*((uint16_t *) location)
-			= (*((uint16_t *) location) & ~0xfffc)
-			| (value & 0xfffc);
+		do_relative_toc(value - my_r2(ehdr), location, 0xfffc, 1);
+		break;
+
+	case R_PPC64_TOC16_LO:
+		do_relative_toc(value - my_r2(ehdr), location, 0xffff, 0);
+		break;
+
+	case R_PPC64_TOC16_LO_DS:
+		do_relative_toc(value - my_r2(ehdr), location, 0xfffc, 0);
+		break;
+
+	case R_PPC64_TOC16_HI:
+		do_relative_toc((value - my_r2(ehdr)) >> 16, location,
+			0xffff, 0);
+		break;
+
+	case R_PPC64_TOC16_HA:
+		do_relative_toc((value - my_r2(ehdr) + 0x8000) >> 16, location,
+			0xffff, 0);
 		break;
 
 	case R_PPC64_REL24:

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 3/3] kexec-tools: powerpc: Cleanup relocation code
  2011-11-14  7:53 [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build Anton Blanchard
  2011-11-14  7:54 ` [PATCH 2/3] kexec-tools: powerpc: Add more 64bit relocations Anton Blanchard
@ 2011-11-14  7:56 ` Anton Blanchard
  2011-11-14  8:46 ` [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build Simon Horman
  2011-11-14 22:14 ` Alan Modra
  3 siblings, 0 replies; 9+ messages in thread
From: Anton Blanchard @ 2011-11-14  7:56 UTC (permalink / raw)
  To: Simon Horman, Matt Evans, Michael Neuling, Milton Miller, amodra; +Cc: kexec


Some cleanup of the relocation code:

- Whitespace changes
- Use braces to add clarity to nested for/if loop.
- Order ADDR16 relocations
- No need for to return from a void function.

Signed-off-by: Anton Blanchard <anton@samba.org>
---

Index: kexec-tools/kexec/arch/ppc64/kexec-elf-rel-ppc64.c
===================================================================
--- kexec-tools.orig/kexec/arch/ppc64/kexec-elf-rel-ppc64.c	2011-11-14 18:06:07.492903716 +1100
+++ kexec-tools/kexec/arch/ppc64/kexec-elf-rel-ppc64.c	2011-11-14 18:09:14.168245553 +1100
@@ -16,6 +16,7 @@ int machine_verify_elf_rel(struct mem_eh
 	if (ehdr->e_machine != EM_PPC64) {
 		return 0;
 	}
+
 	return 1;
 }
 
@@ -23,13 +24,16 @@ static struct mem_shdr *toc_section(cons
 {
 	struct mem_shdr *shdr, *shdr_end;
 	unsigned char *strtab;
+
 	strtab = (unsigned char *)ehdr->e_shdr[ehdr->e_shstrndx].sh_data;
 	shdr_end = &ehdr->e_shdr[ehdr->e_shnum];
-	for(shdr = ehdr->e_shdr; shdr != shdr_end; shdr++)
-		if ( shdr->sh_size &&
-			strcmp((char *)&strtab[shdr->sh_name],
-						".toc") == 0)
+	for (shdr = ehdr->e_shdr; shdr != shdr_end; shdr++) {
+		if (shdr->sh_size &&
+			strcmp((char *)&strtab[shdr->sh_name], ".toc") == 0) {
 			return shdr;
+		}
+	}
+
 	return NULL;
 }
 
@@ -39,10 +43,12 @@ static struct mem_shdr *toc_section(cons
 unsigned long my_r2(const struct mem_ehdr *ehdr)
 {
 	struct mem_shdr *shdr;
+
 	shdr = toc_section(ehdr);
 	if (!shdr) {
 		die("TOC reloc without a toc section?");
 	}
+
 	return shdr->sh_addr + 0x8000;
 }
 
@@ -112,14 +118,13 @@ void machine_apply_elf_rel(struct mem_eh
 	case R_PPC64_REL24:
 		/* Convert value to relative */
 		value -= address;
-		if (value + 0x2000000 > 0x3ffffff || (value & 3) != 0){
-			die("REL24 %li out of range!\n",
-				(long int)value);
+		if (value + 0x2000000 > 0x3ffffff || (value & 3) != 0) {
+			die("REL24 %li out of range!\n", (long int)value);
 		}
 
 		/* Only replace bits 2 through 26 */
-		*(uint32_t *)location = (*(uint32_t *)location & ~0x03fffffc)
-					| (value & 0x03fffffc);
+		*(uint32_t *)location = (*(uint32_t *)location & ~0x03fffffc) |
+					(value & 0x03fffffc);
 		break;
 
 	case R_PPC64_ADDR16_LO:
@@ -127,23 +132,23 @@ void machine_apply_elf_rel(struct mem_eh
 		break;
 
 	case R_PPC64_ADDR16_HI:
-		*(uint16_t *)location = (value>>16) & 0xffff;
+		*(uint16_t *)location = (value >> 16) & 0xffff;
 		break;
 
 	case R_PPC64_ADDR16_HA:
-		*(uint16_t *)location = (((value+0x8000)>>16)  & 0xffff);
+		*(uint16_t *)location = (((value + 0x8000) >> 16) & 0xffff);
 		break;
 
-	case R_PPC64_ADDR16_HIGHEST:
-		*(uint16_t *)location = (((uint64_t)value>>48)  & 0xffff);
-		break;
 	case R_PPC64_ADDR16_HIGHER:
-		*(uint16_t *)location = (((uint64_t)value>>32)  & 0xffff);
+		*(uint16_t *)location = (((uint64_t)value >> 32) & 0xffff);
+		break;
+
+	case R_PPC64_ADDR16_HIGHEST:
+		*(uint16_t *)location = (((uint64_t)value >> 48) & 0xffff);
 		break;
 
 	default:
 		die("Unknown rela relocation: %lu\n", r_type);
 		break;
 	}
-	return;
 }

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build
  2011-11-14  7:53 [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build Anton Blanchard
  2011-11-14  7:54 ` [PATCH 2/3] kexec-tools: powerpc: Add more 64bit relocations Anton Blanchard
  2011-11-14  7:56 ` [PATCH 3/3] kexec-tools: powerpc: Cleanup relocation code Anton Blanchard
@ 2011-11-14  8:46 ` Simon Horman
  2011-11-14 22:14 ` Alan Modra
  3 siblings, 0 replies; 9+ messages in thread
From: Simon Horman @ 2011-11-14  8:46 UTC (permalink / raw)
  To: Anton Blanchard; +Cc: Michael Neuling, kexec, Milton Miller, Matt Evans, amodra

On Mon, Nov 14, 2011 at 06:53:29PM +1100, Anton Blanchard wrote:
> 
> commit 46b2d0b8a719 (kexec/powerpc fix optimization for size (gcc -Os)
> build) added out of line GPR save/restore handlers for 32bit -Os
> builds. This patch adds the handlers for 64bit builds.
> 
> Signed-off-by: Anton Blanchard <anton@samba.org>

On Mon, Nov 14, 2011 at 06:56:22PM +1100, Anton Blanchard wrote:
> 
> Some cleanup of the relocation code:
> 
> - Whitespace changes
> - Use braces to add clarity to nested for/if loop.
> - Order ADDR16 relocations
> - No need for to return from a void function.
> 
> Signed-off-by: Anton Blanchard <anton@samba.org>

On Mon, Nov 14, 2011 at 06:54:33PM +1100, Anton Blanchard wrote:
> 
> Add all the TOC16 relocations. These were hit when building kexec
> with a recent toolchain.
> 
> Signed-off-by: Anton Blanchard <anton@samba.org>


Thanks Anton,

I have applied all three patches.


_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build
  2011-11-14  7:53 [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build Anton Blanchard
                   ` (2 preceding siblings ...)
  2011-11-14  8:46 ` [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build Simon Horman
@ 2011-11-14 22:14 ` Alan Modra
  2011-11-14 22:24   ` Anton Blanchard
  3 siblings, 1 reply; 9+ messages in thread
From: Alan Modra @ 2011-11-14 22:14 UTC (permalink / raw)
  To: Anton Blanchard
  Cc: Michael Neuling, Simon Horman, kexec, Milton Miller, Matt Evans

On Mon, Nov 14, 2011 at 06:53:29PM +1100, Anton Blanchard wrote:
> 
> commit 46b2d0b8a719 (kexec/powerpc fix optimization for size (gcc -Os)
> build) added out of line GPR save/restore handlers for 32bit -Os
> builds. This patch adds the handlers for 64bit builds.

The linker is supposed to add these functions magically on final link
for powerpc64.  Um, I suppose you're doing something horrible with
kexec, ld -r instead of normal final link at a guess?

-- 
Alan Modra
Australia Development Lab, IBM

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build
  2011-11-14 22:14 ` Alan Modra
@ 2011-11-14 22:24   ` Anton Blanchard
  2011-11-14 22:30     ` Alan Modra
  0 siblings, 1 reply; 9+ messages in thread
From: Anton Blanchard @ 2011-11-14 22:24 UTC (permalink / raw)
  To: Alan Modra
  Cc: Michael Neuling, Simon Horman, kexec, Milton Miller, Matt Evans


Hi Alan,

> > commit 46b2d0b8a719 (kexec/powerpc fix optimization for size (gcc
> > -Os) build) added out of line GPR save/restore handlers for 32bit
> > -Os builds. This patch adds the handlers for 64bit builds.
> 
> The linker is supposed to add these functions magically on final link
> for powerpc64.  Um, I suppose you're doing something horrible with
> kexec, ld -r instead of normal final link at a guess?

Yeah:

gcc -g -O2 -fno-strict-aliasing -Wall -Wstrict-prototypes
-fno-zero-initialized-in-bss -m64 -Os -fno-builtin -ffreestanding -m64
-Wl,--no-undefined -nostartfiles -nostdlib -nodefaultlibs -e
purgatory_start -r -o purgatory/purgatory.ro purgatory/purgatory.o
purgatory/printf.o purgatory/string.o purgatory/arch/ppc64/v2wrap.o
purgatory/arch/ppc64/hvCall.o purgatory/arch/ppc64/purgatory-ppc64.o
purgatory/arch/ppc64/console-ppc64.o
purgatory/arch/ppc64/crashdump_backup.o purgatory/arch/ppc64/misc.o
purgatory/sha256.o

bin/bin-to-hex purgatory < purgatory/purgatory.ro > kexec/purgatory.c

I wonder why we aren't building and linking an -fpic object, wouldn't
it make the relocation code much simpler?

Anton

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build
  2011-11-14 22:24   ` Anton Blanchard
@ 2011-11-14 22:30     ` Alan Modra
  2011-11-17 23:48       ` Simon Horman
  0 siblings, 1 reply; 9+ messages in thread
From: Alan Modra @ 2011-11-14 22:30 UTC (permalink / raw)
  To: Anton Blanchard
  Cc: Michael Neuling, Simon Horman, kexec, Milton Miller, Matt Evans

On Tue, Nov 15, 2011 at 09:24:06AM +1100, Anton Blanchard wrote:
> I wonder why we aren't building and linking an -fpic object, wouldn't
> it make the relocation code much simpler?

No, powerpc64 is PIC anyway.

-- 
Alan Modra
Australia Development Lab, IBM

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build
  2011-11-14 22:30     ` Alan Modra
@ 2011-11-17 23:48       ` Simon Horman
  2011-11-28 11:49         ` Anton Blanchard
  0 siblings, 1 reply; 9+ messages in thread
From: Simon Horman @ 2011-11-17 23:48 UTC (permalink / raw)
  To: Alan Modra
  Cc: Milton Miller, Michael Neuling, kexec, Anton Blanchard,
	Matt Evans

On Tue, Nov 15, 2011 at 09:00:38AM +1030, Alan Modra wrote:
> On Tue, Nov 15, 2011 at 09:24:06AM +1100, Anton Blanchard wrote:
> > I wonder why we aren't building and linking an -fpic object, wouldn't
> > it make the relocation code much simpler?
> 
> No, powerpc64 is PIC anyway.

Hi Alan, Hi Anton, Hi all,

I am wondering if you are comfortable with me (finally) releasing
a new version of kexec-tools with this series of patches applied.


_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build
  2011-11-17 23:48       ` Simon Horman
@ 2011-11-28 11:49         ` Anton Blanchard
  0 siblings, 0 replies; 9+ messages in thread
From: Anton Blanchard @ 2011-11-28 11:49 UTC (permalink / raw)
  To: Simon Horman
  Cc: Michael Neuling, kexec, Milton Miller, Matt Evans, Alan Modra


Hi Horms,

> Hi Alan, Hi Anton, Hi all,
> 
> I am wondering if you are comfortable with me (finally) releasing
> a new version of kexec-tools with this series of patches applied.

Sorry for taking a while to get back to you. I haven't found any more
bugs on the ppc64 side, so I'm definitely comfortable (from a ppc64
perspective).

Anton

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2011-11-28 11:50 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-14  7:53 [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build Anton Blanchard
2011-11-14  7:54 ` [PATCH 2/3] kexec-tools: powerpc: Add more 64bit relocations Anton Blanchard
2011-11-14  7:56 ` [PATCH 3/3] kexec-tools: powerpc: Cleanup relocation code Anton Blanchard
2011-11-14  8:46 ` [PATCH 1/3] kexec-tools: powerpc: Fix 64bit optimize for size (gcc -Os) build Simon Horman
2011-11-14 22:14 ` Alan Modra
2011-11-14 22:24   ` Anton Blanchard
2011-11-14 22:30     ` Alan Modra
2011-11-17 23:48       ` Simon Horman
2011-11-28 11:49         ` Anton Blanchard

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.