* Re: Non-e1000, 2.6.9 page allocation failures with OSS/audio.
2004-11-12 12:18 ` Nick Piggin
@ 2004-11-12 10:41 ` Marcelo Tosatti
0 siblings, 0 replies; 3+ messages in thread
From: Marcelo Tosatti @ 2004-11-12 10:41 UTC (permalink / raw)
To: Nick Piggin; +Cc: Justin Piszcz, linux-kernel, akpm, andrea
On Fri, Nov 12, 2004 at 11:18:01PM +1100, Nick Piggin wrote:
> Justin Piszcz wrote:
> >The other page allocation failures were due to the e1000+TSO
> >segmentation offload issue.
> >
> >I use OSS sound drivers with 2.6.9.
> >
> >Here are the options I use and have been using for quite some time
> >without error:
> >
> >1] <*> Open Sound System (DEPRECATED)
> >2] <*> OSS sound modules
> >3] [*] Verbose initialisation
> >4] [*] Persistent DMA buffers
> >5] <*> Crystal CS4232 based (PnP) cards
> >
> >My LILO append line as is follows:
> >append="cs4232=0x530,5,1,0,388,5 mce video=atyfb:1600x1200-16@60"
> >
> >What happened to the page allocation / memory subsystem in 2.6.9?
> >I do not recall getting these with 2.6.4, 2.6.5, 2.6.6, 2.6.7, 2.6.8 or
> >2.6.8.1.
> >
>
> These failures are actually harmless and not entirely unexpected.
> That path should tell the allocator not to produce warnings on
> failure.
>
> The issue is being actively worked on in the -mm kernels, and the
> important stuff should get into 2.6.10.
>
> However, earlier kernels had a bug that prevented a large amount
> of ZONE_DMA memory from being allocated by GFP_KERNEL allocations
> which is probably why this particular path hasn't been a problem
> before. This actually won't be completely reverted in 2.6.10, however
> the correct way to get this behaviour is with "lower zone protection"
> which Andrea had been working on... so things may happen soon.
Well, the zone->protection code is in the tree but disable by default
(Andrea's lowmem_reserve effectively enables/adjusts it, apart from changing
"protection" to "lowmem_reserve", etc).
The zone protection setup code doesnt configure any protection
for DMA zone with reference to GFP_KERNEL allocations.
It only sets up protection with reference to HIGH zone, I think.
There must be some reasoning to explain why its disable now?
Who wrote the zone->protection code, Andrew?
^ permalink raw reply [flat|nested] 3+ messages in thread
* Non-e1000, 2.6.9 page allocation failures with OSS/audio.
@ 2004-11-12 12:03 Justin Piszcz
2004-11-12 12:18 ` Nick Piggin
0 siblings, 1 reply; 3+ messages in thread
From: Justin Piszcz @ 2004-11-12 12:03 UTC (permalink / raw)
To: linux-kernel
The other page allocation failures were due to the e1000+TSO segmentation
offload issue.
I use OSS sound drivers with 2.6.9.
Here are the options I use and have been using for quite some time without
error:
1] <*> Open Sound System (DEPRECATED)
2] <*> OSS sound modules
3] [*] Verbose initialisation
4] [*] Persistent DMA buffers
5] <*> Crystal CS4232 based (PnP) cards
My LILO append line as is follows:
append="cs4232=0x530,5,1,0,388,5 mce video=atyfb:1600x1200-16@60"
What happened to the page allocation / memory subsystem in 2.6.9?
I do not recall getting these with 2.6.4, 2.6.5, 2.6.6, 2.6.7, 2.6.8 or
2.6.8.1.
gaim: page allocation failure. order:4, mode:0x21
[<c0139227>] __alloc_pages+0x247/0x3b0
[<c01393a8>] __get_free_pages+0x18/0x40
[<c035c7ca>] sound_alloc_dmap+0xaa/0x1b0
[<c0364d50>] ad_mute+0x20/0x40
[<c035cb9f>] open_dmap+0x1f/0x100
[<c035cfe8>] DMAbuf_open+0x178/0x1d0
[<c035a98a>] audio_open+0xba/0x280
[<c015d8e3>] cdev_get+0x53/0xc0
[<c0359b1c>] sound_open+0xac/0x110
[<c0358e1e>] soundcore_open+0x1ce/0x300
[<c0358c50>] soundcore_open+0x0/0x300
[<c015d5a4>] chrdev_open+0x104/0x250
[<c015d4a0>] chrdev_open+0x0/0x250
[<c0152e02>] dentry_open+0x1d2/0x270
[<c0152c1c>] filp_open+0x5c/0x70
[<c0152ef5>] get_unused_fd+0x55/0xf0
[<c0153059>] sys_open+0x49/0x90
[<c010405b>] syscall_call+0x7/0xb
gaim: page allocation failure. order:3, mode:0x21
[<c0139227>] __alloc_pages+0x247/0x3b0
[<c01393a8>] __get_free_pages+0x18/0x40
[<c035c7ca>] sound_alloc_dmap+0xaa/0x1b0
[<c0364d50>] ad_mute+0x20/0x40
[<c035cb9f>] open_dmap+0x1f/0x100
[<c035cfe8>] DMAbuf_open+0x178/0x1d0
[<c035a98a>] audio_open+0xba/0x280
[<c015d8e3>] cdev_get+0x53/0xc0
[<c0359b1c>] sound_open+0xac/0x110
[<c0358e1e>] soundcore_open+0x1ce/0x300
[<c0358c50>] soundcore_open+0x0/0x300
[<c015d5a4>] chrdev_open+0x104/0x250
[<c015d4a0>] chrdev_open+0x0/0x250
[<c0152e02>] dentry_open+0x1d2/0x270
[<c0152c1c>] filp_open+0x5c/0x70
[<c0152ef5>] get_unused_fd+0x55/0xf0
[<c0153059>] sys_open+0x49/0x90
[<c010405b>] syscall_call+0x7/0xb
gaim: page allocation failure. order:4, mode:0x21
[<c0139227>] __alloc_pages+0x247/0x3b0
[<c01393a8>] __get_free_pages+0x18/0x40
[<c035c7ca>] sound_alloc_dmap+0xaa/0x1b0
[<c0364d50>] ad_mute+0x20/0x40
[<c035cb9f>] open_dmap+0x1f/0x100
[<c035cf2d>] DMAbuf_open+0xbd/0x1d0
[<c035a98a>] audio_open+0xba/0x280
[<c015d8e3>] cdev_get+0x53/0xc0
[<c0359b1c>] sound_open+0xac/0x110
[<c0358e1e>] soundcore_open+0x1ce/0x300
[<c0358c50>] soundcore_open+0x0/0x300
[<c015d5a4>] chrdev_open+0x104/0x250
[<c015d4a0>] chrdev_open+0x0/0x250
[<c0152e02>] dentry_open+0x1d2/0x270
[<c0152c1c>] filp_open+0x5c/0x70
[<c0152ef5>] get_unused_fd+0x55/0xf0
[<c0153059>] sys_open+0x49/0x90
[<c010405b>] syscall_call+0x7/0xb
gaim: page allocation failure. order:3, mode:0x21
[<c0139227>] __alloc_pages+0x247/0x3b0
[<c01393a8>] __get_free_pages+0x18/0x40
[<c035c7ca>] sound_alloc_dmap+0xaa/0x1b0
[<c0364d50>] ad_mute+0x20/0x40
[<c035cb9f>] open_dmap+0x1f/0x100
[<c035cf2d>] DMAbuf_open+0xbd/0x1d0
[<c035a98a>] audio_open+0xba/0x280
[<c015d8e3>] cdev_get+0x53/0xc0
[<c0359b1c>] sound_open+0xac/0x110
[<c0358e1e>] soundcore_open+0x1ce/0x300
[<c0358c50>] soundcore_open+0x0/0x300
[<c015d5a4>] chrdev_open+0x104/0x250
[<c015d4a0>] chrdev_open+0x0/0x250
[<c0152e02>] dentry_open+0x1d2/0x270
[<c0152c1c>] filp_open+0x5c/0x70
[<c0152ef5>] get_unused_fd+0x55/0xf0
[<c0153059>] sys_open+0x49/0x90
[<c010405b>] syscall_call+0x7/0xb
gaim: page allocation failure. order:4, mode:0x21
[<c0139227>] __alloc_pages+0x247/0x3b0
[<c01393a8>] __get_free_pages+0x18/0x40
[<c035c7ca>] sound_alloc_dmap+0xaa/0x1b0
[<c0364d50>] ad_mute+0x20/0x40
[<c035cb9f>] open_dmap+0x1f/0x100
[<c035cfe8>] DMAbuf_open+0x178/0x1d0
[<c035a98a>] audio_open+0xba/0x280
[<c0359b1c>] sound_open+0xac/0x110
[<c0358e1e>] soundcore_open+0x1ce/0x300
[<c0358c50>] soundcore_open+0x0/0x300
[<c015d5a4>] chrdev_open+0x104/0x250
[<c015d4a0>] chrdev_open+0x0/0x250
[<c0152e02>] dentry_open+0x1d2/0x270
[<c0152c1c>] filp_open+0x5c/0x70
[<c0152ef5>] get_unused_fd+0x55/0xf0
[<c0153059>] sys_open+0x49/0x90
[<c010405b>] syscall_call+0x7/0xb
gaim: page allocation failure. order:3, mode:0x21
[<c0139227>] __alloc_pages+0x247/0x3b0
[<c01393a8>] __get_free_pages+0x18/0x40
[<c035c7ca>] sound_alloc_dmap+0xaa/0x1b0
[<c0364d50>] ad_mute+0x20/0x40
[<c035cb9f>] open_dmap+0x1f/0x100
[<c035cfe8>] DMAbuf_open+0x178/0x1d0
[<c035a98a>] audio_open+0xba/0x280
[<c0359b1c>] sound_open+0xac/0x110
[<c0358e1e>] soundcore_open+0x1ce/0x300
[<c0358c50>] soundcore_open+0x0/0x300
[<c015d5a4>] chrdev_open+0x104/0x250
[<c015d4a0>] chrdev_open+0x0/0x250
[<c0152e02>] dentry_open+0x1d2/0x270
[<c0152c1c>] filp_open+0x5c/0x70
[<c0152ef5>] get_unused_fd+0x55/0xf0
[<c0153059>] sys_open+0x49/0x90
[<c010405b>] syscall_call+0x7/0xb
gaim: page allocation failure. order:4, mode:0x21
[<c0139227>] __alloc_pages+0x247/0x3b0
[<c01393a8>] __get_free_pages+0x18/0x40
[<c035c7ca>] sound_alloc_dmap+0xaa/0x1b0
[<c0364d50>] ad_mute+0x20/0x40
[<c035cb9f>] open_dmap+0x1f/0x100
[<c035cf2d>] DMAbuf_open+0xbd/0x1d0
[<c035a98a>] audio_open+0xba/0x280
[<c0359b1c>] sound_open+0xac/0x110
[<c0358e1e>] soundcore_open+0x1ce/0x300
[<c0358c50>] soundcore_open+0x0/0x300
[<c015d5a4>] chrdev_open+0x104/0x250
[<c015d4a0>] chrdev_open+0x0/0x250
[<c0152e02>] dentry_open+0x1d2/0x270
[<c0152c1c>] filp_open+0x5c/0x70
[<c0152ef5>] get_unused_fd+0x55/0xf0
[<c0153059>] sys_open+0x49/0x90
[<c010405b>] syscall_call+0x7/0xb
gaim: page allocation failure. order:3, mode:0x21
[<c0139227>] __alloc_pages+0x247/0x3b0
[<c01393a8>] __get_free_pages+0x18/0x40
[<c035c7ca>] sound_alloc_dmap+0xaa/0x1b0
[<c0364d50>] ad_mute+0x20/0x40
[<c035cb9f>] open_dmap+0x1f/0x100
[<c035cf2d>] DMAbuf_open+0xbd/0x1d0
[<c035a98a>] audio_open+0xba/0x280
[<c0359b1c>] sound_open+0xac/0x110
[<c0358e1e>] soundcore_open+0x1ce/0x300
[<c0358c50>] soundcore_open+0x0/0x300
[<c015d5a4>] chrdev_open+0x104/0x250
[<c015d4a0>] chrdev_open+0x0/0x250
[<c0152e02>] dentry_open+0x1d2/0x270
[<c0152c1c>] filp_open+0x5c/0x70
[<c0152ef5>] get_unused_fd+0x55/0xf0
[<c0153059>] sys_open+0x49/0x90
[<c010405b>] syscall_call+0x7/0xb
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Non-e1000, 2.6.9 page allocation failures with OSS/audio.
2004-11-12 12:03 Non-e1000, 2.6.9 page allocation failures with OSS/audio Justin Piszcz
@ 2004-11-12 12:18 ` Nick Piggin
2004-11-12 10:41 ` Marcelo Tosatti
0 siblings, 1 reply; 3+ messages in thread
From: Nick Piggin @ 2004-11-12 12:18 UTC (permalink / raw)
To: Justin Piszcz; +Cc: linux-kernel
Justin Piszcz wrote:
> The other page allocation failures were due to the e1000+TSO
> segmentation offload issue.
>
> I use OSS sound drivers with 2.6.9.
>
> Here are the options I use and have been using for quite some time
> without error:
>
> 1] <*> Open Sound System (DEPRECATED)
> 2] <*> OSS sound modules
> 3] [*] Verbose initialisation
> 4] [*] Persistent DMA buffers
> 5] <*> Crystal CS4232 based (PnP) cards
>
> My LILO append line as is follows:
> append="cs4232=0x530,5,1,0,388,5 mce video=atyfb:1600x1200-16@60"
>
> What happened to the page allocation / memory subsystem in 2.6.9?
> I do not recall getting these with 2.6.4, 2.6.5, 2.6.6, 2.6.7, 2.6.8 or
> 2.6.8.1.
>
These failures are actually harmless and not entirely unexpected.
That path should tell the allocator not to produce warnings on
failure.
The issue is being actively worked on in the -mm kernels, and the
important stuff should get into 2.6.10.
However, earlier kernels had a bug that prevented a large amount
of ZONE_DMA memory from being allocated by GFP_KERNEL allocations
which is probably why this particular path hasn't been a problem
before. This actually won't be completely reverted in 2.6.10, however
the correct way to get this behaviour is with "lower zone protection"
which Andrea had been working on... so things may happen soon.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2004-11-12 14:20 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-11-12 12:03 Non-e1000, 2.6.9 page allocation failures with OSS/audio Justin Piszcz
2004-11-12 12:18 ` Nick Piggin
2004-11-12 10:41 ` Marcelo Tosatti
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox