Author: emaste
Date: Sun Feb  6 01:00:40 2011
New Revision: 218361
URL: http://svn.freebsd.org/changeset/base/218361

Log:
  MFC r218207:
  
    Revert part of r173264.  Both aac_ioctl_sendfib and aac_ioctl_send_raw_srb
    make use of the aac_ioctl_event callback, if acc_alloc_command fails.
    This can end up in an infinite loop in the while loop in
    aac_release_command.

Modified:
  stable/7/sys/dev/aac/aac.c
Directory Properties:
  stable/7/sys/   (props changed)
  stable/7/sys/cddl/contrib/opensolaris/   (props changed)
  stable/7/sys/contrib/dev/acpica/   (props changed)
  stable/7/sys/contrib/pf/   (props changed)

Modified: stable/7/sys/dev/aac/aac.c
==============================================================================
--- stable/7/sys/dev/aac/aac.c  Sat Feb  5 23:32:17 2011        (r218360)
+++ stable/7/sys/dev/aac/aac.c  Sun Feb  6 01:00:40 2011        (r218361)
@@ -1411,11 +1411,7 @@ aac_release_command(struct aac_command *
 
        aac_enqueue_free(cm);
 
-       /*
-        * Dequeue all events so that there's no risk of events getting
-        * stranded.
-        */
-       while ((event = TAILQ_FIRST(&sc->aac_ev_cmfree)) != NULL) {
+       if ((event = TAILQ_FIRST(&sc->aac_ev_cmfree)) != NULL) {
                TAILQ_REMOVE(&sc->aac_ev_cmfree, event, ev_links);
                event->ev_callback(sc, event, event->ev_arg);
        }
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to