Commit Graph

151197 Commits

Author SHA1 Message Date
Rui Paulo
288a242625 MFC r206427, r206706, r206771:
ubthidhci rc.d script to switch an USB bluetooth dongle from HID to
  HCI mode.
2010-04-20 12:07:16 +00:00
Konstantin Belousov
66df5bde4d MFC r206553:
Change printf() calls to uprintf() for sigreturn() and trap() complaints
about inacessible or wrong mcontext, and for dreaded "kernel trap with
interrupts disabled" situation. The later is changed when trap is
generated from user mode (shall never be ?).

Normalize the messages to include both pid and thread name.
2010-04-20 08:19:43 +00:00
Rick Macklem
0c58adb2fa MFC: r206236
Harden the experimental NFS server a little, by adding range
checks on the length of the client's open/lock owner name. Also,
add free()'s for one case where they were missing and would
have caused a leak if NFSERR_BADXDR had been replied. Probably
never happens, but the leak is now plugged, just in case.
2010-04-20 01:25:18 +00:00
Edwin Groothuis
8cfb2407c2 MFC of tzdata2010i, r206868
- Marocco does have DST this year between May and August.
- Historical data for Taiwan
- Argentina / San Luis does not do DST this year.
2010-04-19 21:01:24 +00:00
Edward Tomasz Napierala
49ea01c1ce MFC r202971:
Return proper error code.

Found with:	clang
2010-04-19 18:22:21 +00:00
Edward Tomasz Napierala
6867f97625 MFC r196987:
Remove useless variable assignment.
2010-04-19 18:19:59 +00:00
Pawel Jakub Dawidek
40a16c07ea MFC r204352:
Fixed static linkage.
2010-04-19 14:23:15 +00:00
Pawel Jakub Dawidek
a3c8a78f40 MFC r204080:
Create a directory for hast's examples.
2010-04-19 04:54:34 +00:00
Rick Macklem
cf66cfa0b1 MFC: r206170
Harden the experimental NFS server a little, by adding extra checks
in the readdir functions for non-positive byte count arguments.
For the negative case, set it to the maximum allowable, since it
was actually a large positive value (unsigned) on the wire.
Also, fix up the readdir function comment a bit.
2010-04-18 22:51:15 +00:00
Pawel Jakub Dawidek
3a482ccc5e MFC r203504,r204067,r204073,r204101,r204804,r205079,r205080,r205132,r205133,
r205134,r205231,r205253,r205264,r205346,r206051,r206667,r206792,r206793,
    r206794,r206795,r206796,r206797:

r203504:

Open provider for writting when we find the right one. Opening too much
providers for writing provokes huge traffic related to taste events send
by GEOM on close. This can lead to various problems with opening GEOM
providers that are created on top of other GEOM providers.

Reorted by:	Kurt Touet <ktouet@gmail.com>, mr
Tested by:	mr, Baginski Darren <kickbsd@ya.ru>

r204067:

Update comment. We also look for GPT partitions.

r204073:

Add tunable and sysctl to skip hostid check on pool import.

r204101:

Don't set f_bsize to recordsize. It might confuse some software (like squid).

Submitted by:	Alexander Zagrebin <alexz@visp.ru>

r204804:

Remove racy assertion.

Reported by:	Attila Nagy <bra@fsn.hu>
Obtained from:	OpenSolaris, Bug ID 6827260

r205079:

Remove bogus assertion.

Reported by:	Johan Ström <johan@stromnet.se>
Obtained from:	OpenSolaris, Bug ID 6920880

r205080:

Force commit to correct Bug ID:

Obtained from:	OpenSolaris, Bug ID 6920880

r205132:

Don't bottleneck on acquiring the stream locks - this avoids a massive
drop off in throughput with large numbers of simultaneous reads

r205133:

fix compilation under ZIO_USE_UMA

r205134:

make UMA the default allocator for ZFS buffers - this avoids
a great deal of contention in kmem_alloc

r205231:

- reduce contention by breaking up ARC state locks in to 16 for data
  and 16 for metadata
- export L2ARC tunables as sysctls
- add several kstats to track L2ARC state more precisely
- avoid holding a contended lock when atomically incrementing a
  contended counter (no lock protection needed for atomics)

r205253:

use CACHE_LINE_SIZE instead of hardcoding 128 for lock pad

pointed out by Marius Nuennerich and jhb@

r205264:

- cache line align arcs_lock array (h/t Marius Nuennerich)
- fix ARCS_LOCK_PAD to use architecture defined CACHE_LINE_SIZE
- cache line align buf_hash_table ht_locks array

r205346:

The same code is used to import and to create pool.
The order of operations is the following:
1. Try to open vdev by remembered path and guid.
2. If 1 failed, try to find vdev which guid matches and ignore the path.
3. If 2 failed this means either that the vdev we're looking for is gone
   or that pool is being created and vdev doesn't contain proper guid yet.
   To be able to handle pool creation we open vdev by path anyway.

Because of 3 it is possible that we open wrong vdev on import which can lead to
confusions.

The solution for this is to check spa_load_state. On pool creation it will be
equal to SPA_LOAD_NONE and we can open vdev only by path immediately and if it
is not equal to SPA_LOAD_NONE we first open by path+guid and when that fails,
we open by guid. We no longer open wrong vdev on import.

r206051:

IOCPARM_MAX defines maximum size of a structure that can be passed
directly to ioctl(2). Because of how ioctl command is build using _IO*()
macros we have only 13 bits to encode structure size. So the structure
can be up to 8kB-1.

Currently we define IOCPARM_MAX as PAGE_SIZE.

This is IMHO wrong for three main reasons:

1. It is confusing on archs with page size larger than 8kB (not really
   sure if we support such archs (sparc64?)), as even if PAGE_SIZE is
   bigger than 8kB, we won't be able to encode anything larger in ioctl
   command.

2. It is a waste. Why the structure can be only 4kB on most archs if we
   have 13 bits dedicated for that, not 12?

3. It shouldn't depend on architecture and page size. My ioctl command
   can work on one arch, but can't on the other?

Increase IOCPARM_MAX to 8kB and make it independed of PAGE_SIZE and
architecture it is compiled for. This allows to use all the bits on all the
archs for size. Note that this doesn't mean we will copy more on every ioctl(2)
call. No. We still copyin(9)/copyout(9) only exact number of bytes encoded in
ioctl command.

Practical use for this change is ZFS. zfs_cmd_t structure used for ZFS
ioctls is larger than 4kB.

Silence on:	arch@

r206667:

Fix 3-way deadlock that can happen because of ZFS and vnode lock
order reversal.

thread0 (vfs_fhtovp)	thread1 (vop_getattr)	thread2 (zfs_recv)
--------------------	---------------------	------------------
			vn_lock
rrw_enter_read
						rrw_enter_write (hangs)
			rrw_enter_read (hangs)
vn_lock (hangs)

Reported by:	Attila Nagy <bra@fsn.hu>

r206792:

Set ARC_L2_WRITING on L2ARC header creation.

Obtained from:	OpenSolaris

r206793:

Remove racy assertion.

Obtained from:	OpenSolaris

r206794:

Extend locks scope to match OpenSolaris.

r206795:

Add missing list and lock destruction.

r206796:

Style fixes.

r206797:

Restore previous order.
2010-04-18 21:36:34 +00:00
Pawel Jakub Dawidek
48ed64d027 MFC r206665:
Use lower priority for GELI worker threads. This improves system
responsiveness under heavy GELI load.
2010-04-18 21:26:59 +00:00
Pawel Jakub Dawidek
e47ff61723 MFC r206666:
Flush disk write cache after storing and clearing metadata.
2010-04-18 21:24:23 +00:00
Pawel Jakub Dawidek
c44c50cd5c MFC r204177,r205738,r206669,r206696,r206697:
r204177:

Changing proto_socketpair.c compilation and linking order revealed
a problem - we should simply ignore proto_server() if address
doesn't start with socketpair://, and not abort.

r205738:

Don't hold connection lock when doing reconnects as it makes I/Os wait for
connection timeouts.

Reported by:	Kevin Day <toasty@dragondata.com>

r206669:

Increase ggate queue size to maximum value.
HAST was not able to stand heavy random load.

Reported by:	Hiroyuki Yamagami

r206696:

Fix control socket leak when worker process exits.

Submitted by:	Mikolaj Golub <to.my.trociny@gmail.com>

r206697:

Fix log size calculation which caused message truncation.

Submitted by:	Mikolaj Golub <to.my.trociny@gmail.com>
2010-04-18 21:18:32 +00:00
Pawel Jakub Dawidek
2b98f8400d MFC r204076,r204077,r204083,r205279:
r204076:

Please welcome HAST - Highly Avalable Storage.

HAST allows to transparently store data on two physically separated machines
connected over the TCP/IP network. HAST works in Primary-Secondary
(Master-Backup, Master-Slave) configuration, which means that only one of the
cluster nodes can be active at any given time. Only Primary node is able to
handle I/O requests to HAST-managed devices. Currently HAST is limited to two
cluster nodes in total.

HAST operates on block level - it provides disk-like devices in /dev/hast/
directory for use by file systems and/or applications. Working on block level
makes it transparent for file systems and applications. There in no difference
between using HAST-provided device and raw disk, partition, etc. All of them
are just regular GEOM providers in FreeBSD.

For more information please consult hastd(8), hastctl(8) and hast.conf(5)
manual pages, as well as http://wiki.FreeBSD.org/HAST.

Sponsored by:	FreeBSD Foundation
Sponsored by:	OMCnet Internet Service GmbH
Sponsored by:	TransIP BV

r204077:

Remove some lines left over by accident.

r204083:

Add missing KEYWORD line.

Pointed out by:	dougb

r205279 sys:

Simplify loops.
2010-04-18 21:14:49 +00:00
Edward Tomasz Napierala
93df368f6c MFC r202934:
Move out code that does POSIX.1e ACL inheritance into separate routines.

Reviewed by:	rwatson
2010-04-18 20:34:46 +00:00
Pawel Jakub Dawidek
1d908ad75f MFC r204075:
Style nits.
2010-04-18 20:23:08 +00:00
Edward Tomasz Napierala
a515de671b MFC r206160 by jh@:
Add missing MNT_NFS4ACLS.
2010-04-18 19:51:46 +00:00
Edward Tomasz Napierala
8fce74fce5 MFC r200829:
Cosmetic fixes.
2010-04-18 19:44:54 +00:00
Edward Tomasz Napierala
e7e223603d MFC r200811:
Add regression test for NFSv4 ACLs on UFS.
2010-04-18 19:40:52 +00:00
Edward Tomasz Napierala
0718d64da3 MFC r200796:
Implement NFSv4 ACL support for UFS.

Reviewed by:	rwatson
2010-04-18 19:21:08 +00:00
Edward Tomasz Napierala
bfc6b188ec MFC r197867:
Properly mark ZFS properties which are not changeable under FreeBSD.

Reviewed by:	pjd
2010-04-18 16:37:38 +00:00
Edward Tomasz Napierala
ff6dfec6de MFC r197859:
'aclmode' and 'aclinherit' properties should work as advertised; don't
refuse to set them.
2010-04-18 16:36:38 +00:00
Edward Tomasz Napierala
1bd4d5ddec MFC r201118:
Bump manual page dates.
2010-04-18 10:42:42 +00:00
Edward Tomasz Napierala
875d570a91 MFC r201114:
Add references to termios-related stuff.
2010-04-18 10:38:17 +00:00
Edward Tomasz Napierala
cbd7ba79f0 MFC r201115:
Line discipline support is gone; update tty(4) manual page to reflect this.

Reviewed by:	ed
2010-04-18 10:36:49 +00:00
Edward Tomasz Napierala
5675cbea97 MFC r205846:
Fix references.
2010-04-18 10:29:26 +00:00
Konstantin Belousov
c9975476bf MFC r206671:
Fix typo.
2010-04-18 04:35:16 +00:00
Hajimu UMEMOTO
81a33b9c2c MFC r206156, r206159, r206163: services_mkdb; generate db file
from services(5) to increase speed of getserv*()
2010-04-18 04:15:21 +00:00
Hajimu UMEMOTO
4deeadcb9b MFC r206155, r206267: Add capability to use a db version of
services.  It is enabled by specifying `db' as source of
services in /etc/nsswitch.conf.
2010-04-18 04:07:32 +00:00
Hajimu UMEMOTO
b7a43116e9 MFC ir206152, r206153, r206154:
- Stop adding trailing '\n'.  The servent_unpack() doesn't expect
  lines terminated with '\n'.
- Treat '+' as special only when in compat mode, and simplify
  the logic bit.
- Reduce duplicate code.
2010-04-18 03:52:41 +00:00
Warner Losh
11b893bdc5 Remap COMPAT_IA32 to COMPAT_FREEBSD32 to ease the transition of this
option and not break 8.0 config files later in the 8.x branch.

# Yes, this is a direct commit, since this is not relevant to head.
2010-04-18 01:15:47 +00:00
Warner Losh
7a1b7e33b4 MFC r206664:
Allow option aliasing.  Lines of the form:

  OLD_OPT = NEW_OPT

  in options* files will now map OLD_OPT to NEW_OPT with a friendly
  message.  This is indented for situations where we need to preserve an
  interface in the config file in an upwards compatible fashion on a
  stable branch.

  Reviewed by:	nwhitehorn@
  MFC after:	3 days
2010-04-18 00:57:30 +00:00
Weongyo Jeong
88a85a4c47 MFC r205140:
fixes a broken software beacon miss handler.  There is a race to check
  vap->iv_bmiss_count == 0 in ieee80211_swbmiss because iv_swbmiss_task
  is enqueued by taskqueue.

  Reviewed by:  rpaulo
2010-04-17 23:48:07 +00:00
Weongyo Jeong
6fa37bd64a MFC r202610:
adds a hardware specific configuration file for uath(4).

  Pointed by:   sam
  Reviewed by:  imp, thompsa
2010-04-17 23:14:06 +00:00
Weongyo Jeong
52c92a07d0 MFC r202607:
Fixes a firmware bug that in some devices (e.g. Netgear WG111T or
  TRENDnet TEW-504UB/EU) idProduct didn't be decreased after loading the
  firmware.

  Pointed by:	Steven Friedrich <freebsd at insightbb.com>
  Submitted by:	sam
2010-04-17 23:04:42 +00:00
Weongyo Jeong
15932fc82d MFC r198195:
adds devices supportted by urtw(4) and bumps date.
2010-04-17 22:57:07 +00:00
Weongyo Jeong
9fd42adec7 MFC r197724:
TRENDnet TEW-424UB has multiple revisions so clarify zyd(4) man page and
  adds a device to urtw(4).  The revision informations are as follows:

      rev A       ZD1211
      V2          SiS163U
      V2.1R       SiS163U
      V3.xR       RTL8187B

  and bump date.

  Obtained from:	OpenBSD
  Reported by:		Albert Shih <Albert.Shih at obspm.fr>
2010-04-17 22:52:33 +00:00
Rui Paulo
55f05ae7e5 MFC r206456:
Honor the CE bit even when the CWR bit is set.

 PR:		145600
 Submitted by:	Richard Scheffenegger <rs at netapp.com>
2010-04-17 17:40:12 +00:00
Andriy Gapon
7ca64047c2 MFC r206130: g_vfs_open: allow only one mount per device vnode 2010-04-17 11:57:41 +00:00
Andriy Gapon
0866329b6e MFC r206129: vn_stat: use va_blocksize when setting st_blksize 2010-04-17 11:25:30 +00:00
Andriy Gapon
e747dbab75 MFC r205860,206097: correctly set b_offset for getblk(devvp) 2010-04-17 11:06:42 +00:00
Konstantin Belousov
b8fde9ef74 MFC r206623:
ld_gs_base is executing with stack containing only the frame,
temporary pushed %rflags has been popped already.
2010-04-17 09:37:08 +00:00
Hajimu UMEMOTO
ee3474bf76 MFC r206557: Nuke the descriptions about ipv6_firewall_* as they
were unified into firewall_*.
2010-04-17 04:54:38 +00:00
Randall Stewart
0099361644 MFC of 206281
Final MFC of all the IETF hack a-thon.. head and stable are
now in sync ;-)
2010-04-17 04:19:18 +00:00
Randall Stewart
56be5eba8b MFC of 206151 2010-04-17 04:17:17 +00:00
Randall Stewart
17f2eabb2b MFC of 206137
This is Part III of the great IETF hack-a-thon to fix
the NR-Sack code. (the last one on the cpu options
was a lull.. i.e MFC 205629).. still 2 more to go.
2010-04-17 04:15:46 +00:00
Randall Stewart
07072810f0 MFC of 205629
Adds the option of seperating out the sctp stats per
processor. This will be refined further and is definetly
exploratory (which is why its an option) i.e. making it
allocate the actual number of processors is coming ;-D.
2010-04-17 04:13:52 +00:00
Randall Stewart
469ff22797 MFC of 205628
Out goes the nr_mapping_array expand.
2010-04-17 04:11:45 +00:00
Randall Stewart
f1fb6dd5de MFC of 205627
Part II (more to follow) of the great IETF hack-a-thon to
fix the NR-Sack code.
2010-04-17 04:10:29 +00:00
Randall Stewart
dc47896e05 MFC of 204141
Cleans up so we can have a vtag reflected argument.
One of Michaels fixes ;-)
2010-04-17 04:08:51 +00:00