In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 3:
. /lib/rcscripts/sh/parhand-functions.sh
  ^-- SC1091 (info): Not following: /lib/rcscripts/sh/parhand-functions.sh was not specified as input (see shellcheck -x).


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 58:
	local uep=/usr/etc/param epp_tmp=/etc/parhand/portmanager epp=
        ^-- SC3043 (warning): In POSIX sh, 'local' is undefined.


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 67:
	chroot $TEMPFS $PH /dev/null 50011 -d $uep -d $EDP $epp -upgrade &
                                                           ^--^ SC2086 (info): Double quote to prevent globbing and word splitting.

Did you mean: 
	chroot $TEMPFS $PH /dev/null 50011 -d $uep -d $EDP "$epp" -upgrade &


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 75:
	killall parhand && wait_until_parhand_has_stopped ||
                        ^-- SC2015 (info): Note that A && B || C is not if-then-else. C may run when A is true.


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 80:
	[ $# -gt 0 ] && [ "$1" ] || exit_with_error "create_dir: missing argument"
                     ^-- SC2015 (info): Note that A && B || C is not if-then-else. C may run when A is true.


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 85:
	local failure=information
        ^-----------^ SC3043 (warning): In POSIX sh, 'local' is undefined.


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 86:
	[ $# -gt 0 ] && [ "$1" ] || exit_with_error "mount_oldfs_to_tempfs: missing argument"
                     ^-- SC2015 (info): Note that A && B || C is not if-then-else. C may run when A is true.


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 88:
	mount --bind $ROOTFS_OLD$1 $TEMPFS$1 >/dev/null 2>&1 || {
                     ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting.
                                ^-- SC2086 (info): Double quote to prevent globbing and word splitting.
                                          ^-- SC2086 (info): Double quote to prevent globbing and word splitting.

Did you mean: 
	mount --bind "$ROOTFS_OLD""$1" $TEMPFS"$1" >/dev/null 2>&1 || {


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 122:
    echo -n >$TMP_EMPTY
         ^-- SC3037 (warning): In POSIX sh, echo flags are undefined.


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 148:
	for f in $TEMPFS$EDP/*; do
                 ^-----^ SC2231 (info): Quote expansions in this for loop glob to prevent wordsplitting, e.g. "$dir"/*.txt .
                        ^--^ SC2231 (info): Quote expansions in this for loop glob to prevent wordsplitting, e.g. "$dir"/*.txt .


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 149:
		[ -f $f ] && [ -r $f ] || continue
                     ^-- SC2086 (info): Double quote to prevent globbing and word splitting.
                          ^-- SC2015 (info): Note that A && B || C is not if-then-else. C may run when A is true.
                                  ^-- SC2086 (info): Double quote to prevent globbing and word splitting.

Did you mean: 
		[ -f "$f" ] && [ -r "$f" ] || continue


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 150:
		grep "DO NOT REMOVE THIS LINE" $f >$BCK_DYNPH/${f#$TEMPFS$EDP/} 2>/dev/null || :
                                               ^-- SC2086 (info): Double quote to prevent globbing and word splitting.
                                                              ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting.
                                                                  ^-----^ SC2295 (info): Expansions inside ${..} need to be quoted separately, otherwise they match as patterns.
                                                                         ^--^ SC2295 (info): Expansions inside ${..} need to be quoted separately, otherwise they match as patterns.

Did you mean: 
		grep "DO NOT REMOVE THIS LINE" "$f" >$BCK_DYNPH/"${f#"$TEMPFS""$EDP"/}" 2>/dev/null || :


In /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/conf-migrate/upgrade-parhand line 157:
		chroot $TEMPFS $PHC --no-mapped $BCK_OPT get root.$prm - MULTILINE >>$BCK_PH 2>$TMP_ERR || :
                                                                  ^--^ SC2086 (info): Double quote to prevent globbing and word splitting.

Did you mean: 
		chroot $TEMPFS $PHC --no-mapped $BCK_OPT get root."$prm" - MULTILINE >>$BCK_PH 2>$TMP_ERR || :

For more information:
  https://www.shellcheck.net/wiki/SC3037 -- In POSIX sh, echo flags are undef...
  https://www.shellcheck.net/wiki/SC3043 -- In POSIX sh, 'local' is undefined.
  https://www.shellcheck.net/wiki/SC1091 -- Not following: /lib/rcscripts/sh/...