]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
14 years agoMFi386: revision 200216
nyan [Tue, 8 Dec 2009 12:10:06 +0000 (12:10 +0000)]
MFi386: revision 200216

  Various small whitespace and style fixes.

14 years ago- Try pre-allocating all FIBs upfront. Previously we tried pre-allocating
jkim [Tue, 8 Dec 2009 05:35:51 +0000 (05:35 +0000)]
- Try pre-allocating all FIBs upfront.  Previously we tried pre-allocating
128 FIBs first and allocated more later if necessary.  Remove now unused
definitions from the header file[1].
- Force sequential bus scanning.  It seems parallel scanning is in fact
slower and causes more harm than good[1].  Adjust a comment to reflect that.

PR: kern/141269
Submitted by: Alexander Sack (asack at niksun dot com)[1]
Reviewed by: scottl

14 years agoPartially revert r200228. For mini RCB case, bge(4) still have to
yongari [Tue, 8 Dec 2009 03:24:29 +0000 (03:24 +0000)]
Partially revert r200228. For mini RCB case, bge(4) still have to
disable mini ring withtout regard to mini ring support.

Reported by: marcel
Tested by: marcel

14 years agoResync with Intel versions of both the em and igb
jfv [Tue, 8 Dec 2009 01:07:44 +0000 (01:07 +0000)]
Resync with Intel versions of both the em and igb
drivers. These add new hardware support, most importantly
the pch (i5 chipset) in the em driver. Also, both drivers
now have the simplified (and I hope improved) watchdog
code. The igb driver uses the new RX cleanup that I
first implemented in ixgbe.

em  - version 6.9.24
igb - version 1.8.4

14 years agoFix typo in comment
rpaulo [Tue, 8 Dec 2009 00:54:08 +0000 (00:54 +0000)]
Fix typo in comment

Submitted by: Paul B Mahol <onemda at gmail.com>

14 years agoImprove response to multi-touch taps.
rpaulo [Tue, 8 Dec 2009 00:52:59 +0000 (00:52 +0000)]
Improve response to multi-touch taps.

Submitted by: Rohit Grover <rgrover1 at gmail.com>

14 years agoIn exception_save, write-back ar.rnat after switching the backing-
marcel [Tue, 8 Dec 2009 00:44:23 +0000 (00:44 +0000)]
In exception_save, write-back ar.rnat after switching the backing-
store. Writing to ar.bspstore is defined to leave ar.rnat undefined.

PR: ia64/120315
MFC after: 3 days

14 years agoUpdate driver to Intel version 2.0.7:
jfv [Mon, 7 Dec 2009 21:30:54 +0000 (21:30 +0000)]
Update driver to Intel version 2.0.7:

This adds new feature support for the 82599, a hardware
assist to LRO, doing this required a large revamp to the
RX cleanup code because the descriptor ring may not be
processed out of order, this necessitated the elimination
of global pointers.

Additionally, the RX routine now does not refresh mbufs
on every descriptor, rather it will do a range, and then
update the hardware pointer at that time. These are
performance oriented changes.

The TX side now has a cleaner simpler watchdog algorithm
as well, in TX cleanup a read of ticks is stored, that
can then be compared in local_timer to determine if
there is a hang.

Various other cleanups along the way, thanks to all who
have provided input and testing.

14 years agoRevert r200231. It was already taken cared by jhb long ago.
jkim [Mon, 7 Dec 2009 21:24:07 +0000 (21:24 +0000)]
Revert r200231.  It was already taken cared by jhb long ago.

Pointed out by: jhb
Pointy hat: jkim

14 years agoMake mfi(4) little bit less chatty.
jkim [Mon, 7 Dec 2009 20:17:33 +0000 (20:17 +0000)]
Make mfi(4) little bit less chatty.

14 years agoAdd support for the NetMos NM9865 family of Serial/Parallel ports.
marcel [Mon, 7 Dec 2009 20:05:02 +0000 (20:05 +0000)]
Add support for the NetMos NM9865 family of Serial/Parallel ports.

Obtained from: NetMos MCS9865 v1.0.0.1 driver
MFC after: 3 days

14 years agoDon't access jumbo frame related registers if controller lacks the
yongari [Mon, 7 Dec 2009 19:26:54 +0000 (19:26 +0000)]
Don't access jumbo frame related registers if controller lacks the
feature. These registers are reserved on controllers that have no
support for jumbo frame.
Only BCM5700 has mini ring so do not poke mini ring related
registers if controller is not BCM5700.

Reviewed by: marius

14 years agoRemove PHY isolate/power down code in bge_stop(). The isolation
yongari [Mon, 7 Dec 2009 19:18:23 +0000 (19:18 +0000)]
Remove PHY isolate/power down code in bge_stop(). The isolation
handler in brgphy(4) does not exist and brgphy(4) just resets the
PHY and returns EINVAL as it has no isolation handler. I also agree
on Marius's opinion that stop handler of every NIC driver seems to
be the wrong place for implementing PHY isolate/power down.
If we need PHY isolate/power down it should be implemented in
brgphy(4) and users should administratively down the PHY.

Reviewed by: marius

14 years agoExplicitly acknowledge MSI completion, as required by SiI3124 datasheet.
mav [Mon, 7 Dec 2009 18:37:50 +0000 (18:37 +0000)]
Explicitly acknowledge MSI completion, as required by SiI3124 datasheet.
It makes MSI working there. Later (and cheaper) PCIe chips (3132/3531)
still randomly crashing system in few seconds of high MSI rates, generating
something inaporopriate, like NMI or "Fatal trap 30".

14 years agoImprove the algorithm the loader uses to choose a memory range for its
jhb [Mon, 7 Dec 2009 16:29:43 +0000 (16:29 +0000)]
Improve the algorithm the loader uses to choose a memory range for its
heap when using a range above 1MB.

Previously the loader would always use the last 3MB in the first memory
range above 1MB for the heap.  However, this memory range is also where the
kernel and any modules are loaded.  If this memory range is "small", then
using the high 3MB for the heap may not leave enough room for the kernel
and modules.

Now the loader will use any range below 4GB for the heap, and the logic to
choose the "high" heap region has moved into biosmem.c.  It sets two
variables that the loader can use for a high heap if it desires.  When a
high heap is enabled (BZIP2, FireWire, GPT, or ZFS), then the following
memory ranges are preferred for the heap in order from best to worst:
- The largest memory region in the SMAP with a start address greater than
  1MB.  The memory region must be at least 3MB in length.  This leaves the
  region starting at 1MB purely for use by the kernel and modules.
- The last 3MB of the memory region starting at 1MB if it is at least 3MB
  in size.  This matches the current behavior except that the current loader
  would break horribly if the first region was not at least 3MB in size.
- The memory range from the end of the loader up to the 640k window.  This
  is the range the loader uses when none of the high-heap-requesting options
  are enabled.

Tested by: hrs
MFC after: 1 week

14 years agoMFp4;
mav [Mon, 7 Dec 2009 16:23:25 +0000 (16:23 +0000)]
MFp4;
- Cleanup kernel messages, mostly PMP.
- Took references on devices, while PMP reinitializes them, to not let them
go and distort freeze reference counting.

14 years agoSiI3124 has no SNotification register. Handle Asynchronous Notifications
mav [Mon, 7 Dec 2009 16:10:48 +0000 (16:10 +0000)]
SiI3124 has no SNotification register. Handle Asynchronous Notifications
there without it as good as possible.

14 years agoVarious small whitespace and style fixes.
jhb [Mon, 7 Dec 2009 16:00:59 +0000 (16:00 +0000)]
Various small whitespace and style fixes.

14 years agoAdd <machine/pcb.h> missed in r199135.
marius [Mon, 7 Dec 2009 15:29:07 +0000 (15:29 +0000)]
Add <machine/pcb.h> missed in r199135.

14 years agoFix ntfs such that it understand media with a non-512-bytes sector size:
guido [Mon, 7 Dec 2009 15:15:08 +0000 (15:15 +0000)]
Fix ntfs such that it understand media with a non-512-bytes sector size:
1. Fixups are always done on 512 byte chunks (in stead of sectors). This
is kind of stupid.
2. Conevrt between NTFS blocknumbers (the blocksize equals the media
sector size) and the bread() and getblk() blocknr (which are 512-byte
sized)

NB: this change should not affect ntfs for 512-byte sector sizes.

14 years agoDefine struct pcpu_md as the only MD field of struct pcpu (pc_acpi_id
marcel [Mon, 7 Dec 2009 06:41:27 +0000 (06:41 +0000)]
Define struct pcpu_md as the only MD field of struct pcpu (pc_acpi_id
excluded, as it's used by MI code) and mode the sysctl variables from
pcpu_stats to pcpu_md.
Adjust all references accordingly.

While nearby, change the PCPU sysctl tree so that they match the CPU
device sysctl tree -- they are now children of a static node called
"machdep.cpu" and are named only with their cpu ID.

14 years agoInstall libulog in /lib.
ed [Mon, 7 Dec 2009 05:57:28 +0000 (05:57 +0000)]
Install libulog in /lib.

Because several applications in /bin use libulog (or may use it in the
nearby future), it must not live inside /usr. It seems like we don't
need to add the copy from /usr/lib to ObsoleteFiles.inc, because it's
cleaned up during installation of libulog automatically.

Reported by: ume

14 years agoFix Read-After-Write (RAW) dependency violation for ar.ccv in
marcel [Mon, 7 Dec 2009 02:17:58 +0000 (02:17 +0000)]
Fix Read-After-Write (RAW) dependency violation for ar.ccv in
isc_atomic_xadd() and isc_atomic_cmpxchg().

Approved by: dougb@
MFC after: 1 week

14 years agoAllocate the VHPT for each CPU in cpu_mp_start(), rather than
marcel [Mon, 7 Dec 2009 00:54:02 +0000 (00:54 +0000)]
Allocate the VHPT for each CPU in cpu_mp_start(), rather than
allocating MAXCPU VHPTs up-front. This allows us to max-out MAXCPU
without memory waste -- MAXCPU is now 32 for SMP kernels.

This change also eliminates the VHPT scaling based in the total
memory in the system. It's the workload that determines the best size
of the VHPT. The workload can be affected by the amount of memory,
but not necessarily. For example, there's no performance difference
between VHPT sizes of 256KB, 512KB and 1MB when building the LINT
kernel. This was observed with a system that has 8GB of memory.
By default the kernel will allocate a 1MB VHPT. The user can tune the
system with the "machdep.vhpt.log2size" tunable.

14 years agoRevert behavior change to setenv(), unsetenv() and putenv() until a more
scf [Mon, 7 Dec 2009 00:22:10 +0000 (00:22 +0000)]
Revert behavior change to setenv(), unsetenv() and putenv() until a more
thorough security review has been completed.

14 years agoAdd Asynchronous Notification support for controllers without SNTF
mav [Sun, 6 Dec 2009 23:56:54 +0000 (23:56 +0000)]
Add Asynchronous Notification support for controllers without SNTF
capability by snooping SDB FIS receive area. It should be even faster
then regular way, but less reliable.

14 years agoUpdate the getenv(3) man page to reflect the recent change to the behavior
scf [Sun, 6 Dec 2009 23:51:27 +0000 (23:51 +0000)]
Update the getenv(3) man page to reflect the recent change to the behavior
of setenv(), putenv() and unsetenv() when dealing with corrupt entries in
environ.  They now output a warning and complete their task without error.

MFC after: 1 week

14 years agoRegister a request that all changes to *env(3) be reviewed by secteam
cperciva [Sun, 6 Dec 2009 23:48:38 +0000 (23:48 +0000)]
Register a request that all changes to *env(3) be reviewed by secteam
prior to commit due to the problematic history of this code.

14 years agosh: Test ;<newline> as well as ; in the 'for' parser test.
jilles [Sun, 6 Dec 2009 23:31:23 +0000 (23:31 +0000)]
sh: Test ;<newline> as well as ; in the 'for' parser test.

14 years agoChange the behavior of setenv(), putenv() and unsetenv() to continue parsing
scf [Sun, 6 Dec 2009 23:27:24 +0000 (23:27 +0000)]
Change the behavior of setenv(), putenv() and unsetenv() to continue parsing
instead of returning an error if a corrupt (not a "name=value" string) entry
in the environ array is detected when (re)-building the internal
environment.  This should prevent applications or libraries from
experiencing issues arising from the expectation that these calls will
complete even with corrupt entries.  The behavior is now as it was prior to
7.0.

Reviewed by: jilles
MFC after: 1 week

14 years agoImprove the comment within getenv() explaining the search order it takes to
scf [Sun, 6 Dec 2009 23:05:17 +0000 (23:05 +0000)]
Improve the comment within getenv() explaining the search order it takes to
find a variable.  Include a note that it must not cause the internal
environment to be generated since malloc() depends upon getenv().  To call
malloc() would create a circular dependency.

Recommended by: green
Approved by: jilles
MFC after: 1 week

14 years agoAdd a libutempter compatibility interface to libulog.
ed [Sun, 6 Dec 2009 20:30:21 +0000 (20:30 +0000)]
Add a libutempter compatibility interface to libulog.

The ulog_login_pseudo(3) and ulog_logout_pseudo(3) interfaces provide a
functionality identical to what libutempter has to offer. Just transform
libutempter's calls into the before mentioned functions.

libutempter doesn't work with utmpx, so instead of fixing I thought the
easiest way would be to integrate this functionality. libutempter is
used by applications like xterm and the KDE libraries, so if I ever
change the underlying file format, these applications will keep working
automatically.

Also increase __FreeBSD_version to indicate the addition (as well as the
import of libulog).

14 years agorestore setting of sin_len (was removed in 1.146 last february) as
luigi [Sun, 6 Dec 2009 18:04:26 +0000 (18:04 +0000)]
restore setting of sin_len (was removed in 1.146 last february) as
it seems that now it is necessary for 'forward' to work outside lo0.
The bug (and fix) was reported on 8.0. This patch probably applies
to RELENG_7 as well.
It seems that 'pf' has a similar bug.

Submitted by: Lytochkin Boris
MFC after: 3 days

14 years agoUnbreak build.
nwhitehorn [Sun, 6 Dec 2009 17:26:43 +0000 (17:26 +0000)]
Unbreak build.

Pointy hat to: me

14 years agoDon't forget to link the fixits against -lulog.
ed [Sun, 6 Dec 2009 14:22:14 +0000 (14:22 +0000)]
Don't forget to link the fixits against -lulog.

reboot(8) now depends on it.

Reported by: nyan

14 years agoMFp4:
mav [Sun, 6 Dec 2009 11:48:53 +0000 (11:48 +0000)]
MFp4:
If we panicked with SIM lock held, do not try to flush caches.
Extra lock recursing will not make debugging easier.

14 years agoMake `make cleanilinks' work in /sys/modules.
ed [Sun, 6 Dec 2009 08:59:19 +0000 (08:59 +0000)]
Make `make cleanilinks' work in /sys/modules.

cleanilinks wasn't listed in <bsd.subdir.mk>. Instead of adding it to
/sys/modules/Makefile, we'd better just add it to <bsd.subdir.mk>
directly, so we don't need to change files like /sys/modules/sound/Makefile
as well. This means you can finally clean up all those dangling symlinks
created by individual module compilation at once.

14 years agoDon't depend on <utmp.h>.
ed [Sun, 6 Dec 2009 01:29:49 +0000 (01:29 +0000)]
Don't depend on <utmp.h>.

MAXLOGNAME seems more applicable in this case, because UT_NAMESIZE
refers to the username field in utmp files, which is clearly unrelated
to repquota(8).

14 years agoMake pw(8) build without <utmp.h>.
ed [Sun, 6 Dec 2009 01:27:28 +0000 (01:27 +0000)]
Make pw(8) build without <utmp.h>.

The size of the username record in utmp files should not influence the
maximum username length. Right now ut_user/ut_name is big enough, so in
this case it's dead code anyway.

14 years agoLet w(1) use utmpx.
ed [Sun, 6 Dec 2009 01:10:30 +0000 (01:10 +0000)]
Let w(1) use utmpx.

We don't have UT_*SIZE anymore. One of the reasons for that is because
all strings are null terminated, there is no need for apps to copy
strings out of the utmpx structure. This means we can define W_DISP*SIZE
lengths for all columns.

While there, adjust the sizes a little. Steal some bytes from the
username column, while extending the hostname column quite a bit.

14 years agoMFp4:
mav [Sun, 6 Dec 2009 00:10:13 +0000 (00:10 +0000)]
MFp4:
Introduce ATA_CAM kernel option, turning ata(4) controller drivers into
cam(4) interface modules. When enabled, this options deprecates all ata(4)
peripheral drivers (ad, acd, ...) and interfaces and allows cam(4) drivers
(ada, cd, ...) and interfaces to be natively used instead.

As side effect of this, ata(4) mode setting code was completely rewritten
to make controller API more strict and permit above change. While doing
this, SATA revision was separated from PATA mode. It allows DMA-incapable
SATA devices to operate and makes hw.ata.atapi_dma tunable work again.

Also allow ata(4) controller drivers (except some specific or broken ones)
to handle larger data transfers. Previous constraint of 64K was artificial
and is not really required by PCI ATA BM specification or hardware.

Submitted by: nwitehorn (powerpc part)

14 years agoFix burst processing for WF2Q pipes - do not increase available burst size
oleg [Sat, 5 Dec 2009 23:27:21 +0000 (23:27 +0000)]
Fix burst processing for WF2Q pipes - do not increase available burst size
unless pipe is idle. This should fix follwing issues:
- 'dummynet: OUCH! pipe should have been idle!' log messages.
- exceeding configured pipe bandwidth.

MFC after: 1 week

14 years agoUnbreak rescue(8). We should also link against libulog now.
ed [Sat, 5 Dec 2009 23:23:46 +0000 (23:23 +0000)]
Unbreak rescue(8). We should also link against libulog now.

14 years agoLet systat's vmstat use utmpx.
ed [Sat, 5 Dec 2009 20:52:11 +0000 (20:52 +0000)]
Let systat's vmstat use utmpx.

14 years agoPort who(1) to utmpx.
ed [Sat, 5 Dec 2009 20:44:19 +0000 (20:44 +0000)]
Port who(1) to utmpx.

(Un)fortunately there is no standardized interface to switch between
utmp database files, so we must call ulog_setutxfile() here.

I'm also changing the column widths to magic numbers here. Display
layout should in this case not be derived from structure fields sizes.
Because I don't want struct utmpx ever to become too small, the fields
are too big to reserve all the space.

14 years agoChange VOP_FSYNC for zfs vnode from VOP_PANIC to zfs_freebsd_fsync(),
kib [Sat, 5 Dec 2009 20:36:42 +0000 (20:36 +0000)]
Change VOP_FSYNC for zfs vnode from VOP_PANIC to zfs_freebsd_fsync(),
both to not panic when fsync(2) is called for fifo on zfs
filedescriptor, and to actually fsync fifo inode to permanent storage.

PR: kern/141177
Reviewed by: pjd
MFC after: 1 week

14 years agoLet init(8) and reboot(8) use utmpx to log wtmp entries.
ed [Sat, 5 Dec 2009 20:26:55 +0000 (20:26 +0000)]
Let init(8) and reboot(8) use utmpx to log wtmp entries.

logwtmp() gets called with the raw strings that are written to disk. For
regular user entries, this isn't too bad, but when booting/shutting
down, the contents get rather cryptic.

Just call the standardized pututxline().

14 years agoLet wall(1) use utmpx.
ed [Sat, 5 Dec 2009 20:22:26 +0000 (20:22 +0000)]
Let wall(1) use utmpx.

Because our implementation guarantees the strings inside struct utmpx to
be null terminated, we don't need to copy everything out, which makes
the code nicer to read.

Also set WARNS to 6 and add $FreeBSD$ to keep SVN happy.

14 years agoWe have to eventually look for provider without checking guid as this is need
pjd [Sat, 5 Dec 2009 20:16:28 +0000 (20:16 +0000)]
We have to eventually look for provider without checking guid as this is need
for attaching when there is no metadata yet.

Before r200125 the order of looking for providers was wrong. It was:
1. Find provider by name.
2. Find provider by guid.
3. Find provider by name and guid.

Where it should have been:
1. Find provider by name and guid.
2. Find provider by guid.
3. Find provider by name.

MFC after: 1 week

14 years agoLet date(1) use utmpx instead of logwtmp().
ed [Sat, 5 Dec 2009 20:09:50 +0000 (20:09 +0000)]
Let date(1) use utmpx instead of logwtmp().

utmpx also has OLD_TIME/NEW_TIME messages, which seem to be intended for
the same purpose as how we call logwtmp() here.

14 years agoLet wall(1) use utmpx.
ed [Sat, 5 Dec 2009 20:05:25 +0000 (20:05 +0000)]
Let wall(1) use utmpx.

Because our implementation guarantees the strings inside struct utmpx to
be null terminated, we don't need to copy everything out, which makes
the code nicer to read.

Also set WARNS to 6 and add $FreeBSD$ to keep SVN silent.

14 years agoAdd WARNS?=6, because it seems to build out of the box.
ed [Sat, 5 Dec 2009 19:55:26 +0000 (19:55 +0000)]
Add WARNS?=6, because it seems to build out of the box.

14 years agoUse _ULOG_POSIX_NAMES here, to make eventual porting to <utmpx.h> easier.
ed [Sat, 5 Dec 2009 19:54:37 +0000 (19:54 +0000)]
Use _ULOG_POSIX_NAMES here, to make eventual porting to <utmpx.h> easier.

By the time we gain a real <utmpx.h>, it's just a matter of changing the
include at the top and -lulog from the Makefile.

14 years agoMassively extend libulog:
ed [Sat, 5 Dec 2009 19:53:29 +0000 (19:53 +0000)]
Massively extend libulog:

- Just like struct utmp, store strings inside struct utmpx itself. This
  is needed to make things like pututxline() work.
- Add ut_id and ut_pid fields, even though they have little use in our
  implementation.
- It turns out our "reboot" wtmp entries indicate a system boot, so
  remove REBOOT_TIME
- Implement getutxline() and pututxline
- Add getutxuser() and setutxfile(), which allows us to crawl wtmp and
  lastlog files as well.
- Add _ULOG_POSIX_NAMES, so we can already use the POSIX names if we
  really want to.

14 years agoFix many "function declaration isn't a prototype" warnings in libc.
ed [Sat, 5 Dec 2009 19:31:38 +0000 (19:31 +0000)]
Fix many "function declaration isn't a prototype" warnings in libc.

I've only fixed code that seems to be written by `us'. There are still
many warnings like this present in resolv/, rpc/, stdtime/ and yp/.

14 years agoDon't let the C library depend on <utmp.h>.
ed [Sat, 5 Dec 2009 19:04:21 +0000 (19:04 +0000)]
Don't let the C library depend on <utmp.h>.

The maximum length of a username has nothing to do with the size of the
username in the utmp files. Use MAXLOGNAME, which is defined as 17
(UT_USERSIZE + 1).

14 years agoRemove warnings from exec.c.
ed [Sat, 5 Dec 2009 18:55:16 +0000 (18:55 +0000)]
Remove warnings from exec.c.

The entries in the argv array are not const themselves, but sometimes we
want to fill in const values. Just make the array const and use
__DECONST() to make it const for the execve()-call itself.

Also convert the only K&R prototype to ANSI.

14 years agoUse ANSI C prototypes inside termios.
ed [Sat, 5 Dec 2009 18:53:04 +0000 (18:53 +0000)]
Use ANSI C prototypes inside termios.

While there, add a missing __unused to hide a warning in tcsetbreak().

14 years agoRemove (hidden) warning about missing prototypes for fdevname(3).
ed [Sat, 5 Dec 2009 18:51:44 +0000 (18:51 +0000)]
Remove (hidden) warning about missing prototypes for fdevname(3).

14 years agoAdd more obsolete files.
antoine [Sat, 5 Dec 2009 17:46:51 +0000 (17:46 +0000)]
Add more obsolete files.

14 years agoRemove trailing ";" in UMA_HASH_INSERT and UMA_HASH_REMOVE macros.
antoine [Sat, 5 Dec 2009 17:45:56 +0000 (17:45 +0000)]
Remove trailing ";" in UMA_HASH_INSERT and UMA_HASH_REMOVE macros.

MFC after: 1 month

14 years agoFix deadlock when ZVOLs are present and we are replacing dead component or
pjd [Sat, 5 Dec 2009 14:33:11 +0000 (14:33 +0000)]
Fix deadlock when ZVOLs are present and we are replacing dead component or
calling scrub when pool is in a degraded state. It will try to taste ZVOLs,
which will lead to deadlock, as ZVOL will try to acquire the same locks as
replace/scrub is holding already.

We can't simply skip provider based on their GEOM class, because ZVOL can have
providers build on top of it and we need to skip those as well.

We do it by asking for ZFS::iszvol attribute. Any ZVOL-based provider will give
us positive answer and we have to skip those providers.

This way we remove possibility to create ZFS pools on top of ZVOLs, but it is
not very useful anyway.

I believe deadlock is still possible in some very complex situations like when
we have MD provider on top of UFS file on top of ZVOL. When we try to replace
dead component in the pool mentioned ZVOL is based on, there might be a
deadlock when ZFS will try to taste MD provider. There is no easy way to detect
that, but it isn't very common.

MFC after: 1 week

14 years agoAlways check guid when opening by path, because we may end up with provider
pjd [Sat, 5 Dec 2009 14:24:22 +0000 (14:24 +0000)]
Always check guid when opening by path, because we may end up with provider
that does have the same name, but only by accident.

MFC after: 1 week

14 years agoAvoid using additional variable for storing an error if we are not going
pjd [Sat, 5 Dec 2009 14:21:42 +0000 (14:21 +0000)]
Avoid using additional variable for storing an error if we are not going
to do anything with it.

14 years agoMake sure enough memory is allocated for a struct pft_entry when
syrinx [Sat, 5 Dec 2009 13:45:21 +0000 (13:45 +0000)]
Make sure enough memory is allocated for a struct pft_entry when
refreshing the list of pf tables.

OKed by: philip
MFC after: 1 week

14 years agoDo not ignore device interrupt if bus mastering is still active. It is
mav [Sat, 5 Dec 2009 13:40:51 +0000 (13:40 +0000)]
Do not ignore device interrupt if bus mastering is still active. It is
normal in case of media read error and some ATAPI cases, when transfer size
is unknown beforehand. PCI ATA BM specification tells that in case of such
underrun driver should just manually stop DMA engine. DMA engine should
same time guarantie that all bus mastering transfers completed at the moment
of driver reads interrupt flag asserted.
This change should fix interrupt storms and command timeouts in many cases.

PR: kern/103602, sparc64/121539, kern/133122, kern/139654

14 years agoAdd a missing space to the error message when execvp() failed.
stefanf [Sat, 5 Dec 2009 13:12:04 +0000 (13:12 +0000)]
Add a missing space to the error message when execvp() failed.

14 years agoadjust comment in previous commit after Julian's explanation
luigi [Sat, 5 Dec 2009 11:51:32 +0000 (11:51 +0000)]
adjust comment in previous commit after Julian's explanation

14 years agoOn Soft Reset, read device signature from FIS receive area, instead of
mav [Sat, 5 Dec 2009 10:30:54 +0000 (10:30 +0000)]
On Soft Reset, read device signature from FIS receive area, instead of
PxSIG register. It works better for NVidia chipsets. ahci(4) does the same.

PR: kern/140472, i386/138668

14 years agoremove a dead block of code, document how the ipfw clients are
luigi [Sat, 5 Dec 2009 09:13:06 +0000 (09:13 +0000)]
remove a dead block of code, document how the ipfw clients are
hooked and the difference in handling the 'enable' variable
for layer2 and layer3. The latter needs fixing once i figure out
how it worked pre-vnet.

MFC after: 7 days

14 years agofix build with VNET enabled
luigi [Sat, 5 Dec 2009 08:32:12 +0000 (08:32 +0000)]
fix build with VNET enabled

Reported by: David Wolfskill

14 years agoRegenerate.
kib [Fri, 4 Dec 2009 21:53:20 +0000 (21:53 +0000)]
Regenerate.

14 years agoAdd several syscall compat32 entries for acl manipulation.
kib [Fri, 4 Dec 2009 21:52:31 +0000 (21:52 +0000)]
Add several syscall compat32 entries for acl manipulation.
They do not require translation of the arguments.

Tested by: bsam
MFC after: 1 week

14 years agoThis is v4l support for the linuxulator. This allows to access FreeBSD
netchild [Fri, 4 Dec 2009 21:06:54 +0000 (21:06 +0000)]
This is v4l support for the linuxulator. This allows to access FreeBSD
native devices which support the v4l API from processes running within
the linuxulator, e.g. skype or flash can access the multimedia/pwcbsd driver.

Not tested is firmware upload, framebuffer stuff and video tuner stuff
due to lack of hardware.
The clipping part (VIDIOCSWIN) needs a little bit of further work (partly
in progress, but can not be tested due to lack of a suitable device).

The submitter tested this sucessfully with Skype and flash apps on amd64 and
i386 with the multimedia/pwcbsd driver.

Submitted by: J.R. Oldroyd <fbsd@opal.com>

14 years agoImport the unchanged v4l videodev.h from the vendor branch.
netchild [Fri, 4 Dec 2009 20:46:45 +0000 (20:46 +0000)]
Import the unchanged v4l videodev.h from the vendor branch.

14 years agoImport the interface description of the video for linux (v4l) subsystem.
netchild [Fri, 4 Dec 2009 20:42:08 +0000 (20:42 +0000)]
Import the interface description of the video for linux (v4l) subsystem.
The header is importet from linux 2.6.17.

The header does not come with a license, the author
(Alan Cox <alan@redhat.com>) gave his permission to use it (note, X.org
has a copy of the header too):
---snip---
> Alan Cox <alan@redhat.com> said:
>
> > On Tue, Apr 12, 2005 at 03:13:15PM -0700, Julian Elischer wrote:
> > > How does the licensing of the include files stand?
>
> Basically you cannot copyright an interface - its a fact rather
> than creative expression normally.
>
> > > Of course there's always the "type it all in again" approach
> > > where we define a functionally equivalent but completely
> > > differntly spelled API,
>
> Wouldn't even need to be differently spelled.
>
> I'm all for this kind of sharing.
>
> Alan
---snip---

A more complete mail history is provided in the README file.

Approved by: core
Thanks to: julian (he also has the OK to use the v4l2 header)

14 years agoUse INET_ADDRSTRLEN and INET6_ADDRSTRLEN rather than hard
ume [Fri, 4 Dec 2009 15:39:37 +0000 (15:39 +0000)]
Use INET_ADDRSTRLEN and INET6_ADDRSTRLEN rather than hard
coded number.

Spotted by: bz

14 years agofix argument type in the call to expand_number
luigi [Fri, 4 Dec 2009 14:18:30 +0000 (14:18 +0000)]
fix argument type in the call to expand_number

Submitted by: gcc 4.3
MFC after: 3 days

14 years ago- In ypproc_all_2_svc(), yp_fork() is called only when !debug case.
kuriyama [Fri, 4 Dec 2009 14:12:37 +0000 (14:12 +0000)]
- In ypproc_all_2_svc(), yp_fork() is called only when !debug case.
  So _exit() in the bottom of this function should be called with the
  same case.

14 years ago- Replace magic number with YPOLDVERS macro (which may be missed in
kuriyama [Fri, 4 Dec 2009 14:08:57 +0000 (14:08 +0000)]
- Replace magic number with YPOLDVERS macro (which may be missed in
  r14262).

14 years agoAdd disk-magic for amd64: same as i386.
phk [Fri, 4 Dec 2009 10:57:01 +0000 (10:57 +0000)]
Add disk-magic for amd64: same as i386.

Pass PORTS_OPTS wherever we invoke ports makefiles

Add a logfile where we can see the progress of distfile prefetching

14 years agoAdd a missing word to a sentence in the return values section.
trhodes [Fri, 4 Dec 2009 09:20:20 +0000 (09:20 +0000)]
Add a missing word to a sentence in the return values section.

14 years agoichsmb: drop default attachment to generic smbus hardware
avg [Fri, 4 Dec 2009 05:45:46 +0000 (05:45 +0000)]
ichsmb: drop default attachment to generic smbus hardware

Attach only to devices known to be supported.
This change overrided and undoes r200053.

Suggested by: jhb
MFC after: 2 weeks (only to stable/8)

14 years agoFix cases where we've managed to get a Loop UP event prior to initializing
mjacob [Fri, 4 Dec 2009 03:34:12 +0000 (03:34 +0000)]
Fix cases where we've managed to get a Loop UP event prior to initializing
the loop down counter, as well as other things. This was brought to my
attention with a different fix, more for RELENG_7- this one covers the
multiple channel case.

PR: 140438
MFC after: 1 month

14 years agoAdd workaround to overcome hardware limitation which allows only a
yongari [Thu, 3 Dec 2009 23:57:06 +0000 (23:57 +0000)]
Add workaround to overcome hardware limitation which allows only a
single outstanding DMA read operation. Most controllers targeted to
client with PCIe bus interface(e.g. BCM5761) may have this
limitation. All controllers for servers does not have this
limitation.
Collapsing mbuf chains to reduce number of memory reads before
transmitting was most effective way to workaround this. I got about
940Mbps from 850Mbps with mbuf collapsing on BCM5761. However it
takes a lot of CPU cycles to collapse mbuf chains so add tunable to
control the number of allowed TX buffers before collapsing. The
default value is 0 which effectively disables the forced collapsing.
For most cases 2 would yield best performance(about 930Mbps)
without much sacrificing CPU cycles.
Note the collapsing is only activated when the controller is on
PCIe bus and the frame does not need TSO operation. TSO does not
seem to suffer from the hardware limitation because the payload
size is much bigger than normal IP datagram.
Thanks to davidch@ who told me the limitation of client controllers
and actually gave possible workarounds to mitigate the limitation.

Reviewed by: davidch, marius

14 years agoAdd uhci/ehci controller ids.
thompsa [Thu, 3 Dec 2009 23:24:12 +0000 (23:24 +0000)]
Add uhci/ehci controller ids.

Submitted by: mitya_cabletv.dp.ua

14 years agoChange 'load' balancing mode algorithm:
mav [Thu, 3 Dec 2009 21:47:51 +0000 (21:47 +0000)]
Change 'load' balancing mode algorithm:
- Instead of measuring last request execution time for each drive and
choosing one with smallest time, use averaged number of requests, running
on each drive. This information is more accurate and timely. It allows to
distribute load between drives in more even and predictable way.
- For each drive track offset of the last submitted request. If new request
offset matches previous one or close for some drive, prefer that drive.
It allows to significantly speedup simultaneous sequential reads.

PR: kern/113885
Reviewed by: sobomax

14 years agoRepair breakage to last-minute API change.
ed [Thu, 3 Dec 2009 21:44:41 +0000 (21:44 +0000)]
Repair breakage to last-minute API change.

I changed ulog_log{in,out} to return a void, but forgot to change
ulog-helper as well.

Reported by: stefanf

14 years agoProperly return an error reply if an NFS remove or link operation fails.
jhb [Thu, 3 Dec 2009 20:59:28 +0000 (20:59 +0000)]
Properly return an error reply if an NFS remove or link operation fails.
Previously the failing operation would allocate an mbuf and construct an
error reply, but because the function did not return 0, the NFS server
assumed it had failed to generate a reply and would leak the reply mbuf as
well as not sending the reply to the NFS client.

PR: kern/140853
Submitted by: Ted Faber  faber at isi edu (remove)
Reviewed by: rmacklem (remove)
MFC after: 1 week

14 years agoThe first argument of dcbz interprets r0 as a literal zero, not the second.
nwhitehorn [Thu, 3 Dec 2009 20:55:09 +0000 (20:55 +0000)]
The first argument of dcbz interprets r0 as a literal zero, not the second.
This worked before by accident.

MFC after: 1 week

14 years agoRemove wrong assertion. Debugee is allowed to lose a signal.
kib [Thu, 3 Dec 2009 20:16:59 +0000 (20:16 +0000)]
Remove wrong assertion. Debugee is allowed to lose a signal.

Reported and tested by: jh
MFC after: 2 weeks

14 years agoYet another cosmetic fix.
trasz [Thu, 3 Dec 2009 20:06:03 +0000 (20:06 +0000)]
Yet another cosmetic fix.

14 years agoCosmetical fixes.
trasz [Thu, 3 Dec 2009 20:02:26 +0000 (20:02 +0000)]
Cosmetical fixes.

14 years agoCosmetical fixes.
trasz [Thu, 3 Dec 2009 19:59:27 +0000 (19:59 +0000)]
Cosmetical fixes.

14 years ago- Update the Spanish NLS catalog
gabor [Thu, 3 Dec 2009 19:27:12 +0000 (19:27 +0000)]
- Update the Spanish NLS catalog

Reviewed by: carvay,
the.infamous.paul@gmail.com,
Joan Picanyol i Puig <lists-freebsd-es@biaix.org>,
Ing . Marcos Luis Ortiz Valmaseda <mlortiz@uci.cu>,
eskanete@gmail.com,
Jose M Rodriguez <josemi@freebsd.jazztel.es>,
Guillermo Hernandez <guillermo@QuerySoft.es>,
dani.doni@gmail.com

14 years agoDescription of steps required to setup NFSv4 server is in nfsv4(4);
trasz [Thu, 3 Dec 2009 19:16:40 +0000 (19:16 +0000)]
Description of steps required to setup NFSv4 server is in nfsv4(4);
add reference to exports(5), since that's the obvious starting point
for searching for this.

14 years agoRemove unused code.
trasz [Thu, 3 Dec 2009 18:16:14 +0000 (18:16 +0000)]
Remove unused code.

14 years agoAdd manpages for ams(4), akbd(4), adb(4), and cuda(4), which describe
nwhitehorn [Thu, 3 Dec 2009 18:13:47 +0000 (18:13 +0000)]
Add manpages for ams(4), akbd(4), adb(4), and cuda(4), which describe
various drivers for Apple Desktop Bus controllers and peripherals.

MFC after: 3 days

14 years agoRemove unneeded ifdefs.
trasz [Thu, 3 Dec 2009 18:03:42 +0000 (18:03 +0000)]
Remove unneeded ifdefs.

Reviewed by: rmacklem

14 years agoConnect unzip to the build.
rdivacky [Thu, 3 Dec 2009 18:02:55 +0000 (18:02 +0000)]
Connect unzip to the build.

Approved by: ed (mentor)
Approved by: des (unzip author)
Tested by: exp ports build (miwi)