Re: [btrfs] ecc64fab7d: stress-ng.link.ops_per_sec -81.7% regression
From: Filipe Manana
Date: Sun Aug 08 2021 - 13:37:01 EST
On Sun, Aug 8, 2021 at 2:30 PM kernel test robot <oliver.sang@xxxxxxxxx> wrote:
>
>
>
> Greeting,
>
> FYI, we noticed a -81.7% regression of stress-ng.link.ops_per_sec due to commit:
>
>
> commit: ecc64fab7d49c678e70bd4c35fe64d2ab3e3d212 ("btrfs: fix lost inode on log replay after mix of fsync, rename and inode eviction")
> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master
The following patch, which was part of the same patchset, but it's not
yet in Linus' tree, helps on restoring most of the performance:
https://lore.kernel.org/linux-btrfs/307aaa44d39ad115e299bfe7d1f7e3eb4e991374.1627379796.git.fdmanana@xxxxxxxx/
There will be two more to reduce logging work during link and rename
operations, but I'll only send them out after coming back from
vacations.
Thanks.
>
>
> in testcase: stress-ng
> on test machine: 96 threads 2 sockets Intel(R) Xeon(R) Gold 6252 CPU @ 2.10GHz with 512G memory
> with following parameters:
>
> nr_threads: 10%
> disk: 1HDD
> testtime: 60s
> fs: btrfs
> class: filesystem
> test: link
> cpufreq_governor: performance
> ucode: 0x5003006
>
>
>
>
> If you fix the issue, kindly add following tag
> Reported-by: kernel test robot <oliver.sang@xxxxxxxxx>
>
>
> Details are as below:
> -------------------------------------------------------------------------------------------------->
>
>
> To reproduce:
>
> git clone https://github.com/intel/lkp-tests.git
> cd lkp-tests
> bin/lkp install job.yaml # job file is attached in this email
> bin/lkp split-job --compatible job.yaml # generate the yaml file for lkp run
> bin/lkp run generated-yaml-file
>
> =========================================================================================
> class/compiler/cpufreq_governor/disk/fs/kconfig/nr_threads/rootfs/tbox_group/test/testcase/testtime/ucode:
> filesystem/gcc-9/performance/1HDD/btrfs/x86_64-rhel-8.3/10%/debian-10.4-x86_64-20200603.cgz/lkp-csl-2sp7/link/stress-ng/60s/0x5003006
>
> commit:
> 240246f6b9 ("btrfs: mark compressed range uptodate only if all bio succeed")
> ecc64fab7d ("btrfs: fix lost inode on log replay after mix of fsync, rename and inode eviction")
>
> 240246f6b913b0c2 ecc64fab7d49c678e70bd4c35fe
> ---------------- ---------------------------
> %stddev %change %stddev
> \ | \
> 227.57 ą 2% -81.9% 41.14 ą 10% stress-ng.link.ops
> 3.75 ą 2% -81.7% 0.69 ą 10% stress-ng.link.ops_per_sec
> 949188 ą 2% +4871.8% 47192178 ą 6% stress-ng.time.file_system_outputs
> 8737302 ą 3% +18.5% 10352864 ą 5% stress-ng.time.voluntary_context_switches
> 6.96 -4.9% 6.62 iostat.cpu.system
> 4659 ą 27% -73.6% 1228 ą 73% numa-meminfo.node0.Dirty
> 3435 ą 39% -69.5% 1048 ą 95% numa-meminfo.node1.Dirty
> 11008 ą 7% -10.6% 9835 ą 6% softirqs.CPU4.SCHED
> 11489 ą 5% -14.1% 9871 ą 10% softirqs.CPU49.SCHED
> 4721 ą 5% -87.1% 610.86 ą 23% vmstat.io.bo
> 2817765 +21.3% 3416713 vmstat.memory.cache
> 2663 +3.5% 2757 turbostat.Bzy_MHz
> 8407573 ą 4% +15.4% 9703225 ą 6% turbostat.C1
> 158.73 +4.0% 165.10 turbostat.PkgWatt
> 9517 ą 6% -88.6% 1088 ą 19% interrupts.315:PCI-MSI.376832-edge.ahci[0000:00:17.0]
> 5890 ą 49% -68.2% 1875 ą 68% interrupts.CPU21.CAL:Function_call_interrupts
> 471.14 ą 57% +124.1% 1056 ą 41% interrupts.CPU75.NMI:Non-maskable_interrupts
> 471.14 ą 57% +124.1% 1056 ą 41% interrupts.CPU75.PMI:Performance_monitoring_interrupts
> 0.29 ą 5% -0.2 0.04 ą 20% mpstat.cpu.all.iowait%
> 0.90 ą 8% -0.2 0.74 ą 3% mpstat.cpu.all.irq%
> 0.07 ą 5% -0.0 0.06 ą 2% mpstat.cpu.all.soft%
> 0.18 ą 2% -0.0 0.14 ą 2% mpstat.cpu.all.usr%
> 292111 ą 2% +207.8% 898999 meminfo.Active
> 285313 ą 2% +212.7% 892049 meminfo.Active(file)
> 2689046 +22.4% 3291841 meminfo.Cached
> 8096 ą 2% -72.1% 2259 ą 6% meminfo.Dirty
> 7347 ą 5% -46.4% 3938 ą 40% meminfo.Inactive(file)
> 4474242 +13.7% 5086026 meminfo.Memused
> 4500587 +14.5% 5152537 meminfo.max_used_kB
> 47198 ą 34% +3147.3% 1532689 ą 78% numa-vmstat.node0.nr_dirtied
> 1163 ą 27% -73.6% 306.86 ą 73% numa-vmstat.node0.nr_dirty
> 13644 ą 34% -82.6% 2373 ą 58% numa-vmstat.node0.nr_written
> 1192 ą 29% -74.2% 307.71 ą 74% numa-vmstat.node0.nr_zone_write_pending
> 858.29 ą 39% -69.6% 260.71 ą 96% numa-vmstat.node1.nr_dirty
> 8345 ą 58% -81.8% 1514 ą101% numa-vmstat.node1.nr_written
> 870.29 ą 38% -69.8% 262.71 ą 95% numa-vmstat.node1.nr_zone_write_pending
> 71331 ą 2% +212.7% 223017 proc-vmstat.nr_active_file
> 159852 ą 2% +3593.0% 5903385 ą 6% proc-vmstat.nr_dirtied
> 2023 ą 2% -72.0% 566.00 ą 7% proc-vmstat.nr_dirty
> 672525 +22.4% 823223 proc-vmstat.nr_file_pages
> 1836 ą 5% -46.5% 983.00 ą 40% proc-vmstat.nr_inactive_file
> 43756 ą 5% -87.1% 5658 ą 24% proc-vmstat.nr_written
> 71331 ą 2% +212.7% 223017 proc-vmstat.nr_zone_active_file
> 1836 ą 5% -46.5% 983.00 ą 40% proc-vmstat.nr_zone_inactive_file
> 2055 ą 3% -72.3% 570.00 ą 6% proc-vmstat.nr_zone_write_pending
> 617463 +17.3% 724326 proc-vmstat.numa_hit
> 530828 +20.1% 637670 proc-vmstat.numa_local
> 49518 ą 2% +47.9% 73219 ą 16% proc-vmstat.pgactivate
> 648782 +15.4% 748934 proc-vmstat.pgalloc_normal
> 358760 -3.4% 346576 proc-vmstat.pgfree
> 308332 ą 6% -87.5% 38626 ą 24% proc-vmstat.pgpgout
> 2.142e+09 -15.7% 1.806e+09 ą 2% perf-stat.i.branch-instructions
> 18232988 ą 3% -17.5% 15041745 ą 3% perf-stat.i.branch-misses
> 2.02 ą 3% +14.5% 2.31 perf-stat.i.cpi
> 2.129e+10 -4.8% 2.026e+10 perf-stat.i.cpu-cycles
> 0.02 ą 36% -0.0 0.00 ą 34% perf-stat.i.dTLB-load-miss-rate%
> 385230 ą 32% -72.5% 105867 ą 28% perf-stat.i.dTLB-load-misses
> 2.742e+09 -17.8% 2.253e+09 perf-stat.i.dTLB-loads
> 1.11e+09 ą 2% -23.2% 8.532e+08 ą 2% perf-stat.i.dTLB-stores
> 32.05 -3.7 28.32 perf-stat.i.iTLB-load-miss-rate%
> 3835461 ą 2% -26.6% 2816654 ą 3% perf-stat.i.iTLB-load-misses
> 8289183 ą 3% -12.0% 7292203 ą 3% perf-stat.i.iTLB-loads
> 1.069e+10 -16.6% 8.923e+09 perf-stat.i.instructions
> 2913 ą 2% +13.8% 3316 ą 5% perf-stat.i.instructions-per-iTLB-miss
> 0.52 ą 3% -12.9% 0.45 perf-stat.i.ipc
> 0.22 -4.8% 0.21 perf-stat.i.metric.GHz
> 62.64 -18.1% 51.27 perf-stat.i.metric.M/sec
> 92.36 -23.1 69.23 ą 6% perf-stat.i.node-store-miss-rate%
> 98872 ą 6% +764.1% 854357 ą 10% perf-stat.i.node-stores
> 22849 -71.6% 6482 ą 6% perf-stat.i.page-faults
> 1.99 ą 2% +14.0% 2.27 perf-stat.overall.cpi
> 0.01 ą 32% -0.0 0.00 ą 27% perf-stat.overall.dTLB-load-miss-rate%
> 31.64 -3.8 27.87 perf-stat.overall.iTLB-load-miss-rate%
> 2789 ą 2% +13.7% 3172 ą 4% perf-stat.overall.instructions-per-iTLB-miss
> 0.50 ą 2% -12.3% 0.44 perf-stat.overall.ipc
> 95.08 -26.8 68.28 ą 6% perf-stat.overall.node-store-miss-rate%
> 2.108e+09 -15.7% 1.777e+09 ą 2% perf-stat.ps.branch-instructions
> 17956331 ą 3% -17.5% 14821238 ą 3% perf-stat.ps.branch-misses
> 2.095e+10 -4.8% 1.994e+10 perf-stat.ps.cpu-cycles
> 379273 ą 32% -72.5% 104229 ą 28% perf-stat.ps.dTLB-load-misses
> 2.698e+09 -17.8% 2.218e+09 perf-stat.ps.dTLB-loads
> 1.093e+09 ą 2% -23.1% 8.398e+08 ą 2% perf-stat.ps.dTLB-stores
> 3774726 ą 2% -26.6% 2772418 ą 3% perf-stat.ps.iTLB-load-misses
> 8157708 ą 3% -12.0% 7176458 ą 3% perf-stat.ps.iTLB-loads
> 1.052e+10 -16.6% 8.783e+09 perf-stat.ps.instructions
> 97299 ą 6% +763.6% 840325 ą 10% perf-stat.ps.node-stores
> 22491 -71.6% 6381 ą 6% perf-stat.ps.page-faults
> 6.702e+11 -17.1% 5.556e+11 perf-stat.total.instructions
> 5395 ą 2% -9.6% 4876 ą 3% slabinfo.Acpi-State.active_objs
> 5395 ą 2% -9.6% 4876 ą 3% slabinfo.Acpi-State.num_objs
> 485.57 ą 5% -55.8% 214.86 ą 8% slabinfo.biovec-128.active_objs
> 485.57 ą 5% -55.8% 214.86 ą 8% slabinfo.biovec-128.num_objs
> 516.43 ą 12% -23.6% 394.43 ą 9% slabinfo.biovec-64.active_objs
> 516.43 ą 12% -23.6% 394.43 ą 9% slabinfo.biovec-64.num_objs
> 392.71 ą 8% -49.5% 198.43 ą 12% slabinfo.biovec-max.active_objs
> 407.86 ą 7% -49.3% 206.71 ą 11% slabinfo.biovec-max.num_objs
> 7325 ą 3% -55.1% 3287 ą 6% slabinfo.btrfs_delayed_tree_ref.active_objs
> 187.43 ą 3% -55.3% 83.86 ą 6% slabinfo.btrfs_delayed_tree_ref.active_slabs
> 7325 ą 3% -55.1% 3287 ą 6% slabinfo.btrfs_delayed_tree_ref.num_objs
> 187.43 ą 3% -55.3% 83.86 ą 6% slabinfo.btrfs_delayed_tree_ref.num_slabs
> 8208 -51.2% 4004 ą 8% slabinfo.btrfs_extent_map.active_objs
> 8208 -51.2% 4004 ą 8% slabinfo.btrfs_extent_map.num_objs
> 903.14 ą 6% -77.0% 207.29 ą 33% slabinfo.btrfs_ordered_extent.active_objs
> 903.14 ą 6% -77.0% 207.29 ą 33% slabinfo.btrfs_ordered_extent.num_objs
> 9693 ą 3% -17.3% 8017 ą 7% slabinfo.fsnotify_mark_connector.active_objs
> 9693 ą 3% -17.3% 8017 ą 7% slabinfo.fsnotify_mark_connector.num_objs
> 13523 ą 6% -37.0% 8525 ą 6% slabinfo.kmalloc-128.active_objs
> 425.29 ą 6% -36.6% 269.57 ą 6% slabinfo.kmalloc-128.active_slabs
> 13629 ą 6% -36.6% 8642 ą 6% slabinfo.kmalloc-128.num_objs
> 425.29 ą 6% -36.6% 269.57 ą 6% slabinfo.kmalloc-128.num_slabs
> 17162 ą 6% -33.9% 11351 ą 5% slabinfo.kmalloc-192.active_objs
> 411.71 ą 6% -34.0% 271.71 ą 5% slabinfo.kmalloc-192.active_slabs
> 17307 ą 6% -34.0% 11430 ą 5% slabinfo.kmalloc-192.num_objs
> 411.71 ą 6% -34.0% 271.71 ą 5% slabinfo.kmalloc-192.num_slabs
> 23093 ą 9% -64.0% 8304 ą 6% slabinfo.kmalloc-rcl-96.active_objs
> 549.43 ą 9% -64.1% 197.29 ą 6% slabinfo.kmalloc-rcl-96.active_slabs
> 23095 ą 9% -64.0% 8304 ą 6% slabinfo.kmalloc-rcl-96.num_objs
> 549.43 ą 9% -64.1% 197.29 ą 6% slabinfo.kmalloc-rcl-96.num_slabs
> 2224 ą 4% -31.9% 1514 ą 7% slabinfo.mnt_cache.active_objs
> 2224 ą 4% -31.9% 1514 ą 7% slabinfo.mnt_cache.num_objs
> 8352 ą 2% +79.5% 14992 ą 6% slabinfo.pool_workqueue.active_objs
> 261.71 ą 2% +79.3% 469.14 ą 6% slabinfo.pool_workqueue.active_slabs
> 8381 ą 2% +79.2% 15022 ą 6% slabinfo.pool_workqueue.num_objs
> 261.71 ą 2% +79.3% 469.14 ą 6% slabinfo.pool_workqueue.num_slabs
> 29474 +13.4% 33417 ą 2% slabinfo.radix_tree_node.active_objs
> 29474 +13.4% 33429 ą 2% slabinfo.radix_tree_node.num_objs
> 612.57 ą 9% -35.3% 396.43 ą 11% slabinfo.skbuff_fclone_cache.active_objs
> 612.57 ą 9% -35.3% 396.43 ą 11% slabinfo.skbuff_fclone_cache.num_objs
> 30.52 ą 3% -28.4 2.16 ą158% perf-profile.calltrace.cycles-pp.do_unlinkat.do_syscall_64.entry_SYSCALL_64_after_hwframe
> 30.35 ą 3% -28.2 2.15 ą158% perf-profile.calltrace.cycles-pp.vfs_unlink.do_unlinkat.do_syscall_64.entry_SYSCALL_64_after_hwframe
> 30.28 ą 3% -28.1 2.15 ą158% perf-profile.calltrace.cycles-pp.btrfs_unlink.vfs_unlink.do_unlinkat.do_syscall_64.entry_SYSCALL_64_after_hwframe
> 29.86 ą 3% -27.7 2.11 ą158% perf-profile.calltrace.cycles-pp.btrfs_unlink_inode.btrfs_unlink.vfs_unlink.do_unlinkat.do_syscall_64
> 29.86 ą 3% -27.7 2.11 ą158% perf-profile.calltrace.cycles-pp.__btrfs_unlink_inode.btrfs_unlink_inode.btrfs_unlink.vfs_unlink.do_unlinkat
> 19.65 ą 4% -18.3 1.36 ą158% perf-profile.calltrace.cycles-pp.btrfs_add_link.btrfs_link.vfs_link.do_linkat.__x64_sys_link
> 18.68 ą 3% -17.4 1.26 ą158% perf-profile.calltrace.cycles-pp.btrfs_del_inode_ref.__btrfs_unlink_inode.btrfs_unlink_inode.btrfs_unlink.vfs_unlink
> 17.74 ą 3% -16.5 1.20 ą158% perf-profile.calltrace.cycles-pp.btrfs_search_slot.btrfs_del_inode_ref.__btrfs_unlink_inode.btrfs_unlink_inode.btrfs_unlink
> 15.15 ą 3% -14.1 1.03 ą158% perf-profile.calltrace.cycles-pp.btrfs_lock_root_node.btrfs_search_slot.btrfs_del_inode_ref.__btrfs_unlink_inode.btrfs_unlink_inode
> 15.10 ą 3% -14.1 1.02 ą158% perf-profile.calltrace.cycles-pp.__btrfs_tree_lock.btrfs_lock_root_node.btrfs_search_slot.btrfs_del_inode_ref.__btrfs_unlink_inode
> 14.92 ą 3% -13.9 1.01 ą158% perf-profile.calltrace.cycles-pp.rwsem_down_write_slowpath.__btrfs_tree_lock.btrfs_lock_root_node.btrfs_search_slot.btrfs_del_inode_ref
> 12.51 ą 4% -11.6 0.88 ą158% perf-profile.calltrace.cycles-pp.btrfs_insert_inode_ref.btrfs_add_link.btrfs_link.vfs_link.do_linkat
> 10.73 ą 4% -10.0 0.76 ą158% perf-profile.calltrace.cycles-pp.btrfs_insert_empty_items.btrfs_insert_inode_ref.btrfs_add_link.btrfs_link.vfs_link
> 10.23 ą 4% -9.5 0.72 ą158% perf-profile.calltrace.cycles-pp.btrfs_search_slot.btrfs_insert_empty_items.btrfs_insert_inode_ref.btrfs_add_link.btrfs_link
> 9.38 ą 4% -8.8 0.62 ą158% perf-profile.calltrace.cycles-pp.btrfs_lookup_dir_item.__btrfs_unlink_inode.btrfs_unlink_inode.btrfs_unlink.vfs_unlink
> 9.34 ą 4% -8.7 0.62 ą158% perf-profile.calltrace.cycles-pp.btrfs_search_slot.btrfs_lookup_dir_item.__btrfs_unlink_inode.btrfs_unlink_inode.btrfs_unlink
> 7.85 ą 4% -7.3 0.52 ą158% perf-profile.calltrace.cycles-pp.btrfs_lock_root_node.btrfs_search_slot.btrfs_lookup_dir_item.__btrfs_unlink_inode.btrfs_unlink_inode
> 7.82 ą 4% -7.3 0.51 ą158% perf-profile.calltrace.cycles-pp.__btrfs_tree_lock.btrfs_lock_root_node.btrfs_search_slot.btrfs_lookup_dir_item.__btrfs_unlink_inode
> 7.72 ą 4% -7.2 0.51 ą158% perf-profile.calltrace.cycles-pp.rwsem_down_write_slowpath.__btrfs_tree_lock.btrfs_lock_root_node.btrfs_search_slot.btrfs_lookup_dir_item
> 7.65 ą 4% -7.1 0.52 ą158% perf-profile.calltrace.cycles-pp.btrfs_lock_root_node.btrfs_search_slot.btrfs_insert_empty_items.btrfs_insert_inode_ref.btrfs_add_link
> 7.62 ą 4% -7.1 0.52 ą158% perf-profile.calltrace.cycles-pp.__btrfs_tree_lock.btrfs_lock_root_node.btrfs_search_slot.btrfs_insert_empty_items.btrfs_insert_inode_ref
> 6.93 ą 4% -6.5 0.46 ą158% perf-profile.calltrace.cycles-pp.btrfs_insert_dir_item.btrfs_add_link.btrfs_link.vfs_link.do_linkat
> 6.16 ą 4% -5.8 0.41 ą158% perf-profile.calltrace.cycles-pp.insert_with_overflow.btrfs_insert_dir_item.btrfs_add_link.btrfs_link.vfs_link
> 6.15 ą 4% -5.7 0.41 ą159% perf-profile.calltrace.cycles-pp.btrfs_insert_empty_items.insert_with_overflow.btrfs_insert_dir_item.btrfs_add_link.btrfs_link
> 5.67 ą 4% -5.3 0.38 ą159% perf-profile.calltrace.cycles-pp.btrfs_search_slot.btrfs_insert_empty_items.insert_with_overflow.btrfs_insert_dir_item.btrfs_add_link
> 28.95 ą 3% -2.8 26.20 ą 6% perf-profile.calltrace.cycles-pp.osq_lock.rwsem_down_write_slowpath.__btrfs_tree_lock.btrfs_lock_root_node.btrfs_search_slot
> 0.00 +0.6 0.58 ą 8% perf-profile.calltrace.cycles-pp.btrfs_read_lock_root_node.btrfs_search_slot.btrfs_insert_empty_items.copy_items.btrfs_log_inode
> 0.00 +0.6 0.61 ą 11% perf-profile.calltrace.cycles-pp.btrfs_search_forward.btrfs_log_inode.log_new_dir_dentries.btrfs_log_inode_parent.btrfs_log_new_name
> 0.00 +0.7 0.69 ą 13% perf-profile.calltrace.cycles-pp.setup_items_for_insert.btrfs_insert_empty_items.copy_items.btrfs_log_inode.log_new_dir_dentries
> 0.00 +1.0 1.00 ą 17% perf-profile.calltrace.cycles-pp.btrfs_search_slot.btrfs_log_inode.log_new_dir_dentries.btrfs_log_inode_parent.btrfs_log_new_name
> 0.00 +1.2 1.21 ą 15% perf-profile.calltrace.cycles-pp.btrfs_search_forward.log_new_dir_dentries.btrfs_log_inode_parent.btrfs_log_new_name.btrfs_link
> 0.00 +1.6 1.60 ą 18% perf-profile.calltrace.cycles-pp.btrfs_search_slot.overwrite_item.log_dir_items.log_directory_changes.btrfs_log_inode
> 0.00 +2.0 2.01 ą 18% perf-profile.calltrace.cycles-pp.overwrite_item.log_dir_items.log_directory_changes.btrfs_log_inode.btrfs_log_inode_parent
> 0.00 +2.1 2.14 ą 18% perf-profile.calltrace.cycles-pp.log_dir_items.log_directory_changes.btrfs_log_inode.btrfs_log_inode_parent.btrfs_log_new_name
> 0.00 +2.1 2.14 ą 18% perf-profile.calltrace.cycles-pp.log_directory_changes.btrfs_log_inode.btrfs_log_inode_parent.btrfs_log_new_name.btrfs_link
> 0.00 +2.4 2.43 ą 17% perf-profile.calltrace.cycles-pp.btrfs_log_inode.btrfs_log_inode_parent.btrfs_log_new_name.btrfs_link.vfs_link
> 0.00 +2.7 2.66 ą 44% perf-profile.calltrace.cycles-pp.split_leaf.btrfs_search_slot.btrfs_insert_empty_items.copy_items.btrfs_log_inode
> 0.00 +2.9 2.85 ą 75% perf-profile.calltrace.cycles-pp.btrfs_del_leaf.btrfs_del_items.drop_objectid_items.btrfs_log_inode.log_new_dir_dentries
> 0.00 +3.8 3.83 ą 58% perf-profile.calltrace.cycles-pp.btrfs_del_items.drop_objectid_items.btrfs_log_inode.log_new_dir_dentries.btrfs_log_inode_parent
> 11.90 ą 5% +4.3 16.20 ą 6% perf-profile.calltrace.cycles-pp.rwsem_down_write_slowpath.__btrfs_tree_lock.btrfs_lock_root_node.btrfs_search_slot.btrfs_insert_empty_items
> 0.00 +15.6 15.57 ą 13% perf-profile.calltrace.cycles-pp.__btrfs_tree_lock.btrfs_lock_root_node.btrfs_search_slot.btrfs_insert_empty_items.copy_items
> 0.00 +15.6 15.62 ą 13% perf-profile.calltrace.cycles-pp.btrfs_lock_root_node.btrfs_search_slot.btrfs_insert_empty_items.copy_items.btrfs_log_inode
> 0.00 +15.7 15.73 ą 14% perf-profile.calltrace.cycles-pp.rwsem_down_write_slowpath.__btrfs_tree_lock.btrfs_lock_root_node.btrfs_search_slot.drop_objectid_items
> 0.00 +15.9 15.87 ą 14% perf-profile.calltrace.cycles-pp.__btrfs_tree_lock.btrfs_lock_root_node.btrfs_search_slot.drop_objectid_items.btrfs_log_inode
> 0.00 +15.9 15.93 ą 14% perf-profile.calltrace.cycles-pp.btrfs_lock_root_node.btrfs_search_slot.drop_objectid_items.btrfs_log_inode.log_new_dir_dentries
> 0.00 +17.3 17.26 ą 14% perf-profile.calltrace.cycles-pp.btrfs_search_slot.drop_objectid_items.btrfs_log_inode.log_new_dir_dentries.btrfs_log_inode_parent
> 0.00 +20.1 20.15 ą 15% perf-profile.calltrace.cycles-pp.btrfs_search_slot.btrfs_insert_empty_items.copy_items.btrfs_log_inode.log_new_dir_dentries
> 0.00 +20.9 20.86 ą 14% perf-profile.calltrace.cycles-pp.btrfs_insert_empty_items.copy_items.btrfs_log_inode.log_new_dir_dentries.btrfs_log_inode_parent
> 0.00 +21.7 21.73 ą 16% perf-profile.calltrace.cycles-pp.drop_objectid_items.btrfs_log_inode.log_new_dir_dentries.btrfs_log_inode_parent.btrfs_log_new_name
> 0.00 +21.8 21.77 ą 14% perf-profile.calltrace.cycles-pp.copy_items.btrfs_log_inode.log_new_dir_dentries.btrfs_log_inode_parent.btrfs_log_new_name
> 21.17 ą 4% +29.7 50.85 ą 8% perf-profile.calltrace.cycles-pp.__x64_sys_link.do_syscall_64.entry_SYSCALL_64_after_hwframe
> 21.17 ą 4% +29.7 50.85 ą 8% perf-profile.calltrace.cycles-pp.do_linkat.__x64_sys_link.do_syscall_64.entry_SYSCALL_64_after_hwframe
> 20.22 ą 4% +30.6 50.78 ą 8% perf-profile.calltrace.cycles-pp.vfs_link.do_linkat.__x64_sys_link.do_syscall_64.entry_SYSCALL_64_after_hwframe
> 20.17 ą 4% +30.6 50.78 ą 8% perf-profile.calltrace.cycles-pp.btrfs_link.vfs_link.do_linkat.__x64_sys_link.do_syscall_64
> 0.00 +45.5 45.51 ą 14% perf-profile.calltrace.cycles-pp.btrfs_log_inode.log_new_dir_dentries.btrfs_log_inode_parent.btrfs_log_new_name.btrfs_link
> 0.00 +46.9 46.92 ą 13% perf-profile.calltrace.cycles-pp.log_new_dir_dentries.btrfs_log_inode_parent.btrfs_log_new_name.btrfs_link.vfs_link
> 0.00 +49.4 49.36 ą 12% perf-profile.calltrace.cycles-pp.btrfs_log_new_name.btrfs_link.vfs_link.do_linkat.__x64_sys_link
> 0.00 +49.4 49.36 ą 12% perf-profile.calltrace.cycles-pp.btrfs_log_inode_parent.btrfs_log_new_name.btrfs_link.vfs_link.do_linkat
> 30.52 ą 3% -28.4 2.16 ą158% perf-profile.children.cycles-pp.do_unlinkat
> 30.35 ą 3% -28.2 2.15 ą158% perf-profile.children.cycles-pp.vfs_unlink
> 30.28 ą 3% -28.1 2.15 ą158% perf-profile.children.cycles-pp.btrfs_unlink
> 29.86 ą 3% -27.8 2.11 ą158% perf-profile.children.cycles-pp.btrfs_unlink_inode
> 29.86 ą 3% -27.7 2.11 ą158% perf-profile.children.cycles-pp.__btrfs_unlink_inode
> 19.65 ą 4% -18.3 1.36 ą158% perf-profile.children.cycles-pp.btrfs_add_link
> 18.68 ą 3% -17.4 1.31 ą158% perf-profile.children.cycles-pp.btrfs_del_inode_ref
> 12.52 ą 4% -11.6 0.88 ą158% perf-profile.children.cycles-pp.btrfs_insert_inode_ref
> 9.38 ą 4% -8.7 0.64 ą158% perf-profile.children.cycles-pp.btrfs_lookup_dir_item
> 6.93 ą 4% -6.5 0.46 ą158% perf-profile.children.cycles-pp.btrfs_insert_dir_item
> 6.17 ą 4% -5.8 0.41 ą158% perf-profile.children.cycles-pp.insert_with_overflow
> 29.64 ą 3% -3.0 26.61 ą 6% perf-profile.children.cycles-pp.osq_lock
> 3.23 ą 10% -2.9 0.30 ą117% perf-profile.children.cycles-pp.ret_from_fork
> 3.23 ą 10% -2.9 0.30 ą117% perf-profile.children.cycles-pp.kthread
> 0.63 ą 11% -0.4 0.20 ą 51% perf-profile.children.cycles-pp.poll_idle
> 0.73 ą 3% -0.4 0.32 ą 26% perf-profile.children.cycles-pp.btrfs_set_token_32
> 0.50 ą 7% -0.4 0.11 ą 55% perf-profile.children.cycles-pp.__btrfs_release_delayed_node
> 1.06 ą 5% -0.4 0.68 ą 19% perf-profile.children.cycles-pp.unlock_up
> 0.65 ą 8% -0.4 0.28 ą 28% perf-profile.children.cycles-pp.btrfs_get_token_32
> 0.50 ą 10% -0.2 0.27 ą 24% perf-profile.children.cycles-pp.check_setget_bounds
> 1.02 ą 7% -0.2 0.79 ą 17% perf-profile.children.cycles-pp.setup_items_for_insert
> 0.39 ą 6% -0.2 0.19 ą 17% perf-profile.children.cycles-pp.memmove
> 0.45 ą 8% -0.2 0.28 ą 24% perf-profile.children.cycles-pp.down_write
> 0.32 ą 8% -0.2 0.15 ą 34% perf-profile.children.cycles-pp.up_write
> 0.31 ą 7% -0.1 0.17 ą 14% perf-profile.children.cycles-pp.memmove_extent_buffer
> 0.21 ą 9% -0.1 0.07 ą 61% perf-profile.children.cycles-pp.mutex_lock
> 0.18 ą 11% -0.1 0.10 ą 26% perf-profile.children.cycles-pp.__list_del_entry_valid
> 0.17 ą 6% -0.1 0.09 ą 27% perf-profile.children.cycles-pp.kmem_cache_alloc
> 0.14 ą 10% -0.1 0.07 ą 29% perf-profile.children.cycles-pp.__might_sleep
> 0.15 ą 10% -0.1 0.08 ą 25% perf-profile.children.cycles-pp.___might_sleep
> 0.12 ą 11% -0.1 0.07 ą 15% perf-profile.children.cycles-pp.btrfs_reserve_metadata_bytes
> 0.12 ą 10% -0.0 0.07 ą 13% perf-profile.children.cycles-pp.__reserve_bytes
> 0.07 ą 9% +0.0 0.11 ą 11% perf-profile.children.cycles-pp.leaf_space_used
> 0.15 ą 8% +0.1 0.20 ą 11% perf-profile.children.cycles-pp.btrfs_get_32
> 0.00 +0.1 0.06 ą 12% perf-profile.children.cycles-pp.fill_inode_item
> 0.00 +0.1 0.07 ą 19% perf-profile.children.cycles-pp.btrfs_release_extent_buffer_pages
> 0.00 +0.1 0.07 ą 26% perf-profile.children.cycles-pp.btree_read_extent_buffer_pages
> 0.00 +0.1 0.08 ą 27% perf-profile.children.cycles-pp.insert_dir_log_key
> 0.03 ą 86% +0.1 0.11 ą 16% perf-profile.children.cycles-pp.btrfs_buffer_uptodate
> 0.10 ą 10% +0.1 0.18 ą 16% perf-profile.children.cycles-pp.btrfs_bin_search
> 0.24 ą 10% +0.1 0.32 ą 7% perf-profile.children.cycles-pp.btrfs_comp_cpu_keys
> 0.00 +0.1 0.09 ą 19% perf-profile.children.cycles-pp.tree_search_offset
> 0.00 +0.1 0.09 ą 18% perf-profile.children.cycles-pp.btrfs_use_block_rsv
> 0.00 +0.1 0.09 ą 25% perf-profile.children.cycles-pp.xas_load
> 0.00 +0.1 0.09 ą 13% perf-profile.children.cycles-pp.btrfs_commit_inode_delayed_inode
> 0.00 +0.1 0.10 ą 22% perf-profile.children.cycles-pp.fixup_low_keys
> 0.00 +0.1 0.11 ą 23% perf-profile.children.cycles-pp.del_ptr
> 0.00 +0.1 0.11 ą 25% perf-profile.children.cycles-pp.insert_ptr
> 0.00 +0.1 0.13 ą 23% perf-profile.children.cycles-pp.try_merge_free_space
> 0.09 ą 22% +0.1 0.24 ą 12% perf-profile.children.cycles-pp.release_extent_buffer
> 0.00 +0.2 0.17 ą 23% perf-profile.children.cycles-pp.btree_clear_page_dirty
> 0.13 ą 8% +0.2 0.31 ą 15% perf-profile.children.cycles-pp.__radix_tree_lookup
> 0.00 +0.2 0.19 ą 20% perf-profile.children.cycles-pp.pagecache_get_page
> 0.18 ą 9% +0.2 0.37 ą 19% perf-profile.children.cycles-pp.btrfs_get_64
> 0.00 +0.2 0.20 ą 22% perf-profile.children.cycles-pp.__set_page_dirty_nobuffers
> 0.00 +0.2 0.23 ą 23% perf-profile.children.cycles-pp.clear_extent_buffer_dirty
> 0.10 ą 6% +0.3 0.38 ą 31% perf-profile.children.cycles-pp.__push_leaf_left
> 0.07 ą 18% +0.3 0.39 ą 18% perf-profile.children.cycles-pp.set_extent_buffer_dirty
> 0.10 ą 10% +0.3 0.43 ą 17% perf-profile.children.cycles-pp.btrfs_mark_buffer_dirty
> 0.00 +0.4 0.35 ą 19% perf-profile.children.cycles-pp.read_tree_block
> 0.12 ą 7% +0.4 0.55 ą 30% perf-profile.children.cycles-pp.push_leaf_left
> 0.09 ą 13% +0.6 0.64 ą 16% perf-profile.children.cycles-pp.alloc_extent_buffer
> 0.00 +0.6 0.59 ą 30% perf-profile.children.cycles-pp.copy_for_split
> 0.00 +0.6 0.59 ą 14% perf-profile.children.cycles-pp.btrfs_read_node_slot
> 0.56 ą 8% +0.6 1.17 ą 14% perf-profile.children.cycles-pp.generic_bin_search
> 0.00 +0.8 0.82 ą 20% perf-profile.children.cycles-pp.copy_extent_buffer
> 0.00 +0.9 0.91 ą 19% perf-profile.children.cycles-pp.btrfs_unlock_up_safe
> 0.09 ą 10% +1.0 1.10 ą 16% perf-profile.children.cycles-pp.read_extent_buffer
> 0.00 +1.0 1.05 ą 99% perf-profile.children.cycles-pp.find_free_extent
> 0.00 +1.1 1.07 ą 98% perf-profile.children.cycles-pp.btrfs_reserve_extent
> 0.05 ą 43% +1.6 1.67 ą 64% perf-profile.children.cycles-pp.btrfs_alloc_tree_block
> 0.49 ą 8% +1.8 2.31 ą 83% perf-profile.children.cycles-pp.native_queued_spin_lock_slowpath
> 0.00 +1.8 1.83 ą 13% perf-profile.children.cycles-pp.btrfs_search_forward
> 0.00 +2.0 2.01 ą 18% perf-profile.children.cycles-pp.overwrite_item
> 0.00 +2.1 2.14 ą 18% perf-profile.children.cycles-pp.log_directory_changes
> 0.00 +2.1 2.14 ą 18% perf-profile.children.cycles-pp.log_dir_items
> 0.55 ą 5% +2.2 2.72 ą 41% perf-profile.children.cycles-pp.split_leaf
> 0.25 ą 16% +2.6 2.87 ą 75% perf-profile.children.cycles-pp.btrfs_del_leaf
> 1.14 ą 5% +2.8 3.92 ą 54% perf-profile.children.cycles-pp.btrfs_del_items
> 17.66 ą 4% +4.7 22.37 ą 6% perf-profile.children.cycles-pp.btrfs_insert_empty_items
> 0.00 +21.9 21.87 ą 16% perf-profile.children.cycles-pp.drop_objectid_items
> 0.00 +21.9 21.90 ą 14% perf-profile.children.cycles-pp.copy_items
> 21.17 ą 4% +29.7 50.85 ą 8% perf-profile.children.cycles-pp.__x64_sys_link
> 21.17 ą 4% +29.7 50.85 ą 8% perf-profile.children.cycles-pp.do_linkat
> 20.22 ą 4% +30.6 50.78 ą 8% perf-profile.children.cycles-pp.vfs_link
> 20.17 ą 4% +30.6 50.78 ą 8% perf-profile.children.cycles-pp.btrfs_link
> 0.00 +46.9 46.92 ą 13% perf-profile.children.cycles-pp.log_new_dir_dentries
> 0.00 +47.9 47.94 ą 13% perf-profile.children.cycles-pp.btrfs_log_inode
> 0.00 +49.4 49.36 ą 12% perf-profile.children.cycles-pp.btrfs_log_new_name
> 0.00 +49.4 49.36 ą 12% perf-profile.children.cycles-pp.btrfs_log_inode_parent
> 29.45 ą 3% -3.0 26.45 ą 6% perf-profile.self.cycles-pp.osq_lock
> 0.60 ą 11% -0.4 0.19 ą 54% perf-profile.self.cycles-pp.poll_idle
> 0.55 ą 4% -0.3 0.24 ą 25% perf-profile.self.cycles-pp.btrfs_set_token_32
> 0.53 ą 8% -0.3 0.22 ą 28% perf-profile.self.cycles-pp.btrfs_get_token_32
> 0.92 ą 5% -0.3 0.62 ą 9% perf-profile.self.cycles-pp._raw_spin_lock
> 0.38 ą 6% -0.2 0.18 ą 20% perf-profile.self.cycles-pp.memmove
> 0.34 ą 5% -0.2 0.14 ą 36% perf-profile.self.cycles-pp.find_extent_buffer_nolock
> 0.41 ą 9% -0.2 0.23 ą 25% perf-profile.self.cycles-pp.check_setget_bounds
> 0.31 ą 7% -0.2 0.14 ą 35% perf-profile.self.cycles-pp.up_write
> 0.17 ą 9% -0.1 0.05 ą 96% perf-profile.self.cycles-pp.mutex_lock
> 0.31 ą 6% -0.1 0.20 ą 24% perf-profile.self.cycles-pp.down_write
> 0.18 ą 9% -0.1 0.10 ą 25% perf-profile.self.cycles-pp.__list_del_entry_valid
> 0.14 ą 10% -0.1 0.06 ą 47% perf-profile.self.cycles-pp.__might_sleep
> 0.14 ą 9% -0.1 0.08 ą 25% perf-profile.self.cycles-pp.___might_sleep
> 0.04 ą 41% +0.1 0.10 ą 10% perf-profile.self.cycles-pp.unlock_up
> 0.00 +0.1 0.07 ą 17% perf-profile.self.cycles-pp.alloc_extent_buffer
> 0.10 ą 10% +0.1 0.18 ą 16% perf-profile.self.cycles-pp.btrfs_bin_search
> 0.00 +0.1 0.08 ą 12% perf-profile.self.cycles-pp.btrfs_read_node_slot
> 0.23 ą 9% +0.1 0.31 ą 8% perf-profile.self.cycles-pp.btrfs_comp_cpu_keys
> 0.00 +0.1 0.08 ą 23% perf-profile.self.cycles-pp.xas_load
> 0.00 +0.1 0.09 ą 19% perf-profile.self.cycles-pp.tree_search_offset
> 0.00 +0.1 0.10 ą 22% perf-profile.self.cycles-pp.btrfs_buffer_uptodate
> 0.06 ą 15% +0.1 0.18 ą 15% perf-profile.self.cycles-pp.set_extent_buffer_dirty
> 0.00 +0.1 0.13 ą 24% perf-profile.self.cycles-pp.pagecache_get_page
> 0.13 ą 5% +0.1 0.28 ą 17% perf-profile.self.cycles-pp.btrfs_get_64
> 0.12 ą 9% +0.2 0.30 ą 14% perf-profile.self.cycles-pp.__radix_tree_lookup
> 0.00 +0.2 0.18 ą 17% perf-profile.self.cycles-pp.btrfs_search_forward
> 0.34 ą 10% +0.5 0.85 ą 17% perf-profile.self.cycles-pp.generic_bin_search
> 0.09 ą 11% +1.0 1.09 ą 16% perf-profile.self.cycles-pp.read_extent_buffer
> 0.49 ą 8% +1.8 2.27 ą 83% perf-profile.self.cycles-pp.native_queued_spin_lock_slowpath
>
>
>
> stress-ng.time.file_system_outputs
>
> 6e+07 +-------------------------------------------------------------------+
> | O |
> 5e+07 |-+ O O O O O OO O O O O |
> | O O O O OO |
> | O O O O O O O |
> 4e+07 |-O O |
> | |
> 3e+07 |-+ |
> | |
> 2e+07 |-+ |
> | |
> | |
> 1e+07 |-+ |
> | |
> 0 +-------------------------------------------------------------------+
>
>
> stress-ng.link.ops
>
> 250 +---------------------------------------------------------------------+
> | +.++.+.+.+.+. +. .+.+. .++.+.+.+.+.+.+ .+.+.+.+.++.+. .+.+.++ +.|
> | + + + + + |
> 200 |-+ |
> | |
> | |
> 150 |-+ |
> | |
> 100 |-+ |
> | |
> | |
> 50 |-+ O O O O O O O |
> | O O O O O O O OO O O O O O O O O OO O |
> | |
> 0 +---------------------------------------------------------------------+
>
>
> stress-ng.link.ops_per_sec
>
> 4.5 +---------------------------------------------------------------------+
> | |
> 4 |.+.+.++.+.+.+.+. +. .+. .+ .+.+.+.+. .+.+.+.++.+. .+ .+.+.|
> 3.5 |-+ + + +.+ + +.++.+ +.+.+ + |
> | |
> 3 |-+ |
> 2.5 |-+ |
> | |
> 2 |-+ |
> 1.5 |-+ |
> | |
> 1 |-+ |
> 0.5 |-+ O OO O O O O OO O O O O OO O O O O O OO O O O O |
> | O |
> 0 +---------------------------------------------------------------------+
>
>
> [*] bisect-good sample
> [O] bisect-bad sample
>
>
>
> Disclaimer:
> Results have been estimated based on internal Intel analysis and are provided
> for informational purposes only. Any difference in system hardware or software
> design or configuration may affect actual performance.
>
>
> ---
> 0DAY/LKP+ Test Infrastructure Open Source Technology Center
> https://lists.01.org/hyperkitty/list/lkp@xxxxxxxxxxxx Intel Corporation
>
> Thanks,
> Oliver Sang
>
--
Filipe David Manana,
“Whether you think you can, or you think you can't — you're right.”