Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Jan 2019 23:21:02 +0000 (UTC)
From:      Conrad Meyer <cem@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r343125 - head/sys/dev/ioat
Message-ID:  <201901172321.x0HNL2f4036088@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: cem
Date: Thu Jan 17 23:21:02 2019
New Revision: 343125
URL: https://svnweb.freebsd.org/changeset/base/343125

Log:
  ioat(4): Set __result_use_check on ioat_acquire_reserve
  
  Even M_WAITOK callers must check for failure.  For example, if the device is
  quiescing, either due to automatic error-recovery induced reset, or due to
  administrative detach, the routine will return ENXIO and the acquire
  reference will not be held.  So, there is no mode in which it is safe to
  assume the routine succeeds without checking.
  
  Sponsored by:	Dell EMC Isilon

Modified:
  head/sys/dev/ioat/ioat.h

Modified: head/sys/dev/ioat/ioat.h
==============================================================================
--- head/sys/dev/ioat/ioat.h	Thu Jan 17 22:00:02 2019	(r343124)
+++ head/sys/dev/ioat/ioat.h	Thu Jan 17 23:21:02 2019	(r343125)
@@ -173,7 +173,8 @@ void ioat_release(bus_dmaengine_t dmaengine);
  *
  * On failure, the caller does not hold the dmaengine.
  */
-int ioat_acquire_reserve(bus_dmaengine_t dmaengine, unsigned n, int mflags);
+int ioat_acquire_reserve(bus_dmaengine_t dmaengine, unsigned n, int mflags)
+    __result_use_check;
 
 /*
  * Issue a blockfill operation.  The 64-bit pattern 'fillpattern' is written to



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201901172321.x0HNL2f4036088>