lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Tue, 8 Apr 2008 13:49:08 +0200
From:	Andi Kleen <andi@...stfloor.org>
To:	Nuno Fernandes <npf-mlists@...otux.com>
Cc:	Andi Kleen <andi@...stfloor.org>, linux-kernel@...r.kernel.org
Subject: Re: proc_stack for x86_64 (spinning process)

On Tue, Apr 08, 2008 at 12:41:45PM +0100, Nuno Fernandes wrote:
> On Tuesday 08 April 2008 12:21:53 Andi Kleen wrote:
> > Nuno Pais Fernandes <npf@...otux.com> writes:
> > > Hi,
> > >
> > > I have a spinning process that it's locking my server (eating 100% CPU).
> > > I can't kill it even with kill -9
> > >
> > > I'm trying to use proc_stack to check what's the problem, compiling the
> > > kernel with
> > >
> > > http://linuxhacker.ru/~nikita/patches/2.6.12-rc6/2005.06.11/vm_07-proc-st
> > >ack.patch
> > >
> > > But this patch is only for x86 as my arch is x86_64. Does anyone know if
> > > there's a patch for x86_64?
> >
> > The standard way to handle that is to just do
> >
> > echo 1 > /proc/sys/kernel/sysrq
> > echo t > /proc/sysrq-trigger
> >
> > and then look for the process backtrace in the kernel log.
> I've already done that but the problem is that the "R" script does not show 
> any backtrack. Apparently it's spinning inside kernel and all other processes 
> become in D state (uninterrutable sleep) because of that one.

Then you can either try to catch it with sysrq-p (but only works rarely)
or better use the crash method. But if the process is running live dump
might not work, you might need to force a non live dump using sysrq-c

Another way to identify spinning code is to use a profiler like oprofile
or readprofile.  Something that spins tends to be on top.

-Andi

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ