On 06/05/2016:10:47:22 AM, Baoquan He wrote:
On 05/05/16 at 05:20pm, Pratyush Anand wrote:
> There could be some dynamic system modification, which may affect kdump
> kernel boot process. In such situation initramfs must be rebulit on the
> basis of changes.
> Since most of these checking methods will use information from
> TARGET_INITRD, therefore check for its existence in common code.
~~
This is not a comment, just a consult :) Usually I thought check is a
transitive verb and I put object just after it.
I think, you are right. 'for' is not needed. Dave, do you want me to resend or
you can correct it while applying.
~Pratyush
>
> >
> > Signed-off-by: Pratyush Anand <panand(a)redhat.com>
> > ---
> > kdumpctl | 21 +++++++++++++++++++++
> > 1 file changed, 21 insertions(+)
> >
> > diff --git a/kdumpctl b/kdumpctl
> > index 8ec6b2de914b..6bd2608343c0 100755
> > --- a/kdumpctl
> > +++ b/kdumpctl
> > @@ -327,10 +327,21 @@ setup_target_initrd()
> > fi
> > }
> >
> > +# returns 0 if system is not modified
> > +# returns 1 if system is modified
> > +# returns 2 if system modification is invalid
> > +is_system_modified()
> > +{
> > + [[ -f $TARGET_INITRD ]] || return 1
> > +
> > + return 0
> > +}
> > +
> > check_rebuild()
> > {
> > local extra_modules modified_files=""
> > local _force_rebuild force_rebuild="0"
> > + local ret system_modified="0"
> > local initramfs_has_fadump
> >
> > check_boot_dir
> > @@ -388,6 +399,14 @@ check_rebuild()
> > fi
> > done
> >
> > + is_system_modified
> > + ret=$?
> > + if [ $ret -eq 2 ]; then
> > + return 1
> > + elif [ $ret -eq 1 ];then
> > + system_modified="1"
> > + fi
> > +
> > #check if target initrd has fadump support
> > if [ "$DEFAULT_DUMP_MODE" = "fadump" ] && [ -f
"$TARGET_INITRD" ]; then
> > initramfs_has_fadump=`lsinitrd -m $TARGET_INITRD | grep ^kdumpbase$ | wc -l`
> > @@ -399,6 +418,8 @@ check_rebuild()
> > echo "$TARGET_INITRD has no fadump support"
> > elif [ "$force_rebuild" != "0" ]; then
> > echo -n "Force rebuild $TARGET_INITRD"; echo
> > + elif [ "$system_modified" != "0" ]; then
> > + :
> > elif [ -n "$modified_files" ]; then
> > echo "Detected change(s) in the following file(s):"
> > echo -n " "; echo "$modified_files" | sed 's/\s/\n
/g'
> > --
> > 2.5.5
> >