[PATCH][RFC/v1][0/12] Initial submission of InfiniBand patches for review

Roland Dreier
2004-11-22T16:27:45Z

I'm very happy to be able to post an initial version of InfiniBand
patches for review. Although this code should be far closer to kernel
coding standards than previous open source InfiniBand drivers, this
initial posting should be treated as a request for comments and not a
request for inclusion; our ultimate goal is to have these drivers
included in the mainline kernel, but we expect that fixes and
improvements will need to be made before the code is completely
acceptable.

These patches add a minimal but complete level of InfiniBand support,
including an IB midlayer, a low-level driver for Mellanox HCAs, an
IP-over-InfiniBand driver, and a mechanism for MADs (management
datagrams) to be passed to and from userspace. This means that these
patches are all that is required for the kernel to bring up and use an
IP-over-InfiniBand link. (The OpenSM subnet manager has not been
ported to this kernel API yet, although this work is underway. This
means that at the moment, a kernel with these patches cannot be used
to bring up a fabric; however, the kernel side is complete)

The code has not been through extreme stress testing yet, but it has
been used successfully on i386, x86_64, ppc64, ia64 and sparc64
systems, including mixed 32/64 systems.

Feedback on both details of the code as well as the high-level
organization of the code will be very much appreciated. For example,
the current set of patches puts include files in driver/infiniband/include;
would it be preferred to put include files in include/linux/infiniband/,
directly in include/linux, or perhaps in include/infiniband?

We would also like to explore the best avenue for having these patches
merged. It may be desirable for the patches to spend some time in -mm
before moving into Linus's kernel; on the other hand, the patches make
only very minimal and safe changes outside of drivers/infiniband, so
it is quite reasonable to merge them directly into the mainline
kernel. Although 2.6.10 is now closed, 2.6.11 will probably be open
by the time the review process is complete.

We look forward to the community's comments and criticisms!

Thanks,
Roland Dreier
OpenIB Alliance