LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: Ipvs 0.9.3 : panic on heavy load.

To: Julian Anastasov <ja@xxxxxx>
Subject: Re: Ipvs 0.9.3 : panic on heavy load.
Cc: Wensong Zhang <wensong@xxxxxxxxxxxx>, lvs-users@xxxxxxxxxxxxxxxxxxxxxx
From: Lionel Bringuier <lb@xxxxxxxxxxxxxxxxx>
Date: Mon, 3 Dec 2001 17:33:49 +0100
Hi.

On sam, déc 01, 2001 at 10:22:09 +0000, Julian Anastasov wrote:
> > And I could see l L u U l L u U l L u U l u (lock). I repeat, that happens
> > only on a UP machine with kernel configured as SMP.
>       I hope if you use IPVS as modules you fix your compile
> options in ipvs/Makefile?
Yes, the compile options are right. I use the IPVS patch BTW.

>       May be we have to reorder the include files and to use
> something like:
> #include <linux/config.h>
> #if   defined(CONFIG_SMP) && !defined(__SMP__)
> #define       __SMP__
> #endif
That is propably it... I tried on a bi-CPU box (with CONFIG_SMP naturaly),
and it went through perfectly.

> - locking in user space does not use _bh functions and the current
> user context is interrupted from the same CPU between lock and unlock
> But in the case with mod_sltimer I don't see how user space will deal
> with connection states. But there should be something we miss.
OK, that's a good point. In fact, I am using an extension over IPVS that
provides a userland queing, adapted from netfilter's userland queuing. I
tried to replace all the 'spin_lock' and 'spin_unlock' with
'spin_(un)lock_bh', but I still have the crash. Or maybe I did not catch it
right, and I was too brutal while changing all the spin_(un)lock calls in
ipvs code... Of course, I can provide you the code if that is of any help.

Furthermore, when I stuck to 'plain' kernel panics, I noticed that in all my
call stacks I was interrupted by irq0 during sltimer manipulations
(sltimer_handler / del_sltimer). And, as I did not mention that earlier, my
routing policy is NAT (masq.).

I did not try with 2.4.16/ipvs 0.9.7 yet, but I haven't seen anything in the
changelog that could deal with that. However, I'll do that this week

Regards,

LB.

-- 
=========================================================
       Lionel Bringuier - lb_at_fr.netcentrex.net
      Team Leader - Linux Applications Development
Phone : +33 (0)2 31 46 35 70 - http://www.netcentrex.net


<Prev in Thread] Current Thread [Next in Thread>