Bug 65491 - moxart: ifconfig: Bad page state in process sh
Summary: moxart: ifconfig: Bad page state in process sh
Status: RESOLVED DUPLICATE of bug 69041
Alias: None
Product: Memory Management
Classification: Unclassified
Component: Page Allocator (show other bugs)
Hardware: ARM Linux
: P1 low
Assignee: Andrew Morton
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-11-22 13:58 UTC by Jonas Jensen
Modified: 2017-03-29 10:19 UTC (History)
0 users

See Also:
Kernel Version: 3.12.0-next-20131122+
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description Jonas Jensen 2013-11-22 13:58:12 UTC
I think the root cause of this is the moxart ethernet driver, submitted by myself (only one person to blame), the bug does not happen in my local branch where memory allocations differ.

To explain things clearly, the bug can be seen checking out moxart ethernet from next-20131122.

The driver is new, I'll try to get changes submitted upstream, but it is in mainline, the right thing to do is to report the bug. I would like to figure out why this happens.

BUG messages are printed after executing ifconfig from busybox.

A branch tracking the bug source can be found here:
https://bitbucket.org/Kasreyn/linux-next/branch/next-20131122-moxart-bad_page_bug

Direct links to driver source (bug visible):
https://bitbucket.org/Kasreyn/linux-next/src/e3227037d98e625de85ef67a9de8f8e4f8d25efb/drivers/net/ethernet/moxa/moxart_ether.c?at=master
https://bitbucket.org/Kasreyn/linux-next/src/e3227037d98e625de85ef67a9de8f8e4f8d25efb/drivers/net/ethernet/moxa/moxart_ether.h?at=master

My local branch (bug not visible):
https://bitbucket.org/Kasreyn/linux-next/branch/moxart-next-rebase-workflow (commit 99f72b202027bc819f233de9e82486a5e1fcd2df)

Boot log from next-20131122 plus moxart (up to commit e3227037d98e625de85ef67a9de8f8e4f8d25efb):

Uncompressing Linux... done, booting the kernel.
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 3.12.0-next-20131122+ (i@Ildjarn) (gcc version 4.6.3 (crosstool-NG 1.16.0) ) #1092 PREEMPT Fri Nov 22 13:48:46 CET 2013
[    0.000000] CPU: FA526 [66015261] revision 1 (ARMv4), cr=0000397f
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] Machine model: MOXA UC-7112-LX
[    0.000000] bootconsole [earlycon0] enabled
[    0.000000] Memory policy: Data cache writeback
[    0.000000] On node 0 totalpages: 8192
[    0.000000] free_area_init_node: node 0, pgdat c03822ec, node_mem_map c0944000
[    0.000000]   Normal zone: 72 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 8192 pages, LIFO batch:0
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8120
[    0.000000] Kernel command line: debug loglevel=9 console=ttyS0,115200n8 earlyprintk root=/dev/mmcblk0p1 rw rootwait
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Memory: 22908K/32768K available (2733K kernel code, 106K rwdata, 560K rodata, 156K init, 5884K bss, 9860K reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xc2800000 - 0xff000000   ( 968 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xc2000000   (  32 MB)
[    0.000000]       .text : 0xc0008000 - 0xc033f70c   (3294 kB)
[    0.000000]       .init : 0xc0340000 - 0xc0367338   ( 157 kB)
[    0.000000]       .data : 0xc0368000 - 0xc0382b40   ( 107 kB)
[    0.000000]        .bss : 0xc0382b4c - 0xc0941c58   (5885 kB)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 21474836480000000ns
[    0.000000] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
[    0.000000] ... MAX_LOCKDEP_SUBCLASSES:  8
[    0.000000] ... MAX_LOCK_DEPTH:          48
[    0.000000] ... MAX_LOCKDEP_KEYS:        8191
[    0.000000] ... CLASSHASH_SIZE:          4096
[    0.000000] ... MAX_LOCKDEP_ENTRIES:     16384
[    0.000000] ... MAX_LOCKDEP_CHAINS:      32768
[    0.000000] ... CHAINHASH_SIZE:          16384
[    0.000000]  memory used by lock dependency info: 3695 kB
[    0.000000]  per task-struct memory footprint: 1152 bytes
[    0.000000] kmemleak: Kernel memory leak detector disabled
[    0.000000] ODEBUG: 0 of 0 active objects replaced
[    0.000000] kmemleak: Early log buffer exceeded (673), please increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE
[    0.140000] Calibrating delay loop... 143.76 BogoMIPS (lpj=718848)
[    0.200000] pid_max: default: 4096 minimum: 301
[    0.210000] Mount-cache hash table entries: 512
[    0.310000] CPU: Testing write buffer coherency: ok
[    0.330000] Setting up static identity map for 0x2797e0 - 0x279828
[    0.400000] devtmpfs: initialized
[    0.430000] kworker/u2:0 (13) used greatest stack depth: 6424 bytes left
[    0.450000] NET: Registered protocol family 16
[    0.480000] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.670000] kworker/u2:0 (29) used greatest stack depth: 6080 bytes left
[    0.860000] kworker/u2:0 (57) used greatest stack depth: 6076 bytes left
[    0.920000] kworker/u2:0 (64) used greatest stack depth: 6040 bytes left
[    1.130000] bio: create slab <bio-0> at 0
[    1.480000] DMA-API: preallocated 4096 debug entries
[    1.480000] DMA-API: debugging enabled by kernel config
[    1.490000] Switched to clocksource moxart_timer
[    1.600000] NET: Registered protocol family 2
[    1.620000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    1.640000] TCP bind hash table entries: 1024 (order: 3, 36864 bytes)
[    1.650000] TCP: Hash tables configured (established 1024 bind 1024)
[    1.660000] TCP: reno registered
[    1.670000] UDP hash table entries: 128 (order: 1, 10240 bytes)
[    1.670000] UDP-Lite hash table entries: 128 (order: 1, 10240 bytes)
[    1.690000] NET: Registered protocol family 1
[    1.760000] kworker/u2:0 (129) used greatest stack depth: 5936 bytes left
[    2.370000] kworker/u2:0 (188) used greatest stack depth: 5896 bytes left
[    2.400000] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[    2.440000] msgmni has been set to 44
[    2.450000] io scheduler noop registered
[    2.460000] io scheduler cfq registered (default)
[    2.480000] gpiochip_add: registered GPIOs 0 to 31 on device: moxart-gpio
[    2.510000] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled
[    2.590000] 98200000.uart: ttyS0 at MMIO 0x98200000 (irq = 21, base_baud = 921600) is a 16550A
[    2.610000] console [ttyS0] enabled
[    2.610000] console [ttyS0] enabled
[    2.620000] bootconsole [earlycon0] disabled
[    2.620000] bootconsole [earlycon0] disabled
[    2.720000] 80000000.flash: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x000089 Chip ID 0x000018
[    2.730000] Intel/Sharp Extended Query Table at 0x0031
[    2.740000] Intel/Sharp Extended Query Table at 0x0031
[    2.750000] Using buffer write method
[    2.750000] cfi_cmdset_0001: Erase suspend on write enabled
[    2.760000] erase region 0: offset=0x0,size=0x20000,blocks=128
[    2.760000] 4 ofpart partitions found on MTD device 80000000.flash
[    2.770000] Creating 4 MTD partitions on "80000000.flash":
[    2.780000] 0x000000000000-0x000000040000 : "bootloader"
[    2.860000] 0x000000040000-0x000000200000 : "linux kernel"
[    2.920000] 0x000000200000-0x000000a00000 : "root filesystem"
[    2.980000] 0x000000a00000-0x000001000000 : "user filesystem"
[    3.730000] libphy: MOXA ART Ethernet MII: probed
[    4.420000] libphy: MOXA ART Ethernet MII: probed
[    4.500000] moxart-ethernet 90900000.mac eth0: generated random MAC address d6:e1:9e:00:4f:42
[    4.550000] moxart-ethernet 92000000.mac eth1: generated random MAC address 1a:ad:ba:63:e3:08
[    4.570000] of_get_named_gpiod_flags exited with status 0
[    4.590000] input: gpio_keys_polled.2 as /devices/gpio_keys_polled.2/input/input0
[    4.620000] evbug: Connected device: input0 (gpio_keys_polled.2 at gpio-keys-polled/input0)
[    4.640000] of_get_named_gpiod_flags exited with status 0
[    4.650000] of_get_named_gpiod_flags exited with status 0
[    4.650000] of_get_named_gpiod_flags exited with status 0
[    4.680000] moxart-rtc rtc.0: rtc core: registered rtc.0 as rtc0
[    4.840000] of_get_named_gpiod_flags exited with status 0
[    4.840000] of_get_named_gpiod_flags exited with status 0
[    4.900000] TCP: cubic registered
[    4.920000] mmc0: new SD card at address 636c
[    4.980000] mmcblk0: mmc0:636c SD02G 1.83 GiB
[    5.040000] console [netcon0] enabled
[    5.040000] netconsole: network logging started
[    5.060000] moxart-rtc rtc.0: setting system clock to 2080-01-10 03:40:01 UTC (3472083601)
[    5.090000]  mmcblk0: p1
[    5.580000] EXT3-fs (mmcblk0p1): warning: ext3_clear_journal_err: Filesystem error recorded from previous mount: IO failure
[    5.590000] kjournald starting.  Commit interval 5 seconds
[    5.600000] EXT3-fs (mmcblk0p1): warning: ext3_clear_journal_err: Marking fs in need of filesystem check.
[    5.610000] EXT3-fs (mmcblk0p1): warning: mounting fs with errors, running e2fsck is recommended
[    5.630000] EXT3-fs (mmcblk0p1): using internal journal
[    5.890000] EXT3-fs (mmcblk0p1): recovery complete
[    5.890000] EXT3-fs (mmcblk0p1): mounted filesystem with ordered data mode
[    5.900000] VFS: Mounted root (ext3 filesystem) on device 179:1.
[    5.930000] devtmpfs: mounted
[    5.940000] Freeing unused kernel memory: 156K (c0340000 - c0367000)
init started: BusyBox v1.22.0.git (2013-04-03 16:30:19 CEST)
starting pid 267, tty '': '/etc/init.d/start'
[    7.450000] mount (268) used greatest stack depth: 5484 bytes left

[    7.950000] route (275) used greatest stack depth: 5420 bytes left
PING 10.0.1.200 (10.0.1.200): 56 data bytes
64 bytes from 10.0.1.200: seq=1 ttl=64 time=5.182 ms


64 bytes from 10.0.1.200: seq=2 ttl=64 time=2.797 ms
64 bytes from 10.0.1.200: seq=3 ttl=64 time=2.788 ms
[   12.200000] SysRq : Terminate All Tasks
[   12.220000] ping (277) used greatest stack depth: 5336 bytes left
[   12.230000] start (267) used greatest stack depth: 4996 bytes left
starting pid 278, tty '': '/bin/cttyhack /bin/sh'
# # # #
# #
# ifconfig
[   19.340000] BUG: Bad page state in process sh  pfn:01a20
[   19.350000] page:c097ec80 count:-2 mapcount:0 mapping:  (null) index:0x0
[   19.350000] page flags: 0x0()
[   19.360000] CPU: 0 PID: 279 Comm: sh Not tainted 3.12.0-next-20131122+ #1092
[   19.360000] [<c000d214>] (unwind_backtrace+0x0/0xf4) from [<c000b964>] (show_stack+0x18/0x1c)
[   19.370000] [<c000b964>] (show_stack+0x18/0x1c) from [<c0273fd8>] (dump_stack+0x20/0x28)
[   19.380000] [<c0273fd8>] (dump_stack+0x20/0x28) from [<c006ab44>] (bad_page+0xc0/0x124)
[   19.390000] [<c006ab44>] (bad_page+0xc0/0x124) from [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8)
[   19.400000] [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8) from [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848)
[   19.410000] [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848) from [<c006c4e0>] (__get_free_pages+0x18/0x68)
[   19.420000] [<c006c4e0>] (__get_free_pages+0x18/0x68) from [<c0088b0c>] (exit_mmap+0xc0/0x254)
[   19.430000] [<c0088b0c>] (exit_mmap+0xc0/0x254) from [<c00116b8>] (mmput+0x38/0xc0)
[   19.440000] [<c00116b8>] (mmput+0x38/0xc0) from [<c009f354>] (flush_old_exec+0x2d0/0x560)
[   19.450000] [<c009f354>] (flush_old_exec+0x2d0/0x560) from [<c00de4c8>] (load_elf_binary+0x264/0x123c)
[   19.460000] [<c00de4c8>] (load_elf_binary+0x264/0x123c) from [<c009fa1c>] (search_binary_handler+0x84/0xc0)
[   19.470000] [<c009fa1c>] (search_binary_handler+0x84/0xc0) from [<c009fed4>] (do_execve+0x47c/0x5c0)
[   19.480000] [<c009fed4>] (do_execve+0x47c/0x5c0) from [<c00a0214>] (SyS_execve+0x38/0x4c)
[   19.490000] [<c00a0214>] (SyS_execve+0x38/0x4c) from [<c00092a0>] (ret_fast_syscall+0x0/0x44)
[   19.500000] Disabling lock debugging due to kernel taint
[   19.500000] BUG: Bad page state in process sh  pfn:01a21
[   19.510000] page:c097eca4 count:-2 mapcount:0 mapping:  (null) index:0x0
[   19.510000] page flags: 0x0()
[   19.520000] CPU: 0 PID: 279 Comm: sh Tainted: G    B        3.12.0-next-20131122+ #1092
[   19.530000] [<c000d214>] (unwind_backtrace+0x0/0xf4) from [<c000b964>] (show_stack+0x18/0x1c)
[   19.540000] [<c000b964>] (show_stack+0x18/0x1c) from [<c0273fd8>] (dump_stack+0x20/0x28)
[   19.540000] [<c0273fd8>] (dump_stack+0x20/0x28) from [<c006ab44>] (bad_page+0xc0/0x124)
[   19.550000] [<c006ab44>] (bad_page+0xc0/0x124) from [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8)
[   19.560000] [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8) from [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848)
[   19.570000] [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848) from [<c006c4e0>] (__get_free_pages+0x18/0x68)
[   19.580000] [<c006c4e0>] (__get_free_pages+0x18/0x68) from [<c0088b0c>] (exit_mmap+0xc0/0x254)
[   19.590000] [<c0088b0c>] (exit_mmap+0xc0/0x254) from [<c00116b8>] (mmput+0x38/0xc0)
[   19.600000] [<c00116b8>] (mmput+0x38/0xc0) from [<c009f354>] (flush_old_exec+0x2d0/0x560)
[   19.610000] [<c009f354>] (flush_old_exec+0x2d0/0x560) from [<c00de4c8>] (load_elf_binary+0x264/0x123c)
[   19.620000] [<c00de4c8>] (load_elf_binary+0x264/0x123c) from [<c009fa1c>] (search_binary_handler+0x84/0xc0)
[   19.630000] [<c009fa1c>] (search_binary_handler+0x84/0xc0) from [<c009fed4>] (do_execve+0x47c/0x5c0)
[   19.640000] [<c009fed4>] (do_execve+0x47c/0x5c0) from [<c00a0214>] (SyS_execve+0x38/0x4c)
[   19.650000] [<c00a0214>] (SyS_execve+0x38/0x4c) from [<c00092a0>] (ret_fast_syscall+0x0/0x44)
[   19.660000] BUG: Bad page state in process sh  pfn:01a22
[   19.660000] page:c097ecc8 count:-2 mapcount:0 mapping:  (null) index:0x0
[   19.670000] page flags: 0x0()
[   19.670000] CPU: 0 PID: 279 Comm: sh Tainted: G    B        3.12.0-next-20131122+ #1092
[   19.680000] [<c000d214>] (unwind_backtrace+0x0/0xf4) from [<c000b964>] (show_stack+0x18/0x1c)
[   19.700000] [<c000b964>] (show_stack+0x18/0x1c) from [<c0273fd8>] (dump_stack+0x20/0x28)
[   19.700000] [<c0273fd8>] (dump_stack+0x20/0x28) from [<c006ab44>] (bad_page+0xc0/0x124)
[   19.720000] [<c006ab44>] (bad_page+0xc0/0x124) from [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8)
[   19.720000] [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8) from [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848)
[   19.760000] [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848) from [<c006c4e0>] (__get_free_pages+0x18/0x68)
[   19.780000] [<c006c4e0>] (__get_free_pages+0x18/0x68) from [<c0088b0c>] (exit_mmap+0xc0/0x254)
[   19.780000] [<c0088b0c>] (exit_mmap+0xc0/0x254) from [<c00116b8>] (mmput+0x38/0xc0)
[   19.800000] [<c00116b8>] (mmput+0x38/0xc0) from [<c009f354>] (flush_old_exec+0x2d0/0x560)
[   19.800000] [<c009f354>] (flush_old_exec+0x2d0/0x560) from [<c00de4c8>] (load_elf_binary+0x264/0x123c)
[   19.810000] [<c00de4c8>] (load_elf_binary+0x264/0x123c) from [<c009fa1c>] (search_binary_handler+0x84/0xc0)
[   19.820000] [<c009fa1c>] (search_binary_handler+0x84/0xc0) from [<c009fed4>] (do_execve+0x47c/0x5c0)
[   19.830000] [<c009fed4>] (do_execve+0x47c/0x5c0) from [<c00a0214>] (SyS_execve+0x38/0x4c)
[   19.840000] [<c00a0214>] (SyS_execve+0x38/0x4c) from [<c00092a0>] (ret_fast_syscall+0x0/0x44)
[   19.850000] BUG: Bad page state in process sh  pfn:01a23
[   19.860000] page:c097ecec count:-3 mapcount:0 mapping:  (null) index:0x0
[   19.870000] page flags: 0x0()
[   19.870000] CPU: 0 PID: 279 Comm: sh Tainted: G    B        3.12.0-next-20131122+ #1092
[   19.880000] [<c000d214>] (unwind_backtrace+0x0/0xf4) from [<c000b964>] (show_stack+0x18/0x1c)
[   19.890000] [<c000b964>] (show_stack+0x18/0x1c) from [<c0273fd8>] (dump_stack+0x20/0x28)
[   19.890000] [<c0273fd8>] (dump_stack+0x20/0x28) from [<c006ab44>] (bad_page+0xc0/0x124)
[   19.900000] [<c006ab44>] (bad_page+0xc0/0x124) from [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8)
[   19.910000] [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8) from [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848)
[   19.920000] [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848) from [<c006c4e0>] (__get_free_pages+0x18/0x68)
[   19.940000] [<c006c4e0>] (__get_free_pages+0x18/0x68) from [<c0088b0c>] (exit_mmap+0xc0/0x254)
[   19.940000] [<c0088b0c>] (exit_mmap+0xc0/0x254) from [<c00116b8>] (mmput+0x38/0xc0)
[   19.960000] [<c00116b8>] (mmput+0x38/0xc0) from [<c009f354>] (flush_old_exec+0x2d0/0x560)
[   19.960000] [<c009f354>] (flush_old_exec+0x2d0/0x560) from [<c00de4c8>] (load_elf_binary+0x264/0x123c)
[   19.980000] [<c00de4c8>] (load_elf_binary+0x264/0x123c) from [<c009fa1c>] (search_binary_handler+0x84/0xc0)
[   20.000000] [<c009fa1c>] (search_binary_handler+0x84/0xc0) from [<c009fed4>] (do_execve+0x47c/0x5c0)
[   20.000000] [<c009fed4>] (do_execve+0x47c/0x5c0) from [<c00a0214>] (SyS_execve+0x38/0x4c)
[   20.020000] [<c00a0214>] (SyS_execve+0x38/0x4c) from [<c00092a0>] (ret_fast_syscall+0x0/0x44)
[   20.020000] BUG: Bad page state in process sh  pfn:01a24
[   20.040000] page:c097ed10 count:-2 mapcount:0 mapping:  (null) index:0x0
[   20.040000] page flags: 0x0()
[   20.060000] CPU: 0 PID: 279 Comm: sh Tainted: G    B        3.12.0-next-20131122+ #1092
[   20.060000] [<c000d214>] (unwind_backtrace+0x0/0xf4) from [<c000b964>] (show_stack+0x18/0x1c)
[   20.080000] [<c000b964>] (show_stack+0x18/0x1c) from [<c0273fd8>] (dump_stack+0x20/0x28)
[   20.080000] [<c0273fd8>] (dump_stack+0x20/0x28) from [<c006ab44>] (bad_page+0xc0/0x124)
[   20.100000] [<c006ab44>] (bad_page+0xc0/0x124) from [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8)
[   20.100000] [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8) from [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848)
[   20.120000] [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848) from [<c006c4e0>] (__get_free_pages+0x18/0x68)
[   20.130000] [<c006c4e0>] (__get_free_pages+0x18/0x68) from [<c0088b0c>] (exit_mmap+0xc0/0x254)
[   20.140000] [<c0088b0c>] (exit_mmap+0xc0/0x254) from [<c00116b8>] (mmput+0x38/0xc0)
[   20.150000] [<c00116b8>] (mmput+0x38/0xc0) from [<c009f354>] (flush_old_exec+0x2d0/0x560)
[   20.160000] [<c009f354>] (flush_old_exec+0x2d0/0x560) from [<c00de4c8>] (load_elf_binary+0x264/0x123c)
[   20.170000] [<c00de4c8>] (load_elf_binary+0x264/0x123c) from [<c009fa1c>] (search_binary_handler+0x84/0xc0)
[   20.180000] [<c009fa1c>] (search_binary_handler+0x84/0xc0) from [<c009fed4>] (do_execve+0x47c/0x5c0)
[   20.190000] [<c009fed4>] (do_execve+0x47c/0x5c0) from [<c00a0214>] (SyS_execve+0x38/0x4c)
[   20.190000] [<c00a0214>] (SyS_execve+0x38/0x4c) from [<c00092a0>] (ret_fast_syscall+0x0/0x44)
[   20.200000] BUG: Bad page state in process sh  pfn:01a25
[   20.210000] page:c097ed34 count:-1 mapcount:0 mapping:  (null) index:0x0
[   20.220000] page flags: 0x0()
[   20.220000] CPU: 0 PID: 279 Comm: sh Tainted: G    B        3.12.0-next-20131122+ #1092
[   20.230000] [<c000d214>] (unwind_backtrace+0x0/0xf4) from [<c000b964>] (show_stack+0x18/0x1c)
[   20.240000] [<c000b964>] (show_stack+0x18/0x1c) from [<c0273fd8>] (dump_stack+0x20/0x28)
[   20.250000] [<c0273fd8>] (dump_stack+0x20/0x28) from [<c006ab44>] (bad_page+0xc0/0x124)
[   20.250000] [<c006ab44>] (bad_page+0xc0/0x124) from [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8)
[   20.260000] [<c006b1b4>] (get_page_from_freelist+0x4dc/0x5f8) from [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848)
[   20.280000] [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848) from [<c006c4e0>] (__get_free_pages+0x18/0x68)
[   20.290000] [<c006c4e0>] (__get_free_pages+0x18/0x68) from [<c0088b0c>] (exit_mmap+0xc0/0x254)
[   20.290000] [<c0088b0c>] (exit_mmap+0xc0/0x254) from [<c00116b8>] (mmput+0x38/0xc0)
[   20.300000] [<c00116b8>] (mmput+0x38/0xc0) from [<c009f354>] (flush_old_exec+0x2d0/0x560)
[   20.310000] [<c009f354>] (flush_old_exec+0x2d0/0x560) from [<c00de4c8>] (load_elf_binary+0x264/0x123c)
[   20.320000] [<c00de4c8>] (load_elf_binary+0x264/0x123c) from [<c009fa1c>] (search_binary_handler+0x84/0xc0)
[   20.330000] [<c009fa1c>] (search_binary_handler+0x84/0xc0) from [<c009fed4>] (do_execve+0x47c/0x5c0)
[   20.340000] [<c009fed4>] (do_execve+0x47c/0x5c0) from [<c00a0214>] (SyS_execve+0x38/0x4c)
[   20.350000] [<c00a0214>] (SyS_execve+0x38/0x4c) from [<c00092a0>] (ret_fast_syscall+0x0/0x44)
[   20.360000] pagealloc: memory corruption
[   20.360000] c1a26140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
[   20.370000] c1a26150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
[   20.380000] c1a26160: 00 00 00 00 01 00 00 00                          ........
[   20.390000] CPU: 0 PID: 279 Comm: sh Tainted: G    B        3.12.0-next-20131122+ #1092
[   20.400000] [<c000d214>] (unwind_backtrace+0x0/0xf4) from [<c000b964>] (show_stack+0x18/0x1c)
[   20.410000] [<c000b964>] (show_stack+0x18/0x1c) from [<c0273fd8>] (dump_stack+0x20/0x28)
[   20.410000] [<c0273fd8>] (dump_stack+0x20/0x28) from [<c0091bb8>] (kernel_map_pages+0x224/0x254)
[   20.420000] [<c0091bb8>] (kernel_map_pages+0x224/0x254) from [<c006af54>] (get_page_from_freelist+0x27c/0x5f8)
[   20.430000] [<c006af54>] (get_page_from_freelist+0x27c/0x5f8) from [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848)
[   20.440000] [<c006bd64>] (__alloc_pages_nodemask+0xe4/0x848) from [<c006c4e0>] (__get_free_pages+0x18/0x68)
[   20.460000] [<c006c4e0>] (__get_free_pages+0x18/0x68) from [<c0088b0c>] (exit_mmap+0xc0/0x254)
[   20.460000] [<c0088b0c>] (exit_mmap+0xc0/0x254) from [<c00116b8>] (mmput+0x38/0xc0)
[   20.470000] [<c00116b8>] (mmput+0x38/0xc0) from [<c009f354>] (flush_old_exec+0x2d0/0x560)
[   20.480000] [<c009f354>] (flush_old_exec+0x2d0/0x560) from [<c00de4c8>] (load_elf_binary+0x264/0x123c)
[   20.490000] [<c00de4c8>] (load_elf_binary+0x264/0x123c) from [<c009fa1c>] (search_binary_handler+0x84/0xc0)
[   20.500000] [<c009fa1c>] (search_binary_handler+0x84/0xc0) from [<c009fed4>] (do_execve+0x47c/0x5c0)
[   20.510000] [<c009fed4>] (do_execve+0x47c/0x5c0) from [<c00a0214>] (SyS_execve+0x38/0x4c)
[   20.520000] [<c00a0214>] (SyS_execve+0x38/0x4c) from [<c00092a0>] (ret_fast_syscall+0x0/0x44)
eth0      Link encap:Ethernet  HWaddr 00:90:E8:1B:E2:A6
          inet addr:10.0.1.25  Bcast:10.0.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                    RX packets:14 errors:0 dropped:1 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1286 (1.2 KiB)  TX bytes:476 (476.0 B)
          Interrupt:19

eth1      Link encap:Ethernet  HWaddr 1A:AD:BA:63:E3:08
          inet addr:11.0.1.25  Bcast:11.0.1.255  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:20

#
Comment 1 Jonas Jensen 2014-01-20 10:34:58 UTC
I think this is related to build_skb() memory corruption:

https://bugzilla.kernel.org/show_bug.cgi?id=69041

I'll be sending out patches with fixes for moxa ethernet today.
Comment 2 Jonas Jensen 2017-03-29 10:19:33 UTC
Fixed in v3.17-rc5.

See commit "net: moxa: replace build_skb() with netdev_alloc_skb_ip_align() / memcpy()" 9fe1b3bc8d9182e950a744e4a47187420efa67f3.

*** This bug has been marked as a duplicate of bug 69041 ***

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