[SRU][Bionic][PATCH 0/4] Fixes for LP:1768431

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

[SRU][Bionic][PATCH 0/4] Fixes for LP:1768431

Joseph Salisbury-3
BugLink: http://bugs.launchpad.net/bugs/1768431

== SRU Justification ==
This SRU was requested by IBM.  It contains one SAUCE patch and three
commits from linux.next.

IBM requested that we revert a set of SAUCE patches from 18.04 and
replace them with patches from linux-next.  Based on review comments,
there has been minor changes from the original SAUCE patches and the
versions in linux-next.

The first SAUCE patch contains all the changes between the current version
of SAUCE patches for latest cxlflash patches in bionic and the latest
version accepted by the community. This only has the needed changes and  
makes it so we don't have to revert and re-apply a high number of patches.
In addition to the SAUCE patch, IBM requested the 3 additional new patches
from the linux-next tree.

== Fixes ==
UBUNTU: SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3
a3feb6ef50de ("scsi: cxlflash: Synchronize reset and remove ops")
9a597cd4c0ce ("scsi: cxlflash: Remove commmands from pending list on timeout)"
d2d354a606d5 ("scsi: cxlflash: Handle spurious interrupts")

== Regression Potential ==
Medium.  All the patches are specific to the cxlflash driver, but there
are four of them and one is a SAUCE patch.

== Test Case ==
A test kernel was built with these patches and tested by the original bug reporter.
The bug reporter states the test kernel resolved the bug.

Uma Krishnan (4):
  UBUNTU: SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3
  scsi: cxlflash: Synchronize reset and remove ops
  scsi: cxlflash: Remove commmands from pending list on timeout
  scsi: cxlflash: Handle spurious interrupts

 drivers/scsi/cxlflash/common.h  |  1 +
 drivers/scsi/cxlflash/main.c    | 31 ++++++++++++++++++++++++++++---
 drivers/scsi/cxlflash/ocxl_hw.c | 18 +++++++++++++-----
 drivers/scsi/cxlflash/ocxl_hw.h |  1 +
 4 files changed, 43 insertions(+), 8 deletions(-)

--
2.17.0


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

[SRU][Bionic][PATCH 1/4] UBUNTU: SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3

Joseph Salisbury-3
From: Uma Krishnan <[hidden email]>

BugLink: http://bugs.launchpad.net/bugs/1768431

This is a SAUCE commit specific to Ubuntu 18.04 (bionic) release.
After sending the OCXL feature patches (v2) to community, a request
was submitted to Canonical to pick them as SAUCE patches. There was
a small revision made to the v2 set and was submitted as v3 to the
community. This revision did not make it on time to be included in
bionic GA. To bring the bionic code upto speed with what is accepted
in the community I'm submitting this revision patch which contains
only the revision. That way, the entire series of 38 patches need
not be reverted and reapplied with the latest version.

Signed-off-by: Uma Krishnan <[hidden email]>
Signed-off-by: Joseph Salisbury <[hidden email]>
---
 drivers/scsi/cxlflash/ocxl_hw.c | 18 +++++++++++++-----
 drivers/scsi/cxlflash/ocxl_hw.h |  1 +
 2 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/drivers/scsi/cxlflash/ocxl_hw.c b/drivers/scsi/cxlflash/ocxl_hw.c
index 3c311f315d90..0a95b5f25380 100644
--- a/drivers/scsi/cxlflash/ocxl_hw.c
+++ b/drivers/scsi/cxlflash/ocxl_hw.c
@@ -776,10 +776,13 @@ static int ocxlflash_config_fn(struct pci_dev *pdev, struct ocxl_hw_afu *afu)
  goto out;
  }
 
- /* Only one AFU per function is supported by ocxlflash */
- if (fcfg->max_afu_index != 0)
- dev_warn(dev, "%s: Unexpected AFU index value %d\n",
- __func__, fcfg->max_afu_index);
+ /* Check if function has AFUs defined, only 1 per function supported */
+ if (fcfg->max_afu_index >= 0) {
+ afu->is_present = true;
+ if (fcfg->max_afu_index != 0)
+ dev_warn(dev, "%s: Unexpected AFU index value %d\n",
+ __func__, fcfg->max_afu_index);
+ }
 
  rc = ocxl_config_get_actag_info(pdev, &base, &enabled, &supported);
  if (unlikely(rc)) {
@@ -894,6 +897,10 @@ static int ocxlflash_config_afu(struct pci_dev *pdev, struct ocxl_hw_afu *afu)
  int pos;
  int rc = 0;
 
+ /* This HW AFU function does not have any AFUs defined */
+ if (!afu->is_present)
+ goto out;
+
  /* Read AFU config at index 0 */
  rc = ocxl_config_read_afu(pdev, fcfg, acfg, 0);
  if (unlikely(rc)) {
@@ -949,6 +956,7 @@ static void *ocxlflash_create_afu(struct pci_dev *pdev)
 
  afu->pdev = pdev;
  afu->dev = dev;
+ idr_init(&afu->idr);
 
  rc = ocxlflash_config_fn(pdev, afu);
  if (unlikely(rc)) {
@@ -972,7 +980,6 @@ static void *ocxlflash_create_afu(struct pci_dev *pdev)
  goto err3;
  }
 
- idr_init(&afu->idr);
  afu->ocxl_ctx = ctx;
 out:
  return afu;
@@ -981,6 +988,7 @@ static void *ocxlflash_create_afu(struct pci_dev *pdev)
 err2:
  ocxlflash_unconfig_fn(pdev, afu);
 err1:
+ idr_destroy(&afu->idr);
  kfree(afu);
  afu = NULL;
  goto out;
diff --git a/drivers/scsi/cxlflash/ocxl_hw.h b/drivers/scsi/cxlflash/ocxl_hw.h
index eb1c24afeae3..9270d35c4620 100644
--- a/drivers/scsi/cxlflash/ocxl_hw.h
+++ b/drivers/scsi/cxlflash/ocxl_hw.h
@@ -43,6 +43,7 @@ struct ocxl_hw_afu {
  void *link_token; /* Link token for the SPA */
  struct idr idr; /* IDR to manage contexts */
  int max_pasid; /* Maximum number of contexts */
+ bool is_present; /* Function has AFUs defined */
 };
 
 enum ocxlflash_ctx_state {
--
2.17.0


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

[SRU][Bionic][PATCH 2/4] scsi: cxlflash: Synchronize reset and remove ops

Joseph Salisbury-3
In reply to this post by Joseph Salisbury-3
From: Uma Krishnan <[hidden email]>

BugLink: http://bugs.launchpad.net/bugs/1768431

The following Oops can be encountered if a device removal or system shutdown
is initiated while an EEH recovery is in process:

[c000000ff2f479c0] c008000015256f18 cxlflash_pci_slot_reset+0xa0/0x100
                                      [cxlflash]
[c000000ff2f47a30] c00800000dae22e0 cxl_pci_slot_reset+0x168/0x290 [cxl]
[c000000ff2f47ae0] c00000000003ef1c eeh_report_reset+0xec/0x170
[c000000ff2f47b20] c00000000003d0b8 eeh_pe_dev_traverse+0x98/0x170
[c000000ff2f47bb0] c00000000003f80c eeh_handle_normal_event+0x56c/0x580
[c000000ff2f47c60] c00000000003fba4 eeh_handle_event+0x2a4/0x338
[c000000ff2f47d10] c0000000000400b8 eeh_event_handler+0x1f8/0x200
[c000000ff2f47dc0] c00000000013da48 kthread+0x1a8/0x1b0
[c000000ff2f47e30] c00000000000b528 ret_from_kernel_thread+0x5c/0xb4

The remove handler frees AFU memory while the EEH recovery is in progress,
leading to a race condition. This can result in a crash if the recovery thread
tries to access this memory.

To resolve this issue, the cxlflash remove handler will evaluate the device
state and yield to any active reset or probing threads.

Signed-off-by: Uma Krishnan <[hidden email]>
Acked-by: Matthew R. Ochs <[hidden email]>
Signed-off-by: Martin K. Petersen <[hidden email]>
(cherry picked from linux-next commit a3feb6ef50def7c91244d7bd15a3625b7b49b81f)
Signed-off-by: Joseph Salisbury <[hidden email]>
---
 drivers/scsi/cxlflash/main.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/scsi/cxlflash/main.c b/drivers/scsi/cxlflash/main.c
index 42a95b762bc0..dfe76485aab6 100644
--- a/drivers/scsi/cxlflash/main.c
+++ b/drivers/scsi/cxlflash/main.c
@@ -946,9 +946,9 @@ static void cxlflash_remove(struct pci_dev *pdev)
  return;
  }
 
- /* If a Task Management Function is active, wait for it to complete
- * before continuing with remove.
- */
+ /* Yield to running recovery threads before continuing with remove */
+ wait_event(cfg->reset_waitq, cfg->state != STATE_RESET &&
+     cfg->state != STATE_PROBING);
  spin_lock_irqsave(&cfg->tmf_slock, lock_flags);
  if (cfg->tmf_active)
  wait_event_interruptible_lock_irq(cfg->tmf_waitq,
--
2.17.0


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

[SRU][Bionic][PATCH 3/4] scsi: cxlflash: Remove commmands from pending list on timeout

Joseph Salisbury-3
In reply to this post by Joseph Salisbury-3
From: Uma Krishnan <[hidden email]>

BugLink: http://bugs.launchpad.net/bugs/1768431

The following Oops can occur if an internal command sent to the AFU does not
complete within the timeout:

[c000000ff101b810] c008000016020d94 term_mc+0xfc/0x1b0 [cxlflash]
[c000000ff101b8a0] c008000016020fb0 term_afu+0x168/0x280 [cxlflash]
[c000000ff101b930] c0080000160232ec cxlflash_pci_error_detected+0x184/0x230
                                       [cxlflash]
[c000000ff101b9e0] c00800000d95d468 cxl_vphb_error_detected+0x90/0x150[cxl]
[c000000ff101ba20] c00800000d95f27c cxl_pci_error_detected+0xa4/0x240 [cxl]
[c000000ff101bac0] c00000000003eaf8 eeh_report_error+0xd8/0x1b0
[c000000ff101bb20] c00000000003d0b8 eeh_pe_dev_traverse+0x98/0x170
[c000000ff101bbb0] c00000000003f438 eeh_handle_normal_event+0x198/0x580
[c000000ff101bc60] c00000000003fba4 eeh_handle_event+0x2a4/0x338
[c000000ff101bd10] c0000000000400b8 eeh_event_handler+0x1f8/0x200
[c000000ff101bdc0] c00000000013da48 kthread+0x1a8/0x1b0
[c000000ff101be30] c00000000000b528 ret_from_kernel_thread+0x5c/0xb4

When an internal command times out, the command buffer is freed while it is
still in the pending commands list of the context. This corrupts the list and
when the context is cleaned up, a crash is encountered.

To resolve this issue, when an AFU command or TMF command times out, the
command should be deleted from the hardware queue pending command list before
freeing the buffer.

Signed-off-by: Uma Krishnan <[hidden email]>
Acked-by: Matthew R. Ochs <[hidden email]>
Signed-off-by: Martin K. Petersen <[hidden email]>
(cherry picked from linux-next commit 9a597cd4c0cebd61657f7449cb8bcb681f464500)
Signed-off-by: Joseph Salisbury <[hidden email]>
---
 drivers/scsi/cxlflash/main.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/drivers/scsi/cxlflash/main.c b/drivers/scsi/cxlflash/main.c
index dfe76485aab6..c9203282d943 100644
--- a/drivers/scsi/cxlflash/main.c
+++ b/drivers/scsi/cxlflash/main.c
@@ -473,6 +473,7 @@ static int send_tmf(struct cxlflash_cfg *cfg, struct scsi_device *sdev,
  struct afu_cmd *cmd = NULL;
  struct device *dev = &cfg->dev->dev;
  struct hwq *hwq = get_hwq(afu, PRIMARY_HWQ);
+ bool needs_deletion = false;
  char *buf = NULL;
  ulong lock_flags;
  int rc = 0;
@@ -527,6 +528,7 @@ static int send_tmf(struct cxlflash_cfg *cfg, struct scsi_device *sdev,
  if (!to) {
  dev_err(dev, "%s: TMF timed out\n", __func__);
  rc = -ETIMEDOUT;
+ needs_deletion = true;
  } else if (cmd->cmd_aborted) {
  dev_err(dev, "%s: TMF aborted\n", __func__);
  rc = -EAGAIN;
@@ -537,6 +539,12 @@ static int send_tmf(struct cxlflash_cfg *cfg, struct scsi_device *sdev,
  }
  cfg->tmf_active = false;
  spin_unlock_irqrestore(&cfg->tmf_slock, lock_flags);
+
+ if (needs_deletion) {
+ spin_lock_irqsave(&hwq->hsq_slock, lock_flags);
+ list_del(&cmd->list);
+ spin_unlock_irqrestore(&hwq->hsq_slock, lock_flags);
+ }
 out:
  kfree(buf);
  return rc;
@@ -2284,6 +2292,7 @@ static int send_afu_cmd(struct afu *afu, struct sisl_ioarcb *rcb)
  struct device *dev = &cfg->dev->dev;
  struct afu_cmd *cmd = NULL;
  struct hwq *hwq = get_hwq(afu, PRIMARY_HWQ);
+ ulong lock_flags;
  char *buf = NULL;
  int rc = 0;
  int nretry = 0;
@@ -2329,6 +2338,11 @@ static int send_afu_cmd(struct afu *afu, struct sisl_ioarcb *rcb)
  case -ETIMEDOUT:
  rc = afu->context_reset(hwq);
  if (rc) {
+ /* Delete the command from pending_cmds list */
+ spin_lock_irqsave(&hwq->hsq_slock, lock_flags);
+ list_del(&cmd->list);
+ spin_unlock_irqrestore(&hwq->hsq_slock, lock_flags);
+
  cxlflash_schedule_async_reset(cfg);
  break;
  }
--
2.17.0


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

[SRU][Bionic][PATCH 4/4] scsi: cxlflash: Handle spurious interrupts

Joseph Salisbury-3
In reply to this post by Joseph Salisbury-3
From: Uma Krishnan <[hidden email]>

BugLink: http://bugs.launchpad.net/bugs/1768431

The following Oops can occur when there is heavy I/O traffic and the host is
reset by a tool such as sg_reset.

[c000200fff3fbc90] c00800001690117c process_cmd_doneq+0x104/0x500
                                       [cxlflash] (unreliable)
[c000200fff3fbd80] c008000016901648 cxlflash_rrq_irq+0xd0/0x150 [cxlflash]
[c000200fff3fbde0] c000000000193130 __handle_irq_event_percpu+0xa0/0x310
[c000200fff3fbea0] c0000000001933d8 handle_irq_event_percpu+0x38/0x90
[c000200fff3fbee0] c000000000193494 handle_irq_event+0x64/0xb0
[c000200fff3fbf10] c000000000198ea0 handle_fasteoi_irq+0xc0/0x230
[c000200fff3fbf40] c00000000019182c generic_handle_irq+0x4c/0x70
[c000200fff3fbf60] c00000000001794c __do_irq+0x7c/0x1c0
[c000200fff3fbf90] c00000000002a390 call_do_irq+0x14/0x24
[c000200e5828fab0] c000000000017b2c do_IRQ+0x9c/0x130
[c000200e5828fb00] c000000000009b04 h_virt_irq_common+0x114/0x120

When a context is reset, the pending commands are flushed and the AFU is
notified. Before the AFU handles this request there could be command
completion interrupts queued to PHB which are yet to be delivered to the
context. In this scenario, a context could receive an interrupt for a command
that has been flushed, leading to a possible crash when the memory for the
flushed command is accessed.

To resolve this problem, a boolean will indicate if the hardware queue is
ready to process interrupts or not. This can be evaluated in the interrupt
handler before proessing an interrupt.

Signed-off-by: Uma Krishnan <[hidden email]>
Acked-by: Matthew R. Ochs <[hidden email]>
Signed-off-by: Martin K. Petersen <[hidden email]>
(cherry picked from linux-next commit d2d354a606d5309fbfe81d5fca01122159e38c6e)
Signed-off-by: Joseph Salisbury <[hidden email]>
---
 drivers/scsi/cxlflash/common.h |  1 +
 drivers/scsi/cxlflash/main.c   | 11 +++++++++++
 2 files changed, 12 insertions(+)

diff --git a/drivers/scsi/cxlflash/common.h b/drivers/scsi/cxlflash/common.h
index b69fd32ecd0d..3556b1ded999 100644
--- a/drivers/scsi/cxlflash/common.h
+++ b/drivers/scsi/cxlflash/common.h
@@ -224,6 +224,7 @@ struct hwq {
  u64 *hrrq_end;
  u64 *hrrq_curr;
  bool toggle;
+ bool hrrq_online;
 
  s64 room;
 
diff --git a/drivers/scsi/cxlflash/main.c b/drivers/scsi/cxlflash/main.c
index c9203282d943..a24d7e6e51c1 100644
--- a/drivers/scsi/cxlflash/main.c
+++ b/drivers/scsi/cxlflash/main.c
@@ -801,6 +801,10 @@ static void term_mc(struct cxlflash_cfg *cfg, u32 index)
  WARN_ON(cfg->ops->release_context(hwq->ctx_cookie));
  hwq->ctx_cookie = NULL;
 
+ spin_lock_irqsave(&hwq->hrrq_slock, lock_flags);
+ hwq->hrrq_online = false;
+ spin_unlock_irqrestore(&hwq->hrrq_slock, lock_flags);
+
  spin_lock_irqsave(&hwq->hsq_slock, lock_flags);
  flush_pending_cmds(hwq);
  spin_unlock_irqrestore(&hwq->hsq_slock, lock_flags);
@@ -1475,6 +1479,12 @@ static irqreturn_t cxlflash_rrq_irq(int irq, void *data)
 
  spin_lock_irqsave(&hwq->hrrq_slock, hrrq_flags);
 
+ /* Silently drop spurious interrupts when queue is not online */
+ if (!hwq->hrrq_online) {
+ spin_unlock_irqrestore(&hwq->hrrq_slock, hrrq_flags);
+ return IRQ_HANDLED;
+ }
+
  if (afu_is_irqpoll_enabled(afu)) {
  irq_poll_sched(&hwq->irqpoll);
  spin_unlock_irqrestore(&hwq->hrrq_slock, hrrq_flags);
@@ -1781,6 +1791,7 @@ static int init_global(struct cxlflash_cfg *cfg)
 
  writeq_be((u64) hwq->hrrq_start, &hmap->rrq_start);
  writeq_be((u64) hwq->hrrq_end, &hmap->rrq_end);
+ hwq->hrrq_online = true;
 
  if (afu_is_sq_cmd_mode(afu)) {
  writeq_be((u64)hwq->hsq_start, &hmap->sq_start);
--
2.17.0


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

ACK: [SRU][Bionic][PATCH 0/4] Fixes for LP:1768431

Kleber Souza
In reply to this post by Joseph Salisbury-3
On 06/01/18 08:23, Joseph Salisbury wrote:

> BugLink: http://bugs.launchpad.net/bugs/1768431
>
> == SRU Justification ==
> This SRU was requested by IBM.  It contains one SAUCE patch and three
> commits from linux.next.
>
> IBM requested that we revert a set of SAUCE patches from 18.04 and
> replace them with patches from linux-next.  Based on review comments,
> there has been minor changes from the original SAUCE patches and the
> versions in linux-next.
>
> The first SAUCE patch contains all the changes between the current version
> of SAUCE patches for latest cxlflash patches in bionic and the latest
> version accepted by the community. This only has the needed changes and  
> makes it so we don't have to revert and re-apply a high number of patches.
> In addition to the SAUCE patch, IBM requested the 3 additional new patches
> from the linux-next tree.
>
> == Fixes ==
> UBUNTU: SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3
> a3feb6ef50de ("scsi: cxlflash: Synchronize reset and remove ops")
> 9a597cd4c0ce ("scsi: cxlflash: Remove commmands from pending list on timeout)"
> d2d354a606d5 ("scsi: cxlflash: Handle spurious interrupts")
>
> == Regression Potential ==
> Medium.  All the patches are specific to the cxlflash driver, but there
> are four of them and one is a SAUCE patch.
>
> == Test Case ==
> A test kernel was built with these patches and tested by the original bug reporter.
> The bug reporter states the test kernel resolved the bug.
>
> Uma Krishnan (4):
>   UBUNTU: SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3
>   scsi: cxlflash: Synchronize reset and remove ops
>   scsi: cxlflash: Remove commmands from pending list on timeout
>   scsi: cxlflash: Handle spurious interrupts
>
>  drivers/scsi/cxlflash/common.h  |  1 +
>  drivers/scsi/cxlflash/main.c    | 31 ++++++++++++++++++++++++++++---
>  drivers/scsi/cxlflash/ocxl_hw.c | 18 +++++++++++++-----
>  drivers/scsi/cxlflash/ocxl_hw.h |  1 +
>  4 files changed, 43 insertions(+), 8 deletions(-)
>

The changes look good, scope limited to the driver and tested by the vendor.

Acked-by: Kleber Sacilotto de Souza <[hidden email]>

--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

ACK: [SRU][Bionic][PATCH 0/4] Fixes for LP:1768431

Khalid Elmously
In reply to this post by Joseph Salisbury-3
On 2018-06-01 11:23:53 , Joseph Salisbury wrote:

> BugLink: http://bugs.launchpad.net/bugs/1768431
>
> == SRU Justification ==
> This SRU was requested by IBM.  It contains one SAUCE patch and three
> commits from linux.next.
>
> IBM requested that we revert a set of SAUCE patches from 18.04 and
> replace them with patches from linux-next.  Based on review comments,
> there has been minor changes from the original SAUCE patches and the
> versions in linux-next.
>
> The first SAUCE patch contains all the changes between the current version
> of SAUCE patches for latest cxlflash patches in bionic and the latest
> version accepted by the community. This only has the needed changes and  
> makes it so we don't have to revert and re-apply a high number of patches.
> In addition to the SAUCE patch, IBM requested the 3 additional new patches
> from the linux-next tree.
>
> == Fixes ==
> UBUNTU: SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3
> a3feb6ef50de ("scsi: cxlflash: Synchronize reset and remove ops")
> 9a597cd4c0ce ("scsi: cxlflash: Remove commmands from pending list on timeout)"
> d2d354a606d5 ("scsi: cxlflash: Handle spurious interrupts")
>
> == Regression Potential ==
> Medium.  All the patches are specific to the cxlflash driver, but there
> are four of them and one is a SAUCE patch.
>
> == Test Case ==
> A test kernel was built with these patches and tested by the original bug reporter.
> The bug reporter states the test kernel resolved the bug.
>
> Uma Krishnan (4):
>   UBUNTU: SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3
>   scsi: cxlflash: Synchronize reset and remove ops
>   scsi: cxlflash: Remove commmands from pending list on timeout
>   scsi: cxlflash: Handle spurious interrupts
>
>  drivers/scsi/cxlflash/common.h  |  1 +
>  drivers/scsi/cxlflash/main.c    | 31 ++++++++++++++++++++++++++++---
>  drivers/scsi/cxlflash/ocxl_hw.c | 18 +++++++++++++-----
>  drivers/scsi/cxlflash/ocxl_hw.h |  1 +
>  4 files changed, 43 insertions(+), 8 deletions(-)
>
Acked-by: Khalid Elmously <[hidden email]>

 

--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

APPLIED: [SRU][Bionic][PATCH 0/4] Fixes for LP:1768431

Khalid Elmously
In reply to this post by Joseph Salisbury-3
Applied to Bionic


On 2018-06-01 11:23:53 , Joseph Salisbury wrote:

> BugLink: http://bugs.launchpad.net/bugs/1768431
>
> == SRU Justification ==
> This SRU was requested by IBM.  It contains one SAUCE patch and three
> commits from linux.next.
>
> IBM requested that we revert a set of SAUCE patches from 18.04 and
> replace them with patches from linux-next.  Based on review comments,
> there has been minor changes from the original SAUCE patches and the
> versions in linux-next.
>
> The first SAUCE patch contains all the changes between the current version
> of SAUCE patches for latest cxlflash patches in bionic and the latest
> version accepted by the community. This only has the needed changes and  
> makes it so we don't have to revert and re-apply a high number of patches.
> In addition to the SAUCE patch, IBM requested the 3 additional new patches
> from the linux-next tree.
>
> == Fixes ==
> UBUNTU: SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3
> a3feb6ef50de ("scsi: cxlflash: Synchronize reset and remove ops")
> 9a597cd4c0ce ("scsi: cxlflash: Remove commmands from pending list on timeout)"
> d2d354a606d5 ("scsi: cxlflash: Handle spurious interrupts")
>
> == Regression Potential ==
> Medium.  All the patches are specific to the cxlflash driver, but there
> are four of them and one is a SAUCE patch.
>
> == Test Case ==
> A test kernel was built with these patches and tested by the original bug reporter.
> The bug reporter states the test kernel resolved the bug.
>
> Uma Krishnan (4):
>   UBUNTU: SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3
>   scsi: cxlflash: Synchronize reset and remove ops
>   scsi: cxlflash: Remove commmands from pending list on timeout
>   scsi: cxlflash: Handle spurious interrupts
>
>  drivers/scsi/cxlflash/common.h  |  1 +
>  drivers/scsi/cxlflash/main.c    | 31 ++++++++++++++++++++++++++++---
>  drivers/scsi/cxlflash/ocxl_hw.c | 18 +++++++++++++-----
>  drivers/scsi/cxlflash/ocxl_hw.h |  1 +
>  4 files changed, 43 insertions(+), 8 deletions(-)
>
> --
> 2.17.0
>
>
> --
> kernel-team mailing list
> [hidden email]
> https://lists.ubuntu.com/mailman/listinfo/kernel-team

--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

APPLIED[U]: [SRU][Bionic][PATCH 0/4] Fixes for LP:1768431

Thadeu Lima de Souza Cascardo-3
In reply to this post by Joseph Salisbury-3
Applied to unstable master branch.

Applied the SAUCE diff for now. It is likely this will be sorted out when we
rebase to 4.18.

Thanks.
Cascardo.

Applied-to: unstable/master

--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team