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" <[email protected]>
- Re: [PATCH 0 of 20] [RFC] ipath - PathScale InfiniPath driver
- From: Horst von Brand <[email protected]>
- [PATCH 2 of 20] memcpy32 for x86_64
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 8 of 20] ipath - core driver, part 1 of 4
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 15 of 20] ipath - infiniband verbs support, part 1 of 3
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 5 of 20] ipath - driver core header files
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 9 of 20] ipath - core driver, part 2 of 4
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 3 of 20] Add memcpy_toio32 to each arch
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 10 of 20] ipath - core driver, part 3 of 4
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 6 of 20] ipath - driver debugging headers
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 7 of 20] ipath - MMIO copy routines
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 13 of 20] ipath - routines used by upper layer driver code
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 16 of 20] path - infiniband verbs support, part 2 of 3
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 11 of 20] ipath - core driver, part 4 of 4
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 14 of 20] ipath - infiniband verbs header
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 12 of 20] ipath - misc driver support code
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 19 of 20] ipath - kbuild infrastructure
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 17 of 20] ipath - infiniband verbs support, part 3 of 3
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 20 of 20] ipath - integrate driver into infiniband kbuild infrastructure
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 18 of 20] ipath - infiniband management datagram support
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 1 of 20] Introduce __memcpy_toio32
- From: "Bryan O'Sullivan" <[email protected]>
- [PATCH 4 of 20] Define BITS_PER_BYTE
- From: "Bryan O'Sullivan" <[email protected]>
- 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):