All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [4.20-rc1 regression] dio starts to block
       [not found] <20181214081300.GA28459@sh-el5.eng.rdu2.redhat.com>
@ 2018-12-19  3:35 ` Murphy Zhou
  0 siblings, 0 replies; only message in thread
From: Murphy Zhou @ 2018-12-19  3:35 UTC (permalink / raw)
  To: linux-cifs, linux-fsdevel; +Cc: xifeng

Ping.

Looping linux-fsdevel@vger.kernel.org as there is a VFS complaint at  first.

[ 6366.743147] LTP: starting dio04 (diotest4)
[ 6366.763496] CIFS VFS: couldn't get user pages (cur_len=-14) iter
type 0 iov_offset 0 count 4096
[ 6366.765183] CPU: 1 PID: 8618 Comm: diotest4 Not tainted 4.20.0-rc6+ #1
[ 6366.766471] Hardware name: Red Hat KVM, BIOS 0.5.1 01/01/2011
[ 6366.767660] Call Trace:
[ 6366.768310]  dump_stack+0x46/0x60
[ 6366.769165]  cifs_send_async_read.isra.45.cold.60+0x22/0x27 [cifs]
[ 6366.770405]  __cifs_readv+0x16e/0x360 [cifs]
[ 6366.771293]  __vfs_read+0x133/0x190
[ 6366.771990]  vfs_read+0x8a/0x140
[ 6366.772618]  ksys_read+0x4f/0xb0
[ 6366.773260]  do_syscall_64+0x55/0x1a0
[ 6366.773990]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 6366.774991] RIP: 0033:0x7eff3e7acb52
[ 6366.775718] Code: 94 20 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb
b6 0f 1f 80 00 00 00 00 f3 0f 1e fa 8b 05 f6 d8 20 00 85 c0 75 12 31
c0 0f 05 <48> 3d 00 f0 ff ff 77 56 c3 0f 1f 44 00 00 41 54 49 89 d4 55
48 89
[ 6366.779321] RSP: 002b:00007ffd60f35458 EFLAGS: 00000246 ORIG_RAX:
0000000000000000
[ 6366.780769] RAX: ffffffffffffffda RBX: 0000000000000fff RCX:
00007eff3e7acb52
[ 6366.782129] RDX: 0000000000001000 RSI: 00007eff3e3fa000 RDI:
0000000000000006
[ 6366.783493] RBP: 00000000fffff000 R08: 000000000041178f R09:
00000000fe534d42
[ 6366.784875] R10: 0000000000000000 R11: 0000000000000246 R12:
00007eff3ebd36c0
[ 6366.786268] R13: 000000000241e000 R14: fffffffffffff000 R15:
00007ffd60f35488


On 12/14/18, Murphy Zhou <jencce.kernel@gmail.com> wrote:
> Hi,
>
> It seems that there is a problem in the new dio functions.
>
> Direct IO on cifs mount is blocking on read since v4.20-rc1. It was ok on
> v4.19.
>
> Bisect points to commit:
> 	be4eb68 CIFS: Add direct I/O functions to file_operations
>
> With this commit reverted on 4.20-rc1, test is not blocking any more.
>
> This is easily reproducible by LTP diotest4 on cifs mount, from v4.20-rc1
> until
> latest Linus tree.  Ctrl-C can interrupt the blocking process.
>
> Sorry for the late report,
> Murphy
>
> # gdb says it's blocking on open
> diotest4   18  TFAIL  :  diotest4.c:180: read, write with non-aligned
> buffer
> 458             close(fd);
> (gdb)
> 465             if ((fd = open(filename, O_DIRECT | O_RDWR)) < 0) {
> (gdb)
> 469             if (lseek(fd, offset, SEEK_SET) < 0) {
> (gdb)
> 474                     errno = 0;
> (gdb)
> 475                     ret = read(fd, (char *)((ulong) ADDRESS_OF_MAIN &
> pagemask),
> (gdb)
>
> # steps to reproduce
> git clone https://github.com/linux-test-project/ltp.git
> cd ltp
> make autotools
> ./configure
> make
> TMPDIR=/cifsmnt ./testcases/kernel/io/direct_io/diotest4
>
> /cifsmnt is the cifs mountpoint.
>
> # dmesg
> [  234.469584] CPU: 1 PID: 1876 Comm: diotest4 Not tainted
> 4.20.0-rc1-6510223 #1
> [  234.469807] Hardware name: Red Hat KVM, BIOS 0.5.1 01/01/2011
> [  234.470026] Call Trace:
> [  234.470361]  dump_stack+0x46/0x60
> [  234.470710]  cifs_send_async_read.isra.47.cold.62+0x22/0x27 [cifs]
> [  234.470983]  __cifs_readv+0x169/0x360 [cifs]
> [  234.471292]  __vfs_read+0x12e/0x190
> [  234.471513]  vfs_read+0x85/0x130
> [  234.471699]  ksys_read+0x4a/0xb0
> [  234.471939]  do_syscall_64+0x50/0x190
> [  234.472200]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
> [  234.472435] RIP: 0033:0x7fefecddeb52
> [  234.472630] Code: 94 20 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b6 0f
> 1f 80 00 00 00 00 f3 0f 1e fa 8b 05 f6 d8 20 00 85 c0 75 12 31 c0 0f 05 <48>
> 3d 00 f0 ff ff 77 56 c3 0f 1f 44 00 00 41 54 49 89 d4 55 48 89
> [  234.473075] RSP: 002b:00007ffe0bbe51f8 EFLAGS: 00000246 ORIG_RAX:
> 0000000000000000
> [  234.473319] RAX: ffffffffffffffda RBX: 0000000000000fff RCX:
> 00007fefecddeb52
> [  234.473529] RDX: 0000000000001000 RSI: 00007fefeca2c000 RDI:
> 0000000000000006
> [  234.473738] RBP: 00000000fffff000 R08: 0000000000411b4f R09:
> 00000000fe534d42
> [  234.473959] R10: 0000000000000000 R11: 0000000000000246 R12:
> 00007fefed2046c0
> [  234.474180] R13: 0000000000b9a000 R14: fffffffffffff000 R15:
> 00007ffe0bbe5228
>
> # ps
>  1871  1876  1876  1624 pts/0     1646 D        0   0:00              \_
> diotest4
>
> # mount.cifs -V
> mount.cifs version: 6.8
>
> # mount | grep cifs
> //localhost/test on /cifsmnt type cifs
> (rw,relatime,vers=3.1.1,cache=strict,username=root,uid=0,noforceuid,gid=0,noforcegid,addr=0000:0000:0000:0000:0000:0000:0000:0001,file_mode=0755,dir_mode=0755,soft,nounix,serverino,mapposix,sfu,mfsymlinks,rsize=4194304,wsize=4194304,echo_interval=60,actimeo=1)
>
> # cat /etc/samba/smb.conf
> [test]
>     path = /export/cifstest
>     writeable = yes
>
> # smbd -V
> Version 4.9.1
>

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2018-12-19  3:35 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20181214081300.GA28459@sh-el5.eng.rdu2.redhat.com>
2018-12-19  3:35 ` [4.20-rc1 regression] dio starts to block Murphy Zhou

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.