<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/fs/bcachefs/alloc_background.c, branch v6.12.80</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.12.80</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.12.80'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2024-10-18T04:49:48+00:00</updated>
<entry>
<title>bcachefs: Don't use commit_do() unnecessarily</title>
<updated>2024-10-18T04:49:48+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-10-14T01:53:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a0d11feefb1998204f095fa0400024403d233108'/>
<id>urn:sha1:a0d11feefb1998204f095fa0400024403d233108</id>
<content type='text'>
Using commit_do() to call alloc_sectors_start_trans() breaks when we're
randomly injecting transaction restarts - the restart in the commit
causes us to leak the lock that alloc_sectorS_start_trans() takes.

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: handle restarts in bch2_bucket_io_time_reset()</title>
<updated>2024-10-18T04:49:48+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-10-15T03:58:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6bee2a04c5473d6d463c64e9a1f77c875b83401d'/>
<id>urn:sha1:6bee2a04c5473d6d463c64e9a1f77c875b83401d</id>
<content type='text'>
bch2_bucket_io_time_reset() doesn't need to succeed, which is why it
didn't previously retry on transaction restart - but we're now treating
these as errors.

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: fix restart handling in bch2_do_invalidates_work()</title>
<updated>2024-10-18T04:49:47+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-10-15T06:13:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=7ee4be9c621e4cd6a87d134a46d7c56debdf6664'/>
<id>urn:sha1:7ee4be9c621e4cd6a87d134a46d7c56debdf6664</id>
<content type='text'>
this one is fairly harmless since the invalidate worker will just run
again later if it needs to, but still worth fixing

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: Fix missing bounds checks in bch2_alloc_read()</title>
<updated>2024-10-13T21:55:33+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-10-12T19:49:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a319aeaebb6c7d8e68125943d454031b27d6b3ef'/>
<id>urn:sha1:a319aeaebb6c7d8e68125943d454031b27d6b3ef</id>
<content type='text'>
We were checking that the alloc key was for a valid device, but not a
valid bucket.

This is the upgrade path from versions prior to bcachefs being mainlined.

Reported-by: syzbot+a1b59c8e1a3f022fd301@syzkaller.appspotmail.com
Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: Kill alloc_v4.fragmentation_lru</title>
<updated>2024-10-05T00:25:32+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-10-01T23:08:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=260af1562ec14353824da24fe7acc179a902558e'/>
<id>urn:sha1:260af1562ec14353824da24fe7acc179a902558e</id>
<content type='text'>
The fragmentation_lru field hasn't been needed since we reworked the LRU
btrees to use the btree write buffer; previously it was used to resolve
collisions, but the revised LRU btree uses the backpointer (the bucket)
as part of the key.

It should have been deleted at the time of the LRU rework; since it
wasn't, that left places for bugs to hide, in check/repair.

This fixes LRU fsck on a filesystem image helpfully provided by a user
who disappeared before I could get his name for the reported-by.

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: bch_fs.rw_devs_change_count</title>
<updated>2024-09-21T15:39:49+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-09-06T23:12:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=83ccd9b31d5356f9943b8fd0f996ec9fefcb25f1'/>
<id>urn:sha1:83ccd9b31d5356f9943b8fd0f996ec9fefcb25f1</id>
<content type='text'>
Add a counter that's incremented whenever rw devices change; this will
be used for erasure coding so that it can keep ec_stripe_head in sync
and not deadlock on a new stripe when a device it wants goes away.

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: bch2_dev_remove_stripes()</title>
<updated>2024-09-21T15:39:49+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-09-01T22:35:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ad8d1f77fc425f42d1b297486eea36864ae82c41'/>
<id>urn:sha1:ad8d1f77fc425f42d1b297486eea36864ae82c41</id>
<content type='text'>
We can now correctly force-remove a device that has stripes on it; this
uses the new BCH_SB_MEMBER_INVALID sentinal value.

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: bch2_dev_remove_alloc() -&gt; alloc_background.c</title>
<updated>2024-09-21T15:39:48+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-09-01T21:56:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6b812f1dcebfee45d9ef6856404fa666797ac979'/>
<id>urn:sha1:6b812f1dcebfee45d9ef6856404fa666797ac979</id>
<content type='text'>
Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: Convert to use jiffies macros</title>
<updated>2024-09-09T13:41:49+00:00</updated>
<author>
<name>Chen Yufan</name>
<email>chenyufan@vivo.com</email>
</author>
<published>2024-08-22T02:57:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=848c3ff8826b68a587f84f1b00556ab8af651bef'/>
<id>urn:sha1:848c3ff8826b68a587f84f1b00556ab8af651bef</id>
<content type='text'>
Use jiffies macros instead of using jiffies directly to handle wraparound.

Signed-off-by: Chen Yufan &lt;chenyufan@vivo.com&gt;
Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
<entry>
<title>bcachefs: Fix ca-&gt;io_ref usage</title>
<updated>2024-09-09T13:41:46+00:00</updated>
<author>
<name>Kent Overstreet</name>
<email>kent.overstreet@linux.dev</email>
</author>
<published>2024-09-04T19:48:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5a6e43af1e5341a11a719270cef9d846b0bbfaa5'/>
<id>urn:sha1:5a6e43af1e5341a11a719270cef9d846b0bbfaa5</id>
<content type='text'>
ca-&gt;io_ref does not protect against the filesystem going way,
c-&gt;write_ref does. Much like

0b50b7313ef2 bcachefs: Fix refcounting in discard path

the other async paths need fixing.

Signed-off-by: Kent Overstreet &lt;kent.overstreet@linux.dev&gt;
</content>
</entry>
</feed>
