<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/lightnvm, branch v4.11.5</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v4.11.5</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v4.11.5'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2017-02-15T15:27:21+00:00</updated>
<entry>
<title>lightnvm: set default lun range when no luns are specified</title>
<updated>2017-02-15T15:27:21+00:00</updated>
<author>
<name>Matias Bjørling</name>
<email>matias@cnexlabs.com</email>
</author>
<published>2017-02-15T15:25:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6732c7401035c8464fd4ab5ff2e1bf86e5fcd74c'/>
<id>urn:sha1:6732c7401035c8464fd4ab5ff2e1bf86e5fcd74c</id>
<content type='text'>
The create target ioctl takes a lun begin and lun end parameter, which
defines the range of luns to initialize a target with. If the user does
not set the parameters, it default to only using lun 0. Instead,
defaults to use all luns in the OCSSD, as it is the usual behaviour
users want.

Signed-off-by: Matias Bjørling &lt;matias@cnexlabs.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: fix off-by-one error on target initialization</title>
<updated>2017-02-15T15:27:19+00:00</updated>
<author>
<name>Matias Bjørling</name>
<email>matias@cnexlabs.com</email>
</author>
<published>2017-02-15T15:25:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0e5ffd1cb5f7ce19f23cc829d5dc3ebb1491570f'/>
<id>urn:sha1:0e5ffd1cb5f7ce19f23cc829d5dc3ebb1491570f</id>
<content type='text'>
If one specifies the end lun id to be the absolute number of luns,
without taking zero indexing into account, the lightnvm core will pass
the off-by-one end lun id to target creation, which then panics during
nvm_ioctl_dev_create.

Signed-off-by: Matias Bjørling &lt;matias@cnexlabs.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: allow targets to use sysfs</title>
<updated>2017-01-31T15:32:13+00:00</updated>
<author>
<name>Javier González</name>
<email>jg@lightnvm.io</email>
</author>
<published>2017-01-31T12:17:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=9a69b0ed6257ae5e71c99bf21ce53f98c558476a'/>
<id>urn:sha1:9a69b0ed6257ae5e71c99bf21ce53f98c558476a</id>
<content type='text'>
In order to register through the sysfs interface, a driver needs to know
its kobject. On a disk structure, this happens when the partition
information is added (device_add_disk), which for lightnvm takes place
after the target has been initialized. This means that on target
initialization, the kboject has not been created yet.

This patch adds a target function to let targets initialize their own
kboject as a child of the disk kobject.

Signed-off-by: Javier González &lt;javier@cnexlabs.com&gt;
Added exit typedef and passed gendisk instead of void pointer for exit.
Signed-off-by: Matias Bjørling &lt;matias@cnexlabs.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: free properly on target creation error</title>
<updated>2017-01-31T15:32:13+00:00</updated>
<author>
<name>Javier González</name>
<email>jg@lightnvm.io</email>
</author>
<published>2017-01-31T12:17:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=deccf5a52ea59843f5575cb49fe532c7cb8801e4'/>
<id>urn:sha1:deccf5a52ea59843f5575cb49fe532c7cb8801e4</id>
<content type='text'>
Fix a memory leak when target creation fails. More specifically, free
the entire device structure given to the target (tgt_dev).

Signed-off-by: Javier González &lt;javier@cnexlabs.com&gt;
Signed-off-by: Matias Bjørling &lt;matias@cnexlabs.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: use end_io callback instead of instance</title>
<updated>2017-01-31T15:32:13+00:00</updated>
<author>
<name>Matias Bjørling</name>
<email>matias@cnexlabs.com</email>
</author>
<published>2017-01-31T12:17:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=06894efea706b3cd4ce31e341ec51b4c62c34a86'/>
<id>urn:sha1:06894efea706b3cd4ce31e341ec51b4c62c34a86</id>
<content type='text'>
When the lightnvm core had the "gennvm" layer between the device and the
target, there was a need for the core to be able to figure out which
target it should send an end_io callback to. Leading to a "double"
end_io, first for the media manager instance, and then for the target
instance. Now that core and gennvm is merged, there is no longer a need
for this, and a single end_io callback will do.

Signed-off-by: Matias Bjørling &lt;matias@cnexlabs.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: reduce number of nvm_id groups to one</title>
<updated>2017-01-31T15:32:13+00:00</updated>
<author>
<name>Matias Bjørling</name>
<email>matias@cnexlabs.com</email>
</author>
<published>2017-01-31T12:17:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=19bd6fe73ca812964963aa30827cff9aae64a715'/>
<id>urn:sha1:19bd6fe73ca812964963aa30827cff9aae64a715</id>
<content type='text'>
The number of configuration groups has been limited to one in current
code, even if there is support for up to four. With the introduction
of the open-channel SSD 1.3 specification, only a single
group is exposed onwards. Reflect this in the nvm_id structure.

Signed-off-by: Matias Bjørling &lt;matias@cnexlabs.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: cleanup nvm transformation functions</title>
<updated>2017-01-31T15:32:13+00:00</updated>
<author>
<name>Matias Bjørling</name>
<email>matias@cnexlabs.com</email>
</author>
<published>2017-01-31T12:17:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=dab8ee9e8a30620a5b5f22d6c0b3749217093803'/>
<id>urn:sha1:dab8ee9e8a30620a5b5f22d6c0b3749217093803</id>
<content type='text'>
Going from target specific ppa addresses to device was accomplished by
first converting target to generic ppa addresses and generic to device
addresses. The conversion was either open-coded or used the built-in
nvm_trans_* and nvm_map_* functions for conversion. Simplify the
interface and cleanup the calls to provide clean functions that now
either take a list of ppas or a nvm_rq, and is exposed through:

 void nvm_ppa_* - target to/from device with a list of PPAs,
 void nvm_rq_* - target to/from device with a nvm_rq.

Signed-off-by: Matias Bjørling &lt;matias@cnexlabs.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: make nvm_map_* return void</title>
<updated>2017-01-31T15:32:13+00:00</updated>
<author>
<name>Matias Bjørling</name>
<email>matias@cnexlabs.com</email>
</author>
<published>2017-01-31T12:17:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=61a561d8d7d1e1cac46618d01aa3298eb447eece'/>
<id>urn:sha1:61a561d8d7d1e1cac46618d01aa3298eb447eece</id>
<content type='text'>
The only check there was done was a debugging check. Remove it and
replace the return value with void to reduce error checking.

Signed-off-by: Matias Bjørling &lt;matias@cnexlabs.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: remove nvm_get_bb_tbl and nvm_set_bb_tbl</title>
<updated>2017-01-31T15:32:13+00:00</updated>
<author>
<name>Matias Bjørling</name>
<email>matias@cnexlabs.com</email>
</author>
<published>2017-01-31T12:17:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=8f4fe008fb256649bd0e16c96a6eafa3bd916ac3'/>
<id>urn:sha1:8f4fe008fb256649bd0e16c96a6eafa3bd916ac3</id>
<content type='text'>
Since the merge of gennvm and core, there is no longer a need for the
device specific bad block functions.

Signed-off-by: Matias Bjørling &lt;matias@cnexlabs.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>lightnvm: remove nvm_submit_ppa* functions</title>
<updated>2017-01-31T15:32:13+00:00</updated>
<author>
<name>Matias Bjørling</name>
<email>matias@cnexlabs.com</email>
</author>
<published>2017-01-31T12:17:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=583b7058b2e8071f59646c8fb027f6c3597417ac'/>
<id>urn:sha1:583b7058b2e8071f59646c8fb027f6c3597417ac</id>
<content type='text'>
The nvm_submit_ppa* functions are no longer needed after gennvm and core
have been merged.

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