All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Marshall <hubcap@omnibond.com>
To: Martin Brandenburg <martin@omnibond.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	linux-fsdevel <linux-fsdevel@vger.kernel.org>,
	Stephen Rothwell <sfr@canb.auug.org.au>
Subject: Re: Orangefs ABI documentation
Date: Sat, 13 Feb 2016 12:18:12 -0500	[thread overview]
Message-ID: <CAOg9mSQ=pF=Pg60VoSUeywybDATi1M3TTRmjGNEmvyLCh0AAoQ@mail.gmail.com> (raw)
In-Reply-To: <CA+D=wkhJRVsety9WX9KLGbRUEk1hwSf4Q0oP23c1TtQjr_Oguw@mail.gmail.com>

I added the patches, and ran a bunch of tests.

Stuff works fine when left unbothered, and also
when wrenches are thrown into the works.

I had multiple userspace things going on at the
same time, dbench, ls -R, find... kill -9 or control-C on
any of them is handled well. When I killed both
the client-core and its restarter, the kernel
dealt with swarm of ops that had nowhere
to go... the WARN_ON in service_operation
was hit.

Feb 12 16:19:12 be1 kernel: [ 3658.167544] orangefs: please confirm
that pvfs2-client daemon is running.
Feb 12 16:19:12 be1 kernel: [ 3658.167547] fs/orangefs/dir.c line 264:
orangefs_readdir: orangefs_readdir_index_get() failure (-5)
Feb 12 16:19:12 be1 kernel: [ 3658.170741] ------------[ cut here ]------------
Feb 12 16:19:12 be1 kernel: [ 3658.170746] WARNING: CPU: 0 PID: 1667
at fs/orangefs/waitqueue.c:203 service_operation+0x4f6/0x7f0()
Feb 12 16:19:12 be1 kernel: [ 3658.170747] Modules linked in:
ip6t_rpfilter ip6t_REJECT nf_reject_ipv6 nf_conntrack_ipv6
nf_defrag_ipv6 bnep bluetooth nf_conntrack_ipv4 nf_defrag_ipv4 rfkill
xt_conntrack nf_conntrack ebtable_nat ebtable_broute bridge stp llc
ebtable_filter ebtables ip6table_mangle ip6table_security ip6table_raw
ip6table_filter ip6_tables iptable_mangle iptable_security iptable_raw
ppdev parport_pc virtio_balloon pvpanic parport serio_raw 8139too
i2c_piix4 virtio_console uinput qxl drm_kms_helper ttm drm 8139cp
i2c_core virtio_pci virtio virtio_ring mii ata_generic pata_acpi
Feb 12 16:19:12 be1 kernel: [ 3658.170770] CPU: 0 PID: 1667 Comm:
dbench Not tainted 4.4.0-161995-gda335c6 #62
Feb 12 16:19:12 be1 kernel: [ 3658.170771] Hardware name: Red Hat KVM,
BIOS 0.5.1 01/01/2011
Feb 12 16:19:12 be1 kernel: [ 3658.170772]  0000000000000000
000000001371c2af ffff88000c89fc08 ffffffff8139c7dd
Feb 12 16:19:12 be1 kernel: [ 3658.170774]  ffff88000c89fc40
ffffffff8108e510 ffff88000cb58000 ffff88000cb5c1d0
Feb 12 16:19:12 be1 kernel: [ 3658.170776]  ffff88000cb5c188
00000000fffffff5 0000000000000000 ffff88000c89fc50
Feb 12 16:19:12 be1 kernel: [ 3658.170778] Call Trace:
Feb 12 16:19:12 be1 kernel: [ 3658.170782]  [<ffffffff8139c7dd>]
dump_stack+0x19/0x1c
Feb 12 16:19:12 be1 kernel: [ 3658.170786]  [<ffffffff8108e510>]
warn_slowpath_common+0x80/0xc0
Feb 12 16:19:12 be1 kernel: [ 3658.170787]  [<ffffffff8108e65a>]
warn_slowpath_null+0x1a/0x20
Feb 12 16:19:12 be1 kernel: [ 3658.170788]  [<ffffffff812fe6a6>]
service_operation+0x4f6/0x7f0
Feb 12 16:19:12 be1 kernel: [ 3658.170791]  [<ffffffff810c28b0>] ?
prepare_to_wait_event+0x100/0x100
Feb 12 16:19:12 be1 kernel: [ 3658.170792]  [<ffffffff810c28b0>] ?
prepare_to_wait_event+0x100/0x100
Feb 12 16:19:12 be1 kernel: [ 3658.170794]  [<ffffffff812f2557>]
wait_for_direct_io+0x157/0x520
Feb 12 16:19:12 be1 kernel: [ 3658.170796]  [<ffffffff812f29d6>]
do_readv_writev+0xb6/0x2a0
Feb 12 16:19:12 be1 kernel: [ 3658.170797]  [<ffffffff812f2c75>]
orangefs_file_write_iter+0xb5/0x1a0
Feb 12 16:19:12 be1 kernel: [ 3658.170801]  [<ffffffff811f962c>]
__vfs_write+0xcc/0x100
Feb 12 16:19:12 be1 kernel: [ 3658.170802]  [<ffffffff811f9c81>]
vfs_write+0xa1/0x190
Feb 12 16:19:12 be1 kernel: [ 3658.170804]  [<ffffffff811fabe7>]
SyS_pwrite64+0x87/0xb0
Feb 12 16:19:12 be1 kernel: [ 3658.170807]  [<ffffffff81782faf>]
entry_SYSCALL_64_fastpath+0x12/0x76
Feb 12 16:19:12 be1 kernel: [ 3658.170808] ---[ end trace 9335703ea9225d7b ]---

I run xfstests a very clunky way... I left it running when I left
the office on Friday. I'll grep through the output on my
terminal <blush> on Monday to see if there's any regressions...

-Mike

On Fri, Feb 12, 2016 at 1:00 PM, Martin Brandenburg <martin@omnibond.com> wrote:
> I have some patches for the kernel and our userspace code which
> eliminates the useless readdir buffers. They're a few months old at
> this point.
>
> The problem is that this is already part of the protocol. Unless we
> decide to change it, we can't very well get out of supporting this.
> Personally I want to clean this up while we still have the chance. We
> already plan to only support this module from the latest OrangeFS and
> up.
>
> In either case there's no reason it needs to be so confusing and imply
> it's shared.
>
> Mike, there wouldn't be an unlimited number of buffers. It's still
> limited by the number of ops which are pre-allocated.
>
> -- Martin
>
> On 2/12/16, Mike Marshall <hubcap@omnibond.com> wrote:
>> I'll get the patches today... I have about five small patches
>> that aren't pushed out to github or kernel.org yet, some
>> cosmetic patches and a couple of things you suggested
>> in mail messages... if they get in a fight with your
>> new patches I'll just ditch them and re-do whichever
>> ones of them are still needed after I've got your
>> new stuff tested.
>>
>> Thanks!
>>
>> -Mike
>>
>> On Thu, Feb 11, 2016 at 11:27 PM, Al Viro <viro@zeniv.linux.org.uk> wrote:
>>> On Wed, Feb 10, 2016 at 10:22:40PM -0500, Mike Marshall wrote:
>>>> > If there is (or at least supposed to be) something that prevents
>>>> > completions
>>>> > of readdir requests (on unrelated directories, by different processes,
>>>> > etc.)
>>>> > out of order, PLEASE SAY SO.  I would really prefer not to have to
>>>> > fight
>>>> > the readdir side of that mess; cancels are already bad enough ;-/
>>>>
>>>> Hi Al... your ideas sound good to me, I'll try to get you good
>>>> answers on stuff like the above sometime tomorrow...
>>>
>>> OK, this is really, really completely untested, might chew your data,
>>> bugger your dog, etc.  OTOH, if it somehow fails to do the above, it
>>> ought to deal with cancels properly.
>>>
>>> Pushed into #orangefs-untested, along with two wait_for_direct_io() fixes
>>> discussed upthread.  This is _not_ all - it still needs saner "wait for
>>> slot"
>>> logics, switching op->waitq to completion/killing loop in
>>> wait_for_matching_downcall(), etc.
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>

  reply	other threads:[~2016-02-13 17:18 UTC|newest]

Thread overview: 111+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-15 21:46 Orangefs ABI documentation Mike Marshall
2016-01-22  7:11 ` Al Viro
2016-01-22 11:09   ` Mike Marshall
2016-01-22 16:59     ` Mike Marshall
2016-01-22 17:08       ` Al Viro
2016-01-22 17:40         ` Mike Marshall
2016-01-22 17:43         ` Al Viro
2016-01-22 18:17           ` Mike Marshall
2016-01-22 18:37             ` Al Viro
2016-01-22 19:07               ` Mike Marshall
2016-01-22 19:21                 ` Mike Marshall
2016-01-22 20:04                   ` Al Viro
2016-01-22 20:30                     ` Mike Marshall
2016-01-23  0:12                       ` Al Viro
2016-01-23  1:28                         ` Al Viro
2016-01-23  2:54                           ` Mike Marshall
2016-01-23 19:10                             ` Al Viro
2016-01-23 19:24                               ` Mike Marshall
2016-01-23 21:35                                 ` Mike Marshall
2016-01-23 22:05                                   ` Al Viro
2016-01-23 21:40                                 ` Al Viro
2016-01-23 22:36                                   ` Mike Marshall
2016-01-24  0:16                                     ` Al Viro
2016-01-24  4:05                                       ` Al Viro
2016-01-24 22:12                                         ` Mike Marshall
2016-01-30 17:22                                           ` Al Viro
2016-01-26 19:52                                         ` Martin Brandenburg
2016-01-30 17:34                                           ` Al Viro
2016-01-30 18:27                                             ` Al Viro
2016-02-04 23:30                                               ` Mike Marshall
2016-02-06 19:42                                                 ` Al Viro
2016-02-07  1:38                                                   ` Al Viro
2016-02-07  3:53                                                     ` Al Viro
2016-02-07 20:01                                                       ` [RFC] bufmap-related wait logics (Re: Orangefs ABI documentation) Al Viro
2016-02-08 22:26                                                       ` Orangefs ABI documentation Mike Marshall
2016-02-08 23:35                                                         ` Al Viro
2016-02-09  3:32                                                           ` Al Viro
2016-02-09 14:34                                                             ` Mike Marshall
2016-02-09 17:40                                                               ` Al Viro
2016-02-09 21:06                                                                 ` Al Viro
2016-02-09 22:25                                                                   ` Mike Marshall
2016-02-11 23:36                                                                   ` Mike Marshall
2016-02-09 22:02                                                                 ` Mike Marshall
2016-02-09 22:16                                                                   ` Al Viro
2016-02-09 22:40                                                                     ` Al Viro
2016-02-09 23:13                                                                       ` Al Viro
2016-02-10 16:44                                                                         ` Al Viro
2016-02-10 21:26                                                                           ` Al Viro
2016-02-11 23:54                                                                           ` Mike Marshall
2016-02-12  0:55                                                                             ` Al Viro
2016-02-12 12:13                                                                               ` Mike Marshall
2016-02-11  0:44                                                                         ` Al Viro
2016-02-11  3:22                                                                           ` Mike Marshall
2016-02-12  4:27                                                                             ` Al Viro
2016-02-12 12:26                                                                               ` Mike Marshall
2016-02-12 18:00                                                                                 ` Martin Brandenburg
2016-02-13 17:18                                                                                   ` Mike Marshall [this message]
2016-02-13 17:47                                                                                     ` Al Viro
2016-02-14  2:56                                                                                       ` Al Viro
2016-02-14  3:46                                                                                         ` [RFC] slot allocator - waitqueue use review needed (Re: Orangefs ABI documentation) Al Viro
2016-02-14  4:06                                                                                           ` Al Viro
2016-02-16  2:12                                                                                           ` Al Viro
2016-02-16 19:28                                                                                             ` Al Viro
2016-02-14 22:31                                                                                         ` Orangefs ABI documentation Mike Marshall
2016-02-14 23:43                                                                                           ` Al Viro
2016-02-15 17:46                                                                                             ` Mike Marshall
2016-02-15 18:45                                                                                               ` Al Viro
2016-02-15 22:32                                                                                                 ` Martin Brandenburg
2016-02-15 23:04                                                                                                   ` Al Viro
2016-02-16 23:15                                                                                                     ` Mike Marshall
2016-02-16 23:36                                                                                                       ` Al Viro
2016-02-16 23:54                                                                                                         ` Al Viro
2016-02-17 19:24                                                                                                           ` Mike Marshall
2016-02-17 20:11                                                                                                             ` Al Viro
2016-02-17 21:17                                                                                                               ` Al Viro
2016-02-17 22:24                                                                                                                 ` Mike Marshall
2016-02-17 22:40                                                                                                             ` Martin Brandenburg
2016-02-17 23:09                                                                                                               ` Al Viro
2016-02-17 23:15                                                                                                                 ` Al Viro
2016-02-18  0:04                                                                                                                   ` Al Viro
2016-02-18 11:11                                                                                                                     ` Al Viro
2016-02-18 18:58                                                                                                                       ` Mike Marshall
2016-02-18 19:20                                                                                                                         ` Al Viro
2016-02-18 19:49                                                                                                                         ` Martin Brandenburg
2016-02-18 20:08                                                                                                                           ` Mike Marshall
2016-02-18 20:22                                                                                                                             ` Mike Marshall
2016-02-18 20:38                                                                                                                               ` Mike Marshall
2016-02-18 20:52                                                                                                                                 ` Al Viro
2016-02-18 21:50                                                                                                                                   ` Mike Marshall
2016-02-19  0:25                                                                                                                                     ` Al Viro
2016-02-19 22:11                                                                                                                                       ` Mike Marshall
2016-02-19 22:22                                                                                                                                         ` Al Viro
2016-02-20 12:14                                                                                                                                           ` Mike Marshall
2016-02-20 13:36                                                                                                                                             ` Al Viro
2016-02-22 16:20                                                                                                                                               ` Mike Marshall
2016-02-22 21:22                                                                                                                                                 ` Mike Marshall
2016-02-23 21:58                                                                                                                                                   ` Mike Marshall
2016-02-26 20:21                                                                                                                                                     ` Mike Marshall
2016-02-19 22:32                                                                                                                                         ` Al Viro
2016-02-19 22:45                                                                                                                                           ` Martin Brandenburg
2016-02-19 22:50                                                                                                                                           ` Martin Brandenburg
2016-02-18 20:49                                                                                                                               ` Al Viro
2016-02-15 22:47                                                                                                 ` Mike Marshall
2016-01-23 22:46                                   ` write() semantics (Re: Orangefs ABI documentation) Al Viro
2016-01-23 23:35                                     ` Linus Torvalds
2016-03-03 22:25                                       ` Mike Marshall
2016-03-04 20:55                                         ` Mike Marshall
2016-01-22 20:51                     ` Orangefs ABI documentation Mike Marshall
2016-01-22 23:53                       ` Mike Marshall
2016-01-22 19:54                 ` Al Viro
2016-01-22 19:50             ` Al Viro

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='CAOg9mSQ=pF=Pg60VoSUeywybDATi1M3TTRmjGNEmvyLCh0AAoQ@mail.gmail.com' \
    --to=hubcap@omnibond.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=martin@omnibond.com \
    --cc=sfr@canb.auug.org.au \
    --cc=torvalds@linux-foundation.org \
    --cc=viro@zeniv.linux.org.uk \
    /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 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.