On Sat, Feb 15, 2003 at 07:25:43PM +0100, Seth Mos wrote:
> Zombie proccesses. Mainly loopdiloops. Process stuck in D state. A
> very early version of 2.96 also had this IIRC. 2.95.2 was the main
> crulpit. 2.95.3 and above are safe.
I did manage to get problems with 2.95.4 but they are different to
what you describe (processed stuck in IO wait, but would come unstuck
if I remounted RO underneath them).
Perhaps we can have a comment in the source as to *why* the __inline__
is omitted for certain gcc versions, perhaps something like:
diff -u -r1.64 xfs_log.h
--- xfs_log.h 13 Feb 2003 17:41:15 -0000 1.64
+++ xfs_log.h 17 Feb 2003 21:24:05 -0000
@@ -53,8 +53,11 @@
* endian issues in treating two 32 bit numbers as one 64 bit number
*/
static
+/* Some versions of gcc (2.95.x for example) will miscompile if
+ * this is declared __inline__, later versions of gcc (3.2+) appear to
+ * work correctly. */
#ifdef __GNUC__
-# if !((__GNUC__ == 2) && (__GNUC_MINOR__ == 95))
+#if !((__GNUC__ == 2) && ((__GNUC_MINOR__ == 95) || __GNUC_MINOR__ == 96))
__inline__
#endif
#endif
Thanks,
--cw
|