netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* X or AF_UNIX and order 3 allocation
@ 2008-04-16  4:10 Pete Zaitcev
  2008-04-16  4:51 ` David Miller
  0 siblings, 1 reply; 5+ messages in thread
From: Pete Zaitcev @ 2008-04-16  4:10 UTC (permalink / raw)
  To: netdev; +Cc: zaitcev

Hi, Guys:

Not sure if the problem is caused by X or kernel, but this is what
happened:

Apr 13 18:19:14 niphredil kernel: Xorg: page allocation failure. order:3, mode:0x4020
Apr 13 18:19:14 niphredil kernel: Pid: 2399, comm: Xorg Not tainted 2.6.25-0.195.rc8.git1.fc9.x86_64 #1
Apr 13 18:19:14 niphredil kernel: 
Apr 13 18:19:14 niphredil kernel: Call Trace:
Apr 13 18:19:14 niphredil kernel:  <IRQ>  [__alloc_pages+931/963] __alloc_pages+0x3a3/0x3c3
Apr 13 18:19:14 niphredil kernel:  [unfreeze_slab+112/179] ? unfreeze_slab+0x70/0xb3
Apr 13 18:19:14 niphredil kernel:  [alloc_pages_current+256/265] alloc_pages_current+0x100/0x109
Apr 13 18:19:14 niphredil kernel:  [new_slab+74/585] new_slab+0x4a/0x249
Apr 13 18:19:14 niphredil kernel:  [__slab_alloc+593/1248] __slab_alloc+0x251/0x4e0
Apr 13 18:19:14 niphredil kernel:  [__netdev_alloc_skb+49/79] ? __netdev_alloc_skb+0x31/0x4f
Apr 13 18:19:14 niphredil kernel:  [__kmalloc_node_track_caller+138/226] __kmalloc_node_track_caller+0x8a/0xe2
Apr 13 18:19:14 niphredil kernel:  [sched_clock+80/109] ? native_sched_clock+0x50/0x6d
Apr 13 18:19:14 niphredil kernel:  [__netdev_alloc_skb+49/79] ? __netdev_alloc_skb+0x31/0x4f
Apr 13 18:19:14 niphredil kernel:  [__alloc_skb+111/309] __alloc_skb+0x6f/0x135
Apr 13 18:19:14 niphredil kernel:  [__netdev_alloc_skb+49/79] __netdev_alloc_skb+0x31/0x4f
Apr 13 18:19:14 niphredil kernel:  [_end+108612744/2109740072] :b44:b44_alloc_rx_skb+0x43/0x2c0
Apr 13 18:19:14 niphredil kernel:  [_end+108621334/2109740072] :b44:b44_poll+0x240/0x4ea
Apr 13 18:19:14 niphredil kernel:  [net_rx_action+217/526] net_rx_action+0xd9/0x20e
Apr 13 18:19:14 niphredil kernel:  [__do_softirq+112/241] __do_softirq+0x70/0xf1
Apr 13 18:19:14 niphredil kernel:  [call_softirq+28/40] call_softirq+0x1c/0x28
Apr 13 18:19:14 niphredil kernel:  [do_softirq+57/138] do_softirq+0x39/0x8a
Apr 13 18:19:14 niphredil kernel:  [irq_exit+78/143] irq_exit+0x4e/0x8f
Apr 13 18:19:14 niphredil kernel:  [do_IRQ+325/359] do_IRQ+0x145/0x167
Apr 13 18:19:14 niphredil kernel:  [ret_from_intr+0/15] ret_from_intr+0x0/0xf
Apr 13 18:19:14 niphredil kernel:  <EOI>  [_spin_unlock_irqrestore+66/71] ? _spin_unlock_irqrestore+0x42/0x47
Apr 13 18:19:14 niphredil kernel:  [add_wait_queue+55/64] ? add_wait_queue+0x37/0x40
Apr 13 18:19:14 niphredil kernel:  [__pollwait+214/224] ? __pollwait+0xd6/0xe0
Apr 13 18:19:14 niphredil kernel:  [unix_poll+35/164] ? unix_poll+0x23/0xa4
Apr 13 18:19:14 niphredil kernel:  [sock_poll+24/26] ? sock_poll+0x18/0x1a
Apr 13 18:19:14 niphredil kernel:  [do_select+841/1339] ? do_select+0x349/0x53b
Apr 13 18:19:14 niphredil kernel:  [__pollwait+0/224] ? __pollwait+0x0/0xe0
Apr 13 18:19:14 niphredil kernel:  [default_wake_function+0/15] ? default_wake_function+0x0/0xf
Apr 13 18:19:15 niphredil kernel:last message repeated 9 times
Apr 13 18:19:14 niphredil kernel:  [core_sys_select+486/660] ? core_sys_select+0x1e6/0x294
Apr 13 18:19:14 niphredil kernel:  [sched_clock+80/109] ? native_sched_clock+0x50/0x6d
Apr 13 18:19:14 niphredil kernel:  [hrtimer_try_to_cancel+112/121] ? hrtimer_try_to_cancel+0x70/0x79
Apr 13 18:19:14 niphredil kernel:  [sched_clock+80/109] ? native_sched_clock+0x50/0x6d
Apr 13 18:19:14 niphredil kernel:  [do_setitimer+387/805] ? do_setitimer+0x183/0x325
Apr 13 18:19:14 niphredil kernel:  [lock_release_holdtime+30/264] ? lock_release_holdtime+0x1e/0x108
Apr 13 18:19:14 niphredil kernel:  [_spin_unlock_irq+43/48] ? _spin_unlock_irq+0x2b/0x30
Apr 13 18:19:14 niphredil kernel:  [trace_hardirqs_on+241/277] ? trace_hardirqs_on+0xf1/0x115
Apr 13 18:19:14 niphredil kernel:  [sys_select+181/343] ? sys_select+0xb5/0x157
Apr 13 18:19:14 niphredil kernel:  [tracesys+213/218] ? tracesys+0xd5/0xda

-- Pete

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: X or AF_UNIX and order 3 allocation
  2008-04-16  4:10 X or AF_UNIX and order 3 allocation Pete Zaitcev
@ 2008-04-16  4:51 ` David Miller
  2008-04-16 15:52   ` Stephen Hemminger
  0 siblings, 1 reply; 5+ messages in thread
From: David Miller @ 2008-04-16  4:51 UTC (permalink / raw)
  To: zaitcev; +Cc: netdev, linux-kernel

From: Pete Zaitcev <zaitcev@redhat.com>
Date: Tue, 15 Apr 2008 21:10:55 -0700

> Hi, Guys:
> 
> Not sure if the problem is caused by X or kernel, but this is what

It seems to be the b44 driver doing a large huge order allocation.

That driver only asks for (1536 + 30 + 64) bytes, so I suppose part of
the problem is that SLAB is using an order 3 allocation to satisfy
that.

lkml added to CC:

> Apr 13 18:19:14 niphredil kernel: Xorg: page allocation failure. order:3, mode:0x4020
> Apr 13 18:19:14 niphredil kernel: Pid: 2399, comm: Xorg Not tainted 2.6.25-0.195.rc8.git1.fc9.x86_64 #1
> Apr 13 18:19:14 niphredil kernel: 
> Apr 13 18:19:14 niphredil kernel: Call Trace:
> Apr 13 18:19:14 niphredil kernel:  <IRQ>  [__alloc_pages+931/963] __alloc_pages+0x3a3/0x3c3
> Apr 13 18:19:14 niphredil kernel:  [unfreeze_slab+112/179] ? unfreeze_slab+0x70/0xb3
> Apr 13 18:19:14 niphredil kernel:  [alloc_pages_current+256/265] alloc_pages_current+0x100/0x109
> Apr 13 18:19:14 niphredil kernel:  [new_slab+74/585] new_slab+0x4a/0x249
> Apr 13 18:19:14 niphredil kernel:  [__slab_alloc+593/1248] __slab_alloc+0x251/0x4e0
> Apr 13 18:19:14 niphredil kernel:  [__netdev_alloc_skb+49/79] ? __netdev_alloc_skb+0x31/0x4f
> Apr 13 18:19:14 niphredil kernel:  [__kmalloc_node_track_caller+138/226] __kmalloc_node_track_caller+0x8a/0xe2
> Apr 13 18:19:14 niphredil kernel:  [sched_clock+80/109] ? native_sched_clock+0x50/0x6d
> Apr 13 18:19:14 niphredil kernel:  [__netdev_alloc_skb+49/79] ? __netdev_alloc_skb+0x31/0x4f
> Apr 13 18:19:14 niphredil kernel:  [__alloc_skb+111/309] __alloc_skb+0x6f/0x135
> Apr 13 18:19:14 niphredil kernel:  [__netdev_alloc_skb+49/79] __netdev_alloc_skb+0x31/0x4f
> Apr 13 18:19:14 niphredil kernel:  [_end+108612744/2109740072] :b44:b44_alloc_rx_skb+0x43/0x2c0
> Apr 13 18:19:14 niphredil kernel:  [_end+108621334/2109740072] :b44:b44_poll+0x240/0x4ea
> Apr 13 18:19:14 niphredil kernel:  [net_rx_action+217/526] net_rx_action+0xd9/0x20e
> Apr 13 18:19:14 niphredil kernel:  [__do_softirq+112/241] __do_softirq+0x70/0xf1
> Apr 13 18:19:14 niphredil kernel:  [call_softirq+28/40] call_softirq+0x1c/0x28
> Apr 13 18:19:14 niphredil kernel:  [do_softirq+57/138] do_softirq+0x39/0x8a
> Apr 13 18:19:14 niphredil kernel:  [irq_exit+78/143] irq_exit+0x4e/0x8f
> Apr 13 18:19:14 niphredil kernel:  [do_IRQ+325/359] do_IRQ+0x145/0x167
> Apr 13 18:19:14 niphredil kernel:  [ret_from_intr+0/15] ret_from_intr+0x0/0xf
> Apr 13 18:19:14 niphredil kernel:  <EOI>  [_spin_unlock_irqrestore+66/71] ? _spin_unlock_irqrestore+0x42/0x47
> Apr 13 18:19:14 niphredil kernel:  [add_wait_queue+55/64] ? add_wait_queue+0x37/0x40
> Apr 13 18:19:14 niphredil kernel:  [__pollwait+214/224] ? __pollwait+0xd6/0xe0
> Apr 13 18:19:14 niphredil kernel:  [unix_poll+35/164] ? unix_poll+0x23/0xa4
> Apr 13 18:19:14 niphredil kernel:  [sock_poll+24/26] ? sock_poll+0x18/0x1a
> Apr 13 18:19:14 niphredil kernel:  [do_select+841/1339] ? do_select+0x349/0x53b
> Apr 13 18:19:14 niphredil kernel:  [__pollwait+0/224] ? __pollwait+0x0/0xe0
> Apr 13 18:19:14 niphredil kernel:  [default_wake_function+0/15] ? default_wake_function+0x0/0xf
> Apr 13 18:19:15 niphredil kernel:last message repeated 9 times
> Apr 13 18:19:14 niphredil kernel:  [core_sys_select+486/660] ? core_sys_select+0x1e6/0x294
> Apr 13 18:19:14 niphredil kernel:  [sched_clock+80/109] ? native_sched_clock+0x50/0x6d
> Apr 13 18:19:14 niphredil kernel:  [hrtimer_try_to_cancel+112/121] ? hrtimer_try_to_cancel+0x70/0x79
> Apr 13 18:19:14 niphredil kernel:  [sched_clock+80/109] ? native_sched_clock+0x50/0x6d
> Apr 13 18:19:14 niphredil kernel:  [do_setitimer+387/805] ? do_setitimer+0x183/0x325
> Apr 13 18:19:14 niphredil kernel:  [lock_release_holdtime+30/264] ? lock_release_holdtime+0x1e/0x108
> Apr 13 18:19:14 niphredil kernel:  [_spin_unlock_irq+43/48] ? _spin_unlock_irq+0x2b/0x30
> Apr 13 18:19:14 niphredil kernel:  [trace_hardirqs_on+241/277] ? trace_hardirqs_on+0xf1/0x115
> Apr 13 18:19:14 niphredil kernel:  [sys_select+181/343] ? sys_select+0xb5/0x157
> Apr 13 18:19:14 niphredil kernel:  [tracesys+213/218] ? tracesys+0xd5/0xda

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: X or AF_UNIX and order 3 allocation
  2008-04-16  4:51 ` David Miller
@ 2008-04-16 15:52   ` Stephen Hemminger
  2008-04-16 16:59     ` Pete Zaitcev
  0 siblings, 1 reply; 5+ messages in thread
From: Stephen Hemminger @ 2008-04-16 15:52 UTC (permalink / raw)
  To: David Miller; +Cc: zaitcev, netdev, linux-kernel

On Tue, 15 Apr 2008 21:51:44 -0700 (PDT)
David Miller <davem@davemloft.net> wrote:

> From: Pete Zaitcev <zaitcev@redhat.com>
> Date: Tue, 15 Apr 2008 21:10:55 -0700
> 
> > Hi, Guys:
> > 
> > Not sure if the problem is caused by X or kernel, but this is what
> 
> It seems to be the b44 driver doing a large huge order allocation.
> 
> That driver only asks for (1536 + 30 + 64) bytes, so I suppose part of
> the problem is that SLAB is using an order 3 allocation to satisfy
> that.
>

The chip needs memory below 1G for DMA, perhaps low memory is getting
exhausted.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: X or AF_UNIX and order 3 allocation
  2008-04-16 15:52   ` Stephen Hemminger
@ 2008-04-16 16:59     ` Pete Zaitcev
  2008-04-27 16:48       ` [ipw2100, b44] " Pekka Pietikainen
  0 siblings, 1 reply; 5+ messages in thread
From: Pete Zaitcev @ 2008-04-16 16:59 UTC (permalink / raw)
  To: Stephen Hemminger; +Cc: David Miller, netdev, linux-kernel, zaitcev

On Wed, 16 Apr 2008 08:52:13 -0700, Stephen Hemminger <shemminger@vyatta.com> wrote:

> > > Not sure if the problem is caused by X or kernel, but this is what
> > 
> > It seems to be the b44 driver doing a large huge order allocation.
> > 
> > That driver only asks for (1536 + 30 + 64) bytes, so I suppose part of
> > the problem is that SLAB is using an order 3 allocation to satisfy
> > that.

> The chip needs memory below 1G for DMA, perhaps low memory is getting
> exhausted.

The failure corresponds to memory pressure (from yum), but the real issue
is the lack of order 3 areas. We're talking a 32KB chunk! Why would anyone
need that much? Crazy!

Apr 13 18:19:14 niphredil kernel: Xorg: page allocation failure. order:3, mode:0x4020

I blame SLUB. Things like the above never happened with SLAB.

-- Pete

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [ipw2100, b44] Re: X or AF_UNIX and order 3 allocation
  2008-04-16 16:59     ` Pete Zaitcev
@ 2008-04-27 16:48       ` Pekka Pietikainen
  0 siblings, 0 replies; 5+ messages in thread
From: Pekka Pietikainen @ 2008-04-27 16:48 UTC (permalink / raw)
  To: Pete Zaitcev; +Cc: Stephen Hemminger, David Miller, netdev, linux-kernel

On Wed, Apr 16, 2008 at 09:59:38AM -0700, Pete Zaitcev wrote:
> > > It seems to be the b44 driver doing a large huge order allocation.
> > > That driver only asks for (1536 + 30 + 64) bytes, so I suppose part of
> > > the problem is that SLAB is using an order 3 allocation to satisfy
> > > that.
> > The chip needs memory below 1G for DMA, perhaps low memory is getting
> > exhausted.
> The failure corresponds to memory pressure (from yum), but the real issue
> is the lack of order 3 areas. We're talking a 32KB chunk! Why would anyone
> need that much? Crazy!
Here too, but with ipw2100 not b44 (-rc8.git7, which has otherwise been
running quite happily for a few weeks)

swapper: page allocation failure. order:3, mode:0x4020
Pid: 0, comm: swapper Not tainted 2.6.25-0.218.rc8.git7.fc9.i686 #1
 [<c0466d66>] __alloc_pages+0x2cf/0x2e6
 [<c047e8f9>] __slab_alloc+0x19e/0x529
 [<c047fbc4>] __kmalloc_track_caller+0x87/0xca
 [<f09f8e00>] ? ipw2100_alloc_skb+0x19/0x5c [ipw2100]
 [<f09f8e00>] ? ipw2100_alloc_skb+0x19/0x5c [ipw2100]
 [<c05b4c30>] __alloc_skb+0x49/0xf8
 [<f09f8e00>] ipw2100_alloc_skb+0x19/0x5c [ipw2100]
 [<f09f9599>] ipw2100_irq_tasklet+0x4b1/0x6e0 [ipw2100]
 [<c042b161>] tasklet_action+0x5e/0xb3
 [<c042b879>] __do_softirq+0x79/0xe7
 [<c0407edf>] do_softirq+0x74/0xb5
 [<c045ccde>] ? handle_level_irq+0x0/0xbe
 [<c042b681>] irq_exit+0x38/0x6b
 [<c0407fcc>] do_IRQ+0xac/0xc4
 [<c04066eb>] common_interrupt+0x23/0x28
 [<c059e494>] ? poll_idle+0x21/0x65
 [<c059e3d2>] cpuidle_idle_call+0x62/0x92
 [<c059e370>] ? cpuidle_idle_call+0x0/0x92
 [<c0404c8d>] cpu_idle+0xbd/0xdd
 [<c061c009>] rest_init+0x49/0x4b
 =======================
Mem-info:
DMA per-cpu:
CPU    0: hi:    0, btch:   1 usd:   0
Normal per-cpu:
CPU    0: hi:  186, btch:  31 usd: 152
Active:155693 inactive:24779 dirty:2760 writeback:447 unstable:0
 free:2446 slab:6669 mapped:16577 pagetables:1509 bounce:0
DMA free:3012kB min:72kB low:88kB high:108kB active:6620kB inactive:952kB
present:16256kB pages_scanned:0 all_unreclaimable? no
lowmem_reserve[]: 0 745 745 745
Normal free:6772kB min:3452kB low:4312kB high:5176kB active:616152kB
inactive:98164kB present:763400kB pages_scanned:260 all_unreclaimable? no
lowmem_reserve[]: 0 0 0 0
DMA: 33*4kB 6*8kB 5*16kB 0*32kB 1*64kB 3*128kB 1*256kB 0*512kB 0*1024kB
1*2048kB 0*4096kB = 3012kB
Normal: 1133*4kB 218*8kB 23*16kB 1*32kB 0*64kB 1*128kB 0*256kB 0*512kB
0*1024kB 0*2048kB 0*4096kB = 6804kB
75100 total pagecache pages
Swap cache: add 369369, delete 344259, find 701011/737099
Free swap  = 1314284kB
Total swap = 1572856kB
Free swap:       1314284kB
196448 pages of RAM
0 pages of HIGHMEM
2965 reserved pages
87587 pages shared
25110 pages swap cached
2760 pages dirty
447 pages writeback
16577 pages mapped
6669 pages slab
1509 pages pagetables
swapper: page allocation failure. order:3, mode:0x4020
Pid: 0, comm: swapper Not tainted 2.6.25-0.218.rc8.git7.fc9.i686 #1
 [<c0466d66>] __alloc_pages+0x2cf/0x2e6
 [<c047e8f9>] __slab_alloc+0x19e/0x529
 [<c047fbc4>] __kmalloc_track_caller+0x87/0xca
[<f09f8e00>] ? ipw2100_alloc_skb+0x19/0x5c [ipw2100]
 [<f09f8e00>] ? ipw2100_alloc_skb+0x19/0x5c [ipw2100]
 [<c05b4c30>] __alloc_skb+0x49/0xf8
 [<f09f8e00>] ipw2100_alloc_skb+0x19/0x5c [ipw2100]
 [<f09f9599>] ipw2100_irq_tasklet+0x4b1/0x6e0 [ipw2100]
 [<c042b161>] tasklet_action+0x5e/0xb3
 [<c042b879>] __do_softirq+0x79/0xe7
 [<c0407edf>] do_softirq+0x74/0xb5
 [<c045ccde>] ? handle_level_irq+0x0/0xbe
 [<c042b681>] irq_exit+0x38/0x6b
 [<c0407fcc>] do_IRQ+0xac/0xc4
 [<c04066eb>] common_interrupt+0x23/0x28
 [<c059e494>] ? poll_idle+0x21/0x65
 [<c059e3d2>] cpuidle_idle_call+0x62/0x92
 [<c059e370>] ? cpuidle_idle_call+0x0/0x92
 [<c0404c8d>] cpu_idle+0xbd/0xdd
 [<c061c009>] rest_init+0x49/0x4b
 =======================

It seems to have been a pretty transient thing:

messages-20080427:Apr 24 15:37:14 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:15 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:15 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:15 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:16 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:16 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:16 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:16 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:16 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:16 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:35 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:35 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:35 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020
messages-20080427:Apr 24 15:37:37 it-pc37 kernel: swapper: page allocation
failure. order:3, mode:0x4020

(and nothing since that for a few days)

-- 
Pekka Pietikainen

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2008-04-27 17:16 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-04-16  4:10 X or AF_UNIX and order 3 allocation Pete Zaitcev
2008-04-16  4:51 ` David Miller
2008-04-16 15:52   ` Stephen Hemminger
2008-04-16 16:59     ` Pete Zaitcev
2008-04-27 16:48       ` [ipw2100, b44] " Pekka Pietikainen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).