--- /dev/null
+From pvorel@suse.cz Fri Nov 8 18:34:30 2019
+From: Petr Vorel <pvorel@suse.cz>
+Date: Fri, 8 Nov 2019 16:51:16 +0100
+Subject: alarmtimer: Change remaining ENOTSUPP to EOPNOTSUPP
+To: stable@vger.kernel.org
+Cc: Petr Vorel <pvorel@suse.cz>, Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
+Message-ID: <20191108155116.12896-1-pvorel@suse.cz>
+
+From: Petr Vorel <pvorel@suse.cz>
+
+Fix backport of commit f18ddc13af981ce3c7b7f26925f099e7c6929aba upstream.
+
+Update backport to change ENOTSUPP to EOPNOTSUPP in
+alarm_timer_{del,set}(), which were removed in
+f2c45807d3992fe0f173f34af9c347d907c31686 in v4.13-rc1.
+
+Fixes: c22df8ea7c5831d6fdca2f6f136f0d32d7064ff9
+
+Signed-off-by: Petr Vorel <pvorel@suse.cz>
+Acked-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ kernel/time/alarmtimer.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/kernel/time/alarmtimer.c
++++ b/kernel/time/alarmtimer.c
+@@ -573,7 +573,7 @@ static void alarm_timer_get(struct k_iti
+ static int alarm_timer_del(struct k_itimer *timr)
+ {
+ if (!rtcdev)
+- return -ENOTSUPP;
++ return -EOPNOTSUPP;
+
+ if (alarm_try_to_cancel(&timr->it.alarm.alarmtimer) < 0)
+ return TIMER_RETRY;
+@@ -597,7 +597,7 @@ static int alarm_timer_set(struct k_itim
+ ktime_t exp;
+
+ if (!rtcdev)
+- return -ENOTSUPP;
++ return -EOPNOTSUPP;
+
+ if (flags & ~TIMER_ABSTIME)
+ return -EINVAL;
--- /dev/null
+From yi.zhang@huawei.com Fri Nov 8 18:36:12 2019
+From: "zhangyi (F)" <yi.zhang@huawei.com>
+Date: Wed, 6 Nov 2019 17:43:52 +0800
+Subject: fs/dcache: move security_d_instantiate() behind attaching dentry to inode
+To: <gregkh@linuxfoundation.org>
+Cc: <stable@vger.kernel.org>, <viro@zeniv.linux.org.uk>, <linux-fsdevel@vger.kernel.org>, <yi.zhang@huawei.com>
+Message-ID: <20191106094352.9665-1-yi.zhang@huawei.com>
+
+From: "zhangyi (F)" <yi.zhang@huawei.com>
+
+During backport 1e2e547a93a "do d_instantiate/unlock_new_inode
+combinations safely", there was a error instantiating sequence of
+attaching dentry to inode and calling security_d_instantiate().
+
+Before commit ce23e640133 "->getxattr(): pass dentry and inode as
+separate arguments" and b96809173e9 "security_d_instantiate(): move to
+the point prior to attaching dentry to inode", security_d_instantiate()
+should be called beind __d_instantiate(), otherwise it will trigger
+below problem when CONFIG_SECURITY_SMACK on ext4 was enabled because
+d_inode(dentry) used by ->getxattr() is NULL before __d_instantiate()
+instantiate inode.
+
+[ 31.858026] BUG: unable to handle kernel paging request at ffffffffffffff70
+...
+[ 31.882024] Call Trace:
+[ 31.882378] [<ffffffffa347f75c>] ext4_xattr_get+0x8c/0x3e0
+[ 31.883195] [<ffffffffa3489454>] ext4_xattr_security_get+0x24/0x40
+[ 31.884086] [<ffffffffa336a56b>] generic_getxattr+0x5b/0x90
+[ 31.884907] [<ffffffffa3700514>] smk_fetch+0xb4/0x150
+[ 31.885634] [<ffffffffa3700772>] smack_d_instantiate+0x1c2/0x550
+[ 31.886508] [<ffffffffa36f9a5a>] security_d_instantiate+0x3a/0x80
+[ 31.887389] [<ffffffffa3353b26>] d_instantiate_new+0x36/0x130
+[ 31.888223] [<ffffffffa342b1ef>] ext4_mkdir+0x4af/0x6a0
+[ 31.888928] [<ffffffffa3343470>] vfs_mkdir+0x100/0x280
+[ 31.889536] [<ffffffffa334b086>] SyS_mkdir+0xb6/0x170
+[ 31.890255] [<ffffffffa307c855>] ? trace_do_page_fault+0x95/0x2b0
+[ 31.891134] [<ffffffffa3c5e078>] entry_SYSCALL_64_fastpath+0x18/0x73
+
+Cc: <stable@vger.kernel.org> # 3.16, 4.4
+Signed-off-by: zhangyi (F) <yi.zhang@huawei.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ fs/dcache.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/fs/dcache.c
++++ b/fs/dcache.c
+@@ -1903,7 +1903,6 @@ void d_instantiate_new(struct dentry *en
+ BUG_ON(!hlist_unhashed(&entry->d_u.d_alias));
+ BUG_ON(!inode);
+ lockdep_annotate_inode_mutex_key(inode);
+- security_d_instantiate(entry, inode);
+ spin_lock(&inode->i_lock);
+ __d_instantiate(entry, inode);
+ WARN_ON(!(inode->i_state & I_NEW));
+@@ -1911,6 +1910,7 @@ void d_instantiate_new(struct dentry *en
+ smp_mb();
+ wake_up_bit(&inode->i_state, __I_NEW);
+ spin_unlock(&inode->i_lock);
++ security_d_instantiate(entry, inode);
+ }
+ EXPORT_SYMBOL(d_instantiate_new);
+