Patch for 2.1.127-pre6 and gcc 2.7.x

Chip Salzenberg (chip@perlsupport.com)
Tue, 3 Nov 1998 23:56:57 -0500


This lets 2.1.127-pre6 compile kernel/sched.c with gcc 2.7.x:

Index: include/asm-i386/spinlock.h
***************
*** 89,95 ****
* irq-safe write-lock, but readers can get non-irqsafe
* read-locks.
*/
! typedef struct { } rwlock_t;
! #define RW_LOCK_UNLOCKED (rwlock_t) { }

#define read_lock(lock) do { } while(0)
--- 89,102 ----
* irq-safe write-lock, but readers can get non-irqsafe
* read-locks.
+ *
+ * Gcc-2.7.x has a nasty bug with empty initializers.
*/
! #if (__GNUC__ > 2) || (__GNUC__ == 2 && __GNUC_MINOR__ >= 8)
! typedef struct { } rwlock_t;
! #define RW_LOCK_UNLOCKED (rwlock_t) { }
! #else
! typedef struct { int gcc_is_buggy; } rwlock_t;
! #define RW_LOCK_UNLOCKED (rwlock_t) { 0 }
! #endif

#define read_lock(lock) do { } while(0)

-- 
Chip Salzenberg        - a.k.a. -        <chip@perlsupport.com>
      "There -- we made them swerve slightly!"   //MST3K

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/