linux-block.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [GIT PULL] Block changes for 5.4
@ 2019-09-16 14:52 Jens Axboe
  2019-09-18  0:18 ` Linus Torvalds
  2019-09-18  0:25 ` pr-tracker-bot
  0 siblings, 2 replies; 5+ messages in thread
From: Jens Axboe @ 2019-09-16 14:52 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-block

Hi Linus,

Here are the main 5.4 changes for block for this series. This pull
request contains:

- Two NVMe pull requests:
   - ana log parse fix from Anton
   - nvme quirks support for Apple devices from Ben
   - fix missing bio completion tracing for multipath stack devices from
     Hannes and Mikhail
   - IP TOS settings for nvme rdma and tcp transports from Israel
   - rq_dma_dir cleanups from Israel
   - tracing for Get LBA Status command from Minwoo
   - Some nvme-tcp cleanups from Minwoo, Potnuri and Myself
   - Some consolidation between the fabrics transports for handling the CAP
     register
   - reset race with ns scanning fix for fabrics (move fabrics commands to
     a dedicated request queue with a different lifetime from the admin
     request queue)."
   - controller reset and namespace scan races fixes
   - nvme discovery log change uevent support
   - naming improvements from Keith
   - multiple discovery controllers reject fix from James
   - some regular cleanups from various people

- Series fixing (and re-fixing) null_blk debug printing and nr_devices
  checks (André)

- A few pull requests from Song, with fixes from Andy, Guoqing,
  Guilherme, Neil, Nigel, and Yufen.

- REQ_OP_ZONE_RESET_ALL support (Chaitanya)

- Bio merge handling unification (Christoph)

- Pick default elevator correctly for devices with special needs
  (Damien)

- Block stats fixes (Hou)

- Timeout and support devices nbd fixes (Mike)

- Series fixing races around elevator switching and device add/remove
  (Ming)

- sed-opal cleanups (Revanth)

- Per device weight support for BFQ (Fam)

- Support for blk-iocost, a new model that can properly account cost of
  IO workloads. (Tejun)

- blk-cgroup writeback fixes (Tejun)

- paride queue init fixes (zhengbin)

- blk_set_runtime_active() cleanup (Stanley)

- Block segment mapping optimizations (Bart)

- lightnvm fixes (Hans/Minwoo/YueHaibing)

- Various little fixes and cleanups

Note that you'll get a simple merge conflict drivers/nvme/host/nvme.h
due to a quirk fix that was merged in mainline after for-5.4/block was
kicked off. It's trivial to resolve, you just have to renumber a few
defines around that conflict.

Please pull!


  git://git.kernel.dk/linux-block.git tags/for-5.4/block-2019-09-16


----------------------------------------------------------------
Alessio Balsini (1):
      loop: Add LOOP_SET_DIRECT_IO to compat ioctl

Amit (1):
      nvmet: fix a wrong error status returned in error log page

André Almeida (6):
      docs: block: null_blk: enhance document style
      null_blk: fix module name at log message
      null_blk: validate the number of devices
      null_blk: do not fail the module load with zero devices
      null_blk: match the type of parameter nr_devices
      null_blk: format pr_* logs with pr_fmt

Andy Shevchenko (1):
      md: Convert to use int_pow()

Anton Eidelman (1):
      nvme-multipath: fix ana log nsid lookup when nsid is not found

Bart Van Assche (8):
      block: Declare several function pointer arguments 'const'
      block: Document the bio splitting functions
      block: Simplify bvec_split_segs()
      block: Simplify blk_bio_segment_split()
      block: Improve physical block alignment of split bios
      block: Fix spelling in the header above blkg_lookup()
      block: Fix a comment in blk_cleanup_queue()
      block: Remove blk_mq_register_dev()

Benjamin Herrenschmidt (4):
      nvme-pci: Pass the queue to SQ_SIZE/CQ_SIZE macros
      nvme-pci: Add support for variable IO SQ element size
      nvme-pci: Add support for Apple 2018+ models
      nvme-pci: Support shared tags across queues for Apple 2018 controllers

Chaitanya Kulkarni (10):
      block: add req op to reset all zones and flag
      blk-zoned: implement REQ_OP_ZONE_RESET_ALL
      scsi: implement REQ_OP_ZONE_RESET_ALL
      null_blk: implement REQ_OP_ZONE_RESET_ALL
      null_blk: move duplicate code to callers
      null_blk: create a helper for throttling
      null_blk: create a helper for badblocks
      null_blk: create a helper for mem-backed ops
      null_blk: create a helper for zoned devices
      null_blk: create a helper for req completion

Christoph Hellwig (3):
      block: improve the gap check in __bio_add_pc_page
      block: create a bio_try_merge_pc_page helper
      block: move same page handling from __bio_add_pc_page to the callers

Colin Ian King (1):
      nvme: tcp: remove redundant assignment to variable ret

Damien Le Moal (8):
      block: mq-deadline: Fix queue restart handling
      block: Cleanup elevator_init_mq() use
      block: Change elevator_init_mq() to always succeed
      block: Introduce elevator features
      block: Improve default elevator selection
      block: Delay default elevator initialization
      block: Set ELEVATOR_F_ZBD_SEQ_WRITE for nullblk zoned disks
      sd: Set ELEVATOR_F_ZBD_SEQ_WRITE for ZBC disks

Dan Carpenter (1):
      bcache: Fix an error code in bch_dump_read()

Edmund Nadolski (1):
      nvme: include admin_q sync with nvme_sync_queues

Fam Zheng (3):
      bfq: Fix the missing barrier in __bfq_entity_update_weight_prio
      bfq: Extract bfq_group_set_weight from bfq_io_set_weight_legacy
      bfq: Add per-device weight

Guilherme G. Piccoli (1):
      md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone

Guoqing Jiang (7):
      md: allow last device to be forcibly removed from RAID1/RAID10.
      md: don't set In_sync if array is frozen
      md: don't call spare_active in md_reap_sync_thread if all member devices can't work
      md/raid5: use bio_end_sector to calculate last_sector
      raid5: don't set STRIPE_HANDLE to stripe which is in batch list
      raid5: remove STRIPE_OPS_REQ_PENDING
      raid5: use bio_end_sector in r5_next_bio

Hannes Reinecke (1):
      nvme: trace bio completion

Hans Holmberg (4):
      lightnvm: remove nvm_submit_io_sync_fn
      lightnvm: move metadata mapping to lower level driver
      lightnvm: pblk: use kvmalloc for metadata
      block: stop exporting bio_map_kern

Hou Tao (4):
      raid1: use an int as the return value of raise_barrier()
      raid1: factor out a common routine to handle the completion of sync write
      block: make rq sector size accessible for block stats
      block: also check RQF_STATS in blk_mq_need_time_stamp()

Israel Rukshin (9):
      nvme-fabrics: Add type of service (TOS) configuration
      nvme-rdma: Add TOS for rdma transport
      nvme-tcp: Use struct nvme_ctrl directly
      nvme-tcp: Add TOS for tcp transport
      nvmet-tcp: Add TOS for tcp transport
      nvme-pci: Tidy up nvme_unmap_data
      nvme-fc: Use rq_dma_dir macro
      nvme-rdma: Use rq_dma_dir macro
      nvme: Remove redundant assignment of cq vector

James Smart (2):
      nvme-fc: Fail transport errors with NVME_SC_HOST_PATH
      nvme: Treat discovery subsystems as unique subsystems

Jann Horn (1):
      floppy: fix usercopy direction

Jens Axboe (9):
      Merge branch 'md-next' of https://github.com/liu-song-6/linux into for-5.4/block
      lightnvm: remove unused 'geo' variable
      null_blk: fix inline misuse
      Merge branch 'md-next' of git://git.kernel.org/.../song/md into for-5.4/block
      Merge branch 'nvme-5.4' of git://git.infradead.org/nvme into for-5.4/block
      Merge branch 'md-next' of git://git.kernel.org/.../song/md into for-5.4/block
      block: fix elevator_get_by_features()
      Merge branch 'nvme-5.4' of git://git.infradead.org/nvme into for-5.4/block
      Merge branch 'md-next' of git://git.kernel.org/.../song/md into for-5.4/block

Johannes Weiner (1):
      block: annotate refault stalls from IO submission

Junxiao Bi (1):
      block: remove struct request_queue queue_head

Keith Busch (1):
      nvme: Assign subsys instance from first ctrl

Kent Overstreet (1):
      closures: fix a race on wakeup from closure_sync

Marcos Paulo de Souza (3):
      block: elevator.c: Remove now unused elevator= argument
      Documenation: switching-sched: Remove notes about elevator argument
      Documentation:kernel-per-CPU-kthreads.txt: Remove reference to elevator=

Markus Elfring (1):
      nvmet: Use PTR_ERR_OR_ZERO() in nvmet_init_discovery()

Mike Christie (5):
      nbd: add set cmd timeout helper
      nbd: add function to convert blk req op to nbd cmd
      nbd: add missing config put
      nbd: fix zero cmd timeout handling v2
      nbd: fix max number of supported devs

Ming Lei (13):
      blk-mq: introduce blk_mq_request_completed()
      blk-mq: introduce blk_mq_tagset_wait_completed_request()
      nvme: don't abort completed request in nvme_cancel_request
      nvme: wait until all completed request's complete fn is called
      blk-mq: remove blk_mq_complete_request_sync
      blk-mq: add callback of .cleanup_rq
      scsi: implement .cleanup_rq callback
      blk-mq: balance mapping between present CPUs and queues
      block: don't hold q->sysfs_lock in elevator_init_mq
      blk-mq: don't hold q->sysfs_lock in blk_mq_map_swqueue
      block: add helper for checking if queue is registered
      block: split .sysfs_lock into two locks
      block: fix race between switching elevator and removing queues

Minwoo Im (7):
      nvme: tcp: selects CRYPTO_CRC32C for nvme-tcp
      nvme: add Get LBA Status command opcode
      nvme: trace: support for Get LBA Status opcode parsed
      nvme: trace: parse Get LBA Status command in detail
      nvmet: trace: parse Get LBA Status command in detail
      lightnvm: introduce pr_fmt for the prefix nvm
      lightnvm: print error when target is not found

NeilBrown (4):
      md: only call set_in_sync() when it is expected to succeed.
      md: don't report active array_state until after revalidate_disk() completes.
      md/raid0: avoid RAID0 data corruption due to layout confusion.
      md: add feature flag MD_FEATURE_RAID0_LAYOUT

Nigel Croxon (2):
      raid5 improve too many read errors msg by adding limits
      raid5: don't increment read_errors on EILSEQ return

Pavel Begunkov (1):
      bfq: Fix bfq linkage error

Potnuri Bharat Teja (1):
      nvme-tcp: Use protocol specific operations while reading socket

Revanth Rajashekar (3):
      block: sed-opal: Add/remove spaces
      block: sed-opal: Remove always false conditional statement
      block: sed-opal: Removed duplicate OPAL_METHOD_LENGTH definition

Sagi Grimberg (19):
      nvme-tcp: cleanup nvme_tcp_recv_pdu
      nvme: have nvme_init_identify set ctrl->cap
      nvme-pci: set ctrl sqsize to the device q_depth
      nvme: move sqsize setting to the core
      nvme: don't pass cap to nvme_disable_ctrl
      nvme-tcp: support simple polling
      nvmet-tcp: fix possible NULL deref
      nvmet-tcp: fix possible memory leak
      nvme: make fabrics command run on a separate request queue
      nvme: fail cancelled commands with NVME_SC_HOST_PATH_ERROR
      nvme-tcp: fail command with NVME_SC_HOST_PATH_ERROR send failed
      nvme: pass status to nvme_error_status
      nvme: make nvme_identify_ns propagate errors back
      nvme: make nvme_report_ns_ids propagate error back
      nvme: fix ns removal hang when failing to revalidate due to a transient error
      nvme-fabrics: allow discovery subsystems accept a kato
      nvme: enable aen regardless of the presence of I/O queues
      nvme: add uevent variables for controller devices
      nvme: send discovery log page change events to userspace

Shile Zhang (1):
      bcache: add cond_resched() in __bch_cache_cmp()

Stanley Chu (2):
      block: bypass blk_set_runtime_active for uninitialized q->dev
      scsi: core: remove dummy q->dev check

Stephen Rothwell (1):
      blkcg: blk-iocost: predeclare used structs

Tejun Heo (27):
      writeback, cgroup: Adjust WB_FRN_TIME_CUT_DIV to accelerate foreign inode switching
      writeback, cgroup: inode_switch_wbs() shouldn't give up on wb_switch_rwsem trylock fail
      writeback: Generalize and expose wb_completion
      bdi: Add bdi->id
      writeback: Separate out wb_get_lookup() from wb_get_create()
      writeback, memcg: Implement cgroup_writeback_by_id()
      writeback, memcg: Implement foreign dirty flushing
      blkcg: pass @q and @blkcg into blkcg_pol_alloc_pd_fn()
      blkcg: make ->cpd_init_fn() optional
      blkcg: separate blkcg_conf_get_disk() out of blkg_conf_prep()
      block/rq_qos: add rq_qos_merge()
      block/rq_qos: implement rq_qos_ops->queue_depth_changed()
      blkcg: s/RQ_QOS_CGROUP/RQ_QOS_LATENCY/
      blk-mq: add optional request->alloc_time_ns
      blkcg: implement blk-iocost
      blkcg: add tools/cgroup/iocost_monitor.py
      blkcg: add tools/cgroup/iocost_coef_gen.py
      blkcg: fix missing free on error path of blk_iocost_init()
      blkcg: add missing NULL check in ioc_cpd_alloc()
      writeback: add tracepoints for cgroup foreign writebacks
      writeback: don't access page->mapping directly in track_foreign_dirty TP
      blk-iocost: Fix incorrect operation order during iocg free
      blk-iocost: Account force-charged overage in absolute vtime
      blk-iocost: Don't let merges push vtime into the future
      iocost_monitor: Always use strings for json values
      iocost_monitor: Report more info with higher accuracy
      iocost_monitor: Report debt

Tom Wu (1):
      nvmet: fix data units read and written counters in SMART log

Xiao Ni (1):
      md/raid6: Set R5_ReadError when there is read failure on parity disk

YueHaibing (1):
      lightnvm: remove set but not used variables 'data_len' and 'rq_len'

Yufen Yu (3):
      md/raid1: end bio when the device faulty
      md/raid10: end bio when the device faulty
      md/raid1: fail run raid1 array when active disk less than one

Zhou Wang (1):
      lib: scatterlist: Fix to support no mapped sg

zhengbin (4):
      blk-mq: Fix memory leak in blk_mq_init_allocated_queue error handling
      paride/pf: need to set queue to NULL before put_disk
      paride/pcd: need to set queue to NULL before put_disk
      paride/pcd: need to check if cd->disk is null in pcd_detect

 Documentation/admin-guide/cgroup-v2.rst            |   97 +
 Documentation/admin-guide/kernel-parameters.txt    |    6 -
 .../admin-guide/kernel-per-CPU-kthreads.rst        |    8 +-
 Documentation/block/null_blk.rst                   |   33 +-
 Documentation/block/switching-sched.rst            |    4 -
 block/Kconfig                                      |   13 +
 block/Makefile                                     |    1 +
 block/bfq-cgroup.c                                 |  156 +-
 block/bfq-iosched.h                                |    3 +
 block/bfq-wf2q.c                                   |    2 +
 block/bio.c                                        |   60 +-
 block/blk-cgroup.c                                 |   73 +-
 block/blk-core.c                                   |   37 +-
 block/blk-iocost.c                                 | 2457 ++++++++++++++++++++
 block/blk-iolatency.c                              |    8 +-
 block/blk-merge.c                                  |  151 +-
 block/blk-mq-cpumap.c                              |   29 +-
 block/blk-mq-sysfs.c                               |   23 +-
 block/blk-mq-tag.c                                 |   32 +
 block/blk-mq.c                                     |   69 +-
 block/blk-pm.c                                     |   12 +-
 block/blk-rq-qos.c                                 |   18 +
 block/blk-rq-qos.h                                 |   28 +-
 block/blk-settings.c                               |   18 +-
 block/blk-sysfs.c                                  |   50 +-
 block/blk-throttle.c                               |    9 +-
 block/blk-wbt.c                                    |   20 +-
 block/blk-wbt.h                                    |    4 -
 block/blk-zoned.c                                  |   39 +
 block/blk.h                                        |    4 +-
 block/elevator.c                                   |  217 +-
 block/genhd.c                                      |    9 +
 block/mq-deadline.c                                |   20 +-
 block/opal_proto.h                                 |    5 +-
 block/sed-opal.c                                   |   49 +-
 drivers/block/floppy.c                             |    4 +-
 drivers/block/loop.c                               |    1 +
 drivers/block/nbd.c                                |  127 +-
 drivers/block/null_blk.h                           |   18 +-
 drivers/block/null_blk_main.c                      |  183 +-
 drivers/block/null_blk_zoned.c                     |   59 +-
 drivers/block/paride/pcd.c                         |   12 +-
 drivers/block/paride/pf.c                          |    2 +-
 drivers/lightnvm/core.c                            |   97 +-
 drivers/lightnvm/pblk-core.c                       |  116 +-
 drivers/lightnvm/pblk-gc.c                         |   19 +-
 drivers/lightnvm/pblk-init.c                       |   38 +-
 drivers/lightnvm/pblk-read.c                       |   26 +-
 drivers/lightnvm/pblk-recovery.c                   |   42 +-
 drivers/lightnvm/pblk-write.c                      |   20 +-
 drivers/lightnvm/pblk.h                            |   31 +-
 drivers/md/bcache/closure.c                        |   10 +-
 drivers/md/bcache/debug.c                          |    5 +-
 drivers/md/bcache/sysfs.c                          |    1 +
 drivers/md/dm-rq.c                                 |    3 +-
 drivers/md/md-linear.c                             |    5 +
 drivers/md/md.c                                    |   96 +-
 drivers/md/md.h                                    |   20 +
 drivers/md/raid0.c                                 |   41 +-
 drivers/md/raid0.h                                 |   14 +
 drivers/md/raid1.c                                 |   89 +-
 drivers/md/raid10.c                                |   32 +-
 drivers/md/raid5.c                                 |   27 +-
 drivers/md/raid5.h                                 |    5 +-
 drivers/nvme/host/Kconfig                          |    1 +
 drivers/nvme/host/core.c                           |  201 +-
 drivers/nvme/host/fabrics.c                        |   38 +-
 drivers/nvme/host/fabrics.h                        |    3 +
 drivers/nvme/host/fc.c                             |   73 +-
 drivers/nvme/host/lightnvm.c                       |   45 +-
 drivers/nvme/host/multipath.c                      |    8 +-
 drivers/nvme/host/nvme.h                           |   36 +-
 drivers/nvme/host/pci.c                            |  102 +-
 drivers/nvme/host/rdma.c                           |   61 +-
 drivers/nvme/host/tcp.c                            |  144 +-
 drivers/nvme/host/trace.c                          |   18 +
 drivers/nvme/target/admin-cmd.c                    |   22 +-
 drivers/nvme/target/discovery.c                    |    4 +-
 drivers/nvme/target/loop.c                         |   30 +-
 drivers/nvme/target/tcp.c                          |   24 +-
 drivers/nvme/target/trace.c                        |   18 +
 drivers/scsi/scsi_lib.c                            |   13 +
 drivers/scsi/scsi_pm.c                             |    3 +-
 drivers/scsi/sd.c                                  |    5 +-
 drivers/scsi/sd.h                                  |    5 +-
 drivers/scsi/sd_zbc.c                              |   12 +-
 fs/fs-writeback.c                                  |  174 +-
 include/linux/backing-dev-defs.h                   |   23 +
 include/linux/backing-dev.h                        |    5 +
 include/linux/blk-cgroup.h                         |    6 +-
 include/linux/blk-mq.h                             |   20 +-
 include/linux/blk_types.h                          |    6 +
 include/linux/blkdev.h                             |   73 +-
 include/linux/elevator.h                           |    8 +
 include/linux/lightnvm.h                           |    8 +-
 include/linux/memcontrol.h                         |   39 +
 include/linux/nvme.h                               |    5 +-
 include/linux/writeback.h                          |    2 +
 include/trace/events/iocost.h                      |  178 ++
 include/trace/events/writeback.h                   |  126 +
 include/uapi/linux/raid/md_p.h                     |    2 +
 lib/sg_split.c                                     |   12 +-
 mm/backing-dev.c                                   |  120 +-
 mm/memcontrol.c                                    |  139 ++
 mm/page-writeback.c                                |    4 +
 tools/cgroup/iocost_coef_gen.py                    |  178 ++
 tools/cgroup/iocost_monitor.py                     |  277 +++
 107 files changed, 5895 insertions(+), 1283 deletions(-)
 create mode 100644 block/blk-iocost.c
 create mode 100644 include/trace/events/iocost.h
 create mode 100644 tools/cgroup/iocost_coef_gen.py
 create mode 100644 tools/cgroup/iocost_monitor.py

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GIT PULL] Block changes for 5.4
  2019-09-16 14:52 [GIT PULL] Block changes for 5.4 Jens Axboe
@ 2019-09-18  0:18 ` Linus Torvalds
  2019-09-18  0:21   ` Linus Torvalds
  2019-09-18  2:01   ` Jens Axboe
  2019-09-18  0:25 ` pr-tracker-bot
  1 sibling, 2 replies; 5+ messages in thread
From: Linus Torvalds @ 2019-09-18  0:18 UTC (permalink / raw)
  To: Jens Axboe; +Cc: linux-block

On Mon, Sep 16, 2019 at 7:52 AM Jens Axboe <axboe@kernel.dk> wrote:
>
> - blk-cgroup writeback fixes (Tejun)

Well, that's a very short description of a pretty subtle series.

Honestly, I would much rather have seen this as three completely
separate pull requests:

 - the writeback and cgroup stuff

 - the core queuing changes

 - the nvme driver updates

 - the other driver updates

because right now this pull request is just a mess of completely
unrelated stuff that just shares a very weak common thread of "yeah,
it's related to block devices".

I've pulled this, but can you please just split driver stuff out from
core queue handling code that is largely independent of any particular
driver, and very much out from core VM writeback?

They really have almost nothing to do with each other, and I don't see
why you are randomly mixing these things up.

It makes it much harder to review the end result, and I think one
example of the weakness of this is the almost useless merge message
that didn't really talk much about these "fixes" (which is already not
really a proper description - those patches are really more like a
completely new way of doing certain cases of writeback, and much more
fundamental than just "some random fix that gets a single liner in
between other stuff").

                Linus

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GIT PULL] Block changes for 5.4
  2019-09-18  0:18 ` Linus Torvalds
@ 2019-09-18  0:21   ` Linus Torvalds
  2019-09-18  2:01   ` Jens Axboe
  1 sibling, 0 replies; 5+ messages in thread
From: Linus Torvalds @ 2019-09-18  0:21 UTC (permalink / raw)
  To: Jens Axboe; +Cc: linux-block

On Tue, Sep 17, 2019 at 5:18 PM Linus Torvalds
<torvalds@linux-foundation.org> wrote:
>
> Honestly, I would much rather have seen this as three completely
> separate pull requests:

There are two hard problems in computer science: cache invalidation,
naming things, and off-by-one errors.

I said "three" and then I listed four.

Math is hard, let's go shopping.

             Linus

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GIT PULL] Block changes for 5.4
  2019-09-16 14:52 [GIT PULL] Block changes for 5.4 Jens Axboe
  2019-09-18  0:18 ` Linus Torvalds
@ 2019-09-18  0:25 ` pr-tracker-bot
  1 sibling, 0 replies; 5+ messages in thread
From: pr-tracker-bot @ 2019-09-18  0:25 UTC (permalink / raw)
  To: Jens Axboe; +Cc: Linus Torvalds, linux-block

The pull request you sent on Mon, 16 Sep 2019 08:52:03 -0600:

> git://git.kernel.dk/linux-block.git tags/for-5.4/block-2019-09-16

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/7ad67ca5534ee7c958559c4ad610f05c4578e361

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GIT PULL] Block changes for 5.4
  2019-09-18  0:18 ` Linus Torvalds
  2019-09-18  0:21   ` Linus Torvalds
@ 2019-09-18  2:01   ` Jens Axboe
  1 sibling, 0 replies; 5+ messages in thread
From: Jens Axboe @ 2019-09-18  2:01 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-block

On 9/17/19 6:18 PM, Linus Torvalds wrote:
> On Mon, Sep 16, 2019 at 7:52 AM Jens Axboe <axboe@kernel.dk> wrote:
>>
>> - blk-cgroup writeback fixes (Tejun)
> 
> Well, that's a very short description of a pretty subtle series.
> 
> Honestly, I would much rather have seen this as three completely
> separate pull requests:
> 
>   - the writeback and cgroup stuff
> 
>   - the core queuing changes
> 
>   - the nvme driver updates
> 
>   - the other driver updates
> 
> because right now this pull request is just a mess of completely
> unrelated stuff that just shares a very weak common thread of "yeah,
> it's related to block devices".
> 
> I've pulled this, but can you please just split driver stuff out from
> core queue handling code that is largely independent of any particular
> driver, and very much out from core VM writeback?
> 
> They really have almost nothing to do with each other, and I don't see
> why you are randomly mixing these things up.
> 
> It makes it much harder to review the end result, and I think one
> example of the weakness of this is the almost useless merge message
> that didn't really talk much about these "fixes" (which is already not
> really a proper description - those patches are really more like a
> completely new way of doing certain cases of writeback, and much more
> fundamental than just "some random fix that gets a single liner in
> between other stuff").

Point taken, I have sometimes done writeback specific branches, I guess
they got mixed up this time since it Tejun also had blk-cgroup writeback
changes.

We also don't have a lot of driver vs core inter-mingled churn anymore,
which is great, so I can start doing driver branches again like.

Thanks for pulling, I'll organize things separately going forward.

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-09-18  2:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-16 14:52 [GIT PULL] Block changes for 5.4 Jens Axboe
2019-09-18  0:18 ` Linus Torvalds
2019-09-18  0:21   ` Linus Torvalds
2019-09-18  2:01   ` Jens Axboe
2019-09-18  0:25 ` pr-tracker-bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).