aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python/netdev-times.py
diff options
context:
space:
mode:
authorRyusuke Konishi <konishi.ryusuke@gmail.com>2024-02-04 01:16:45 +0900
committerAndrew Morton <akpm@linux-foundation.org>2024-02-07 21:20:37 -0800
commit5bc09b397cbf1221f8a8aacb1152650c9195b02b (patch)
treefdf36bc0a847f5c100fd5456ac310d863dbda22b /tools/perf/scripts/python/netdev-times.py
parentmm/damon/sysfs-schemes: fix wrong DAMOS tried regions update timeout setup (diff)
downloadlinux-5bc09b397cbf1221f8a8aacb1152650c9195b02b.tar.gz
linux-5bc09b397cbf1221f8a8aacb1152650c9195b02b.zip
nilfs2: fix potential bug in end_buffer_async_write
According to a syzbot report, end_buffer_async_write(), which handles the completion of block device writes, may detect abnormal condition of the buffer async_write flag and cause a BUG_ON failure when using nilfs2. Nilfs2 itself does not use end_buffer_async_write(). But, the async_write flag is now used as a marker by commit 7f42ec394156 ("nilfs2: fix issue with race condition of competition between segments for dirty blocks") as a means of resolving double list insertion of dirty blocks in nilfs_lookup_dirty_data_buffers() and nilfs_lookup_node_buffers() and the resulting crash. This modification is safe as long as it is used for file data and b-tree node blocks where the page caches are independent. However, it was irrelevant and redundant to also introduce async_write for segment summary and super root blocks that share buffers with the backing device. This led to the possibility that the BUG_ON check in end_buffer_async_write would fail as described above, if independent writebacks of the backing device occurred in parallel. The use of async_write for segment summary buffers has already been removed in a previous change. Fix this issue by removing the manipulation of the async_write flag for the remaining super root block buffer. Link: https://lkml.kernel.org/r/20240203161645.4992-1-konishi.ryusuke@gmail.com Fixes: 7f42ec394156 ("nilfs2: fix issue with race condition of competition between segments for dirty blocks") Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com> Reported-by: syzbot+5c04210f7c7f897c1e7f@syzkaller.appspotmail.com Closes: https://lkml.kernel.org/r/00000000000019a97c05fd42f8c8@google.com Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'tools/perf/scripts/python/netdev-times.py')
0 files changed, 0 insertions, 0 deletions
2021-06-24sctp: do black hole detection in search complete stateXin Long2-8/+6 2021-06-24net: dsa: sja1105: document the SJA1110 in the KconfigVladimir Oltean1-2/+6 2021-06-24Documentation: net: dsa: add details about SJA1110Vladimir Oltean1-4/+57 2021-06-24gve: DQO: Add RX pathBailey Forrest4-0/+601 2021-06-24gve: DQO: Add TX pathBailey Forrest2-2/+829 2021-06-24gve: DQO: Configure interrupts on device upBailey Forrest2-2/+33 2021-06-24gve: DQO: Add ring allocation and initializationBailey Forrest7-13/+420 2021-06-24gve: DQO: Add core netdev featuresBailey Forrest8-25/+260 2021-06-24gve: Update adminq commands to support DQO queuesBailey Forrest4-29/+64 2021-06-24gve: Add DQO fields for core data structuresBailey Forrest1-11/+251 2021-06-24gve: Add dqo descriptorsBailey Forrest2-1/+257 2021-06-24gve: Add support for DQO RX PTYPE mapBailey Forrest4-2/+127 2021-06-24gve: adminq: DQO specific device descriptor logicBailey Forrest2-15/+55 2021-06-24gve: Introduce per netdev `enum gve_queue_format`Bailey Forrest5-15/+37 2021-06-24gve: Introduce a new model for device optionsBailey Forrest2-43/+179 2021-06-24gve: Make gve_rx_slot_page_info.page_offset an absolute offsetBailey Forrest3-5/+5 2021-06-24gve: gve_rx_copy: Move padding to an argumentBailey Forrest3-5/+7 2021-06-24gve: Move some static functions to a common fileBailey Forrest5-60/+94 2021-06-24gve: Update GVE documentation to describe DQOBailey Forrest1-5/+48 2021-06-24usbnet: add usbnet_event_names[] for keventYajun Deng1-2/+19 2021-06-24arm64: dts: sparx5: Add the Sparx5 switch nodeSteen Hegelund3-84/+1112 2021-06-24net: sparx5: add ethtool configuration and statistics supportSteen Hegelund5-1/+1248 2021-06-24net: sparx5: add calendar bandwidth allocation supportSteen Hegelund4-2/+609 2021-06-24net: sparx5: add switching supportSteen Hegelund7-1/+544 2021-06-24net: sparx5: add vlan supportSteen Hegelund4-4/+246 2021-06-24net: sparx5: add mactable supportSteen Hegelund5-2/+565 2021-06-24net: sparx5: add port module supportSteen Hegelund6-12/+1279 2021-06-24net: sparx5: add hostmode with phylink supportSteen Hegelund6-10/+841 2021-06-24net: sparx5: add the basic sparx5 driverSteen Hegelund7-0/+5680