Commit Graph

203224 Commits

Author SHA1 Message Date
rwatson
9532a34956 When deciding whether to call m_pullup() even though there is adequate
data in an mbuf, use M_WRITABLE() instead of a direct test of M_EXT;
the latter both unnecessarily exposes mbuf-allocator internals in the
protocol stack and is also insufficient to catch all cases of
non-writability.

(NB: m_pullup() does not actually guarantee that a writable mbuf is
returned, so further refinement of all of these code paths continues to
be required.)

Reviewed by:	bz
MFC after:	3 days
Sponsored by:	EMC / Isilon Storage Division
Differential Revision: https://reviews.freebsd.org/D900
2014-10-12 15:49:52 +00:00
jilles
2791f385b9 sh: Fix break/continue/return in multiline eval.
Example:
  eval $'return\necho bad'
2014-10-12 13:12:06 +00:00
ngie
c60e1a8fc3 #include libutil.h for fparseln on FreeBSD
Sponsored by: EMC / Isilon Storage Division
2014-10-12 10:07:26 +00:00
ngie
9cc3d490e4 Only #include <sys/tls.h> on NetBSD
Sponsored by: EMC / Isilon Storage Division
2014-10-12 10:04:59 +00:00
mav
e3e9d7f585 Improve and document ctladm portlist subcommand.
Make this subcommand less FC-specific, reporting target and port addresses
in more generic way.  Also make it report list of connected initiators in
unified way, working for both FC and iSCSI, and potentially others.

MFC after:	1 week
2014-10-12 06:55:34 +00:00
hrs
106faa1462 Add env and prepend to _rc_namevarlist. 2014-10-12 02:42:36 +00:00
hrs
77616d41a2 Add ${name}_env and ${name}_prepend. ${name}_env is an argument list which
will be passed to env(1).  ${name}_prepend is simply prepended to the command
line for $command.
2014-10-11 23:49:27 +00:00
hrs
fde7fd8dbc Check buffer length more strictly.
MFC after:	1 day
2014-10-11 23:24:09 +00:00
hrs
21a1f9a46b Fix off-by-one.
MFC after:	1 day
2014-10-11 23:08:00 +00:00
jilles
ec5e67f29f pstat(8): Correct description of the SESS column in pstat -t.
MFC after:	1 week
2014-10-11 21:53:06 +00:00
gnn
3dea4f4aee Add a new option, -P, to pkt-gen which reads a single packet from a stored
pcap file and transmits it instead of the default UDP packet.

Reviewed by:	luigi
MFC after:	2 weeks
2014-10-11 21:43:05 +00:00
hrs
a9647f4732 Fix buffer overrun.
MFC after:	1 day
2014-10-11 20:46:06 +00:00
hrs
ab0d138ede Rename s/network/netif/ and set netif_enable for namespace consistency. 2014-10-11 20:28:04 +00:00
pfg
12749f249c ddb: space/tab fixes.
No functional change.

MFC after:	3 days
2014-10-11 20:25:19 +00:00
jhb
e64c35384b Add locking and mark MPSAFE.
- Add a mutex to protect the softc.
- Use callout(9) instead of timeout(9).
- Consolidate duplicated detach routines into a bus-independent detach
  routine.
- Add an extra sleep lock flag (MSESC_READING) to prevent other readers
  from reading while the first reader is copying data out of sc_bytes[]
  via uiomove().
- Use bus_*() instead of bus_space_*().

Tested by:	nyan
2014-10-11 19:36:59 +00:00
kib
1b90da9ab8 Do not set IN_ACCESS flag for read-only mounts. The IN_ACCESS
survives remount in rw, also it is set for vnodes on rootfs before
noatime can be set or clock is adjusted.  All conditions result in
wrong atime for accessed vnodes.

Submitted by:	bde
MFC after:	1 week
2014-10-11 19:09:56 +00:00
pfg
b989189b31 Bump FreeBSD_version due to cleanup of tcp wrapper header.
Due to revisions r272949 and r272950 which should affect
positively some ports.
2014-10-11 18:58:58 +00:00
pfg
42209922ff tcpd.h: add prototype for hosts_ctl
According the hosts_access(3) man page the hosts_ctl() prototype
should be in tcpd.h. For now, follow other declarations and don't
add the arguments in the prototype.

Reference:
https://www.illumos.org/issues/4385

PR:		32808
MFC after:	2 weeks
2014-10-11 18:54:37 +00:00
pfg
0a516f07e6 tcpd: complete function prototypes.
This clears up at least a build issues on mysql-server
ports. While here also replace some spaces with tabs
in our headers.

PR:		42336
MFC after:	2 weeks
2014-10-11 18:34:10 +00:00
mav
ec71d2fca1 Give physical and virtual ports numbers some more meaning. 2014-10-11 17:52:54 +00:00
marcel
889914101e Fix nits in previous commit:
1.  Remove initializer for badstack_sbuf_size; it gets set unconditionally.
2.  Remove meaningless comment.
3.  Group witness_count and its sysctl together.
4.  Fix spacing in for statements (space after for and within condition).
5.  Change *all* M_NOWAIT usages in witness_initialize() to M_WAITOK; not
    just those that were newly introduced -- the allocation is assumed to
    succeed for all allocations.
6.  Avoid using uint8_t as the base type in sizeof() expressions; Use the
    variable name (w_rmatrix) as much as possible.

Pointed out by: jhb@ (thanks!)
2014-10-11 16:34:01 +00:00
kib
ddec0099d1 MFi386 r272761.
Noted by:	Holger Hans Peter Freyther <holger at freyther.de>
Sponsored by:	The FreeBSD Foundation
MFC after:	10 days
2014-10-11 16:17:49 +00:00
jhb
93f2095877 Update ip_divert.ko to depend on version 3 of ipfw. 2014-10-11 16:08:54 +00:00
melifaro
f57c9803f8 Fix KASSERT typo. 2014-10-11 15:04:50 +00:00
mav
1ba6a6c2fd Shorten frontend name. 2014-10-11 12:56:49 +00:00
mav
ab5e97992f Filter out duplicate AC_PATH_REGISTERED async events.
Queued async events handling in CAM opened race, that may lead to duplicate
AC_PATH_REGISTERED events delivery during boot.  That was not happening
before r272935 because the driver was initialized later.  After that change
it started create duplicate ports in CTL.
2014-10-11 10:19:37 +00:00
mav
efea9edd5f Fix r272936 build with old GCC.
MFC after:	1 week
2014-10-11 08:50:19 +00:00
mav
8a81e148a4 Update isp_tgt_map and send new arrival notification if target that departed
earlier has returned.  Previously that code worked only once, confusing CTL.

MFC after:	1 month
2014-10-11 07:59:15 +00:00
mav
65ae10fa38 Mark CTL frontend's CAM driver as CAM_PERIPH_DRV_EARLY.
Target mode operation does not depend on the initiator mode scan process.
This change allows the target driver to attach earlier and receive some
async events (like AC_CONTRACT) that could be lost otherwise.

MFC after:	1 week
2014-10-11 07:49:27 +00:00
trasz
4b6f54abd2 Mark iscontrol(8) and iscsi_initiator(4) obsolete.
Differential Revision:	https://reviews.freebsd.org/D931
Reviewed by:	wblock@
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2014-10-11 05:18:22 +00:00
trasz
b24bb0c435 Add assertion to catch duplicated notes.
Sponsored by:	The FreeBSD Foundation
2014-10-11 05:11:23 +00:00
marcel
358ea67a98 Turn WITNESS_COUNT into a tunable and sysctl. This allows adjusting
the value without recompiling the kernel.  This is useful when
recompiling is not possible as an immediate solution. When we run out
of witness objects, witness is completely disabled. Not having an
immediate solution can therefore be problematic.

Submitted by:	Sreekanth Rupavatharam <rupavath@juniper.net>
Obtained from:	Juniper Networks, Inc.
2014-10-11 02:02:58 +00:00
ngie
965f9be361 Add LDFLAGS to PROG_VARS so it can be overridden on a per-PROG basis
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2014-10-10 22:18:09 +00:00
ngie
e2ee0b35f8 Port the testcase to FreeBSD
- Make #include path to h_macros.h a non-relative path
- __gl_stat_t is synonymous with struct stat on FreeBSD
- FreeBSD doesn't have _DIRENT_RECLEN
- Skip over glob_star on FreeBSD (testcase doesn't pass)

In collaboration with: pho
Sponsored by: EMC / Isilon Storage Division
2014-10-10 21:22:25 +00:00
ngie
653a540178 Skip over t_spawn_open_nonexistent_diag because it requires NetBSD specific
additions to posix_spawn

Sponsored by: EMC / Isilon Storage Division
2014-10-10 21:19:17 +00:00
melifaro
9743357b21 Remove redundant if_notifier declaration. 2014-10-10 20:37:06 +00:00
mav
96aaf8224f Make ctld start even if some LUNs are unable to open backing storage.
Such LUNs will be visible to initiators, but return "not ready" status
on media access commands.  If backing storage become available later,
`ctladm modify ...` or `service ctld reload` can trigger its reopen.
2014-10-10 19:41:09 +00:00
ngie
a9e5625f70 SIGPWR does not exist on FreeBSD
Sponsored by: EMC / Isilon Storage Division
2014-10-10 19:34:19 +00:00
ngie
5ce4af18cf Handle getting/setting niceness/priority correctly on FreeBSD vs NetBSD
This might be fallout from PR: 189821

Submitted by: pho
Sponsored by: EMC / Isilon Storage Division
2014-10-10 19:32:53 +00:00
ngie
d20db9d537 Disable the invalid pointer test on FreeBSD
FreeBSD segfaults on invalid pointers passed to getcwd because it throbs the
address passed in in libc, whereas NetBSD just passes the information off to
the syscall, which allows the kernel to return EFAULT on bad pointers.

In collaboration with: pho
Sponsored by: EMC / Isilon Storage Division
2014-10-10 19:28:57 +00:00
kib
2b6232c7be Make MAP_NOSYNC handling in the vm_fault() read-locked object path
compatible with write-locked path.  Test for MAP_ENTRY_NOSYNC and set
VPO_NOSYNC for pages with dirty mask zero (this does not exclude a
possibility that the page is dirty, e.g. due to read fault on
writeable mapping and consequent write; the same issue exists in the
slow path).

Use helper vm_fault_dirty() to unify fast and slow path handling of
VPO_NOSYNC and setting the dirty mask.

Reviewed by:	alc
Sponsored by:	The FreeBSD Foundation
2014-10-10 19:27:36 +00:00
gnn
23f601a6ca Change the PF hash from Jenkins to Murmur3. In forwarding tests
this showed a conservative 3% incrase in PPS.

Differential Revision:	https://reviews.freebsd.org/D461
Submitted by:	des
Reviewed by:	emaste
MFC after:	1 month
2014-10-10 19:26:26 +00:00
ngie
0af4e97898 FreeBSD doesn't support strings greater than MAXHOSTNAMELEN-1 in
{get,set}{domain,host}name. Adjust the tests to not exceed that
value when testing out the code

Add a positive and negative test for MAXHOSTNAMELEN-1 and
MAXHOSTNAMELEN, respectively

PR: 181127
In collaboration with: pho
Sponsored by: EMC / Isilon Storage Division
2014-10-10 19:18:52 +00:00
jhb
3528154dd4 Don't pass RF_ALLOCATED to bus_alloc_resource(). 2014-10-10 19:12:04 +00:00
ngie
4cb4e287c6 FreeBSD returns ENOTTY instead of EBADF in ttyname_r; mark it as an expected
failure

PR: 191936

In collaboration with: pho
Sponsored by: EMC / Isilon Storage Division
2014-10-10 19:02:02 +00:00
ngie
7a443b9edd Add missing #include <sys/time.h> for gettimeofday
Sponsored by: EMC / Isilon Storage Division
2014-10-10 18:59:18 +00:00
ngie
5c778ecb20 Disable tests that don't pass on FreeBSD due to missing support in
humanize_number(3). Bringing in additional revisions from NetBSD's
humanize_number(3) will fix the tests

Account for the fact that util.h on NetBSD is libutil.h on FreeBSD

Submitted by: pho
Sponsored by: EMC / Isilon Storage Division
2014-10-10 18:57:39 +00:00
melifaro
7c4a53a2d6 Fix KASSERT argument type. 2014-10-10 18:57:12 +00:00
melifaro
846b63a583 Fix NOINET6 build for ipfw. 2014-10-10 18:31:35 +00:00
melifaro
4b5577b783 Partially fix build on !amd64
Pointed by:	bz
2014-10-10 17:24:56 +00:00