All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hannes Reinecke <hare@suse.de>
To: dm-devel@redhat.com
Subject: Re: [PATCH 01/18] libmultipath: Add prioritizer context data
Date: Mon, 12 Oct 2015 08:35:22 +0200	[thread overview]
Message-ID: <561B54AA.2080404@suse.de> (raw)
In-Reply-To: <1444333491-16265-2-git-send-email-bmarzins@redhat.com>

On 10/08/2015 09:44 PM, Benjamin Marzinski wrote:
> Currently, running the alua prioritizer on a path causes 5 ioctls on many
> devices.  get_target_port_group_support() returns whether alua is
> supported. get_target_port_group() gets the TPG id. This often takes two
> ioctls because 128 bytes is not a large enough buffer size on many
> devices. Finally, get_asymmetric_access_state() also often takes two
> ioctls because of the buffer size. This can get to be problematic when
> there are thousands of paths.  The goal of this patch to to cut this down
> to one call in the usual case.
> 
> In order to do this, I've added a context pointer to the prio structure,
> similar to what exists for the checker structure, and initprio() and
> freeprio() functions to the prioritizers. The only one that currently uses
> these is the alua prioritizer. It caches the type of alua support, the TPG
> id, and the necessary buffer size.  The only thing I'm worried about with
> this patch is whether the first two values could change.  In order to deal
> with that possibility, whenever a path gets a change event, or becomes
> valid again after a failure, it resets the context structure values, which
> forces all of them to get checked the next time the prioritizer is called.
> 
Hmm. What about reading /sys/block/sdX/device/vpg_pg83 ?
That carries the same information, and you would need to call the
ioctl only once ...

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		               zSeries & Storage
hare@suse.de			               +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)

  reply	other threads:[~2015-10-12  6:35 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-08 19:44 [PATCH 00/18] multipath patch sync Benjamin Marzinski
2015-10-08 19:44 ` [PATCH 01/18] libmultipath: Add prioritizer context data Benjamin Marzinski
2015-10-12  6:35   ` Hannes Reinecke [this message]
2015-10-21 22:16     ` Benjamin Marzinski
2015-10-22  5:47       ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 02/18] fix memory leaks on realloc failures Benjamin Marzinski
2015-10-12  6:35   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 03/18] multipathd: use /run instead of /var/run Benjamin Marzinski
2015-10-12  6:37   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 04/18] retrigger uevents to try and get the uid through udev Benjamin Marzinski
2015-10-12  6:40   ` Hannes Reinecke
2015-10-21 22:20     ` Benjamin Marzinski
2015-10-08 19:44 ` [PATCH 05/18] update multipath rules to deal with partition devices Benjamin Marzinski
2015-10-12  6:42   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 06/18] change order of multipath.rules Benjamin Marzinski
2015-10-12  6:43   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 07/18] make kpartx -d remove all partitions Benjamin Marzinski
2015-10-12  6:46   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 08/18] Fix issues with user_friendly_names initramfs bindings Benjamin Marzinski
2015-10-15  8:52   ` Hannes Reinecke
2015-10-21 22:43     ` Benjamin Marzinski
2015-10-08 19:44 ` [PATCH 09/18] Make multipath deactivate devices before iscsi shutdown Benjamin Marzinski
2015-10-12  7:05   ` Hannes Reinecke
2015-10-21 22:29     ` Benjamin Marzinski
2015-10-08 19:44 ` [PATCH 10/18] resize reply buffer for mutipathd help message Benjamin Marzinski
2015-10-12  7:05   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 11/18] Add libmpathcmd library and use it internally Benjamin Marzinski
2015-10-12  7:06   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 12/18] add raw format multipathd commands Benjamin Marzinski
2015-10-12  7:06   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 13/18] libmultipath: add ignore_new_boot_devs option Benjamin Marzinski
2015-10-12  7:08   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 14/18] Make use of /run depend on systemd Benjamin Marzinski
2015-10-12  7:09   ` Hannes Reinecke
2015-10-12  7:34     ` Zdenek Kabelac
2015-10-12  8:35       ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 15/18] libmpathpersist: uninstall man page correctly Benjamin Marzinski
2015-10-12  7:09   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 16/18] Increase host buffer size Benjamin Marzinski
2015-10-12  7:10   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 17/18] Fix sun partition numbering Benjamin Marzinski
2015-10-12  7:11   ` Hannes Reinecke
2015-10-08 19:44 ` [PATCH 18/18] Make multipath ignore devices without mpath prefix Benjamin Marzinski
2015-10-12  7:12   ` Hannes Reinecke

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=561B54AA.2080404@suse.de \
    --to=hare@suse.de \
    --cc=dm-devel@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 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.