Author: avg
Date: Thu Jun  4 13:18:21 2020
New Revision: 361788
URL: https://svnweb.freebsd.org/changeset/base/361788

Log:
  superio: do not assume that current LDN cannot change after config exit
  
  That assumption should be true when superio(4) uses the hardware
  exlusively.  But it turns out to not hold on some real systems.
  So, err on the side of correctness rather than performance.
  Clear current_ldn in sio_conf_exit.
  
  Reported by:  bz
  Tested by:    bz
  MFC after:    1 week

Modified:
  head/sys/dev/superio/superio.c

Modified: head/sys/dev/superio/superio.c
==============================================================================
--- head/sys/dev/superio/superio.c      Thu Jun  4 13:06:49 2020        
(r361787)
+++ head/sys/dev/superio/superio.c      Thu Jun  4 13:18:21 2020        
(r361788)
@@ -190,6 +190,7 @@ static void
 sio_conf_exit(struct siosc *sc)
 {
        sc->methods->exit(sc->io_res, sc->io_port);
+       sc->current_ldn = 0xff;
        mtx_unlock(&sc->conf_lock);
 }
 
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to