Re: [PATCH v3 00/10] lightnvm: next set of improvements for 5.2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 03.04.2019 09:12, Hans Holmberg wrote:
On Wed, Mar 27, 2019 at 1:41 PM Igor Konopko <igor.j.konopko@xxxxxxxxx> wrote:

This is another set of fixes and improvements to both pblk and lightnvm
core.

First & second patches are the most crutial, since they changes the approach
to the partial read path, so detailed review is needed especially here.

Other patches are my other findings related to some bugs or potential
improvements, mostly related to some corner cases.

Changes v2 -> v3;
-dropped some not needed patches
-dropped patches which were already pulled into for-5.2/core branch
-commit messages cleanup

Changes v1 -> v2:
-dropped some not needed patches
-review feedback incorporated for some of the patches
-partial read path changes patch splitted into two patches


Hi Igor,

I ran the quick xfstests and generic/247 hangs with this patchset on qemu:

FSTYP         -- xfs (non-debug)
PLATFORM      -- Linux/x86_64 u1804-qatd 5.0.0-rc6_for-5.2/core_igor_v3

generic/247 95s ...
<hang>

Note: If i run it with Matias 5.2 core branch with my biovec fix, it
completes successfully, but with this in dmesg:

[  358.028158] Page cache invalidation failure on direct I/O.
Possible data corruption due to collision with buffered I/O!
[  358.030768] File: /mnt/247 PID: 4431 Comm: dd

(I have not looked into that any further)


Thanks Hans for testing that and reporting back. Will definitely look into that and resubmit when fixed.
Igor

Best regards,
Hans


Igor Konopko (10):
   lightnvm: pblk: IO path reorganization
   lightnvm: pblk: simplify partial read path
   lightnvm: pblk: propagate errors when reading meta
   lightnvm: pblk: recover only written metadata
   lightnvm: pblk: wait for inflight IOs in recovery
   lightnvm: pblk: remove internal IO timeout
   lightnvm: pblk: store multiple copies of smeta
   lightnvm: pblk: GC error handling
   lightnvm: pblk: use nvm_rq_to_ppa_list()
   lightnvm: track inflight target creations

  drivers/lightnvm/core.c          |  19 ++-
  drivers/lightnvm/pblk-cache.c    |   8 +-
  drivers/lightnvm/pblk-core.c     | 179 +++++++++++++++++----
  drivers/lightnvm/pblk-gc.c       |   5 +-
  drivers/lightnvm/pblk-init.c     |  37 +++--
  drivers/lightnvm/pblk-read.c     | 336 +++++++++++----------------------------
  drivers/lightnvm/pblk-recovery.c |  69 ++++----
  drivers/lightnvm/pblk-rl.c       |   3 +-
  drivers/lightnvm/pblk.h          |  31 ++--
  include/linux/lightnvm.h         |   2 +
  10 files changed, 343 insertions(+), 346 deletions(-)

--
2.9.5




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux