<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in generic-radix-tree.c</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>b3f9da79 - lib/generic-radix-tree.c: add preallocation</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/lib/generic-radix-tree.c#b3f9da79</link>
        <description>lib/generic-radix-tree.c: add preallocationSigned-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;

            List of files:
            /linux-6.15/lib/generic-radix-tree.c</description>
        <pubDate>Sun, 11 Aug 2024 03:14:44 +0000</pubDate>
        <dc:creator>Kent Overstreet &lt;kent.overstreet@linux.dev&gt;</dc:creator>
    </item>
<item>
        <title>f6594633 - lib/generic-radix-tree.c: genradix_ptr_inlined()</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/lib/generic-radix-tree.c#f6594633</link>
        <description>lib/generic-radix-tree.c: genradix_ptr_inlined()Provide an inlined fast pathSigned-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;

            List of files:
            /linux-6.15/lib/generic-radix-tree.c</description>
        <pubDate>Mon, 17 Jun 2024 23:00:33 +0000</pubDate>
        <dc:creator>Kent Overstreet &lt;kent.overstreet@linux.dev&gt;</dc:creator>
    </item>
<item>
        <title>b2f11c6f - lib/generic-radix-tree.c: Fix rare race in __genradix_ptr_alloc()</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/lib/generic-radix-tree.c#b2f11c6f</link>
        <description>lib/generic-radix-tree.c: Fix rare race in __genradix_ptr_alloc()If we need to increase the tree depth, allocate a new node, and thenrace with another thread that increased the tree depth before us, we&apos;llstill have a preallocated node that might be used later.If we then use that node for a new non-root node, it&apos;ll still have apointer to the old root instead of being zeroed - fix this by zeroing itin the cmpxchg failure path.Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;

            List of files:
            /linux-6.15/lib/generic-radix-tree.c</description>
        <pubDate>Sun, 11 Aug 2024 01:04:35 +0000</pubDate>
        <dc:creator>Kent Overstreet &lt;kent.overstreet@linux.dev&gt;</dc:creator>
    </item>
<item>
        <title>3a319a24 - lib/generic-radix-tree.c: Make nodes more reasonably sized</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/lib/generic-radix-tree.c#3a319a24</link>
        <description>lib/generic-radix-tree.c: Make nodes more reasonably sizedthis code originally used the page allocator directly, but most codeshouldn&apos;t do that - PAGE_SIZE varies with architecture, and slab isfaster.4k is also on the large side for typical usage, 512 bytes is a betterchoice for typical usage that might be somewhat sparse.Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;

            List of files:
            /linux-6.15/lib/generic-radix-tree.c</description>
        <pubDate>Fri, 08 Mar 2024 03:32:06 +0000</pubDate>
        <dc:creator>Kent Overstreet &lt;kent.overstreet@linux.dev&gt;</dc:creator>
    </item>
<item>
        <title>73badee4 - lib/generic-radix-tree.c: Add peek_prev()</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/lib/generic-radix-tree.c#73badee4</link>
        <description>lib/generic-radix-tree.c: Add peek_prev()This patch adds genradix_peek_prev(), genradix_iter_rewind(), andgenradix_for_each_reverse(), for iterating backwards over a genericradix tree.Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;

            List of files:
            /linux-6.15/lib/generic-radix-tree.c</description>
        <pubDate>Tue, 12 Sep 2023 05:17:22 +0000</pubDate>
        <dc:creator>Kent Overstreet &lt;kent.overstreet@linux.dev&gt;</dc:creator>
    </item>
<item>
        <title>9492261f - lib/generic-radix-tree.c: Don&apos;t overflow in peek()</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/lib/generic-radix-tree.c#9492261f</link>
        <description>lib/generic-radix-tree.c: Don&apos;t overflow in peek()When we started spreading new inode numbers throughout most of the 64bit inode space, that triggered some corner case bugs, in particularsome integer overflows related to the radix tree code. Oops.Signed-off-by: Kent Overstreet &lt;kent.overstreet@gmail.com&gt;

            List of files:
            /linux-6.15/lib/generic-radix-tree.c</description>
        <pubDate>Sat, 13 Feb 2021 01:11:25 +0000</pubDate>
        <dc:creator>Kent Overstreet &lt;kent.overstreet@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>3c52b0af - lib/generic-radix-tree.c: add kmemleak annotations</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/lib/generic-radix-tree.c#3c52b0af</link>
        <description>lib/generic-radix-tree.c: add kmemleak annotationsKmemleak is falsely reporting a leak of the slab allocation insctp_stream_init_ext():  BUG: memory leak  unreferenced object 0xffff8881114f5d80 (size 96):   comm &quot;syz-executor934&quot;, pid 7160, jiffies 4294993058 (age 31.950s)   hex dump (first 32 bytes):     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................   backtrace:     [&lt;00000000ce7a1326&gt;] kmemleak_alloc_recursive  include/linux/kmemleak.h:55 [inline]     [&lt;00000000ce7a1326&gt;] slab_post_alloc_hook mm/slab.h:439 [inline]     [&lt;00000000ce7a1326&gt;] slab_alloc mm/slab.c:3326 [inline]     [&lt;00000000ce7a1326&gt;] kmem_cache_alloc_trace+0x13d/0x280 mm/slab.c:3553     [&lt;000000007abb7ac9&gt;] kmalloc include/linux/slab.h:547 [inline]     [&lt;000000007abb7ac9&gt;] kzalloc include/linux/slab.h:742 [inline]     [&lt;000000007abb7ac9&gt;] sctp_stream_init_ext+0x2b/0xa0  net/sctp/stream.c:157     [&lt;0000000048ecb9c1&gt;] sctp_sendmsg_to_asoc+0x946/0xa00  net/sctp/socket.c:1882     [&lt;000000004483ca2b&gt;] sctp_sendmsg+0x2a8/0x990 net/sctp/socket.c:2102     [...]But it&apos;s freed later.  Kmemleak misses the allocation because itspointer is stored in the generic radix tree sctp_stream::out, and thegeneric radix tree uses raw pages which aren&apos;t tracked by kmemleak.Fix this by adding the kmemleak hooks to the generic radix tree code.Link: http://lkml.kernel.org/r/20191004065039.727564-1-ebiggers@kernel.orgSigned-off-by: Eric Biggers &lt;ebiggers@google.com&gt;Reported-by: &lt;syzbot+7f3b6b106be8dcdcdeec@syzkaller.appspotmail.com&gt;Reviewed-by: Marcelo Ricardo Leitner &lt;marcelo.leitner@gmail.com&gt;Acked-by: Neil Horman &lt;nhorman@tuxdriver.com&gt;Reviewed-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;Cc: Kent Overstreet &lt;kent.overstreet@gmail.com&gt;Cc: Vlad Yasevich &lt;vyasevich@gmail.com&gt;Cc: Xin Long &lt;lucien.xin@gmail.com&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/lib/generic-radix-tree.c</description>
        <pubDate>Mon, 14 Oct 2019 21:11:54 +0000</pubDate>
        <dc:creator>Eric Biggers &lt;ebiggers@google.com&gt;</dc:creator>
    </item>
<item>
        <title>e3f4faa4 - lib/generic-radix-tree.c: make 2 functions static inline</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/lib/generic-radix-tree.c#e3f4faa4</link>
        <description>lib/generic-radix-tree.c: make 2 functions static inlineWhen building with W=1, we get some warnings:l  CC      lib/generic-radix-tree.olib/generic-radix-tree.c:39:10: warning: no previous prototype for &apos;genradix_root_to_depth&apos; [-Wmissing-prototypes]   39 | unsigned genradix_root_to_depth(struct genradix_root *r)      |          ^~~~~~~~~~~~~~~~~~~~~~lib/generic-radix-tree.c:44:23: warning: no previous prototype for &apos;genradix_root_to_node&apos; [-Wmissing-prototypes]   44 | struct genradix_node *genradix_root_to_node(struct genradix_root *r)      |                       ^~~~~~~~~~~~~~~~~~~~~They&apos;re not used anywhere else, so make them static inline.Link: http://lkml.kernel.org/r/46923.1565236485@turing-policeSigned-off-by: Valdis Kletnieks &lt;valdis.kletnieks@vt.edu&gt;Cc: Kent Overstreet &lt;kent.overstreet@gmail.com&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/lib/generic-radix-tree.c</description>
        <pubDate>Wed, 25 Sep 2019 23:46:23 +0000</pubDate>
        <dc:creator>Valdis Kletnieks &lt;valdis.kletnieks@vt.edu&gt;</dc:creator>
    </item>
<item>
        <title>ba20ba2e - generic radix trees</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/lib/generic-radix-tree.c#ba20ba2e</link>
        <description>generic radix treesVery simple radix tree implementation that supports storing arbitrarysize entries, up to PAGE_SIZE - upcoming patches will convert existingflex_array users to genradixes.  The new genradix code has a muchsimpler API and implementation, and doesn&apos;t have a hard limit on thenumber of elements like flex_array does.Link: http://lkml.kernel.org/r/20181217131929.11727-5-kent.overstreet@gmail.comSigned-off-by: Kent Overstreet &lt;kent.overstreet@gmail.com&gt;Cc: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;Cc: Al Viro &lt;viro@zeniv.linux.org.uk&gt;Cc: Dave Hansen &lt;dave.hansen@intel.com&gt;Cc: Eric Paris &lt;eparis@parisplace.org&gt;Cc: Marcelo Ricardo Leitner &lt;marcelo.leitner@gmail.com&gt;Cc: Matthew Wilcox &lt;willy@infradead.org&gt;Cc: Neil Horman &lt;nhorman@tuxdriver.com&gt;Cc: Paul Moore &lt;paul@paul-moore.com&gt;Cc: Pravin B Shelar &lt;pshelar@ovn.org&gt;Cc: Shaohua Li &lt;shli@kernel.org&gt;Cc: Stephen Smalley &lt;sds@tycho.nsa.gov&gt;Cc: Vlad Yasevich &lt;vyasevich@gmail.com&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/lib/generic-radix-tree.c</description>
        <pubDate>Tue, 12 Mar 2019 06:31:14 +0000</pubDate>
        <dc:creator>Kent Overstreet &lt;kent.overstreet@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
