From: Yevgeny Kliteynik <kliteyn-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
To: Sasha Khapyorsky <sashak-smomgflXvOZWk0Htik3J/w@public.gmane.org>
Cc: Linux RDMA <linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [PATCH 3/3 v2] opensm SA DB dump/restore: dump SA DB only if modified
Date: Mon, 11 Jan 2010 10:07:53 +0200 [thread overview]
Message-ID: <4B4ADC59.1070301@dev.mellanox.co.il> (raw)
In-Reply-To: <20091126141519.GB28564@me>
Hi Sasha,
On 26/Nov/09 16:15, Sasha Khapyorsky wrote:
> On 13:01 Wed 04 Nov , Yevgeny Kliteynik wrote:
>> Optimizing SA DB dump - added "dirty" flag to denote
>> that the SA DB was modified, so that the DB will be
>> dumped only when the flag is on.
>>
>> [v2 - no changes, just rebased and resolved conflicts]
[snip]
>> +
>> + subn->p_osm->sa.dirty = TRUE;
>> }
>
> In general I don't like an idea of spreading this global "dirty" flag
> over various OpenSM areas (it makes the code dirty). But even if it is
> needed couldn't we minimize number of such occurrences?
See below
> For example those specific ones in osm_multicast.c are duplicated in
> osm_sa_mcmember_record.c
This is fixed in the new patch
> (and also will cause 'dirty' flag setup on the
> SA DB from file loading).
Fixed - the flag is cleared at the end of loading SA DB
> Could we consolidate all multicast related
> cases with re-routing requesting for example?
SA DB contains 3 types of data:
- informinfo records
- service records
- mcmember records
So the "dirty" flag (or "modified", if you wish) must be set
in 6 places:
- add/remove informinfo record
- add/remove service records
- add/remove mcmember records
Another possible place for setting this flag is mcgroup
create/delete (this is what's sometimes duplicated by the
add/remove mcmember records), but I think that this is not
needed:
The mcgroups w/o mcmembers can be created in two ways:
1. By creating well-known mcgroup for a partition.
In this case when new instance of OSM is launched,
the same mcgroup should be creted anyway from the
partition configuration, so no need to force its
duplication in the SA DB file.
2. By loading mcgroup from SA DB file.
In this case it's either mcgroup w/o members, which
is what's handled by (1), or it's mcgroup with members,
butthe members just weren't loaded yet.
So in both cases, no need to force SA DB dump.
I'll post a new patch shortly - please review and let me
know if you have better ideas.
-- Yevgeny
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
prev parent reply other threads:[~2010-01-11 8:07 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-04 11:01 [PATCH 3/3 v2] opensm SA DB dump/restore: dump SA DB only if modified Yevgeny Kliteynik
[not found] ` <4AF15EF0.6050903-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2009-11-26 14:15 ` Sasha Khapyorsky
2009-12-06 12:28 ` Yevgeny Kliteynik
2010-01-11 8:07 ` Yevgeny Kliteynik [this message]
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=4B4ADC59.1070301@dev.mellanox.co.il \
--to=kliteyn-ldsdmyg8hgv8yrgs2mwiifqbs+8scbdb@public.gmane.org \
--cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=sashak-smomgflXvOZWk0Htik3J/w@public.gmane.org \
/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