<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/sys/dev/aac, branch release/9.2.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F9.2.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F9.2.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2013-08-09T18:57:18Z</updated>
<entry>
<title>MFC: r254004</title>
<updated>2013-08-09T18:57:18Z</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2013-08-09T18:57:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=684428cf6c31ce103a056eb18fe4d6bf2529c0db'/>
<id>urn:sha1:684428cf6c31ce103a056eb18fe4d6bf2529c0db</id>
<content type='text'>
As it turns out, MSIs are broken with 2820SA so introduce an AAC_FLAGS_NOMSI
quirk and apply it to these controllers [1]. The same problem was reported
for 2230S, in which case it wasn't actually clear whether the culprit is the
controller or the mainboard, though. In order to be on the safe side, flag
MSIs as being broken with the latter type of controller as well. Given that
these are the only reports of MSI-related breakage with aac(4) so far and
OSes like OpenSolaris unconditionally employ MSIs for all adapters of this
family, however, it doesn't seem warranted to generally disable the use of
MSIs in aac(4).
While at it, simplify the MSI allocation logic a bit; there's no need to
check for the presence of the MSI capability on our own as pci_alloc_msi(9)
will just fail when these kind of interrupts are not available.
Reported and tested by: David Boyd [1]

Approved by:	re (kib)
</content>
</entry>
<entry>
<title>MFC r249468:</title>
<updated>2013-07-08T15:54:38Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2013-07-08T15:54:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=3e4e5885166ea909e8b4fb152427c50e5d311a22'/>
<id>urn:sha1:3e4e5885166ea909e8b4fb152427c50e5d311a22</id>
<content type='text'>
Stop abusing xpt_periph in random plases that really have no periph related
to CCB, for example, bus scanning.  NULL value is fine in such cases and it
is correctly logged in debug messages as "noperiph".  If at some point we
need some real XPT periphs (alike to pmpX now), quite likely they will be
per-bus, and not a single global instance as xpt_periph now.
</content>
</entry>
<entry>
<title>MFC: r242823</title>
<updated>2013-06-18T15:02:53Z</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2013-06-18T15:02:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=4c1234dd1507dbef24bf1c4be5de8a167329b257'/>
<id>urn:sha1:4c1234dd1507dbef24bf1c4be5de8a167329b257</id>
<content type='text'>
Give panic format string to pacify clang warning.
</content>
</entry>
<entry>
<title>MFC: r251116</title>
<updated>2013-06-18T14:40:21Z</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2013-06-18T14:40:21Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=6b971bf18c0259112b8fb07a5e36740f00b28312'/>
<id>urn:sha1:6b971bf18c0259112b8fb07a5e36740f00b28312</id>
<content type='text'>
Allow unmapped I/O via aacd(4). It shouldn't be too hard to add the
same support for aacp(4), I'm lacking the necessary hardware for
testing, though.
</content>
</entry>
<entry>
<title>Big MFC of the physbio changes necessary for unmapped I/O.  These changes</title>
<updated>2013-06-18T00:36:53Z</updated>
<author>
<name>Scott Long</name>
<email>scottl@FreeBSD.org</email>
</author>
<published>2013-06-18T00:36:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=039e422c063977ba9073fd2c93883dd8a5a36d48'/>
<id>urn:sha1:039e422c063977ba9073fd2c93883dd8a5a36d48</id>
<content type='text'>
have been in production at Netflix for several months with significant
success.

MFC r246713:

Reform the busdma API so that new types may be added without modifying
every architecture's busdma_machdep.c.  It is done by unifying the
bus_dmamap_load_buffer() routines so that they may be called from MI
code.  The MD busdma is then given a chance to do any final processing
in the complete() callback.

MFC r249538:
Some compilers issue a warning when wider integer is casted to narrow
pointer.  Supposedly shut down the warning by casting through
uintptr_t.

MFC r251479:
Simplify the checking of flags for cam_periph_mapmem().  This gets rid of
a lot of code redundancy and grossness at very minor expense.

MFC r251837:
MFC r251842:
Add infrastructure for doing compatibility shims, as has been sorely
needed for the last 10 years.  Far too much of the internal API is
exposed, and every small adjustment causes applications to stop working.
To kick this off, bump the API version to 0x17 as should have been done
with r246713, but add shims to compensate.  Thanks to the shims, there
should be no visible change in application behavior.

Submitted by:	kib, jeffr
Approved by:	kib
Obtained from:	Netflix
</content>
</entry>
<entry>
<title>MFC: r251115</title>
<updated>2013-06-09T12:46:41Z</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2013-06-09T12:46:41Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e67db56db92603fbef7f9d7a588a7320e78681de'/>
<id>urn:sha1:e67db56db92603fbef7f9d7a588a7320e78681de</id>
<content type='text'>
- Remove pointless returns.
- Make cm_data a void pointer and cm_flags unsigned as appropriate.
</content>
</entry>
<entry>
<title>MFC: r247570, r247591</title>
<updated>2013-05-28T20:58:57Z</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2013-05-28T20:58:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=f3b314829f8fdb1f61417e098b56dcf1dd03b576'/>
<id>urn:sha1:f3b314829f8fdb1f61417e098b56dcf1dd03b576</id>
<content type='text'>
- Make tables, device ID strings etc const. This includes #ifdef'ing 0
  aac_command_status_table, which is actually unused since r111532.
  While at it, make aac_if a pointer to the now const interface tables
  instead of copying them over to the softc (this alone already reduces the
  size of aac.ko on amd64 by ~1 KiB).
- Remove redundant softc members.
- Use DEVMETHOD_END.
- Use NULL instead of 0 for pointers.
- Remove redundant bzero(9)'ing of the softc.
- Use pci_enable_busmaster(9) instead of duplicating it.
- Remove redundant checking for PCIM_CMD_MEMEN (resource allocation will
  just fail).
- Canonicalize the error messages in case of resource allocation failures.
- Add support for using MSI instead of INTx, controllable via the tunable
  hw.aac.enable_msi (defaulting to on).
</content>
</entry>
<entry>
<title>MFC r227293 (by ed):</title>
<updated>2013-04-05T08:22:11Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2013-04-05T08:22:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=1139d398ea93668ee65ae02b8ceab630ca9e5487'/>
<id>urn:sha1:1139d398ea93668ee65ae02b8ceab630ca9e5487</id>
<content type='text'>
Mark MALLOC_DEFINEs static that have no corresponding MALLOC_DECLAREs.

This means that their use is restricted to a single C file.
</content>
</entry>
<entry>
<title>MFC: r227309 (partial)</title>
<updated>2013-03-09T02:36:32Z</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2013-03-09T02:36:32Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=7b1b32ed4582e7bcdd416c4718d0d79ebaea192d'/>
<id>urn:sha1:7b1b32ed4582e7bcdd416c4718d0d79ebaea192d</id>
<content type='text'>
Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs.

The SYSCTL_NODE macro defines a list that stores all child-elements of
that node. If there's no SYSCTL_DECL macro anywhere else, there's no
reason why it shouldn't be static.
</content>
</entry>
<entry>
<title>MFC r240923</title>
<updated>2013-03-08T19:01:26Z</updated>
<author>
<name>Ryan Stone</name>
<email>rstone@FreeBSD.org</email>
</author>
<published>2013-03-08T19:01:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=287e8223279a531cb83e8e58ea2fba842e522c70'/>
<id>urn:sha1:287e8223279a531cb83e8e58ea2fba842e522c70</id>
<content type='text'>
  Some aac(4) adapters will always report that a direct access device is
  offline in response to a INQUIRY command that does not retreive vital
  product data(I personally have observed the behaviour on an Adaptec 2405
  and a 5805).  Force the peripheral qualifier to "connected" so that upper
  layers correctly recognize that a disk is present.

  This bug was uncovered by r216236.  Prior to that fix, aac(4) was
  accidentally clearing the peripheral qualifier for all inquiry commands.

  This fixes an issue where passthrough devices were not created for
  disks behind aac(4) controllers suffering from the bug.  I have
  verified that if a disk is not present that we still properly detect
  that and not create the passthrough device.

  Sponsored by: Sandvine Incorporated
  MFC after:    1 week
</content>
</entry>
</feed>
