dm-devel.redhat.com archive mirror
 help / color / mirror / Atom feed
From: Martin Wilck <mwilck@suse.com>
To: Benjamin Marzinski <bmarzins@redhat.com>
Cc: dm-devel@redhat.com, tang.junhui@zte.com.cn
Subject: Re: Improve processing efficiency for addition and deletion of multipath devices
Date: Thu, 24 Nov 2016 10:21:10 +0100	[thread overview]
Message-ID: <1479979270.13566.7.camel@suse.com> (raw)
In-Reply-To: <20161118222618.GZ1972@octiron.msp.redhat.com>

On Fri, 2016-11-18 at 16:26 -0600, Benjamin Marzinski wrote:

> The issue is that we simply need to work on processing the whole list
> at
> a time.  Martin's filtering definitely has a place here. He is
> correct
> that if we get a delete uevent for a device, we don't need to process
> any of the earlier ones.  We do need to look at both the add and
> change
> uevents individually. For instance, one of the change uevents out of
> a
> group could be for changing the read-only status of a device. If we
> just
> took the most recent, we would miss that information.  The good news
> is
> that we don't need to actually call uev_add_path and uev_update_path
> once for each of these events.  All we need to do is read through the
> uev environment variables for all of them to find the information we
> need (like change in ro status), and then call the function once with
> that information.

Do we need to implement the environment-merging ourselves? AFAICS this
logic is implemented in udev itself. So if the last event for a given
device is a change event, we'd just need to fetch the device properties
from the udev db. Therefore IMO we just have to look at the last
received event for a given path:

 - DELETE => discard the device
 - ADD => use the udev properties coming with the event
 - CHANGE => query udev db for current set of properties
 
> At any rate, I'd rather get rid of the gazillion waiter threads
> first.

Hm, I thought the threads are good because this avoids one unresponsive
device to stall everything?

Martin

-- 
Dr. Martin Wilck <mwilck@suse.com>, Tel. +49 (0)911 74053 2107
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)

--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel

  parent reply	other threads:[~2016-11-24  9:21 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-16  1:46 Improve processing efficiency for addition and deletion of multipath devices tang.junhui
2016-11-16  7:53 ` Hannes Reinecke
2016-11-16  8:45   ` tang.junhui
2016-11-16  9:49     ` Martin Wilck
2016-11-17  1:41       ` tang.junhui
2016-11-17 10:48         ` Martin Wilck
2016-11-18  1:02           ` tang.junhui
2016-11-18  7:39             ` Martin Wilck
2016-11-18  8:24               ` tang.junhui
2016-11-18  8:30                 ` Martin Wilck
2016-11-18  8:56                   ` tang.junhui
2016-11-18  9:12                   ` tang.junhui
2016-11-21 18:19                   ` Benjamin Marzinski
2016-11-18 22:26           ` Benjamin Marzinski
2016-11-23  1:08             ` tang.junhui
2016-11-29  9:07               ` Zdenek Kabelac
2016-11-29 10:13                 ` tang.junhui
2016-11-24  9:21             ` Martin Wilck [this message]
2016-11-28 18:46               ` Benjamin Marzinski
2016-11-29  6:47                 ` Hannes Reinecke
2016-11-29  8:02                   ` Martin Wilck
2016-11-29  8:10                     ` Zdenek Kabelac
2016-11-29  8:16                       ` Martin Wilck
2016-11-29  8:24                         ` Zdenek Kabelac
2016-11-29 17:25                     ` Benjamin Marzinski
2016-11-29  7:57                 ` Martin Wilck
2016-11-29 17:41                   ` Benjamin Marzinski
  -- strict thread matches above, loose matches on Subject: below --
2016-11-28  2:19 tang.junhui
2016-11-28 10:05 ` Hannes Reinecke
2016-11-28 16:07   ` Benjamin Marzinski
2016-11-28 16:26     ` Zdenek Kabelac
2016-11-28 10:06 ` Zdenek Kabelac
2016-11-28 10:42   ` Hannes Reinecke
2016-11-28 11:51     ` Zdenek Kabelac
2016-11-28 12:06       ` Peter Rajnoha
2016-11-28 12:08       ` Hannes Reinecke
2016-11-28 12:23         ` Peter Rajnoha
2016-11-28 12:55         ` Zdenek Kabelac
2016-11-28 17:22         ` Benjamin Marzinski
2016-11-29  9:34           ` Zdenek Kabelac
2016-11-28 10:28 ` Martin Wilck
2016-11-28 17:31   ` Benjamin Marzinski
2016-11-29  7:52     ` Martin Wilck
2016-11-29 19:21       ` Benjamin Marzinski
2016-11-28 15:25 ` Benjamin Marzinski
2016-11-28 15:37   ` Hannes Reinecke
2016-12-01  1:16     ` tang.junhui

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=1479979270.13566.7.camel@suse.com \
    --to=mwilck@suse.com \
    --cc=bmarzins@redhat.com \
    --cc=dm-devel@redhat.com \
    --cc=tang.junhui@zte.com.cn \
    /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).