<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/ipmi, branch release/12.3.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F12.3.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F12.3.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2021-09-29T00:44:02Z</updated>
<entry>
<title>ipmi(4): Limit maximum watchdog pre-timeout interval.</title>
<updated>2021-09-29T00:44:02Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2021-09-15T01:06:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5f6b026eee3201025a02cf81ca41c225d56b99d2'/>
<id>urn:sha1:5f6b026eee3201025a02cf81ca41c225d56b99d2</id>
<content type='text'>
Previous code by default setting pre-timeout interval to 120 seconds
made impossible to set timeout interval below that, resulting in error
0xcc (Invalid data field in Request) at least on Supermicro boards.

To fix that limit maximum pre-timeout interval to ~1/4 of the timeout
interval, that sounds like a reasonable default: not too short to fire
too late, but also not too long to give many false reports.

MFC after:	2 weeks

(cherry picked from commit 6c2d4404161aa2bac1c7992afbf5a763f1a6f66e)
</content>
</entry>
<entry>
<title>ipmi(4): Add more watchdog error checks.</title>
<updated>2021-08-13T01:19:13Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2021-07-30T03:39:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8e6bcb7f56f12ca2d237b4684223ebb5c5d9092c'/>
<id>urn:sha1:8e6bcb7f56f12ca2d237b4684223ebb5c5d9092c</id>
<content type='text'>
Add request submission status checks before checking req-&gt;ir_compcode,
otherwise it may be zero just because of initialization.

Add checks for req-&gt;ir_compcode errors in ipmi_reset_watchdog() and
ipmi_set_watchdog().  In first case explicitly check for 0x80, which
means timer was not previously set, that I found happening after BMC
cold reset.  This change makes watchdog timer to recover instead of
permanently ignoring reset errors after BMC reset or upgraded.

MFC after:	2 weeks
Sponsored by:   iXsystems, Inc.

(cherry picked from commit 9d3b47abbba74830661e90206cc0f692b159c432)
</content>
</entry>
<entry>
<title>MFC r359937:</title>
<updated>2020-04-28T17:59:37Z</updated>
<author>
<name>Brooks Davis</name>
<email>brooks@FreeBSD.org</email>
</author>
<published>2020-04-28T17:59:37Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=18fec7394da653a176be797ebcdd1eaf55897f9d'/>
<id>urn:sha1:18fec7394da653a176be797ebcdd1eaf55897f9d</id>
<content type='text'>
Centralize compatability translation macros.

Copy the CP, PTRIN, etc macros from freebsd32.h into a sys/abi_compat.h
and replace existing definitation with includes where required. This
eliminates duplicate code and allows Linux and FreeBSD compatability
headers to be included in the same files.

Obtained from:	CheriBSD
Sponsored by:	DARPA
Differential Revision:	https://reviews.freebsd.org/D24275
</content>
</entry>
<entry>
<title>MFC r348996 (by jtl):</title>
<updated>2020-04-21T16:52:56Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2020-04-21T16:52:56Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=171ca955246f4ac760d5c86333657c5cafb6ac8c'/>
<id>urn:sha1:171ca955246f4ac760d5c86333657c5cafb6ac8c</id>
<content type='text'>
The current IPMI KCS code is waiting 100us for all transitions (roughly
between each byte either sent or received). However, most transitions
actually complete in 2-3 microseconds.

By polling the status register with a delay of 4us with exponential
backoff, the performance of most IPMI operations is significantly
improved:
  - A BMC update on a Supermicro x9 or x11 motherboard goes from ~1 hour
    to ~6-8 minutes.
  - An ipmitool sensor list time improves by a factor of 4.

Testing showed no significant improvements on a modern server by using
a lower delay.

The changes should also generally reduce the total amount of CPU or
I/O bandwidth used for a given IPMI operation.
</content>
</entry>
<entry>
<title>Fix a module Makefile error on amd64 so the IPMI HW interfaces are built.</title>
<updated>2018-08-16T15:59:02Z</updated>
<author>
<name>Doug Ambrisko</name>
<email>ambrisko@FreeBSD.org</email>
</author>
<published>2018-08-16T15:59:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3991dbf3fa9262cfe379ef3005e0e8ec7271e9eb'/>
<id>urn:sha1:3991dbf3fa9262cfe379ef3005e0e8ec7271e9eb</id>
<content type='text'>
When the module is being unloaded and no HW interfaces were created don't
clean up.  This was exposed by the amd64 module build issue.
</content>
</entry>
<entry>
<title>ipmi/opal: Enable polled mode and proper callback</title>
<updated>2018-08-12T20:33:55Z</updated>
<author>
<name>Justin Hibbits</name>
<email>jhibbits@FreeBSD.org</email>
</author>
<published>2018-08-12T20:33:55Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=54318d2a6ab242567a0d8074faa44774c5b9a020'/>
<id>urn:sha1:54318d2a6ab242567a0d8074faa44774c5b9a020</id>
<content type='text'>
Fix a NULL dereference that would occur any time an ioctl() was done, due to a
missing ipmi_enqueue_request callback.  Just use the default for now, until we
decide to properly enable IPMI interrupts.

Reported by:	kbowling
</content>
</entry>
<entry>
<title>Support building IPMI as a module on powerpc64</title>
<updated>2018-07-25T18:58:57Z</updated>
<author>
<name>Justin Hibbits</name>
<email>jhibbits@FreeBSD.org</email>
</author>
<published>2018-07-25T18:58:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0bf0bb832fa8d61421401b5f148b3ac9645ceeaf'/>
<id>urn:sha1:0bf0bb832fa8d61421401b5f148b3ac9645ceeaf</id>
<content type='text'>
This still only supports IPMI via OPAL on powerpc64, but now it can be tested
with a GENERIC kernel.
</content>
</entry>
<entry>
<title>In cases where an application issues certain IPMI commands at a high</title>
<updated>2018-04-06T15:15:21Z</updated>
<author>
<name>Jonathan T. Looney</name>
<email>jtl@FreeBSD.org</email>
</author>
<published>2018-04-06T15:15:21Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=74800c5a08367dff4ffe79bd4d20f76dc7d40928'/>
<id>urn:sha1:74800c5a08367dff4ffe79bd4d20f76dc7d40928</id>
<content type='text'>
enough rate, the IPMI code can print large numbers of messages to the
console, such as:
  ipmi0: KCS: Failed to read completion code
  ipmi0: KCS error: ff
  ipmi0: KCS: Failed to read completion code
  ipmi0: KCS error: ff

These seem to be innocuous from a system standpoint, and the user-
space code can deal with the failures. Therefore, suppress printing
these messages to the console unless bootverbose is enabled.

Obtained from:	Netflix, Inc.
</content>
</entry>
<entry>
<title>sys/dev: further adoption of SPDX licensing ID tags.</title>
<updated>2017-11-27T14:52:40Z</updated>
<author>
<name>Pedro F. Giffuni</name>
<email>pfg@FreeBSD.org</email>
</author>
<published>2017-11-27T14:52:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=718cf2ccb9956613756ab15d7a0e28f2c8e91cab'/>
<id>urn:sha1:718cf2ccb9956613756ab15d7a0e28f2c8e91cab</id>
<content type='text'>
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
</content>
</entry>
<entry>
<title>As a follow-on to r325378, make the shutdown timer default to 0 as well.</title>
<updated>2017-11-05T05:05:18Z</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>2017-11-05T05:05:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9ee3ea71b3a555ea42befa1780a72d73586be26f'/>
<id>urn:sha1:9ee3ea71b3a555ea42befa1780a72d73586be26f</id>
<content type='text'>
Otherwise an orderly shutdown will initiate a watchdog that will cause
a 7 minute delayed reboot *by default*,  In the freebsd.org cluster's case
this often worked out be a surprise reboot a minute or two after the
machine came back up.
</content>
</entry>
</feed>
