171759 Commits

Author SHA1 Message Date
rmacklem
63db62466c Fix up handling of the nfsmount structure in read and write
within the experimental NFS client. Mostly add mutex locking
and use the same rsize, wsize during the operation by keeping
a local copy of it. This is another change that brings it
closer to the regular NFS client.

MFC after:	2 weeks
2011-04-19 01:09:51 +00:00
rmacklem
5d453d189d Add stablerestart(5) to the See Also list for nfsd(8).
This is a content change.

Suggested by:	Jeremy Chadwick
MFC after:	2 weeks
2011-04-19 00:47:26 +00:00
sobomax
80e6f3156a Furthermore condition IP waiting behaviour also on -dynamic flag.
This should preserve POLA in all other cases (foreground || non-dynamic).

MFC after:	2 weeks
2011-04-18 23:45:50 +00:00
rmacklem
26cf3dd5d7 Revert r220761 since, as kib@ pointed out, the case of
adding the check to nfsrpc_close() isn't useful. Also,
the check in nfscl_getcl() must be more involved, since
it needs to check before and after the acquisition of
the refcnt on nfsc_lock, while the mutex that protects
the client state data is held.
2011-04-18 23:35:16 +00:00
sobomax
b756d7087c Only wait for the IP to appear on the interface if natd is running in the
background.

Suggested by:   Garrett Cooper <yanegomi@gmail.com>

Use EAGAIN instead of magic value of -2 to report this condition from the
SetAliasAddressFromIfName routine.

MFC after:	2 weeks
2011-04-18 23:15:29 +00:00
jkim
f5b28424de Do not assume PM timer GAS type is I/O or memory. It may be an unsupported
type, i. e., a broken table.  Also, do not hardcode ACPI timer frequency in
device description.
2011-04-18 23:12:41 +00:00
glebius
54ea1a10a5 More whitespace fixes.
Checked with:	md5, diff -x -w
2011-04-18 22:09:03 +00:00
kib
01863c3790 Make pmap_invalidate_cache_range() available for consumption on amd64.
Add pmap_invalidate_cache_pages() method on x86. It flushes the CPU
cache for the set of pages, which are not neccessary mapped. Since its
supposed use is to prepare the move of the pages ownership to a device
that does not snoop all CPU accesses to the main memory (read GPU in
GMCH), do not rely on CPU self-snoop feature.

amd64 implementation takes advantage of the direct map. On i386,
extract the helper pmap_flush_page() from pmap_page_set_memattr(), and
use it to make a temporary mapping of the flushed page.

Reviewed by:	alc
Sponsored by:	The FreeBSD Foundation
MFC after:	3 weeks
2011-04-18 21:24:42 +00:00
glebius
57baf3da41 Whitespace fixes.
Checked with:	md5, diff -w
2011-04-18 21:18:22 +00:00
ru
54ee91ad9a Changed "conscontrol unset" to accept an existing virtual
console device as an argument.  Unsetting virtual console
using /dev/console seems to have never worked.

MFC after:	3 days
2011-04-18 20:28:07 +00:00
glebius
53a0fd8ac3 LibAliasInit() should allocate memory with M_WAITOK flag. Modify it
and its callers.
2011-04-18 20:07:08 +00:00
trasz
3ba2f4e3f2 Document problems with -d/-w and the fact that -X is the default.
Suggested by:	arundel@
Reviewed by:	arundel@
2011-04-18 19:20:47 +00:00
mdf
b3c13a8eb2 Fix a few acpi sysctls that want "IK" formatting to specify CTLTYPE_INT.
This got broken after r217586.

Pointy hat:	to me
Tested by:	David Wolfskill < davit AT catwhisker DOT org >
2011-04-18 19:02:41 +00:00
glebius
ccf3bc8914 Pullup up to TCP header length before matching against 'tcpopts'.
PR:		kern/156180
Reviewed by:	luigi
2011-04-18 18:22:10 +00:00
jhb
5684b4d832 When checking to see if a window update should be sent to the remote peer,
don't force a window update if the window would not actually grow due to
window scaling.  Specifically, if the window scaling factor is larger than
2 * MSS, then after the local reader has drained 2 * MSS bytes from the
socket, a window update can end up advertising the same window.  If this
happens, the supposed window update actually ends up being a duplicate ACK.
This can result in an excessive number of duplicate ACKs when using a
higher maximum socket buffer size.

Reviewed by:	bz
MFC after:	1 month
2011-04-18 17:43:16 +00:00
mdf
45c5f27863 Fix a copy/paste whitespace error. 2011-04-18 16:40:47 +00:00
mdf
b0f8474766 Regen. 2011-04-18 16:32:47 +00:00
mdf
9c9a32d97b Add the posix_fallocate(2) syscall. The default implementation in
vop_stdallocate() is filesystem agnostic and will run as slow as a
read/write loop in userspace; however, it serves to correctly
implement the functionality for filesystems that do not implement a
VOP_ALLOCATE.

Note that __FreeBSD_version was already bumped today to 900036 for any
ports which would like to use this function.

Also reserve space in the syscall table for posix_fadvise(2).

Reviewed by:	-arch (previous version)
2011-04-18 16:32:22 +00:00
mav
0bbb5b8e1a Reduce geom_raid log verbosity. 2011-04-18 16:15:59 +00:00
mav
af7a233f61 Handle ready timeout during polled operation same as done in mvs(4) before. 2011-04-18 16:00:46 +00:00
glebius
5beb62e535 It is already seven years since mbuf allocator uses same
M_WAITOK/M_NOWAIT flags as malloc(9). Update manual page.

Submitted by:	Vadim Goncharov <vadimnuclight tpu.ru>
2011-04-18 15:30:25 +00:00
mav
523be27bea Remove always false "< 0" check for unsgined int variable. This check is
also duplicate, as the value was already checked for 0 before decrementing.

Reported by:	rpaulo
2011-04-18 14:34:10 +00:00
mav
a0315ed1fa Remove some used variables.
Found with:	Clang Static Analyzer
2011-04-18 14:15:52 +00:00
adrian
36ee39308b For now, only enable GTT. CST is firing very frequently during local tests;
I'll figure out what's going on before re-enabling this as it does add
to the interrupt load.
2011-04-18 14:14:54 +00:00
glebius
ab9e7e1d2a Finish last change.
Pointy hat to: glebius
2011-04-18 14:07:01 +00:00
adrian
0cf0858c21 Add TX carrier sense timeout statistics. 2011-04-18 14:06:18 +00:00
glebius
7af8d8ce83 Further cleanup of node creation path from M_NOWAIT usage. 2011-04-18 14:05:26 +00:00
adrian
606a1588c7 Bump pad, I'm adding more statistics. 2011-04-18 14:03:37 +00:00
adrian
05db000c10 Rework the Global TX timeout handling to look more like ath9k.
It correctly now sets the AR_IMR BCNMISC register, along with
the GTT register in AR_IMR_S2.
2011-04-18 14:03:05 +00:00
mav
154daa04a7 Remove some used variables.
Found with:	Clang Static Analyzer
2011-04-18 13:59:56 +00:00
mav
ced1036047 - Tune different wait loops to cut some more milliseconds from reset time.
- Do not call ahci_start() before device signature received. It is required
by the specification and caused non-fatal reset timeouts on AMD chipsets.
2011-04-18 13:34:31 +00:00
nwhitehorn
67e7e193a2 Mention the memstick target here. 2011-04-18 13:20:54 +00:00
philip
8b4ad037ac Delete mistakenly added sys/files.ts7800
Add mistakenly forgotten sys/arm/conf/TS7800

Not sure how this happened.  Apologies for the repo-churn.

Submitted by:	glebius
Pointy hat to:	philip
2011-04-18 12:27:57 +00:00
adrian
8a4d8ea476 Add global TX timeout handling.
The global TX timeout counter increments whenever a frame is ready
to be transmitted and the medium is busy.
2011-04-18 12:15:43 +00:00
dim
a8a3793b43 After removing libobjc and other Objective-C components in r220755,
belatedly bump __FreeBSD_version, and add a note to UPDATING.

Reminded by:	rdivacky
2011-04-18 10:25:54 +00:00
glebius
5c189772ee ng_netflow_cache_init() can be void. 2011-04-18 09:14:23 +00:00
glebius
6c78a88c3b Node constructor methods are supposed to be called in syscall
context always. Convert nodes to consistently use M_WAITOK flag
for memory allocation.

Reviewed by:	julian
2011-04-18 09:12:27 +00:00
ae
636bed78e5 Use M_WAITOK flag instead M_WAIT for malloc.
Suggested by:	glebius
MFC after:	1 week
2011-04-18 09:10:27 +00:00
rmacklem
54869edbdf Add a vput() to nfs_lookitup() in the experimental NFS client
for a case that will probably never happen. It can only
happen if a server were to successfully lookup a file, but not
return attributes for that file. Although technically allowed
by the NFSv3 RFC, I doubt any server would ever do this.
However, if it did, the client would have not vput()'d the
new vnode when it needed to do so.

MFC after:	2 weeks
2011-04-18 01:02:43 +00:00
rmacklem
ede7d52848 Add vput() calls in two places in the experimental NFS client
that would be needed if, in the future, nfscl_loadattrcache()
were to return an error. Currently nfscl_loadattrcache()
never returns an error, so these cases never currently happen.

MFC after:	2 weeks
2011-04-18 00:41:23 +00:00
rmacklem
f1cdd7a4e5 Change the mutex locking for several locations in the
experimental NFS client's vnode op functions to make
them compatible with the regular NFS client. I'll admit
I'm not sure that the mutex locks around the assignments
are needed, but the regular client has them, so I added them.
Also, add handling of the case of partial attributes in
setattr to be compatible with the regular client.

MFC after:	2 weeks
2011-04-17 23:56:57 +00:00
rmacklem
0ee1980af4 Add checks for MNTK_UNMOUNTF at the beginning of three
functions, so that threads don't get stuck in them during
a forced dismount. nfs_sync/VFS_SYNC() needs this, since it is
called by dounmount() before VFS_UNMOUNT(). The nfscl_nget()
case makes sure that a thread doing an VOP_OPEN() or
VOP_ADVLOCK() call doesn't get blocked before attempting
the RPC. Attempting RPCs don't block, since they all
fail once a forced dismount is in progress.
The third one at the beginning of nfsrpc_close()
is done so threads don't get blocked while doing VOP_INACTIVE()
as the vnodes are cleared out.
With these three changes plus a change to the umount(1)
command so that it doesn't do "sync()" for the forced case
seem to make forced dismounts work for the experimental NFS
client.

MFC after:	2 weeks
2011-04-17 23:04:03 +00:00
dougb
91c215d2a6 The change in r206686 to allow the stop argument to work for a service
that is running even though not _enable'd had an annoying side effect.
If the service was already started at boot time by another means when
the related script came around again in rcorder it would start again,
regardless of _enable, because there was a valid pid. [1]

So, split the test into 2 parts, one for (!rcvar && !stop), and one
for (stop && !valid_pid). This preserves the behavior from r206686
while preventing the undesired side effect.

PR:		conf/156427 [1]
Submitted by:	Eugene Grosbein <eugen@grosbein.pp.ru> [1]
2011-04-17 22:31:36 +00:00
jilles
329bcae0e7 kdump: Show code for signals where the default action was taken.
This information is available as of kernel r220740. Trace files from older
kernels will always have 0.

MFC after:	1 week
2011-04-17 21:11:55 +00:00
dim
d9e6052d4e Remove libobjc and other Objective-C related components, as these are
extremely outdated, and not used by anything in the base system.

Silence from:	current@
2011-04-17 21:03:23 +00:00
dim
34f2672a90 For clang, make -mno-mmx imply -mno-3dnow. This is what gcc does.
Submitted by:	arundel
Obtained from:	http://llvm.org/viewvc/llvm-project?view=rev&revision=129665
2011-04-17 20:44:02 +00:00
nwhitehorn
090e4af4fe Update to reflect net install changes. 2011-04-17 20:42:40 +00:00
rmacklem
dd87832ebd Get rid of the "nfscl: consider increasing kern.ipc.maxsockbuf"
message that was generated when doing experimental NFS client
mounts. I put that message in because the krpc would hang with
the default size for mounts that used large rsize/wsize values.
Since the bug that caused these hangs was fixed by r213756,
I think the message is no longer needed.

MFC after:	2 weeks
2011-04-17 20:01:32 +00:00
rmacklem
f6967ddf2b Fix up some of the sysctls for the experimental NFS client so
that they use the same names as the regular client. Also add
string descriptions for them.

MFC after:	2 weeks
2011-04-17 18:56:17 +00:00
nwhitehorn
25689fa404 Make dialog's --prgbox option actually work. 2011-04-17 17:30:29 +00:00