Tags » Linux Kernel

Demystifying Linux Kernel Timers

Some basics

jiffies – repesents time taken between two successive clock interrupt.
Incremented at every timer interrupt.
It is a global variable in kernel, declared as volatile so to avoid reading stale… 1,108 more words

Linux

Is Parallel Programming Hard, And, If So, What Can You Do About It?

Is Parallel Programming Hard, And, If So, What Can You Do About It?” is a free book written by Paul E. McKenney from the Linux Technology Center IBM Beaverton, and covered by the terms of the… 91 more words

Parallel Programming

Πυρήνες και PPAs update 2

Το προηγούμενο update μπορείτε να το διαβάσετε εδώ. Αυτή είναι η τελευταία ενημέρωση (για τώρα), λόγω κάποιων αλλαγών που έκανα στα αποθετήρια. Παρακάτω παραθέτω την τρέχουσα κατάσταση των αποθετηρίων. 42 more words

Linux

Devm functions and their CORRECT usage

Hi,

Lets start this blog with some good news. Guess what, I won the Linux Foundation Training Scholarship under Kernel Guru category. I am so excited for taking Linux Foundation training class. 859 more words

android: binder: kernel panic: binder_get_ref

This post is to discuss debugging kernel panic at binder_get_ref. The reference source code here is qualcomm msm kernel release 3.4.0.

[  638.949732] c1    936 Unable to handle kernel paging request at virtual address e714c805
[  638.949732] c1    936 pgd = dd99c000
[  638.949763] c1    936  *pgd=9f075811, *pte=00000000, *ppte=00000000
[  638.949763] c1    936 DFSR=00000007, TTBCR=00000000, TTBR0=9e39c06a, TTBR1=8060406a
[  638.949763] c1    936 MAIR0=ff0881a8, MAIR1=40e040e0, SCTLR=10c5787d
[  638.949793] c1    936 Internal error: Oops: 7 [#1] PREEMPT SMP ARM
[  638.949793] c1    936 Modules linked in: bcmdhd dm_crypt(O) moc_crypto(PO) moc_platform_mod(O)
[  638.949824] c1    936 CPU: 1    Tainted: P        W  O  (3.4.10-gc50a6b2 #1)
[  638.949854] c1    936 PC is at binder_get_ref+0x8/0x34
[  638.949854] c1    936 LR is at binder_transaction_buffer_release+0x190/0x340
[  638.949854] c1    936 pc : [<c050c304>]    lr : [<c050e48c>]    psr: a0000013
[  638.949854] c1    936 sp : dae7ddd8  ip : 766045f4  fp : 000001cc
[  638.949885] c1    936 r10: 00000000  r9 : dc3e6400  r8 : 00000068
[  638.949885] c1    936 r7 : eb000288  r6 : c0cf22f8  r5 : 0001734e  r4 : eb000220
[  638.949885] c1    936 r3 : e714c7dd  r2 : 000001cb  r1 : 000001cc  r0 : da231580
…
[  638.952601] c1    936 Process Binder_4 (pid: 936, stack limit = 0xdae7c2f8)
…
[  638.952815] c1    936 [<c050c304>] (binder_get_ref+0x8/0x34) from [<c050e48c>] (binder_transaction_buffer_release+0x190/0x340)
[  638.952845] c1    936 [<c050e48c>] (binder_transaction_buffer_release+0x190/0x340) from [<c050fb1c>] (binder_thread_write+0x620/0x1f7c)
[  638.952845] c1    936 [<c050fb1c>] (binder_thread_write+0x620/0x1f7c) from [<c0512238>] (binder_ioctl+0x1d4/0x588)
[  638.952876] c1    936 [<c0512238>] (binder_ioctl+0x1d4/0x588) from [<c014d2cc>] (do_vfs_ioctl+0x4d8/0x54c)
[  638.952876] c1    936 [<c014d2cc>] (do_vfs_ioctl+0x4d8/0x54c) from [<c014d374>] (sys_ioctl+0x34/0x54)
[  638.952906] c1    936 [<c014d374>] (sys_ioctl+0x34/0x54) from [<c000e480>] (ret_fast_syscall+0x0/0x30)
[  638.952906] c1    936 Code: e1a00003 e12fff1e e5903010 ea000006 (e5932028) 
[  638.952937] c1    936 ---[ end trace 3d62df4cc805c0c7 ]---
[  638.952968] c1    936 Kernel panic - not syncing: Binder_4 PC:binder_get_ref+0x8/0x34 LR:binder_transaction_buffer_release+0x190/0x340
… 662 more words
Linux Kernel

arm: mm: memory usage distribution

This post is to discuss memory usage distribution, and explains each item in the distribution. The reference source code here is qualcomm msm kernel release 3.4.0 with arm 32-bit architecture. 2,097 more words

Linux Kernel