Great. Thanks for the info! On Thu, Jan 24, 2019 at 12:51 AM Steve French <smfrench@xxxxxxxxx> wrote: > > This and three other xfstests (that were unfortunately not in the > regression test bucket but now will be) did fail as a sideeffect of > the credit changes he did. Pavel posted fixes for these in > https://github.com/piastry/linux/commits/credit-reconnect8. I > verified that the first six are the important ones, and these are the > ones that we are focusing on for review and testing to get in ASAP so > any additional review or testing would be appreciated. I am running > these six on top of for-next (which has three minor fixes) and is > passing the attached in my tests but additional data would be useful. > > ffcb47505156872a4e7aa7592a6260998e7da912 (HEAD -> > pavel-reconnect8-mini-6-patch) CIFS: Fix mounts if the client is low > on credits > dd98b1fba91454eed2a7562f99534265c886c2dc CIFS: Do not assume one > credit for async responses > 40f4e13994691cf3c6659cc70a5e0cf5b668ad1c CIFS: Fix credit calculations > in compound mid callback > 016ca04f33c325b9f488eca558b9def487a9e19e CIFS: Fix credit calculation > for encrypted reads with errors > ffdca6db5432ce21ba4428dd822b3d7116b7fefc CIFS: Fix credits > calculations for reads with errors > 4c219bb001c4564496bccf8a195b60cac703b7ef CIFS: Do not reconnect TCP > session in add_credits() > > > for-next branch currently includes these three: > (for-next) smb3: Cleanup license mess > 1b81bef5e216c07fa012efc0f9c44bc7c357f4b2 CIFS: Fix possible hang > during async MTU reads and writes > 4881ad509be629c3e0ed6a58dbef3e16696586df cifs: fix memory leak of an > allocated cifs_ntsd structure > > > > On Wed, Jan 23, 2019 at 2:55 AM Murphy Zhou <jencce.kernel@xxxxxxxxx> wrote: > > > > Hi, > > > > xfstests generic/465 on CIFS starts to block since: > > > > commit 8544f4aa9dd19a04d1244dae10feecc813ccf175 > > Author: Pavel Shilovsky <pshilov@xxxxxxxxxxxxx> > > Date: Sat Dec 22 12:40:05 2018 -0800 > > > > CIFS: Fix credit computation for compounded requests > > > > It's easy to reproduce v3.11 and v3.0 on latest Linus tree. > > > > Ctrl-c can not interrupt the tests, Ctrl-z + kill -9 %1 can clean some test > > process, but umounting cifs mountpoint will never return. > > > > Attaching script to reproduce on rpm/yum based distros: > > # single -f cifs -v 3.11 -t generic/465 > > > > Thanks, > > Murphy > > > > # options: > > > > FSTYP -- cifs > > PLATFORM -- Linux/x86_64 8u 5.0.0-rc3-v5.0-rc3-27-g48b1619 > > MKFS_OPTIONS -- //localhost/scratch > > MOUNT_OPTIONS -- -o > > vers=3.11,username=root,password=redhat,sfu,mfsymlinks -o > > context=system_u:object_r:root_t:s0 //localhost/scratch /cifssch > > > > # ps output: > > > > 5705 5725 5725 5705 ttyS0 5725 S+ 0 0:00 \_ /bin/bash > > /root/bin/single -f cifs -v 3.11 -t generic/465 > > 5725 5840 5725 5705 ttyS0 5725 S+ 0 0:00 \_ > > /bin/bash ./check -T generic/465 > > 5840 6077 5725 5705 ttyS0 5725 S+ 0 0:00 \_ > > /bin/bash ./tests/generic/465 > > 6077 6378 5725 5705 ttyS0 5725 D+ 0 0:00 > > \_ src/aio-dio-regress/aio-dio-append-write-read-race -a 4096 > > /cifsmnt/465.6077.4096 > > 6077 6379 5725 5705 ttyS0 5725 S+ 0 0:00 > > \_ tee -a /root/xfstests-dev/results//generic/465.full > > > > # sysrq output: > > > > [93691.957955] sysrq: SysRq : Show Blocked State > > [93691.960158] task PC stack pid father > > [93691.963380] kworker/u64:0 D 0 5383 2 0x80000080 > > [93691.967752] Workqueue: writeback wb_workfn (flush-cifs-6) > > [93691.971435] Call Trace: > > [93691.973692] ? __schedule+0x24e/0x860 > > [93691.976240] schedule+0x28/0x70 > > [93691.978696] smb2_wait_mtu_credits+0x97/0x180 [cifs] > > [93691.982179] ? finish_wait+0x80/0x80 > > [93691.984764] cifs_writepages+0x108/0xac0 [cifs] > > [93691.987732] ? select_task_rq_fair+0x335/0xec0 > > [93691.990519] do_writepages+0x41/0xd0 > > [93691.992826] ? __percpu_counter_sum+0x56/0x60 > > [93691.995505] __writeback_single_inode+0x3d/0x350 > > [93691.998423] writeback_sb_inodes+0x1e5/0x480 > > [93692.001032] __writeback_inodes_wb+0x5d/0xb0 > > [93692.003624] wb_writeback+0x25f/0x2f0 > > [93692.005906] ? bpf_lru_populate+0x30/0x1b0 > > [93692.008491] ? cpumask_next+0x17/0x20 > > [93692.010535] wb_workfn+0x342/0x400 > > [93692.012471] ? __switch_to_asm+0x40/0x70 > > [93692.014666] process_one_work+0x1a1/0x3a0 > > [93692.016938] worker_thread+0x30/0x380 > > [93692.018984] ? mod_delayed_work_on+0x90/0x90 > > [93692.021377] kthread+0x112/0x130 > > [93692.023258] ? __kthread_parkme+0x70/0x70 > > [93692.025502] ret_from_fork+0x35/0x40 > > [93692.027580] aio-dio-append- D 0 6378 6077 0x00000080 > > [93692.030308] Call Trace: > > [93692.031602] ? __schedule+0x24e/0x860 > > [93692.033480] ? kmem_cache_alloc+0x14d/0x1b0 > > [93692.035595] schedule+0x28/0x70 > > [93692.037234] wait_for_free_request+0xc3/0x190 [cifs] > > [93692.039817] ? finish_wait+0x80/0x80 > > [93692.041677] compound_send_recv+0x109/0x690 [cifs] > > [93692.044136] ? smb2_plain_req_init+0x11d/0x260 [cifs] > > [93692.046713] smb2_compound_op+0x723/0x870 [cifs] > > [93692.049066] ? mem_cgroup_try_charge+0x86/0x190 > > [93692.051397] ? smb2_query_path_info+0x8c/0x110 [cifs] > > [93692.053935] smb2_query_path_info+0x8c/0x110 [cifs] > > [93692.056415] cifs_get_inode_info+0x248/0xa80 [cifs] > > [93692.058869] ? _cond_resched+0x15/0x30 > > [93692.060771] ? __kmalloc+0x164/0x200 > > [93692.062614] ? build_path_from_dentry_optional_prefix+0xc9/0x400 [cifs] > > [93692.065949] ? build_path_from_dentry_optional_prefix+0xeb/0x400 [cifs] > > [93692.069140] cifs_revalidate_dentry_attr+0xd6/0x390 [cifs] > > [93692.071685] cifs_revalidate_dentry+0xf/0x20 [cifs] > > [93692.073966] cifs_d_revalidate+0x20/0xa0 [cifs] > > [93692.076074] path_openat+0x80e/0x16b0 > > [93692.077897] ? filemap_map_pages+0x1b3/0x390 > > [93692.079865] do_filp_open+0x93/0x100 > > [93692.081569] ? __check_object_size+0x15d/0x189 > > [93692.083630] do_sys_open+0x186/0x220 > > [93692.085368] do_syscall_64+0x55/0x1a0 > > [93692.087102] entry_SYSCALL_64_after_hwframe+0x44/0xa9 > > [93692.089238] RIP: 0033:0x7fd4362062af > > [93692.090764] Code: Bad RIP value. > > [93692.092174] RSP: 002b:00007ffe4e91fc40 EFLAGS: 00000246 ORIG_RAX: > > 0000000000000101 > > [93692.095309] RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 00007fd4362062af > > [93692.098409] RDX: 0000000000004241 RSI: 00007ffe4e922049 RDI: 00000000ffffff9c > > [93692.101394] RBP: 00007ffe4e91fe98 R08: 0000000000000000 R09: 0000000000000000 > > [93692.104396] R10: 00000000000001a4 R11: 0000000000000246 R12: 00007ffe4e922049 > > [93692.110203] R13: 0000000000001000 R14: 00007ffe4e922022 R15: 0000000000000000 > > > > > > bisect log: > > > > git bisect start > > # good: [e1706720408e72fb883f6b151c2b3b23d8e7e5b2] phy: fix build > > breakage: add PHY_MODE_SATA > > git bisect good e1706720408e72fb883f6b151c2b3b23d8e7e5b2 > > # bad: [6b529fb0a3eabf9c4cc3e94c11477250379ce6d8] Merge tag > > 'for-5.0-rc1-tag' of > > git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux > > git bisect bad 6b529fb0a3eabf9c4cc3e94c11477250379ce6d8 > > # bad: [1dd8a3f6c619723ab442d6a27247d2f2153f3b11] Merge tag > > 'usb-5.0-rc2' of > > git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb > > git bisect bad 1dd8a3f6c619723ab442d6a27247d2f2153f3b11 > > # bad: [8a26f0f781f56d3016b34a2217e346973d067e7b] CIFS: Fix credits > > calculation for cancelled requests > > git bisect bad 8a26f0f781f56d3016b34a2217e346973d067e7b > > # bad: [8544f4aa9dd19a04d1244dae10feecc813ccf175] CIFS: Fix credit > > computation for compounded requests > > git bisect bad 8544f4aa9dd19a04d1244dae10feecc813ccf175 > > # good: [c715f89c4dab76317c773df2611af2dac4dea2b7] cifs: Fix a tiny > > potential memory leak > > git bisect good c715f89c4dab76317c773df2611af2dac4dea2b7 > > # good: [33fa5c8b8a7dbe6353a56eaa654b790348890d42] CIFS: Do not set > > credits to 1 if the server didn't grant anything > > git bisect good 33fa5c8b8a7dbe6353a56eaa654b790348890d42 > > # first bad commit: [8544f4aa9dd19a04d1244dae10feecc813ccf175] CIFS: > > Fix credit computation for compounded requests > > > > -- > Thanks, > > Steve