<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/md/dm-writecache.c, branch v5.3</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v5.3</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v5.3'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2019-04-26T15:48:03Z</updated>
<entry>
<title>dm writecache: avoid unnecessary lookups in writecache_find_entry()</title>
<updated>2019-04-26T15:48:03Z</updated>
<author>
<name>Mikulas Patocka</name>
<email>mpatocka@redhat.com</email>
</author>
<published>2019-04-26T13:59:24Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f8011d334426cee77276a1038b627b5cb0470258'/>
<id>urn:sha1:f8011d334426cee77276a1038b627b5cb0470258</id>
<content type='text'>
This is a small optimization in writecache_find_entry().

If we go past the condition "if (unlikely(!node))", we can be certain that
there is no entry in the tree that has the block equal to the "block"
variable.

Consequently, we can return the next entry directly, we don't need to go
to the second part of the function that finds the entry with lowest or
highest seq number that matches the "block" variable.

Also, add some whitespace and cleanup needless braces.

Suggested-by: Huaisheng Ye &lt;yehs1@lenovo.com&gt;
Signed-off-by: Mikulas Patocka &lt;mpatocka@redhat.com&gt;
Signed-off-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
</content>
</entry>
<entry>
<title>dm writecache: remove unused member page_offset in writeback_struct</title>
<updated>2019-04-26T15:32:50Z</updated>
<author>
<name>Huaisheng Ye</name>
<email>yehs1@lenovo.com</email>
</author>
<published>2019-04-25T13:31:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=08a8e804620bbb41d06d144441d19c589bb17aa4'/>
<id>urn:sha1:08a8e804620bbb41d06d144441d19c589bb17aa4</id>
<content type='text'>
The stucture member page_offset in writeback_struct never has been
used actually. Remove it.

Signed-off-by: Huaisheng Ye &lt;yehs1@lenovo.com&gt;
Acked-by: Mikulas Patocka &lt;mpatocka@redhat.com&gt;
Signed-off-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
</content>
</entry>
<entry>
<title>dm writecache: add unlikely for returned value of rb_next/prev</title>
<updated>2019-04-18T20:18:31Z</updated>
<author>
<name>Huaisheng Ye</name>
<email>yehs1@lenovo.com</email>
</author>
<published>2019-04-12T15:28:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=84420b1e5d7254e58f551e32244d13c8e124bdcc'/>
<id>urn:sha1:84420b1e5d7254e58f551e32244d13c8e124bdcc</id>
<content type='text'>
In functions writecache_discard() and writecache_find_entry() there is a
high probablity that the pointer of structure rb_node won't equal NULL.
Add unlikely for the pointer node NULL.

Signed-off-by: Huaisheng Ye &lt;yehs1@lenovo.com&gt;
Signed-off-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
</content>
</entry>
<entry>
<title>dm writecache: remove needless dereferences in __writecache_writeback_pmem()</title>
<updated>2019-04-18T20:18:31Z</updated>
<author>
<name>Huaisheng Ye</name>
<email>yehs1@lenovo.com</email>
</author>
<published>2019-04-12T15:27:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=09f2d6563055b8ff0948cefb8911a4de0d559963'/>
<id>urn:sha1:09f2d6563055b8ff0948cefb8911a4de0d559963</id>
<content type='text'>
bio is already available so there is no need to access it in terms of
the wb pointer.

Signed-off-by: Huaisheng Ye &lt;yehs1@lenovo.com&gt;
Signed-off-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
</content>
</entry>
<entry>
<title>dm writecache: fix typo in name for writeback_wq</title>
<updated>2019-03-05T19:53:51Z</updated>
<author>
<name>Huaisheng Ye</name>
<email>yehs1@lenovo.com</email>
</author>
<published>2019-02-20T16:34:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f87e033b3b923d91194348c11221e1bbc92e51b2'/>
<id>urn:sha1:f87e033b3b923d91194348c11221e1bbc92e51b2</id>
<content type='text'>
The workqueue's name should be "writecache-writeback" instead of
"writecache-writeabck".

Signed-off-by: Huaisheng Ye &lt;yehs1@lenovo.com&gt;
Signed-off-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
</content>
</entry>
<entry>
<title>dm writecache: fix typo in error msg for creating writecache_flush_thread</title>
<updated>2018-12-18T14:02:26Z</updated>
<author>
<name>Shenghui Wang</name>
<email>shhuiw@foxmail.com</email>
</author>
<published>2018-10-24T08:04:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e8ea141a0f5e1d7b23f47d10c480d4fc55caaf14'/>
<id>urn:sha1:e8ea141a0f5e1d7b23f47d10c480d4fc55caaf14</id>
<content type='text'>
The error msg should be "flush thread" instead of "endio thread"
for writecache_flush_thread.

Signed-off-by: Shenghui Wang &lt;shhuiw@foxmail.com&gt;
Signed-off-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
</content>
</entry>
<entry>
<title>dm writecache: remove disabled code in memory_entry()</title>
<updated>2018-10-22T14:59:52Z</updated>
<author>
<name>Mike Snitzer</name>
<email>snitzer@redhat.com</email>
</author>
<published>2018-10-22T14:59:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=da4ad3a23af3d7f357b24b33e9fec7531b59ee49'/>
<id>urn:sha1:da4ad3a23af3d7f357b24b33e9fec7531b59ee49</id>
<content type='text'>
This dead branch was missed during review.  It only makes memory_entry()
more inefficient due to needless call to is_power_of_2(), etc.

Reported-by: shenghui &lt;shhuiw@foxmail.com&gt;
Signed-off-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'libnvdimm-for-4.19_misc' of gitolite.kernel.org:pub/scm/linux/kernel/git/nvdimm/nvdimm</title>
<updated>2018-08-26T01:13:10Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2018-08-26T01:13:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=828bf6e904eb8fc8969333568802689fbbf07a40'/>
<id>urn:sha1:828bf6e904eb8fc8969333568802689fbbf07a40</id>
<content type='text'>
Pull libnvdimm updates from Dave Jiang:
 "Collection of misc libnvdimm patches for 4.19 submission:

   - Adding support to read locked nvdimm capacity.

   - Change test code to make DSM failure code injection an override.

   - Add support for calculate maximum contiguous area for namespace.

   - Add support for queueing a short ARS when there is on going ARS for
     nvdimm.

   - Allow NULL to be passed in to -&gt;direct_access() for kaddr and pfn
     params.

   - Improve smart injection support for nvdimm emulation testing.

   - Fix test code that supports for emulating controller temperature.

   - Fix hang on error before devm_memremap_pages()

   - Fix a bug that causes user memory corruption when data returned to
     user for ars_status.

   - Maintainer updates for Ross Zwisler emails and adding Jan Kara to
     fsdax"

* tag 'libnvdimm-for-4.19_misc' of gitolite.kernel.org:pub/scm/linux/kernel/git/nvdimm/nvdimm:
  libnvdimm: fix ars_status output length calculation
  device-dax: avoid hang on error before devm_memremap_pages()
  tools/testing/nvdimm: improve emulation of smart injection
  filesystem-dax: Do not request kaddr and pfn when not required
  md/dm-writecache: Don't request pointer dummy_addr when not required
  dax/super: Do not request a pointer kaddr when not required
  tools/testing/nvdimm: kaddr and pfn can be NULL to -&gt;direct_access()
  s390, dcssblk: kaddr and pfn can be NULL to -&gt;direct_access()
  libnvdimm, pmem: kaddr and pfn can be NULL to -&gt;direct_access()
  acpi/nfit: queue issuing of ars when an uc error notification comes in
  libnvdimm: Export max available extent
  libnvdimm: Use max contiguous area for namespace size
  MAINTAINERS: Add Jan Kara for filesystem DAX
  MAINTAINERS: update Ross Zwisler's email address
  tools/testing/nvdimm: Fix support for emulating controller temperature
  tools/testing/nvdimm: Make DSM failure code injection an override
  acpi, nfit: Prefer _DSM over _LSR for namespace label reads
  libnvdimm: Introduce locked DIMM capacity support
</content>
</entry>
<entry>
<title>dm writecache: fix a crash due to reading past end of dirty_bitmap</title>
<updated>2018-08-16T17:43:01Z</updated>
<author>
<name>Mikulas Patocka</name>
<email>mpatocka@redhat.com</email>
</author>
<published>2018-08-16T16:23:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=1e1132ea21da6d7be92a72195204379c819cb70b'/>
<id>urn:sha1:1e1132ea21da6d7be92a72195204379c819cb70b</id>
<content type='text'>
wc-&gt;dirty_bitmap_size is in bytes so must multiply it by 8, not by
BITS_PER_LONG, to get number of bitmap_bits.

Fixes crash in find_next_bit() that was reported:
https://bugzilla.kernel.org/show_bug.cgi?id=200819

Reported-by: edo.rus@gmail.com
Fixes: 48debafe4f2f ("dm: add writecache target")
Cc: stable@vger.kernel.org # 4.18
Signed-off-by: Mikulas Patocka &lt;mpatocka@redhat.com&gt;
Signed-off-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
</content>
</entry>
<entry>
<title>md/dm-writecache: Don't request pointer dummy_addr when not required</title>
<updated>2018-07-30T16:40:04Z</updated>
<author>
<name>Huaisheng Ye</name>
<email>yehs1@lenovo.com</email>
</author>
<published>2018-07-30T07:15:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f742267ae91faf241d2892878208dffc586ffe06'/>
<id>urn:sha1:f742267ae91faf241d2892878208dffc586ffe06</id>
<content type='text'>
Function persistent_memory_claim doesn't need to get local pointer
dummy_addr from direct_access. Using NULL instead of having to pass
in a useless local pointer that caller then just throw away.

Suggested-by: Ross Zwisler &lt;ross.zwisler@linux.intel.com&gt;
Signed-off-by: Huaisheng Ye &lt;yehs1@lenovo.com&gt;
Reviewed-by: Ross Zwisler &lt;ross.zwisler@linux.intel.com&gt;
Acked-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
Signed-off-by: Dave Jiang &lt;dave.jiang@intel.com&gt;
</content>
</entry>
</feed>
