linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Murphy Zhou <jencce.kernel@gmail.com>
To: linux-cifs@vger.kernel.org, linux-fsdevel@vger.kernel.org
Cc: xifeng@redhat.com
Subject: Re: [4.20-rc1 regression] dio starts to block
Date: Wed, 19 Dec 2018 11:35:39 +0800	[thread overview]
Message-ID: <CADJHv_sdeUmM0sr_rKzoc0PvBccG1mfz6tY8nGQDMYgREBiRHg@mail.gmail.com> (raw)
In-Reply-To: <20181214081300.GA28459@sh-el5.eng.rdu2.redhat.com>

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
>

           reply	other threads:[~2018-12-19  3:35 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <20181214081300.GA28459@sh-el5.eng.rdu2.redhat.com>]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CADJHv_sdeUmM0sr_rKzoc0PvBccG1mfz6tY8nGQDMYgREBiRHg@mail.gmail.com \
    --to=jencce.kernel@gmail.com \
    --cc=linux-cifs@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=xifeng@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).