From: Yuusuke Ashizuka <ashiduka@xxxxxxxxxxx> Date: Thu, 20 Aug 2020 18:43:07 +0900 > When this driver is built as a module, I cannot rmmod it after insmoding > it. > This is because that this driver calls ravb_mdio_init() at the time of > probe, and module->refcnt is incremented by alloc_mdio_bitbang() called > after that. > Therefore, even if ifup is not performed, the driver is in use and rmmod > cannot be performed. > > $ lsmod > Module Size Used by > ravb 40960 1 > $ rmmod ravb > rmmod: ERROR: Module ravb is in use > > Call ravb_mdio_init() at open and free_mdio_bitbang() at close, thereby > rmmod is possible in the ifdown state. > > Fixes: c156633f1353 ("Renesas Ethernet AVB driver proper") > Signed-off-by: Yuusuke Ashizuka <ashiduka@xxxxxxxxxxx> > Reviewed-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxx> Applied and queued up for -stable, thanks.