<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/ewah, branch v2.26.1</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.26.1</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.26.1'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2020-03-02T23:07:18Z</updated>
<entry>
<title>Merge branch 'jk/object-filter-with-bitmap'</title>
<updated>2020-03-02T23:07:18Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2020-03-02T23:07:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=0df82d99dae85dbd4f667e95020a146ea0167975'/>
<id>urn:sha1:0df82d99dae85dbd4f667e95020a146ea0167975</id>
<content type='text'>
The object reachability bitmap machinery and the partial cloning
machinery were not prepared to work well together, because some
object-filtering criteria that partial clones use inherently rely
on object traversal, but the bitmap machinery is an optimization
to bypass that object traversal.  There however are some cases
where they can work together, and they were taught about them.

* jk/object-filter-with-bitmap:
  rev-list --count: comment on the use of count_right++
  pack-objects: support filters with bitmaps
  pack-bitmap: implement BLOB_LIMIT filtering
  pack-bitmap: implement BLOB_NONE filtering
  bitmap: add bitmap_unset() function
  rev-list: use bitmap filters for traversal
  pack-bitmap: basic noop bitmap filter infrastructure
  rev-list: allow commit-only bitmap traversals
  t5310: factor out bitmap traversal comparison
  rev-list: allow bitmaps when counting objects
  rev-list: make --count work with --objects
  rev-list: factor out bitmap-optimized routines
  pack-bitmap: refuse to do a bitmap traversal with pathspecs
  rev-list: fallback to non-bitmap traversal when filtering
  pack-bitmap: fix leak of haves/wants object lists
  pack-bitmap: factor out type iterator initialization
</content>
</entry>
<entry>
<title>bitmap: add bitmap_unset() function</title>
<updated>2020-02-14T18:46:22Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2020-02-14T18:22:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=cc4aa28506e079e0c17cfbe78743530795803ea8'/>
<id>urn:sha1:cc4aa28506e079e0c17cfbe78743530795803ea8</id>
<content type='text'>
We've never needed to unset an individual bit in a bitmap until now.
Typically they start with all bits unset and we bitmap_set() them, or we
are applying another bitmap as a mask. But the easiest way to apply an
object filter to a bitmap result will be to unset the individual bits.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ewah/bitmap: introduce bitmap_word_alloc()</title>
<updated>2020-01-23T18:51:50Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2019-12-18T11:25:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=14fbd260442b14813e142f762050313daee1f18d'/>
<id>urn:sha1:14fbd260442b14813e142f762050313daee1f18d</id>
<content type='text'>
In a following commit we will need to allocate a variable
number of bitmap words, instead of always 32, so let's add
bitmap_word_alloc() for this purpose.

Note that we have to adjust the block growth in bitmap_set(),
since a caller could now use an initial size of "0" (we don't
plan to do that, but it doesn't hurt to be defensive).

Helped-by: Jonathan Tan &lt;jonathantanmy@google.com&gt;
Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Christian Couder &lt;chriscool@tuxfamily.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ewok_rlw.h: add missing 'inline' to function definition</title>
<updated>2018-10-29T01:14:19Z</updated>
<author>
<name>Ramsay Jones</name>
<email>ramsay@ramsayjones.plus.com</email>
</author>
<published>2018-10-27T01:52:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=3a457a08f2cb7d2b3a7279bf2340486eb65c41e0'/>
<id>urn:sha1:3a457a08f2cb7d2b3a7279bf2340486eb65c41e0</id>
<content type='text'>
The 'ewok_rlw.h' header file contains the rlw_get_run_bit() function
definition, which is marked as 'static' but not 'inline'. At least when
compiled by gcc, with the default -O2 optimization level, the function
is actually inlined and leaves no static version in the ewah_bitmap.o
and ewah_rlw.o object files. Despite this, add the missing 'inline'
keyword to better describe the intended behaviour.

Signed-off-by: Ramsay Jones &lt;ramsay@ramsayjones.plus.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ewah/ewok_rlw.h: add missing include (hdr-check)</title>
<updated>2018-09-20T18:50:00Z</updated>
<author>
<name>Ramsay Jones</name>
<email>ramsay@ramsayjones.plus.com</email>
</author>
<published>2018-09-19T00:09:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=9623514aa8286263ad3f04ae476e13759500fc9a'/>
<id>urn:sha1:9623514aa8286263ad3f04ae476e13759500fc9a</id>
<content type='text'>
Signed-off-by: Ramsay Jones &lt;ramsay@ramsayjones.plus.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ewah: delete unused 'rlwit_discharge_empty()'</title>
<updated>2018-06-21T16:39:48Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2018-06-19T21:51:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c806278e0c7c0e0de5b32d013676326221b86c35'/>
<id>urn:sha1:c806278e0c7c0e0de5b32d013676326221b86c35</id>
<content type='text'>
Complete the removal of unused 'ewah bitmap' code by removing the now
unused 'rlwit_discharge_empty()' function. Also, the 'ewah_clear()'
function can now be made a file-scope static symbol.

Signed-off-by: Ramsay Jones &lt;ramsay@ramsayjones.plus.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ewah: drop ewah_serialize_native function</title>
<updated>2018-06-18T17:16:19Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2018-06-15T03:32:28Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=26675087a58e1e7dd54bc0f059ad2f831c6e3fbf'/>
<id>urn:sha1:26675087a58e1e7dd54bc0f059ad2f831c6e3fbf</id>
<content type='text'>
We don't call this function, and never have. The on-disk
bitmap format uses network-byte-order integers, meaning that
we cannot use the native-byte-order format written here.

Let's drop it in the name of simplicity.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ewah: drop ewah_deserialize function</title>
<updated>2018-06-18T17:16:19Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2018-06-15T03:31:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=caa88140d4cc9e0ac79bb5d9d6569fe7d08a93a8'/>
<id>urn:sha1:caa88140d4cc9e0ac79bb5d9d6569fe7d08a93a8</id>
<content type='text'>
We don't call this function, and in fact never have since it
was added (at least not in iterations of the ewah patches
that got merged). Instead we use ewah_read_mmap().

Let's drop the unused code.

Note to anybody who later wants to resurrect this: it does
not check for integer overflow in the ewah data size,
meaning it may be possible to convince the code to allocate
a too-small buffer and read() into it.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ewah_io: delete unused 'ewah_serialize()'</title>
<updated>2018-06-18T17:16:19Z</updated>
<author>
<name>Derrick Stolee</name>
<email>dstolee@microsoft.com</email>
</author>
<published>2018-06-15T18:27:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=83ea4e1e5997898ee98eacc61fce56cc1c614cd4'/>
<id>urn:sha1:83ea4e1e5997898ee98eacc61fce56cc1c614cd4</id>
<content type='text'>
Reported-by: Ramsay Jones &lt;ramsay@ramsayjones.plus.com&gt;
Signed-off-by: Derrick Stolee &lt;dstolee@microsoft.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ewah_bitmap: delete unused 'ewah_or()'</title>
<updated>2018-06-18T17:16:19Z</updated>
<author>
<name>Derrick Stolee</name>
<email>dstolee@microsoft.com</email>
</author>
<published>2018-06-15T18:27:50Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a9fda811fc39b69c5763c17e732ddbe7c779c4eb'/>
<id>urn:sha1:a9fda811fc39b69c5763c17e732ddbe7c779c4eb</id>
<content type='text'>
Reported-by: Ramsay Jones &lt;ramsay@ramsayjones.plus.com&gt;
Signed-off-by: Derrick Stolee &lt;dstolee@microsoft.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
