<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/smartpqi, branch releng/14.3</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>smartpqi(4): Fix a typo in a source code comment</title>
<updated>2025-01-29T05:55:53+00:00</updated>
<author>
<name>Gordon Bergling</name>
<email>gbe@FreeBSD.org</email>
</author>
<published>2025-01-26T12:09:34+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=b77fe5ee308712793c2ca7b423cc411fd169829e'/>
<id>b77fe5ee308712793c2ca7b423cc411fd169829e</id>
<content type='text'>
- s/isnt/isn’t/

(cherry picked from commit b0c318efdde7c1b059b26f1ab6d4c75e838b6652)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- s/isnt/isn’t/

(cherry picked from commit b0c318efdde7c1b059b26f1ab6d4c75e838b6652)
</pre>
</div>
</content>
</entry>
<entry>
<title>smartpqi: Change alignment for dma tags</title>
<updated>2023-10-19T21:21:11+00:00</updated>
<author>
<name>John Hall</name>
<email>john.hall@microchip.com</email>
</author>
<published>2023-10-19T03:25:32+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=01619a8fafcfd99d1811b2c14a92bac1a48c6d31'/>
<id>01619a8fafcfd99d1811b2c14a92bac1a48c6d31</id>
<content type='text'>
Problem: Under certain I/O conditions, a program doing large block disk
reads can cause a controller to crash.

Root Cause: The SCSI read request and destination address in the BDMA
descriptor is incorrect, causing the BDMA engine in the controller to
assert.

Fix: Change the alignment for creating bus_dma_tags in the driver from
PAGE_SIZE (4k) to 1, which allows the controller to manage it's own
address range for BDMA transactions.

Risk: Medium

Exposure: This reverts a change first made to support NVMe drives on
Excalibur. At that time a 4k alignment was necessary. This no longer
seems to be the case.

PR: 259541
Reported by: Ka Ho Ng &lt;khng@freebsd.org&gt;
Reviewed by: imp
Differential Revision:	https://reviews.freebsd.org/D41619

(cherry picked from commit f07b267d8cc87e88be3c78aa69504b5ebc6571ee)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: Under certain I/O conditions, a program doing large block disk
reads can cause a controller to crash.

Root Cause: The SCSI read request and destination address in the BDMA
descriptor is incorrect, causing the BDMA engine in the controller to
assert.

Fix: Change the alignment for creating bus_dma_tags in the driver from
PAGE_SIZE (4k) to 1, which allows the controller to manage it's own
address range for BDMA transactions.

Risk: Medium

Exposure: This reverts a change first made to support NVMe drives on
Excalibur. At that time a 4k alignment was necessary. This no longer
seems to be the case.

PR: 259541
Reported by: Ka Ho Ng &lt;khng@freebsd.org&gt;
Reviewed by: imp
Differential Revision:	https://reviews.freebsd.org/D41619

(cherry picked from commit f07b267d8cc87e88be3c78aa69504b5ebc6571ee)
</pre>
</div>
</content>
</entry>
<entry>
<title>smartpqi: Drop spinlock before freeing memory</title>
<updated>2023-10-19T21:21:11+00:00</updated>
<author>
<name>John F. Carr</name>
<email>jfc@mit.edu</email>
</author>
<published>2023-10-19T03:25:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=1ad148a68ae74f3372b12b6e66fadf5ade384144'/>
<id>1ad148a68ae74f3372b12b6e66fadf5ade384144</id>
<content type='text'>
pqisrc_free_device frees the device softc with the os spinlock
held. This causes crashes when devices are removed because the memory
free might sleep (which is prohibited with spin locks held). Drop the
spinlock before releasing the memory.

MFC After: 2 days
PR: 273289
Reviewed by: imp

(cherry picked from commit b064a4c9eed5b1dd2a40fc4fd2cb7e738b681547)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
pqisrc_free_device frees the device softc with the os spinlock
held. This causes crashes when devices are removed because the memory
free might sleep (which is prohibited with spin locks held). Drop the
spinlock before releasing the memory.

MFC After: 2 days
PR: 273289
Reviewed by: imp

(cherry picked from commit b064a4c9eed5b1dd2a40fc4fd2cb7e738b681547)
</pre>
</div>
</content>
</entry>
<entry>
<title>smartpqi: Fix build issues highlighted by gcc12</title>
<updated>2023-09-17T14:34:40+00:00</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-08-25T15:45:28+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=67e1423099ab55de9d3b18a4ad54b1c623383d42'/>
<id>67e1423099ab55de9d3b18a4ad54b1c623383d42</id>
<content type='text'>
Make inline functions defined in a header file as static inline.
Mark inline functions used only in the compilation unit they are
defined in as merely static (the compiler can figure out it these
days).

Sponsored by:		Netflix

(cherry picked from commit 2f06449d64298fe508e3c585b45effd69a72d696)

Approved by: re (cperciva@)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make inline functions defined in a header file as static inline.
Mark inline functions used only in the compilation unit they are
defined in as merely static (the compiler can figure out it these
days).

Sponsored by:		Netflix

(cherry picked from commit 2f06449d64298fe508e3c585b45effd69a72d696)

Approved by: re (cperciva@)
</pre>
</div>
</content>
</entry>
<entry>
<title>smartpqi: update to version 4410.0.2005</title>
<updated>2023-08-24T21:25:09+00:00</updated>
<author>
<name>John Hall</name>
<email>john.hall@microchip.com</email>
</author>
<published>2023-08-24T21:18:16+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=7ea28254ec5376b5deb86c136e1838d0134dbb22'/>
<id>7ea28254ec5376b5deb86c136e1838d0134dbb22</id>
<content type='text'>
This updates the smartpqi driver to Microsemi's latest code. This will
be the driver for FreeBSD 14 (with updates), but no MFC is planned.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D41550
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This updates the smartpqi driver to Microsemi's latest code. This will
be the driver for FreeBSD 14 (with updates), but no MFC is planned.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D41550
</pre>
</div>
</content>
</entry>
<entry>
<title>sys: Remove $FreeBSD$: one-line .c comment pattern</title>
<updated>2023-08-16T17:54:24+00:00</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-08-16T17:54:24+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=71625ec9ad2a9bc8c09784fbd23b759830e0ee5f'/>
<id>71625ec9ad2a9bc8c09784fbd23b759830e0ee5f</id>
<content type='text'>
Remove /^/[*/]\s*\$FreeBSD\$.*\n/
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove /^/[*/]\s*\$FreeBSD\$.*\n/
</pre>
</div>
</content>
</entry>
<entry>
<title>smartpqi(4): Fix two typos in kernel error messages</title>
<updated>2022-10-25T11:17:20+00:00</updated>
<author>
<name>Gordon Bergling</name>
<email>gbe@FreeBSD.org</email>
</author>
<published>2022-10-25T11:17:20+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=d53e97bb5490cdedb37bd4e25646c5379b196c93'/>
<id>d53e97bb5490cdedb37bd4e25646c5379b196c93</id>
<content type='text'>
- s/runnning/running/

MFC after:	2 weeks
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- s/runnning/running/

MFC after:	2 weeks
</pre>
</div>
</content>
</entry>
<entry>
<title>Adjust check_struct_sizes() definition to avoid clang 15 warning</title>
<updated>2022-07-26T17:59:55+00:00</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2022-07-26T11:20:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=fb1c21688c5702d0bc50d67359dee4af12d0c693'/>
<id>fb1c21688c5702d0bc50d67359dee4af12d0c693</id>
<content type='text'>
With clang 15, the following -Werror warning is produced:

    sys/dev/smartpqi/smartpqi_helper.c:374:19: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
    check_struct_sizes()
                      ^
                       void

This is because check_struct_sizes() is declared with a (void) argument
list, but defined with an empty argument list. Make the definition match
the declaration.

MFC after:	3 days
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With clang 15, the following -Werror warning is produced:

    sys/dev/smartpqi/smartpqi_helper.c:374:19: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
    check_struct_sizes()
                      ^
                       void

This is because check_struct_sizes() is declared with a (void) argument
list, but defined with an empty argument list. Make the definition match
the declaration.

MFC after:	3 days
</pre>
</div>
</content>
</entry>
<entry>
<title>smartpqi: Allocate DMA memory NOWAIT</title>
<updated>2022-06-27T17:06:31+00:00</updated>
<author>
<name>Yuri</name>
<email>yuri@aetern.org</email>
</author>
<published>2022-06-27T15:48:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=f4497b9f77795ece4d2f2fad4c0329d82d53bc63'/>
<id>f4497b9f77795ece4d2f2fad4c0329d82d53bc63</id>
<content type='text'>
We're not allowed to wait in this allocation path, so allocate the
memory NOWAIT instead of WAITOK. The code already copes with the
failures that may result, so no additional code is needed.

PR: 263008
Reviewed by: markj, Scott Benesh at Microsemi, imp
Differential Revision: https://reviews.freebsd.org/D35601
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We're not allowed to wait in this allocation path, so allocate the
memory NOWAIT instead of WAITOK. The code already copes with the
failures that may result, so no additional code is needed.

PR: 263008
Reviewed by: markj, Scott Benesh at Microsemi, imp
Differential Revision: https://reviews.freebsd.org/D35601
</pre>
</div>
</content>
</entry>
<entry>
<title>smartpqi: Remove unused devclass argument to DRIVER_MODULE.</title>
<updated>2022-05-06T22:46:59+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2022-05-06T22:46:59+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=07127ef86f270ac556e668a601f49fa433577980'/>
<id>07127ef86f270ac556e668a601f49fa433577980</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
