I have a kernel crash on this function: __rb_rotate_left().  Can someone explain what this function is meant for in simple terms?

PC is at __rb_rotate_left+0x24/0x78
LR is at rb_insert_color+0x108/0x134
pc : [<c41aef04>]    lr : [<c41af0dc>]    psr: a0000013
sp : cf2c9ddc  ip : acc8089f  fp : cf2c9dec
r10: d0800000  r9 : d0800000  r8 : c8089fac
r7 : c96ae538  r6 : cf101ea8  r5 : cf101ea8  r4 : cf101ea8
r3 : cf101ea9  r2 : cf101ea8  r1 : c96ae538  r0 : cf101ea8
Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
Control: 10c53c7d  Table: 0f0fc04a  DAC: 00000015
Process insmod (pid: 31163, stack limit = 0xcf2c82f0)
Stack: (0xcf2c9ddc to 0xcf2ca000)
9dc0:                                                                cf101ea8
9de0: cf2c9e14 cf2c9df0 c41af0dc c41aeeec 00000000 c82384ec c82384e0 00000001
9e00: d668c000 00004000 cf2c9e2c cf2c9e18 c40d2120 c41aefe0 00000000 c82384e0
9e20: cf2c9e6c cf2c9e30 c40d30c0 c40d20b4 00003fff 00000000 ffffffff f0000000
9e40: c41af96c c7c4c940 00003000 00000022 00000001 000000d2 c406de40 d0800000
9e60: cf2c9ea4 cf2c9e70 c40d3268 c40d2eb0 000000d2 c8314800 cf2c9f78 000025ac
9e80: 000025ac 000000d2 c406de40 ffffffff cf2c8000 00000000 cf2c9ee4 cf2c9ea8
9ea0: c40d3bec c40d31a8 f0000000 000000d2 c406de40 00000001 ffffffff c8314800
9ec0: 00000000 000025ac 000025ac 00bf5198 00000080 c400de84 cf2c9f04 cf2c9ee8
9ee0: c40d3da0 c40d3b9c 000000d2 0000065f ffffffff c406de40 cf2c9f1c cf2c9f08
9f00: c40d3ee4 c40d3d6c ffffffff c406de40 cf2c9fa4 cf2c9f20 c406de40 c40d3ec0
9f20: c40e0be0 c40faf0c 00000020 00bf5188 c8314800 00000000 00000000 00000000
9f40: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
9f60: 00000000 00000000 00000000 00000000 00000000 00000000 c40dcd64 000025ac
9f80: 00000000 be8fff1b 00000080 c400de84 cf2c8000 00000000 00000000 cf2c9fa8
9fa0: c400dd00 c406ddf0 000025ac 00000000 00bf5198 000025ac 00bf5188 00bfd238
9fc0: 000025ac 00000000 be8fff1b 00000080 00000000 00000000 4003f000 00000000
9fe0: be8ffc78 be8ffc68 0001b73c 40242550 60000010 00bf5198 00000000 00000000
[<c41aeee0>] (__rb_rotate_left+0x0/0x78) from [<c41af0dc>] (rb_insert_color+0x108/0x134)
[<c41aefd4>] (rb_insert_color+0x0/0x134) from [<c40d2120>] (__insert_vmap_area+0x78/0xd8)
 r8:00004000 r7:d668c000 r6:00000001 r5:c82384e0 r4:c82384ec
[<c40d20a8>] (__insert_vmap_area+0x0/0xd8) from [<c40d30c0>] (alloc_vmap_area.clone.18+0x21c/0x2f8)
 r5:c82384e0 r4:00000000
[<c40d2ea4>] (alloc_vmap_area.clone.18+0x0/0x2f8) from [<c40d3268>] (__get_vm_area_node.clone.19+0xcc/0x164)
[<c40d319c>] (__get_vm_area_node.clone.19+0x0/0x164) from [<c40d3bec>] (__vmalloc_node_range+0x5c/0x1d0)
[<c40d3b90>] (__vmalloc_node_range+0x0/0x1d0) from [<c40d3da0>] (__vmalloc_node+0x40/0x4c)
 r8:c400de84 r7:00000080 r6:00bf5198 r5:000025ac r4:000025ac
[<c40d3d60>] (__vmalloc_node+0x0/0x4c) from [<c40d3ee4>] (vmalloc+0x30/0x3c)
[<c40d3eb4>] (vmalloc+0x0/0x3c) from [<c406de40>] (sys_init_module+0x5c/0x1878)
[<c406dde4>] (sys_init_module+0x0/0x1878) from [<c400dd00>] (ret_fast_syscall+0x0/0x30)
Code: e593c008 e35c0000 e580c004 1593c008 (159c4000) 

This function changes the structure of a binary tree without interfering with the order of the elements.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.