Acked-by: Andy Grover <andy.gro...@oracle.com> Thanks! -- Regards -- Andy
Jack Morgenstein wrote: > rds backport: fix for double-def of assert_spin_locked in RHEL4_U4/5/6/7 > > Any RHEL 4 infiniband app which includes jbd.h will get a compilation > error of double-definition of macro assert_spin_locked. > > This fix was suggested by Brian Murrell of Sun. > > This fixes bugzilla 1655. > > Signed_off_by: Jack Morgenstein <ja...@dev.mellanox.co.il> > > --- > Andy, > There is a requirement for Lustre to fix bug 1655 in ofed 1.4.2. > > https://bugs.openfabrics.org/show_bug.cgi?id=1655 > > In keeping with Brian Murrell's suggestion in comment #5 > (to move the assert_spin_locked definition out of the spinlock.h > backport addons (for RHEL U4,5,6,7) and put it closer to the > C code that actually uses it), I propose moving the assert_spin_locked > definition from the spinlock.h addons files to file net/rds/rdma.h > (just after including rds.h) (done via an addition to patch file > rds_to_2_6_9.patch). > > The patch is below. > PLEASE VERIFY AND OK THIS PATCH ASAP, so that I may check it in to the OFED > 1.4.2 > git before release. (I have checked only compilation on RHEL_U4/7 on X86_64). > > Thanks! > > diff --git a/kernel_addons/backport/2.6.9_U4/include/linux/spinlock.h > b/kernel_addons/backport/2.6.9_U4/include/linux/spinlock.h > index 0d24ba3..8b2b892 100644 > --- a/kernel_addons/backport/2.6.9_U4/include/linux/spinlock.h > +++ b/kernel_addons/backport/2.6.9_U4/include/linux/spinlock.h > @@ -6,6 +6,4 @@ > > #define spin_lock_nested(lock, subclass) spin_lock(lock) > > -#define assert_spin_locked(lock) do { (void)(lock); } while(0) > - > #endif > diff --git a/kernel_addons/backport/2.6.9_U5/include/linux/spinlock.h > b/kernel_addons/backport/2.6.9_U5/include/linux/spinlock.h > index 0d24ba3..8b2b892 100644 > --- a/kernel_addons/backport/2.6.9_U5/include/linux/spinlock.h > +++ b/kernel_addons/backport/2.6.9_U5/include/linux/spinlock.h > @@ -6,6 +6,4 @@ > > #define spin_lock_nested(lock, subclass) spin_lock(lock) > > -#define assert_spin_locked(lock) do { (void)(lock); } while(0) > - > #endif > diff --git a/kernel_addons/backport/2.6.9_U6/include/linux/spinlock.h > b/kernel_addons/backport/2.6.9_U6/include/linux/spinlock.h > index 665f011..4e22280 100644 > --- a/kernel_addons/backport/2.6.9_U6/include/linux/spinlock.h > +++ b/kernel_addons/backport/2.6.9_U6/include/linux/spinlock.h > @@ -5,6 +5,4 @@ > > #define spin_lock_nested(lock, subclass) spin_lock(lock) > > -#define assert_spin_locked(lock) do { (void)(lock); } while(0) > - > #endif > diff --git a/kernel_addons/backport/2.6.9_U7/include/linux/spinlock.h > b/kernel_addons/backport/2.6.9_U7/include/linux/spinlock.h > index 665f011..4e22280 100644 > --- a/kernel_addons/backport/2.6.9_U7/include/linux/spinlock.h > +++ b/kernel_addons/backport/2.6.9_U7/include/linux/spinlock.h > @@ -5,6 +5,4 @@ > > #define spin_lock_nested(lock, subclass) spin_lock(lock) > > -#define assert_spin_locked(lock) do { (void)(lock); } while(0) > - > #endif > diff --git a/kernel_patches/backport/2.6.9_U4/rds_to_2_6_9.patch > b/kernel_patches/backport/2.6.9_U4/rds_to_2_6_9.patch > index d3e2cb9..e260242 100644 > --- a/kernel_patches/backport/2.6.9_U4/rds_to_2_6_9.patch > +++ b/kernel_patches/backport/2.6.9_U4/rds_to_2_6_9.patch > @@ -32,3 +32,18 @@ Index: ofed_kernel/net/rds/rds.h > > #ifdef ATOMIC64_INIT > #define KERNEL_HAS_ATOMIC64 > +diff --git a/net/rds/rdma.h b/net/rds/rdma.h > +index 4255120..8c35e7f 100644 > +--- a/net/rds/rdma.h > ++++ b/net/rds/rdma.h > +@@ -7,6 +7,10 @@ > + > + #include "rds.h" > + > ++#ifndef assert_spin_locked > ++#define assert_spin_locked(lock) do { (void)(lock); } while(0) > ++#endif > ++ > + struct rds_mr { > + struct rb_node r_rb_node; > + atomic_t r_refcount; > diff --git a/kernel_patches/backport/2.6.9_U5/rds_to_2_6_9.patch > b/kernel_patches/backport/2.6.9_U5/rds_to_2_6_9.patch > index d3e2cb9..e260242 100644 > --- a/kernel_patches/backport/2.6.9_U5/rds_to_2_6_9.patch > +++ b/kernel_patches/backport/2.6.9_U5/rds_to_2_6_9.patch > @@ -32,3 +32,18 @@ Index: ofed_kernel/net/rds/rds.h > > #ifdef ATOMIC64_INIT > #define KERNEL_HAS_ATOMIC64 > +diff --git a/net/rds/rdma.h b/net/rds/rdma.h > +index 4255120..8c35e7f 100644 > +--- a/net/rds/rdma.h > ++++ b/net/rds/rdma.h > +@@ -7,6 +7,10 @@ > + > + #include "rds.h" > + > ++#ifndef assert_spin_locked > ++#define assert_spin_locked(lock) do { (void)(lock); } while(0) > ++#endif > ++ > + struct rds_mr { > + struct rb_node r_rb_node; > + atomic_t r_refcount; > diff --git a/kernel_patches/backport/2.6.9_U6/rds_to_2_6_9.patch > b/kernel_patches/backport/2.6.9_U6/rds_to_2_6_9.patch > index d3e2cb9..e260242 100644 > --- a/kernel_patches/backport/2.6.9_U6/rds_to_2_6_9.patch > +++ b/kernel_patches/backport/2.6.9_U6/rds_to_2_6_9.patch > @@ -32,3 +32,18 @@ Index: ofed_kernel/net/rds/rds.h > > #ifdef ATOMIC64_INIT > #define KERNEL_HAS_ATOMIC64 > +diff --git a/net/rds/rdma.h b/net/rds/rdma.h > +index 4255120..8c35e7f 100644 > +--- a/net/rds/rdma.h > ++++ b/net/rds/rdma.h > +@@ -7,6 +7,10 @@ > + > + #include "rds.h" > + > ++#ifndef assert_spin_locked > ++#define assert_spin_locked(lock) do { (void)(lock); } while(0) > ++#endif > ++ > + struct rds_mr { > + struct rb_node r_rb_node; > + atomic_t r_refcount; > diff --git a/kernel_patches/backport/2.6.9_U7/rds_to_2_6_9.patch > b/kernel_patches/backport/2.6.9_U7/rds_to_2_6_9.patch > index d3e2cb9..e260242 100644 > --- a/kernel_patches/backport/2.6.9_U7/rds_to_2_6_9.patch > +++ b/kernel_patches/backport/2.6.9_U7/rds_to_2_6_9.patch > @@ -32,3 +32,18 @@ Index: ofed_kernel/net/rds/rds.h > > #ifdef ATOMIC64_INIT > #define KERNEL_HAS_ATOMIC64 > +diff --git a/net/rds/rdma.h b/net/rds/rdma.h > +index 4255120..8c35e7f 100644 > +--- a/net/rds/rdma.h > ++++ b/net/rds/rdma.h > +@@ -7,6 +7,10 @@ > + > + #include "rds.h" > + > ++#ifndef assert_spin_locked > ++#define assert_spin_locked(lock) do { (void)(lock); } while(0) > ++#endif > ++ > + struct rds_mr { > + struct rb_node r_rb_node; > + atomic_t r_refcount; > > > > _______________________________________________ ewg mailing list ewg@lists.openfabrics.org http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg