From: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
To: Ira Weiny <weiny2-i2BcT+NCU+M@public.gmane.org>
Cc: Sasha Khapyorsky <sashak-smomgflXvOZWk0Htik3J/w@public.gmane.org>,
Sean Hefty <sean.hefty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
ofw_list <ofw-ZwoEplunGu1OwGhvXhtEPSCwEArCW2h5@public.gmane.org>,
Hal Rosenstock
<hal.rosenstock-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Yevgeny Kliteynik
<kliteyn-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>,
Eli Dorfman <elid-smomgflXvOZWk0Htik3J/w@public.gmane.org>,
linux-rdma <linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: ib_types.h moving [was: Re: [ofa-general] [RFC] 3/5: IB ACM: libibacm]
Date: Wed, 30 Sep 2009 20:57:52 -0600 [thread overview]
Message-ID: <20091001025752.GA22310@obsidianresearch.com> (raw)
In-Reply-To: <20090930183126.0011af7c.weiny2-i2BcT+NCU+M@public.gmane.org>
On Wed, Sep 30, 2009 at 06:31:26PM -0700, Ira Weiny wrote:
> > Now I likely would agree with Ira that moving ib_types.h to libibumad
> > is a least painful option. Do we have a better ideas?
>
> So far I can only think of 2 "correct" options.
>
> 1) Make ib_types.h into a new library and have libibverbs, libibmad,
> opensm, and MPI's use the constants and helper functions there. This of
> course would force some dependencies.
You are going the wrong way.. libibverbs is the 'fundamental' lowest
level library. Everything should build on it, not re-invent its stuff.
libibumad should not have device discovery and handling functions!
It should use ibv_device and ibv_context identifiers from libibverbs.
It should not duplicate constants and functions from libibverbs.
> 2) split up and spread ib_types.h around to appropriate places. This will
> likely include libibmad and libibverbs (others?) I don't think libibumad
> is appropriate really. At first, I suggested this mainly out of
> convenience because WinOF uses it. However, I don't think it is
> architecturally correct. libibumad looks to have a sound interface and
> should not be messed with.
It has a horrid interface, it should be destoyed :P
It needs exactly 4 functions:
1) open QP0/QP1 special FD based on ibv_device/ibv_context
2) read/write MADs from the special FD into user buffers. Maybe some
higher level helper functions (ie send/recv with retry, timeout, etc)
3) Do some basic parsing and whatever of the user buffers (if
necessary, probably not anymore)
4) Do any special control functions on the QP0/QP1/port
(ie set control bits, etc, etc)
libibmad should do all the hard core mad processing, structure
definitions, parsing helpers, redirection and other special function
logic, etc. It should be able to ride either on the QP0/QP1 special FD
or directly on a UD QP from libibverbs.
Two libraries are probably not needed, one library containing both
layers (with architectural purity), or putting the umad access layer
in libibverbs would be best. We have too many libraries.
Jason
--
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
next prev parent reply other threads:[~2009-10-01 2:57 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <EED935897ACB4DC784DFAB4184A5DC6F@amr.corp.intel.com>
[not found] ` <FCF6CB1AB515463BAB014EB7BB084FDA@amr.corp.intel.com>
[not found] ` <20090917101804.12e9e5ce.weiny2@llnl.gov>
[not found] ` <FD141AAD0F10420B9D0478DB68C9DEDA@amr.corp.intel.com>
[not found] ` <20090917132050.041b077d.weiny2@llnl.gov>
[not found] ` <20090917132050.041b077d.weiny2-i2BcT+NCU+M@public.gmane.org>
2009-09-25 13:09 ` ib_types.h moving [was: Re: [ofa-general] [RFC] 3/5: IB ACM: libibacm] Sasha Khapyorsky
2009-09-25 17:19 ` Sean Hefty
2009-10-01 1:31 ` Ira Weiny
[not found] ` <20090930183126.0011af7c.weiny2-i2BcT+NCU+M@public.gmane.org>
2009-10-01 2:57 ` Jason Gunthorpe [this message]
[not found] ` <20091001025752.GA22310-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2009-10-01 22:50 ` Ira Weiny
[not found] ` <20091001155007.5bdf73f1.weiny2-i2BcT+NCU+M@public.gmane.org>
2009-10-01 22:56 ` Sean Hefty
2009-10-01 23:39 ` Jason Gunthorpe
[not found] ` <20091001233915.GC5191-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2009-10-02 17:45 ` Ira Weiny
[not found] ` <20091002104538.b1362887.weiny2-i2BcT+NCU+M@public.gmane.org>
2009-10-02 17:58 ` Hal Rosenstock
2009-10-01 21:47 ` ib_types.h moving Sean Hefty
[not found] ` <376DB0F1C4874D9388729D1367F54C23-Zpru7NauK7drdx17CPfAsdBPR1lH4CV8@public.gmane.org>
2009-10-02 0:38 ` Ira Weiny
[not found] ` <20091001173841.9ef6bca2.weiny2-i2BcT+NCU+M@public.gmane.org>
2009-10-02 16:56 ` Sean Hefty
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=20091001025752.GA22310@obsidianresearch.com \
--to=jgunthorpe-epgobjl8dl3ta4ec/59zmfatqe2ktcn/@public.gmane.org \
--cc=elid-smomgflXvOZWk0Htik3J/w@public.gmane.org \
--cc=hal.rosenstock-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=kliteyn-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org \
--cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=ofw-ZwoEplunGu1OwGhvXhtEPSCwEArCW2h5@public.gmane.org \
--cc=sashak-smomgflXvOZWk0Htik3J/w@public.gmane.org \
--cc=sean.hefty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=weiny2-i2BcT+NCU+M@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