From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev, Qu Wenruo <wqu@suse.com>,
Zygo Blaxell <ce3g8jdj@umail.furryterror.org>,
David Sterba <dsterba@suse.com>
Subject: [PATCH 6.1 017/196] btrfs: fix stripe length calculation for non-zoned data chunk allocation
Date: Mon, 23 Oct 2023 12:54:42 +0200 [thread overview]
Message-ID: <20231023104828.977102552@linuxfoundation.org> (raw)
In-Reply-To: <20231023104828.488041585@linuxfoundation.org>
6.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Zygo Blaxell <ce3g8jdj@umail.furryterror.org>
commit 8a540e990d7da36813cb71a4a422712bfba448a4 upstream.
Commit f6fca3917b4d "btrfs: store chunk size in space-info struct"
broke data chunk allocations on non-zoned multi-device filesystems when
using default chunk_size. Commit 5da431b71d4b "btrfs: fix the max chunk
size and stripe length calculation" partially fixed that, and this patch
completes the fix for that case.
After commit f6fca3917b4d and 5da431b71d4b, the sequence of events for
a data chunk allocation on a non-zoned filesystem is:
1. btrfs_create_chunk calls init_alloc_chunk_ctl, which copies
space_info->chunk_size (default 10 GiB) to ctl->max_stripe_len
unmodified. Before f6fca3917b4d, ctl->max_stripe_len value was
1 GiB for non-zoned data chunks and not configurable.
2. btrfs_create_chunk calls gather_device_info which consumes
and produces more fields of chunk_ctl.
3. gather_device_info multiplies ctl->max_stripe_len by
ctl->dev_stripes (which is 1 in all cases except dup)
and calls find_free_dev_extent with that number as num_bytes.
4. find_free_dev_extent locates the first dev_extent hole on
a device which is at least as large as num_bytes. With default
max_chunk_size from f6fca3917b4d, it finds the first hole which is
longer than 10 GiB, or the largest hole if that hole is shorter
than 10 GiB. This is different from the pre-f6fca3917b4d
behavior, where num_bytes is 1 GiB, and find_free_dev_extent
may choose a different hole.
5. gather_device_info repeats step 4 with all devices to find
the first or largest dev_extent hole that can be allocated on
each device.
6. gather_device_info sorts the device list by the hole size
on each device, using total unallocated space on each device to
break ties, then returns to btrfs_create_chunk with the list.
7. btrfs_create_chunk calls decide_stripe_size_regular.
8. decide_stripe_size_regular finds the largest stripe_len that
fits across the first nr_devs device dev_extent holes that were
found by gather_device_info (and satisfies other constraints
on stripe_len that are not relevant here).
9. decide_stripe_size_regular caps the length of the stripe it
computed at 1 GiB. This cap appeared in 5da431b71d4b to correct
one of the other regressions introduced in f6fca3917b4d.
10. btrfs_create_chunk creates a new chunk with the above
computed size and number of devices.
At step 4, gather_device_info() has found a location where stripe up to
10 GiB in length could be allocated on several devices, and selected
which devices should have a dev_extent allocated on them, but at step
9, only 1 GiB of the space that was found on each device can be used.
This mismatch causes new suboptimal chunk allocation cases that did not
occur in pre-f6fca3917b4d kernels.
Consider a filesystem using raid1 profile with 3 devices. After some
balances, device 1 has 10x 1 GiB unallocated space, while devices 2
and 3 have 1x 10 GiB unallocated space, i.e. the same total amount of
space, but distributed across different numbers of dev_extent holes.
For visualization, let's ignore all the chunks that were allocated before
this point, and focus on the remaining holes:
Device 1: [_] [_] [_] [_] [_] [_] [_] [_] [_] [_] (10x 1 GiB unallocated)
Device 2: [__________] (10 GiB contig unallocated)
Device 3: [__________] (10 GiB contig unallocated)
Before f6fca3917b4d, the allocator would fill these optimally by
allocating chunks with dev_extents on devices 1 and 2 ([12]), 1 and 3
([13]), or 2 and 3 ([23]):
[after 0 chunk allocations]
Device 1: [_] [_] [_] [_] [_] [_] [_] [_] [_] [_] (10 GiB)
Device 2: [__________] (10 GiB)
Device 3: [__________] (10 GiB)
[after 1 chunk allocation]
Device 1: [12] [_] [_] [_] [_] [_] [_] [_] [_] [_]
Device 2: [12] [_________] (9 GiB)
Device 3: [__________] (10 GiB)
[after 2 chunk allocations]
Device 1: [12] [13] [_] [_] [_] [_] [_] [_] [_] [_] (8 GiB)
Device 2: [12] [_________] (9 GiB)
Device 3: [13] [_________] (9 GiB)
[after 3 chunk allocations]
Device 1: [12] [13] [12] [_] [_] [_] [_] [_] [_] [_] (7 GiB)
Device 2: [12] [12] [________] (8 GiB)
Device 3: [13] [_________] (9 GiB)
[...]
[after 12 chunk allocations]
Device 1: [12] [13] [12] [13] [12] [13] [12] [13] [_] [_] (2 GiB)
Device 2: [12] [12] [23] [23] [12] [12] [23] [23] [__] (2 GiB)
Device 3: [13] [13] [23] [23] [13] [23] [13] [23] [__] (2 GiB)
[after 13 chunk allocations]
Device 1: [12] [13] [12] [13] [12] [13] [12] [13] [12] [_] (1 GiB)
Device 2: [12] [12] [23] [23] [12] [12] [23] [23] [12] [_] (1 GiB)
Device 3: [13] [13] [23] [23] [13] [23] [13] [23] [__] (2 GiB)
[after 14 chunk allocations]
Device 1: [12] [13] [12] [13] [12] [13] [12] [13] [12] [13] (full)
Device 2: [12] [12] [23] [23] [12] [12] [23] [23] [12] [_] (1 GiB)
Device 3: [13] [13] [23] [23] [13] [23] [13] [23] [13] [_] (1 GiB)
[after 15 chunk allocations]
Device 1: [12] [13] [12] [13] [12] [13] [12] [13] [12] [13] (full)
Device 2: [12] [12] [23] [23] [12] [12] [23] [23] [12] [23] (full)
Device 3: [13] [13] [23] [23] [13] [23] [13] [23] [13] [23] (full)
This allocates all of the space with no waste. The sorting function used
by gather_device_info considers free space holes above 1 GiB in length
to be equal to 1 GiB, so once find_free_dev_extent locates a sufficiently
long hole on each device, all the holes appear equal in the sort, and the
comparison falls back to sorting devices by total free space. This keeps
usable space on each device equal so they can all be filled completely.
After f6fca3917b4d, the allocator prefers the devices with larger holes
over the devices with more free space, so it makes bad allocation choices:
[after 1 chunk allocation]
Device 1: [_] [_] [_] [_] [_] [_] [_] [_] [_] [_] (10 GiB)
Device 2: [23] [_________] (9 GiB)
Device 3: [23] [_________] (9 GiB)
[after 2 chunk allocations]
Device 1: [_] [_] [_] [_] [_] [_] [_] [_] [_] [_] (10 GiB)
Device 2: [23] [23] [________] (8 GiB)
Device 3: [23] [23] [________] (8 GiB)
[after 3 chunk allocations]
Device 1: [_] [_] [_] [_] [_] [_] [_] [_] [_] [_] (10 GiB)
Device 2: [23] [23] [23] [_______] (7 GiB)
Device 3: [23] [23] [23] [_______] (7 GiB)
[...]
[after 9 chunk allocations]
Device 1: [_] [_] [_] [_] [_] [_] [_] [_] [_] [_] (10 GiB)
Device 2: [23] [23] [23] [23] [23] [23] [23] [23] [23] [_] (1 GiB)
Device 3: [23] [23] [23] [23] [23] [23] [23] [23] [23] [_] (1 GiB)
[after 10 chunk allocations]
Device 1: [12] [_] [_] [_] [_] [_] [_] [_] [_] [_] (9 GiB)
Device 2: [23] [23] [23] [23] [23] [23] [23] [23] [12] (full)
Device 3: [23] [23] [23] [23] [23] [23] [23] [23] [_] (1 GiB)
[after 11 chunk allocations]
Device 1: [12] [13] [_] [_] [_] [_] [_] [_] [_] [_] (8 GiB)
Device 2: [23] [23] [23] [23] [23] [23] [23] [23] [12] (full)
Device 3: [23] [23] [23] [23] [23] [23] [23] [23] [13] (full)
No further allocations are possible, with 8 GiB wasted (4 GiB of data
space). The sort in gather_device_info now considers free space in
holes longer than 1 GiB to be distinct, so it will prefer devices 2 and
3 over device 1 until all but 1 GiB is allocated on devices 2 and 3.
At that point, with only 1 GiB unallocated on every device, the largest
hole length on each device is equal at 1 GiB, so the sort finally moves
to ordering the devices with the most free space, but by this time it
is too late to make use of the free space on device 1.
Note that it's possible to contrive a case where the pre-f6fca3917b4d
allocator fails the same way, but these cases generally have extensive
dev_extent fragmentation as a precondition (e.g. many holes of 768M
in length on one device, and few holes 1 GiB in length on the others).
With the regression in f6fca3917b4d, bad chunk allocation can occur even
under optimal conditions, when all dev_extent holes are exact multiples
of stripe_len in length, as in the example above.
Also note that post-f6fca3917b4d kernels do treat dev_extent holes
larger than 10 GiB as equal, so the bad behavior won't show up on a
freshly formatted filesystem; however, as the filesystem ages and fills
up, and holes ranging from 1 GiB to 10 GiB in size appear, the problem
can show up as a failure to balance after adding or removing devices,
or an unexpected shortfall in available space due to unequal allocation.
To fix the regression and make data chunk allocation work
again, set ctl->max_stripe_len back to the original SZ_1G, or
space_info->chunk_size if that's smaller (the latter can happen if the
user set space_info->chunk_size to less than 1 GiB via sysfs, or it's
a 32 MiB system chunk with a hardcoded chunk_size and stripe_len).
While researching the background of the earlier commits, I found that an
identical fix was already proposed at:
https://lore.kernel.org/linux-btrfs/de83ac46-a4a3-88d3-85ce-255b7abc5249@gmx.com/
The previous review missed one detail: ctl->max_stripe_len is used
before decide_stripe_size_regular() is called, when it is too late for
the changes in that function to have any effect. ctl->max_stripe_len is
not used directly by decide_stripe_size_regular(), but the parameter
does heavily influence the per-device free space data presented to
the function.
Fixes: f6fca3917b4d ("btrfs: store chunk size in space-info struct")
CC: stable@vger.kernel.org # 6.1+
Link: https://lore.kernel.org/linux-btrfs/20231007051421.19657-1-ce3g8jdj@umail.furryterror.org/
Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: Zygo Blaxell <ce3g8jdj@umail.furryterror.org>
Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
fs/btrfs/volumes.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -5139,7 +5139,7 @@ static void init_alloc_chunk_ctl_policy_
ASSERT(space_info);
ctl->max_chunk_size = READ_ONCE(space_info->chunk_size);
- ctl->max_stripe_size = ctl->max_chunk_size;
+ ctl->max_stripe_size = min_t(u64, ctl->max_chunk_size, SZ_1G);
if (ctl->type & BTRFS_BLOCK_GROUP_SYSTEM)
ctl->devs_max = min_t(int, ctl->devs_max, BTRFS_MAX_DEVS_SYS_CHUNK);
next prev parent reply other threads:[~2023-10-23 11:19 UTC|newest]
Thread overview: 208+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-23 10:54 [PATCH 6.1 000/196] 6.1.60-rc1 review Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 001/196] lib/Kconfig.debug: do not enable DEBUG_PREEMPT by default Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 002/196] igc: remove I226 Qbv BaseTime restriction Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 003/196] igc: enable Qbv configuration for 2nd GCL Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 004/196] igc: Remove reset adapter task for i226 during disable tsn config Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 005/196] igc: Add qbv_config_change_errors counter Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 006/196] igc: Add condition for " Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 007/196] igc: Fix race condition in PTP tx code Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 008/196] Bluetooth: hci_event: Ignore NULL link key Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 009/196] Bluetooth: Reject connection with the device which has same BD_ADDR Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 010/196] Bluetooth: Fix a refcnt underflow problem for hci_conn Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 011/196] Bluetooth: vhci: Fix race when opening vhci device Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 012/196] Bluetooth: hci_event: Fix coding style Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 013/196] Bluetooth: avoid memcmp() out of bounds warning Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 014/196] ice: fix over-shifted variable Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 015/196] ice: reset first in crash dump kernels Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 016/196] net/smc: return the right falback reason when prefix checks fail Greg Kroah-Hartman
2023-10-23 10:54 ` Greg Kroah-Hartman [this message]
2023-10-23 10:54 ` [PATCH 6.1 018/196] nfc: nci: fix possible NULL pointer dereference in send_acknowledge() Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 019/196] regmap: fix NULL deref on lookup Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 020/196] KVM: x86: Mask LVTPC when handling a PMI Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 021/196] x86/sev: Disable MMIO emulation from user mode Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 022/196] x86/sev: Check IOBM for IOIO exceptions from user-space Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 023/196] x86/sev: Check for user-space IOIO pointing to kernel space Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 024/196] x86/fpu: Allow caller to constrain xfeatures when copying to uabi buffer Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 025/196] KVM: x86: Constrain guest-supported xfeatures only at KVM_GET_XSAVE{2} Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 026/196] x86: KVM: SVM: add support for Invalid IPI Vector interception Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 027/196] x86: KVM: SVM: refresh AVIC inhibition in svm_leave_nested() Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 028/196] audit,io_uring: io_uring openat triggers audit reference count underflow Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 029/196] tcp: check mptcp-level constraints for backlog coalescing Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 030/196] mptcp: more conservative check for zero probes Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 031/196] fs/ntfs3: Fix possible null-pointer dereference in hdr_find_e() Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 032/196] fs/ntfs3: fix panic about slab-out-of-bounds caused by ntfs_list_ea() Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 033/196] fs/ntfs3: fix deadlock in mark_as_free_ex Greg Kroah-Hartman
2023-10-23 10:54 ` [PATCH 6.1 034/196] netfilter: nft_payload: fix wrong mac header matching Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 035/196] nvmet-tcp: Fix a possible UAF in queue intialization setup Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 036/196] drm/i915: Retry gtt fault when out of fence registers Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 037/196] drm/mediatek: Correctly free sg_table in gem prime vmap Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 038/196] ALSA: hda/realtek - Fixed ASUS platform headset Mic issue Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 039/196] ALSA: hda/realtek: Add quirk for ASUS ROG GU603ZV Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 040/196] ALSA: hda/relatek: Enable Mute LED on HP Laptop 15s-fq5xxx Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 041/196] ASoC: codecs: wcd938x-sdw: fix use after free on driver unbind Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 042/196] ASoC: codecs: wcd938x-sdw: fix runtime PM imbalance on probe errors Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 043/196] ASoC: codecs: wcd938x: drop bogus bind error handling Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 044/196] ASoC: codecs: wcd938x: fix unbind tear down order Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 045/196] ASoC: codecs: wcd938x: fix resource leaks on bind errors Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 046/196] qed: fix LL2 RX buffer allocation Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 047/196] xfrm: fix a data-race in xfrm_lookup_with_ifid() Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 048/196] xfrm: fix a data-race in xfrm_gen_index() Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 049/196] xfrm: interface: use DEV_STATS_INC() Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 050/196] wifi: cfg80211: use system_unbound_wq for wiphy work Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 051/196] net: ipv4: fix return value check in esp_remove_trailer Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 052/196] net: ipv6: " Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 053/196] net: rfkill: gpio: prevent value glitch during probe Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 054/196] tcp: fix excessive TLP and RACK timeouts from HZ rounding Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 055/196] tcp: tsq: relax tcp_small_queue_check() when rtx queue contains a single skb Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 056/196] tcp: Fix listen() warning with v4-mapped-v6 address Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 057/196] tun: prevent negative ifindex Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 058/196] ipv4: fib: annotate races around nh->nh_saddr_genid and nh->nh_saddr Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 059/196] net: usb: smsc95xx: Fix an error code in smsc95xx_reset() Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 060/196] octeon_ep: update BQL sent bytes before ringing doorbell Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 061/196] i40e: prevent crash on probe if hw registers have invalid values Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 062/196] net: dsa: bcm_sf2: Fix possible memory leak in bcm_sf2_mdio_register() Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 063/196] bonding: Return pointer to data after pull on skb Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 064/196] net/sched: sch_hfsc: upgrade rt to sc when it becomes a inner curve Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 065/196] neighbor: tracing: Move pin6 inside CONFIG_IPV6=y section Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 066/196] selftests: openvswitch: Catch cases where the tests are killed Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 067/196] selftests: netfilter: Run nft_audit.sh in its own netns Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 068/196] netfilter: nft_set_rbtree: .deactivate fails if element has expired Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 069/196] netlink: Correct offload_xstats size Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 070/196] netfilter: nf_tables: do not remove elements if set backend implements .abort Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 071/196] netfilter: nf_tables: revert " Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 072/196] net: phy: bcm7xxx: Add missing 16nm EPHY statistics Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 073/196] net: pktgen: Fix interface flags printing Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 074/196] net: avoid UAF on deleted altname Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 075/196] net: fix ifname in netlink ntf during netns move Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 076/196] net: check for altname conflicts when changing netdevs netns Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 077/196] selftests/mm: fix awk usage in charge_reserved_hugetlb.sh and hugetlb_reparenting_test.sh that may cause error Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 078/196] usb: misc: onboard_usb_hub: add Genesys Logic GL850G hub support Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 079/196] usb: misc: onboard_usb_hub: add Genesys Logic GL852G " Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 080/196] usb: misc: onboard_usb_hub: add Genesys Logic GL3523 " Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 081/196] usb: misc: onboard_hub: add support for Microchip USB2412 USB 2.0 hub Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 082/196] serial: Move uart_change_speed() earlier Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 083/196] serial: Rename uart_change_speed() to uart_change_line_settings() Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 084/196] serial: Reduce spinlocked portion of uart_rs485_config() Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 085/196] serial: 8250: omap: Fix imprecise external abort for omap_8250_pm() Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 086/196] serial: 8250_omap: Fix errors with no_console_suspend Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 087/196] iio: core: introduce iio_device_{claim|release}_buffer_mode() APIs Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 088/196] iio: cros_ec: fix an use-after-free in cros_ec_sensors_push_data() Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 089/196] iio: adc: ad7192: Simplify using devm_regulator_get_enable() Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 090/196] iio: adc: ad7192: Correct reference voltage Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 091/196] pwr-mlxbf: extend Kconfig to include gpio-mlxbf3 dependency Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 092/196] ARM: dts: ti: omap: Fix noisy serial with overrun-throttle-ms for mapphone Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 093/196] fs-writeback: do not requeue a clean inode having skipped pages Greg Kroah-Hartman
2023-10-23 10:55 ` [PATCH 6.1 094/196] btrfs: prevent transaction block reserve underflow when starting transaction Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 095/196] btrfs: return -EUCLEAN for delayed tree ref with a ref count not equals to 1 Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 096/196] btrfs: initialize start_slot in btrfs_log_prealloc_extents Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 097/196] i2c: mux: Avoid potential false error message in i2c_mux_add_adapter Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 098/196] overlayfs: set ctime when setting mtime and atime Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 099/196] gpio: timberdale: Fix potential deadlock on &tgpio->lock Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 100/196] ata: libata-core: Fix compilation warning in ata_dev_config_ncq() Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 101/196] ata: libata-eh: Fix compilation warning in ata_eh_link_report() Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 102/196] tracing: relax trace_event_eval_update() execution with cond_resched() Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 103/196] wifi: mwifiex: Sanity check tlv_len and tlv_bitmap_len Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 104/196] wifi: iwlwifi: Ensure ack flag is properly cleared Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 105/196] HID: logitech-hidpp: Add Bluetooth ID for the Logitech M720 Triathlon mouse Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 106/196] HID: holtek: fix slab-out-of-bounds Write in holtek_kbd_input_event Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 107/196] Bluetooth: btusb: add shutdown function for QCA6174 Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 108/196] Bluetooth: Avoid redundant authentication Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 109/196] Bluetooth: hci_core: Fix build warnings Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 110/196] wifi: cfg80211: Fix 6GHz scan configuration Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 111/196] wifi: mac80211: work around Cisco AP 9115 VHT MPDU length Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 112/196] wifi: mac80211: allow transmitting EAPOL frames with tainted key Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 113/196] wifi: cfg80211: avoid leaking stack data into trace Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 114/196] regulator/core: Revert "fix kobject release warning and memory leak in regulator_register()" Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 115/196] sky2: Make sure there is at least one frag_addr available Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 116/196] ipv4/fib: send notify when delete source address routes Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 117/196] drm: panel-orientation-quirks: Add quirk for One Mix 2S Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 118/196] btrfs: fix some -Wmaybe-uninitialized warnings in ioctl.c Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 119/196] btrfs: error out when COWing block using a stale transaction Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 120/196] btrfs: error when COWing block from a root that is being deleted Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 121/196] btrfs: error out when reallocating block for defrag using a stale transaction Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 122/196] drm/amd/pm: add unique_id for gc 11.0.3 Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 123/196] HID: multitouch: Add required quirk for Synaptics 0xcd7e device Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 124/196] HID: nintendo: reinitialize USB Pro Controller after resuming from suspend Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 125/196] platform/x86: touchscreen_dmi: Add info for the Positivo C4128B Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 126/196] cpufreq: schedutil: Update next_freq when cpufreq_limits change Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 127/196] fprobe: Pass entry_data to handlers Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 128/196] fprobe: Add nr_maxactive to specify rethook_node pool size Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 129/196] fprobe: Fix to ensure the number of active retprobes is not zero Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 130/196] net: xfrm: skip policies marked as dead while reinserting policies Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 131/196] xfrm6: fix inet6_dev refcount underflow problem Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 132/196] net/mlx5: E-switch, register event handler before arming the event Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 133/196] net/mlx5: Handle fw tracer change ownership event based on MTRC Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 134/196] net/mlx5e: Dont offload internal port if filter device is out device Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 135/196] net/tls: split tls_rx_reader_lock Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 136/196] tcp: allow again tcp_disconnect() when threads are waiting Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 137/196] ice: Remove redundant pci_enable_pcie_error_reporting() Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 138/196] Bluetooth: hci_event: Fix using memcmp when comparing keys Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 139/196] selftests: openvswitch: Add version check for pyroute2 Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 140/196] tcp_bpf: properly release resources on error paths Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 141/196] net/smc: fix smc clc failed issue when netdevice not in init_net Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 142/196] mtd: rawnand: qcom: Unmap the right resource upon probe failure Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 143/196] mtd: rawnand: pl353: Ensure program page operations are successful Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 144/196] mtd: rawnand: marvell: " Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 145/196] mtd: rawnand: arasan: " Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 146/196] mtd: spinand: micron: correct bitmask for ecc status Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 147/196] mtd: physmap-core: Restore map_rom fallback Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 148/196] dt-bindings: mmc: sdhci-msm: correct minimum number of clocks Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 149/196] mmc: sdhci-pci-gli: fix LPM negotiation so x86/S0ix SoCs can suspend Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 150/196] mmc: mtk-sd: Use readl_poll_timeout_atomic in msdc_reset_hw Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 151/196] mmc: core: sdio: hold retuning if sdio in 1-bit mode Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 152/196] mmc: core: Capture correct oemid-bits for eMMC cards Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 153/196] Revert "pinctrl: avoid unsafe code pattern in find_pinctrl()" Greg Kroah-Hartman
2023-10-23 10:56 ` [PATCH 6.1 154/196] pNFS: Fix a hang in nfs4_evict_inode() Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 155/196] pNFS/flexfiles: Check the layout validity in ff_layout_mirror_prepare_stats Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 156/196] NFSv4.1: fixup use EXCHGID4_FLAG_USE_PNFS_DS for DS server Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 157/196] ACPI: irq: Fix incorrect return value in acpi_register_gsi() Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 158/196] nfs42: client needs to strip file modes suid/sgid bit after ALLOCATE op Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 159/196] nvme: sanitize metadata bounce buffer for reads Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 160/196] nvme-pci: add BOGUS_NID for Intel 0a54 device Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 161/196] nvmet-auth: complete a request only after freeing the dhchap pointers Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 162/196] nvme-rdma: do not try to stop unallocated queues Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 163/196] KVM: x86/mmu: Stop zapping invalidated TDP MMU roots asynchronously Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 164/196] HID: input: map battery system charging Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 165/196] USB: serial: option: add Telit LE910C4-WWX 0x1035 composition Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 166/196] USB: serial: option: add entry for Sierra EM9191 with new firmware Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 167/196] USB: serial: option: add Fibocom to DELL custom modem FM101R-GL Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 168/196] perf: Disallow mis-matched inherited group reads Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 169/196] s390/pci: fix iommu bitmap allocation Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 170/196] selftests/ftrace: Add new test case which checks non unique symbol Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 171/196] s390/cio: fix a memleak in css_alloc_subchannel Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 172/196] platform/surface: platform_profile: Propagate error if profile registration fails Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 173/196] platform/x86: intel-uncore-freq: Conditionally create attribute for read frequency Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 174/196] platform/x86: asus-wmi: Change ASUS_WMI_BRN_DOWN code from 0x20 to 0x2e Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 175/196] platform/x86: asus-wmi: Only map brightness codes when using asus-wmi backlight control Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 176/196] platform/x86: asus-wmi: Map 0x2a code, Ignore 0x2b and 0x2c events Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 177/196] gpio: vf610: set value before the direction to avoid a glitch Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 178/196] ASoC: pxa: fix a memory leak in probe() Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 179/196] drm/bridge: ti-sn65dsi86: Associate DSI device lifetime with auxiliary device Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 180/196] drm/panel: Move AUX B116XW03 out of panel-edp back to panel-simple Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 181/196] serial: 8250: omap: Move uart_write() inside PM section Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 182/196] serial: 8250: omap: convert to modern PM ops Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 183/196] kallsyms: Reduce the memory occupied by kallsyms_seqs_of_names[] Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 184/196] kallsyms: Add helper kallsyms_on_each_match_symbol() Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 185/196] tracing/kprobes: Return EADDRNOTAVAIL when func matches several symbols Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 186/196] gpio: vf610: make irq_chip immutable Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 187/196] gpio: vf610: mask the gpio irq in system suspend and support wakeup Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 188/196] phy: mapphone-mdm6600: Fix runtime disable on probe Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 189/196] phy: mapphone-mdm6600: Fix runtime PM for remove Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 190/196] phy: mapphone-mdm6600: Fix pinctrl_pm handling for sleep pins Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 191/196] net: move altnames together with the netdevice Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 192/196] Bluetooth: hci_sock: fix slab oob read in create_monitor_event Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 193/196] Bluetooth: hci_sock: Correctly bounds check and pad HCI_MON_NEW_INDEX name Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 194/196] mptcp: avoid sending RST when closing the initial subflow Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 195/196] selftests: mptcp: join: correctly check for no RST Greg Kroah-Hartman
2023-10-23 10:57 ` [PATCH 6.1 196/196] selftests: mptcp: join: no RST when rm subflow/addr Greg Kroah-Hartman
2023-10-23 16:24 ` [PATCH 6.1 000/196] 6.1.60-rc1 review SeongJae Park
2023-10-23 18:03 ` Ricardo B. Marliere
2023-10-23 19:05 ` Allen Pais
2023-10-23 19:27 ` Florian Fainelli
2023-10-23 20:44 ` Pavel Machek
2023-10-24 2:32 ` Bagas Sanjaya
2023-10-24 8:31 ` Daniel Díaz
2023-10-24 8:51 ` Sudip Mukherjee (Codethink)
2023-10-24 9:13 ` Ron Economos
2023-10-24 12:33 ` Takeshi Ogasawara
2023-10-24 18:11 ` Guenter Roeck
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231023104828.977102552@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=ce3g8jdj@umail.furryterror.org \
--cc=dsterba@suse.com \
--cc=patches@lists.linux.dev \
--cc=stable@vger.kernel.org \
--cc=wqu@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox