<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/mtd/ubi/ubi.h, branch linux-3.5.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.5.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.5.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2012-05-21T08:34:41Z</updated>
<entry>
<title>UBI: modify ubi_wl_flush function to clear work queue for a lnum</title>
<updated>2012-05-21T08:34:41Z</updated>
<author>
<name>Joel Reardon</name>
</author>
<published>2012-05-20T19:27:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=62f384552b6756cf1ea71f8762d1e97dc77dbd90'/>
<id>urn:sha1:62f384552b6756cf1ea71f8762d1e97dc77dbd90</id>
<content type='text'>
This patch modifies ubi_wl_flush to force the erasure of
particular volume id / logical eraseblock number pairs. Previous functionality
is preserved when passing UBI_ALL for both values. The locations where ubi_wl_flush
were called are appropriately changed: ubi_leb_erase only flushes for the
erased LEB, and ubi_create_volume forces only flushing for its volume id.
External code can call this new feature via the new function ubi_flush() added
to kapi.c, which simply passes through to ubi_wl_flush().

This was tested by disabling the call to do_work in ubi thread, which results
in the work queue remaining unless explicitly called to remove. UBIFS was
changed to call ubifs_leb_change 50 times for four different LEBs. Then the
new function was called to clear the queue: passing wrong volume ids / lnum,
correct ones, and finally UBI_ALL for both to ensure it was finally all
cleard. The work queue was dumped each time and the selective removal
of the particular LEB numbers was observed. Extra checks were enabled and
ubifs's integck was also run. Finally, the drive was repeatedly filled and
emptied to ensure that the queue was cleared normally.

Artem: amended the patch.

Signed-off-by: Joel Reardon &lt;reardonj@inf.ethz.ch&gt;
Signed-off-by: Artem Bityutskiy &lt;artem.bityutskiy@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>UBI: introduce UBI_ALL constant</title>
<updated>2012-05-21T08:34:41Z</updated>
<author>
<name>Artem Bityutskiy</name>
</author>
<published>2012-05-20T18:14:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=05a3cb7dcec5a15ed9b18a5317ba2075355c7547'/>
<id>urn:sha1:05a3cb7dcec5a15ed9b18a5317ba2075355c7547</id>
<content type='text'>
Joel will use it in his 'ubi_flush()' extention to specify all eraseblocks.
Also amend the comment for UBI_UNKNOWN - it is used beyond attaching info
structure now.

Signed-off-by: Artem Bityutskiy &lt;artem.bityutskiy@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>UBI: add lnum and vol_id to struct ubi_work</title>
<updated>2012-05-21T08:34:41Z</updated>
<author>
<name>Joel Reardon</name>
</author>
<published>2012-05-18T13:40:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d36e59e69b8be536c55d6118630f0221cee5ccee'/>
<id>urn:sha1:d36e59e69b8be536c55d6118630f0221cee5ccee</id>
<content type='text'>
This is part of a multipart patch to allow UBI to force the erasure of
particular logical eraseblock numbers. In this patch, the volume id and LEB
number are added to ubi_work data structure, and both are also passed as a
parameter to schedule erase to set it appropriately. Whenever ubi_wl_put_peb
is called, the lnum is also passed to be forwarded to schedule erase. Later,
a new ubi_sync_lnum will be added to execute immediately all work related to
that lnum.

This was tested by outputting the vol_id and lnum during the schedule of
erasure. The ubi thread was disabled and two ubifs drives on separate
partitions repeated changed a small number of LEBs. The ubi module was readded,
and all the erased LEBs, corresponding to the volumes, were added to the
schedule erase queue.

Artem: minor tweaks

Signed-off-by: Joel Reardon &lt;reardonj@inf.ethz.ch&gt;
Signed-off-by: Artem Bityutskiy &lt;artem.bityutskiy@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>UBI: add volume id struct ubi_ainf_peb</title>
<updated>2012-05-21T08:34:41Z</updated>
<author>
<name>Joel Reardon</name>
</author>
<published>2012-05-16T12:20:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6dd3bc7e6032ffb392477fadca77172c1c9e346b'/>
<id>urn:sha1:6dd3bc7e6032ffb392477fadca77172c1c9e346b</id>
<content type='text'>
This patch adds the volume id to struct ubi_ainf_peb when scanning the LEBs at
startup. PEBs now added to the erase queue will know their original LEB number
and volume id, if available, and will be -1 otherwise (for instance, if the VID
header is unreadable).

This was tested by creating an ubi device with 3 volumes and disabiling the
ubi_thread's do_work functionality. The different ubi volumes were formatted
to ubifs and had files created and erased.  The ubi modules was reloaded and
the list of LEB's added to the erased list was outputted, confirming the
volume ids and LEB numbers were appropriate.

Signed-off-by: Joel Reardon &lt;reardonj@inf.ethz.ch&gt;
Signed-off-by: Artem Bityutskiy &lt;artem.bityutskiy@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>UBI: remove scan.h</title>
<updated>2012-05-20T18:01:28Z</updated>
<author>
<name>Artem Bityutskiy</name>
</author>
<published>2012-05-18T10:00:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0479ab48bb30019820c296a081ebd70a9cc6872a'/>
<id>urn:sha1:0479ab48bb30019820c296a081ebd70a9cc6872a</id>
<content type='text'>
This file is small and it does not make sense to have it separate from where
everything else lives, so merge it with ubi.h.

Signed-off-by: Artem Bityutskiy &lt;artem.bityutskiy@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>UBI: move and rename attach_by_scanning</title>
<updated>2012-05-20T17:26:04Z</updated>
<author>
<name>Artem Bityutskiy</name>
</author>
<published>2012-05-18T09:41:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=47e1ec70b2c57f39752ae3210d89a625768f3e12'/>
<id>urn:sha1:47e1ec70b2c57f39752ae3210d89a625768f3e12</id>
<content type='text'>
Rename the 'attach_by_scanning()' function to 'ubi_attach()' and move it to
scan.c. Richard will plug his fastmap stuff there.

Signed-off-by: Artem Bityutskiy &lt;artem.bityutskiy@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>UBI: rename _init_scan functions</title>
<updated>2012-05-20T17:26:04Z</updated>
<author>
<name>Artem Bityutskiy</name>
</author>
<published>2012-05-17T18:05:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=41e0cd9d4eeff0895e66cad5c70a90ba41023ea3'/>
<id>urn:sha1:41e0cd9d4eeff0895e66cad5c70a90ba41023ea3</id>
<content type='text'>
We have a couple of initialization funcntionsn left which have "_scan" suffic -
rename them:

ubi_eba_init_scan() -&gt; ubi_eba_init()
ubi_wl_init_scan() -&gt; ubi_wl_init()

Signed-off-by: Artem Bityutskiy &lt;artem.bityutskiy@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>UBI: rename si to ai</title>
<updated>2012-05-20T17:26:02Z</updated>
<author>
<name>Artem Bityutskiy</name>
</author>
<published>2012-05-17T10:09:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a4e6042f1d073073f88e0ad6d2a7450da9a3937d'/>
<id>urn:sha1:a4e6042f1d073073f88e0ad6d2a7450da9a3937d</id>
<content type='text'>
After re-naming the 'struct ubi_scan_info' we should adjust all variables
named 'si' to something else, because 'si' stands for "scanning info".
Let's rename it to 'ai' which stands for "attaching info" which is
a bit more consistent and has the same length, which makes re-naming easy.

Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>UBI: rename struct ubi_scan_info</title>
<updated>2012-05-20T17:26:01Z</updated>
<author>
<name>Artem Bityutskiy</name>
</author>
<published>2012-05-17T04:46:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=afc15a814b9b5879ec361b76d45f68dc3b2cd4c1'/>
<id>urn:sha1:afc15a814b9b5879ec361b76d45f68dc3b2cd4c1</id>
<content type='text'>
Rename 'struct ubi_scan_info' to 'struct ubi_attach_info'. This is part
of the code re-structuring I am trying to do in order to add fastmap
in a more logical way. Fastmap can share a lot with scanning, including
the attach-time data structures, which all now have "scan" word in the
name. Let's get rid of this word.

Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>UBI: Kill data type hint</title>
<updated>2012-05-20T17:25:59Z</updated>
<author>
<name>Richard Weinberger</name>
</author>
<published>2012-05-14T15:55:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b36a261e8c0ab323d04db9cdd1f6bb4c273c4b32'/>
<id>urn:sha1:b36a261e8c0ab323d04db9cdd1f6bb4c273c4b32</id>
<content type='text'>
We do not need this feature and to our shame it even was not working
and there was a bug found very recently.
	-- Artem Bityutskiy

Without the data type hint UBI2 (fastmap) will be easier to implement.

Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
Signed-off-by: Artem Bityutskiy &lt;artem.bityutskiy@linux.intel.com&gt;
</content>
</entry>
</feed>
