<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/erofs/utils.c, branch linux-5.12.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.12.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.12.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2020-08-03T13:04:46Z</updated>
<entry>
<title>erofs: fold in used-once helper erofs_workgroup_unfreeze_final()</title>
<updated>2020-08-03T13:04:46Z</updated>
<author>
<name>Gao Xiang</name>
</author>
<published>2020-07-29T18:02:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ee4bf86c69d1e86ee0505f4824b95a74704d433f'/>
<id>urn:sha1:ee4bf86c69d1e86ee0505f4824b95a74704d433f</id>
<content type='text'>
It's expected that erofs_workgroup_unfreeze_final() won't
be used in other places. Let's fold it to simplify the code.

Link: https://lore.kernel.org/r/20200729180235.25443-1-hsiangkao@redhat.com
Reviewed-by: Chao Yu &lt;yuchao0@huawei.com&gt;
Signed-off-by: Gao Xiang &lt;hsiangkao@redhat.com&gt;
</content>
</entry>
<entry>
<title>erofs: Replace HTTP links with HTTPS ones</title>
<updated>2020-08-03T13:04:29Z</updated>
<author>
<name>Alexander A. Klimov</name>
</author>
<published>2020-07-13T13:09:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=592e7cd00bb9d48742ff402b74b79244e4a765dd'/>
<id>urn:sha1:592e7cd00bb9d48742ff402b74b79244e4a765dd</id>
<content type='text'>
Rationale:
Reduces attack surface on kernel devs opening the links for MITM
as HTTPS traffic is much harder to manipulate.

Deterministic algorithm:
For each file:
  If not .svg:
    For each line:
      If doesn't contain `\bxmlns\b`:
        For each link, `\bhttp://[^# \t\r\n]*(?:\w|/)`:
	  If neither `\bgnu\.org/license`, nor `\bmozilla\.org/MPL\b`:
            If both the HTTP and HTTPS versions
            return 200 OK and serve the same content:
              Replace HTTP with HTTPS.

Reviewed-by: Gao Xiang &lt;hsiangkao@redhat.com&gt;
Reviewed-by: Chao Yu &lt;yuchao0@huawei.com&gt;
Signed-off-by: Alexander A. Klimov &lt;grandmaster@al2klimov.de&gt;
Link: https://lore.kernel.org/r/20200713130944.34419-1-grandmaster@al2klimov.de
Signed-off-by: Gao Xiang &lt;hsiangkao@redhat.com&gt;
</content>
</entry>
<entry>
<title>erofs: correct the remaining shrink objects</title>
<updated>2020-03-03T15:39:29Z</updated>
<author>
<name>Gao Xiang</name>
</author>
<published>2020-02-26T08:10:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9d5a09c6f3b5fb85af20e3a34827b5d27d152b34'/>
<id>urn:sha1:9d5a09c6f3b5fb85af20e3a34827b5d27d152b34</id>
<content type='text'>
The remaining count should not include successful
shrink attempts.

Fixes: e7e9a307be9d ("staging: erofs: introduce workstation for decompression")
Cc: &lt;stable@vger.kernel.org&gt; # 4.19+
Link: https://lore.kernel.org/r/20200226081008.86348-1-gaoxiang25@huawei.com
Reviewed-by: Chao Yu &lt;yuchao0@huawei.com&gt;
Signed-off-by: Gao Xiang &lt;gaoxiang25@huawei.com&gt;
</content>
</entry>
<entry>
<title>erofs: convert workstn to XArray</title>
<updated>2020-03-03T15:27:25Z</updated>
<author>
<name>Gao Xiang</name>
</author>
<published>2020-02-20T02:46:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=64094a04414f0b2fb7e31e1c57a67e91e390d66c'/>
<id>urn:sha1:64094a04414f0b2fb7e31e1c57a67e91e390d66c</id>
<content type='text'>
XArray has friendly APIs and it will replace the old radix
tree in the near future.

This convert makes use of __xa_cmpxchg when inserting on
a just inserted item by other thread. In detail, instead
of totally looking up again as what we did for the old
radix tree, it will try to legitimize the current in-tree
item in the XArray therefore more effective.

In addition, naming is rather a challenge for non-English
speaker like me. The basic idea of workstn is to provide
a runtime sparse array with items arranged in the physical
block number order. Such items (was called workgroup) can be
used to record compress clusters or for later new features.

However, both workgroup and workstn seem not good names from
whatever point of view, so I'd like to rename them as pslot
and managed_pslots to stand for physical slots. This patch
handles the second as a part of the radix tree convert.

Cc: Matthew Wilcox &lt;willy@infradead.org&gt;
Link: https://lore.kernel.org/r/20200220024642.91529-1-gaoxiang25@huawei.com
Reviewed-by: Chao Yu &lt;yuchao0@huawei.com&gt;
Signed-off-by: Gao Xiang &lt;gaoxiang25@huawei.com&gt;
</content>
</entry>
<entry>
<title>erofs: remove void tagging/untagging of workgroup pointers</title>
<updated>2020-01-07T02:09:21Z</updated>
<author>
<name>Vladimir Zapolskiy</name>
</author>
<published>2020-01-02T12:01:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e3915ad94bfa0e2c1818837af618e9adec74eb1b'/>
<id>urn:sha1:e3915ad94bfa0e2c1818837af618e9adec74eb1b</id>
<content type='text'>
Because workgroup pointers inserted to a radix tree are always tagged with
a single value of 0, it is possible to remove tagging and untagging of the
pointers completely.

Signed-off-by: Vladimir Zapolskiy &lt;vladimir@tuxera.com&gt;
Link: https://lore.kernel.org/r/20200102120118.14979-4-vladimir@tuxera.com
Reviewed-by: Chao Yu &lt;yuchao0@huawei.com&gt;
Signed-off-by: Gao Xiang &lt;gaoxiang25@huawei.com&gt;
</content>
</entry>
<entry>
<title>erofs: remove unused tag argument while registering a workgroup</title>
<updated>2020-01-07T02:08:45Z</updated>
<author>
<name>Vladimir Zapolskiy</name>
</author>
<published>2020-01-02T12:01:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e5e9a432036a40756db171e7b22ee63e69c41ef1'/>
<id>urn:sha1:e5e9a432036a40756db171e7b22ee63e69c41ef1</id>
<content type='text'>
All workgroups are registered with tag value set to 0, to simplify
erofs_register_workgroup() interface the tag argument can be removed,
if its only value is sent down to the function body.

Signed-off-by: Vladimir Zapolskiy &lt;vladimir@tuxera.com&gt;
Link: https://lore.kernel.org/r/20200102120118.14979-3-vladimir@tuxera.com
Reviewed-by: Chao Yu &lt;yuchao0@huawei.com&gt;
Signed-off-by: Gao Xiang &lt;gaoxiang25@huawei.com&gt;
</content>
</entry>
<entry>
<title>erofs: remove unused tag argument while finding a workgroup</title>
<updated>2020-01-07T02:08:38Z</updated>
<author>
<name>Vladimir Zapolskiy</name>
</author>
<published>2020-01-02T12:01:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=997626d8383871862d0774c50a351aa98dacc0eb'/>
<id>urn:sha1:997626d8383871862d0774c50a351aa98dacc0eb</id>
<content type='text'>
It is feasible to simplify erofs_find_workgroup() interface by removing
an unused function argument. While formally the argument is used in the
function itself, its assigned value is ignored on the caller side.

Signed-off-by: Vladimir Zapolskiy &lt;vladimir@tuxera.com&gt;
Link: https://lore.kernel.org/r/20200102120118.14979-2-vladimir@tuxera.com
Reviewed-by: Chao Yu &lt;yuchao0@huawei.com&gt;
Signed-off-by: Gao Xiang &lt;gaoxiang25@huawei.com&gt;
</content>
</entry>
<entry>
<title>erofs: get rid of __stagingpage_alloc helper</title>
<updated>2019-11-24T02:57:48Z</updated>
<author>
<name>Gao Xiang</name>
</author>
<published>2019-11-21T13:59:54Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5ddcee1f3a1ccaccb31bc17080f75a0bb13b4906'/>
<id>urn:sha1:5ddcee1f3a1ccaccb31bc17080f75a0bb13b4906</id>
<content type='text'>
Now open code is much cleaner due to iterative development.

Link: https://lore.kernel.org/r/20191124025217.12345-1-hsiangkao@aol.com
Reviewed-by: Chao Yu &lt;yuchao0@huawei.com&gt;
Signed-off-by: Gao Xiang &lt;gaoxiang25@huawei.com&gt;
</content>
</entry>
<entry>
<title>erofs: remove dead code since managed cache is now built-in</title>
<updated>2019-10-15T16:07:56Z</updated>
<author>
<name>Gao Xiang</name>
</author>
<published>2019-10-08T12:56:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bda17a4577da729d17b8f87bf3279b9db201d8ca'/>
<id>urn:sha1:bda17a4577da729d17b8f87bf3279b9db201d8ca</id>
<content type='text'>
After commit 4279f3f9889f ("staging: erofs: turn cache
strategies into mount options"), cache strategies are
changed into mount options rather than old build configs.

Let's kill useless code for obsoleted build options.

Link: https://lore.kernel.org/r/20191008125616.183715-2-gaoxiang25@huawei.com
Reviewed-by: Chao Yu &lt;yuchao0@huawei.com&gt;
Signed-off-by: Gao Xiang &lt;gaoxiang25@huawei.com&gt;
</content>
</entry>
<entry>
<title>erofs: remove all likely/unlikely annotations</title>
<updated>2019-08-30T07:02:02Z</updated>
<author>
<name>Gao Xiang</name>
</author>
<published>2019-08-29T16:38:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8d8a09b093d7073465c824f74caf315c073d3875'/>
<id>urn:sha1:8d8a09b093d7073465c824f74caf315c073d3875</id>
<content type='text'>
As Dan Carpenter suggested [1], I have to remove
all erofs likely/unlikely annotations.

[1] https://lore.kernel.org/linux-fsdevel/20190829154346.GK23584@kadam/
Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Gao Xiang &lt;gaoxiang25@huawei.com&gt;
Link: https://lore.kernel.org/r/20190829163827.203274-1-gaoxiang25@huawei.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
