【问题标题】:Error during creation of Proc entry创建 Proc 条目时出错
【发布时间】:2013-04-28 12:24:32
【问题描述】:

我想在 USB 驱动程序代码中创建一个 Proc 条目,但我收到错误为 implicit function declaration of function 'create_proc_read_entry' 和 'remove_proc_entry'

我在 scull 驱动程序代码中执行了类似的步骤,以创建 Linux 设备驱动程序文本中指定的 proc 条目,但在通过 makefile 编译时出现上述两个错误。

我在 ubuntu 12.04 内核版本是 3.2.0-23-generic-pae 上编译代码。我对现有的驱动程序代码做了一些小修改,下面是代码 sn-p。如果需要任何其他详细信息,请告诉我。

   #include <linux/module.h>
   #include <linux/kernel.h>
   #include <linux/version.h>
   #include <linux/usb.h>
   #include <linux/mutex.h>
   #include <linux/errno.h>
   #include <linux/slab.h>
   #include <linux/cdev.h>
   #include <asm/uaccess.h>
   #ifdef ENABLE_FILE_OPS
   #include <asm/atomic.h>
   #include <linux/proc_fs.h> 
   #endif
   #include "ddk_mem.h"
   #include "usb_proc.h"
   #define PROC_DEBUG

   #ifdef PROC_DEBUG 
   int read_proc(char *buf, char **start, off_t offset,
               int count, int *eof, void *data)

    {
       int len=0;

       len  += sprintf(buf+len, "Hello world");

       *eof=1;
       return len;
    }

    static void usb_mem_create_proc(void )
    {
       create_proc_read_entry("hello",0,NULL,read_proc,NULL);

    }

   static void usb_mem_remove_proc(void)
   {
      remove_proc_entry("hello",NULL);
   }

   #endif

【问题讨论】:

  • 删除ifdef块后问题解决。问题可以关闭了。

标签: device-driver kernel-module kernel


【解决方案1】:

删除后的 ifdef 块将允许您创建 proc 条目。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-05
    • 2019-10-02
    • 2013-03-05
    • 2021-11-01
    相关资源
    最近更新 更多