<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/firewire, 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-08-31T19:56:51Z</updated>
<entry>
<title>fwohci: Cast bitfield to uint32_t before passing it to roundup2().</title>
<updated>2021-08-31T19:56:51Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2021-02-17T21:12:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1aaf3bbc74ced642831682ee222c68ad42f96d8c'/>
<id>urn:sha1:1aaf3bbc74ced642831682ee222c68ad42f96d8c</id>
<content type='text'>
The fallback for __align_up() used by roundup2() uses __typeof__()
which doesn't work for bitfields.  This fixes the build on GCC which
uses the fallback.

Reviewed by:	arichardson, markj
Sponsored by:	Chelsio Communications
Differential Revision:	https://reviews.freebsd.org/D28599

(cherry picked from commit 50a61f8db532676d7dc37410540fff7209b7c072)
(cherry picked from commit ae0219c10fe3a2ea9caa7bc88ddc7d0a7e988efd)
</content>
</entry>
<entry>
<title>Use https over http for FreeBSD pages</title>
<updated>2018-07-27T10:40:48Z</updated>
<author>
<name>Eitan Adler</name>
<email>eadler@FreeBSD.org</email>
</author>
<published>2018-07-27T10:40:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=33f4bccaa6c57c6025c63daf4f20b812dad30257'/>
<id>urn:sha1:33f4bccaa6c57c6025c63daf4f20b812dad30257</id>
<content type='text'>
</content>
</entry>
<entry>
<title>The Uninorth ID was really for Uninorth 2.</title>
<updated>2018-04-01T00:25:47Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2018-04-01T00:25:47Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=33d62e33b3fe2adab49a5b99542690a4af8fe8aa'/>
<id>urn:sha1:33d62e33b3fe2adab49a5b99542690a4af8fe8aa</id>
<content type='text'>
Submitted by: Sevan Janiyan
Differential Revision: https://reviews.freebsd.org/D14919
</content>
</entry>
<entry>
<title>fwohcireg.h is 99% the same between the boot loader and the</title>
<updated>2018-03-31T22:02:59Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2018-03-31T22:02:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=80105e4e72b05a151fa71e328984cbe1ec0a5550'/>
<id>urn:sha1:80105e4e72b05a151fa71e328984cbe1ec0a5550</id>
<content type='text'>
kernel. Delete it and fix up the 1% difference because there's no need
for them to be different.
</content>
</entry>
<entry>
<title>Garbage collect IFCAP_POLLING_NOCOUNT.  It wasn't used since very</title>
<updated>2017-12-06T23:03:34Z</updated>
<author>
<name>Gleb Smirnoff</name>
<email>glebius@FreeBSD.org</email>
</author>
<published>2017-12-06T23:03:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=17eea3202a2c0f3d5549fe1459149e79be35c5ca'/>
<id>urn:sha1:17eea3202a2c0f3d5549fe1459149e79be35c5ca</id>
<content type='text'>
beginning of polling(4).  The module always ignored return value
from driver polling handler.
</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>spdx: initial adoption of licensing ID tags.</title>
<updated>2017-11-18T14:26:50Z</updated>
<author>
<name>Pedro F. Giffuni</name>
<email>pfg@FreeBSD.org</email>
</author>
<published>2017-11-18T14:26:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=df57947f083046d50552e99b91074927d2458708'/>
<id>urn:sha1:df57947f083046d50552e99b91074927d2458708</id>
<content type='text'>
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.

Special thanks to Wind River for providing access to "The Duke of
Highlander" tool: an older (2014) run over FreeBSD tree was useful as a
starting point.

Initially, only tag files that use BSD 4-Clause "Original" license.

RelNotes:	yes
Differential Revision:	https://reviews.freebsd.org/D13133
</content>
</entry>
<entry>
<title>firewire/sbp: try to improve locking, plus a few style nits</title>
<updated>2017-03-07T16:07:52Z</updated>
<author>
<name>Andriy Gapon</name>
<email>avg@FreeBSD.org</email>
</author>
<published>2017-03-07T16:07:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=857bb3d01e9a4b357dec4ea6c47f085d2dca064c'/>
<id>urn:sha1:857bb3d01e9a4b357dec4ea6c47f085d2dca064c</id>
<content type='text'>
This change tries to fix the most obvious locking problems.

sbp_cam_scan_lun() is never called with the sbp lock held, so the lock
needs to be acquired internally (if it's needed at all).
Without this change a kernel with INVARIANTS panics when a firewire disk
is connected:
  panic: mutex sbp not owned at /usr/src/sys/dev/firewire/sbp.c:967
  KDB: stack backtrace:
  db_trace_self_wrapper() at 0xffffffff80420bbb = db_trace_self_wrapper+0x2b/frame 0xfffffe0504df0930
  kdb_backtrace() at 0xffffffff80670359 = kdb_backtrace+0x39/frame 0xfffffe0504df09e0
  vpanic() at 0xffffffff8063986c = vpanic+0x14c/frame 0xfffffe0504df0a20
  panic() at 0xffffffff806395b3 = panic+0x43/frame 0xfffffe0504df0a80
  __mtx_assert() at 0xffffffff8061c40d = __mtx_assert+0xed/frame 0xfffffe0504df0ac0
  sbp_cam_scan_lun() at 0xffffffff80474667 = sbp_cam_scan_lun+0x37/frame 0xfffffe0504df0af0
  xpt_done_process() at 0xffffffff802aacfa = xpt_done_process+0x2da/frame 0xfffffe0504df0b30
  xpt_done_td() at 0xffffffff802ac2e5 = xpt_done_td+0xd5/frame 0xfffffe0504df0b80
  fork_exit() at 0xffffffff805ff72f = fork_exit+0xdf/frame 0xfffffe0504df0bf0
  fork_trampoline() at 0xffffffff8082483e = fork_trampoline+0xe/frame
  0xfffffe0504df0bf0
  --- trap 0, rip = 0, rsp = 0, rbp = 0 ---

Also, I tried to reduce the scope of the sbp lock to avoid holding it
while doing bus_dma allocations.

The code badly needs some re-engineering.  SBP really should implement
a CAM transport, so that it avoids control flow inversion when re-scanning
the bus.  Also, the sbp lock seems to be too coarse.

Additionally, the commit includes some changes not related to locking.

- sbp_cam_scan_lun: restore CAM_DEV_QFREEZE before re-queueing the ccb
  because xpt_setup_ccb resets ccb_h.flags
- sbp_post_busreset: call xpt_release_simq only if it's actually frozen
- don't place private SIMQ_FREEZED flag (sic, "freezed") into sim-&gt;flags,
  use sbp-&gt;flags for that
- some style fixes and control flow enhancements

Reviewed by:	sbruno
MFC after:	2 weeks
Differential Revision: https://reviews.freebsd.org/D9898
</content>
</entry>
<entry>
<title>Remove some locking not needed for modern CAM.</title>
<updated>2017-02-28T05:24:06Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2017-02-28T05:24:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=94792a2c25c7b8d2625fc417cadb0cfaac01aa3b'/>
<id>urn:sha1:94792a2c25c7b8d2625fc417cadb0cfaac01aa3b</id>
<content type='text'>
This driver is full of LORs.  This change allows to reduce deadlock chance
from 100% to level that allows some tests to be done.

MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Add safety check against too long CDB.</title>
<updated>2017-02-28T05:17:50Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2017-02-28T05:17:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0e672f795efc0afb318ca41777402eee798427e3'/>
<id>urn:sha1:0e672f795efc0afb318ca41777402eee798427e3</id>
<content type='text'>
SBP-2 specification defined maximum CDB length as 12 bytes.  Newer SBP-3
specification allows CDB of any size, but this driver is too old.  Proper
solution would be to look on maximal ORB size supported by the target.

MFC after:	1 week
</content>
</entry>
</feed>
