svn commit: r345009 - head/sys/dev/pms/RefTisa/tisa/sassata/sas/ini

David Bright dab at FreeBSD.org
Mon Mar 11 14:26:46 UTC 2019


Author: dab
Date: Mon Mar 11 14:26:45 2019
New Revision: 345009
URL: https://svnweb.freebsd.org/changeset/base/345009

Log:
  Fix a scribbler in the PMS driver.
  
  The ESGL bit was left uninitialized when executing the REPORT LUNS
  ioctl. This could allow a zeroed data buffer to be treated as a
  scatter/gather list. The firmware would eventually walk past the end
  of the data buffer, potentially find what looked like a valid
  address/length pair, and write the result to semi-random memory.
  
  Obtained from:	Dell EMC Isilon
  MFC after:	1 week
  Sponsored by:	Dell EMC Isilon
  Differential Revision:	https://reviews.freebsd.org/D19398

Modified:
  head/sys/dev/pms/RefTisa/tisa/sassata/sas/ini/itdio.c

Modified: head/sys/dev/pms/RefTisa/tisa/sassata/sas/ini/itdio.c
==============================================================================
--- head/sys/dev/pms/RefTisa/tisa/sassata/sas/ini/itdio.c	Mon Mar 11 14:21:14 2019	(r345008)
+++ head/sys/dev/pms/RefTisa/tisa/sassata/sas/ini/itdio.c	Mon Mar 11 14:26:45 2019	(r345009)
@@ -1874,7 +1874,9 @@ tiNumOfLunIOCTLreq(
       
     agSSPFrame->dataLength = REPORT_LUN_LEN;
     agSSPFrame->agSgl.len =	sizeof(agsaSSPCmdInfoUnit_t);
-    
+    agSSPFrame->agSgl.extReserved = 0;
+    CLEAR_ESGL_EXTEND(agSSPFrame->agSgl.extReserved);
+
     status = saSSPStart(agRoot, agIORequest, 0, agDevHandle, agRequestType,agSASRequestBody,agNULL,
     										   &ossaSSPIoctlCompleted);
     if(status != AGSA_RC_SUCCESS)


More information about the svn-src-head mailing list