Home Home > GIT Browse > SLE12-SP5-AZURE
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKernel Build Daemon <kbuild@suse.de>2019-10-19 07:01:06 +0200
committerKernel Build Daemon <kbuild@suse.de>2019-10-19 07:01:06 +0200
commit412264e23f906f0e5bca5639c40bec71131402de (patch)
tree5e4569ea3b280e9f18bef2a5f03b653d29dbe508
parente89c320c616aa41edca2f874daf644294d71624a (diff)
parent227b3e20460e3e4a0bc993a9b22aa91255923472 (diff)
Merge branch 'SLE12-SP5' into SLE12-SP5-AZURESLE12-SP5-AZURE
-rw-r--r--patches.suse/0001-lpfc-remove-left-over-BUILD_NVME-defines.patch66
-rw-r--r--patches.suse/Btrfs-check-for-the-full-sync-flag-while-holding-the.patch86
-rw-r--r--patches.suse/block-add-io-timeout-to-sysfs.patch73
-rw-r--r--patches.suse/block-don-t-show-io_timeout-if-driver-has-no-timeout.patch85
-rw-r--r--patches.suse/s390-vfio-ccw-Do-not-attempt-to-free-no-op-test-and-.patch39
-rw-r--r--patches.suse/vfio-ccw-fix-bad-ptr-math-for-TIC-cda-translation.patch48
-rw-r--r--series.conf8
7 files changed, 405 insertions, 0 deletions
diff --git a/patches.suse/0001-lpfc-remove-left-over-BUILD_NVME-defines.patch b/patches.suse/0001-lpfc-remove-left-over-BUILD_NVME-defines.patch
new file mode 100644
index 0000000000..3b49be0b17
--- /dev/null
+++ b/patches.suse/0001-lpfc-remove-left-over-BUILD_NVME-defines.patch
@@ -0,0 +1,66 @@
+From: Hannes Reinecke <hare@suse.com>
+Date: Thu, 17 Oct 2019 17:00:19 +0200
+Subject: [PATCH] scsi: lpfc: remove left-over BUILD_NVME defines
+Git-commit: 1052b41b25cbadcb85ff04c3b46663e21168dd3e
+Patch-mainline: Queued in subsystem maintainer repository
+Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git
+References: bsc#1154268
+
+The BUILD_NVME define never got defined anywhere, causing NVMe commands to
+be treated as SCSI commands when freeing the buffers. This was causing a
+stuck discovery and a horrible crash in lpfc_set_rrq_active() later on.
+
+Link: https://lore.kernel.org/r/20191017150019.75769-1-hare@suse.de
+Fixes: c00f62e6c546 ("scsi: lpfc: Merge per-protocol WQ/CQ pairs into single per-cpu pair")
+Signed-off-by: Hannes Reinecke <hare@suse.com>
+Reviewed-by: James Smart <james.smart@broadcom.com>
+Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
+Acked-by: Denis Kirjanov <denis.kirjanov@suse.com>
+---
+ drivers/scsi/lpfc/lpfc_init.c | 2 --
+ drivers/scsi/lpfc/lpfc_scsi.c | 2 --
+ 2 files changed, 4 deletions(-)
+
+diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c
+index de64880c6c60..2c1e085bd3ce 100644
+--- a/drivers/scsi/lpfc/lpfc_init.c
++++ b/drivers/scsi/lpfc/lpfc_init.c
+@@ -9053,7 +9053,6 @@ lpfc_sli4_queue_create(struct lpfc_hba *phba)
+ }
+ }
+
+-#if defined(BUILD_NVME)
+ /* Clear NVME stats */
+ if (phba->cfg_enable_fc4_type & LPFC_ENABLE_NVME) {
+ for (idx = 0; idx < phba->cfg_hdw_queue; idx++) {
+@@ -9061,7 +9060,6 @@ lpfc_sli4_queue_create(struct lpfc_hba *phba)
+ sizeof(phba->sli4_hba.hdwq[idx].nvme_cstat));
+ }
+ }
+-#endif
+
+ /* Clear SCSI stats */
+ if (phba->cfg_enable_fc4_type & LPFC_ENABLE_FCP) {
+diff --git a/drivers/scsi/lpfc/lpfc_scsi.c b/drivers/scsi/lpfc/lpfc_scsi.c
+index fe1097666de4..6822cd9ff8f1 100644
+--- a/drivers/scsi/lpfc/lpfc_scsi.c
++++ b/drivers/scsi/lpfc/lpfc_scsi.c
+@@ -528,7 +528,6 @@ lpfc_sli4_io_xri_aborted(struct lpfc_hba *phba,
+ list_del_init(&psb->list);
+ psb->exch_busy = 0;
+ psb->status = IOSTAT_SUCCESS;
+-#ifdef BUILD_NVME
+ if (psb->cur_iocbq.iocb_flag == LPFC_IO_NVME) {
+ qp->abts_nvme_io_bufs--;
+ spin_unlock(&qp->abts_io_buf_list_lock);
+@@ -536,7 +535,6 @@ lpfc_sli4_io_xri_aborted(struct lpfc_hba *phba,
+ lpfc_sli4_nvme_xri_aborted(phba, axri, psb);
+ return;
+ }
+-#endif
+ qp->abts_scsi_io_bufs--;
+ spin_unlock(&qp->abts_io_buf_list_lock);
+
+--
+2.16.4
+
diff --git a/patches.suse/Btrfs-check-for-the-full-sync-flag-while-holding-the.patch b/patches.suse/Btrfs-check-for-the-full-sync-flag-while-holding-the.patch
new file mode 100644
index 0000000000..dac2fb9f3e
--- /dev/null
+++ b/patches.suse/Btrfs-check-for-the-full-sync-flag-while-holding-the.patch
@@ -0,0 +1,86 @@
+From: Filipe Manana <fdmanana@suse.com>
+Date: Wed, 16 Oct 2019 17:28:50 +0100
+Patch-mainline: submitted upstream, https://patchwork.kernel.org/patch/11193633/
+References: bsc#1153713
+Subject: [PATCH] Btrfs: check for the full sync flag while holding the inode
+ lock during fsync
+
+We were checking for the full fsync flag in the inode before locking the
+inode, which is racy, since at that that time it might not be set but
+after we acquire the inode lock some other task set it. One case where
+this can happen is on a system low on memory and some concurrent task
+failed to allocate an extent map and therefore set the full sync flag on
+the inode, to force the next fsync to work in full mode.
+
+A consequence of missing the full fsync flag set is hitting the problems
+fixed by commit 0c713cbab620 ("Btrfs: fix race between ranged fsync and
+writeback of adjacent ranges"), BUG_ON() when dropping extents from a log
+tree, hitting assertion failures at tree-log.c:copy_items() or all sorts
+of weird inconsistencies after replaying a log due to file extents items
+representing ranges that overlap.
+
+So just move the check such that it's done after locking the inode and
+before starting writeback again.
+
+Fixes: 0c713cbab620 ("Btrfs: fix race between ranged fsync and writeback of adjacent ranges")
+Signed-off-by: Filipe Manana <fdmanana@suse.com>
+---
+ fs/btrfs/file.c | 35 ++++++++++++++++++-----------------
+ 1 file changed, 18 insertions(+), 17 deletions(-)
+
+diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
+index 320b01580f2e..901aeb7ee81b 100644
+--- a/fs/btrfs/file.c
++++ b/fs/btrfs/file.c
+@@ -2059,23 +2059,6 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
+ bool full_sync = 0;
+ u64 len;
+
+- /*
+- * If the inode needs a full sync, make sure we use a full range to
+- * avoid log tree corruption, due to hole detection racing with ordered
+- * extent completion for adjacent ranges, and assertion failures during
+- * hole detection.
+- */
+- if (test_bit(BTRFS_INODE_NEEDS_FULL_SYNC,
+- &BTRFS_I(inode)->runtime_flags)) {
+- start = 0;
+- end = LLONG_MAX;
+- }
+-
+- /*
+- * The range length can be represented by u64, we have to do the typecasts
+- * to avoid signed overflow if it's [0, LLONG_MAX] eg. from fsync()
+- */
+- len = (u64)end - (u64)start + 1;
+ trace_btrfs_sync_file(file, datasync);
+
+ /*
+@@ -2092,6 +2075,24 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
+ atomic_inc(&root->log_batch);
+ full_sync = test_bit(BTRFS_INODE_NEEDS_FULL_SYNC,
+ &BTRFS_I(inode)->runtime_flags);
++ /*
++ * If the inode needs a full sync, make sure we use a full range to
++ * avoid log tree corruption, due to hole detection racing with ordered
++ * extent completion for adjacent ranges, and assertion failures during
++ * hole detection. Do this while holding the inode lock, to avoid races
++ * with other tasks.
++ */
++ if (full_sync) {
++ start = 0;
++ end = LLONG_MAX;
++ }
++
++ /*
++ * The range length can be represented by u64, we have to do the typecasts
++ * to avoid signed overflow if it's [0, LLONG_MAX] eg. from fsync()
++ */
++ len = (u64)end - (u64)start + 1;
++
+ /*
+ * We might have have had more pages made dirty after calling
+ * start_ordered_ops and before acquiring the inode's i_mutex.
+--
+2.16.4
+
diff --git a/patches.suse/block-add-io-timeout-to-sysfs.patch b/patches.suse/block-add-io-timeout-to-sysfs.patch
new file mode 100644
index 0000000000..ba2d22e571
--- /dev/null
+++ b/patches.suse/block-add-io-timeout-to-sysfs.patch
@@ -0,0 +1,73 @@
+From 65cd1d13b880920054d6c750679baa80b7f9c072 Mon Sep 17 00:00:00 2001
+From: Weiping Zhang <zhangweiping@didiglobal.com>
+Date: Thu, 29 Nov 2018 00:04:39 +0800
+Subject: [PATCH] block: add io timeout to sysfs
+References: bsc#1148410
+Git-commit: 65cd1d13b880920054d6c750679baa80b7f9c072
+Patch-mainline: v5.0-rc1
+
+Give a interface to adjust io timeout(ms) by device.
+
+Signed-off-by: Weiping Zhang <zhangweiping@didiglobal.com>
+Signed-off-by: Jens Axboe <axboe@kernel.dk>
+Signed-off-by: Thomas Abraham <tabraham@suse.com>
+[tabraham@suse.com: handled backport. modified for context]
+---
+ block/blk-sysfs.c | 27 +++++++++++++++++++++++++++
+ 1 file changed, 27 insertions(+)
+
+diff --git a/block/blk-sysfs.c b/block/blk-sysfs.c
+index 80eef48fddc8..9f0cb370b39b 100644
+--- a/block/blk-sysfs.c
++++ b/block/blk-sysfs.c
+@@ -417,6 +417,26 @@ static ssize_t queue_poll_store(struct request_queue *q, const char *page,
+ return ret;
+ }
+
++static ssize_t queue_io_timeout_show(struct request_queue *q, char *page)
++{
++ return sprintf(page, "%u\n", jiffies_to_msecs(q->rq_timeout));
++}
++
++static ssize_t queue_io_timeout_store(struct request_queue *q, const char *page,
++ size_t count)
++{
++ unsigned int val;
++ int err;
++
++ err = kstrtou32(page, 10, &val);
++ if (err || val == 0)
++ return -EINVAL;
++
++ blk_queue_rq_timeout(q, msecs_to_jiffies(val));
++
++ return count;
++}
++
+ static ssize_t queue_wb_lat_show(struct request_queue *q, char *page)
+ {
+ if (!q->rq_wb)
+@@ -685,6 +705,12 @@ static struct queue_sysfs_entry queue_dax_entry = {
+ .show = queue_dax_show,
+ };
+
++static struct queue_sysfs_entry queue_io_timeout_entry = {
++ .attr = {.name = "io_timeout", .mode = 0644 },
++ .show = queue_io_timeout_show,
++ .store = queue_io_timeout_store,
++};
++
+ static struct queue_sysfs_entry queue_wb_lat_entry = {
+ .attr = {.name = "wbt_lat_usec", .mode = 0644 },
+ .show = queue_wb_lat_show,
+@@ -734,6 +760,7 @@ static struct attribute *default_attrs[] = {
+ &queue_dax_entry.attr,
+ &queue_wb_lat_entry.attr,
+ &queue_poll_delay_entry.attr,
++ &queue_io_timeout_entry.attr,
+ #ifdef CONFIG_BLK_DEV_THROTTLING_LOW
+ &throtl_sample_time_entry.attr,
+ #endif
+--
+2.16.4
+
diff --git a/patches.suse/block-don-t-show-io_timeout-if-driver-has-no-timeout.patch b/patches.suse/block-don-t-show-io_timeout-if-driver-has-no-timeout.patch
new file mode 100644
index 0000000000..62e2e74ea1
--- /dev/null
+++ b/patches.suse/block-don-t-show-io_timeout-if-driver-has-no-timeout.patch
@@ -0,0 +1,85 @@
+From 4d25339e32a1b6e1f490bb78b1e5b0fa9eb3e073 Mon Sep 17 00:00:00 2001
+From: Weiping Zhang <zhangweiping@didiglobal.com>
+Date: Tue, 2 Apr 2019 21:14:30 +0800
+Subject: [PATCH] block: don't show io_timeout if driver has no timeout handler
+References: bsc#1148410
+Git-commit: 4d25339e32a1b6e1f490bb78b1e5b0fa9eb3e073
+Patch-mainline: v5.2-rc1
+
+If the low level driver has no timeout handler, the
+/sys/block/<disk>/queue/io_timeout will not be displayed.
+
+Reviewed-by: Bart Van Assche <bvanassche@acm.org>
+Signed-off-by: Weiping Zhang <zhangweiping@didiglobal.com>
+Signed-off-by: Jens Axboe <axboe@kernel.dk>
+Signed-off-by: Thomas Abraham <tabraham@suse.com>
+[tabraham@suse.com: handled backport. modified for context]
+---
+ block/blk-sysfs.c | 30 ++++++++++++++++++++++++++++--
+ 1 file changed, 28 insertions(+), 2 deletions(-)
+
+diff --git a/block/blk-sysfs.c b/block/blk-sysfs.c
+index 422327089e0f..a16a02c52a85 100644
+--- a/block/blk-sysfs.c
++++ b/block/blk-sysfs.c
+@@ -728,7 +728,7 @@ static struct queue_sysfs_entry throtl_sample_time_entry = {
+ };
+ #endif
+
+-static struct attribute *default_attrs[] = {
++static struct attribute *queue_attrs[] = {
+ &queue_requests_entry.attr,
+ &queue_ra_entry.attr,
+ &queue_max_hw_sectors_entry.attr,
+@@ -770,6 +770,25 @@ static struct attribute *default_attrs[] = {
+ NULL,
+ };
+
++static umode_t queue_attr_visible(struct kobject *kobj, struct attribute *attr,
++ int n)
++{
++ struct request_queue *q =
++ container_of(kobj, struct request_queue, kobj);
++
++ if (attr == &queue_io_timeout_entry.attr &&
++ (!q->mq_ops || !q->mq_ops->timeout))
++ return 0;
++
++ return attr->mode;
++}
++
++static struct attribute_group queue_attr_group = {
++ .attrs = queue_attrs,
++ .is_visible = queue_attr_visible,
++};
++
++
+ #define to_queue(atr) container_of((atr), struct queue_sysfs_entry, attr)
+
+ static ssize_t
+@@ -890,7 +909,6 @@ static const struct sysfs_ops queue_sysfs_ops = {
+
+ struct kobj_type blk_queue_ktype = {
+ .sysfs_ops = &queue_sysfs_ops,
+- .default_attrs = default_attrs,
+ .release = blk_release_queue,
+ };
+
+@@ -939,6 +957,14 @@ int blk_register_queue(struct gendisk *disk)
+ goto unlock;
+ }
+
++ ret = sysfs_create_group(&q->kobj, &queue_attr_group);
++ if (ret) {
++ blk_trace_remove_sysfs(dev);
++ kobject_del(&q->kobj);
++ kobject_put(&dev->kobj);
++ goto unlock;
++ }
++
+ if (q->mq_ops) {
+ __blk_mq_register_dev(dev, q);
+ blk_mq_debugfs_register(q);
+--
+2.16.4
+
diff --git a/patches.suse/s390-vfio-ccw-Do-not-attempt-to-free-no-op-test-and-.patch b/patches.suse/s390-vfio-ccw-Do-not-attempt-to-free-no-op-test-and-.patch
new file mode 100644
index 0000000000..093d59bed8
--- /dev/null
+++ b/patches.suse/s390-vfio-ccw-Do-not-attempt-to-free-no-op-test-and-.patch
@@ -0,0 +1,39 @@
+From: "Jason J. Herne" <jjherne@linux.vnet.ibm.com>
+Date: Tue, 7 Nov 2017 10:22:32 -0500
+Subject: s390: vfio-ccw: Do not attempt to free no-op, test and tic cda.
+Patch-mainline: v4.15-rc1
+Git-commit: 408358b50deaf59b07c82a7bff8c7e7cce031fae
+References: bsc#1154244
+
+Because we do not make use of the cda (channel data address) for test,
+no-op ccws no address translation takes place. This means cda could
+contain a guest address which we do not want to attempt to free. Let's
+check the command type and skip cda free when it is not needed.
+
+For a TIC ccw, ccw->cda points to either a ccw in an existing chain or
+it points to a whole new allocated chain. In either case the data will
+be freed when the owning chain is freed.
+
+Signed-off-by: Jason J. Herne <jjherne@linux.vnet.ibm.com>
+Reviewed-by: Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
+Reviewed-by: Pierre Morel <pmorel@linux.vnet.ibm.com>
+Message-Id: <1510068152-21988-1-git-send-email-jjherne@linux.vnet.ibm.com>
+Reviewed-by: Halil Pasic <pasic@linux.vnet.ibm.com>
+Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+Acked-by: Liang Yan <lyan@suse.com>
+---
+ drivers/s390/cio/vfio_ccw_cp.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/s390/cio/vfio_ccw_cp.c
++++ b/drivers/s390/cio/vfio_ccw_cp.c
+@@ -329,6 +329,8 @@ static void ccwchain_cda_free(struct ccw
+ {
+ struct ccw1 *ccw = chain->ch_ccw + idx;
+
++ if (ccw_is_test(ccw) || ccw_is_noop(ccw) || ccw_is_tic(ccw))
++ return;
+ if (!ccw->count)
+ return;
+
diff --git a/patches.suse/vfio-ccw-fix-bad-ptr-math-for-TIC-cda-translation.patch b/patches.suse/vfio-ccw-fix-bad-ptr-math-for-TIC-cda-translation.patch
new file mode 100644
index 0000000000..9b21b7a468
--- /dev/null
+++ b/patches.suse/vfio-ccw-fix-bad-ptr-math-for-TIC-cda-translation.patch
@@ -0,0 +1,48 @@
+From: "Jason J. Herne" <jjherne@linux.vnet.ibm.com>
+Date: Fri, 21 Jul 2017 03:14:36 +0200
+Subject: vfio: ccw: fix bad ptr math for TIC cda translation
+Patch-mainline: v4.13
+Git-commit: c389377c01bf2d6e2a178e86aef8535931bfbd75
+References: bsc#1154244
+
+When we are translating channel data addresses from guest to host
+address space for TIC instructions we are getting incorrect
+addresses because of a pointer arithmetic error.
+
+We currently calculate the offset of the TIC's cda from the start
+of the channel program chain (ccw->cda - ccw_head). We then add
+that to the address of the ccw chain in host memory (iter->ch_ccw).
+The problem is that iter->ch_ccw is a pointer to struct ccw1 so
+when we increment it we are actually incrementing by the size of
+struct ccw1 which is 8 bytes. The intent was to increment by
+n-bytes, not n*8.
+
+The fix: cast iter->ch_ccw to char* so it will be incremented by
+n*1.
+
+Reviewed-by: Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
+Signed-off-by: Jason J. Herne <jjherne@linux.vnet.ibm.com>
+Signed-off-by: Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
+Message-Id: <20170721011436.76112-1-bjsdjshi@linux.vnet.ibm.com>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+Acked-by: Liang Yan <lyan@suse.com>
+---
+ drivers/s390/cio/vfio_ccw_cp.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/s390/cio/vfio_ccw_cp.c b/drivers/s390/cio/vfio_ccw_cp.c
+index ba6ac83a6c25..5ccfdc80d0ec 100644
+--- a/drivers/s390/cio/vfio_ccw_cp.c
++++ b/drivers/s390/cio/vfio_ccw_cp.c
+@@ -481,7 +481,7 @@ static int ccwchain_fetch_tic(struct ccwchain *chain,
+ ccw_tail = ccw_head + (iter->ch_len - 1) * sizeof(struct ccw1);
+
+ if ((ccw_head <= ccw->cda) && (ccw->cda <= ccw_tail)) {
+- ccw->cda = (__u32) (addr_t) (iter->ch_ccw +
++ ccw->cda = (__u32) (addr_t) (((char *)iter->ch_ccw) +
+ (ccw->cda - ccw_head));
+ return 0;
+ }
+--
+2.23.0
+
diff --git a/series.conf b/series.conf
index 7173a8fbea..4fff355395 100644
--- a/series.conf
+++ b/series.conf
@@ -6247,6 +6247,7 @@
patches.suse/xen-blkback-stop-blkback-thread-of-every-queue-in-xe.patch
patches.suse/nvme-rdma-default-MR-page-size-to-4k.patch
patches.suse/nvme-pci-use-dma-memory-for-the-host-memory-buffer-d.patch
+ patches.suse/vfio-ccw-fix-bad-ptr-math-for-TIC-cda-translation.patch
patches.suse/ALSA-pcm-Fix-power-lock-unbalance-via-OSS-emulation.patch
patches.suse/esp-Fix-memleaks-on-error-paths.patch
patches.suse/esp-Fix-error-handling-on-layer-2-xmit.patch
@@ -11767,6 +11768,7 @@
patches.suse/s390-pci-do-not-require-ais-facility.patch
patches.suse/s390-archrandom-reconsider-s390-arch-random-implementation.patch
patches.suse/s390-sles15sp1-00-03-02-zcrypt-Rework-struct-ap_qact_ap_info.patch
+ patches.suse/s390-vfio-ccw-Do-not-attempt-to-free-no-op-test-and-.patch
patches.suse/s390-bpf-take-advantage-of-stack_depth-tracking.patch
patches.suse/s390-sles15-02-02-te-ctl.patch
patches.suse/s390-sles15-01-11-s390-noexec-execute-kexec-datamover-without-DAT.patch
@@ -44579,6 +44581,7 @@
patches.suse/ext4-force-inode-writes-when-nfsd-calls-commit_metad.patch
patches.suse/ext4-check-for-shutdown-and-r-o-file-system-in-ext4_.patch
patches.suse/dasd-remove-dead-code.patch
+ patches.suse/block-add-io-timeout-to-sysfs.patch
patches.suse/nvme-consolidate-memset-calls-in-the-nvme_setup_cmd-.patch
patches.suse/nvme-add-a-numa_node-field-to-struct-nvme_ctrl.patch
patches.suse/nvme-introduce-ctrl-attributes-enumeration.patch
@@ -47594,6 +47597,7 @@
patches.suse/Revert-ide-unexport-DISK_EVENT_MEDIA_CHANGE-for-i.patch
patches.suse/Revert-block-unexport-DISK_EVENT_MEDIA_CHANGE-for.patch
patches.suse/block-check_events-don-t-bother-with-events-if-un.patch
+ patches.suse/block-don-t-show-io_timeout-if-driver-has-no-timeout.patch
patches.suse/block-fix-use-after-free-on-gendisk.patch
patches.suse/md-raid-raid5-preserve-the-writeback-action-after-th.patch
patches.suse/0001-bcache-fix-crashes-stopping-bcache-device-before-rea.patch
@@ -49870,6 +49874,9 @@
patches.suse/0005-MODSIGN-Allow-the-db-UEFI-variable-to-be-suppressed.patch
patches.suse/0006-modsign-Use-secondary-trust-keyring-for-module-signi.patch
+ # mkp/scsi fixes
+ patches.suse/0001-lpfc-remove-left-over-BUILD_NVME-defines.patch
+
# out-of-tree patches
patches.suse/firmware-arm_sdei-fix-wrong-of_node_put-in-init-function.patch
patches.suse/net-mvpp2-fix-condition-for-setting-up-link-interrup.patch
@@ -49911,6 +49918,7 @@
patches.suse/powerpc-fadump-when-fadump-is-supported-register-the.patch
patches.suse/powerpc-papr_scm-Fix-an-off-by-one-check-in-papr_scm_meta_-get-set.patch
patches.suse/0001-b2c2-flexcop-usb-add-sanity-checking.patch
+ patches.suse/Btrfs-check-for-the-full-sync-flag-while-holding-the.patch
########################################################
# end of sorted patches