rpms/kexec-tools/devel kexec-tools-1.101-et-dyn.patch, NONE, 1.1 kexec-tools.spec, 1.36, 1.37
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Mon Jul 31 14:55:14 UTC 2006
Author: nhorman
Update of /cvs/dist/rpms/kexec-tools/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv17664
Modified Files:
kexec-tools.spec
Added Files:
kexec-tools-1.101-et-dyn.patch
Log Message:
adding ET_DYN patch
kexec-tools-1.101-et-dyn.patch:
kexec-elf-exec.c | 10 +++++++---
kexec-elf.h | 2 +-
2 files changed, 8 insertions(+), 4 deletions(-)
--- NEW FILE kexec-tools-1.101-et-dyn.patch ---
--- kexec-tools-1.101/kexec/kexec-elf.h.orig 2006-07-31 10:41:57.000000000 -0400
+++ kexec-tools-1.101/kexec/kexec-elf.h 2006-07-31 10:42:09.000000000 -0400
@@ -89,7 +89,7 @@ extern int build_elf_info(const char *bu
extern int build_elf_exec_info(const char *buf, off_t len, struct mem_ehdr *ehdr);
extern int build_elf_rel_info(const char *buf, off_t len, struct mem_ehdr *ehdr);
-extern int elf_exec_load(const struct mem_ehdr *ehdr, struct kexec_info *info);
+extern int elf_exec_load(struct mem_ehdr *ehdr, struct kexec_info *info);
extern int elf_rel_load(struct mem_ehdr *ehdr, struct kexec_info *info,
unsigned long min, unsigned long max, int end);
--- kexec-tools-1.101/kexec/kexec-elf-exec.c.orig 2006-07-31 10:14:20.000000000 -0400
+++ kexec-tools-1.101/kexec/kexec-elf-exec.c 2006-07-31 10:18:25.000000000 -0400
@@ -47,7 +47,7 @@ int build_elf_exec_info(const char *buf,
}
-int elf_exec_load(const struct mem_ehdr *ehdr, struct kexec_info *info)
+int elf_exec_load(struct mem_ehdr *ehdr, struct kexec_info *info)
{
unsigned long base;
int result;
@@ -79,8 +79,8 @@ int elf_exec_load(const struct mem_ehdr
}
start = phdr->p_paddr;
stop = start + phdr->p_memsz;
- if (start > first) {
- start = first;
+ if (first > start) {
+ first = start;
}
if (last < stop) {
last = stop;
@@ -126,6 +126,10 @@ int elf_exec_load(const struct mem_ehdr
phdr->p_data, size,
phdr->p_paddr + base, phdr->p_memsz);
}
+
+ /* Update entry point to reflect new load address*/
+ ehdr->e_entry += base;
+
result = 0;
out:
return result;
Index: kexec-tools.spec
===================================================================
RCS file: /cvs/dist/rpms/kexec-tools/devel/kexec-tools.spec,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- kexec-tools.spec 27 Jul 2006 13:08:21 -0000 1.36
+++ kexec-tools.spec 31 Jul 2006 14:55:12 -0000 1.37
@@ -1,6 +1,6 @@
Name: kexec-tools
Version: 1.101
-Release: 31%{dist}.1
+Release: 32%{dist}.1
License: GPL
Group: Applications/System
Summary: The kexec/kdump userspace component.
@@ -50,6 +50,7 @@
#
Patch601: kexec-tools-1.101-Makefile.patch
Patch602: kexec-tools-1.101-Makefile-kcp.patch
+Patch603: kexec-tools-1.101-et-dyn.patch
%description
kexec-tools provides /sbin/kexec binary that facilitates a new
@@ -69,6 +70,7 @@
%patch501 -p1
%patch601 -p1
%patch602 -p1
+%patch603 -p1
cp $RPM_SOURCE_DIR/kdump.init .
cp $RPM_SOURCE_DIR/kdump.sysconfig .
@@ -127,11 +129,14 @@
%doc TODO
%changelog
+* Mon Jul 31 2006 Neil Horman <nhorman at redhat.com> - 1.101-32%{dist}.1
+- added et-dyn patch to allow loading of relocatable kernels
+
* Thu Jul 27 2006 Neil Horman <nhorman at redhat.com> - 1.101-30%{dist}.1
--fixing up missing patch to kdump.init
+- fixing up missing patch to kdump.init
* Wed Jul 19 2006 Neil Horman <nhorman at redhat.com> - 1.101-30%{dist}.1
--add kexec frontend (bz 197695)
+- add kexec frontend (bz 197695)
* Wed Jul 12 2006 Jesse Keating <jkeating at redhat.com> - 1.101-29%{dist}.1
- rebuild
More information about the fedora-cvs-commits
mailing list