亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 3958 | 回復(fù): 3
打印 上一主題 下一主題

busybox啟動(dòng)時(shí)停止 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2009-06-12 14:00 |只看該作者 |倒序?yàn)g覽
5可用積分
busybox做的initramfs,在啟動(dòng)時(shí)出現(xiàn)問題,停住了。
busybox下的init/init.c中run()運(yùn)行到while(read(0, &c, 1) == 1 && c != '\n');停住了。
追蹤后發(fā)現(xiàn),是運(yùn)行read(0, &c, 1)時(shí)停住了,對(duì)應(yīng)于內(nèi)核中的函數(shù)是drivers/char/tty_io.c中的tty_read()
下面的調(diào)用過程如下:
tty_read() -> read_chan() -> schedule_timeout() -> schedule()最前面的一個(gè) -> 出去后就回不來了。
通過打印信息發(fā)現(xiàn),這個(gè)schedule()讓出后運(yùn)行了另一進(jìn)程,這個(gè)進(jìn)程再次調(diào)用schedule()后,運(yùn)行了第三個(gè)進(jìn)程,然后就不再調(diào)用schedule(),估計(jì)是死循環(huán)在這個(gè)第三個(gè)進(jìn)程中了。
這時(shí),中斷還是可以響應(yīng)的,時(shí)鐘中斷和串口中斷都可以運(yùn)行。但是就是再也回不去接著運(yùn)行tty_read()了。

請(qǐng)問會(huì)死在什么地方呢?應(yīng)該不是死在中斷里面,因?yàn)榭赡艿闹袛嗵幚砗瘮?shù)我都加上了打印語句,沒有發(fā)現(xiàn)哪個(gè)中斷處理程序被調(diào)用。(打印語句不是printk,而是直接寫串口寄存器的程序段)。有沒有什么辦法找出問題?
謝謝了!

具體信息如下:
Auto run second count down: 0
Booting from latest image (0xbe020000) ...
Code Address: 0x80010000, Entry Address: 0x80014430
Decompression OK!
Entry at 0x80014430
Closing network.
Starting program at 0x80014430
Linux version 2.6.27 (root@localhost.localdomain) (gcc version 3.4.2) #483 Fri Jun 12 13:17:04 CST 2009
Parallel flash device: name AM29LV320MT, id 0x2201, size 32768KB
96359PONG prom init
mips_hpt_frequency = 0x8f0d180, r4k_interval = 0x16e360
CPU revision is: 0002a010 (Broadcom BCM635
Determined physical RAM map:
memory: 07fa0000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
  Normal   0x00000000 -> 0x00007fa0
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x00007fa0
On node 0 totalpages: 32672
free_area_init_node: node 0, pgdat 80148cf0, node_mem_map 81000000
  Normal zone: 32416 pages, LIFO batch:7
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32416
Kernel command line: rdinit=/sbin/init console=ttyS0,115200
Primary instruction cache 32kB, VIPT, 2-way, linesize 16 bytes.
Primary data cache 16kB, 2-way, VIPT, cache aliases, linesize 16 bytes
PID hash table entries: 512 (order: 9, 2048 bytes)
console [ttyS0] enabled
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 127416k/130688k available (1081k kernel code, 3100k reserved, 176k data, 440k init, 0k highmem)
Calibrating delay loop... 299.82 BogoMIPS (lpj=1499136)
Mount-cache hash table entries: 512
Total Flash size: 32768K with 512 sectors
File system address: 0xbf000100
msgmni has been set to 249
io scheduler noop registered (default)
brd: module loaded
loop: module loaded
brcmboard: brcm_board_init entry
Serial: BCM63XX driver $Revision: 3.00 $
ttyS0 at MMIO 0xfffe0100 (irq = 10) is a BCM63XX
Freeing unused kernel memory: 440k freed
init started:  BusyBox v1.00 (2009.06.10-06:34+0000) multi-call #1
                                                                  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
這里是響應(yīng)串口收數(shù)據(jù)中斷的打印

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2009-06-19 12:23 |只看該作者
補(bǔ)充:
上面是在2.6.27上移植的結(jié)果.如果用相同的方法,也就是說改相同的文件,在2.6.21上就可以進(jìn)入命令行.看來是27與21內(nèi)核的區(qū)別導(dǎo)致的.
哪位高人有這方面的經(jīng)驗(yàn),給點(diǎn)提示,或者說個(gè)方向也行啊.
用的cpu是bcm6359,謝謝了!

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2009-06-19 16:43 |只看該作者

謝謝幫忙了

查看busybox1.00源代碼,死機(jī)的地方是:
init/init.c ->init_main() -> run_actions() -> run() -> read(0, &c, 1)
read()對(duì)應(yīng)這linux中的tty_read() -> read_chan() -> schedule_timeout() -> schedule() 讓出cpu
然后就不知道如何追蹤了,這個(gè)進(jìn)程沒有再次起來過,應(yīng)該是死在某個(gè)其他的進(jìn)程里面了。
這時(shí),系統(tǒng)剛起來,應(yīng)該能夠跑的進(jìn)程不多,不只如何查出是死在哪個(gè)進(jìn)程里面了?
謝謝!

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2009-06-22 12:13 |只看該作者
找到問題了,是時(shí)鐘中斷的關(guān)系,個(gè)人人為2.6.21-2.6.27時(shí)鐘中斷機(jī)制變化較大.
謝謝各位關(guān)注
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP