Author: luporl
Date: Tue Feb  5 18:16:14 2019
New Revision: 343791
URL: https://svnweb.freebsd.org/changeset/base/343791

Log:
  [ppc64] llan: fix fatal kernel trap when system is low on memory
  
  When running several builders in parallel, on QEMU, with 8GB of
  memory, a fatal kernel trap (0x300 (data storage interrupt))
  caused by llan driver is sometimes observed, when the system
  starts to run out of swap space.
  
  This happens because, at llan_intr(), a phyp call to add a
  logical LAN buffer is always made when llan_add_rxbuf() fails,
  even if it fails to allocate a new buffer.
  
  PR:   235489
  Reviewed by:  jhibbits
  Differential Revision:        https://reviews.freebsd.org/D19084

Modified:
  head/sys/powerpc/pseries/phyp_llan.c

Modified: head/sys/powerpc/pseries/phyp_llan.c
==============================================================================
--- head/sys/powerpc/pseries/phyp_llan.c        Tue Feb  5 18:11:15 2019        
(r343790)
+++ head/sys/powerpc/pseries/phyp_llan.c        Tue Feb  5 18:16:14 2019        
(r343791)
@@ -386,8 +386,6 @@ restart:
                /* llan_add_rxbuf does DMA sync and unload as well as requeue */
                if (llan_add_rxbuf(sc, rx) != 0) {
                        if_inc_counter(sc->ifp, IFCOUNTER_IERRORS, 1);
-                       phyp_hcall(H_ADD_LOGICAL_LAN_BUFFER, sc->unit,
-                           rx->rx_bufdesc);
                        continue;
                }
 
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to