<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/stable/linux.git/fs/bcachefs/util.c, branch linux-6.9.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<id>https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/atom?h=linux-6.9.y</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/atom?h=linux-6.9.y'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/'/>
<updated>2024-04-03T18:44:18+00:00</updated>
<entry>
<title>bcachefs: Etyzinger cleanups</title>
<updated>2024-04-03T18:44:18+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-03-22T23:26:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=ca1e02f7e9a1352b3f7b04de821ae74c9e07df74'/>
<id>urn:sha1:ca1e02f7e9a1352b3f7b04de821ae74c9e07df74</id>
<content type='text'>
Pull out eytzinger.c and kill eytzinger_cmp_fn. We now provide
eytzinger0_sort and eytzinger0_sort_r, which use the standard cmp_func_t
and cmp_r_func_t callbacks.

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: time_stats: split stats-with-quantiles into a separate structure</title>
<updated>2024-03-14T01:38:01+00:00</updated>
<author>
<name>Darrick J. Wong</name>
<email>djwong@kernel.org</email>
</author>
<published>2024-02-01T20:41:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=273960b8f374b95ebd234a99607b7887f515c791'/>
<id>urn:sha1:273960b8f374b95ebd234a99607b7887f515c791</id>
<content type='text'>
Currently, struct time_stats has the optional ability to quantize the
information that it collects.  This is /probably/ useful for callers who
want to see quantized information, but it more than doubles the size of
the structure from 224 bytes to 464.  For users who don't care about
that (e.g. upcoming xfs patches) and want to avoid wasting 240 bytes per
counter, split the two into separate pieces.

Signed-off-by: Darrick J. Wong &lt;djwong@kernel.org&gt;
Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: mean_and_variance: put struct mean_and_variance_weighted on a diet</title>
<updated>2024-03-14T01:37:58+00:00</updated>
<author>
<name>Darrick J. Wong</name>
<email>djwong@kernel.org</email>
</author>
<published>2024-02-08T23:33:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=4b4f0876ab74167cc402ccd5ce9154e7dc666829'/>
<id>urn:sha1:4b4f0876ab74167cc402ccd5ce9154e7dc666829</id>
<content type='text'>
The only caller of this code (time_stats) always knows the weights and
whether or not any information has been collected.  Pass this
information into the mean and variance code so that it doesn't have to
store that information.  This reduces the structure size from 24 to 16
bytes, which shrinks each time_stats counter to 192 bytes from 208.

Signed-off-by: Darrick J. Wong &lt;djwong@kernel.org&gt;
Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: pull out time_stats.[ch]</title>
<updated>2024-03-14T01:30:35+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-03-14T00:16:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=f1ca1abfb0275db241363743ed3606b25b2b1a5c'/>
<id>urn:sha1:f1ca1abfb0275db241363743ed3606b25b2b1a5c</id>
<content type='text'>
prep work for lifting out of fs/bcachefs/

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: kill kvpmalloc()</title>
<updated>2024-03-13T22:39:12+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-02-01T11:35:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=cb6fc943b650c4f0ca2ba753531c0803c8afbb5c'/>
<id>urn:sha1:cb6fc943b650c4f0ca2ba753531c0803c8afbb5c</id>
<content type='text'>
Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: fix bch2_save_backtrace()</title>
<updated>2024-02-25T20:45:36+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-02-25T20:45:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=5197728f8182a93a07e5bf860726456322d3a908'/>
<id>urn:sha1:5197728f8182a93a07e5bf860726456322d3a908</id>
<content type='text'>
Missed a call in the previous fix.

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: time_stats: Check for last_event == 0 when updating freq stats</title>
<updated>2024-02-05T06:16:31+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-02-02T02:01:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=7b508b323b2ec45be59769bd4e4aeba729c52cf6'/>
<id>urn:sha1:7b508b323b2ec45be59769bd4e4aeba729c52cf6</id>
<content type='text'>
This fixes spurious outliers in the frequency stats.

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: Add gfp flags param to bch2_prt_task_backtrace()</title>
<updated>2024-01-22T17:37:51+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-01-22T17:25:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=612e1110d689387aab81b2727895cd307d3cbbfd'/>
<id>urn:sha1:612e1110d689387aab81b2727895cd307d3cbbfd</id>
<content type='text'>
Fixes: e6a2566f7a00 ("bcachefs: Better journal tracepoints")
Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
Reported-by: smatch
</content>
</entry>
<entry>
<title>bcachefs: Improve move_extent tracepoint</title>
<updated>2024-01-21T18:27:09+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-01-15T20:33:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=189c176c5dd324531d4cb23f172b1761e65bb0ed'/>
<id>urn:sha1:189c176c5dd324531d4cb23f172b1761e65bb0ed</id>
<content type='text'>
Also print out the data_opts, so that we can see what specifically is
being done to an extent.

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: fix memleak in bch2_split_devs</title>
<updated>2024-01-21T11:01:45+00:00</updated>
<author>
<name>Su Yue</name>
<email>glass.su@suse.com</email>
</author>
<published>2024-01-08T15:11:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=e240c1b3635e3fc7d3ba46c6fe12a0d8efb2941a'/>
<id>urn:sha1:e240c1b3635e3fc7d3ba46c6fe12a0d8efb2941a</id>
<content type='text'>
The pointer dev_name can be modified by strseq(),
then causes the memleak:

unreferenced object 0xffff9d08a2916c80 (size 32):
  comm "mount.bcachefs", pid 9090, jiffies 4295856224 (age 17.564s)
  hex dump (first 32 bytes):
    2f 64 65 76 2f 6d 61 70 70 65 72 2f 74 65 73 74  /dev/mapper/test
    2d 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00  -0..............
  backtrace:
    [&lt;00000000c5d3be7d&gt;] __kmem_cache_alloc_node+0x1f3/0x2c0
    [&lt;0000000052215d26&gt;] __kmalloc_node_track_caller+0x51/0x150
    [&lt;0000000069fea956&gt;] kstrdup+0x32/0x60
    [&lt;000000000877fcf1&gt;] bch2_split_devs+0x3f/0x150 [bcachefs]
    [&lt;000000007ee93204&gt;] bch2_mount+0xcb/0x640 [bcachefs]
    [&lt;000000002dd1e04b&gt;] legacy_get_tree+0x30/0x60
    [&lt;000000006afc31d3&gt;] vfs_get_tree+0x28/0xf0
    [&lt;000000007b0c538e&gt;] path_mount+0x475/0xb60
    [&lt;0000000092de5882&gt;] __x64_sys_mount+0x105/0x140
    [&lt;0000000054fc05d8&gt;] do_syscall_64+0x42/0xf0
    [&lt;00000000df584910&gt;] entry_SYSCALL_64_after_hwframe+0x6e/0x76

Fix it by copy pointer dev_name at beginning and free the copied
pointer at end.

Signed-off-by: Su Yue &lt;glass.su@suse.com&gt;
Reviewed-by: Brian Foster &lt;bfoster@redhat.com&gt;
Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
</feed>
