lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170125042706.GL17561@yexl-desktop>
Date:   Wed, 25 Jan 2017 12:27:06 +0800
From:   Ye Xiaolong <xiaolong.ye@...el.com>
To:     Michal Hocko <mhocko@...nel.org>
Cc:     Stephen Rothwell <sfr@...b.auug.org.au>,
        Minchan Kim <minchan@...nel.org>,
        Hillf Danton <hillf.zj@...baba-inc.com>,
        Mel Gorman <mgorman@...e.de>,
        Johannes Weiner <hannes@...xchg.org>,
        Andrew Morton <akpm@...ux-foundation.org>,
        LKML <linux-kernel@...r.kernel.org>, lkp@...org
Subject: Re: [lkp-robot] [mm, vmscan]  5e56dfbd83:  fsmark.files_per_sec
 -11.1% regression

On 01/24, Michal Hocko wrote:
>On Mon 23-01-17 09:26:44, kernel test robot wrote:
>> 
>> Greeting,
>> 
>> FYI, we noticed a -11.1% regression of fsmark.files_per_sec due to commit:
>> 
>> 
>> commit: 5e56dfbd837421b7fa3c6c06018c6701e2704917 ("mm, vmscan: consider eligible zones in get_scan_count")
>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
>
>This is more than unexpected. This patch should be basically noop for
>anything but CONFIG_HIGHMEM systems. And your config says this is 64b
>kernel. Are those results reproducible? And could you try to compare

Yes, the results are well reproducible, both the commit in question and its
parent have ran for 4 times.

>perf profiles before and after the patch.

Here is the perf profiles, 

Before the patch:
 "perf-profile.children.cycles-pp.verify_cpu"=>[70.92],
 "perf-profile.children.cycles-pp.cpu_startup_entry"=>[70.92],
 "perf-profile.children.cycles-pp.do_idle"=>[70.69],
 "perf-profile.children.cycles-pp.call_cpuidle"=>[69.18],
 "perf-profile.children.cycles-pp.cpuidle_enter"=>[69.14],
 "perf-profile.children.cycles-pp.cpuidle_enter_state"=>[68.63],
 "perf-profile.children.cycles-pp.start_secondary"=>[66.52],
 "perf-profile.children.cycles-pp.intel_idle"=>[39.82],
 "perf-profile.children.cycles-pp.ret_from_fork"=>[19.28],
 "perf-profile.children.cycles-pp.kthread"=>[19.26],
 "perf-profile.children.cycles-pp.md_thread"=>[16.0],
 "perf-profile.children.cycles-pp.raid5d"=>[15.98],
 "perf-profile.children.cycles-pp.handle_active_stripes"=>[15.68],
 "perf-profile.children.cycles-pp.handle_stripe"=>[15.62],
 "perf-profile.children.cycles-pp.__irqentry_text_start"=>[14.61],
 "perf-profile.children.cycles-pp.smp_apic_timer_interrupt"=>[14.41],
 "perf-profile.children.cycles-pp.raid_run_ops"=>[11.22],
 "perf-profile.children.cycles-pp.poll_idle"=>[10.53],
 "perf-profile.children.cycles-pp._raw_spin_lock"=>[9.31],
 "perf-profile.children.cycles-pp.entry_SYSCALL_64_fastpath"=>[9.17],
 "perf-profile.children.cycles-pp.irq_enter"=>[9.16],
 "perf-profile.children.cycles-pp.tick_irq_enter"=>[8.88],
 "perf-profile.children.cycles-pp.sys_write"=>[8.36],
 "perf-profile.children.cycles-pp.vfs_write"=>[8.29],
 "perf-profile.children.cycles-pp.__vfs_write"=>[8.15],
 "perf-profile.children.cycles-pp.btrfs_file_write_iter"=>[8.04],
 "perf-profile.children.cycles-pp.__btrfs_buffered_write"=>[7.87],
 "perf-profile.children.cycles-pp.native_queued_spin_lock_slowpath"=>[7.42],
 "perf-profile.children.cycles-pp.async_copy_data"=>[7.02],
 "perf-profile.children.cycles-pp.tick_do_update_jiffies64"=>[6.86],
 "perf-profile.children.cycles-pp.irq_exit"=>[4.53],
 "perf-profile.children.cycles-pp.x86_64_start_kernel"=>[4.4],
 "perf-profile.children.cycles-pp.x86_64_start_reservations"=>[4.4],
 "perf-profile.children.cycles-pp.start_kernel"=>[4.4],
 "perf-profile.children.cycles-pp.rest_init"=>[4.4],
 "perf-profile.children.cycles-pp.generic_make_request"=>[3.87],
 "perf-profile.children.cycles-pp.memcpy_erms"=>[3.85],
 "perf-profile.children.cycles-pp.__softirqentry_text_start"=>[3.15],
 "perf-profile.children.cycles-pp.worker_thread"=>[3.01],
 "perf-profile.children.cycles-pp.btrfs_copy_from_user"=>[2.96],
 "perf-profile.children.cycles-pp.process_one_work"=>[2.89],
 "perf-profile.children.cycles-pp.local_apic_timer_interrupt"=>[2.87],
 "perf-profile.children.cycles-pp.copy_user_enhanced_fast_string"=>[2.82],
 "perf-profile.children.cycles-pp.hrtimer_interrupt"=>[2.67],
 "perf-profile.children.cycles-pp.ops_run_io"=>[2.54],
 "perf-profile.children.cycles-pp.ret_from_intr"=>[2.5],
 "perf-profile.children.cycles-pp.do_IRQ"=>[2.5],
 "perf-profile.children.cycles-pp.btrfs_scrubparity_helper"=>[2.47],
 "perf-profile.children.cycles-pp.btrfs_submit_helper"=>[2.27],
 "perf-profile.children.cycles-pp.pending_bios_fn"=>[2.27],
 "perf-profile.children.cycles-pp.run_scheduled_bios"=>[2.27],
 "perf-profile.children.cycles-pp.submit_bio"=>[2.27],
 "perf-profile.children.cycles-pp.md_make_request"=>[2.27],
 "perf-profile.children.cycles-pp.raid5_make_request"=>[2.21],
 "perf-profile.children.cycles-pp.blk_done_softirq"=>[2.19],
 "perf-profile.children.cycles-pp.scsi_softirq_done"=>[2.19],
 "perf-profile.children.cycles-pp.scsi_finish_command"=>[2.16],
 "perf-profile.children.cycles-pp.scsi_io_completion"=>[2.13],
 "perf-profile.children.cycles-pp.scsi_end_request"=>[2.13],
 "perf-profile.children.cycles-pp.irq_work_run"=>[1.97],
 "perf-profile.children.cycles-pp.irq_work_run_list"=>[1.97],
 "perf-profile.children.cycles-pp.irq_work_interrupt"=>[1.96],
 "perf-profile.children.cycles-pp.smp_irq_work_interrupt"=>[1.96],
 "perf-profile.children.cycles-pp.perf_duration_warn"=>[1.96],
 "perf-profile.children.cycles-pp.printk"=>[1.96],
 "perf-profile.children.cycles-pp.vprintk_default"=>[1.96],
 "perf-profile.children.cycles-pp.vprintk_emit"=>[1.96],
 "perf-profile.children.cycles-pp.console_unlock"=>[1.96],


After the patch:

 "perf-profile.children.cycles-pp.verify_cpu"=>[78.74],
 "perf-profile.children.cycles-pp.cpu_startup_entry"=>[78.74],
 "perf-profile.children.cycles-pp.do_idle"=>[78.5],
 "perf-profile.children.cycles-pp.start_secondary"=>[76.96],
 "perf-profile.children.cycles-pp.call_cpuidle"=>[76.44],
 "perf-profile.children.cycles-pp.cpuidle_enter"=>[76.36],
 "perf-profile.children.cycles-pp.cpuidle_enter_state"=>[75.89],
 "perf-profile.children.cycles-pp.intel_idle"=>[46.78],
 "perf-profile.children.cycles-pp.__irqentry_text_start"=>[17.15],
 "perf-profile.children.cycles-pp.smp_apic_timer_interrupt"=>[16.95],
 "perf-profile.children.cycles-pp._raw_spin_lock"=>[11.27],
 "perf-profile.children.cycles-pp.irq_enter"=>[10.85],
 "perf-profile.children.cycles-pp.tick_irq_enter"=>[10.4],
 "perf-profile.children.cycles-pp.entry_SYSCALL_64_fastpath"=>[10.4],
 "perf-profile.children.cycles-pp.ret_from_fork"=>[10.16],
 "perf-profile.children.cycles-pp.kthread"=>[10.16],
 "perf-profile.children.cycles-pp.sys_write"=>[9.72],
 "perf-profile.children.cycles-pp.vfs_write"=>[9.66],
 "perf-profile.children.cycles-pp.__vfs_write"=>[9.59],
 "perf-profile.children.cycles-pp.btrfs_file_write_iter"=>[9.45],
 "perf-profile.children.cycles-pp.__btrfs_buffered_write"=>[9.35],
 "perf-profile.children.cycles-pp.native_queued_spin_lock_slowpath"=>[8.93],
 "perf-profile.children.cycles-pp.poll_idle"=>[8.43],
 "perf-profile.children.cycles-pp.tick_do_update_jiffies64"=>[7.91],
 "perf-profile.children.cycles-pp.md_thread"=>[7.57],
 "perf-profile.children.cycles-pp.raid5d"=>[7.57],
 "perf-profile.children.cycles-pp.handle_active_stripes"=>[7.38],
 "perf-profile.children.cycles-pp.handle_stripe"=>[7.37],
 "perf-profile.children.cycles-pp.raid_run_ops"=>[5.03],
 "perf-profile.children.cycles-pp.irq_exit"=>[3.59],
 "perf-profile.children.cycles-pp.async_copy_data"=>[3.41],
 "perf-profile.children.cycles-pp.btrfs_copy_from_user"=>[3.36],
 "perf-profile.children.cycles-pp.local_apic_timer_interrupt"=>[3.29],
 "perf-profile.children.cycles-pp.copy_user_enhanced_fast_string"=>[3.22],
 "perf-profile.children.cycles-pp.hrtimer_interrupt"=>[3.15],
 "perf-profile.children.cycles-pp.memcpy_erms"=>[2.37],
 "perf-profile.children.cycles-pp.worker_thread"=>[2.33],
 "perf-profile.children.cycles-pp.process_one_work"=>[2.22],
 "perf-profile.children.cycles-pp.generic_make_request"=>[2.15],
 "perf-profile.children.cycles-pp.btrfs_delalloc_reserve_metadata"=>[2.0],
 "perf-profile.children.cycles-pp.__hrtimer_run_queues"=>[1.93],
 "perf-profile.children.cycles-pp.prepare_pages"=>[1.8],
 "perf-profile.children.cycles-pp.x86_64_start_kernel"=>[1.78],
 "perf-profile.children.cycles-pp.x86_64_start_reservations"=>[1.78],
 "perf-profile.children.cycles-pp.start_kernel"=>[1.78],
 "perf-profile.children.cycles-pp.rest_init"=>[1.78],
 "perf-profile.children.cycles-pp.pagecache_get_page"=>[1.76],
 "perf-profile.children.cycles-pp.__tick_nohz_idle_enter"=>[1.73],
 "perf-profile.children.cycles-pp.btrfs_scrubparity_helper"=>[1.7],
 "perf-profile.children.cycles-pp.tick_nohz_irq_exit"=>[1.63],
 "perf-profile.children.cycles-pp.__softirqentry_text_start"=>[1.62],
 "perf-profile.children.cycles-pp.btrfs_submit_helper"=>[1.46],
 "perf-profile.children.cycles-pp.pending_bios_fn"=>[1.46],
 "perf-profile.children.cycles-pp.run_scheduled_bios"=>[1.46],
 "perf-profile.children.cycles-pp.submit_bio"=>[1.45],
 "perf-profile.children.cycles-pp.md_make_request"=>[1.45],
 "perf-profile.children.cycles-pp.raid5_make_request"=>[1.42],
 "perf-profile.children.cycles-pp.irq_work_interrupt"=>[1.36],
 "perf-profile.children.cycles-pp.smp_irq_work_interrupt"=>[1.36],
 "perf-profile.children.cycles-pp.irq_work_run"=>[1.36],
 "perf-profile.children.cycles-pp.irq_work_run_list"=>[1.36],
 "perf-profile.children.cycles-pp.perf_duration_warn"=>[1.36],
 "perf-profile.children.cycles-pp.printk"=>[1.36],
 "perf-profile.children.cycles-pp.vprintk_default"=>[1.36],
 "perf-profile.children.cycles-pp.vprintk_emit"=>[1.36],
 "perf-profile.children.cycles-pp.console_unlock"=>[1.36],


Thanks,
Xiaolong

>-- 
>Michal Hocko
>SUSE Labs

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ