200778 Commits

Author SHA1 Message Date
gjb
422b01d09f Fix non-version text after .Fx macro usage.
Sponsored by:	The FreeBSD Foundation
2014-07-08 14:53:51 +00:00
gjb
a0443124b0 Document r267359, disklabel64 partitioning scheme.
Sponsored by:	The FreeBSD Foundation
2014-07-08 14:52:09 +00:00
gjb
d8675751e1 Document r268303, MacMini 3,1 support in asmc(4).
Sponsored by:	The FreeBSD Foundation
2014-07-08 14:46:40 +00:00
gjb
30584cb64b Drop leading 'r' in revision number from previous commit.
Sponsored by:	The FreeBSD Foundation
2014-07-08 14:45:11 +00:00
gjb
32194c25f0 Document r268351, end of ia64 support.
Sponsored by:	The FreeBSD Foundation
2014-07-08 14:42:44 +00:00
ian
bff9cb9ad4 Support CXXFLAGS.${MACHINE_ARCH} as well as CFLAGS. This allows different
C++ options for toolchain versus target when cross-building.
2014-07-08 14:37:01 +00:00
ian
85b2fd33c3 Use named constant rather than '0' to access the reset controller register. 2014-07-08 14:35:09 +00:00
mav
57e388ec90 Fix typo in r267873. 2014-07-08 13:28:37 +00:00
mav
0fef4e1436 Pass correct command that should be aborted to ISPCTL_ABORT_CMD.
This makes XPT_ABORT to work for me on initiator side of isp(4).
Previous code was trying to abort the XPT_ABORT itself and failed.

MFC after:	1 week
2014-07-08 13:01:36 +00:00
pluknet
dac7d6371b [mdoc] Fix previous change. 2014-07-08 12:19:34 +00:00
mav
a19a69842c Do not return statuses for aborted iSCSI commands. 2014-07-08 12:16:28 +00:00
mav
3d17a2a3d2 Return task management requests to queued execution, but differently.
Testing shown that both original queued design with separate task queue,
and recent direct execution design had significant flaw: If abort request
arrives just after the victim, the last one may not be in the ooa_queue
yet, and so invisible for the task management function.

Unlike original queued implementation, use same queue for all SCSI and
TASK requests from the same initiator. That avoids races between them:
task functions are always executed in proper time, relatively to other
requests.
2014-07-08 12:15:15 +00:00
mav
7d8e028d00 Add XPT_ABORT support to iSCSI initiator.
While CAM does not use it normally, it is useful for targets testing.

MFC after:	2 weeks
2014-07-08 09:37:41 +00:00
mav
f71ed2c8ee Fix task management functions status: task not found is not an error,
while not implemented function is.
2014-07-08 08:34:34 +00:00
kib
cf2635722a Make this compilable on latest Linux'es without warnings.
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2014-07-08 08:11:52 +00:00
kib
c8b684225c Correct the problem reported by test16 from
tools/regression/file/flock/flock.c, which completes the fix in
r192685.  When the lock was stolen from us, retry the whole lock
sequence in kernel, instead of returning EINTR to usermode and hoping
that application would handle it correctly by restarting the lock
acquire.

Tested by:	pho
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
2014-07-08 08:10:15 +00:00
kib
ae88c29379 Correct si_code for the SIGBUS signal generated by the alignment trap.
Reported and tested by:	pho
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2014-07-08 08:05:42 +00:00
wblock
13cd8ccc41 Make synopsis version of -3 flag match other uses in the page.
MFC after:	1 week
2014-07-08 02:43:04 +00:00
imp
7834150c01 Typo means that this couldn't have possibly fixed anything, so revert
r268377.
2014-07-08 02:11:48 +00:00
imp
a531bc93cd xdev builds libsupc++ and libstdc++ in a slightly strange way. This
cause a race to be exposed between the two. Compensate for this race
by serializing the build/install of libstdc++ before libsupc++.
2014-07-07 23:21:25 +00:00
imp
feebbf9480 rm -rf can fail sometimes with an error from fts_read. Make it honor
fflag to ignore fts_read errors, but stop deleting from that directory
because no further progress can be made.

When building a kernel with a high -j value on a high core count
machine, during the cleanobj phase we can wind up doing multiple rm
-rf at the same time for modules that have subdirectories. This
exposed this race (sometimes) as fts_read can return an error if the
directory is removed by another rm -rf. Since the intent of the -f
flag was to ignore errors, even if this was a bug in fts_read, we
should ignore the error like we've been instructed to do.
2014-07-07 23:21:20 +00:00
imp
d55a30df87 Fix typo in flag name. 2014-07-07 23:21:15 +00:00
imp
bffc4efe0b Naughty NANDFS was using hidden unused flag, hiding the fact that the
flag was used and wasn't really available. Change the name without
fixing any laying issues that might be present in NANDFS' use of this
flag.
2014-07-07 23:21:07 +00:00
truckman
9f3ff514ca Declaration whitespace changes for style(9).
MFC after:	1 week
2014-07-07 22:02:39 +00:00
mav
67a12ecf16 Make XPT_GET_TRAN_SETTINGS to report CAM that command queueing is enabled,
but make couple changes to handle non-queued commands too, if happen.

MFC after:	2 weeks
2014-07-07 17:34:48 +00:00
imp
0b2e932782 Document C_HARDCLOCK flag. 2014-07-07 16:55:07 +00:00
dim
4ce847f533 Regenerate src.conf.5, which was completely busted by r268351. 2014-07-07 16:43:42 +00:00
mjg
8a494537a4 Don't call crdup nor uifind under vnode lock.
A locked vnode can get into the way of satisyfing malloc with M_WATOK.

This is a fixup to r268087.

Suggested by:	kib
MFC after:	1 week
2014-07-07 14:03:30 +00:00
mav
aef4aec0ff Fix "use after free" on port creation error in r268291. 2014-07-07 11:52:22 +00:00
mav
db5360cb99 Add support for READ FULL STATUS action of PERSISTENT RESERVE IN command. 2014-07-07 11:05:04 +00:00
mav
784dfeee39 Teach ctl_add_initiator() to dynamically allocate IIDs from pool.
If port passed negative IID value, the function will try to allocate IID
from the pool of unused, based on passed wwpn or name arguments.  It does
all its best to make IID unique and persistent across reconnects.

This makes persistent reservation properly work for iSCSI.  Previously,
in case of reconnects, reservation could be unexpectedly lost, or even
migrate between intiators.
2014-07-07 09:37:22 +00:00
mav
25e7dba03e Fix bugs for PERSISTENT RESERVE OUT bits in r268096. 2014-07-07 08:58:36 +00:00
fabient
e368d99e2a Optim and Fix for mge driver:
- add missing rcvif in mbuf
- add missing ipacket stat
- remove uncessary mbuf copy on output path
- fix deadlock of the TX engine in case of error

Obtained from:	NETASQ
MFC after:	2 weeks
2014-07-07 08:22:39 +00:00
mav
c964df7230 Correction to r268356: collide only sessions to the same target. 2014-07-07 06:17:07 +00:00
mav
17f8e3065c When new connection comes in, check whether we already have session from
the same intiator (Name+ISID).  If so -- terminate the old session and let
the new one take its place, as required by iSCSI RFC.
2014-07-07 05:48:11 +00:00
hselasky
4be2431f80 Improve support for Intel Lynx Point USB 3.0 controllers by masking
the port routing bits like done in Linux.

MFC after:	1 week
Tested by:	Tur-Wei Chan <twchan@singnet.com.sg>
2014-07-07 05:17:16 +00:00
mav
c28c880da7 Implement ABORT TASK SET and I_T NEXUS RESET task management functions.
Use the last one to terminate active commands on iSCSI session termination.
Previous code was aborting only commands doing some data moves.
2014-07-07 03:10:56 +00:00
marcel
9f28abd980 Remove ia64.
This includes:
o   All directories named *ia64*
o   All files named *ia64*
o   All ia64-specific code guarded by __ia64__
o   All ia64-specific makefile logic
o   Mention of ia64 in comments and documentation

This excludes:
o   Everything under contrib/
o   Everything under crypto/
o   sys/xen/interface
o   sys/sys/elf_common.h

Discussed at: BSDcan
2014-07-07 00:27:09 +00:00
nwhitehorn
43f783bfcf Use common vt_fb parts in ofwfb as far as we are able without sacrificing
performance.

MFC after:	2 weeks
2014-07-07 00:12:18 +00:00
bryanv
c7454c4baf Use the appropriate IPv6 hashtype defines when looking up the PCBGROUP
Reviewed by:	adrian@
2014-07-07 00:02:49 +00:00
gavin
83e469f56c Remove /usr/share/doc/psd/28.cvs/paper.ps.gz if it exists, as it is
obsolete since r251794.

PR:		191003
Submitted by:	Vick Khera
MFC after:	3 days
2014-07-06 23:08:47 +00:00
andreast
67a3cc14e4 Make gcc happy, init idlen2. 2014-07-06 20:09:23 +00:00
mav
ac68a20a27 Close race in r268291 between port destruction, delayed by sessions
teardown, and new port creation during `service ctld restart`.

Close it by returning iSCSI port internal state, that allows to identify
dying ports, which should not be counted as existing, from really alive.
2014-07-06 17:57:59 +00:00
alc
d74e85dbb9 Introduce pmap_unwire(). It will replace pmap_change_wiring(). There are
several reasons for this change:

pmap_change_wiring() has never (in my memory) been used to set the wired
attribute on a virtual page.  We have always used pmap_enter() to do that.
Moreover, it is not really safe to use pmap_change_wiring() to set the wired
attribute on a virtual page.  The description of pmap_change_wiring() says
that it assumes the existence of a mapping in the pmap.  However, non-wired
mappings may be reclaimed by the pmap at any time.  (See pmap_collect().)
Many implementations of pmap_change_wiring() will crash if the mapping does
not exist.

pmap_unwire() accepts a range of virtual addresses, whereas
pmap_change_wiring() acts upon a single virtual page.  Since we are
typically unwiring a range of virtual addresses, pmap_unwire() will be more
efficient.  Moreover, pmap_unwire() allows us to unwire superpage mappings.
Previously, we were forced to demote the superpage mapping, because
pmap_change_wiring() only allowed us to express the unwiring of a single
base page mapping at a time.  This added to the overhead of unwiring for
large ranges of addresses, including the implicit unwiring that occurs at
process termination.

Implementations for arm and powerpc will follow.

Discussed with:	jeff, marcel
Reviewed by:	kib
Sponsored by:	EMC / Isilon Storage Division
2014-07-06 17:42:38 +00:00
mav
3437bf8178 Make iSCSI initiator keep Initiator Session ID (ISID) across reconnects.
Previously ISID was changed every time, that made impossible correct
persistent reservation, because reconnected session was identified as
completely new one.

Reviewed by:	trasz
MFC after:	1 week
2014-07-06 17:37:49 +00:00
nwhitehorn
02cefe6a6a In case we ever support little-endian PowerPC (probably userland only),
avoid hardcoding endianness here.
2014-07-06 16:20:37 +00:00
nwhitehorn
399c1f5289 Add a new CPU id for a POWER8 variant. 2014-07-06 16:19:55 +00:00
hselasky
50128eff91 Fix OFED startup order: All SYSINIT()'s and modules should be loaded
prior to starting "/sbin/init" which will run all the "/etc/rc.d/xxx"
scripts. Else there can be a race configuring the interfaces via
"/etc/rc.conf".

MFC after:	4 weeks
Sponsored by:	Mellanox Technologies
2014-07-06 14:22:13 +00:00
hselasky
050052b698 Fix compile warning.
MFC after:	4 weeks
Sponsored by:	Mellanox Technologies
2014-07-06 14:20:47 +00:00
hselasky
8bc8d604f8 Fix some compile warnings.
MFC after:	4 weeks
Sponsored by:	Mellanox Technologies
2014-07-06 14:14:07 +00:00