Bug 14562 - On umount warn in page_alloc.c:1751 __alloc_pages_slowpath
Summary: On umount warn in page_alloc.c:1751 __alloc_pages_slowpath
Status: CLOSED UNREPRODUCIBLE
Alias: None
Product: File System
Classification: Unclassified
Component: ext4 (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: fs_ext4@kernel-bugs.osdl.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-11-08 22:52 UTC by Torsten Krah
Modified: 2012-06-14 16:50 UTC (History)
3 users (show)

See Also:
Kernel Version: 2.6.31
Subsystem:
Regression: No
Bisected commit-id:


Attachments
Warning from syslog (the pasted version didn't format well). (4.27 KB, text/plain)
2009-11-17 22:25 UTC, Francis Russell
Details

Description Torsten Krah 2009-11-08 22:52:55 UTC
Created a new ext4 fs on sda5.
Did copy my backup (about 40Gig back) und did a umount to the fs.
After this i got this warning:

[40844.609540] EXT4-fs (sda5): barriers enabled
[40844.627485] kjournald2 starting: pid 573, dev sda5:8, commit interval 5 seconds
[40844.627690] EXT4-fs (sda5): internal journal on sda5:8
[40844.627702] EXT4-fs (sda5): delayed allocation enabled
[40844.627711] EXT4-fs: file extents enabled
[40844.643621] EXT4-fs: mballoc enabled
[40844.643641] EXT4-fs (sda5): mounted filesystem with ordered data mode
[43805.914965] EXT4-fs: mballoc: 9254958 blocks 101031 reqs (81545 success)
[43805.914978] EXT4-fs: mballoc: 21054 extents scanned, 11670 goal hits, 18363 2^N hits, 0 breaks, 0 lost
[43805.914987] EXT4-fs: mballoc: 315 generated and it took 2147482
[43805.914995] EXT4-fs: mballoc: 6643657 preallocated, 1203082 discarded
[43809.377291] ------------[ cut here ]------------
[43809.377320] WARNING: at /build/buildd/linux-2.6.31/mm/page_alloc.c:1751 __alloc_pages_slowpath+0x459/0x480()
[43809.377330] Hardware name: CoronaR
[43809.377335] Modules linked in: usb_storage tun binfmt_misc lp vboxnetadp vboxnetflt vboxdrv kqemu usblp snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi pcmcia snd_rawmidi snd_seq_midi_event snd_seq snd_timer yenta_socket snd_seq_device iptable_filter rsrc_nonstatic iTCO_wdt ip_tables x_tables ipw2200 pcmcia_core snd soundcore iTCO_vendor_support snd_page_alloc joydev libipw lib80211 shpchp ppdev parport_pc parport asus_laptop led_class psmouse serio_raw irda crc_ccitt sbp2 fbcon tileblit font bitblit softcursor radeon ttm drm 8139too radeonfb fb_ddc i2c_algo_bit 8139cp mii ohci1394 ieee1394 video output intel_agp agpgart
[43809.377504] Pid: 1017, comm: mount Tainted: G        W  2.6.31-14-generic #48-Ubuntu
[43809.377512] Call Trace:
[43809.377531]  [<c014518d>] warn_slowpath_common+0x6d/0xa0
[43809.377544]  [<c01b8429>] ? __alloc_pages_slowpath+0x459/0x480
[43809.377556]  [<c01b8429>] ? __alloc_pages_slowpath+0x459/0x480
[43809.377569]  [<c01451d5>] warn_slowpath_null+0x15/0x20
[43809.377580]  [<c01b8429>] __alloc_pages_slowpath+0x459/0x480
[43809.377593]  [<c01b7e50>] ? get_page_from_freelist+0x1e0/0x360
[43809.377607]  [<c01b855f>] __alloc_pages_nodemask+0x10f/0x120
[43809.377620]  [<c01b85b7>] __get_free_pages+0x17/0x30
[43809.377633]  [<c01e088f>] __kmalloc+0xdf/0x180
[43809.377646]  [<c031974e>] match_number+0x2e/0xa0
[43809.377657]  [<c03197ea>] match_int+0xa/0x10
[43809.377670]  [<c0274102>] parse_options+0x152/0x810
[43809.377683]  [<c0209686>] ? __wait_on_buffer+0x26/0x30
[43809.377697]  [<c027be96>] ext4_fill_super+0x3f6/0x1900
[43809.377712]  [<c01ea0e5>] get_sb_bdev+0x135/0x170
[43809.377724]  [<c027baa0>] ? ext4_fill_super+0x0/0x1900
[43809.377737]  [<c01b8500>] ? __alloc_pages_nodemask+0xb0/0x120
[43809.377749]  [<c0272e21>] ext4_get_sb+0x21/0x30
[43809.377760]  [<c027baa0>] ? ext4_fill_super+0x0/0x1900
[43809.377772]  [<c01e9cde>] vfs_kern_mount+0x5e/0x120
[43809.377784]  [<c01e9df9>] do_kern_mount+0x39/0xd0
[43809.377797]  [<c01fee2e>] do_new_mount+0x6e/0xa0
[43809.377808]  [<c01ff7f9>] do_mount+0x1c9/0x1e0
[43809.377819]  [<c01ff876>] sys_mount+0x66/0xa0
[43809.377831]  [<c010336c>] syscall_call+0x7/0xb
[43809.377840] ---[ end trace a7919e7f17c0a727 ]---


I am using Ubuntu 9.10. Kernel config attached. e2fsprogs version 1.41.9.
Comment 1 Theodore Tso 2009-11-09 02:44:52 UTC
On Sun, Nov 08, 2009 at 10:52:59PM +0000, bugzilla-daemon@bugzilla.kernel.org wrote:
> 
> Created a new ext4 fs on sda5.
> Did copy my backup (about 40Gig back) und did a umount to the fs.
> After this i got this warning:

Did you also do a mount operation shortly afterwards?  It looks like 4
seconds after the unmount completed, it was a mount operation that
caused the warning.

> [43805.914995] EXT4-fs: mballoc: 6643657 preallocated, 1203082 discarded
> [43809.377291] ------------[ cut here ]------------
> [43809.377320] WARNING: at /build/buildd/linux-2.6.31/mm/page_alloc.c:1751

The EXT4-fs: mballoc: is the last line you would normally expect to
see when unmounting the filesystem.  And the warning took place 4
seconds later, which is a eternity as far as kernel-time is
considered.

Also, look at the bottom of the call trace:

> [43809.377512] Call Trace:
> [43809.377531]  [<c014518d>] warn_slowpath_common+0x6d/0xa0
  	....
> [43809.377633]  [<c01e088f>] __kmalloc+0xdf/0x180
> [43809.377646]  [<c031974e>] match_number+0x2e/0xa0
> [43809.377657]  [<c03197ea>] match_int+0xa/0x10
> [43809.377670]  [<c0274102>] parse_options+0x152/0x810
  	....
> [43809.377760]  [<c027baa0>] ? ext4_fill_super+0x0/0x1900
> [43809.377772]  [<c01e9cde>] vfs_kern_mount+0x5e/0x120
> [43809.377784]  [<c01e9df9>] do_kern_mount+0x39/0xd0
> [43809.377797]  [<c01fee2e>] do_new_mount+0x6e/0xa0
> [43809.377808]  [<c01ff7f9>] do_mount+0x1c9/0x1e0
> [43809.377819]  [<c01ff876>] sys_mount+0x66/0xa0
  		  	       ^^^^^^^^^
> [43809.377831]  [<c010336c>] syscall_call+0x7/0xb
> [43809.377840] ---[ end trace a7919e7f17c0a727 ]---


Looks like this was some kind of "interesting" set of mount options
passed to the kernel.  Any chance you could figure out what the mount
options were to the mount operation?

					- Ted
Comment 2 Torsten Krah 2009-11-09 16:20:43 UTC
Yes, you are right. I did mount it shortly afterwards again - like the trace shows.
Hm the mount options aren't really "interesting", fstab read and reads like this:

UUID=<UUID> /home ext4 defaults,relatime,errors=remount-ro 0 1
Comment 3 Torsten Krah 2009-11-10 21:24:36 UTC
At the moment it reads:

UUID=64cde1ce-04f7-4392-8d6b-427aba6a6f0e /home           ext4    defaults,relatime,errors=remount-ro,auto_da_alloc

Same output:

[   10.747524] ------------[ cut here ]------------
[   10.747540] WARNING: at /build/buildd/linux-2.6.31/mm/page_alloc.c:1751 __alloc_pages_slowpath+0x459/0x480()
[   10.747544] Hardware name: CoronaR
[   10.747546] Modules linked in: dm_raid45 xor fbcon tileblit font bitblit softcursor radeon ttm drm 8139too radeonfb fb_ddc i2c_algo_bit 8139cp mii ohci1394 ieee1394 video output intel_agp agpgart
[   10.747573] Pid: 479, comm: mount Tainted: G        W  2.6.31-15-generic #49-Ubuntu
[   10.747576] Call Trace:
[   10.747586]  [<c014518d>] warn_slowpath_common+0x6d/0xa0
[   10.747591]  [<c01b8429>] ? __alloc_pages_slowpath+0x459/0x480
[   10.747595]  [<c01b8429>] ? __alloc_pages_slowpath+0x459/0x480
[   10.747600]  [<c01451d5>] warn_slowpath_null+0x15/0x20
[   10.747605]  [<c01b8429>] __alloc_pages_slowpath+0x459/0x480
[   10.747682]  [<c01b7e50>] ? get_page_from_freelist+0x1e0/0x360
[   10.747688]  [<c01b855f>] __alloc_pages_nodemask+0x10f/0x120
[   10.747692]  [<c01b85b7>] __get_free_pages+0x17/0x30
[   10.747699]  [<c01e088f>] __kmalloc+0xdf/0x180
[   10.747705]  [<c0319c0e>] match_number+0x2e/0xa0
[   10.747709]  [<c0319caa>] match_int+0xa/0x10
[   10.747715]  [<c02745c2>] parse_options+0x152/0x810
[   10.747721]  [<c0209b46>] ? __wait_on_buffer+0x26/0x30
[   10.747726]  [<c027c356>] ext4_fill_super+0x3f6/0x1900
[   10.747733]  [<c01ea585>] get_sb_bdev+0x135/0x170
[   10.747738]  [<c027bf60>] ? ext4_fill_super+0x0/0x1900
[   10.747742]  [<c01b8500>] ? __alloc_pages_nodemask+0xb0/0x120
[   10.747747]  [<c02732e1>] ext4_get_sb+0x21/0x30
[   10.747751]  [<c027bf60>] ? ext4_fill_super+0x0/0x1900
[   10.747755]  [<c01ea17e>] vfs_kern_mount+0x5e/0x120
[   10.747760]  [<c01ea299>] do_kern_mount+0x39/0xd0
[   10.747765]  [<c01ff2ee>] do_new_mount+0x6e/0xa0
[   10.747770]  [<c01ffcb9>] do_mount+0x1c9/0x1e0
[   10.747774]  [<c01ffd36>] sys_mount+0x66/0xa0
[   10.747779]  [<c010336c>] syscall_call+0x7/0xb
[   10.747782] ---[ end trace a7919e7f17c0a727 ]---
[   11.095569] EXT4-fs (sda5): barriers enabled
[   11.468196] kjournald2 starting: pid 668, dev sda5:8, commit interval 5 seconds
[   11.661199] EXT4-fs (sda5): internal journal on sda5:8
[   11.661207] EXT4-fs (sda5): delayed allocation enabled
[   11.661211] EXT4-fs: file extents enabled
[   11.661991] EXT4-fs: mballoc enabled
[   11.662010] EXT4-fs (sda5): mounted filesystem with ordered data mode
Comment 4 Francis Russell 2009-11-17 22:22:01 UTC
Hi there,

I also have this warning. It seems to occur only when mounting or remounting an ext4 partition using the auto_da_alloc ext4 mount option. Without this option, the warning doesn't occur. I'm using x86_64 Debian testing with a 2.6.31.6 kernel compiled from vanilla kernel.org sources running an a Samsung R560 laptop. This is what I see in the syslog:

Nov 17 22:03:41 callisto kernel: [   19.128673] WARNING: at mm/page_alloc.c:1751 __alloc_pages_nodemask+0x174/0x592()
Nov 17 22:03:41 callisto kernel: [   19.152057] Hardware name: R560                       
Nov 17 22:03:41 callisto kernel: [   19.175684] Modules linked in: ext4 jbd2 crc16 fuse coretemp loop btusb bluetooth arc4 ecb snd_hda_codec_nvhdmi snd_hda_codec_realtek iwlagn iwlcore snd_hda_intel joydev snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss led_class snd_pcm snd_seq_dummy snd_seq_oss mac80211 snd_seq_midi snd_rawmidi sg snd_seq_midi_event snd_seq snd_timer snd_seq_device cfg80211 snd i2c_i801 sr_mod soundcore uhci_hcd rfkill i2c_core psmouse cdrom intel_agp snd_page_alloc ehci_hcd sky2 evdev serio_raw video battery pcspkr output button ac aes_x86_64 aes_generic xts gf128mul dm_crypt dm_mod sd_mod crc_t10dif fan ahci ext3 jbd mbcache
Nov 17 22:03:41 callisto kernel: [   19.255394] Pid: 1553, comm: mount Not tainted 2.6.31.6 #1
Nov 17 22:03:41 callisto kernel: [   19.282323] Call Trace:
Nov 17 22:03:41 callisto kernel: [   19.308744]  [<ffffffff810a7e87>] ? __alloc_pages_nodemask+0x174/0x592
Nov 17 22:03:41 callisto kernel: [   19.335479]  [<ffffffff810412da>] warn_slowpath_common+0x77/0xa4
Nov 17 22:03:41 callisto kernel: [   19.361993]  [<ffffffff81041316>] warn_slowpath_null+0xf/0x11
Nov 17 22:03:41 callisto kernel: [   19.388272]  [<ffffffff810a7e87>] __alloc_pages_nodemask+0x174/0x592
Nov 17 22:03:41 callisto kernel: [   19.414627]  [<ffffffff8105de26>] ? getnstimeofday+0x57/0xb3
Nov 17 22:03:41 callisto kernel: [   19.441186]  [<ffffffff810a830e>] __get_free_pages+0x12/0x4f
Nov 17 22:03:41 callisto kernel: [   19.467454]  [<ffffffff810ccff2>] __kmalloc+0x45/0x132
Nov 17 22:03:41 callisto kernel: [   19.493497]  [<ffffffff8117703e>] match_number+0x35/0x98
Nov 17 22:03:41 callisto kernel: [   19.519417]  [<ffffffff811770cc>] match_int+0xb/0xd
Nov 17 22:03:41 callisto kernel: [   19.545047]  [<ffffffffa0382a1b>] parse_options+0x61b/0x73e [ext4]
Nov 17 22:03:41 callisto kernel: [   19.570632]  [<ffffffff810f30da>] ? __wait_on_buffer+0x1f/0x21
Nov 17 22:03:41 callisto kernel: [   19.596161]  [<ffffffff810f3101>] ? wait_on_buffer+0x25/0x29
Nov 17 22:03:41 callisto kernel: [   19.621468]  [<ffffffffa0383411>] ext4_fill_super+0x368/0x20c2 [ext4]
Nov 17 22:03:41 callisto kernel: [   19.646600]  [<ffffffff81176135>] ? snprintf+0x59/0x5b
Nov 17 22:03:41 callisto kernel: [   19.671431]  [<ffffffff8117063b>] ? kobject_get+0x1a/0x22
Nov 17 22:03:41 callisto kernel: [   19.696013]  [<ffffffff810f7b54>] ? __blkdev_get+0x2a7/0x35a
Nov 17 22:03:41 callisto kernel: [   19.720428]  [<ffffffff812ca16a>] ? down_write+0x19/0x1d
Nov 17 22:03:41 callisto kernel: [   19.744514]  [<ffffffff810d5bc7>] get_sb_bdev+0x119/0x162
Nov 17 22:03:41 callisto kernel: [   19.768211]  [<ffffffffa03830a9>] ? ext4_fill_super+0x0/0x20c2 [ext4]
Nov 17 22:03:41 callisto kernel: [   19.791875]  [<ffffffffa0380df3>] ext4_get_sb+0x13/0x15 [ext4]
Nov 17 22:03:41 callisto kernel: [   19.815571]  [<ffffffff810d57fa>] vfs_kern_mount+0x99/0x11d
Nov 17 22:03:41 callisto kernel: [   19.839280]  [<ffffffff810d58db>] do_kern_mount+0x47/0xe7
Nov 17 22:03:41 callisto kernel: [   19.862943]  [<ffffffff810ea17f>] do_mount+0x74b/0x7b9
Nov 17 22:03:41 callisto kernel: [   19.886475]  [<ffffffff810a830e>] ? __get_free_pages+0x12/0x4f
Nov 17 22:03:41 callisto kernel: [   19.910076]  [<ffffffff810ea26d>] sys_mount+0x80/0xc3
Nov 17 22:03:41 callisto kernel: [   19.933491]  [<ffffffff8104c3d3>] ? sys_rt_sigprocmask+0x54/0xcf
Nov 17 22:03:41 callisto kernel: [   19.956952]  [<ffffffff8100baeb>] system_call_fastpath+0x16/0x1b
Nov 17 22:03:41 callisto kernel: [   19.980419] ---[ end trace 7a506926f0515111 ]---
Nov 17 22:03:41 callisto kernel: [   20.060709] EXT4-fs (dm-3): barriers enabled
Nov 17 22:03:41 callisto kernel: [   20.100150] kjournald2 starting: pid 1579, dev dm-3:8, commit interval 5 seconds
Nov 17 22:03:41 callisto kernel: [   20.124074] EXT4-fs (dm-3): internal journal on dm-3:8
Nov 17 22:03:41 callisto kernel: [   20.147399] EXT4-fs (dm-3): delayed allocation enabled
Nov 17 22:03:41 callisto kernel: [   20.147616] EXT4-fs: file extents enabled
Nov 17 22:03:41 callisto kernel: [   20.148116] EXT4-fs: mballoc enabled
Nov 17 22:03:41 callisto kernel: [   20.148127] EXT4-fs (dm-3): mounted filesystem with ordered data mode
Comment 5 Francis Russell 2009-11-17 22:25:15 UTC
Created attachment 23817 [details]
Warning from syslog (the pasted version didn't format well).
Comment 6 sanjeev mk 2011-09-02 14:23:55 UTC
Not reproduced on 2.6.39.4 and 2.6.38.8. Mounted my 200 GB ext4 filesystem with auto_da_alloc option. No warnings. Relevant dmesg output after mounting:

[  309.283335] EXT4-fs (sdb8): mounted filesystem with ordered data mode. Opts: auto_da_alloc

Note You need to log in before you can comment on or make changes to this bug.