<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/md/bcache/util.c, branch linux-3.12.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.12.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.12.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2013-09-24T21:41:43Z</updated>
<entry>
<title>bcache: Fix a writeback performance regression</title>
<updated>2013-09-24T21:41:43Z</updated>
<author>
<name>Kent Overstreet</name>
</author>
<published>2013-09-24T06:17:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c2a4f3183a1248f615a695fbd8905da55ad11bba'/>
<id>urn:sha1:c2a4f3183a1248f615a695fbd8905da55ad11bba</id>
<content type='text'>
Background writeback works by scanning the btree for dirty data and
adding those keys into a fixed size buffer, then for each dirty key in
the keybuf writing it to the backing device.

When read_dirty() finishes and it's time to scan for more dirty data, we
need to wait for the outstanding writeback IO to finish - they still
take up slots in the keybuf (so that foreground writes can check for
them to avoid races) - without that wait, we'll continually rescan when
we'll be able to add at most a key or two to the keybuf, and that takes
locks that starves foreground IO.  Doh.

Signed-off-by: Kent Overstreet &lt;kmo@daterainc.com&gt;
Cc: linux-stable &lt;stable@vger.kernel.org&gt; # &gt;= v3.10
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>bcache: Use standard utility code</title>
<updated>2013-07-01T21:43:53Z</updated>
<author>
<name>Kent Overstreet</name>
</author>
<published>2013-06-07T01:15:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8e51e414a3c6d92ef2cc41720c67342a8e2c0bf7'/>
<id>urn:sha1:8e51e414a3c6d92ef2cc41720c67342a8e2c0bf7</id>
<content type='text'>
Some of bcache's utility code has made it into the rest of the kernel,
so drop the bcache versions.

Bcache used to have a workaround for allocating from a bio set under
generic_make_request() (if you allocated more than once, the bios you
already allocated would get stuck on current-&gt;bio_list when you
submitted, and you'd risk deadlock) - bcache would mask out __GFP_WAIT
when allocating bios under generic_make_request() so that allocation
could fail and it could retry from workqueue. But bio_alloc_bioset() has
a workaround now, so we can drop this hack and the associated error
handling.

Signed-off-by: Kent Overstreet &lt;koverstreet@google.com&gt;
</content>
</entry>
<entry>
<title>bcache: Fix a format string overflow</title>
<updated>2013-04-08T20:33:49Z</updated>
<author>
<name>Kent Overstreet</name>
</author>
<published>2013-04-05T21:12:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=91bbcfc36142354e316e013449051619c1c7b456'/>
<id>urn:sha1:91bbcfc36142354e316e013449051619c1c7b456</id>
<content type='text'>
Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Kent Overstreet &lt;koverstreet@google.com&gt;
</content>
</entry>
<entry>
<title>bcache: Sparse fixes</title>
<updated>2013-04-08T20:33:48Z</updated>
<author>
<name>Kent Overstreet</name>
</author>
<published>2013-03-26T20:49:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c19ed23a0b1848eca6b6f22c1ee233abe54d37f9'/>
<id>urn:sha1:c19ed23a0b1848eca6b6f22c1ee233abe54d37f9</id>
<content type='text'>
Signed-off-by: Kent Overstreet &lt;koverstreet@google.com&gt;
</content>
</entry>
<entry>
<title>bcache: Don't export utility code, prefix with bch_</title>
<updated>2013-03-28T18:50:55Z</updated>
<author>
<name>Kent Overstreet</name>
</author>
<published>2013-03-28T18:50:55Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=169ef1cf6171d35550fef85645b83b960e241cff'/>
<id>urn:sha1:169ef1cf6171d35550fef85645b83b960e241cff</id>
<content type='text'>
Signed-off-by: Kent Overstreet &lt;koverstreet@google.com&gt;
Cc: linux-bcache@vger.kernel.org
Signed-off-by: Jens Axboe &lt;axboe@kernel.dk&gt;
</content>
</entry>
<entry>
<title>bcache: A block layer cache</title>
<updated>2013-03-23T23:11:31Z</updated>
<author>
<name>Kent Overstreet</name>
</author>
<published>2013-03-23T23:11:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cafe563591446cf80bfbc2fe3bc72a2e36cf1060'/>
<id>urn:sha1:cafe563591446cf80bfbc2fe3bc72a2e36cf1060</id>
<content type='text'>
Does writethrough and writeback caching, handles unclean shutdown, and
has a bunch of other nifty features motivated by real world usage.

See the wiki at http://bcache.evilpiepirate.org for more.

Signed-off-by: Kent Overstreet &lt;koverstreet@google.com&gt;
</content>
</entry>
</feed>
