wiki:jazz/08-11-16

Version 23 (modified by jazz, 16 years ago) (diff)

--

2008-11-16

Event: SC'08

BUGFIX: jfbterm

  • (續 08-11-15@GMT-6)尋找合理懷疑對象:
    root@intrepid:~/jfbterm-0.4.7# grep "KD_GRAPHICS" *
    vterm.c:        ioctl(0, KDSETMODE, KD_GRAPHICS);
    
    root@intrepid:~/jfbterm-0.4.7# grep "KD_TEXT" *
    main.c:        if (mode == KD_TEXT) {
    vterm.c:        ioctl(0, KDSETMODE, KD_TEXT);
    
    root@intrepid:~/jfbterm-0.4.7# grep mmio *
    acconfig.h:/* Quit if mmap(mmio) is failed */
    ChangeLog:        mmap(mmio)$N%3!<%I$rJQ99$7$F$_$^$7$?!#
    ChangeLog:        "Cannot mmap(mmio)."$,H/@8$7$F$bL5;k$9$k;v$,$G$-$k$h$&$K$7$F$_
    config.h:/* Quit if mmap(mmio) is failed */
    config.h.in:/* Quit if mmap(mmio) is failed */
    config.log:configure:6444: checking whether to enable check-mmio-error
    configure: --enable-check-mmio-error         Check mmap(mmio) return code default no
    configure:# Check whether --enable-check-mmio-error was given.
    configure:if test "${enable_check_mmio_error+set}" = set; then
    configure:  enableval=$enable_check_mmio_error;
    configure:  enable_check_mmio_error=no
    configure:{ echo "$as_me:$LINENO: checking whether to enable check-mmio-error" >&5
    configure:echo $ECHO_N "checking whether to enable check-mmio-error... $ECHO_C" >&6; }
    configure:if test x$enable_check_mmio_error = xyes; then
    configure.in:AC_ARG_ENABLE(check-mmio-error, [ --enable-check-mmio-error         Check mmap(mmio) return code [default no]],,enable_check_mmio_error=no)
    configure.in:AC_MSG_CHECKING(whether to enable check-mmio-error)
    configure.in:if test x$enable_check_mmio_error = xyes; then
    fbcommon.c:     print_message("MMIO   : %p L=%u\n", fbfs->mmio_start, fbfs->mmio_len);
    fbcommon.c:     p->moff = (u_long)(fb_fix.mmio_start) & (~PAGE_MASK);
    fbcommon.c:     p->mlen = (fb_fix.mmio_len + p->moff + ~PAGE_MASK) & PAGE_MASK;
    fbcommon.c:     p->mmio = (u_char*)mmap(NULL, p->mlen, PROT_READ|PROT_WRITE,
    fbcommon.c:     if ((long)p->mmio == -1) {
    fbcommon.c:             die("cannot mmap(mmio)");
    fbcommon.c:             print_message("cannot mmap(mmio) : %s\n", strerror(errno));
    fbcommon.c:     p->mmio = (char *)p->mmio + p->moff;
    fbcommon.c:     print_message("mmio ; %d - %p\n", p->mlen, p->mmio);
    fbcommon.c:     if ((long)p->mmio != -1) {
    fbcommon.c:             munmap((caddr_t)((u_long)p->mmio & PAGE_MASK), p->mlen);
    fbcommon.h:     u_char* mmio;
    
  • 啟用 DEBUG 旗標,編譯 jfbterm,使用 gdb 追蹤
    root@intrepid:~/jfbterm-0.4.7# ./configure --enable-debug
    root@intrepid:~/jfbterm-0.4.7# make
    root@intrepid:~/jfbterm-0.4.7# gdb ./jfbterm
    gdb> run
    

UCIMF - jfbterm patch (中文輸入)

Debian

職場態度

  • 我們要向Google學習做人道理?
    現在的上班族,應該要懂得「放下自我好處」(subordinate),要學會「忘記自己」。 
    對待已知的合作伙伴,要非常的信任;對待未知的其他大眾,也要抱持著讓大家一起來做的開放精神。 
    要懂得與他人合作,人終究是群居的動物,一個健全的心理,一定要認定我們是住在一個需要相互倚靠的社會, 
    就像體內的器官,都要相互倚賴才達到某種平衡,大家快樂各司其工作,一起做得很好。 
    

Web Service

Open Source