diff mbox

[LKP,lkp,gpio] 3c702e9987: kmsg.user_verbs:couldn't_register_device_number

Message ID CACRpkda2=P-pGktS+MXYBfjh1v-aBicg4i9T3_QPH4vNy8==kw@mail.gmail.com
State New
Headers show

Commit Message

Linus Walleij Feb. 15, 2016, 9:36 a.m. UTC
On Mon, Feb 15, 2016 at 3:39 AM, Huang, Ying <ying.huang@intel.com> wrote:
> Michael Welling <mwelling@ieee.org> writes:


>> Could you run cat /proc/devices?

>

> Sorry, the test mechanism is not flexible enough to run some shell

> command in test system.  Could you provide a specialized debug kernel to

> dump the necessary information in kernel log?  We can collect dmesg

> easily.


Can you try this:

     cd->major = major;

Then dmesg |grep CHARDEV should tell what we need to know.

Yours,
Linus Walleij

Comments

Linus Walleij Feb. 24, 2016, 4:01 p.m. UTC | #1
On Tue, Feb 23, 2016 at 7:35 AM, Huang, Ying <ying.huang@intel.com> wrote:

>> On Mon, Feb 15, 2016 at 3:39 AM, Huang, Ying <ying.huang@intel.com> wrote:

>>> Michael Welling <mwelling@ieee.org> writes:


>> Then dmesg |grep CHARDEV should tell what we need to know.

>

> Sorry for late, the dmesg with the patch is attached.  And the output of

> dmesg | grep CHARDEV is as follow:

>

> [    0.750037] CHARDEV: allocate major 254 for "gpiochip"

> [    0.897928] CHARDEV: allocate major 253 for "tpm"

> [    0.904196] CHARDEV: allocate major 252 for "ndctl"

> [    0.905295] CHARDEV: allocate major 251 for "dimmctl"

> [    0.909573] CHARDEV: allocate major 250 for "pps"

> [    0.913740] CHARDEV: allocate major 249 for "ptp"

> [    0.916711] CHARDEV: allocate major 248 for "iio"

> [    1.227597] CHARDEV: allocate major 247 for "bsg"

> [    1.577194] CHARDEV: allocate major 246 for "gsmtty"

> [    1.614921] CHARDEV: allocate major 245 for "ttyn"

> [    1.616044] CHARDEV: allocate major 244 for "ttyARC"

> [    1.617177] CHARDEV: allocate major 243 for "ttyRP"

> [    1.618310] CHARDEV: allocate major 242 for "ttyLP"

> [    1.620618] CHARDEV: allocate major 241 for "noz"

> [    1.621707] CHARDEV: allocate major 240 for "ttyIPWp"

> [    1.630024] CHARDEV: allocate major 239 for "telco_clock"

> [    1.632315] CHARDEV: allocate major 239 for "cmm"

> [    1.681375] CHARDEV: allocate major 238 for "hpilo"

> [    1.696757] CHARDEV: allocate major 237 for "aac"

> [    1.699338] CHARDEV: allocate major 236 for "megadev_legacy"

> [    1.704680] CHARDEV: allocate major 235 for "megaraid_sas_ioctl"

> [    1.731179] CHARDEV: allocate major 234 for "pmcsas"

> [    1.737520] CHARDEV: allocate major 233 for "nvme"

> [    2.388531] CHARDEV: allocate major 232 for "firewire"

> [    2.389743] CHARDEV: allocate major 231 for "uio"

> [    2.904429] CHARDEV: allocate major 230 for "ttySDIO"

> [    2.922374] CHARDEV: allocate major 229 for "ib_qib"

> [    2.927559] CHARDEV: allocate major 228 for "hidraw"

> [    2.952328] CHARDEV: allocate major 227 for "fwtty"

> [    2.953435] CHARDEV: allocate major 225 for "fwloop"


Oh that's a complete train wreck. Well I will keep working on the patch
to improve dynamic allocation of majors that I'm reiterating with
Torvalds in the look.

Yours,
Linus Walleij
diff mbox

Patch

diff --git a/fs/char_dev.c b/fs/char_dev.c
index 24b142569ca9..74a2d433273e 100644
--- a/fs/char_dev.c
+++ b/fs/char_dev.c
@@ -96,6 +96,8 @@  __register_chrdev_region(unsigned int major,
unsigned int baseminor,
             goto out;
         }
         major = i;
+        pr_info("CHARDEV: allocate major %d for \"%s\"\n",
+            i, name);
     }