On 3/25/20 11:53 PM, Rohit Sarkar wrote: > On Wed, Mar 25, 2020 at 11:07:55PM -0700, Randy Dunlap wrote: >> On 3/25/20 10:31 PM, Rohit Sarkar wrote: >>> On Wed, Mar 25, 2020 at 02:40:27PM -0700, Randy Dunlap wrote: >>>> On 3/25/20 10:13 AM, Rohit Sarkar wrote: >>>>> On Wed, Mar 25, 2020 at 04:41:38PM +0100, Hubert CHAUMETTE wrote: >>>>>> Le 25/03/2020 15:47, Rohit Sarkar a écrit : >>>>>>> I was trying to mess around with the driver that drives my mouse. I >>>>>>> found out that it is usbhid. I then added a printk statement to the init >>>>>>> and exit function of usbhid. >>>>>>> I then compiled and installed the usbhid drivers. Post that I ran >>>>>>> `sudo modprobe -r usbhid` and `sudo modprobe usbhid` but couldnt observe >>>>>>> any logs in dmesg. >>>>>>> >>>>>>> I am certain I am missing something fundamental. Could someone help me >>>>>>> with this. >>>>>> >>>>>> Hi, >>>>>> >>>>>> Did you check whether your module was effectively loaded with lsmod? >>>>>> What log level did you use in your printk statement? Depending on your >>>>>> system default loglevel your logs might not be printed. A quick fix >>>>>> would be to use one of the lowest levels (pr_emerg, but pr_err might >>>>>> suffice). >>>>>> Regards, >>>>> >>>>> Hey, >>>>> I did check that module was loaded. And one of the signs was that my >>>>> mouse started working after insmod :). >>> Hi, >>>> Hi, >>>> I'm not convinced that your modified usbhid module was loaded. >>> Hmm, here's my dmesg logs if that helps: >>> " >>> [ 382.132319] usbcore: deregistering interface driver usbhid >>> [ 391.077410] input: MOSART Semi. 2.4G Wireless Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.0/0003:3938:1031.0002/input/input26 >>> [ 391.136724] input: MOSART Semi. 2.4G Wireless Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.0/0003:3938:1031.0002/input/input27 >>> [ 391.137285] hid-generic 0003:3938:1031.0002: input,hiddev0,hidraw0: USB HID v1.10 Mouse [MOSART Semi. 2.4G Wireless Mouse] on usb-0000:00:14.0-2/input0 >>> [ 391.137480] usbcore: registered new interface driver usbhid >>> [ 391.137483] usbhid: USB HID core driver >>> " >> >> I can't tell that helps any. >> >>>> Could an older (original) usbhid module be reloaded so that the mouse >>>> started working again? That would also explain the lack of (new) messages. >>> I think so too. But how do I verify if this is the case? >>> >>>> What kernel version are you using? Is it a distro kernel? >>> I am currently running a bleeding edge kernel that I built. ie 5.6-rc7. >>>> Are you trying to replace the usbhid module in a distro kernel or are >>>> you building the entire kernel? >>> I am building the entire kernel >>>>> I used printk(KERN_ALERT "some message") for logging. I also tried with >>>>> KERN_ERR but no luck. >>>>> >>>>> The command I used for building was "make -C /home/rohit/LINUX/kernels/staging M=$(pwd)" >>>>> and for installing the modules: "sudo make -C /home/rohit/LINUX/kernels/staging M=$(pwd) modules_install" >>>>> both were executed from the usbhid directory. >>>> >>>> why those commands? seems unusual. >>> My Linux kernel source is in the directory mentioned in the commands. So >>> it is same as running "make M=drivers/hid/usbhid/" from the linux kernel >>> source root. >> >> So /home/rohit/kernels/staging is the top-level kernel source directory? >> >> "M=dir" is for external modules to be built. AFAICT you are not building any >> external modules. > Oh, I think M=dir options just makes the Makefile build the folder > specified. I see such an output when I run the make command which makes > me feel that the make command I am using is actually building the > modules: You should be able to build the usbhid sub-directory ("folder") like this: $ cd /home/rohit/LINUX/kernels/staging $ make drivers/hid/usbhid/ but maybe what you are doing is equivalent to this. > " > drivers/hid/usbhid❯ make -C /home/rohit/LINUX/kernels/staging M=$(pwd) staging/git/master ! > make: Entering directory '/home/rohit/LINUX/kernels/staging' > AR /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/built-in.a > CC [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/hid-core.o > CC [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/hiddev.o > CC [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/hid-pidff.o > LD [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbhid.o > CC [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbkbd.o > CC [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbmouse.o > MODPOST 3 modules > CC [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbhid.mod.o > LD [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbhid.ko > CC [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbkbd.mod.o > LD [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbkbd.ko > CC [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbmouse.mod.o > LD [M] /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbmouse.ko > make: Leaving directory '/home/rohit/LINUX/kernels/staging' > " -- ~Randy