The latest patch handles it by introducing new @super_num parameter and different check timing.
Thanks, Qu On 2018年04月23日 09:20, kernel test robot wrote: > > FYI, we noticed the following commit (built with gcc-7): > > commit: 7eafb77890ff459863e3bc772465cb641c14f754 ("btrfs: Do super block > verification before writing it to disk") > https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master > > in testcase: fsmark > with following parameters: > > iterations: 1x > nr_threads: 1t > disk: 1BRD_32G > fs: btrfs > fs2: nfsv4 > filesize: 4K > test_size: 4G > sync_method: fsyncBeforeClose > nr_files_per_directory: 1fpd > cpufreq_governor: performance > > test-description: The fsmark is a file system benchmark to test synchronous > write workloads, for example, mail servers workload. > test-url: https://sourceforge.net/projects/fsmark/ > > > on test machine: 88 threads Intel(R) Xeon(R) CPU E5-2699 v4 @ 2.20GHz with > 64G memory > > caused below changes (please refer to attached dmesg/kmsg for entire > log/backtrace): > > > > [ 128.496659] ------------[ cut here ]------------ > [ 128.502439] BTRFS: Transaction aborted (error -117) > [ 128.50[ 128.521041] Modules linked in: rpcsec_gss_krb5 nfsv4 dns_resolver > nfsd auth_rpcgss dm_mod brd btrfs xor zstd_decompress zstd_compress xxhash > raid6_pq sd_mod sg intel_rapl sb_edac x86_pkg_temp_thermal intel_powerclamp > coretemp kvm_intel kvm irqbypass crct10dif_pclmul crc32_pclmul crc32c_intel > mgag200 ghash_clmulni_intel snd_pcm ttm snd_timer pcbc drm_kms_helper ipmi_si > mxm_wmi snd syscopyarea aesni_intel ipmi_devintf sysfillrect soundcore > crypto_simd sysimgblt ahci fb_sys_fops glue_helper cryptd libahci drm > ipmi_msghandler pcspkr libata shpchp wmi acpi_power_meter acpi_pad ip_tables > [ 128.581706] CPU: 21 PID: 1581 Comm: nfsd Not tainted > 4.16.0-rc7-00174-g7eafb77 #1 > [ 128.590723] Hardware name: Intel Corporation S2600KPR/S2600KPR, BIOS > SE5C610.86B.01.01.0019.101220160604 10/12/2016 > [ 128.602982] RIP: 0010:btrfs_sync_log+0x9c4/0xbe0 [btrfs] > [ 128.609603] RSP: 0018:ffffc90008903ad0 EFLAGS: 00010282 > [ 128.616053] RAX: 0000000000000027 RBX: ffff881037f0c800 RCX: > 0000000000000000 > [ 128.624712] RDX: ffff88085f75ed00 RSI: ffff88085f756918 RDI: > ffff88085f756918 > [ 128.633366] RBP: ffffc90008903bb0 R08: 0000000000000807 R09: > 0000000000aaaaaa > [ 128.641948] R10: ffffc90008903a00 R11: ffff88085a4c2ec0 R12: > ffff881074934000 > [ 128.650601] R13: 00000000ffffff8b R14: ffff88107a630000 R15: > ffff881074933800 > [ 128.659213] FS: 0000000000000000(0000) GS:ffff88085f740000(0000) > knlGS:0000000000000000 > [ 128.668879] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 > [ 128.675904] CR2: 00007f4a6a747660 CR3: 000000107f20a001 CR4: > 00000000003606e0 > [ 128.684570] DR0: 0000000000000000 DR1: 0000000000000000 DR2: > 0000000000000000 > [ 128.693185] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: > 0000000000000400 > [ 128.701795] Call Trace: > [ 128.705166] ? btrfs_sync_file+0x2f3/0x3f0 [btrfs] > [ 128.711151] btrfs_sync_file+0x2f3/0x3f0 [btrfs] > [ 128.716910] btrfs_file_write_iter+0x440/0x550 [btrfs] > [ 128.723284] do_iter_readv_writev+0x116/0x170 > [ 128.728753] do_iter_write+0x80/0x190 > [ 128.733487] nfsd_vfs_write+0xaf/0x370 [nfsd] > [ 128.738885] nfsd4_write+0x179/0x1c0 [nfsd] > [ 128.744121] nfsd4_proc_compound+0x3f1/0x640 [nfsd] > [ 128.750123] nfsd_dispatch+0xf5/0x230 [nfsd] > [ 128.755499] svc_process_common+0x496/0x680 > [ 128.760732] ? nfsd_destroy+0x60/0x60 [nfsd] > [ 128.765996] svc_process+0xed/0x1b0 > [ 128.770499] nfsd+0xf1/0x160 [nfsd] > [ 128.774899] kthread+0x11e/0x140 > [ 128.778988] ? kthread_associate_blkcg+0xb0/0xb0 > [ 128.784679] ret_from_fork+0x35/0x40 > [ 128.789187] Code: 00 00 48 8b 42 50 f0 48 0f ba a8 e8 cd 00 00 02 72 1b 41 > 83 fd fb 0f 84 6f 01 00 00 44 89 ee 48 c7 c7 40 ec 76 a0 e8 3c f1 95 e0 <0f> > 0b 48 8b bd 60 ff ff ff 44 89 e9 ba 1d 0c 00 00 48 c7 c6 20 > [ 128.811411] ---[ end trace 6c998d6c6547e8f7 ]--- > [ 128.817132] BTRFS: error (device ram0) in btrfs_sync_log:3101: errno=-117 > unknown > [ 128.826014] BTRFS info (device ram0): forced readonly > [ 128.835886] fs_mark: fsync failed Input/output error > > 2018-04-19 17:23:24 fs_mark -d /nfs/ram0/1 -D 1000000 -N 1 -n 1000000 -L 1 -S > 1 -s 4096 > > # fs_mark -d /nfs/ram0/1 -D 1000000 -N 1 -n 1000000 -L 1 -S 1 > -s 4096 > # Version 3.3, 1 thread(s) starting at Thu Apr 19 17:23:25 2018 > # Sync method: INBAND FSYNC: fsync() per file in write loop. > # Directories: Round Robin between directories across 1000000 > subdirectories with 1 files per subdirectory. > # File names: 40 bytes long, (16 initial bytes of time stamp with 24 > random bytes at end of name) > # Files info: size 4096 bytes, written with an IO size of 16384 bytes per > write > # App overhead is time in microseconds spent in the test not doing file > writing related system calls. > > FSUse% Count Size Files/sec App Overhead > > > > 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 run job.yaml > > > > Thanks, > Xiaolong >
signature.asc
Description: OpenPGP digital signature