[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Problems with 2.4.19-pre9



On Fri, 2002-05-31 at 09:46, Steve Lord wrote:
> On Fri, 2002-05-31 at 07:19, Paul Schutte wrote:
> > Changes that went in on  May  24th caused the problems.
> > I checked the tree out on the morning of 24 May and Steve dropped a few
> > changes to get XFS out of the irq business later that day.
> > I checked the tree out again before I went home.
> > The first one works perfectly, the second one shows the behaviour described.
> > I checked with kdb to see what happends when everythings pauses.
> > 
> > keventd is shown to be running when I do a ps.
> > It is busy doing  "schedule"
> > The cp that shows the pause behaviour are also in "schedule".
> > It looks like same kind of deadlock that resolves it self after a while.
> > It takes between 5 to 30 seconds for the cp to continue.
> > 
> > Hope this helps.
> > 
> > Paul
> > 
> 

Can someone who experiences this problem (and is using the debian 2.95
compiler) try this patch on a current tree and see if the problem goes
away please?

Thanks
   Steve


-- 

Steve Lord                                      voice: +1-651-683-3511
Principal Engineer, Filesystem Software         email: lord@sgi.com

===========================================================================
Index: linux/fs/xfs/Makefile
===========================================================================

--- /usr/tmp/TmpDir.30278-0/linux/fs/xfs/Makefile_1.139	Fri May 31 10:08:51 2002
+++ linux/fs/xfs/Makefile	Fri May 31 10:03:58 2002
@@ -137,8 +137,7 @@
 				   xfs_utils.o \
 				   xfs_vfsops.o \
 				   xfs_vnodeops.o \
-				   xfs_rw.o \
-				   xfs_log_lsn.o
+				   xfs_rw.o
 
 # Objects not built in this directory
 obj-y				+= pagebuf/pagebuf.o \

===========================================================================
Index: linux/fs/xfs/xfs_log.h
===========================================================================

--- /usr/tmp/TmpDir.30278-0/linux/fs/xfs/xfs_log.h_1.59	Fri May 31 10:08:51 2002
+++ linux/fs/xfs/xfs_log.h	Fri May 31 10:05:02 2002
@@ -48,16 +48,16 @@
 #define CYCLE_LSN_NOCONV(lsn,arch) (((uint *)&(lsn))[LSN_FIELD_CYCLE(arch)])
 
 #ifdef __KERNEL__
-#if (__GNUC__ == 2) && (__GNUC_MINOR__ == 95) 
-extern xfs_lsn_t _lsn_cmp(xfs_lsn_t, xfs_lsn_t, xfs_arch_t);
-#define _lsn_cmp _xfs_lsn_cmp
-#endif
-
 /*
- * By comparing each component, we don't have to worry about extra
+ * By comparing each compnent, we don't have to worry about extra
  * endian issues in treating two 32 bit numbers as one 64 bit number
  */
-static inline
+static
+#ifdef __GNUC__
+# if !((__GNUC__ == 2) && (__GNUC_MINOR__ == 95))
+__inline__
+#endif
+#endif
 xfs_lsn_t	_lsn_cmp(xfs_lsn_t lsn1, xfs_lsn_t lsn2, xfs_arch_t arch)
 {
 	if (CYCLE_LSN(lsn1, arch) != CYCLE_LSN(lsn2, arch))