[#5534] run aplay/arecord will make system panic after kernel upgraded to 2.6.31

Document created by Aaronwu Employee on Sep 4, 2013
Version 1Show Document
  • View in full screen mode

[#5534] run aplay/arecord will make system panic after kernel upgraded to 2.6.31

Submitted By: Barry Song

Open Date

2009-09-14 05:28:21     Close Date

2009-09-24 23:49:45

Priority:

Medium     Assignee:

Nobody

Status:

Closed     Fixed In Release:

N/A

Found In Release:

2010R1     Release:

Category:

N/A     Board:

N/A

Processor:

BF537     Silicon Revision:

Is this bug repeatable?:

Yes     Resolution:

Assigned (Not Start)

Uboot version or rev.:

    Toolchain version or rev.:

09r1-rc9

App binary format:

N/A     

Summary: run aplay/arecord will make system panic after kernel upgraded to 2.6.31

Details:

 

After kernel upgrade to 2.6.31, run aplay or arecord will make system panic:

 

aplay:

Playing raw data  : Unsigned 8 bit, Rate 8000 Hz, Mono

------------[ cut here ]------------

kernel BUG at mm/nommu.c:550!

Kernel panic - not syncing: BUG()

Hardware Trace:

   0 Target : <0x00004dc0> { _trap_c + 0x0 }

     Source : <0xffa0069c> { _exception_to_level5 + 0xa4 } CALL pcrel

   1 Target : <0xffa005f8> { _exception_to_level5 + 0x0 }

     Source : <0xffa004ac> { _bfin_return_from_exception + 0x20 } RTX

   2 Target : <0xffa0048c> { _bfin_return_from_exception + 0x0 }

     Source : <0xffa00550> { _ex_trap_c + 0x74 } JUMP.S

   3 Target : <0xffa004dc> { _ex_trap_c + 0x0 }

     Source : <0xffa00770> { _trap + 0x68 } JUMP (P4)

   4 Target : <0xffa00728> { _trap + 0x20 }

     Source : <0xffa00724> { _trap + 0x1c } IF !CC JUMP

   5 Target : <0xffa00708> { _trap + 0x0 }

     Source : <0x0003f332> { _add_nommu_region + 0x5a } IF !CC JUMP

   6 Target : <0x0003f330> { _add_nommu_region + 0x58 }

     Source : <0x0003f326> { _add_nommu_region + 0x4e } IF !CC JUMP

   7 Target : <0x0003f324> { _add_nommu_region + 0x4c }

     Source : <0x0003f2fa> { _add_nommu_region + 0x22 } IF CC JUMP

   8 Target : <0x0003f2f3> { _add_nommu_region + 0x1b }

     Source : <0x0003f306> { _add_nommu_region + 0x2e } IF CC JUMP

   9 Target : <0x0003f2d8> { _add_nommu_region + 0x0 }

     Source : <0x000402ac> { _do_mmap_pgoff + 0x344 } CALL pcrel

  10 Target : <0x0004028c> { _do_mmap_pgoff + 0x324 }

     Source : <0x000798b4> { _ramfs_nommu_get_unmapped_area + 0x5c } RTS

  11 Target : <0x000798ac> { _ramfs_nommu_get_unmapped_area + 0x54 }

     Source : <0x00079870> { _ramfs_nommu_get_unmapped_area + 0x18 } IF !CC JUMP

  12 Target : <0x00079858> { _ramfs_nommu_get_unmapped_area + 0x0 }

     Source : <0x0004028a> { _do_mmap_pgoff + 0x322 } CALL (P2)

  13 Target : <0x00040268> { _do_mmap_pgoff + 0x300 }

     Source : <0x00040124> { _do_mmap_pgoff + 0x1bc } IF !CC JUMP

  14 Target : <0x00040120> { _do_mmap_pgoff + 0x1b8 }

     Source : <0x00093098> { _rb_next + 0x3c } RTS

  15 Target : <0x00093094> { _rb_next + 0x38 }

     Source : <0x000930b0> { _rb_next + 0x54 } JUMP.S

Stack info:

SP: [0x02fbbca8] <0x02fbbca8> /* kernel dynamic memory */

FP: (0x02fbbcac)

Memory from 0x02fbbca0 to 02fbc000

02fbbca0: 02fbbca8  ffe02014 [0000003f](02fbbcd0)<00010e28> 0016bd9c  0013a76c  001693d2

02fbbcc0: 001693d2  001697d2  02fbbcec  02fbbcec (02fbbd74)<00005146> 02fbbd9c  ffe02014

02fbbce0: 0000003f  00008008  02337bd4  0000003f  ffffffff  020ba010  02fbbe28  02fbbd1c

02fbbd00:<0004a7fe> 02099754  02fbbe28  02fbbd50  02fbbd30  02fbbd2c <00051658> 02fbbd50

02fbbd20:<0004bc30> 020ba010  02010178  02fbbd6c <0004bfe4> 0209b658  02fbbd50  00000000

02fbbd40: 00000000  00000000  00000000  02fbbd64 <00055958> 00000000  00000000  00000000

02fbbd60: 00000000  02fbbd84 <0004a51c> 0200d7a0  00000000 (02fbbe84)<ffa006a0> 00166000

02fbbd80: 00008008  00000021  02ef9de4  00000002  02fbbdb0 <0004a51c> 00000480  00000480

02fbbda0: 00008008  00000021  00000000  02fbbe78  00000480  0003f334 <000402b0> 00000000

02fbbdc0: 02003005  02f9d6b7  ffa0175c  02f9d6b6  ffa0175c  00000000  00000000  00000000

02fbbde0: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02fbbe00: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02fbbe20: 00000000  00000000  02fb6678  00e3f1f0  02fbbe84  00000001  02bbf0c0  0000003f

02fbbe40: 02ef9704  02ef9e3c  02ef9de4  00000001  00000000  02ef9de4  00000002  00000621

02fbbe60: 00000621  00000000  00000000  00000000  02ef9de4  00000006 <0004028c> 00000001

02fbbe80: 00000001 (02fbbeb0)<000402b0><ffa02c96> 00000000  00000621  00000000  00000002

02fbbea0: 00000000  02fbbeac  02f1a4ec  000000ff (02fbbeec)<00003a9c> 00000000  00000621

02fbbec0: 01034188  02fba000  00000002  02bbf0c0  00000001  00042998  00000005  00000621

02fbbee0: 00000001  00000002  00000000 (00000000)<ffa008a8> 00003a58  000000c0  00000000

02fbbf00: ffffe000  00000000  00000005  ffffe000  011be2a8  0000fffe  00000002  00000005

02fbbf20: 00000000  02f11862  00008000  00000000  00000000  02fbc000  02f11862  02f11862

02fbbf40:<011fcdf0><ffa01046> 02001004  02f9d6b7  02f9f92f  02f9d6b6  02f9f91c  00000000

02fbbf60: fffffffd  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02fbbf80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02fbbfa0: 00000000  00000000  00000000  00000000  02fb6678  00e3f1f0  00e3f248  01034420

02fbbfc0: 00000000  01034188  0128b05b  02f16380  000000c0  00000005  01034424  00000000

02fbbfe0: 00000005  00000002  00000001  00000621  00000000  00000000  000000c0  00000006

Return addresses in stack:

   frame  1 : <0x00010e28> { _panic + 0x4c }

   frame  2 : <0x00005146> { _trap_c + 0x386 }

    address : <0x0004a7fe> { _do_lookup + 0x46 }

    address : <0x00051658> { _dput + 0x64 }

    address : <0x0004bc30> { ___link_path_walk + 0x220 }

    address : <0x0004bfe4> { ___link_path_walk + 0x5d4 }

    address : <0x00055958> { _mntput_no_expire + 0x1c }

    address : <0x0004a51c> { _path_put + 0x20 }

   frame  3 : <0xffa006a0> { _exception_to_level5 + 0xa8 }

    address : <0x0004a51c> { _path_put + 0x20 }

    address : <0x000402b0> { _do_mmap_pgoff + 0x348 }

    address : <0x0004028c> { _do_mmap_pgoff + 0x324 }

   frame  4 : <0x000402b0> { _do_mmap_pgoff + 0x348 }

    address : <0xffa02c96> { ___down_write + 0xa }

   frame  5 : <0x00003a9c> { _sys_mmap2 + 0x44 }

   frame  6 : <0xffa008a8> { _system_call + 0x68 }

    address : <0x011fcdf0> [ /lib/libdl.so.0 + 0xdf0 ]

    address : <0xffa01046> { _evt_system_call + 0x66 }

 

arecord:

Recording WAVE 'wav' : Unsigned 8 bit, Rate 8000 Hz, Mono

------------[ cut here ]------------

kernel BUG at mm/nommu.c:550!

Kernel panic - not syncing: BUG()

Hardware Trace:

   0 Target : <0x00004dc0> { _trap_c + 0x0 }

     Source : <0xffa0069c> { _exception_to_level5 + 0xa4 } CALL pcrel

   1 Target : <0xffa005f8> { _exception_to_level5 + 0x0 }

     Source : <0xffa004ac> { _bfin_return_from_exception + 0x20 } RTX

   2 Target : <0xffa0048c> { _bfin_return_from_exception + 0x0 }

     Source : <0xffa00550> { _ex_trap_c + 0x74 } JUMP.S

   3 Target : <0xffa004dc> { _ex_trap_c + 0x0 }

     Source : <0xffa00770> { _trap + 0x68 } JUMP (P4)

   4 Target : <0xffa00728> { _trap + 0x20 }

     Source : <0xffa00724> { _trap + 0x1c } IF !CC JUMP

   5 Target : <0xffa00708> { _trap + 0x0 }

     Source : <0x0003f332> { _add_nommu_region + 0x5a } IF !CC JUMP

   6 Target : <0x0003f330> { _add_nommu_region + 0x58 }

     Source : <0x0003f326> { _add_nommu_region + 0x4e } IF !CC JUMP

   7 Target : <0x0003f324> { _add_nommu_region + 0x4c }

     Source : <0x0003f2fa> { _add_nommu_region + 0x22 } IF CC JUMP

   8 Target : <0x0003f2f3> { _add_nommu_region + 0x1b }

     Source : <0x0003f306> { _add_nommu_region + 0x2e } IF CC JUMP

   9 Target : <0x0003f2d8> { _add_nommu_region + 0x0 }

     Source : <0x000402ac> { _do_mmap_pgoff + 0x344 } CALL pcrel

  10 Target : <0x0004028c> { _do_mmap_pgoff + 0x324 }

     Source : <0x000798b4> { _ramfs_nommu_get_unmapped_area + 0x5c } RTS

  11 Target : <0x000798ac> { _ramfs_nommu_get_unmapped_area + 0x54 }

     Source : <0x00079870> { _ramfs_nommu_get_unmapped_area + 0x18 } IF !CC JUMP

  12 Target : <0x00079858> { _ramfs_nommu_get_unmapped_area + 0x0 }

     Source : <0x0004028a> { _do_mmap_pgoff + 0x322 } CALL (P2)

  13 Target : <0x00040268> { _do_mmap_pgoff + 0x300 }

     Source : <0x00040124> { _do_mmap_pgoff + 0x1bc } IF !CC JUMP

  14 Target : <0x00040120> { _do_mmap_pgoff + 0x1b8 }

     Source : <0x00093098> { _rb_next + 0x3c } RTS

  15 Target : <0x00093094> { _rb_next + 0x38 }

     Source : <0x000930b0> { _rb_next + 0x54 } JUMP.S

Stack info:

SP: [0x00f57ca8] <0x00f57ca8> /* kernel dynamic memory */

FP: (0x00f57cac)

Memory from 0x00f57ca0 to 00f58000

00f57ca0: 00f57ca8  ffe02014 [0000003f](00f57cd0)<00010e28> 00167d9c  0013a76c  001693d2

00f57cc0: 001693d2  001697d2  00f57cec  00f57cec (00f57d74)<00005146> 00f57d9c  ffe02014

00f57ce0: 0000003f  00008008  02c3f094  0000003f  ffffffff  0209d010  00f57e28  00f57d1c

00f57d00:<0004a7fe> 0209a754  00f57e28  00f57d50  00f57d30  00f57d2c <00051658> 00f57d50

00f57d20:<0004bc30> 0209d010  02010178  00f57d6c <0004bfe4> 0209c658  00f57d50  00000000

00f57d40: 00000000  00000000  00000000  00f57d64 <00055958> 00000000  00000000  00000000

00f57d60: 00000000  00f57d84 <0004a51c> 0200d7a0  00000000 (00f57e84)<ffa006a0> 00166000

00f57d80: 00008008  00002021  02059664  00000002  00f57db0 <0004a51c> 00000480  00000480

00f57da0: 00008008  00002021  00000000  00f57e78  00000480  0003f334 <000402b0> 00000000

00f57dc0: 02003005  02f9d6b7  ffa0175c  02f9d6b6  ffa0175c  00000000  00000000  00000000

00f57de0: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

00f57e00: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

00f57e20: 00000000  00000000  02fb6678  00e1d23c  00f57e84  00000001  02bbfcc0  0000003f

00f57e40: 02059d6c  02059dc4  02059664  00000001  00000000  02059664  00000002  00000621

00f57e60: 00000621  00000000  00000000  00000000  02059664  00000006 <0004028c> 00000001

00f57e80: 00000001 (00f57eb0)<000402b0><ffa02c96> 00000000  00000621  00000000  00000002

00f57ea0: 00000000  00f57eac  02f1c4ec  000000ff (00f57eec)<00003a9c> 00000000  00000621

00f57ec0: 0104e188  00f56000  00000002  02bbfcc0  00000001  00042998  00000005  00000621

00f57ee0: 00000001  00000002  00000000 (00000000)<ffa008a8> 00003a58  000000c0  00000000

00f57f00: ffffe000  00000000  00000003  ffc00014  00000000 <ffa00bf4> 00000002  00000003

00f57f20: 00000000  02ef9862  00008000  00002000  00000000  00f58000  02ef9862  02ef9862

00f57f40:<011acdf0><ffa01046> 02001004  02f9d6b7  02f9f92f  02f9d6b6  02f9f91c  00000000

00f57f60: fffffffd  00000000  00000000  00000000  00000000  00000000  00000000  00000000

00f57f80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

00f57fa0: 00000000  00000000  00000000  00000000  02fb6678  00e1d23c  00e1d294  0104e420

00f57fc0: 00000000  0104e188  0118b05b  02efe380  000000c0  00000003  0104e424  00000000

00f57fe0: 00000003  00000002  00000001  00000621  00000000  00000000  000000c0  00000006

Return addresses in stack:

   frame  1 : <0x00010e28> { _panic + 0x4c }

   frame  2 : <0x00005146> { _trap_c + 0x386 }

    address : <0x0004a7fe> { _do_lookup + 0x46 }

    address : <0x00051658> { _dput + 0x64 }

    address : <0x0004bc30> { ___link_path_walk + 0x220 }

    address : <0x0004bfe4> { ___link_path_walk + 0x5d4 }

    address : <0x00055958> { _mntput_no_expire + 0x1c }

    address : <0x0004a51c> { _path_put + 0x20 }

   frame  3 : <0xffa006a0> { _exception_to_level5 + 0xa8 }

    address : <0x0004a51c> { _path_put + 0x20 }

    address : <0x000402b0> { _do_mmap_pgoff + 0x348 }

    address : <0x0004028c> { _do_mmap_pgoff + 0x324 }

   frame  4 : <0x000402b0> { _do_mmap_pgoff + 0x348 }

    address : <0xffa02c96> { ___down_write + 0xa }

   frame  5 : <0x00003a9c> { _sys_mmap2 + 0x44 }

   frame  6 : <0xffa008a8> { _system_call + 0x68 }

    address : <0xffa00bf4> { __common_int_entry + 0x74 }

    address : <0x011acdf0> [ /lib/libdl.so.0 + 0xdf0 ]

    address : <0xffa01046> { _evt_system_call + 0x66 }

 

Tested on ad1938/ad1836/ad1980, all crash.

 

Follow-ups

 

--- Vivi Li                                                  2009-09-24 23:49:44

[Linux-kernel-commits] [7449] trunk/mm/nommu.c: for bug [#5446], the new

vm_region codes break some mmap

Revision 7449

Author gyang

Date 2009-09-24 07:15:00 -0400 (Thu, 24 Sep 2009)

 

Fixed also this bug.

 

So close it.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

No Files Were Found

Attachments

    Outcomes