diff options
| -rw-r--r-- | meta/recipes-kernel/kexec/kexec-tools.inc | 4 | ||||
| -rw-r--r-- | meta/recipes-kernel/kexec/kexec-tools/kexec-tools-Refine-kdump-device_tree-sort.patch | 48 | ||||
| -rw-r--r-- | meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb (renamed from meta/recipes-kernel/kexec/kexec-tools_2.0.11.bb) | 6 |
3 files changed, 7 insertions, 51 deletions
diff --git a/meta/recipes-kernel/kexec/kexec-tools.inc b/meta/recipes-kernel/kexec/kexec-tools.inc index 758a3a78b8..bdfe024a79 100644 --- a/meta/recipes-kernel/kexec/kexec-tools.inc +++ b/meta/recipes-kernel/kexec/kexec-tools.inc | |||
| @@ -22,6 +22,10 @@ COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*|powerpc.*|mips.*)-(linux|fre | |||
| 22 | INSANE_SKIP_${PN} = "arch" | 22 | INSANE_SKIP_${PN} = "arch" |
| 23 | 23 | ||
| 24 | do_compile_prepend() { | 24 | do_compile_prepend() { |
| 25 | # Remove the prepackaged config.h from the source tree as it overrides | ||
| 26 | # the same file generated by configure and placed in the build tree | ||
| 27 | rm -f ${S}/include/config.h | ||
| 28 | |||
| 25 | # Remove the '*.d' file to make sure the recompile is OK | 29 | # Remove the '*.d' file to make sure the recompile is OK |
| 26 | for dep in `find ${B} -type f -name '*.d'`; do | 30 | for dep in `find ${B} -type f -name '*.d'`; do |
| 27 | dep_no_d="`echo $dep | sed 's#.d$##'`" | 31 | dep_no_d="`echo $dep | sed 's#.d$##'`" |
diff --git a/meta/recipes-kernel/kexec/kexec-tools/kexec-tools-Refine-kdump-device_tree-sort.patch b/meta/recipes-kernel/kexec/kexec-tools/kexec-tools-Refine-kdump-device_tree-sort.patch deleted file mode 100644 index e198eb6e9a..0000000000 --- a/meta/recipes-kernel/kexec/kexec-tools/kexec-tools-Refine-kdump-device_tree-sort.patch +++ /dev/null | |||
| @@ -1,48 +0,0 @@ | |||
| 1 | kexec-tools: Refine kdump device_tree sort | ||
| 2 | |||
| 3 | The commit b02d735bf was to rearrange the device-tree entries, and | ||
| 4 | assumed that these entries are sorted in the ascending order. but | ||
| 5 | acctually when I was validating kexec and kdump, the order of | ||
| 6 | serial node still is changed. So the patch is to sort these entries | ||
| 7 | by the directory name in ascending order. | ||
| 8 | |||
| 9 | Upstream-Status: Pending | ||
| 10 | |||
| 11 | Signed-off-by: Yang Wei <Wei.Yang@windriver.com> | ||
| 12 | Signed-off-by: Chong Lu <Chong.Lu@windriver.com> | ||
| 13 | --- | ||
| 14 | kexec/arch/ppc/fs2dt.c | 13 ++++++++++--- | ||
| 15 | kexec/fs2dt.c | 13 ++++++++++--- | ||
| 16 | 2 files changed, 20 insertions(+), 6 deletions(-) | ||
| 17 | |||
| 18 | Index: kexec-tools-2.0.10/kexec/arch/ppc/fs2dt.c | ||
| 19 | =================================================================== | ||
| 20 | --- kexec-tools-2.0.10.orig/kexec/arch/ppc/fs2dt.c | ||
| 21 | +++ kexec-tools-2.0.10/kexec/arch/ppc/fs2dt.c | ||
| 22 | @@ -296,6 +296,9 @@ static int comparefunc(const void *dentr | ||
| 23 | { | ||
| 24 | char *str1 = (*(struct dirent **)dentry1)->d_name; | ||
| 25 | char *str2 = (*(struct dirent **)dentry2)->d_name; | ||
| 26 | + char* ptr1 = strchr(str1, '@'); | ||
| 27 | + char* ptr2 = strchr(str2, '@'); | ||
| 28 | + int len1, len2; | ||
| 29 | |||
| 30 | /* | ||
| 31 | * strcmp scans from left to right and fails to idetify for some | ||
| 32 | @@ -303,9 +306,13 @@ static int comparefunc(const void *dentr | ||
| 33 | * Therefore, we get the wrong sorted order like memory@10000000 and | ||
| 34 | * memory@f000000. | ||
| 35 | */ | ||
| 36 | - if (strchr(str1, '@') && strchr(str2, '@') && | ||
| 37 | - (strlen(str1) > strlen(str2))) | ||
| 38 | - return 1; | ||
| 39 | + if (ptr1 && ptr2) { | ||
| 40 | + len1 = ptr1 - str1; | ||
| 41 | + len2 = ptr2 - str2; | ||
| 42 | + if (!strncmp(str1, str2, len1 >len2 ? len1: len2) && | ||
| 43 | + (strlen(str1) > strlen(str2))) | ||
| 44 | + return 1; | ||
| 45 | + } | ||
| 46 | |||
| 47 | return strcmp(str1, str2); | ||
| 48 | } | ||
diff --git a/meta/recipes-kernel/kexec/kexec-tools_2.0.11.bb b/meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb index c1c97af9e8..59376c804a 100644 --- a/meta/recipes-kernel/kexec/kexec-tools_2.0.11.bb +++ b/meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb | |||
| @@ -2,7 +2,7 @@ require kexec-tools.inc | |||
| 2 | export LDFLAGS = "-L${STAGING_LIBDIR}" | 2 | export LDFLAGS = "-L${STAGING_LIBDIR}" |
| 3 | EXTRA_OECONF = " --with-zlib=yes" | 3 | EXTRA_OECONF = " --with-zlib=yes" |
| 4 | 4 | ||
| 5 | SRC_URI += "file://kexec-tools-Refine-kdump-device_tree-sort.patch \ | 5 | SRC_URI += " \ |
| 6 | file://kexec-aarch64.patch \ | 6 | file://kexec-aarch64.patch \ |
| 7 | file://kexec-x32.patch \ | 7 | file://kexec-x32.patch \ |
| 8 | file://0002-powerpc-change-the-memory-size-limit.patch \ | 8 | file://0002-powerpc-change-the-memory-size-limit.patch \ |
| @@ -10,8 +10,8 @@ SRC_URI += "file://kexec-tools-Refine-kdump-device_tree-sort.patch \ | |||
| 10 | file://0001-vmcore-dmesg-Define-_GNU_SOURCE.patch \ | 10 | file://0001-vmcore-dmesg-Define-_GNU_SOURCE.patch \ |
| 11 | " | 11 | " |
| 12 | 12 | ||
| 13 | SRC_URI[md5sum] = "86de066859f289048f1b286af6f03f78" | 13 | SRC_URI[md5sum] = "10ddaae0e86af54407b164a1f5a39cc3" |
| 14 | SRC_URI[sha256sum] = "84f652ebf1de3f7b9de757a50cdbf6d5639d88c1d5b5ef9f525edde5ef9590c2" | 14 | SRC_URI[sha256sum] = "cc7b60dad0da202004048a6179d8a53606943062dd627a2edba45a8ea3a85135" |
| 15 | 15 | ||
| 16 | PACKAGES =+ "kexec kdump vmcore-dmesg" | 16 | PACKAGES =+ "kexec kdump vmcore-dmesg" |
| 17 | 17 | ||
