Please help! Linode getting powered off for kernel panic

Hi,

Before I proceed, please understand that I don't know ABC of Linode optimization or it's behavior.

Since last 8 - 10 days, my server is getting down for 7-8 hours everyday. When I contacted the support team, they sent me the following logs saying that

> Upon inspection of your Linode, I have found that your Linode powered off as a result of a kernel panic. To further troubleshoot this issue, please check your logs and your software configuration.

> –---------------------------------------------------------------------------

BUG: unable to handle kernel paging request at ffff880082c02ee8

IP: [] _freeone_page+0x258/0x291

PGD 1c94067 PUD fe1067 PMD 0

Oops: 0000 [#1] SMP

CPU 1

Modules linked in:

Pid: 22632, comm: php Not tainted 3.0.18-x86_64-linode24 #1

RIP: e030:[] [] _freeone_page+0x258/0x291

RSP: e02b:ffff88000da89b48 EFLAGS: 00010012

RAX: 0000000002c07780 RBX: ffff88007fffb760 RCX: ffff88007fffb788

RDX: 0000000002c07780 RSI: 0000000000000000 RDI: 0000000000000000

RBP: ffff88000da89b98 R08: ffff88007fbf9e58 R09: 0000000000000006

R10: 0000000000000000 R11: ffff88000da89e70 R12: 0000000000000000

R13: ffff88007fffb700 R14: 0000000000000000 R15: ffff88007fffb760

FS: 0000000000000000(0000) GS:ffff88007ff9a000(0063) knlGS:0000000000000000

CS: e033 DS: 002b ES: 002b CR0: 000000008005003b

CR2: ffff880082c02ee8 CR3: 000000000a4fb000 CR4: 0000000000002660

DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000

DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400

Process php (pid: 22632, threadinfo ffff88000da88000, task ffff88000d9fc410)

Stack:

ffff88000da89c38 ffff88007fffb700 0000000000000000 002c077800000000

0000000000000002 0000000000000002 ffff88007ffb1738 0000000000000002

ffff88007fffb788 ffff88007fffb760 ffff88000da89c18 ffffffff810b3dda

Call Trace:

[] freepcppagesbulk+0xd3/0x15b

[] freehotcold_page+0x13d/0x15e

[] _pagevecfree+0x78/0x91

[] release_pages+0x12a/0x186

[] ? check_events+0x12/0x20

[] freepagesandswapcache+0x61/0x7b

[] tlbflushmmu+0x43/0x61

[] tlbfinishmmu+0xf/0x34

[] unmap_region+0xfd/0x10f

[] do_munmap+0x294/0x2fe

[] sys_munmap+0x41/0x58

[] ia32docall+0x13/0x13

Code: 28 70 49 8d 44 05 68 48 89 53 30 48 89 43 28 48 89 0a eb 32 48 63 55 cc 48 8d 4b 28 48 c1 e2 04 44 89 f0 48 6b c0 58 4

8 8d 04 02 <4a> 8b 54 28 68 48 89 4a 08 48 89 53 28 49 8d 54 05 68 48 89 53

RIP [] _freeone_page+0x258/0x291

RSP CR2: ffff880082c02ee8

–-[ end trace 2333cf58181067ed ]–-

-----------------------------------------------------------------------------

Everyday it's getting powered off automatically! Please tell me how to fix this!

Thanks a lot in advance.

9 Replies

looks like you ran out of memory.

99 times out of 100, it's apaches fault.

on my system, i have /etc/apache2/apache2.conf

and in that file i have

StartServers 2

MinSpareServers 2

MaxSpareServers 3

MaxClients 10

MaxRequestsPerChild 1000

MaxClients is the critical line, you probably have yours set to 150, chop a zero off it, say 15.

what might happen then is instead of crashing, your website becomes slow to load at peak times, and in your apache log you might get a message telling you to raise maxclients.

then you can look at how much memory you're using, and slowly raise maxclients if you have enough spare, if you don't have enough spare, you need t upgrade your linode.

I am on NGINX, not Apache.

Do I still have to do what you said?

@chesty:

looks like you ran out of memory.

99 times out of 100, it's apaches fault.

on my system, i have /etc/apache2/apache2.conf

and in that file i have

StartServers 2

MinSpareServers 2

MaxSpareServers 3

MaxClients 10

MaxRequestsPerChild 1000

MaxClients is the critical line, you probably have yours set to 150, chop a zero off it, say 15.

what might happen then is instead of crashing, your website becomes slow to load at peak times, and in your apache log you might get a message telling you to raise maxclients.

then you can look at how much memory you're using, and slowly raise maxclients if you have enough spare, if you don't have enough spare, you need t upgrade your linode.

looks like you are the 1%

No need to tune apache.

how many php processes are you running?

maybe paste ps aux | grep php

^ I am on NGINX server and not Apache.

I cannot help with the OOM, but you can enable Lassie on the dashboard under Settings -> Shutdown watchdog. This will reboot automagically if it shuts down.

@Soumya:

^ I am on NGINX server and not Apache.

So you serve only static files?

If that's the case, install and run atop with continuous sampling to do postmortem analysis of what processes did to cause an OOM. Munin graphs can also help show the environment over time.

@Azathoth:

@Soumya:

^ I am on NGINX server and not Apache.

So you serve only static files?

If that's the case, install and run atop with continuous sampling to do postmortem analysis of what processes did to cause an OOM. Munin graphs can also help show the environment over time.

> Pid: 22632, comm: php Not tainted 3.0.18-x86_64-linode24 #1 looks like php's running.

Since I am new to this and don't know how to fix the issue, I would like to take the help of someone who can do this for me. I am ready to compensate for your efforts. Please note that I am on NGINX and you should be familiar with this web server. Please let me know.

Is it happening at the same time every day? Could it be a cron or similar that is running and causing problems?

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct