<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/lightnvm, branch v4.4</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=v4.4</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.4'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2015-12-29T15:28:32Z</updated>
<entry>
<title>lightnvm: wrong offset in bad blk lun calculation</title>
<updated>2015-12-29T15:28:32Z</updated>
<author>
<name>Matias Bjørling</name>
<email>m@bjorling.me</email>
</author>
<published>2015-12-29T13:37:56Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c3293a9ac2a4f9160b85b5e986a8e0c54986e7f7'/>
<id>urn:sha1:c3293a9ac2a4f9160b85b5e986a8e0c54986e7f7</id>
<content type='text'>
dev-&gt;nr_luns reports the total number of luns available in a device
while dev-&gt;luns_per_chnl is the number of luns per channel.

When multiple channels are available, the offset is calculated from a
channel and lun id into a linear array. As it multiplies with
the total number of luns, we go out of bound when channel id &gt; 0 and
causes the kernel to panic when we read a protected kernel memory area.

Signed-off-by: Matias Bjørling &lt;m@bjorling.me&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: do not compile in debugging by default</title>
<updated>2015-12-07T16:14:20Z</updated>
<author>
<name>Matias Bjørling</name>
<email>m@bjorling.me</email>
</author>
<published>2015-12-06T10:25:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4158624454db3756c1f1b3641f1ab4215e697936'/>
<id>urn:sha1:4158624454db3756c1f1b3641f1ab4215e697936</id>
<content type='text'>
The LightNVM module exposes a debug interface when CONFIG_NVM_DEBUG is
set. This interfaces takes a string to configure media managers and
targets. Make sure this interface is only exposed when chosen
deliberately.

Signed-off-by: Matias Bjørling &lt;m@bjorling.me&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: prevent gennvm module unload on use</title>
<updated>2015-12-07T16:14:19Z</updated>
<author>
<name>Matias Bjørling</name>
<email>m@bjorling.me</email>
</author>
<published>2015-12-06T10:25:50Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=008b74438269b368d57a14452afbc194f7f9ff2f'/>
<id>urn:sha1:008b74438269b368d57a14452afbc194f7f9ff2f</id>
<content type='text'>
After the gennvm module has been initialized. It might be attached to
one or several devices. In that case, the module is in use. Make sure
that it can not be unloaded.

Signed-off-by: Matias Bjørling &lt;m@bjorling.me&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: fix media mgr registration</title>
<updated>2015-12-07T16:14:19Z</updated>
<author>
<name>Matias Bjørling</name>
<email>m@bjorling.me</email>
</author>
<published>2015-12-06T10:25:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=762796bc9e5758df6c72253e4ec19657055cea1f'/>
<id>urn:sha1:762796bc9e5758df6c72253e4ec19657055cea1f</id>
<content type='text'>
This patch fixes two issues during media manager registration.

1. The ppa pool can be used at media manager registration. Allocate the
ppa pool before that.

2. If a media manager can't be found, this should not lead to the
device being unallocated. A media manager can be registered later, that
can manage the device. Only warn if a media manager fails
initialization.

Signed-off-by: Matias Bjørling &lt;m@bjorling.me&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: replace req queue with nvmdev for lld</title>
<updated>2015-12-07T16:14:19Z</updated>
<author>
<name>Matias Bjørling</name>
<email>m@bjorling.me</email>
</author>
<published>2015-12-06T10:25:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=16f26c3aa9b9c36a9d1092ae3258461d1008481e'/>
<id>urn:sha1:16f26c3aa9b9c36a9d1092ae3258461d1008481e</id>
<content type='text'>
In the case where a request queue is passed to the low lever lightnvm
device drive integration, the device driver might pass its admin
commands through another queue. Instead pass nvm_dev, and let the
low level drive the appropriate queue.

Reported-by: Christoph Hellwig &lt;hch@infradead.org&gt;
Signed-off-by: Matias Bjørling &lt;m@bjorling.me&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: refactor spin_unlock in gennvm_get_blk</title>
<updated>2015-12-07T16:14:19Z</updated>
<author>
<name>Wenwei Tao</name>
<email>ww.tao0320@gmail.com</email>
</author>
<published>2015-12-06T10:25:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e9b76a80f1f165cb031f62128dc07d219e29f5a3'/>
<id>urn:sha1:e9b76a80f1f165cb031f62128dc07d219e29f5a3</id>
<content type='text'>
The spin_unlock is duplicated multiple times. Jump to a single unlock
to improve the code flow.

Signed-off-by: Wenwei Tao &lt;ww.tao0320@gmail.com&gt;
Signed-off-by: Matias Bjørling &lt;m@bjorling.me&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: put blks when luns configure failed</title>
<updated>2015-12-07T16:14:19Z</updated>
<author>
<name>Wenwei Tao</name>
<email>ww.tao0320@gmail.com</email>
</author>
<published>2015-12-06T10:25:44Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d3d1a43842077c53e22dedaebfe7cb52022b18e1'/>
<id>urn:sha1:d3d1a43842077c53e22dedaebfe7cb52022b18e1</id>
<content type='text'>
Put the allocated blocks back to the free list
when the luns configure failed, to make these
blocks useable to others.

Signed-off-by: Wenwei Tao &lt;ww.tao0320@gmail.com&gt;
Signed-off-by: Matias Bjørling &lt;m@bjorling.me&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: use flags in rrpc_get_blk</title>
<updated>2015-12-07T16:14:19Z</updated>
<author>
<name>Wenwei Tao</name>
<email>ww.tao0320@gmail.com</email>
</author>
<published>2015-12-06T10:25:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f27a62995330fdc5f804acf2ebf1444f9025c879'/>
<id>urn:sha1:f27a62995330fdc5f804acf2ebf1444f9025c879</id>
<content type='text'>
rrpc_get_blk use constant 0 as the input parameter
of nvm_get_blk, this may result in getting gc block
failed unexpectedly.

Signed-off-by: Wenwei Tao &lt;ww.tao0320@gmail.com&gt;
Signed-off-by: Matias Bjørling &lt;m@bjorling.me&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: missing nvm_lock acquire</title>
<updated>2015-11-29T21:34:58Z</updated>
<author>
<name>Wenwei Tao</name>
<email>ww.tao0320@gmail.com</email>
</author>
<published>2015-11-28T15:49:28Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d0a712ceb83ebaea32d520825ee7b997f59b168f'/>
<id>urn:sha1:d0a712ceb83ebaea32d520825ee7b997f59b168f</id>
<content type='text'>
To avoid race conditions, traverse dev, media manager,
and target lists and also register, unregister entries
to/from them, should be always under the nvm_lock control.

Signed-off-by: Wenwei Tao &lt;ww.tao0320@gmail.com&gt;
Signed-off-by: Matias Bjørling &lt;m@bjorling.me&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: unconverted ppa returned in get_bb_tbl</title>
<updated>2015-11-29T21:34:58Z</updated>
<author>
<name>Matias Bjørling</name>
<email>m@bjorling.me</email>
</author>
<published>2015-11-28T15:49:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=08236c6bb2980561fba657c58fdc76f2865f236c'/>
<id>urn:sha1:08236c6bb2980561fba657c58fdc76f2865f236c</id>
<content type='text'>
The get_bb_tbl function takes ppa as a generic address, which is
converted to the ppa device address within the device driver. When
the update_bbtbl callback is called from get_bb_tbl, the device
specific ppa is used, instead of the generic ppa.

Make sure to pass the generic ppa.

Signed-off-by: Matias Bjørling &lt;m@bjorling.me&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
</feed>
