以前都習慣用 printk 和 /proc 做輸入輸出的動作, 不過 debugfs 看起來是 User space 和 kernel space 交流更好的選擇.
Tags: debugfs, kernel, linux kernel
以前都習慣用 printk 和 /proc 做輸入輸出的動作, 不過 debugfs 看起來是 User space 和 kernel space 交流更好的選擇.
Tags: debugfs, kernel, linux kernel
Tags: Linux
Linux kernel 支援不同 domain 的 PCI, 看起來是 ACPI 的功能之一.
其他平台看起來也有支援, 像是 sparc or mips 都有.
但是在 ARM 上並沒有這樣的支援
我的平台有 2 個 PCIe Host Controller , 而且都要設定在 PCIe bus 0 上面.
這時就拿 PCI domain 的 code 來用最快,
以下就是 Sample Code 和 ARM 部份的 Patch Code (不含我目前使用平台的 Patch)
Tags: arm, kernel, Linux, PCI
Tags: 隨手札記
最近在弄 ARM11 的 Oprofile, 結果發現執行 opcontrol 的動作之後, 沒有 log 的動作.
這時請改用 timer interrupt
在 load oprofile modules 加上 timer=1
若是 static link 時, 就要在 boot_cmd 加上 oprofile.timer=1
似乎目前的 kernel oprofile 不支援 ARM11MPCore.
http://oprofile.sourceforge.net/doc/detailed-parameters.html#timer
Tags: arm, ARM11, kernel, Linux, oprofile
Tags: Embedded
最近不小心手滑買了一隻 Android Dev Phone 1 長得和 T-Mobile G1 的外型是一樣的.
雖然還沒有到貨, 但是準備工作要先作好.
Tags: Android, build, install, kernel, Linux
有些時候, 我們會需要一個假的 network device.
像是
1) 某些軟體會去 check network interface
2) 需要學習寫作一些軟體
所以我花了一點點時間寫了這一個 kernel modules
主要功能就是在 linux 下建立一個假的 network interface
這個 network interface
只能送(馬上就 free 掉 packet buffer), 沒有收的 function .
在 insert 時, 可以用參數 name 和 mac 指定特定的 network device name 和 mac address.
ex: # insmod fakenetdev.ko name=fake0 mac=00:aa:bb:cc:dd:ee
mac 的格式也可以是 00aabbccddee 或 00-aa-bb-cc-dd-ee
也支援用 ifconfig 修改 mac
ex: # ifconfig eth2 down
# ifconfig eth2 [...]
Tags: Linux · Programming
昨天剛拿到新的 Notebook X61, 想將使用己久的 FAT32 系統換 NTFS (主要還是為了不爭氣的 Windows 做檔案交換用, 而且因為用 VirtualBox, 單一檔超過 2G, FAT32 不吃(手賤嘛).
結果從昨天試到今天, 當 file copy 進用 ntfs-3g mount 的 Disk 時. 就是會出現 Core Dump, 這邊節錄三行就好了.
BUG: soft lockup – CPU#1 stuck for 11s! [wget:28163]
Pid: 28163, comm: wget Not tainted (2.6.24-gentoo-r2 #4)
EIP: 0060:[] EFLAGS: 00000246 CPU: 1
現在小朋友不睡覺, 只好抱著小朋友, 順便找找有沒有什麼解決方案, 最後在 Gentoo Forums [...]
記錄一下,
不僅僅是 chroot 以外, 如果執行任何程式有 『Illegal Instruction』 時, 記得將 kernel 的 NWFPE 選項 enable.
Tags: arm, kernel, Linux
Tags: Embedded · Hardware · Linux
Linux kernel 2.6.24 己經在昨天 Released. 可以直接到 Kernel.org Download
要知道詳細的改變, 可以看 Kernelnewbies Linux Kernel 2.6.24
這邊列出我自己對於這次改版比較重要的地方
CFS improvement (Performance improvement, Fair group scheduling, Guest time reporting)
Tickless support for x86-64, PPC, UML, ARM, MIPS : 不知道 ARM 加上 Tickless support 會不會增加 Performance ?
New wireless drivers and configuration interface
Anti-fragmentation patches : 這個 Patch 很重要, 尤其是在記憶體不夠的 Embedded Linux, 現在整合進來或許以前某些奇怪的問題就可以解決了吧
Per-device [...]
Tags: Linux
http://www.kerneloops.org 是一個會收集 mailing list 和 bugzilla 的網站, 他將收集到的 oops 整理成一份簡單的 report.
這樣大家就可以知道, 那一版的 kernel 有多少個什麼類型的 Bug.
Bug Report 包含 module 和 backtrace, 不過不含原始網站連結, 這是比較可惜的地方
常常碰 embedded linux 的人, 常常要找一些莫名的 bug, 有時候為了節省時間,
會想辦法看看有沒有相對應的 Bug Patch, 如果有就非常方便.
這個網站看起來是可以節省一些 Search 的時間, 運氣好說不定碰到的 Bug 是同一個呀
Ref.
Kernel Trap : Collecting Kernel Oops Data
[Tags] Linux, kernel, oops [/Tags]
Tags: kernel, Linux, oops