[Info-vax] Reloading device drivers on x86-64 VMS
Simon Clubley
clubley at remove_me.eisner.decus.org-Earth.UFP
Sun Mar 8 07:37:28 EDT 2015
On 2015-03-07, Bob Gezelter <gezelter at rlgsc.com> wrote:
>
> I agree with Simon and Paul, with the limitation that the capability is not
> generic or guaranteed, as noted by Hoff.
>
> In doing extensive driver-level work on RSX, the ability to quiesce and
> reload a driver without a reboot was vital to achieving progress. It always had
> the limitation that you needed a quiescent device, the data structures were
> compatible, and there was always the degree of risk that a crash could ensue.
> That said, it was extremely helpful at speeding progress.
>
On Linux it's slightly different.
You can't force an unload of a driver in active use with I/O channels
open (well you can with the rmmod -f option, but the man page calls it
"extremely dangerous") but there's no real requirement the driver data
structures are compatible if you do a normal unload and reload as you
can tear down those structures during the routine in your driver which
runs when you are unloaded.
rmmod also has the -w option to allow existing users of the driver to
complete while disallowing any new users of the driver.
If your driver unload routine can shut down the hardware in a clean
controlled manner then driver unloading and reloading is something
which is fully supported and documented on Linux.
Simon.
--
Simon Clubley, clubley at remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980s technology to a 21st century world
More information about the Info-vax
mailing list