mbox series

[xenial:linux-azure,00/15] Bug #1848739 - [linux-azure] Patch to prevent possible data corruption

Message ID 20191127201820.32174-1-marcelo.cerri@canonical.com
Headers show
Series Bug #1848739 - [linux-azure] Patch to prevent possible data corruption | expand

Message

Marcelo Henrique Cerri Nov. 27, 2019, 8:18 p.m. UTC
Fix requested by msft as bug description.

All patches where picked from upstream with small backported changes.

Bart Van Assche (1):
  blk-mq: Rename blk_mq_request_direct_issue() into
    blk_mq_request_issue_directly()

Jens Axboe (4):
  blk-mq: move hctx lock/unlock into a helper
  blk-mq: don't queue more if we get a busy return
  blk-mq: fix corruption with direct issue
  blk-mq: punt failed direct issue to dispatch list

Mike Snitzer (2):
  blk-mq: factor out a few helpers from __blk_mq_try_issue_directly
  blk-mq-sched: remove unused 'can_block' arg from
    blk_mq_sched_insert_request

Ming Lei (7):
  blk-mq: quiesce queue during switching io sched and updating
    nr_requests
  blk-mq: improve DM's blk-mq IO merging via blk_insert_cloned_request
    feedback
  blk-mq: don't dispatch request in blk_mq_request_direct_issue if queue
    is busy
  blk-mq: introduce BLK_STS_DEV_RESOURCE
  blk-mq: dequeue request one by one from sw queue if hctx is busy
  blk-mq: issue directly if hw queue isn't busy in case of 'none'
  blk-mq: fail the request in case issue failure

Yufen Yu (1):
  dm mpath: fix missing call of path selector type->end_io

 block/blk-core.c             |   4 +-
 block/blk-exec.c             |   2 +-
 block/blk-mq-debugfs.c       |   9 ++
 block/blk-mq-sched.c         |  26 ++--
 block/blk-mq-sched.h         |   2 +-
 block/blk-mq.c               | 258 +++++++++++++++++++++++++++--------
 block/blk-mq.h               |   5 +
 block/elevator.c             |   2 +
 drivers/block/null_blk.c     |   2 +-
 drivers/block/virtio_blk.c   |   2 +-
 drivers/block/xen-blkfront.c |   2 +-
 drivers/md/dm-rq.c           |  20 ++-
 drivers/nvme/host/fc.c       |  12 +-
 drivers/scsi/scsi_lib.c      |   6 +-
 include/linux/blk-mq.h       |   3 +-
 include/linux/blk_types.h    |  18 +++
 16 files changed, 281 insertions(+), 92 deletions(-)

Comments

Stefan Bader Nov. 29, 2019, 9:11 a.m. UTC | #1
On 27.11.19 21:18, Marcelo Henrique Cerri wrote:
> Fix requested by msft as bug description.
> 
> All patches where picked from upstream with small backported changes.
> 
> Bart Van Assche (1):
>   blk-mq: Rename blk_mq_request_direct_issue() into
>     blk_mq_request_issue_directly()
> 
> Jens Axboe (4):
>   blk-mq: move hctx lock/unlock into a helper
>   blk-mq: don't queue more if we get a busy return
>   blk-mq: fix corruption with direct issue
>   blk-mq: punt failed direct issue to dispatch list
> 
> Mike Snitzer (2):
>   blk-mq: factor out a few helpers from __blk_mq_try_issue_directly
>   blk-mq-sched: remove unused 'can_block' arg from
>     blk_mq_sched_insert_request
> 
> Ming Lei (7):
>   blk-mq: quiesce queue during switching io sched and updating
>     nr_requests
>   blk-mq: improve DM's blk-mq IO merging via blk_insert_cloned_request
>     feedback
>   blk-mq: don't dispatch request in blk_mq_request_direct_issue if queue
>     is busy
>   blk-mq: introduce BLK_STS_DEV_RESOURCE
>   blk-mq: dequeue request one by one from sw queue if hctx is busy
>   blk-mq: issue directly if hw queue isn't busy in case of 'none'
>   blk-mq: fail the request in case issue failure
> 
> Yufen Yu (1):
>   dm mpath: fix missing call of path selector type->end_io
> 
>  block/blk-core.c             |   4 +-
>  block/blk-exec.c             |   2 +-
>  block/blk-mq-debugfs.c       |   9 ++
>  block/blk-mq-sched.c         |  26 ++--
>  block/blk-mq-sched.h         |   2 +-
>  block/blk-mq.c               | 258 +++++++++++++++++++++++++++--------
>  block/blk-mq.h               |   5 +
>  block/elevator.c             |   2 +
>  drivers/block/null_blk.c     |   2 +-
>  drivers/block/virtio_blk.c   |   2 +-
>  drivers/block/xen-blkfront.c |   2 +-
>  drivers/md/dm-rq.c           |  20 ++-
>  drivers/nvme/host/fc.c       |  12 +-
>  drivers/scsi/scsi_lib.c      |   6 +-
>  include/linux/blk-mq.h       |   3 +-
>  include/linux/blk_types.h    |  18 +++
>  16 files changed, 281 insertions(+), 92 deletions(-)
> 
whateva

Acked-by: Stefan Bader <stefan.bader@canonical.com>
Sultan Alsawaf Nov. 29, 2019, 5:28 p.m. UTC | #2
On Wed, Nov 27, 2019 at 05:18:05PM -0300, Marcelo Henrique Cerri wrote:
> Fix requested by msft as bug description.
> 
> All patches where picked from upstream with small backported changes.
> 
> Bart Van Assche (1):
>   blk-mq: Rename blk_mq_request_direct_issue() into
>     blk_mq_request_issue_directly()
> 
> Jens Axboe (4):
>   blk-mq: move hctx lock/unlock into a helper
>   blk-mq: don't queue more if we get a busy return
>   blk-mq: fix corruption with direct issue
>   blk-mq: punt failed direct issue to dispatch list
> 
> Mike Snitzer (2):
>   blk-mq: factor out a few helpers from __blk_mq_try_issue_directly
>   blk-mq-sched: remove unused 'can_block' arg from
>     blk_mq_sched_insert_request
> 
> Ming Lei (7):
>   blk-mq: quiesce queue during switching io sched and updating
>     nr_requests
>   blk-mq: improve DM's blk-mq IO merging via blk_insert_cloned_request
>     feedback
>   blk-mq: don't dispatch request in blk_mq_request_direct_issue if queue
>     is busy
>   blk-mq: introduce BLK_STS_DEV_RESOURCE
>   blk-mq: dequeue request one by one from sw queue if hctx is busy
>   blk-mq: issue directly if hw queue isn't busy in case of 'none'
>   blk-mq: fail the request in case issue failure
> 
> Yufen Yu (1):
>   dm mpath: fix missing call of path selector type->end_io
> 
>  block/blk-core.c             |   4 +-
>  block/blk-exec.c             |   2 +-
>  block/blk-mq-debugfs.c       |   9 ++
>  block/blk-mq-sched.c         |  26 ++--
>  block/blk-mq-sched.h         |   2 +-
>  block/blk-mq.c               | 258 +++++++++++++++++++++++++++--------
>  block/blk-mq.h               |   5 +
>  block/elevator.c             |   2 +
>  drivers/block/null_blk.c     |   2 +-
>  drivers/block/virtio_blk.c   |   2 +-
>  drivers/block/xen-blkfront.c |   2 +-
>  drivers/md/dm-rq.c           |  20 ++-
>  drivers/nvme/host/fc.c       |  12 +-
>  drivers/scsi/scsi_lib.c      |   6 +-
>  include/linux/blk-mq.h       |   3 +-
>  include/linux/blk_types.h    |  18 +++
>  16 files changed, 281 insertions(+), 92 deletions(-)
> 
> -- 
> 2.20.1
> 
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team

That's a lotta changes...

Acked-by: Sultan Alsawaf <sultan.alsawaf@canonical.com>
Khalid Elmously Dec. 2, 2019, 4:27 a.m. UTC | #3
Patch #12 didn't make it to my inbox for some reason. I got the diff from the online archive and manually applied it.

Please consider using a pull requests for larger patchsets like this as it makes things a bit easier.



On 2019-11-27 17:18:05 , Marcelo Henrique Cerri wrote:
> Fix requested by msft as bug description.
> 
> All patches where picked from upstream with small backported changes.
> 
> Bart Van Assche (1):
>   blk-mq: Rename blk_mq_request_direct_issue() into
>     blk_mq_request_issue_directly()
> 
> Jens Axboe (4):
>   blk-mq: move hctx lock/unlock into a helper
>   blk-mq: don't queue more if we get a busy return
>   blk-mq: fix corruption with direct issue
>   blk-mq: punt failed direct issue to dispatch list
> 
> Mike Snitzer (2):
>   blk-mq: factor out a few helpers from __blk_mq_try_issue_directly
>   blk-mq-sched: remove unused 'can_block' arg from
>     blk_mq_sched_insert_request
> 
> Ming Lei (7):
>   blk-mq: quiesce queue during switching io sched and updating
>     nr_requests
>   blk-mq: improve DM's blk-mq IO merging via blk_insert_cloned_request
>     feedback
>   blk-mq: don't dispatch request in blk_mq_request_direct_issue if queue
>     is busy
>   blk-mq: introduce BLK_STS_DEV_RESOURCE
>   blk-mq: dequeue request one by one from sw queue if hctx is busy
>   blk-mq: issue directly if hw queue isn't busy in case of 'none'
>   blk-mq: fail the request in case issue failure
> 
> Yufen Yu (1):
>   dm mpath: fix missing call of path selector type->end_io
> 
>  block/blk-core.c             |   4 +-
>  block/blk-exec.c             |   2 +-
>  block/blk-mq-debugfs.c       |   9 ++
>  block/blk-mq-sched.c         |  26 ++--
>  block/blk-mq-sched.h         |   2 +-
>  block/blk-mq.c               | 258 +++++++++++++++++++++++++++--------
>  block/blk-mq.h               |   5 +
>  block/elevator.c             |   2 +
>  drivers/block/null_blk.c     |   2 +-
>  drivers/block/virtio_blk.c   |   2 +-
>  drivers/block/xen-blkfront.c |   2 +-
>  drivers/md/dm-rq.c           |  20 ++-
>  drivers/nvme/host/fc.c       |  12 +-
>  drivers/scsi/scsi_lib.c      |   6 +-
>  include/linux/blk-mq.h       |   3 +-
>  include/linux/blk_types.h    |  18 +++
>  16 files changed, 281 insertions(+), 92 deletions(-)
> 
> -- 
> 2.20.1
> 
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team