title: modules.usbmap and modules.pcimap missing on Ubuntu-based distro
body: <p>I have been learning Kernel programming and taking the <a href="http://eudyptula-challenge.org/">Eudyptula challenge</a>, and task 5 requires me to modify a hello world module from an earlier task to be automatically loaded when a USB keyboard is plugged, and unloaded when the keyboard is unplugged.</p>
  
  <p>Now, for the sake of it, I will not be posting my code here, because that would be a huge spoiler for this task and would ruin the fun of it for others. Basically, what it does is:</p>
  
  <ol>
  <li>Creates a <code>struct usb_device_id</code> array with one entry that binds my module to any usb keyboard</li>
  <li>Creates a <code>struct usb_driver</code> and initializes the proper fields; in particular, it references the usb device id table array that I created previously</li>
  <li>Uses the macro <code>MODULE_DEVICE_TABLE</code> to register the driver.</li>
  </ol>
  
  <p>The register / unregister routines are working. I get the expected debugging messages when I manually load and unload the module.</p>
  
  <p>I copied the module to <code>/lib/modules/$(uname -r)</code> and ran <code>depmod -a</code>. The module is added to <code>modules.alias</code> and <code>modules.dep</code>, but nothing happens when I plug / unplug the keyboard.</p>
  
  <p>Further research showed that I should have a <code>modules.usbmap</code> file generated by <code>depmod</code> where the kernel keeps a mapping between devices and drivers to load. I don't have this file anywhere in my folders tree. I also don't have a <code>modules.pcimap</code>. I have checked the kernel configuration to make sure that loadable module support is enabled, as well as hotplugging support - they are.</p>
  
  <p>This is Kubuntu 14.04 with self-compiled 3.16.0-rc5 kernel. What am I missing? I have gone through the kernel configuration and checked the most obvious options. I'm kind of stuck here. Any ideas? </p>