** Description changed: - Right off the top, here's the smoking gun: - http://kerneltrap.org/mailarchive/linux-kernel/2010/7/20/4596144 "[inode - not file system] Shrinker fixes for XFS" + The calculations that set vm.min_free_kbytes are too parsimonious. This + leads to log messages that start with the text: - Back story: kernel 2.6.32.12 does not have xfs_reclaim_inode_shrink() but 2.6.32.13 and subsequent kernels do, see: - http://lxr.linux.no/#linux+v2.6.32.12/fs/xfs/linux-2.6/xfs_sync.c - http://lxr.linux.no/#linux+v2.6.32.13/fs/xfs/linux-2.6/xfs_sync.c#L796 + fooprog: page allocation failure. order:0, mode:0x4020 - Also see how different xfs_reclaim_inode_shrink() is in newer kernels: - http://lxr.linux.no/#linux+v2.6.36.3/fs/xfs/linux-2.6/xfs_sync.c#L884 - http://lxr.linux.no/#linux+v2.6.37/fs/xfs/linux-2.6/xfs_sync.c#L951 + and go on for scores of lines. - Lucid came with 2.6.32.12.27 (possibly older versions too) so this is a - regression inserted into the LTS. + By doubling the value set in vm.min_free_kbytes I was able to squelch + those messages. - So what goes wrong? - - I am seeing a program call read(2) of a regular file on an XFS file - system. The kernel stack trace shows that eventually - __alloc_pages_slowpath() is called then an e1000e IRQ happens which also - eventually calls __alloc_pages_slowpath() and then a log message - "fooprog: page allocation failure. order:0, mode:0x4020" almost - immediately happens. - - http://stackoverflow.com/questions/4764544/is-alloc-pages-slowpath- - reentrant-safe-or-not - - Entire kernel stack trace showing this https://gist.github.com/790577 (with bpbkar as the apex process) - Entire kernel stack trace showing this https://gist.github.com/790584 (with nfsd as the apex process) - - Yes, I know enough to test on newer kernels especially since the LKML - http://kerneltrap.org/mailarchive/linux-kernel/2010/7/20/4596144 post - admitted to providing patches but it will take some time to set up a - testing lab. - - ProblemType: Bug - DistroRelease: Ubuntu 10.04 - Package: linux-image-2.6.32-27-generic-pae 2.6.32-27.49 - Regression: Yes - Reproducible: Yes - ProcVersionSignature: Ubuntu 2.6.32-26.48-generic-pae 2.6.32.24+drm33.11 - Uname: Linux 2.6.32-26-generic-pae i686 - NonfreeKernelModules: nvidia - AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.21. - Architecture: i386 - AudioDevicesInUse: - USER PID ACCESS COMMAND - /dev/snd/controlC0: kstailey 2271 F.... pulseaudio - CRDA: Error: [Errno 2] No such file or directory - Card0.Amixer.info: - Card hw:0 'Intel'/'HDA Intel at 0xfcff8000 irq 22' - Mixer name : 'Realtek ALC1200' - Components : 'HDA:10ec0888,10438357,00100101' - Controls : 36 - Simple ctrls : 21 - Card1.Amixer.info: - Card hw:1 'NVidia'/'HDA NVidia at 0xfe8fc000 irq 16' - Mixer name : 'Nvidia ID b' - Components : 'HDA:10de000b,10de0101,00100100' - Controls : 0 - Simple ctrls : 0 - Card1.Amixer.values: - - Date: Fri Jan 21 18:32:05 2011 - HibernationDevice: RESUME=UUID=d2c6ea4a-78ef-4792-8a53-ad5a1e30feb4 - MachineType: System manufacturer System Product Name - ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.32-26-generic-pae root=UUID=d70f74ea-d936-480e-baca-4803cf11fa07 ro quiet splash - ProcEnviron: - PATH=(custom, user) - LANG=en_US.UTF-8 - SHELL=/bin/bash - RelatedPackageVersions: linux-firmware 1.34.1 - RfKill: - - SourcePackage: linux - dmi.bios.date: 06/11/2010 - dmi.bios.vendor: American Megatrends Inc. - dmi.bios.version: 1102 - dmi.board.asset.tag: To Be Filled By O.E.M. - dmi.board.name: P5Q3 - dmi.board.vendor: ASUSTeK Computer INC. - dmi.board.version: Rev 1.xx - dmi.chassis.asset.tag: Asset-1234567890 - dmi.chassis.type: 3 - dmi.chassis.vendor: Chassis Manufacture - dmi.chassis.version: Chassis Version - dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr1102:bd06/11/2010:svnSystemmanufacturer:pnSystemProductName:pvrSystemVersion:rvnASUSTeKComputerINC.:rnP5Q3:rvrRev1.xx:cvnChassisManufacture:ct3:cvrChassisVersion: - dmi.product.name: System Product Name - dmi.product.version: System Version - dmi.sys.vendor: System manufacturer + See https://gist.github.com/790577 https://gist.github.com/792128 + https://gist.github.com/790584 for log messages
** Description changed: The calculations that set vm.min_free_kbytes are too parsimonious. This leads to log messages that start with the text: fooprog: page allocation failure. order:0, mode:0x4020 - and go on for scores of lines. + and go on for dozens of lines. By doubling the value set in vm.min_free_kbytes I was able to squelch those messages. See https://gist.github.com/790577 https://gist.github.com/792128 https://gist.github.com/790584 for log messages -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/706136 Title: e1001e driver requires more memory than the default -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
