<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test/sys/dev/mpr, branch main</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test/atom?h=main</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/'/>
<updated>2020-11-28T12:12:51Z</updated>
<entry>
<title>Make MAXPHYS tunable.  Bump MAXPHYS to 1M.</title>
<updated>2020-11-28T12:12:51Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2020-11-28T12:12:51Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=cd8537910406e68d4719136a5b0cf6d23bb1b23b'/>
<id>urn:sha1:cd8537910406e68d4719136a5b0cf6d23bb1b23b</id>
<content type='text'>
Replace MAXPHYS by runtime variable maxphys. It is initialized from
MAXPHYS by default, but can be also adjusted with the tunable kern.maxphys.

Make b_pages[] array in struct buf flexible.  Size b_pages[] for buffer
cache buffers exactly to atop(maxbcachebuf) (currently it is sized to
atop(MAXPHYS)), and b_pages[] for pbufs is sized to atop(maxphys) + 1.
The +1 for pbufs allow several pbuf consumers, among them vmapbuf(),
to use unaligned buffers still sized to maxphys, esp. when such
buffers come from userspace (*).  Overall, we save significant amount
of otherwise wasted memory in b_pages[] for buffer cache buffers,
while bumping MAXPHYS to desired high value.

Eliminate all direct uses of the MAXPHYS constant in kernel and driver
sources, except a place which initialize maxphys.  Some random (and
arguably weird) uses of MAXPHYS, e.g. in linuxolator, are converted
straight.  Some drivers, which use MAXPHYS to size embeded structures,
get private MAXPHYS-like constant; their convertion is out of scope
for this work.

Changes to cam/, dev/ahci, dev/ata, dev/mpr, dev/mpt, dev/mvs,
dev/siis, where either submitted by, or based on changes by mav.

Suggested by: mav (*)
Reviewed by:	imp, mav, imp, mckusick, scottl (intermediate versions)
Tested by:	pho
Sponsored by:	The FreeBSD Foundation
Differential revision:	https://reviews.freebsd.org/D27225
</content>
</entry>
<entry>
<title>Introduce support of SCSI Command Priority.</title>
<updated>2020-10-25T19:34:02Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2020-10-25T19:34:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=883649681528398dc227778882830fc9da0ce58c'/>
<id>urn:sha1:883649681528398dc227778882830fc9da0ce58c</id>
<content type='text'>
SAM-3 specification introduced concept of Task Priority, that was renamed
to Command Priority in SAM-4, and supported by all modern SCSI transports.
It provides 15 levels of relative priorities: 1 - highest, 15 - lowest and
0 - default.  SAT specification for SATA devices translates priorities 1-3
into NCQ high priority.

This change adds new "priority" field into empty spots of struct ccb_scsiio
and struct ccb_accept_tio of CAM and struct ctl_scsiio of CTL.  Respective
support is added into iscsi(4), isp(4), mpr(4), mps(4) and ocs_fc(4) drivers
for both initiator and where applicable target roles.  Minimal support was
added to CTL to receive the priority value from different frontends, pass it
between HA controllers and report in few places.

This patch does not add consumers of this functionality, so nothing should
really change yet, since the field is still set to 0 (default) on initiator
and not actively used on target.  Those are to be implemented separately.

I've confirmed priority working on WD Red SATA disks connected via mpr(4)
and properly transferred to CTL target via iscsi(4), isp(4) and ocs_fc(4).

While there, added missing tag_action support to ocs_fc(4) initiator role.

MFC after:	1 month
Relnotes:	yes
Sponsored by:	iXsystems, Inc.
</content>
</entry>
<entry>
<title>Bring the request_descriptor union into harmony internally.  No</title>
<updated>2020-10-13T14:10:49Z</updated>
<author>
<name>Scott Long</name>
<email>scottl@FreeBSD.org</email>
</author>
<published>2020-10-13T14:10:49Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=4bc604dcda3e3dad9f4fe6971d3a57fbf6d68f3f'/>
<id>urn:sha1:4bc604dcda3e3dad9f4fe6971d3a57fbf6d68f3f</id>
<content type='text'>
functional change.
</content>
</entry>
<entry>
<title>Refine the busdma template interface.  Provide tools for filling in fields</title>
<updated>2020-09-14T05:58:12Z</updated>
<author>
<name>Scott Long</name>
<email>scottl@FreeBSD.org</email>
</author>
<published>2020-09-14T05:58:12Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=74c781ed913dc866ec596e3a7875e5b0c76f7e22'/>
<id>urn:sha1:74c781ed913dc866ec596e3a7875e5b0c76f7e22</id>
<content type='text'>
that can be extended, but also ensure compile-time type checking.  Refactor
common code out of arch-specific implementations.  Move the mpr and mps
drivers to this new API.  The template type remains visible to the consumer
so that it can be allocated on the stack, but should be considered opaque.
</content>
</entry>
<entry>
<title>mpr: clean up empty lines in .c and .h files</title>
<updated>2020-09-01T22:07:12Z</updated>
<author>
<name>Mateusz Guzik</name>
<email>mjg@FreeBSD.org</email>
</author>
<published>2020-09-01T22:07:12Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=577858c836e6bedd9e8c7a3a505590be928f44ee'/>
<id>urn:sha1:577858c836e6bedd9e8c7a3a505590be928f44ee</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove extra memset() left after r342388.</title>
<updated>2020-08-04T19:27:03Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2020-08-04T19:27:03Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=f0f2014387364ba341d66600d6528a8a19ecb9d3'/>
<id>urn:sha1:f0f2014387364ba341d66600d6528a8a19ecb9d3</id>
<content type='text'>
This memset() wiped MPI2_FUNCTION_SCSI_TASK_MGMT set by mprsas_alloc_tm(),
that broke target reset on device removal, making later re-insertion into
the same slot impossible, since firmware was still waiting for the driver
to finish with the removed device.

MFC after:	1 week
Sponsored by:	iXsystems, Inc.
</content>
</entry>
<entry>
<title>mpr(4), mps(4): Stop checking for failures from malloc(M_WAITOK).</title>
<updated>2020-07-27T14:28:55Z</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2020-07-27T14:28:55Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=d2a5f0812bb96b6011b0f1cd7e820a0f2f63a15c'/>
<id>urn:sha1:d2a5f0812bb96b6011b0f1cd7e820a0f2f63a15c</id>
<content type='text'>
PR:		240545
Submitted by:	Andrew Reiter &lt;arr@watson.org&gt;
Reviewed by:	imp
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D25766
</content>
</entry>
<entry>
<title>Add a small hack to the ioctl header files so that both mpr and mps can</title>
<updated>2020-04-16T03:28:28Z</updated>
<author>
<name>Scott Long</name>
<email>scottl@FreeBSD.org</email>
</author>
<published>2020-04-16T03:28:28Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=8fae77f50cd4d883c0ab188b515857a95a9746b3'/>
<id>urn:sha1:8fae77f50cd4d883c0ab188b515857a95a9746b3</id>
<content type='text'>
be included.  This isn't a great solution, but fixing it correctly is a
bigger task and this is the lesser of the existing evils.
</content>
</entry>
<entry>
<title>Centralize compatability translation macros.</title>
<updated>2020-04-14T20:30:48Z</updated>
<author>
<name>Brooks Davis</name>
<email>brooks@FreeBSD.org</email>
</author>
<published>2020-04-14T20:30:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=562894f0dc310f658284863ff329906e7737a0a0'/>
<id>urn:sha1:562894f0dc310f658284863ff329906e7737a0a0</id>
<content type='text'>
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.

Input from:	cem, jhb
Obtained from:	CheriBSD
MFC after:	2 weeks
Sponsored by:	DARPA
Differential Revision:	https://reviews.freebsd.org/D24275
</content>
</entry>
<entry>
<title>Increase buffer in mprsas_log_command() from 192 to 224 bytes.</title>
<updated>2020-03-13T14:51:11Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2020-03-13T14:51:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=a2386b6f6a872873609354f6099ae97f2de5356b'/>
<id>urn:sha1:a2386b6f6a872873609354f6099ae97f2de5356b</id>
<content type='text'>
192 bytes are not enough to print long commands, such as ATA COMMAND PASS
THROUGH(16), that makes debug output difficult to read.

MFC after:	2 weeks
Sponsored by:	iXsystems, Inc.
</content>
</entry>
</feed>
