Following Roland's submission of our InfiniPath InfiniBand HCA driver earlier this month, we have responded to people's comments by making a large number of changes to the driver. Here is another set of driver patches for review. Roland is on vacation until January 4, so I'm posting these in his place. Once again, your comments are appreciated. We'd like to submit this driver for inclusion in 2.6.16, so we'll be responding quickly to all feedback. A short summary of the changes we have made is as follows: - sparse annotations (yes, it passes "make C=1") - Removed x86_64 specificity from driver - Introduced generic memcpy_toio32 for safe MMIO access - Got rid of release and RCS IDs - Use set_page_dirty_lock instead of SetPageDirty - Fixed misuse of copy_from_user - Removed all sysctls - Removed stuff inside #ifndef __KERNEL__ - Use ALIGN() instead of round_up() - Use static inlines instead of #defines, generally tidied inline functions - Renamed _BITS_PER_BYTE to BITS_PER_BYTE, and moved it into linux/types.h - Got rid of ipath_shortcopy - Use fixed-size types for user/kernel communication - Renamed ipath_mlock to ipath_get_user_pages, fixed some bugs There are a few requested changes we have chosen to omit for now: - The driver still uses EXPORT_SYMBOL, for consistency with other code in drivers/infiniband - Someone asked for the kernel's i2c infrastructure to be used, but our i2c usage is very specialised, and it would be more of a mess to use the kernel's - We're still using ioctls instead of sysfs or configfs in some cases, to maintain userspace compatibility Please note that these patches require a set of OpenIB kernel patches that are awaiting the 2.6.16 submission window in order to compile; in other words, they really are for review only. I'll be happy to provide a suitable jumbo OpenIB patch to anyone who feels a need to compile-test these patches. <b
- Follow-Ups:
- Re: [PATCH 0 of 20] [RFC] ipath - PathScale InfiniPath driver
- From: "Greg KH" <greg@kroah.com>
- Re: [PATCH 0 of 20] [RFC] ipath - PathScale InfiniPath driver
- From: Horst von Brand <vonbrand@inf.utfsm.cl>
- [PATCH 2 of 20] memcpy32 for x86_64
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 8 of 20] ipath - core driver, part 1 of 4
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 15 of 20] ipath - infiniband verbs support, part 1 of 3
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 5 of 20] ipath - driver core header files
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 9 of 20] ipath - core driver, part 2 of 4
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 3 of 20] Add memcpy_toio32 to each arch
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 10 of 20] ipath - core driver, part 3 of 4
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 6 of 20] ipath - driver debugging headers
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 7 of 20] ipath - MMIO copy routines
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 13 of 20] ipath - routines used by upper layer driver code
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 16 of 20] path - infiniband verbs support, part 2 of 3
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 11 of 20] ipath - core driver, part 4 of 4
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 14 of 20] ipath - infiniband verbs header
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 12 of 20] ipath - misc driver support code
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 19 of 20] ipath - kbuild infrastructure
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 17 of 20] ipath - infiniband verbs support, part 3 of 3
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 20 of 20] ipath - integrate driver into infiniband kbuild infrastructure
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 18 of 20] ipath - infiniband management datagram support
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 1 of 20] Introduce __memcpy_toio32
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- [PATCH 4 of 20] Define BITS_PER_BYTE
- From: "Bryan O'Sullivan" <bos@pathscale.com>
- Re: [PATCH 0 of 20] [RFC] ipath - PathScale InfiniPath driver
- Prev by Date: [PATCH 7 of 20] ipath - MMIO copy routines
- Next by Date: [PATCH 6 of 20] ipath - driver debugging headers
- Previous by thread: /sys/class/net/<device name>/wireless directory
- Next by thread: [PATCH 4 of 20] Define BITS_PER_BYTE
- Index(es):
![]() |