xfortune 发表于 2012-06-05 19:00

执行驱动测试程序报错

# ./main
BUG: Bad page map in process mainpte:30777310 pmd:33b59031
addr:4000b000 vm_flags:08000875 anon_vma:(null) mapping:c34741a8 index:b
vma->vm_ops->fault: filemap_fault+0x0/0x3d8
vma->vm_file->f_op->mmap: generic_file_mmap+0x0/0x64
Backtrace:
[<c0048fd4>] (dump_backtrace+0x0/0x10c) from [<c0349710>] (dump_stack+0x18/0x1c)
r7:00000000 r6:40000000 r5:c3b46d68 r4:4001d000
[<c03496f8>] (dump_stack+0x0/0x1c) from [<c0092f5c>] (print_bad_pte+0x12c/0x1d8)
[<c0092e30>] (print_bad_pte+0x0/0x1d8) from [<c0094fd0>] (unmap_vmas+0x2ec/0x6ac)
[<c0094ce4>] (unmap_vmas+0x0/0x6ac) from [<c00979d4>] (exit_mmap+0xc0/0x168)
[<c0097914>] (exit_mmap+0x0/0x168) from [<c005512c>] (mmput+0x40/0xb0)
[<c00550ec>] (mmput+0x0/0xb0) from [<c005888c>] (exit_mm+0xfc/0x134)
r5:00000000 r4:c3b22c00
[<c0058790>] (exit_mm+0x0/0x134) from [<c005a3cc>] (do_exit+0x49c/0x620)
r7:000000f8 r6:40161774 r5:0009685c r4:0000ff00
[<c0059f30>] (do_exit+0x0/0x620) from [<c005a594>] (do_group_exit+0x44/0xc4)
[<c005a550>] (do_group_exit+0x0/0xc4) from [<c005a62c>] (sys_exit_group+0x18/0x24)
r5:0009685c r4:00096880
[<c005a614>] (sys_exit_group+0x0/0x24) from [<c0044e60>] (ret_fast_syscall+0x0/0x2c)
# 有时候报错是
open device error ...

我的测试程序是这么写的。。#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<sys/ioctl.h>
int main()
{
        int fd;
        fd = open("/dev/LED_DRIVER",0);
        if(fd < 0){
                printf("Open Device error \n");
                exit(0);
        }
        ioctl(fd,1,1);
        return 0;

}到底是什么原因呢??
请大家给点意见

xfortune 发表于 2012-06-05 19:02

打开驱动程序的节点就失败。
但是不报错
不知道什么原因

xfortune 发表于 2012-06-05 19:03

我明明是让如果驱动设备打开返回-1的话,输出错误信息,
不知道为什么也不输出

xfortune 发表于 2012-06-05 19:33

warning: implicit declaration of function 'open'

这个问题是 因为少了一个头文件

所以我想我device open error 应该是这个问题

xfortune 发表于 2012-06-05 19:34

现在手头没有开发板。。估计这个帖子可以结贴了

期待我写的小灯泡的驱动全都都能熄灭

xfortune 发表于 2012-06-23 21:17

ioremap
问题
页: [1]
查看完整版本: 执行驱动测试程序报错