diff --git a/SOURCES/kdumpctl b/SOURCES/kdumpctl
index d8e6d2e..98793de 100755
--- a/SOURCES/kdumpctl
+++ b/SOURCES/kdumpctl
@@ -6,6 +6,7 @@ KDUMP_COMMANDLINE=""
 KEXEC_ARGS=""
 KDUMP_CONFIG_FILE="/etc/kdump.conf"
 MKDUMPRD="/sbin/mkdumprd -f"
+DRACUT_MODULES_FILE="/usr/lib/dracut/modules.txt"
 SAVE_PATH=/var/crash
 SSH_KEY_LOCATION="/root/.ssh/kdump_id_rsa"
 INITRD_CHECKSUM_LOCATION="/boot/.fadump_initrd_checksum"
@@ -554,6 +555,7 @@ check_system_modified()
 check_rebuild()
 {
 	local extra_modules
+	local capture_capable_initrd="1"
 	local _force_rebuild force_rebuild="0"
 	local _force_no_rebuild force_no_rebuild="0"
 	local ret system_modified="0"
@@ -608,6 +610,12 @@ check_rebuild()
 	#since last build of the image file
 	if [ -f $TARGET_INITRD ]; then
 		image_time=`stat -c "%Y" $TARGET_INITRD 2>/dev/null`
+
+		#in case of fadump mode, check whether the default/target
+		#initrd is already built with dump capture capability
+		if [ "$DEFAULT_DUMP_MODE" == "fadump" ]; then
+			capture_capable_initrd=$(lsinitrd -f $DRACUT_MODULES_FILE $TARGET_INITRD | grep ^kdumpbase$ | wc -l)
+		fi
 	fi
 
 	check_system_modified
@@ -622,6 +630,8 @@ check_rebuild()
 
 	if [ $image_time -eq 0 ]; then
 		echo  -n "No kdump initial ramdisk found."; echo
+	elif [ "$capture_capable_initrd" == "0" ]; then
+		echo -n "Rebuild $TARGET_INITRD with dump capture support"; echo
 	elif [ "$force_rebuild" != "0" ]; then
 		echo -n "Force rebuild $TARGET_INITRD"; echo
 	elif [ "$system_modified" != "0" ]; then
diff --git a/SOURCES/kexec-tools-2.0.14-kexec-powerpc-fix-command-line-overflow-error.patch b/SOURCES/kexec-tools-2.0.14-kexec-powerpc-fix-command-line-overflow-error.patch
new file mode 100644
index 0000000..2831148
--- /dev/null
+++ b/SOURCES/kexec-tools-2.0.14-kexec-powerpc-fix-command-line-overflow-error.patch
@@ -0,0 +1,94 @@
+From 21eb397a5fc9227cd95d23e8c74a49cf6a293e57 Mon Sep 17 00:00:00 2001
+
+From: Hari Bathini <hbathini@linux.vnet.ibm.com>
+
+Subject: [PATCH] kexec-tools: powerpc: fix command line overflow error
+
+Since kernel commit a5980d064fe2 ("powerpc: Bump COMMAND_LINE_SIZE
+to 2048"), powerpc bumped command line size to 2048 but the size
+used here is still the default value of 512. Bump it to 2048 to
+fix command line overflow errors observed when command line length
+is above 512 bytes. Also, get rid of the multiple definitions of
+COMMAND_LINE_SIZE macro in ppc architecture.
+
+Signed-off-by: Hari Bathini <hbathini@linux.vnet.ibm.com>
+Signed-off-by: Simon Horman <horms@verge.net.au>
+---
+ kexec/arch/ppc/crashdump-powerpc.h |    2 --
+ kexec/arch/ppc/fs2dt.c             |    1 -
+ kexec/arch/ppc/kexec-ppc.h         |    3 ++-
+ kexec/arch/ppc/ops.h               |    1 -
+ kexec/arch/ppc64/crashdump-ppc64.h |    2 +-
+ 5 files changed, 3 insertions(+), 6 deletions(-)
+
+diff --git a/kexec/arch/ppc/crashdump-powerpc.h b/kexec/arch/ppc/crashdump-powerpc.h
+index 9b9b01e..97b5095 100644
+--- a/kexec/arch/ppc/crashdump-powerpc.h
++++ b/kexec/arch/ppc/crashdump-powerpc.h
+@@ -20,8 +20,6 @@ extern struct arch_options_t arch_options;
+ #define KERNELBASE	PAGE_OFFSET
+ #define __pa(x)		((unsigned long)(x)-PAGE_OFFSET)
+ 
+-#define COMMAND_LINE_SIZE	512 /* from kernel */
+-
+ #ifdef CONFIG_BOOKE
+ /* We don't need backup region in Book E */
+ #define BACKUP_SRC_START	0x0000
+diff --git a/kexec/arch/ppc/fs2dt.c b/kexec/arch/ppc/fs2dt.c
+index 6e77379..fed499b 100644
+--- a/kexec/arch/ppc/fs2dt.c
++++ b/kexec/arch/ppc/fs2dt.c
+@@ -37,7 +37,6 @@
+ #define TREEWORDS		65536	/* max 32 bit words for properties */
+ #define MEMRESERVE		256	/* max number of reserved memory blks */
+ #define MAX_MEMORY_RANGES	1024
+-#define COMMAND_LINE_SIZE	512	/* from kernel */
+ 
+ static char pathname[MAXPATH];
+ static char propnames[NAMESPACE] = { 0 };
+diff --git a/kexec/arch/ppc/kexec-ppc.h b/kexec/arch/ppc/kexec-ppc.h
+index 904cf48..6dc36c6 100644
+--- a/kexec/arch/ppc/kexec-ppc.h
++++ b/kexec/arch/ppc/kexec-ppc.h
+@@ -6,6 +6,8 @@
+ #define CORE_TYPE_ELF32	1
+ #define CORE_TYPE_ELF64	2
+ 
++#define COMMAND_LINE_SIZE	2048 /* from kernel */
++
+ extern unsigned char setup_simple_start[];
+ extern uint32_t setup_simple_size;
+ 
+@@ -75,7 +77,6 @@ extern unsigned long dt_address_cells, dt_size_cells;
+ extern int init_memory_region_info(void);
+ extern int read_memory_region_limits(int fd, unsigned long long *start,
+ 					unsigned long long *end);
+-#define COMMAND_LINE_SIZE	512 /* from kernel */
+ /*fs2dt*/
+ void reserve(unsigned long long where, unsigned long long length);
+ 
+diff --git a/kexec/arch/ppc/ops.h b/kexec/arch/ppc/ops.h
+index 7334a05..5e7a070 100644
+--- a/kexec/arch/ppc/ops.h
++++ b/kexec/arch/ppc/ops.h
+@@ -12,7 +12,6 @@
+ #define _PPC_BOOT_OPS_H_
+ #include "types.h"
+ 
+-#define	COMMAND_LINE_SIZE	512
+ #define	MAX_PATH_LEN		256
+ #define	MAX_PROP_LEN		256 /* What should this be? */
+ 
+diff --git a/kexec/arch/ppc64/crashdump-ppc64.h b/kexec/arch/ppc64/crashdump-ppc64.h
+index d654c6b..42ccc31 100644
+--- a/kexec/arch/ppc64/crashdump-ppc64.h
++++ b/kexec/arch/ppc64/crashdump-ppc64.h
+@@ -16,7 +16,7 @@ void add_usable_mem_rgns(unsigned long long base, unsigned long long size);
+ #define __pa(x)         ((unsigned long)(x)-PAGE_OFFSET)
+ #define MAXMEM          (-KERNELBASE-VMALLOCBASE)
+ 
+-#define COMMAND_LINE_SIZE       512 /* from kernel */
++#define COMMAND_LINE_SIZE       2048 /* from kernel */
+ /* Backup Region, First 64K of System RAM. */
+ #define BACKUP_SRC_START    0x0000
+ #define BACKUP_SRC_END      0xffff
diff --git a/SPECS/kexec-tools.spec b/SPECS/kexec-tools.spec
index da23392..141f0b0 100644
--- a/SPECS/kexec-tools.spec
+++ b/SPECS/kexec-tools.spec
@@ -1,6 +1,6 @@
 Name: kexec-tools
 Version: 2.0.14
-Release: 17%{?dist}
+Release: 17.2%{?dist}
 License: GPLv2
 Group: Applications/System
 Summary: The kexec/kdump userspace component.
@@ -79,6 +79,7 @@ Patch101: kexec-tools-2.0.14-x86-Support-large-number-of-memory-ranges.patch
 # Patches 301 through 400 are meant for ppc64 kexec-tools enablement
 #
 Patch301: kexec-tools-2.0.14-ppc64-Reduce-number-of-ELF-LOAD-segments.patch
+Patch302: kexec-tools-2.0.14-kexec-powerpc-fix-command-line-overflow-error.patch
 
 #
 # Patches 401 through 500 are meant for s390 kexec-tools enablement
@@ -157,6 +158,7 @@ tar -z -x -v -f %{SOURCE25}
 
 %patch101 -p1
 %patch301 -p1
+%patch302 -p1
 %patch601 -p1
 %patch602 -p1
 %patch603 -p1
@@ -404,6 +406,12 @@ done
 %doc
 
 %changelog
+* Tue Sep 26 2017 Baoquan He <bhe@redhat.com> 2.0.14-17.2
+- tools: powerpc: fix command line overflow error
+
+* Fri Sep 15 2017 Pingfan Liu <piliu@redhat.com> - 2.0.14-17.1
+- fadump: rebuild default initrd with dump capture capability
+
 * Tue Jun 27 2017 Pingfan Liu <piliu@redhat.com> - 2.0.14-17
 - revert udev rule changes