The following reply was made to PR usb/125736; it has been noted by GNATS.

From: Daniel Gerzo <dan...@freebsd.org>
To: bug-follo...@freebsd.org
Cc: h...@freebsd.org, ad...@lissyara.su
Subject: Re: usb/125736: [ukbd] [hang] system hangs after AT keyboard detect if 
ukbd loaded as a module
Date: Sun, 8 Aug 2010 13:09:08 +0000

 --X1bOJ3K7DJ5YkBrT
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 
 Hello,
 
   attached, I am sending patch which fixes other modules similarly.
 
 -- 
 Best regards,
   Danile Gerzo
 
 --X1bOJ3K7DJ5YkBrT
 Content-Type: text/x-diff; charset=us-ascii
 Content-Disposition: attachment; filename="hps.diff"
 
 Index: if_ndis/if_ndis_usb.c
 ===================================================================
 --- if_ndis/if_ndis_usb.c      (revision 211066)
 +++ if_ndis/if_ndis_usb.c      (working copy)
 @@ -107,6 +107,7 @@
  static devclass_t ndis_devclass;
  
  DRIVER_MODULE(ndis, uhub, ndis_driver, ndis_devclass, ndisdrv_modevent, 0);
 +MODULE_VERSION(ndis, 1);
  
  static int
  ndisusb_devcompare(interface_type bustype, struct ndis_usb_type *t, device_t 
dev)
 Index: usb/serial/u3g.c
 ===================================================================
 --- usb/serial/u3g.c   (revision 211066)
 +++ usb/serial/u3g.c   (working copy)
 @@ -178,6 +178,7 @@
  DRIVER_MODULE(u3g, uhub, u3g_driver, u3g_devclass, u3g_driver_loaded, 0);
  MODULE_DEPEND(u3g, ucom, 1, 1, 1);
  MODULE_DEPEND(u3g, usb, 1, 1, 1);
 +MODULE_VERSION(u3g, 1);
  
  static const struct usb_device_id u3g_devs[] = {
  #define       U3G_DEV(v,p,i) { USB_VPI(USB_VENDOR_##v, USB_PRODUCT_##v##_##p, 
i) }
 Index: usb/serial/ucycom.c
 ===================================================================
 --- usb/serial/ucycom.c        (revision 211066)
 +++ usb/serial/ucycom.c        (working copy)
 @@ -176,6 +176,7 @@
  DRIVER_MODULE(ucycom, uhub, ucycom_driver, ucycom_devclass, NULL, 0);
  MODULE_DEPEND(ucycom, ucom, 1, 1, 1);
  MODULE_DEPEND(ucycom, usb, 1, 1, 1);
 +MODULE_VERSION(ucycom, 1);
  
  /*
   * Supported devices
 Index: usb/serial/uark.c
 ===================================================================
 --- usb/serial/uark.c  (revision 211066)
 +++ usb/serial/uark.c  (working copy)
 @@ -169,6 +169,7 @@
  DRIVER_MODULE(uark, uhub, uark_driver, uark_devclass, NULL, 0);
  MODULE_DEPEND(uark, ucom, 1, 1, 1);
  MODULE_DEPEND(uark, usb, 1, 1, 1);
 +MODULE_VERSION(uark, 1);
  
  static const struct usb_device_id uark_devs[] = {
        {USB_VPI(USB_VENDOR_ARKMICRO, USB_PRODUCT_ARKMICRO_ARK3116, 0)},
 Index: usb/serial/ufoma.c
 ===================================================================
 --- usb/serial/ufoma.c (revision 211066)
 +++ usb/serial/ufoma.c (working copy)
 @@ -326,6 +326,7 @@
  DRIVER_MODULE(ufoma, uhub, ufoma_driver, ufoma_devclass, NULL, 0);
  MODULE_DEPEND(ufoma, ucom, 1, 1, 1);
  MODULE_DEPEND(ufoma, usb, 1, 1, 1);
 +MODULE_VERSION(ufoma, 1);
  
  static int
  ufoma_probe(device_t dev)
 Index: usb/serial/umct.c
 ===================================================================
 --- usb/serial/umct.c  (revision 211066)
 +++ usb/serial/umct.c  (working copy)
 @@ -219,6 +219,7 @@
  DRIVER_MODULE(umct, uhub, umct_driver, umct_devclass, NULL, 0);
  MODULE_DEPEND(umct, ucom, 1, 1, 1);
  MODULE_DEPEND(umct, usb, 1, 1, 1);
 +MODULE_VERSION(umct, 1);
  
  static int
  umct_probe(device_t dev)
 Index: usb/serial/uftdi.c
 ===================================================================
 --- usb/serial/uftdi.c (revision 211066)
 +++ usb/serial/uftdi.c (working copy)
 @@ -205,6 +205,7 @@
  DRIVER_MODULE(uftdi, uhub, uftdi_driver, uftdi_devclass, NULL, 0);
  MODULE_DEPEND(uftdi, ucom, 1, 1, 1);
  MODULE_DEPEND(uftdi, usb, 1, 1, 1);
 +MODULE_VERSION(uftdi, 1);
  
  static struct usb_device_id uftdi_devs[] = {
  #define       UFTDI_DEV(v,p,t) \
 Index: usb/serial/uchcom.c
 ===================================================================
 --- usb/serial/uchcom.c        (revision 211066)
 +++ usb/serial/uchcom.c        (working copy)
 @@ -855,3 +855,4 @@
  DRIVER_MODULE(uchcom, uhub, uchcom_driver, uchcom_devclass, NULL, 0);
  MODULE_DEPEND(uchcom, ucom, 1, 1, 1);
  MODULE_DEPEND(uchcom, usb, 1, 1, 1);
 +MODULE_VERSION(uchcom, 1);
 Index: usb/serial/uipaq.c
 ===================================================================
 --- usb/serial/uipaq.c (revision 211066)
 +++ usb/serial/uipaq.c (working copy)
 @@ -1085,6 +1085,7 @@
  DRIVER_MODULE(uipaq, uhub, uipaq_driver, uipaq_devclass, NULL, 0);
  MODULE_DEPEND(uipaq, ucom, 1, 1, 1);
  MODULE_DEPEND(uipaq, usb, 1, 1, 1);
 +MODULE_VERSION(uipaq, 1);
  
  static int
  uipaq_probe(device_t dev)
 Index: usb/serial/ubser.c
 ===================================================================
 --- usb/serial/ubser.c (revision 211066)
 +++ usb/serial/ubser.c (working copy)
 @@ -215,6 +215,7 @@
  DRIVER_MODULE(ubser, uhub, ubser_driver, ubser_devclass, NULL, 0);
  MODULE_DEPEND(ubser, ucom, 1, 1, 1);
  MODULE_DEPEND(ubser, usb, 1, 1, 1);
 +MODULE_VERSION(ubser, 1);
  
  static int
  ubser_probe(device_t dev)
 Index: usb/serial/ugensa.c
 ===================================================================
 --- usb/serial/ugensa.c        (revision 211066)
 +++ usb/serial/ugensa.c        (working copy)
 @@ -153,6 +153,7 @@
  DRIVER_MODULE(ugensa, uhub, ugensa_driver, ugensa_devclass, NULL, 0);
  MODULE_DEPEND(ugensa, ucom, 1, 1, 1);
  MODULE_DEPEND(ugensa, usb, 1, 1, 1);
 +MODULE_VERSION(ugensa, 1);
  
  static const struct usb_device_id ugensa_devs[] = {
        {USB_VPI(USB_VENDOR_AIRPRIME, USB_PRODUCT_AIRPRIME_PC5220, 0)},
 Index: usb/serial/umoscom.c
 ===================================================================
 --- usb/serial/umoscom.c       (revision 211066)
 +++ usb/serial/umoscom.c       (working copy)
 @@ -279,6 +279,7 @@
  DRIVER_MODULE(umoscom, uhub, umoscom_driver, umoscom_devclass, NULL, 0);
  MODULE_DEPEND(umoscom, ucom, 1, 1, 1);
  MODULE_DEPEND(umoscom, usb, 1, 1, 1);
 +MODULE_VERSION(umoscom, 1);
  
  static const struct usb_device_id umoscom_devs[] = {
        {USB_VPI(USB_VENDOR_MOSCHIP, USB_PRODUCT_MOSCHIP_MCS7703, 0)}
 Index: usb/serial/ulpt.c
 ===================================================================
 --- usb/serial/ulpt.c  (revision 211066)
 +++ usb/serial/ulpt.c  (working copy)
 @@ -745,3 +745,4 @@
  DRIVER_MODULE(ulpt, uhub, ulpt_driver, ulpt_devclass, NULL, 0);
  MODULE_DEPEND(ulpt, usb, 1, 1, 1);
  MODULE_DEPEND(ulpt, ucom, 1, 1, 1);
 +MODULE_VERSION(ulpt, 1);
 Index: usb/serial/uvisor.c
 ===================================================================
 --- usb/serial/uvisor.c        (revision 211066)
 +++ usb/serial/uvisor.c        (working copy)
 @@ -252,6 +252,7 @@
  DRIVER_MODULE(uvisor, uhub, uvisor_driver, uvisor_devclass, NULL, 0);
  MODULE_DEPEND(uvisor, ucom, 1, 1, 1);
  MODULE_DEPEND(uvisor, usb, 1, 1, 1);
 +MODULE_VERSION(uvisor, 1);
  
  static const struct usb_device_id uvisor_devs[] = {
  #define       UVISOR_DEV(v,p,i) { USB_VPI(USB_VENDOR_##v, 
USB_PRODUCT_##v##_##p, i) }
 Index: usb/serial/ubsa.c
 ===================================================================
 --- usb/serial/ubsa.c  (revision 211066)
 +++ usb/serial/ubsa.c  (working copy)
 @@ -277,6 +277,7 @@
  DRIVER_MODULE(ubsa, uhub, ubsa_driver, ubsa_devclass, NULL, 0);
  MODULE_DEPEND(ubsa, ucom, 1, 1, 1);
  MODULE_DEPEND(ubsa, usb, 1, 1, 1);
 +MODULE_VERSION(ubsa, 1);
  
  static int
  ubsa_probe(device_t dev)
 Index: usb/input/atp.c
 ===================================================================
 --- usb/input/atp.c    (revision 211066)
 +++ usb/input/atp.c    (working copy)
 @@ -2222,3 +2222,4 @@
  
  DRIVER_MODULE(atp, uhub, atp_driver, atp_devclass, NULL, 0);
  MODULE_DEPEND(atp, usb, 1, 1, 1);
 +MODULE_VErSION(atp, 1);
 Index: usb/input/ums.c
 ===================================================================
 --- usb/input/ums.c    (revision 211066)
 +++ usb/input/ums.c    (working copy)
 @@ -1010,3 +1010,4 @@
  
  DRIVER_MODULE(ums, uhub, ums_driver, ums_devclass, NULL, 0);
  MODULE_DEPEND(ums, usb, 1, 1, 1);
 +MODULE_VERSION(ums, 1);
 Index: usb/input/ukbd.c
 ===================================================================
 --- usb/input/ukbd.c   (revision 211066)
 +++ usb/input/ukbd.c   (working copy)
 @@ -1887,3 +1887,4 @@
  
  DRIVER_MODULE(ukbd, uhub, ukbd_driver, ukbd_devclass, ukbd_driver_load, 0);
  MODULE_DEPEND(ukbd, usb, 1, 1, 1);
 +MODULE_VERSION(ukbd, 1);
 Index: usb/input/uep.c
 ===================================================================
 --- usb/input/uep.c    (revision 211066)
 +++ usb/input/uep.c    (working copy)
 @@ -439,3 +439,4 @@
  
  DRIVER_MODULE(uep, uhub, uep_driver, uep_devclass, NULL, NULL);
  MODULE_DEPEND(uep, usb, 1, 1, 1);
 +MODULE_VERSION(uep, 1);
 Index: usb/input/uhid.c
 ===================================================================
 --- usb/input/uhid.c   (revision 211066)
 +++ usb/input/uhid.c   (working copy)
 @@ -801,3 +801,4 @@
  
  DRIVER_MODULE(uhid, uhub, uhid_driver, uhid_devclass, NULL, 0);
  MODULE_DEPEND(uhid, usb, 1, 1, 1);
 +MODULE_VERSION(uhid, 1);
 Index: usb/storage/urio.c
 ===================================================================
 --- usb/storage/urio.c (revision 211066)
 +++ usb/storage/urio.c (working copy)
 @@ -197,6 +197,7 @@
  
  DRIVER_MODULE(urio, uhub, urio_driver, urio_devclass, NULL, 0);
  MODULE_DEPEND(urio, usb, 1, 1, 1);
 +MODULE_VERSION(urio, 1);
  
  static int
  urio_probe(device_t dev)
 Index: usb/storage/umass.c
 ===================================================================
 --- usb/storage/umass.c        (revision 211066)
 +++ usb/storage/umass.c        (working copy)
 @@ -715,6 +715,7 @@
  DRIVER_MODULE(umass, uhub, umass_driver, umass_devclass, NULL, 0);
  MODULE_DEPEND(umass, usb, 1, 1, 1);
  MODULE_DEPEND(umass, cam, 1, 1, 1);
 +MODULE_VERSION(umass, 1);
  
  /*
   * USB device probe/attach/detach
 Index: usb/usb_hub.c
 ===================================================================
 --- usb/usb_hub.c      (revision 211066)
 +++ usb/usb_hub.c      (working copy)
 @@ -170,6 +170,7 @@
  
  DRIVER_MODULE(uhub, usbus, uhub_driver, uhub_devclass, 0, 0);
  DRIVER_MODULE(uhub, uhub, uhub_driver, uhub_devclass, NULL, 0);
 +MODULE_VERSION(uhub, 1);
  
  static void
  uhub_intr_callback(struct usb_xfer *xfer, usb_error_t error)
 Index: usb/net/if_kue.c
 ===================================================================
 --- usb/net/if_kue.c   (revision 211066)
 +++ usb/net/if_kue.c   (working copy)
 @@ -215,6 +215,7 @@
  MODULE_DEPEND(kue, uether, 1, 1, 1);
  MODULE_DEPEND(kue, usb, 1, 1, 1);
  MODULE_DEPEND(kue, ether, 1, 1, 1);
 +MODULE_VERSION(kue, 1);
  
  static const struct usb_ether_methods kue_ue_methods = {
        .ue_attach_post = kue_attach_post,
 Index: usb/net/if_rue.c
 ===================================================================
 --- usb/net/if_rue.c   (revision 211066)
 +++ usb/net/if_rue.c   (working copy)
 @@ -213,6 +213,7 @@
  MODULE_DEPEND(rue, usb, 1, 1, 1);
  MODULE_DEPEND(rue, ether, 1, 1, 1);
  MODULE_DEPEND(rue, miibus, 1, 1, 1);
 +MODULE_VERSION(rue, 1);
  
  static const struct usb_ether_methods rue_ue_methods = {
        .ue_attach_post = rue_attach_post,
 Index: usb/net/if_udav.c
 ===================================================================
 --- usb/net/if_udav.c  (revision 211066)
 +++ usb/net/if_udav.c  (working copy)
 @@ -172,6 +172,7 @@
  MODULE_DEPEND(udav, usb, 1, 1, 1);
  MODULE_DEPEND(udav, ether, 1, 1, 1);
  MODULE_DEPEND(udav, miibus, 1, 1, 1);
 +MODULE_VERSION(udav, 1);
  
  static const struct usb_ether_methods udav_ue_methods = {
        .ue_attach_post = udav_attach_post,
 Index: usb/net/if_aue.c
 ===================================================================
 --- usb/net/if_aue.c   (revision 211066)
 +++ usb/net/if_aue.c   (working copy)
 @@ -281,6 +281,7 @@
  MODULE_DEPEND(aue, usb, 1, 1, 1);
  MODULE_DEPEND(aue, ether, 1, 1, 1);
  MODULE_DEPEND(aue, miibus, 1, 1, 1);
 +MODULE_VERSION(aue, 1);
  
  static const struct usb_ether_methods aue_ue_methods = {
        .ue_attach_post = aue_attach_post,
 Index: usb/net/if_cue.c
 ===================================================================
 --- usb/net/if_cue.c   (revision 211066)
 +++ usb/net/if_cue.c   (working copy)
 @@ -173,6 +173,7 @@
  MODULE_DEPEND(cue, uether, 1, 1, 1);
  MODULE_DEPEND(cue, usb, 1, 1, 1);
  MODULE_DEPEND(cue, ether, 1, 1, 1);
 +MODULE_VERSION(cue, 1);
  
  static const struct usb_ether_methods cue_ue_methods = {
        .ue_attach_post = cue_attach_post,
 Index: usb/net/if_axe.c
 ===================================================================
 --- usb/net/if_axe.c   (revision 211066)
 +++ usb/net/if_axe.c   (working copy)
 @@ -256,6 +256,7 @@
  MODULE_DEPEND(axe, usb, 1, 1, 1);
  MODULE_DEPEND(axe, ether, 1, 1, 1);
  MODULE_DEPEND(axe, miibus, 1, 1, 1);
 +MODULE_VERSION(axe, 1);
  
  static const struct usb_ether_methods axe_ue_methods = {
        .ue_attach_post = axe_attach_post,
 Index: usb/misc/ufm.c
 ===================================================================
 --- usb/misc/ufm.c     (revision 211066)
 +++ usb/misc/ufm.c     (working copy)
 @@ -117,6 +117,7 @@
  
  DRIVER_MODULE(ufm, uhub, ufm_driver, ufm_devclass, NULL, 0);
  MODULE_DEPEND(ufm, usb, 1, 1, 1);
 +MODULE_VERSION(ufm, 1);
  
  static int
  ufm_probe(device_t dev)
 Index: usb/misc/udbp.c
 ===================================================================
 --- usb/misc/udbp.c    (revision 211066)
 +++ usb/misc/udbp.c    (working copy)
 @@ -261,6 +261,7 @@
  DRIVER_MODULE(udbp, uhub, udbp_driver, udbp_devclass, udbp_modload, 0);
  MODULE_DEPEND(udbp, netgraph, NG_ABI_VERSION, NG_ABI_VERSION, NG_ABI_VERSION);
  MODULE_DEPEND(udbp, usb, 1, 1, 1);
 +MODULE_VERSION(udbp, 1);
  
  static int
  udbp_modload(module_t mod, int event, void *data)
 Index: usb/usb_compat_linux.c
 ===================================================================
 --- usb/usb_compat_linux.c     (revision 211066)
 +++ usb/usb_compat_linux.c     (working copy)
 @@ -122,6 +122,7 @@
  static devclass_t usb_linux_devclass;
  
  DRIVER_MODULE(usb_linux, uhub, usb_linux_driver, usb_linux_devclass, NULL, 0);
 +MODULE_VERSION(usb_linux, 1);
  
  /*------------------------------------------------------------------------*
   *    usb_linux_lookup_id
 Index: usb/wlan/if_uath.c
 ===================================================================
 --- usb/wlan/if_uath.c (revision 211066)
 +++ usb/wlan/if_uath.c (working copy)
 @@ -2892,3 +2892,4 @@
  DRIVER_MODULE(uath, uhub, uath_driver, uath_devclass, NULL, 0);
  MODULE_DEPEND(uath, wlan, 1, 1, 1);
  MODULE_DEPEND(uath, usb, 1, 1, 1);
 +MODULE_VERSION(uath, 1);
 Index: usb/wlan/if_urtw.c
 ===================================================================
 --- usb/wlan/if_urtw.c (revision 211066)
 +++ usb/wlan/if_urtw.c (working copy)
 @@ -4441,3 +4441,4 @@
  DRIVER_MODULE(urtw, uhub, urtw_driver, urtw_devclass, NULL, 0);
  MODULE_DEPEND(urtw, wlan, 1, 1, 1);
  MODULE_DEPEND(urtw, usb, 1, 1, 1);
 +MODULE_VERSION(urtw, 1);
 Index: usb/wlan/if_rum.c
 ===================================================================
 --- usb/wlan/if_rum.c  (revision 211066)
 +++ usb/wlan/if_rum.c  (working copy)
 @@ -139,9 +139,6 @@
  #undef RUM_DEV
  };
  
 -MODULE_DEPEND(rum, wlan, 1, 1, 1);
 -MODULE_DEPEND(rum, usb, 1, 1, 1);
 -
  static device_probe_t rum_match;
  static device_attach_t rum_attach;
  static device_detach_t rum_detach;
 @@ -2359,3 +2356,6 @@
  static devclass_t rum_devclass;
  
  DRIVER_MODULE(rum, uhub, rum_driver, rum_devclass, NULL, 0);
 +MODULE_DEPEND(rum, wlan, 1, 1, 1);
 +MODULE_DEPEND(rum, usb, 1, 1, 1);
 +MODULE_VERSION(rum, 1);
 Index: usb/wlan/if_ural.c
 ===================================================================
 --- usb/wlan/if_ural.c (revision 211066)
 +++ usb/wlan/if_ural.c (working copy)
 @@ -400,6 +400,7 @@
  DRIVER_MODULE(ural, uhub, ural_driver, ural_devclass, NULL, 0);
  MODULE_DEPEND(ural, usb, 1, 1, 1);
  MODULE_DEPEND(ural, wlan, 1, 1, 1);
 +MODULE_VERSION(ural, 1);
  
  static int
  ural_match(device_t self)
 Index: usb/wlan/if_run.c
 ===================================================================
 --- usb/wlan/if_run.c  (revision 211066)
 +++ usb/wlan/if_run.c  (working copy)
 @@ -294,10 +294,6 @@
  #undef RUN_DEV
  };
  
 -MODULE_DEPEND(run, wlan, 1, 1, 1);
 -MODULE_DEPEND(run, usb, 1, 1, 1);
 -MODULE_DEPEND(run, firmware, 1, 1, 1);
 -
  static device_probe_t run_match;
  static device_attach_t        run_attach;
  static device_detach_t        run_detach;
 @@ -4870,3 +4866,7 @@
  static devclass_t run_devclass;
  
  DRIVER_MODULE(run, uhub, run_driver, run_devclass, NULL, 0);
 +MODULE_DEPEND(run, wlan, 1, 1, 1);
 +MODULE_DEPEND(run, usb, 1, 1, 1);
 +MODULE_DEPEND(run, firmware, 1, 1, 1);
 +MODULE_VERSION(run, 1);
 Index: usb/wlan/if_zyd.c
 ===================================================================
 --- usb/wlan/if_zyd.c  (revision 211066)
 +++ usb/wlan/if_zyd.c  (working copy)
 @@ -2947,3 +2947,4 @@
  DRIVER_MODULE(zyd, uhub, zyd_driver, zyd_devclass, NULL, 0);
  MODULE_DEPEND(zyd, usb, 1, 1, 1);
  MODULE_DEPEND(zyd, wlan, 1, 1, 1);
 +MODULE_VERSION(zyd, 1);
 
 --X1bOJ3K7DJ5YkBrT--
_______________________________________________
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"

Reply via email to