<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/tools/testing/radix-tree/Makefile, branch linux-4.11.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.11.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.11.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2017-03-07T18:18:24Z</updated>
<entry>
<title>radix tree test suite: Specify -m32 in LDFLAGS too</title>
<updated>2017-03-07T18:18:24Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2017-03-03T17:28:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f0f3f2d0a3e0f7c48163fd8b45f5909d46e7f371'/>
<id>urn:sha1:f0f3f2d0a3e0f7c48163fd8b45f5909d46e7f371</id>
<content type='text'>
Michael's patch to use the default make rule for linking and the patch
from Rehas to use -m32 if building a 32-bit test-suite on a 64-bit
platform don't work well together.

Reported-by: Rehas Sachdeva &lt;aquannie@gmail.com&gt;
Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
</content>
</entry>
<entry>
<title>radix tree test suite: Depend on Makefile and quieten grep</title>
<updated>2017-03-07T18:18:22Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2017-03-02T17:24:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3f1b6f9d49ba5a209d745fa2448657d8b66ed0c0'/>
<id>urn:sha1:3f1b6f9d49ba5a209d745fa2448657d8b66ed0c0</id>
<content type='text'>
Changing the CFLAGS in the Makefile didn't always lead to a
recompilation because the OFILES didn't depend on the Makefile.
Also, after doing make clean, grep would still complain about
a missing map-shift.h; we need -s as well as -q.

Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
</content>
</entry>
<entry>
<title>radix tree test suite: Fix build with --as-needed</title>
<updated>2017-03-07T18:18:22Z</updated>
<author>
<name>Michael Ellerman</name>
</author>
<published>2017-03-02T09:29:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=284d96a494d705b9c5330c900e976fceda885b9f'/>
<id>urn:sha1:284d96a494d705b9c5330c900e976fceda885b9f</id>
<content type='text'>
Currently the radix tree test suite doesn't build with toolchains that
use --as-needed by default, for example Ubuntu's:

  cc -I. -I../../include -g -O2 -Wall -D_LGPL_SOURCE -fsanitize=address -lpthread -lurcu main.o ... -o main
  /usr/bin/ld: regression1.o: undefined reference to symbol 'pthread_join@@GLIBC_2.17'
  /lib/powerpc64le-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line
  collect2: error: ld returned 1 exit status

This is caused by the custom makefile rules placing LDFLAGS before the
.o files that need the libraries.

We could fix it by using --no-as-needed, or rewriting the custom rules.
But we can also just drop the custom rules and move the libraries to
LDLIBS, and then the default rules work correctly - with the one caveat
that we need to add -fsanitize=address to LDFLAGS because that must be
passed to the linker as well as the compiler.

Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
</content>
</entry>
<entry>
<title>radix tree test suite: Build 32 bit binaries</title>
<updated>2017-03-07T18:18:21Z</updated>
<author>
<name>Rehas Sachdeva</name>
</author>
<published>2017-02-27T13:49:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c4634b08d9eb9c13be2296230bf33c79390dbf9c'/>
<id>urn:sha1:c4634b08d9eb9c13be2296230bf33c79390dbf9c</id>
<content type='text'>
Add option 'make BUILD=32' for building 32-bit binaries.

Signed-off-by: Rehas Sachdeva &lt;aquannie@gmail.com&gt;
Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
</content>
</entry>
<entry>
<title>radix tree test suite: Add config option for map shift</title>
<updated>2017-02-14T02:44:10Z</updated>
<author>
<name>Rehas Sachdeva</name>
</author>
<published>2017-02-13T21:16:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c6ce3e2fe3dacda5e8afb0036c814ae9c3fee9b9'/>
<id>urn:sha1:c6ce3e2fe3dacda5e8afb0036c814ae9c3fee9b9</id>
<content type='text'>
Add config option "SHIFT=&lt;value&gt;" to Makefile for building test suite
with any value of RADIX_TREE_MAP_SHIFT between 3 and 7 inclusive.

Signed-off-by: Rehas Sachdeva &lt;aquannie@gmail.com&gt;
[mawilcox@microsoft.com: .gitignore, quieten grep, remove on clean]
Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
</content>
</entry>
<entry>
<title>radix tree test suite: Enable address sanitizer</title>
<updated>2017-02-14T02:44:06Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2017-01-28T15:03:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=829f83d3653ef7105187b0110887dbfd46a30ce4'/>
<id>urn:sha1:829f83d3653ef7105187b0110887dbfd46a30ce4</id>
<content type='text'>
I was looking for a memory scribble and instead found a pile of memory
leaks.  Ensure no more occur in future.

Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
Reviewed-by: Rehas Sachdeva &lt;aquannie@gmail.com&gt;
</content>
</entry>
<entry>
<title>radix tree test suite: Build separate binaries for some tests</title>
<updated>2017-02-14T02:44:02Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2016-12-19T03:56:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8ac04868315c6ffcb2c5a5ad9cd5cec61cad3576'/>
<id>urn:sha1:8ac04868315c6ffcb2c5a5ad9cd5cec61cad3576</id>
<content type='text'>
To allow developers to run a subset of tests, build separate multiorder
and idr-test binaries which will run just the tests in those files.

Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
Reviewed-by: Rehas Sachdeva &lt;aquannie@gmail.com&gt;
</content>
</entry>
<entry>
<title>Reimplement IDR and IDA using the radix tree</title>
<updated>2017-02-14T02:44:01Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2016-12-20T15:27:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0a835c4f090af2c76fc2932c539c3b32fd21fbbb'/>
<id>urn:sha1:0a835c4f090af2c76fc2932c539c3b32fd21fbbb</id>
<content type='text'>
The IDR is very similar to the radix tree.  It has some functionality that
the radix tree did not have (alloc next free, cyclic allocation, a
callback-based for_each, destroy tree), which is readily implementable on
top of the radix tree.  A few small changes were needed in order to use a
tag to represent nodes with free space below them.  More extensive
changes were needed to support storing NULL as a valid entry in an IDR.
Plain radix trees still interpret NULL as a not-present entry.

The IDA is reimplemented as a client of the newly enhanced radix tree.  As
in the current implementation, it uses a bitmap at the last level of the
tree.

Signed-off-by: Matthew Wilcox &lt;willy@infradead.org&gt;
Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
Tested-by: Kirill A. Shutemov &lt;kirill.shutemov@linux.intel.com&gt;
Cc: Konstantin Khlebnikov &lt;koct9i@gmail.com&gt;
Cc: Ross Zwisler &lt;ross.zwisler@linux.intel.com&gt;
Cc: Tejun Heo &lt;tj@kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>radix tree test suite: Use vpath to find lib files</title>
<updated>2017-02-13T21:09:42Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2016-12-29T03:53:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=991af734c46d726f1c62cabd1681563beb533e14'/>
<id>urn:sha1:991af734c46d726f1c62cabd1681563beb533e14</id>
<content type='text'>
Instead of specifying how to build find_bit.o from lib/find_bit.o,
use vpath to tell make where to find find_bit.c.

Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
Reviewed-by: Rehas Sachdeva &lt;aquannie@gmail.com&gt;
</content>
</entry>
<entry>
<title>radix tree test suite: Depend on tools/include/asm files</title>
<updated>2017-02-13T21:08:47Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2016-12-19T16:09:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=43a30c2a3171e0f92c28dfd31ca3eb7d9cc72b26'/>
<id>urn:sha1:43a30c2a3171e0f92c28dfd31ca3eb7d9cc72b26</id>
<content type='text'>
Changing tools/include/asm/bug.h showed a missing dependency in the
Makefile.

Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
Reviewed-by: Rehas Sachdeva &lt;aquannie@gmail.com&gt;
</content>
</entry>
</feed>
