小编lor*_*zli的帖子

在Linux上为一个简单的char驱动程序在device_create()上失败

我写了一个简单的char驱动程序,现在想要使用类在udev中自动注册它.我的代码由以下部分组成init,当驱动程序被加载并调用函数probe时加载驱动程序的设备(当然,他们的反等价调用的函数exitremove).问题:添加新设备后,我的probe功能在执行device_create命令时失败.现在我想知道为什么:

我怎样才能获得有关此命令失败原因的更多信息(除此之外失败)?任何缺失的参数(比如我的全局声明是否存在问题,我fooClass应该将它移动到probe函数中,这在我眼中并没有显示出来,但是在很多例子中都有显示)?或任何其他监督错误?

根据我的代码,我删除了大多数返回验证(如IS_ERR())和清理函数以便于阅读.这两个变量是全局定义的:

static int foo_majNbr;
static struct class *fooClass;
Run Code Online (Sandbox Code Playgroud)

init 功能:

static int __init foo_init(void)
{
    int rv;
    dev_t devNbr;

    /* Registering driver */
    rv = pci_register_driver(&foo_driver);
        /* ----> see answer below for correct order <---- */

    /* Create device class */
    fooClass = class_create(THIS_MODULE, CLASS_NAME);

    /* Allocate device number, just one device for the moment */
    rv = alloc_chrdev_region(&devNbr, 0, …
Run Code Online (Sandbox Code Playgroud)

c linux kernel linux-device-driver linux-kernel

7
推荐指数
1
解决办法
1260
查看次数

防止iPhone Web应用程序滚动输入字段的焦点

当您单击iPhone Safari中网站上的输入字段时,它会自动按输入中心的方式滚动内容.我想阻止Safari这样做,并找到了几个解决方案,其中之一:防止<input>元素在iPhone上滚动屏幕?聚焦后我们使用jQuery.animate()移回原来的位置.

不幸的是,只有通过Safari呼叫网站,这才有效.只要我将网站添加到主屏幕,就会再次显示焦点上的自动滚动.现在当我在修改它(使用上面提到的方法)之前和之后写入body/html-element的位置进入控制台时,一切看起来好像它正常工作:web-app认为它已经滚动回到它应该的位置即使我没有在视觉上注意到任何东西.

有什么建议吗?

javascript iphone scroll webkit web-applications

5
推荐指数
1
解决办法
1195
查看次数

如何包括Jekyll自动前缀

Jekyll的新手和Ruby的新手,我尝试将(s)css文件的autoprefixer-rails直接包含在Jekyll中。因此,一旦页面由Jekyll生成,autoprefixer就会在我生成的CSS文件上运行。不幸的是,我没有设法正确地进行设置,并且autoprefixer甚至都没有碰到我的文件。

跟随我的Gemfile:

source "https://rubygems.org"

gem 'jekyll'
gem 'jekyll-assets'
gem 'autoprefixer-rails'
Run Code Online (Sandbox Code Playgroud)

和我的Jekyll配置文件的一部分:

...
gems: ['jekyll-assets', 'autoprefixer-rails']
...
Run Code Online (Sandbox Code Playgroud)

缺少哪些设置才能使其正常工作?任何帮助表示赞赏!

css ruby jekyll jekyll-extensions autoprefixer

5
推荐指数
1
解决办法
1987
查看次数