<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rockbox/firmware/common, branch master</title>
<subtitle>My Rockbox tree</subtitle>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/'/>
<entry>
<title>Optimize lld_remove() a bit</title>
<updated>2017-04-13T22:59:45+00:00</updated>
<author>
<name>Michael Sevakis</name>
<email>jethead71@rockbox.org</email>
</author>
<published>2017-04-13T22:56:13+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/commit/?id=dbacee67c415abdd799580efe7949d8012739017'/>
<id>dbacee67c415abdd799580efe7949d8012739017</id>
<content type='text'>
Just need to check prev and next for NULL to know whether to mess
with the head and/or tail pointers.

Change-Id: I0aee057111e11735b7806e7214af0a6038f0ab53
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Just need to check prev and next for NULL to know whether to mess
with the head and/or tail pointers.

Change-Id: I0aee057111e11735b7806e7214af0a6038f0ab53
</pre>
</div>
</content>
</entry>
<entry>
<title>Dircache: Improve freed name memory recallocation</title>
<updated>2017-03-22T03:11:55+00:00</updated>
<author>
<name>Michael Sevakis</name>
<email>jethead71@rockbox.org</email>
</author>
<published>2017-01-18T13:29:54+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/commit/?id=bfd04df4807197261b9d36f16c5788a733129c05'/>
<id>bfd04df4807197261b9d36f16c5788a733129c05</id>
<content type='text'>
There's only a need to check every MAX_TINYNAME+1 bytes and that the
last character of the needed size 0xff in order to verify the size
of the block since the minimum indirectly-stored string is
MAX_TINYNAME+1.

Change-Id: Ic789376b8575bab9266fcd54c610db0961de5d7f
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There's only a need to check every MAX_TINYNAME+1 bytes and that the
last character of the needed size 0xff in order to verify the size
of the block since the minimum indirectly-stored string is
MAX_TINYNAME+1.

Change-Id: Ic789376b8575bab9266fcd54c610db0961de5d7f
</pre>
</div>
</content>
</entry>
<entry>
<title>Avoid having to wait for dircache builds if shut down too soon</title>
<updated>2017-03-22T01:04:36+00:00</updated>
<author>
<name>Boris Gjenero</name>
<email>boris.gjenero@gmail.com</email>
</author>
<published>2017-03-09T03:38:09+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/commit/?id=05739efe8d9df2a83b983a86d07cb0715c6d19ee'/>
<id>05739efe8d9df2a83b983a86d07cb0715c6d19ee</id>
<content type='text'>
When dircache scanning is happening in the background, the user
can shut down the device before it is complete. Then, reset_cache()
sets size to 0 before it is copied to last_size at the end of
build_volumes(). When saved last_size is zero, scanning happens in
the foreground during next startup.

Avoid shrinking the size if the build is suspended.

Change-Id: Ife133e0be0dc0dfd53a4de119f70dba014c7ee68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When dircache scanning is happening in the background, the user
can shut down the device before it is complete. Then, reset_cache()
sets size to 0 before it is copied to last_size at the end of
build_volumes(). When saved last_size is zero, scanning happens in
the foreground during next startup.

Avoid shrinking the size if the build is suspended.

Change-Id: Ife133e0be0dc0dfd53a4de119f70dba014c7ee68
</pre>
</div>
</content>
</entry>
<entry>
<title>Do some housekeeping with fat.h and SECTOR_SIZE</title>
<updated>2017-03-13T02:05:44+00:00</updated>
<author>
<name>Michael Sevakis</name>
<email>jethead71@rockbox.org</email>
</author>
<published>2017-03-13T02:05:44+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/commit/?id=6db80020b45ae22b19524b01f60d0653d70ac7ca'/>
<id>6db80020b45ae22b19524b01f60d0653d70ac7ca</id>
<content type='text'>
Many includes of fat.h are pointless. Some includes are just for
SECTOR_SIZE. Add a file 'firmware/include/fs_defines.h' for that
and to define tuneable values that were scattered amongst various
headers.

Remove some local definitions of SECTOR_SIZE since they have to be
in agreement with the rest of the fs code anyway.

(We'll see what's in fact pointless in a moment ;)

Change-Id: I9ba183bf58bd87f5c45eba7bd675c7e2c1c18ed5
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Many includes of fat.h are pointless. Some includes are just for
SECTOR_SIZE. Add a file 'firmware/include/fs_defines.h' for that
and to define tuneable values that were scattered amongst various
headers.

Remove some local definitions of SECTOR_SIZE since they have to be
in agreement with the rest of the fs code anyway.

(We'll see what's in fact pointless in a moment ;)

Change-Id: I9ba183bf58bd87f5c45eba7bd675c7e2c1c18ed5
</pre>
</div>
</content>
</entry>
<entry>
<title>Dircache: Refine name allocation and error handling.</title>
<updated>2017-03-13T01:09:16+00:00</updated>
<author>
<name>Michael Sevakis</name>
<email>jethead71@rockbox.org</email>
</author>
<published>2017-03-13T00:59:44+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/commit/?id=70c929179b80e0657e31558e34d2bc62e1176564'/>
<id>70c929179b80e0657e31558e34d2bc62e1176564</id>
<content type='text'>
* 8 bits is enough to allow 260 character base names when five
bytes is the minimum indirect storage size (0..255-&gt;5..260).

* Don't truncate anything that's too long as that can lead to
bad behavior, simply don't include the offending entry in the
parent.

* Set the .tinyname flag to 1 by default to indicate that
the entry's name doesn't need freeing. Clear it only when
allocating indirect storage.

* Rename some things to help catch all instances

Change-Id: Iff747b624acbb8e03ed26c24afdf0fc715fd9d99
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 8 bits is enough to allow 260 character base names when five
bytes is the minimum indirect storage size (0..255-&gt;5..260).

* Don't truncate anything that's too long as that can lead to
bad behavior, simply don't include the offending entry in the
parent.

* Set the .tinyname flag to 1 by default to indicate that
the entry's name doesn't need freeing. Clear it only when
allocating indirect storage.

* Rename some things to help catch all instances

Change-Id: Iff747b624acbb8e03ed26c24afdf0fc715fd9d99
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix a couple dircache oopsies.</title>
<updated>2017-03-08T16:51:34+00:00</updated>
<author>
<name>Michael Sevakis</name>
<email>jethead71@rockbox.org</email>
</author>
<published>2017-03-08T16:49:55+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/commit/?id=e3081b35cdeb1e568c61369e5b3b15b6e428d3c3'/>
<id>e3081b35cdeb1e568c61369e5b3b15b6e428d3c3</id>
<content type='text'>
Moving binding from queued to resolved was messed up if it was the
first queued one and there were other resolved files open at the
time of resolving it.

Dircache info for a directory about to be recursively scanned should
be filled before opening it. Would only affect a directory if it
happened to be opening while it was being initialized.

Change-Id: I26ccf219c382d7caf1424b5ddddc4793e74cb390
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Moving binding from queued to resolved was messed up if it was the
first queued one and there were other resolved files open at the
time of resolving it.

Dircache info for a directory about to be recursively scanned should
be filled before opening it. Would only affect a directory if it
happened to be opening while it was being initialized.

Change-Id: I26ccf219c382d7caf1424b5ddddc4793e74cb390
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove FF_CREAT and FF_EXCL flags in from file code.</title>
<updated>2017-02-14T22:54:50+00:00</updated>
<author>
<name>Michael Sevakis</name>
<email>jethead71@rockbox.org</email>
</author>
<published>2017-02-13T02:56:44+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/commit/?id=8ff1b6b6033aad55fadf076f066da5d8b7d2e631'/>
<id>8ff1b6b6033aad55fadf076f066da5d8b7d2e631</id>
<content type='text'>
These flags aren't stored for an open file because they're simply
actions for open() to take, corresponding to O_CREAT and O_EXCL.
Just pass the oflag argument along to the deeper call, with some
minor filtering.

Change-Id: Ic8bcfba718ebf4228bdc45de3088af1974820557
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These flags aren't stored for an open file because they're simply
actions for open() to take, corresponding to O_CREAT and O_EXCL.
Just pass the oflag argument along to the deeper call, with some
minor filtering.

Change-Id: Ic8bcfba718ebf4228bdc45de3088af1974820557
</pre>
</div>
</content>
</entry>
<entry>
<title>Restore dircache hookup in the database ramcache.</title>
<updated>2017-02-10T10:05:23+00:00</updated>
<author>
<name>Michael Sevakis</name>
<email>jethead71@rockbox.org</email>
</author>
<published>2017-01-18T09:39:35+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/commit/?id=7373cf518f4d4c47f49693690c2ab8ec29bb8510'/>
<id>7373cf518f4d4c47f49693690c2ab8ec29bb8510</id>
<content type='text'>
Do a few other changes to dircache and file code flags to
accomodate its demands.

Change-Id: I4742a54e8cfbe4d8b9cffb75faaf920dd907cf8a
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Do a few other changes to dircache and file code flags to
accomodate its demands.

Change-Id: I4742a54e8cfbe4d8b9cffb75faaf920dd907cf8a
</pre>
</div>
</content>
</entry>
<entry>
<title>Add some comments about the behavior of a couple path functions.</title>
<updated>2017-02-07T07:45:26+00:00</updated>
<author>
<name>Michael Sevakis</name>
<email>jethead71@rockbox.org</email>
</author>
<published>2017-02-07T07:45:26+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/commit/?id=e5042fd090f29af9d19e2f162c5ae3016ab3743e'/>
<id>e5042fd090f29af9d19e2f162c5ae3016ab3743e</id>
<content type='text'>
Critical reminders about the reasons path_dirname() and
path_basename() do certain things with a given kind of input and
how to interpret them.

Change-Id: I4e6ad29476bdd30abfb644f9360cc7dfd86298df
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Critical reminders about the reasons path_dirname() and
path_basename() do certain things with a given kind of input and
how to interpret them.

Change-Id: I4e6ad29476bdd30abfb644f9360cc7dfd86298df
</pre>
</div>
</content>
</entry>
<entry>
<title>Make sure dircache resolves outstanding references on volume root.</title>
<updated>2017-02-06T08:21:25+00:00</updated>
<author>
<name>Michael Sevakis</name>
<email>jethead71@rockbox.org</email>
</author>
<published>2017-02-06T08:20:18+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/rockbox/commit/?id=72dc23929919241a9295e5eae754b47ac358a922'/>
<id>72dc23929919241a9295e5eae754b47ac358a922</id>
<content type='text'>
If a volume root was open at the beginning of a build, its dircache
reference wouldn't be resolved on an already open volume root
directory because the call to do it was simply omitted. Nothing
horribly bad unless a root were opened at mount time and kept open
long term.

Change-Id: I09de30ff8174ad1d14eeeb9539bd23fb51b9e31a
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If a volume root was open at the beginning of a build, its dircache
reference wouldn't be resolved on an already open volume root
directory because the call to do it was simply omitted. Nothing
horribly bad unless a root were opened at mount time and kept open
long term.

Change-Id: I09de30ff8174ad1d14eeeb9539bd23fb51b9e31a
</pre>
</div>
</content>
</entry>
</feed>
