Re: [PATCH v3] bcache: fix writeback target calc on large devices

2018-01-05 Thread tang . junhui
From: Tang Junhui Hello Mike, I thought twice, and feel this patch is a little complex and still not very accurate for small backend devices. I think we can resolve it like this: uint64_t cache_dirty_target = div_u64(cache_sectors * dc->writeback_percent,

Re: [PATCH] mq-deadline: make it clear that __dd_dispatch_request() works on all hw queues

2018-01-05 Thread Omar Sandoval
On Fri, Jan 05, 2018 at 02:56:38PM -0700, Jens Axboe wrote: > Don't pass in the hardware queue to __dd_dispatch_request(), since it > leads the reader to believe that we are returning a request for that > specific hardware queue. That's not how mq-deadline works, the state > for determining which

[PATCH] mq-deadline: make it clear that __dd_dispatch_request() works on all hw queues

2018-01-05 Thread Jens Axboe
Don't pass in the hardware queue to __dd_dispatch_request(), since it leads the reader to believe that we are returning a request for that specific hardware queue. That's not how mq-deadline works, the state for determining which request to serve next is shared across all hardware queues for a

Re: [PATCH v3] bcache: fix writeback target calc on large devices

2018-01-05 Thread Michael Lyle
On 01/05/2018 01:17 PM, Michael Lyle wrote: > Bcache needs to scale the dirty data in the cache over the multiple > backing disks in order to calculate writeback rates for each. > The previous code did this by multiplying the target number of dirty > sectors by the backing device size, and

[PATCH v3] bcache: fix writeback target calc on large devices

2018-01-05 Thread Michael Lyle
Bcache needs to scale the dirty data in the cache over the multiple backing disks in order to calculate writeback rates for each. The previous code did this by multiplying the target number of dirty sectors by the backing device size, and expected it to fit into a uint64_t; this blows up on

Re: [GIT PULL 18/25] lightnvm: set target over-provision on create ioctl

2018-01-05 Thread Randy Dunlap
On 01/05/2018 11:56 AM, Javier Gonzalez wrote: >> On 5 Jan 2018, at 20.53, Matias Bjørling wrote: >> >> On 01/05/2018 08:52 PM, Javier Gonzalez wrote: On 5 Jan 2018, at 20.33, Randy Dunlap wrote: On 01/05/2018 05:16 AM, Matias Bjørling

Re: [GIT PULL 18/25] lightnvm: set target over-provision on create ioctl

2018-01-05 Thread Matias Bjørling
On 01/05/2018 08:52 PM, Javier Gonzalez wrote: On 5 Jan 2018, at 20.33, Randy Dunlap wrote: On 01/05/2018 05:16 AM, Matias Bjørling wrote: From: Javier González Allow to set the over-provision percentage on target creation. In case that the value

Re: [GIT PULL 18/25] lightnvm: set target over-provision on create ioctl

2018-01-05 Thread Javier Gonzalez
> On 5 Jan 2018, at 20.33, Randy Dunlap wrote: > > On 01/05/2018 05:16 AM, Matias Bjørling wrote: >> From: Javier González >> >> Allow to set the over-provision percentage on target creation. In case >> that the value is not provided, fall back to

Re: [PATCH v4 0/5] Introduce sgl_alloc() and sgl_free()

2018-01-05 Thread Jens Axboe
On 1/5/18 9:26 AM, Bart Van Assche wrote: > Hello Jens, > > As you know there are multiple drivers that both allocate a scatter/gather > list and populate that list with pages. This patch series moves the code for > allocating and freeing such scatterlists from several drivers into >

Re: [GIT PULL 18/25] lightnvm: set target over-provision on create ioctl

2018-01-05 Thread Randy Dunlap
On 01/05/2018 05:16 AM, Matias Bjørling wrote: > From: Javier González > > Allow to set the over-provision percentage on target creation. In case > that the value is not provided, fall back to the default value set by > the target. > > In pblk, set the default OP to 11% of

Re: [for-416 PATCH 1/2] bcache: Fix, improve efficiency of closure_sync()

2018-01-05 Thread Kent Overstreet
On Fri, Jan 05, 2018 at 09:15:41AM -0800, Michael Lyle wrote: > Jens & Kent, > > On 01/05/2018 08:05 AM, Jens Axboe wrote: > > On 12/30/17 4:09 PM, Michael Lyle wrote: > >> +void __closure_sync(struct closure *cl) > >> +{ > >> + struct closure_syncer s = { .task = current }; > >> > >> + cl->s

Re: [PATCH 09/12] nvme-pci: Use PCI p2pmem subsystem to manage the CMB

2018-01-05 Thread Logan Gunthorpe
On 05/01/18 12:01 PM, Keith Busch wrote: On Fri, Jan 05, 2018 at 11:19:28AM -0700, Logan Gunthorpe wrote: Although it is not explicitly stated anywhere, pci_alloc_p2pmem() should always be at least 4k aligned. This is because the gen_pool that implements it is created with PAGE_SHIFT for its

Re: [PATCH 09/12] nvme-pci: Use PCI p2pmem subsystem to manage the CMB

2018-01-05 Thread Keith Busch
On Fri, Jan 05, 2018 at 11:19:28AM -0700, Logan Gunthorpe wrote: > Although it is not explicitly stated anywhere, pci_alloc_p2pmem() should > always be at least 4k aligned. This is because the gen_pool that implements > it is created with PAGE_SHIFT for its min_alloc_order. Ah, I see that now.

Re: [GIT PULL 00/25] LightNVM updates for 4.16

2018-01-05 Thread Matias Bjørling
On 01/05/2018 04:50 PM, Jens Axboe wrote: On Fri, Jan 05 2018, Matias Bjørling wrote: Hi Jens, Here is a couple of patches for 4.16. This patchset prepares the lightnvm and pblk source code for the 2.0 specification release. The specification is close to its final revision. After these

Re: [GIT PULL 24/25] lightnvm: pblk: add iostat support

2018-01-05 Thread Matias Bjørling
On 01/05/2018 04:42 PM, Jens Axboe wrote: On Fri, Jan 05 2018, Matias Bjørling wrote: From: Javier González Since pblk registers its own block device, the iostat accounting is not automatically done for us. Therefore, add the necessary accounting logic to satisfy the

Re: [PATCH 09/12] nvme-pci: Use PCI p2pmem subsystem to manage the CMB

2018-01-05 Thread Logan Gunthorpe
On 05/01/18 11:11 AM, Keith Busch wrote: On Thu, Jan 04, 2018 at 12:01:34PM -0700, Logan Gunthorpe wrote: Register the CMB buffer as p2pmem and use the appropriate allocation functions to create and destroy the IO SQ. If the CMB supports WDS and RDS, publish it for use as p2p memory by other

Re: [PATCH 09/12] nvme-pci: Use PCI p2pmem subsystem to manage the CMB

2018-01-05 Thread Logan Gunthorpe
On 05/01/18 08:30 AM, Marta Rybczynska wrote: @@ -429,10 +429,7 @@ static void __nvme_submit_cmd(struct nvme_queue *nvmeq, { u16 tail = nvmeq->sq_tail; - if (nvmeq->sq_cmds_io) - memcpy_toio(>sq_cmds_io[tail], cmd, sizeof(*cmd)); - else -

Re: [PATCH 09/12] nvme-pci: Use PCI p2pmem subsystem to manage the CMB

2018-01-05 Thread Keith Busch
On Thu, Jan 04, 2018 at 12:01:34PM -0700, Logan Gunthorpe wrote: > Register the CMB buffer as p2pmem and use the appropriate allocation > functions to create and destroy the IO SQ. > > If the CMB supports WDS and RDS, publish it for use as p2p memory > by other devices. <> > + if (qid &&

Re: [GIT PULL] nvme fixes for Linux 4.15

2018-01-05 Thread Jens Axboe
On 1/5/18 10:15 AM, Christoph Hellwig wrote: > Hi Jens, > > I have a few more small nvme fixes for you for Linux 4.15: > > The following changes since commit 6d0e4827b72afc71349784336d5eb6df4df106e6: > > Revert "bdi: add error handle for bdi_debug_register" (2017-12-21 10:01:30 > -0700) > >

Re: [PATCH 04/12] pci-p2p: Clear ACS P2P flags for all client devices

2018-01-05 Thread Alex Williamson
On Fri, 5 Jan 2018 10:10:51 -0700 Logan Gunthorpe wrote: > On 04/01/18 08:33 PM, Alex Williamson wrote: > > That's exactly what IOMMU groups represent, the smallest set of devices > > which have DMA isolation from other devices. By poking this hole, the > > IOMMU group is

Re: [for-416 PATCH 1/2] bcache: Fix, improve efficiency of closure_sync()

2018-01-05 Thread Michael Lyle
Jens & Kent, On 01/05/2018 08:05 AM, Jens Axboe wrote: > On 12/30/17 4:09 PM, Michael Lyle wrote: >> +void __closure_sync(struct closure *cl) >> +{ >> +struct closure_syncer s = { .task = current }; >> >> +cl->s = >> +continue_at(cl, closure_sync_fn, NULL); >> + >> +while (1) {

[GIT PULL] nvme fixes for Linux 4.15

2018-01-05 Thread Christoph Hellwig
Hi Jens, I have a few more small nvme fixes for you for Linux 4.15: The following changes since commit 6d0e4827b72afc71349784336d5eb6df4df106e6: Revert "bdi: add error handle for bdi_debug_register" (2017-12-21 10:01:30 -0700) are available in the git repository at:

Re: [PATCH v1 02/10] bcache: set task properly in allocator_wait()

2018-01-05 Thread Coly Li
On 04/01/2018 1:09 AM, Michael Lyle wrote: > On 01/03/2018 06:03 AM, Coly Li wrote: >> Kernel thread routine bch_allocator_thread() references macro >> allocator_wait() to wait for a condition or quit to do_exit() >> when kthread_should_stop() is true. >> >> Macro allocator_wait() has 2 issues in

Re: [PATCH 04/12] pci-p2p: Clear ACS P2P flags for all client devices

2018-01-05 Thread Logan Gunthorpe
On 04/01/18 08:33 PM, Alex Williamson wrote: That's exactly what IOMMU groups represent, the smallest set of devices which have DMA isolation from other devices. By poking this hole, the IOMMU group is invalid. We cannot turn off ACS only for a specific device, in order to enable p2p it

Re: [PATCH v1 01/10] bcache: exit bch_writeback_thread() with proper task state

2018-01-05 Thread Coly Li
On 04/01/2018 1:08 AM, Michael Lyle wrote: > On 01/03/2018 06:03 AM, Coly Li wrote: >> Kernel thread routine bch_writeback_thread() has the following code block, >> >> 452 set_current_state(TASK_INTERRUPTIBLE); >> 453 >> 454 if

Re: About the try to remove cross-release feature entirely by Ingo

2018-01-05 Thread J. Bruce Fields
On Fri, Jan 05, 2018 at 11:49:41AM -0500, bfields wrote: > On Mon, Jan 01, 2018 at 02:18:55AM -0800, Matthew Wilcox wrote: > > On Sat, Dec 30, 2017 at 06:00:57PM -0500, Theodore Ts'o wrote: > > > On Sat, Dec 30, 2017 at 05:40:28PM -0500, Theodore Ts'o wrote: > > > > On Sat, Dec 30, 2017 at

Re: About the try to remove cross-release feature entirely by Ingo

2018-01-05 Thread J. Bruce Fields
On Mon, Jan 01, 2018 at 02:18:55AM -0800, Matthew Wilcox wrote: > On Sat, Dec 30, 2017 at 06:00:57PM -0500, Theodore Ts'o wrote: > > On Sat, Dec 30, 2017 at 05:40:28PM -0500, Theodore Ts'o wrote: > > > On Sat, Dec 30, 2017 at 12:44:17PM -0800, Matthew Wilcox wrote: > > > > > > > > I'm not sure I

Re: [PATCH v4 3/5] nvmet/fc: Use sgl_alloc() and sgl_free()

2018-01-05 Thread James Smart
On 1/5/2018 8:26 AM, Bart Van Assche wrote: Use the sgl_alloc() and sgl_free() functions instead of open coding these functions. Signed-off-by: Bart Van Assche Reviewed-by: Johannes Thumshirn Reviewed-by: Hannes Reinecke Cc: Keith

Re: [PATCH V2] block, bfq: remove batches of confusing ifdefs

2018-01-05 Thread Jens Axboe
On 12/13/17 11:10 PM, Paolo Valente wrote: > Hi Jens, > do you think this version could be ok? It's definitely an improvement. I will add it for 4.16. -- Jens Axboe

Re: [PATCH IMPROVEMENT] block, bfq: consider recent past to reduce soft-real-time false positives

2018-01-05 Thread Jens Axboe
On 12/14/17 11:23 PM, Paolo Valente wrote: > Hi, > this patch reduces false positives in the detection of bfq_queues > associated with soft real-time applications. As such, this patch > reduces the damages caused by these false positives to other > applications. The patch proved to be very

Re: [PATCH IMPROVEMENT/BUGFIX 0/4] remove start-up time outlier caused by wrong detection of cooperating processes

2018-01-05 Thread Jens Axboe
On 12/20/17 4:38 AM, Paolo Valente wrote: > Hi, > the main patch in this series ("block, bfq: let a queue be merged only > shortly after starting I/O") eliminates an outlier in the application > start-up time guaranteed by BFQ. This outlier occurs more or less > frequently, as a function of the

[PATCH v4 2/5] crypto: scompress - use sgl_alloc() and sgl_free()

2018-01-05 Thread Bart Van Assche
Use the sgl_alloc() and sgl_free() functions instead of open coding these functions. Signed-off-by: Bart Van Assche Acked-by: Ard Biesheuvel Cc: Herbert Xu --- crypto/Kconfig | 1 + crypto/scompress.c | 51

[PATCH v4 3/5] nvmet/fc: Use sgl_alloc() and sgl_free()

2018-01-05 Thread Bart Van Assche
Use the sgl_alloc() and sgl_free() functions instead of open coding these functions. Signed-off-by: Bart Van Assche Reviewed-by: Johannes Thumshirn Reviewed-by: Hannes Reinecke Cc: Keith Busch Cc: Christoph

[PATCH v4 5/5] target: Use sgl_alloc_order() and sgl_free()

2018-01-05 Thread Bart Van Assche
Use the sgl_alloc_order() and sgl_free() functions instead of open coding these functions. Signed-off-by: Bart Van Assche Acked-by: Nicholas A. Bellinger Reviewed-by: Hannes Reinecke Cc: Christoph Hellwig Cc: Sagi

[PATCH v4 1/5] lib/scatterlist: Introduce sgl_alloc() and sgl_free()

2018-01-05 Thread Bart Van Assche
Many kernel drivers contain code that allocates and frees both a scatterlist and the pages that populate that scatterlist. Introduce functions in lib/scatterlist.c that perform these tasks instead of duplicating this functionality in multiple drivers. Only include these functions in the build if

[PATCH v4 4/5] nvmet/rdma: Use sgl_alloc() and sgl_free()

2018-01-05 Thread Bart Van Assche
Use the sgl_alloc() and sgl_free() functions instead of open coding these functions. Signed-off-by: Bart Van Assche Reviewed-by: Johannes Thumshirn Reviewed-by: Hannes Reinecke Cc: Keith Busch Cc: Christoph

[PATCH v4 0/5] Introduce sgl_alloc() and sgl_free()

2018-01-05 Thread Bart Van Assche
Hello Jens, As you know there are multiple drivers that both allocate a scatter/gather list and populate that list with pages. This patch series moves the code for allocating and freeing such scatterlists from several drivers into lib/scatterlist.c. Please consider this patch series for kernel

Re: [PATCH IMPROVEMENT] block, bfq: increase threshold to deem I/O as random

2018-01-05 Thread Jens Axboe
On 12/20/17 9:27 AM, Paolo Valente wrote: > If two processes do I/O close to each other, i.e., are cooperating > processes in BFQ (and CFQ'S) nomenclature, then BFQ merges their > associated bfq_queues, so as to get sequential I/O from the union of > the I/O requests of the processes, and thus

Re: [PATCH V9 0/7] blk-mq support for ZBC disks

2018-01-05 Thread Jens Axboe
On Thu, Dec 21 2017, Damien Le Moal wrote: > This series, formerly titled "scsi-mq support for ZBC disks", implements > support for ZBC disks for system using the scsi-mq I/O path. > > The current scsi level support of ZBC disks guarantees write request ordering > using a per-zone write lock

Re: [PATCH V3] block: drain queue before waiting for q_usage_counter becoming zero

2018-01-05 Thread Jens Axboe
On 11/29/17 4:56 PM, Ming Lei wrote: > Now we track legacy requests with .q_usage_counter in commit 055f6e18e08f > ("block: Make q_usage_counter also track legacy requests"), but that > commit never runs and drains legacy queue before waiting for this counter > becoming zero, then IO hang is

Re: [for-416 PATCH 1/2] bcache: Fix, improve efficiency of closure_sync()

2018-01-05 Thread Jens Axboe
On 12/30/17 4:09 PM, Michael Lyle wrote: > +void __closure_sync(struct closure *cl) > +{ > + struct closure_syncer s = { .task = current }; > > + cl->s = > + continue_at(cl, closure_sync_fn, NULL); > + > + while (1) { > + __set_current_state(TASK_UNINTERRUPTIBLE); >

Re: [PATCH 0/2] Two bug fixes for the pktcdvd driver

2018-01-05 Thread Jens Axboe
On 1/2/18 12:39 PM, Bart Van Assche wrote: > Hello Jens, > > This patch series fixes two bugs in the pktcdvd driver. The second patch fixes > a recently introduced regression while the first patch fixes a regression that > was introduced a long time ago. Please consider these patches for the

Re: [GIT PULL 00/25] LightNVM updates for 4.16

2018-01-05 Thread Jens Axboe
On Fri, Jan 05 2018, Matias Bjørling wrote: > Hi Jens, > > Here is a couple of patches for 4.16. > > This patchset prepares the lightnvm and pblk source code for the 2.0 > specification release. The specification is close to its final > revision. After these changes, 2.0 support is a quick drop.

Re: [PATCH 04/12] pci-p2p: Clear ACS P2P flags for all client devices

2018-01-05 Thread Alex Williamson
On Fri, 5 Jan 2018 01:47:01 -0500 Jerome Glisse wrote: > On Thu, Jan 04, 2018 at 08:33:00PM -0700, Alex Williamson wrote: > > On Thu, 4 Jan 2018 17:00:47 -0700 > > Logan Gunthorpe wrote: > > > > > On 04/01/18 03:35 PM, Alex Williamson wrote: > > > >

Re: [PATCH 09/12] nvme-pci: Use PCI p2pmem subsystem to manage the CMB

2018-01-05 Thread Marta Rybczynska
> @@ -429,10 +429,7 @@ static void __nvme_submit_cmd(struct nvme_queue *nvmeq, > { > u16 tail = nvmeq->sq_tail; > > - if (nvmeq->sq_cmds_io) > - memcpy_toio(>sq_cmds_io[tail], cmd, sizeof(*cmd)); > - else > - memcpy(>sq_cmds[tail], cmd, sizeof(*cmd)); > +

Re: [PATCH] blk-mq: remove confusing comment of blk_mq_sched_dispatch_requests

2018-01-05 Thread Jens Axboe
On 1/5/18 12:09 AM, Liu Bo wrote: > Commit de1482974080 > ("blk-mq: introduce .get_budget and .put_budget in blk_mq_ops") > changes the function to return bool type, and then commit 1f460b63d4b3 > ("blk-mq: don't restart queue when .get_budget returns BLK_STS_RESOURCE") > changes it back to void,

[GIT PULL 01/25] null_blk: remove lightnvm support

2018-01-05 Thread Matias Bjørling
With rrpc to be removed, the null_blk lightnvm support is no longer functional. Remove the lightnvm implementation and maybe add it to another module in the future if someone takes on the challenge. Signed-off-by: Matias Bjørling --- drivers/block/null_blk.c | 220

[GIT PULL 07/25] lightnvm: make geometry structures 2.0 ready

2018-01-05 Thread Matias Bjørling
From: Matias Bjørling Prepare for the 2.0 revision by adapting the geometry structures to coexist with the 1.2 revision. Signed-off-by: Matias Bjørling Reviewed-by: Javier González Signed-off-by: Matias Bjørling

[GIT PULL 05/25] lightnvm: remove unnecessary field from nvm_rq

2018-01-05 Thread Matias Bjørling
From: Javier González Remove the wait filed in nvm_rq. It is not used anymore, as targets rely on the functionality provided by the LightNVM subsystem when sending sync I/O. Signed-off-by: Javier González Signed-off-by: Matias Bjørling

[GIT PULL 09/25] lightnvm: guarantee target unique name across devs.

2018-01-05 Thread Matias Bjørling
From: Javier González Until now, target unique naming is only guaranteed per device. This is ok from a lightnvm perspective, but not from a sysfs one, since groups will collide regardless of the underlying device. Check that names are unique across all lightnvm-capable

[GIT PULL 10/25] lightnvm: pblk: compress and reorder helper functions

2018-01-05 Thread Matias Bjørling
From: Javier González Through time, we have generated some redundant helper functions. Refactor them to eliminate redundant and unnecessary code. Also, reorder them to improve readability Signed-off-by: Javier González Signed-off-by: Matias Bjørling

[GIT PULL 08/25] lightnvm: refactor target type lookup

2018-01-05 Thread Matias Bjørling
From: Javier González Refactor target type lookup to use/not use locks explicitly instead of using a hidden parameter to make the function locking. Signed-off-by: Javier González Signed-off-by: Matias Bjørling ---

[GIT PULL 03/25] lightnvm: use internal pblk methods

2018-01-05 Thread Matias Bjørling
Now that rrpc has been removed, the only users of the ppa helpers is pblk. However, pblk already defines similar functions. Switch pblk to use the internal ones, and remove the generic ppa helpers. Signed-off-by: Matias Bjørling --- drivers/lightnvm/pblk-map.c | 2 +-

[GIT PULL 15/25] lightnvm: pblk: prevent premature sync point resets

2018-01-05 Thread Matias Bjørling
From: Hans Holmberg Unless we protect flush pointer updates with a lock, we risk resetting new flush points before we've synced all sectors up to that point. This patch protects new flush points with the same spin lock that is being held when advancing the sync

[GIT PULL 11/25] lightnvm: pblk: remove pblk_for_each_lun helper

2018-01-05 Thread Matias Bjørling
From: Javier González Signed-off-by: Javier González Signed-off-by: Matias Bjørling --- drivers/lightnvm/pblk.h | 4 1 file changed, 4 deletions(-) diff --git a/drivers/lightnvm/pblk.h b/drivers/lightnvm/pblk.h index

[GIT PULL 14/25] lightnvm: pblk: clear flush point on completed writes

2018-01-05 Thread Matias Bjørling
From: Hans Holmberg Move completion of syncs and clearing of flush points to the write completion path - this ensures that the data has been comitted to the media before completing bios containing syncs. Signed-off-by: Hans Holmberg

[GIT PULL 12/25] lightnvm: pblk: refactor emeta consistency check

2018-01-05 Thread Matias Bjørling
From: Hans Holmberg Currently pblk_recov_get_lba list does two separate things: it checks the consistency of the emeta and extracts the lba list. This patch separates the consistency check to make the code easier to read and to prepare for version checks of the line

[GIT PULL 16/25] lightnvm: pblk: remove pblk_gc_stop

2018-01-05 Thread Matias Bjørling
From: Hans Holmberg pblk_gc_stop just sets pblk->gc->gc_active to zero, ignoring the flush parameter. This is plain confusing, so remove the function and set the gc active flag at the call points instead. Signed-off-by: Hans Holmberg

[GIT PULL 17/25] lightnvm: pblk: use exact free block counter in RL

2018-01-05 Thread Matias Bjørling
From: Javier González Until now, pblk's rate-limiter has used a heuristic to reserve space for GC I/O given that the over-provision area was fixed. In preparation for allowing to define the over-provision area on target creation, define a dedicated free_block counter in the

[GIT PULL 18/25] lightnvm: set target over-provision on create ioctl

2018-01-05 Thread Matias Bjørling
From: Javier González Allow to set the over-provision percentage on target creation. In case that the value is not provided, fall back to the default value set by the target. In pblk, set the default OP to 11% of the total size of the device Signed-off-by: Javier González

[GIT PULL 21/25] lightnvm: pblk: ensure kthread alloc. before kicking it

2018-01-05 Thread Matias Bjørling
From: Javier González When creating the write thread, ensure that the kthread has been created before initializing the timer responsible from kicking it. Otherwise, if the kthread creation fails or gets killed from used space, we risk kicking an empty thread structure.

[GIT PULL 20/25] lightnvm: pblk: do not log recovery read errors

2018-01-05 Thread Matias Bjørling
From: Javier González On scan recovery, reads can fail. This happens because the first page for each line is read in order to determined if the line has been used (and thus needs to be recovered), or not. This can lead to "empty page" read errors. Since these errors are

[GIT PULL 13/25] lightnvm: pblk: rename sync_point to flush_point

2018-01-05 Thread Matias Bjørling
From: Hans Holmberg Sync point is a really confusing name for keeping track of the last entry that needs to be flushed so change the name to to flush_point instead. Signed-off-by: Hans Holmberg Signed-off-by: Javier González

[GIT PULL 25/25] lightnvm: pblk: refactor pblk_ppa_comp function

2018-01-05 Thread Matias Bjørling
Shorten function to simply return the value of the if statement. Signed-off-by: Matias Bjørling --- drivers/lightnvm/pblk.h | 5 + 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/lightnvm/pblk.h b/drivers/lightnvm/pblk.h index 8af374e..8c357fb 100644

[GIT PULL 23/25] lightnvm: pblk: print instance name on instance info

2018-01-05 Thread Matias Bjørling
From: Javier González Add the instance name to the information printed out on target creation. Signed-off-by: Javier González Signed-off-by: Matias Bjørling --- drivers/lightnvm/pblk-init.c | 3 ++- 1 file changed, 2 insertions(+),

[GIT PULL 02/25] lightnvm: remove rrpc

2018-01-05 Thread Matias Bjørling
The hybrid mode for 1.2 revision was deprecated, and have no users. Remove to make it easier to move to the 2.0 revision. Signed-off-by: Matias Bjørling --- drivers/lightnvm/Kconfig |7 - drivers/lightnvm/Makefile |1 - drivers/lightnvm/rrpc.c | 1625

[GIT PULL 04/25] lightnvm: remove hybrid ocssd 1.2 support

2018-01-05 Thread Matias Bjørling
Now that rrpc have been removed. Also remove the hybrid 1.2 support from the core. Signed-off-by: Matias Bjørling --- drivers/lightnvm/core.c | 141 --- drivers/nvme/host/lightnvm.c | 96 -

[GIT PULL 24/25] lightnvm: pblk: add iostat support

2018-01-05 Thread Matias Bjørling
From: Javier González Since pblk registers its own block device, the iostat accounting is not automatically done for us. Therefore, add the necessary accounting logic to satisfy the iostat interface. Signed-off-by: Javier González Signed-off-by: Matias

[GIT PULL 00/25] LightNVM updates for 4.16

2018-01-05 Thread Matias Bjørling
Hi Jens, Here is a couple of patches for 4.16. This patchset prepares the lightnvm and pblk source code for the 2.0 specification release. The specification is close to its final revision. After these changes, 2.0 support is a quick drop. While adopting 2.0 specification, the rrpc and null_blk

Re: [PATCH v5] Return bytes transferred for partial direct I/O

2018-01-05 Thread Goldwyn Rodrigues
On 01/04/2018 08:10 PM, Darrick J. Wong wrote: > On Wed, Nov 22, 2017 at 06:29:01AM -0600, Goldwyn Rodrigues wrote: >> From: Goldwyn Rodrigues >> >> In case direct I/O encounters an error midway, it returns the error. >> Instead it should be returning the number of bytes

[PATCH] blk-mq: remove confusing comment of blk_mq_sched_dispatch_requests

2018-01-05 Thread Liu Bo
Commit de1482974080 ("blk-mq: introduce .get_budget and .put_budget in blk_mq_ops") changes the function to return bool type, and then commit 1f460b63d4b3 ("blk-mq: don't restart queue when .get_budget returns BLK_STS_RESOURCE") changes it back to void, but the comment remains. Signed-off-by: Liu