reset upstream subtrees to yocto 2.6

Reset the following subtrees on thud HEAD:

  poky: 87e3a9739d
  meta-openembedded: 6094ae18c8
  meta-security: 31dc4e7532
  meta-raspberrypi: a48743dc36
  meta-xilinx: c42016e2e6

Also re-apply backports that didn't make it into thud:
  poky:
    17726d0 systemd-systemctl-native: handle Install wildcards

  meta-openembedded:
    4321a5d libtinyxml2: update to 7.0.1
    042f0a3 libcereal: Add native and nativesdk classes
    e23284f libcereal: Allow empty package
    030e8d4 rsyslog: curl-less build with fmhttp PACKAGECONFIG
    179a1b9 gtest: update to 1.8.1

Squashed OpenBMC subtree compatibility updates:
  meta-aspeed:
    Brad Bishop (1):
          aspeed: add yocto 2.6 compatibility

  meta-ibm:
    Brad Bishop (1):
          ibm: prepare for yocto 2.6

  meta-ingrasys:
    Brad Bishop (1):
          ingrasys: set layer compatibility to yocto 2.6

  meta-openpower:
    Brad Bishop (1):
          openpower: set layer compatibility to yocto 2.6

  meta-phosphor:
    Brad Bishop (3):
          phosphor: set layer compatibility to thud
          phosphor: libgpg-error: drop patches
          phosphor: react to fitimage artifact rename

    Ed Tanous (4):
          Dropbear: upgrade options for latest upgrade
          yocto2.6: update openssl options
          busybox: remove upstream watchdog patch
          systemd: Rebase CONFIG_CGROUP_BPF patch

Change-Id: I7b1fe71cca880d0372a82d94b5fd785323e3a9e7
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/poky/meta/recipes-devtools/perl/liberror-perl_0.17025.bb b/poky/meta/recipes-devtools/perl/liberror-perl_0.17026.bb
similarity index 85%
rename from poky/meta/recipes-devtools/perl/liberror-perl_0.17025.bb
rename to poky/meta/recipes-devtools/perl/liberror-perl_0.17026.bb
index f6dc30d..6f42b47 100644
--- a/poky/meta/recipes-devtools/perl/liberror-perl_0.17025.bb
+++ b/poky/meta/recipes-devtools/perl/liberror-perl_0.17026.bb
@@ -13,8 +13,8 @@
 
 SRC_URI = "http://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Error-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "1a2ee7f0dc44f9ee76661a16bbbc0c48"
-SRC_URI[sha256sum] = "6c9f474ad3d4fe0cabff6b6be532cb1dd348245986d4a6b600ad921d5cfdefaf"
+SRC_URI[md5sum] = "0dcd94640f617df02b6d6c1e4e92018c"
+SRC_URI[sha256sum] = "37590a962cd73ae03470e1ff16459a6cbc5273fc57626b8981dab9c2433155d9"
 
 S = "${WORKDIR}/Error-${PV}"
 
diff --git a/poky/meta/recipes-devtools/perl/liburi-perl_1.73.bb b/poky/meta/recipes-devtools/perl/liburi-perl_1.74.bb
similarity index 87%
rename from poky/meta/recipes-devtools/perl/liburi-perl_1.73.bb
rename to poky/meta/recipes-devtools/perl/liburi-perl_1.74.bb
index 49238f3..a7cfa0f 100644
--- a/poky/meta/recipes-devtools/perl/liburi-perl_1.73.bb
+++ b/poky/meta/recipes-devtools/perl/liburi-perl_1.74.bb
@@ -13,8 +13,8 @@
 
 SRC_URI = "http://www.cpan.org/authors/id/E/ET/ETHER/URI-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "37d44a08e599aa945b32a9434ffe00a5"
-SRC_URI[sha256sum] = "cca7ab4a6f63f3ccaacae0f2e1337e8edf84137e73f18548ec7d659f23efe413"
+SRC_URI[md5sum] = "892f7183b178af40f205ba37128225db"
+SRC_URI[sha256sum] = "a9c254f45f89cb1dd946b689dfe433095404532a4543bdaab0b71ce0fdcdd53d"
 
 S = "${WORKDIR}/URI-${PV}"
 
diff --git a/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.44.bb b/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.44.bb
index c5e0ae6..95af4d1 100644
--- a/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.44.bb
+++ b/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.44.bb
@@ -18,8 +18,15 @@
 
 # fix up sub MakeMaker project as arguments don't get propagated though
 # see https://rt.cpan.org/Public/Bug/Display.html?id=28632
+do_configure_append_class-target() {
+	sed -E \
+	    -e 's:-L${STAGING_LIBDIR}::g' -e 's:-I${STAGING_INCDIR}::g' \
+	    -i Makefile Expat/Makefile
+}
+
 do_configure_append() {
-	sed 's:--sysroot=.*\(\s\|$\):--sysroot=${STAGING_DIR_TARGET} :g' -i Makefile Expat/Makefile
+	sed -e 's:--sysroot=.*\(\s\|$\):--sysroot=${STAGING_DIR_TARGET} :g' \
+	    -i Makefile Expat/Makefile
 	sed 's:^FULL_AR = .*:FULL_AR = ${AR}:g' -i Expat/Makefile
 	# make sure these two do not build in parallel
 	sed 's!^$(INST_DYNAMIC):!$(INST_DYNAMIC): $(BOOTSTRAP)!' -i Expat/Makefile
diff --git a/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.24.bb b/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.25.bb
similarity index 65%
rename from poky/meta/recipes-devtools/perl/libxml-simple-perl_2.24.bb
rename to poky/meta/recipes-devtools/perl/libxml-simple-perl_2.25.bb
index f9d00d2..53788d5 100644
--- a/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.24.bb
+++ b/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.25.bb
@@ -7,13 +7,13 @@
 HOMEPAGE = "http://search.cpan.org/~markov/XML-LibXML-Simple-0.93/lib/XML/LibXML/Simple.pod"
 SECTION = "libs"
 LICENSE = "Artistic-1.0 | GPL-1.0+"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=23477e18a0d04392cdf44ae70e49b495"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=cf206df8c9fe775f1d4c484386491eac"
 DEPENDS += "libxml-parser-perl"
 
 SRC_URI = "http://www.cpan.org/modules/by-module/XML/XML-Simple-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "1cd2e8e3421160c42277523d5b2f4dd2"
-SRC_URI[sha256sum] = "9a14819fd17c75fbb90adcec0446ceab356cab0ccaff870f2e1659205dc2424f"
+SRC_URI[md5sum] = "bb841dce889a26c89a1c2739970e9fbc"
+SRC_URI[sha256sum] = "531fddaebea2416743eb5c4fdfab028f502123d9a220405a4100e68fc480dbf8"
 
 S = "${WORKDIR}/XML-Simple-${PV}"
 
@@ -21,4 +21,15 @@
 
 inherit cpan ptest-perl
 
+RDEPENDS_${PN} += " \
+    libxml-namespacesupport-perl \
+    libxml-parser-perl \
+    libxml-sax-perl \
+"
+
+RDEPENDS_${PN}-ptest += " \
+    perl-module-file-temp \
+    perl-module-test-more \
+"
+
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/perl/perl-native_5.24.1.bb b/poky/meta/recipes-devtools/perl/perl-native_5.24.4.bb
similarity index 94%
rename from poky/meta/recipes-devtools/perl/perl-native_5.24.1.bb
rename to poky/meta/recipes-devtools/perl/perl-native_5.24.4.bb
index 71f4589..81d3fd48 100644
--- a/poky/meta/recipes-devtools/perl/perl-native_5.24.1.bb
+++ b/poky/meta/recipes-devtools/perl/perl-native_5.24.4.bb
@@ -16,10 +16,11 @@
            file://perl-PathTools-don-t-filter-out-blib-from-INC.patch \
            file://0001-Configure-Remove-fstack-protector-strong-for-native-.patch \
            file://perl-5.26.1-guard_old_libcrypt_fix.patch \
+           file://0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch \
           "
 
-SRC_URI[md5sum] = "af6a84c7c3e2b8b269c105a5db2f6d53"
-SRC_URI[sha256sum] = "03a77bac4505c270f1890ece75afc7d4b555090b41aa41ea478747e23b2afb3f"
+SRC_URI[md5sum] = "04622bc4d3941dc7eb571c52b7c02993"
+SRC_URI[sha256sum] = "7f080287ff64750270689843ae945f02159a33cb8f2fc910248c15befba5db84"
 
 inherit native
 
@@ -135,5 +136,5 @@
 
 # Fix the path in sstate
 SSTATE_SCAN_FILES += "*.pm *.pod *.h *.pl *.sh"
-PACKAGES_DYNAMIC_class-native += "^perl-module-.*native$"
 
+PACKAGES_DYNAMIC_class-native = "^perl-module-.*native$"
diff --git a/poky/meta/recipes-devtools/perl/perl-ptest.inc b/poky/meta/recipes-devtools/perl/perl-ptest.inc
index 6a7a2d7..8d46448 100644
--- a/poky/meta/recipes-devtools/perl/perl-ptest.inc
+++ b/poky/meta/recipes-devtools/perl/perl-ptest.inc
@@ -50,7 +50,7 @@
             '${PN}-ptest%s', '%s', recursive=True, match_path=True)
 }
 
-RDEPENDS_${PN}-ptest += "${PN}-modules ${PN}-doc ${PN}-misc sed libssp"
+RDEPENDS_${PN}-ptest += "${PN}-modules ${PN}-doc ${PN}-misc sed"
 
 # The perl-ptest package contains Perl internal modules and generating file
 # dependencies for it causes problems.
diff --git a/poky/meta/recipes-devtools/perl/perl-rdepends_5.24.1.inc b/poky/meta/recipes-devtools/perl/perl-rdepends_5.24.4.inc
similarity index 100%
rename from poky/meta/recipes-devtools/perl/perl-rdepends_5.24.1.inc
rename to poky/meta/recipes-devtools/perl/perl-rdepends_5.24.4.inc
diff --git a/poky/meta/recipes-devtools/perl/perl/0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch b/poky/meta/recipes-devtools/perl/perl/0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch
new file mode 100644
index 0000000..a43fbba
--- /dev/null
+++ b/poky/meta/recipes-devtools/perl/perl/0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch
@@ -0,0 +1,52 @@
+From 40702abf3156fa92ef70ee5d445fe52dd6cfbc7d Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Thu, 20 Sep 2018 18:48:48 +0800
+Subject: [PATCH] ExtUtils/MM_Unix.pm: fix race issues
+
+Fixed a race issue when compile libhtml-parser-perl and others who use MakeMaker:
+[snip]
+chmod 755 blib/arch/auto/HTML/Parser/Parser.so 
+chmod 644 "Parser.bs"
+[snip]
+
+The rule INST_DYNAMIC removes '.bs' file which are generated by BOOTSTRAP, but
+the have no dependencies, so there is a race issue:
+
+BOOTSTRAP:
+    touch foo.bs
+    chmod 755 foo.bs
+
+INST_DYNAMIC:
+    rm -fr foo.bs
+
+The error would happen when INST_DYNAMIC removes foo.bs after BOOTSTRAP touched
+it but before chmod on it.
+
+Upstream-Status: Backport [https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/commit/44e95e717372abe2b0a6ee55de4b686760b65360]
+
+Note, This is not a real backport, upstream has totally refactored it in one
+patch, please see the link above, it's not a good idea to backport such a big
+patch, I just referred it to fix the problem in a simple way. I mark it as
+backport is because we can drop the patch after upgrade perl to 5.26 or 5.28.
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+index 95d9761..9cabe2d 100644
+--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
++++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+@@ -933,7 +933,7 @@ OTHERLDFLAGS = '.$ld_opt.$otherldflags.'
+ INST_DYNAMIC_DEP = '.$inst_dynamic_dep.'
+ INST_DYNAMIC_FIX = '.$ld_fix.'
+ 
+-$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVEDEP) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP)
++$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVEDEP) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) $(BOOTSTRAP)
+ ');
+     if ($armaybe ne ':'){
+ 	$ldfrom = 'tmp$(LIB_EXT)';
+-- 
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2017-12837.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2017-12837.patch
deleted file mode 100644
index 0b59fcd..0000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2017-12837.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 73d7247ecab863ef26b5687a37ccc75d6144ad0f Mon Sep 17 00:00:00 2001
-From: Karl Williamson <khw@cpan.org>
-Date: Tue, 17 Oct 2017 13:49:14 +0800
-Subject: [PATCH] fix CVE-2017-12837
-
-Signed-off-by: Karl Williamson <khw@cpan.org>
-Signed-off-by: Steve Hay <steve.m.hay@googlemail.com>
-
-CVE: CVE-2017-12837
-Upstream-Status: Backport
-https://perl5.git.perl.org/perl.git/commitdiff/96c83ed78aeea1a0496dd2b2d935869a822dc8a5
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- regcomp.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/regcomp.c b/regcomp.c
-index 5498d14..31ec383 100644
---- a/regcomp.c
-+++ b/regcomp.c
-@@ -13021,6 +13021,7 @@ S_regatom(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth)
-                             goto loopdone;
-                         }
-                         p = RExC_parse;
-+                        RExC_parse = parse_start;
-                         if (ender > 0xff) {
-                             REQUIRE_UTF8(flagp);
-                         }
--- 
-1.8.3.1
-
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2017-12883.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2017-12883.patch
deleted file mode 100644
index 5c1805f..0000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2017-12883.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 40b3cdad3649334585cee8f4630ec9a025e62be6 Mon Sep 17 00:00:00 2001
-From: Karl Williamson <khw@cpan.org>
-Date: Fri, 25 Aug 2017 11:33:58 -0600
-Subject: [PATCH] PATCH: [perl #131598]
-
-The cause of this is that the vFAIL macro uses RExC_parse, and that
-variable has just been changed in preparation for code after the vFAIL.
-The solution is to not change RExC_parse until after the vFAIL.
-
-This is a case where the macro hides stuff that can bite you.
-
-(cherry picked from commit 2be4edede4ae226e2eebd4eff28cedd2041f300f)
-
-Upstream-Status: Backport
-CVE: CVE-2017-12833
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- regcomp.c | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-Index: perl-5.24.1/regcomp.c
-===================================================================
---- perl-5.24.1.orig/regcomp.c
-+++ perl-5.24.1/regcomp.c
-@@ -11918,14 +11918,16 @@ S_grok_bslash_N(pTHX_ RExC_state_t *pREx
- 	}
-         sv_catpv(substitute_parse, ")");
- 
--        RExC_parse = RExC_start = RExC_adjusted_start = SvPV(substitute_parse,
--                                                             len);
-+        len = SvCUR(substitute_parse);
- 
- 	/* Don't allow empty number */
- 	if (len < (STRLEN) 8) {
-             RExC_parse = endbrace;
- 	    vFAIL("Invalid hexadecimal number in \\N{U+...}");
- 	}
-+
-+        RExC_parse = RExC_start = RExC_adjusted_start
-+                                              = SvPV_nolen(substitute_parse);
- 	RExC_end = RExC_parse + len;
- 
-         /* The values are Unicode, and therefore not subject to recoding, but
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6797.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2018-6797.patch
deleted file mode 100644
index b56ebd3..0000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6797.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From abe1e6c568b96bcb382dfa4f61c56d1ab001ea51 Mon Sep 17 00:00:00 2001
-From: Karl Williamson <khw@cpan.org>
-Date: Fri, 2 Feb 2018 15:14:27 -0700
-Subject: [PATCH] (perl #132227) restart a node if we change to uni rules
- within the node and encounter a sharp S
-
-This could lead to a buffer overflow.
-
-(cherry picked from commit a02c70e35d1313a5f4e245e8f863c810e991172d)
-
-CVE: CVE-2018-6797
-Upstream-Status: Backport [https://perl5.git.perl.org/perl.git/commitdiff/abe1e6c568b96bcb382dfa4f61c56d1ab001ea51]
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- regcomp.c | 12 ++++++++++++
- 1 file changed, 12 insertions(+)
-
-diff --git a/regcomp.c b/regcomp.c
-index 3b9550b10d..a7dee9a09e 100644
---- a/regcomp.c
-+++ b/regcomp.c
-@@ -13543,6 +13543,18 @@ S_regatom(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth)
-                          * /u.  This includes the multi-char fold SHARP S to
-                          * 'ss' */
-                         if (UNLIKELY(ender == LATIN_SMALL_LETTER_SHARP_S)) {
-+
-+                            /* If the node started out having uni rules, we
-+                             * wouldn't have gotten here.  So this means
-+                             * something in the middle has changed it, but
-+                             * didn't think it needed to reparse.  But this
-+                             * sharp s now does indicate the need for
-+                             * reparsing. */
-+                            if (RExC_uni_semantics) {
-+                                p = oldp;
-+                                goto loopdone;
-+                            }
-+
-                             RExC_seen_unfolded_sharp_s = 1;
-                             maybe_exactfu = FALSE;
-                         }
--- 
-2.15.1-424-g9478a660812
-
-
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-1.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-1.patch
deleted file mode 100644
index 3477162..0000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-1.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From 0abf1e8d89aecd32dbdabda5da4d52a2d57a7cff Mon Sep 17 00:00:00 2001
-From: Karl Williamson <khw@cpan.org>
-Date: Tue, 6 Feb 2018 14:50:48 -0700
-Subject: [PATCH] [perl #132063]: Heap buffer overflow
-
-The proximal cause is several instances in regexec.c of the code
-assuming that the input was valid UTF-8, whereas the input was too short
-for what the start byte claimed it would be.
-
-I grepped through the core for any other similar uses, and did not find
-any.
-
-(cherry picked from commit fe7d8ba0a1bf567af8fa8fea128e2b9f4c553e84)
-
-CVE: CVE-2018-6798
-Upstream-Status: Backport [https://perl5.git.perl.org/perl.git/patch/0abf1e8d89aecd32dbdabda5da4d52a2d57a7cff]
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- regexec.c              | 29 ++++++++++++++++-------------
- t/lib/warnings/regexec |  7 +++++++
- 2 files changed, 23 insertions(+), 13 deletions(-)
-
-diff --git a/regexec.c b/regexec.c
-index 5735b997fd..ea432c39d3 100644
---- a/regexec.c
-+++ b/regexec.c
-@@ -1466,7 +1466,9 @@ Perl_re_intuit_start(pTHX_
-                                            ? trie_utf8_fold                         \
-                                            :   trie_latin_utf8_fold)))
- 
--#define REXEC_TRIE_READ_CHAR(trie_type, trie, widecharmap, uc, uscan, len, uvc, charid, foldlen, foldbuf, uniflags) \
-+/* 'uscan' is set to foldbuf, and incremented, so below the end of uscan is
-+ * 'foldbuf+sizeof(foldbuf)' */
-+#define REXEC_TRIE_READ_CHAR(trie_type, trie, widecharmap, uc, uc_end, uscan, len, uvc, charid, foldlen, foldbuf, uniflags) \
- STMT_START {                                                                        \
-     STRLEN skiplen;                                                                 \
-     U8 flags = FOLD_FLAGS_FULL;                                                     \
-@@ -1474,7 +1476,7 @@ STMT_START {
-     case trie_flu8:                                                                 \
-         _CHECK_AND_WARN_PROBLEMATIC_LOCALE;                                         \
-         if (utf8_target && UTF8_IS_ABOVE_LATIN1(*uc)) {                             \
--            _CHECK_AND_OUTPUT_WIDE_LOCALE_UTF8_MSG(uc, uc + UTF8SKIP(uc));          \
-+            _CHECK_AND_OUTPUT_WIDE_LOCALE_UTF8_MSG(uc, uc_end - uc);                \
-         }                                                                           \
-         goto do_trie_utf8_fold;                                                     \
-     case trie_utf8_exactfa_fold:                                                    \
-@@ -1483,7 +1485,7 @@ STMT_START {
-     case trie_utf8_fold:                                                            \
-       do_trie_utf8_fold:                                                            \
-         if ( foldlen>0 ) {                                                          \
--            uvc = utf8n_to_uvchr( (const U8*) uscan, UTF8_MAXLEN, &len, uniflags ); \
-+            uvc = utf8n_to_uvchr( (const U8*) uscan, foldlen, &len, uniflags );     \
-             foldlen -= len;                                                         \
-             uscan += len;                                                           \
-             len=0;                                                                  \
-@@ -1500,7 +1502,7 @@ STMT_START {
-         /* FALLTHROUGH */                                                           \
-     case trie_latin_utf8_fold:                                                      \
-         if ( foldlen>0 ) {                                                          \
--            uvc = utf8n_to_uvchr( (const U8*) uscan, UTF8_MAXLEN, &len, uniflags ); \
-+            uvc = utf8n_to_uvchr( (const U8*) uscan, foldlen, &len, uniflags );     \
-             foldlen -= len;                                                         \
-             uscan += len;                                                           \
-             len=0;                                                                  \
-@@ -1519,7 +1521,7 @@ STMT_START {
-         }                                                                           \
-         /* FALLTHROUGH */                                                           \
-     case trie_utf8:                                                                 \
--        uvc = utf8n_to_uvchr( (const U8*) uc, UTF8_MAXLEN, &len, uniflags );        \
-+        uvc = utf8n_to_uvchr( (const U8*) uc, uc_end - uc, &len, uniflags );        \
-         break;                                                                      \
-     case trie_plain:                                                                \
-         uvc = (UV)*uc;                                                              \
-@@ -2599,10 +2601,10 @@ S_find_byclass(pTHX_ regexp * prog, const regnode *c, char *s,
-                     }
-                     points[pointpos++ % maxlen]= uc;
-                     if (foldlen || uc < (U8*)strend) {
--                        REXEC_TRIE_READ_CHAR(trie_type, trie,
--                                         widecharmap, uc,
--                                         uscan, len, uvc, charid, foldlen,
--                                         foldbuf, uniflags);
-+                        REXEC_TRIE_READ_CHAR(trie_type, trie, widecharmap, uc,
-+                                             (U8 *) strend, uscan, len, uvc,
-+                                             charid, foldlen, foldbuf,
-+                                             uniflags);
-                         DEBUG_TRIE_EXECUTE_r({
-                             dump_exec_pos( (char *)uc, c, strend,
-                                         real_start, s, utf8_target, 0);
-@@ -5511,8 +5513,9 @@ S_regmatch(pTHX_ regmatch_info *reginfo, char *startpos, regnode *prog)
- 		    if ( base && (foldlen || uc < (U8*)(reginfo->strend))) {
- 			I32 offset;
- 			REXEC_TRIE_READ_CHAR(trie_type, trie, widecharmap, uc,
--					     uscan, len, uvc, charid, foldlen,
--					     foldbuf, uniflags);
-+                                             (U8 *) reginfo->strend, uscan,
-+                                             len, uvc, charid, foldlen,
-+                                             foldbuf, uniflags);
- 			charcount++;
- 			if (foldlen>0)
- 			    ST.longfold = TRUE;
-@@ -5642,8 +5645,8 @@ S_regmatch(pTHX_ regmatch_info *reginfo, char *startpos, regnode *prog)
- 			while (foldlen) {
- 			    if (!--chars)
- 				break;
--			    uvc = utf8n_to_uvchr(uscan, UTF8_MAXLEN, &len,
--					    uniflags);
-+			    uvc = utf8n_to_uvchr(uscan, foldlen, &len,
-+                                                 uniflags);
- 			    uscan += len;
- 			    foldlen -= len;
- 			}
-diff --git a/t/lib/warnings/regexec b/t/lib/warnings/regexec
-index 900dd6ee7f..6635142dea 100644
---- a/t/lib/warnings/regexec
-+++ b/t/lib/warnings/regexec
-@@ -260,3 +260,10 @@ setlocale(&POSIX::LC_CTYPE, $utf8_locale);
- "k" =~ /(?[ \N{KELVIN SIGN} ])/i;
- ":" =~ /(?[ \: ])/;
- EXPECT
-+########
-+# NAME perl #132063, read beyond buffer end
-+# OPTION fatal
-+"\xff" =~ /(?il)\x{100}|\x{100}/;
-+EXPECT
-+Malformed UTF-8 character: \xff (too short; 1 byte available, need 13) in pattern match (m//) at - line 2.
-+Malformed UTF-8 character (fatal) at - line 2.
--- 
-2.15.1-424-g9478a660812
-
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-2.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-2.patch
deleted file mode 100644
index fb9b41a..0000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-2.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From f65da1ca2eee74696d9c120e9d69af37b4fa1920 Mon Sep 17 00:00:00 2001
-From: Tony Cook <tony@develop-help.com>
-Date: Mon, 19 Feb 2018 15:11:42 +1100
-Subject: [PATCH] (perl #132063) we should no longer warn for this code
-
-The first patch for 132063 prevented the buffer read overflow when
-dumping the warning but didn't fix the underlying problem.
-
-The next change treats the supplied buffer correctly, preventing the
-non-UTF-8 SV from being treated as UTF-8, preventing the warning.
-
-(cherry picked from commit 1e8b61488f195e1396aa801c685340b156104f4f)
-
-CVE: CVE-2018-6798
-Upstream-Status: Backport [https://perl5.git.perl.org/perl.git/commitdiff/f65da1ca2eee74696d9c120e9d69af37b4fa1920]
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- t/lib/warnings/regexec | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/t/lib/warnings/regexec b/t/lib/warnings/regexec
-index 6635142dea..c370ddc3c7 100644
---- a/t/lib/warnings/regexec
-+++ b/t/lib/warnings/regexec
-@@ -262,8 +262,5 @@ setlocale(&POSIX::LC_CTYPE, $utf8_locale);
- EXPECT
- ########
- # NAME perl #132063, read beyond buffer end
--# OPTION fatal
- "\xff" =~ /(?il)\x{100}|\x{100}/;
- EXPECT
--Malformed UTF-8 character: \xff (too short; 1 byte available, need 13) in pattern match (m//) at - line 2.
--Malformed UTF-8 character (fatal) at - line 2.
--- 
-2.15.1-424-g9478a660812
-
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6913.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2018-6913.patch
deleted file mode 100644
index 157af7b..0000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6913.patch
+++ /dev/null
@@ -1,153 +0,0 @@
-From f17fed5006177dce8ac48229c424a2da0d6ba492 Mon Sep 17 00:00:00 2001
-From: Tony Cook <tony@develop-help.com>
-Date: Tue, 8 Aug 2017 09:32:58 +1000
-Subject: [PATCH] (perl #131844) fix various space calculation issues in
- pp_pack.c
-
-- for the originally reported case, if the start/cur pointer is in the
-  top 75% of the address space the add (cur) + glen addition would
-  overflow, resulting in the condition failing incorrectly.
-
-- the addition of the existing space used to the space needed could
-  overflow, resulting in too small an allocation and a buffer overflow.
-
-- the scaling for UTF8 could overflow.
-
-- the multiply to calculate the space needed for many items could
-  overflow.
-
-For the first case, do a space calculation without making new pointers.
-
-For the other cases, detect the overflow and croak if there's an
-overflow.
-
-Originally this used Size_t_MAX as the maximum size of a memory
-allocation, but for -DDEBUGGING builds realloc() throws a panic for
-allocations over half the address space in size, changing the error
-reported for the allocation.
-
-For non-DEBUGGING builds the Size_t_MAX limit has the small chance
-of finding a system that has 3GB of contiguous space available, and
-allocating that space, which could be a denial of servce in some cases.
-
-Unfortunately changing the limit to half the address space means that
-the exact case with the original issue can no longer occur, so the
-test is no longer testing against the address + length issue that
-caused the original problem, since the allocation is failing earlier.
-
-One option would be to change the test so the size request by pack is
-just under 2GB, but this has a higher (but still low) probability that
-the system has the address space available, and will actually try to
-allocate the memory, so let's not do that.
-
-Note: changed 
-plan tests => 14713;
-to 
-plan tests => 14712;
-in a/t/op/pack.t
-to apply this patch on perl 5.24.1.
-
-CVE: CVE-2018-6913
-Upstream-Status: Backport [https://perl5.git.perl.org/perl.git/commitdiff/f17fed5006177dce8ac48229c424a2da0d6ba492]
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- pp_pack.c   | 25 +++++++++++++++++++++----
- t/op/pack.t | 24 +++++++++++++++++++++++-
- 2 files changed, 44 insertions(+), 5 deletions(-)
-
-diff --git a/pp_pack.c b/pp_pack.c
-index 8937d6d715..5e9cc64301 100644
---- a/pp_pack.c
-+++ b/pp_pack.c
-@@ -357,11 +357,28 @@ STMT_START {							\
-     }								\
- } STMT_END
- 
-+#define SAFE_UTF8_EXPAND(var)	\
-+STMT_START {				\
-+    if ((var) > SSize_t_MAX / UTF8_EXPAND) \
-+        Perl_croak(aTHX_ "%s", "Out of memory during pack()"); \
-+    (var) = (var) * UTF8_EXPAND; \
-+} STMT_END
-+
-+#define GROWING2(utf8, cat, start, cur, item_size, item_count)	\
-+STMT_START {							\
-+    if (SSize_t_MAX / (item_size) < (item_count))		\
-+        Perl_croak(aTHX_ "%s", "Out of memory during pack()");	\
-+    GROWING((utf8), (cat), (start), (cur), (item_size) * (item_count)); \
-+} STMT_END
-+
- #define GROWING(utf8, cat, start, cur, in_len)	\
- STMT_START {					\
-     STRLEN glen = (in_len);			\
--    if (utf8) glen *= UTF8_EXPAND;		\
--    if ((cur) + glen >= (start) + SvLEN(cat)) {	\
-+    STRLEN catcur = (STRLEN)((cur) - (start));	\
-+    if (utf8) SAFE_UTF8_EXPAND(glen);		\
-+    if (SSize_t_MAX - glen < catcur)		\
-+        Perl_croak(aTHX_ "%s", "Out of memory during pack()"); \
-+    if (catcur + glen >= SvLEN(cat)) {	\
- 	(start) = sv_exp_grow(cat, glen);	\
- 	(cur) = (start) + SvCUR(cat);		\
-     }						\
-@@ -372,7 +389,7 @@ STMT_START {					\
- STMT_START {					\
-     const STRLEN glen = (in_len);		\
-     STRLEN gl = glen;				\
--    if (utf8) gl *= UTF8_EXPAND;		\
-+    if (utf8) SAFE_UTF8_EXPAND(gl);		\
-     if ((cur) + gl >= (start) + SvLEN(cat)) {	\
-         *cur = '\0';				\
-         SvCUR_set((cat), (cur) - (start));	\
-@@ -2126,7 +2143,7 @@ S_pack_rec(pTHX_ SV *cat, tempsym_t* sym
- 	    if (props && !(props & PACK_SIZE_UNPREDICTABLE)) {
- 		/* We can process this letter. */
- 		STRLEN size = props & PACK_SIZE_MASK;
--		GROWING(utf8, cat, start, cur, (STRLEN) len * size);
-+		GROWING2(utf8, cat, start, cur, size, (STRLEN)len);
- 	    }
-         }
- 
-diff --git a/t/op/pack.t b/t/op/pack.t
-index 664aaaf1b0..cf0e286509 100644
---- a/t/op/pack.t
-+++ b/t/op/pack.t
-@@ -12,7 +12,7 @@ my $no_endianness = $] > 5.009 ? '' :
- my $no_signedness = $] > 5.009 ? '' :
-   "Signed/unsigned pack modifiers not available on this perl";
- 
--plan tests => 14712;
-+plan tests => 14717;
- 
- use strict;
- use warnings qw(FATAL all);
-@@ -2044,3 +2044,25 @@ ok(1, "argument underflow did not crash"
-     is(pack("H40", $up_nul), $twenty_nuls,
-        "check pack H zero fills (utf8 source)");
- }
-+
-+SKIP:
-+{
-+  # [perl #131844] pointer addition overflow
-+    $Config{ptrsize} == 4
-+      or skip "[perl #131844] need 32-bit build for this test", 4;
-+    # prevent ASAN just crashing on the allocation failure
-+    local $ENV{ASAN_OPTIONS} = $ENV{ASAN_OPTIONS};
-+    $ENV{ASAN_OPTIONS} .= ",allocator_may_return_null=1";
-+    fresh_perl_like('pack "f999999999"', qr/Out of memory during pack/, { stderr => 1 },
-+		    "pointer addition overflow");
-+
-+    # integer (STRLEN) overflow from addition of glen to current length
-+    fresh_perl_like('pack "c10f1073741823"', qr/Out of memory during pack/, { stderr => 1 },
-+		    "integer overflow calculating allocation (addition)");
-+
-+    fresh_perl_like('pack "W10f536870913", 256', qr/Out of memory during pack/, { stderr => 1 },
-+		    "integer overflow calculating allocation (utf8)");
-+
-+    fresh_perl_like('pack "c10f1073741824"', qr/Out of memory during pack/, { stderr => 1 },
-+		    "integer overflow calculating allocation (multiply)");
-+}
--- 
-2.15.1-424-g9478a660812
-
diff --git a/poky/meta/recipes-devtools/perl/perl/Makefile.SH.patch b/poky/meta/recipes-devtools/perl/perl/Makefile.SH.patch
index c1db335..e4c3426 100644
--- a/poky/meta/recipes-devtools/perl/perl/Makefile.SH.patch
+++ b/poky/meta/recipes-devtools/perl/perl/Makefile.SH.patch
@@ -12,10 +12,10 @@
  Makefile.SH | 147 ++++++++++++++++++++++++++++--------------------------------
  1 file changed, 68 insertions(+), 79 deletions(-)
 
-Index: perl-5.24.1/Makefile.SH
+Index: perl-5.24.4/Makefile.SH
 ===================================================================
---- perl-5.24.1.orig/Makefile.SH
-+++ perl-5.24.1/Makefile.SH
+--- perl-5.24.4.orig/Makefile.SH
++++ perl-5.24.4/Makefile.SH
 @@ -48,10 +48,10 @@ case "$useshrplib" in
  true)
  	# Prefix all runs of 'miniperl' and 'perl' with
@@ -271,9 +271,9 @@
  	$(MINIPERL) autodoc.pl
  
  pod/perlmodlib.pod: $(MINIPERL_EXE) pod/perlmodlib.PL MANIFEST
-@@ -1089,7 +1099,7 @@ pod/perl5241delta.pod: pod/perldelta.pod
- 	$(RMS) pod/perl5241delta.pod
- 	$(LNS) perldelta.pod pod/perl5241delta.pod
+@@ -1089,7 +1099,7 @@ pod/perl5244delta.pod: pod/perldelta.pod
+ 	$(RMS) pod/perl5244delta.pod
+ 	$(LNS) perldelta.pod pod/perl5244delta.pod
  
 -extra.pods: $(MINIPERL_EXE)
 +extra.pods:
diff --git a/poky/meta/recipes-devtools/perl/perl/config.sh b/poky/meta/recipes-devtools/perl/perl/config.sh
index ac0484c..b1b5834 100644
--- a/poky/meta/recipes-devtools/perl/perl/config.sh
+++ b/poky/meta/recipes-devtools/perl/perl/config.sh
@@ -14,7 +14,7 @@
 
 : Configure command line arguments.
 config_arg0='Configure'
-config_args='-des -Doptimize=-O2 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Open Embedded -Dinstallprefix=@EXECPREFIX@ -Dprefix=@EXECPREFIX@ -Dvendorprefix=@EXECPREFIX@ -Dsiteprefix=@EXECPREFIX@ -Dotherlibdirs=@LIBDIR@/perl/5.24.1 -Duseshrplib -Dusethreads -Duseithreads -Duselargefiles -Ud_dosuid -Dd_semctl_semun -Ui_db -Ui_ndbm -Ui_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl -Ubincompat5005 -Uversiononly -Dpager=@USRBIN@/less -isr'
+config_args='-des -Doptimize=-O2 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Open Embedded -Dinstallprefix=@EXECPREFIX@ -Dprefix=@EXECPREFIX@ -Dvendorprefix=@EXECPREFIX@ -Dsiteprefix=@EXECPREFIX@ -Dotherlibdirs=@LIBDIR@/perl/5.24.4 -Duseshrplib -Dusethreads -Duseithreads -Duselargefiles -Ud_dosuid -Dd_semctl_semun -Ui_db -Ui_ndbm -Ui_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl -Ubincompat5005 -Uversiononly -Dpager=@USRBIN@/less -isr'
 config_argc=28
 config_arg1='-des'
 config_arg2='-Doptimize=-O2'
@@ -26,7 +26,7 @@
 config_arg8='-Dprefix=@EXECPREFIX@'
 config_arg9='-Dvendorprefix=@EXECPREFIX@'
 config_arg10='-Dsiteprefix=@EXECPREFIX@'
-config_arg11='-Dotherlibdirs=@LIBDIR@/perl/5.24.1'
+config_arg11='-Dotherlibdirs=@LIBDIR@/perl/5.24.4'
 config_arg12='-Duseshrplib'
 config_arg13='-Dusethreads'
 config_arg14='-Duseithreads'
@@ -64,13 +64,13 @@
 ansi2knr=''
 aphostname=''
 api_revision='5'
-api_subversion='1'
+api_subversion='4'
 api_version='24'
-api_versionstring='5.24.1'
+api_versionstring='5.24.4'
 ar='ar'
-archlib='@LIBDIR@/perl/5.24.1/@ARCH@-thread-multi'
-archlibexp='@STAGINGDIR@@LIBDIR@/perl/5.24.1/@ARCH@-thread-multi'
-archlib_exp='@LIBDIR@/perl/5.24.1/@ARCH@-thread-multi'
+archlib='@LIBDIR@/perl/5.24.4/@ARCH@-thread-multi'
+archlibexp='@STAGINGDIR@@LIBDIR@/perl/5.24.4/@ARCH@-thread-multi'
+archlib_exp='@LIBDIR@/perl/5.24.4/@ARCH@-thread-multi'
 archname64=''
 archname='@ARCH@-thread-multi'
 archobjs=''
@@ -88,7 +88,7 @@
 cat='cat'
 cc='gcc'
 cccdlflags='-fPIC'
-ccdlflags='-Wl,-E -Wl,-rpath,@LIBDIR@/perl/5.24.1/@ARCH@-thread-multi/CORE'
+ccdlflags='-Wl,-E -Wl,-rpath,@LIBDIR@/perl/5.24.4/@ARCH@-thread-multi/CORE'
 ccflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2'
 ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
 ccname='gcc'
@@ -838,7 +838,7 @@
 incpath=''
 inews=''
 initialinstalllocation='@USRBIN@'
-installarchlib='@LIBDIR@/perl/5.24.1/@ARCH@-thread-multi'
+installarchlib='@LIBDIR@/perl/5.24.4/@ARCH@-thread-multi'
 installbin='@USRBIN@'
 installhtml1dir=''
 installhtml3dir=''
@@ -846,23 +846,23 @@
 installman3dir=''
 installprefix='@EXECPREFIX@'
 installprefixexp='@EXECPREFIX@'
-installprivlib='@LIBDIR@/perl/5.24.1'
+installprivlib='@LIBDIR@/perl/5.24.4'
 installscript='@USRBIN@'
-installsitearch='@LIBDIR@/perl/site_perl/5.24.1/@ARCH@-thread-multi'
+installsitearch='@LIBDIR@/perl/site_perl/5.24.4/@ARCH@-thread-multi'
 installsitebin='@USRBIN@'
 installsitehtml1dir=''
 installsitehtml3dir=''
-installsitelib='@LIBDIR@/perl/site_perl/5.24.1'
+installsitelib='@LIBDIR@/perl/site_perl/5.24.4'
 installsiteman1dir=''
 installsiteman3dir=''
 installsitescript='@USRBIN@'
 installstyle='lib/perl'
 installusrbinperl='define'
-installvendorarch='@LIBDIR@/perl/vendor_perl/5.24.1/@ARCH@-thread-multi'
+installvendorarch='@LIBDIR@/perl/vendor_perl/5.24.4/@ARCH@-thread-multi'
 installvendorbin='@USRBIN@'
 installvendorhtml1dir=''
 installvendorhtml3dir=''
-installvendorlib='@LIBDIR@/perl/vendor_perl/5.24.1'
+installvendorlib='@LIBDIR@/perl/vendor_perl/5.24.4'
 installvendorman1dir=''
 installvendorman3dir=''
 installvendorscript='@USRBIN@'
@@ -965,7 +965,7 @@
 orderlib='false'
 osname='linux'
 osvers='3.19.5-yocto-standard'
-otherlibdirs='@LIBDIR@/perl/5.24.1'
+otherlibdirs='@LIBDIR@/perl/5.24.4'
 package='perl'
 pager='/usr/bin/less -isr'
 passcat='cat /etc/passwd'
@@ -986,8 +986,8 @@
 pr=''
 prefix='@EXECPREFIX@'
 prefixexp='@EXECPREFIX@'
-privlib='@LIBDIR@/perl/5.24.1'
-privlibexp='@LIBDIR@/perl/5.24.1'
+privlib='@LIBDIR@/perl/5.24.4'
+privlibexp='@LIBDIR@/perl/5.24.4'
 procselfexe='"/proc/self/exe"'
 prototype='define'
 ptrsize='8'
@@ -1053,17 +1053,17 @@
 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 6, 17, 29, 31, 0'
 sig_size='69'
 signal_t='void'
-sitearch='@LIBDIR@/perl/site_perl/5.24.1/@ARCH@-thread-multi'
-sitearchexp='@LIBDIR@/perl/site_perl/5.24.1/@ARCH@-thread-multi'
+sitearch='@LIBDIR@/perl/site_perl/5.24.4/@ARCH@-thread-multi'
+sitearchexp='@LIBDIR@/perl/site_perl/5.24.4/@ARCH@-thread-multi'
 sitebin='@USRBIN@'
 sitebinexp='@USRBIN@'
 sitehtml1dir=''
 sitehtml1direxp=''
 sitehtml3dir=''
 sitehtml3direxp=''
-sitelib='@LIBDIR@/perl/site_perl/5.24.1'
+sitelib='@LIBDIR@/perl/site_perl/5.24.4'
 sitelib_stem='@LIBDIR@/perl/site_perl'
-sitelibexp='@LIBDIR@/perl/site_perl/5.24.1'
+sitelibexp='@LIBDIR@/perl/site_perl/5.24.4'
 siteman1dir=''
 siteman1direxp=''
 siteman3dir=''
@@ -1102,7 +1102,7 @@
 strerror_r_proto='REENTRANT_PROTO_B_IBW'
 strings='@INCLUDEDIR@/string.h'
 submit=''
-subversion='1'
+subversion='4'
 sysman='@EXECPREFIX@/share/man/man1'
 sysroot=''
 tail=''
@@ -1182,17 +1182,17 @@
 uvuformat='"lu"'
 uvxformat='"lx"'
 vaproto='define'
-vendorarch='@LIBDIR@/perl/vendor_perl/5.24.1/@ARCH@-thread-multi'
-vendorarchexp='@LIBDIR@/perl/vendor_perl/5.24.1/@ARCH@-thread-multi'
+vendorarch='@LIBDIR@/perl/vendor_perl/5.24.4/@ARCH@-thread-multi'
+vendorarchexp='@LIBDIR@/perl/vendor_perl/5.24.4/@ARCH@-thread-multi'
 vendorbin='@USRBIN@'
 vendorbinexp='@USRBIN@'
 vendorhtml1dir=' '
 vendorhtml1direxp=''
 vendorhtml3dir=' '
 vendorhtml3direxp=''
-vendorlib='@LIBDIR@/perl/vendor_perl/5.24.1'
+vendorlib='@LIBDIR@/perl/vendor_perl/5.24.4'
 vendorlib_stem='@LIBDIR@/perl/vendor_perl'
-vendorlibexp='@LIBDIR@/perl/vendor_perl/5.24.1'
+vendorlibexp='@LIBDIR@/perl/vendor_perl/5.24.4'
 vendorman1dir=' '
 vendorman1direxp=''
 vendorman3dir=' '
@@ -1201,8 +1201,8 @@
 vendorprefixexp='@EXECPREFIX@'
 vendorscript='@USRBIN@'
 vendorscriptexp='@USRBIN@'
-version='5.24.1'
-version_patchlevel_string='version 24 subversion 1'
+version='5.24.4'
+version_patchlevel_string='version 24 subversion 4'
 versiononly='undef'
 vi=''
 xlibpth='@LIBDIR@/386 @BASELIBDIR@386'
@@ -1212,10 +1212,10 @@
 zip='zip'
 PERL_REVISION=5
 PERL_VERSION=24
-PERL_SUBVERSION=1
+PERL_SUBVERSION=4
 PERL_API_REVISION=5
 PERL_API_VERSION=24
-PERL_API_SUBVERSION=1
+PERL_API_SUBVERSION=4
 PERL_PATCHLEVEL=''
 PERL_CONFIG_SH=true
 : Variables propagated from previous config.sh file.
diff --git a/poky/meta/recipes-devtools/perl/perl_5.24.1.bb b/poky/meta/recipes-devtools/perl/perl_5.24.4.bb
similarity index 96%
rename from poky/meta/recipes-devtools/perl/perl_5.24.1.bb
rename to poky/meta/recipes-devtools/perl/perl_5.24.4.bb
index 6e33bb0..a644970 100644
--- a/poky/meta/recipes-devtools/perl/perl_5.24.1.bb
+++ b/poky/meta/recipes-devtools/perl/perl_5.24.4.bb
@@ -63,13 +63,8 @@
         file://perl-errno-generation-gcc5.patch \
         file://perl-fix-conflict-between-skip_all-and-END.patch \
         file://perl-5.26.1-guard_old_libcrypt_fix.patch \
-        file://CVE-2017-12883.patch \
-        file://CVE-2017-12837.patch \
-        file://CVE-2018-6798-1.patch \
-        file://CVE-2018-6798-2.patch \
-        file://CVE-2018-6797.patch \
-        file://CVE-2018-6913.patch \
         file://CVE-2018-12015.patch \
+        file://0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch \
 "
 
 # Fix test case issues
@@ -79,8 +74,8 @@
             file://0001-Skip-various-tests-if-PERL_BUILD_PACKAGING-is-set.patch \
            "
 
-SRC_URI[md5sum] = "af6a84c7c3e2b8b269c105a5db2f6d53"
-SRC_URI[sha256sum] = "03a77bac4505c270f1890ece75afc7d4b555090b41aa41ea478747e23b2afb3f"
+SRC_URI[md5sum] = "04622bc4d3941dc7eb571c52b7c02993"
+SRC_URI[sha256sum] = "7f080287ff64750270689843ae945f02159a33cb8f2fc910248c15befba5db84"
 
 inherit perlnative siteinfo
 
@@ -151,7 +146,6 @@
                        -e "s,\(i_fcntl=\)'undef',\1'define',g" \
                        -e "s,\(h_fcntl=\)'false',\1'true',g" \
                        -e "s,-fstack-protector,-fno-stack-protector,g" \
-                       -e "s,-lnsl,,g" \
                     config.sh-${TARGET_ARCH}-${TARGET_OS}
         fi
 
@@ -164,6 +158,7 @@
                -e "s,@BASELIBDIR@,${base_libdir},g" \
                -e "s,@EXECPREFIX@,${exec_prefix},g" \
                -e 's,@USRBIN@,${bindir},g' \
+               -e "s,-lnsl,,g" \
             config.sh-${TARGET_ARCH}-${TARGET_OS}
 
 	case "${TARGET_ARCH}" in
@@ -346,7 +341,7 @@
 }
 
 PACKAGES_DYNAMIC += "^perl-module-.*(?<!\-native)$"
-PACKAGES_DYNAMIC_class-nativesdk += "^nativesdk-perl-module-.*"
+PACKAGES_DYNAMIC_class-nativesdk = "^nativesdk-perl-module-.*"
 
 RPROVIDES_perl-lib = "perl-lib"