Pawel Jakub Dawidek
52124c7f1c
Reduce diff against vendor - we have now stronger check for "mutex already
...
initialized", so we can go back to kmem_alloc().
2007-04-10 02:19:12 +00:00
Andrew Thompson
75efd6fd67
Add trunk(4) module.
2007-04-10 00:41:31 +00:00
Andrew Thompson
7b62d98bf8
Hook trunk(4) up to the build.
2007-04-10 00:35:31 +00:00
Andrew Thompson
b47888ceba
Add the trunk(4) driver for providing link aggregation, failover and fault
...
tolerance. This driver allows aggregation of multiple network interfaces as
one virtual interface using a number of different protocols/algorithms.
failover - Sends traffic through the secondary port if the master becomes
inactive.
fec - Supports Cisco Fast EtherChannel.
lacp - Supports the IEEE 802.3ad Link Aggregation Control Protocol
(LACP) and the Marker Protocol.
loadbalance - Static loadbalancing using an outgoing hash.
roundrobin - Distributes outgoing traffic using a round-robin scheduler
through all active ports.
This code was obtained from OpenBSD and this also includes 802.3ad LACP support
from agr(4) in NetBSD.
2007-04-10 00:27:25 +00:00
Pawel Jakub Dawidek
0404b7791b
Remove unused #define.
2007-04-09 23:30:28 +00:00
Andrew Thompson
6429a5cb9b
Fix a compiler warning so hash.h can be included in the kernel. This changes
...
the args for hash32_stre and hash32_strne but there are no consumers in the
base system and openbgpd does not use it which the initial import was for.
Silence on: hackers
2007-04-09 22:55:14 +00:00
Pawel Jakub Dawidek
6db107202a
Fix build breakage.
2007-04-09 22:29:13 +00:00
Pawel Jakub Dawidek
151db24af1
Add zfs_load here.
...
Reminded by: bmah
2007-04-09 22:09:09 +00:00
Nate Lawson
a363f67a81
Restore the locking for the sleep/wakeup to avoid waiting an extra 1 sec
...
if a race was lost. We're still single-threaded at this point, but just
be safe for the future.
2007-04-09 21:10:04 +00:00
Nate Lawson
6b1e469ea5
Clean up the root mount and mount wait code. No mutexes are needed here
...
since a spurious wakeup() is the only possible outcome and this is fine in
the BSD programming model.
2007-04-09 19:23:52 +00:00
Pawel Jakub Dawidek
82068fe7a9
Add kern.hostuuid sysctl, which will be used to keep host's UUID.
...
Reviewed by: mlaier, rink, brooks, rwatson
2007-04-09 19:18:09 +00:00
Paolo Pisati
d640d2e29d
The old PacketAlias* API is not exported when
...
libalias run in kernel land.
2007-04-09 17:08:27 +00:00
Kip Macy
a53b1c1753
throw sun4v into the check while we're at it
2007-04-09 17:05:54 +00:00
Kip Macy
3a0a4ac13d
busdma tags are opaque on all architectures except sparc64
...
for now simply don't compile/use on sparc64
2007-04-09 17:01:23 +00:00
Alexander Kabaev
74c7f74304
LINT on ia64 requires memset symbol too. Make fire it is present by adding
...
it to libkern on this architecture.
2007-04-09 14:02:18 +00:00
Andre Oppermann
cc9164e2e6
Sort sctp_*.c files.
2007-04-09 12:51:29 +00:00
Scott Long
4400b36d94
Make use of M_ZERO in various malloc calls.
2007-04-09 05:47:32 +00:00
Scott Long
472cdbef04
Fix a logic bug that slipped in at the last minute and apparently escaped
...
testing.
2007-04-09 05:43:02 +00:00
Pawel Jakub Dawidek
24bda1641f
Instead of detecting if lock is already initialized based on standard 1 bit
...
check, use more accurate 13 bits check. We had too many false-positives with
the standard check.
Reported by: mlaier
2007-04-09 01:05:31 +00:00
Pawel Jakub Dawidek
1868634782
Always try to load zpool.cache instead of trying to find good place to
...
document it. When there is no such file, it's invisible for the user.
2007-04-09 00:04:54 +00:00
Pawel Jakub Dawidek
33fc425c85
We don't have to wait for the root file system to be mounted anymore, now that
...
kobj KPI supports operating on files loaded by the loader.
2007-04-09 00:03:45 +00:00
Pawel Jakub Dawidek
5fc5d6ed61
Drop the Giant lock before calling zfs_domount(), which is held when
...
mounting root file system.
2007-04-09 00:02:11 +00:00
Pawel Jakub Dawidek
f92cb15e7b
Move zpool.cache from /etc/zfs/ to /boot/zfs/, so we can keep it on
...
dedicated /boot/ file system and use ZFS for the root file system.
2007-04-08 23:59:39 +00:00
Pawel Jakub Dawidek
bdebccf9b9
Extend kobj compatibility KPI to support operating on files before and
...
after the root file system is mounted.
This is one of the changes that will allow to put root file system on ZFS.
2007-04-08 23:57:08 +00:00
Pawel Jakub Dawidek
df3aed4f96
Use root_mounted().
2007-04-08 23:54:23 +00:00
Pawel Jakub Dawidek
2eb68d493f
Add root_mounted() function that returns true if the root file system is
...
already mounted.
2007-04-08 23:54:01 +00:00
Kip Macy
dc5a36e241
Add missing paren
2007-04-08 22:56:18 +00:00
Xin LI
9e3edba677
Bump __FreeBSDversion for CAM sg addition.
...
Requested by: bsam
2007-04-08 22:45:20 +00:00
Søren Schmidt
ae4ce3ceef
OK, this is not my day, fix the former fix :/
2007-04-08 21:53:52 +00:00
Søren Schmidt
f27a14650f
Hopefully unbreak the 64bit DMA support this time.
2007-04-08 19:18:51 +00:00
Kip Macy
cae1990513
remove stale variable reference
2007-04-08 18:02:37 +00:00
Pawel Jakub Dawidek
ffe54ff0ec
MFp4: Synchronize with recent OpenSolaris changes.
2007-04-08 16:29:25 +00:00
Kip Macy
db2faf119f
add busdma function for mapping mbuf iovecs
...
change m_collapse to return an error code
2007-04-08 15:59:07 +00:00
Pawel Jakub Dawidek
425d75486e
- Use 'name=value' so it can be properly recognized by devd(8).
...
- Use only subclass as devd's type.
2007-04-08 15:55:48 +00:00
Søren Schmidt
cd945eed47
Dont zero out 64BIT flag on DMA ops.
2007-04-08 15:31:39 +00:00
Kip Macy
27f0ce0f2b
hook uipc_mvec.c into build
2007-04-08 15:18:03 +00:00
Kip Macy
c0a24dd4aa
Convert driver RX path over to using mbuf iovec
2007-04-08 15:04:19 +00:00
Kip Macy
a8d9a363f5
Add driver private mbuf iovec support routines
2007-04-08 14:56:16 +00:00
Pawel Jakub Dawidek
c2cda60911
prison_free() can be called with a mutex held. This wasn't a problem until
...
I converted allprison_mtx mutex to allprison_lock sx lock. To fix this LOR,
move prison removal to prison_complete() entirely. To ensure that noone
will reference this prison before it's beeing removed from the list skip
prisons with 'pr_ref == 0' in prison_find() and assert that pr_ref has to
greater than 0 in prison_hold().
Reported by: kris
OK'ed by: rwatson
2007-04-08 10:46:23 +00:00
Pawel Jakub Dawidek
61cfeccd58
Take vnode pointer and hold it under znode lock, so we won't race with
...
zfs_reclaim(). This may or may not fix problem reported by kris, but it's
definiatelly better that way.
2007-04-08 10:29:14 +00:00
Pawel Jakub Dawidek
b63b0c6529
Only use prison mutex to protect the fields that need to be protected by it.
2007-04-08 10:21:38 +00:00
Ariff Abdullah
319276aac0
Disable cmi_midiattach(). The implementation is incomplete, and causing
...
various interesting memory leak issues.
2007-04-08 07:52:27 +00:00
Pawel Jakub Dawidek
264de85e73
pr_list is protected by the allprison_lock.
2007-04-08 02:13:32 +00:00
Pawel Jakub Dawidek
3dc4488c91
Move atomic.S files to directories that better fit OpenSolaris directory
...
layout.
2007-04-07 23:54:54 +00:00
Pawel Jakub Dawidek
e321494eca
Fix libzpool compilation.
...
Reported by: des
2007-04-07 23:47:14 +00:00
Pawel Jakub Dawidek
9a691cb33a
Limit the number of system taskq threads to the number of CPUs.
...
They are only used when there is a need for reducing namecache.
Observed by: kris, csjp
2007-04-07 21:41:11 +00:00
Scott Long
1eba4c7948
Add the CAM 'SG' peripheral device. This device implements a subset of the
...
Linux SCSI SG passthrough device API. The intention is to allow for both
running of Linux apps that want to talk to /dev/sg* nodes, and to facilitate
porting of apps from Linux to FreeBSD. As such, both native and linuxolator
entry points and definitions are provided.
Caveats:
- This does not support the procfs and sysfs nodes that the Linux SG
driver provides. Some Linux apps may rely on these for operation,
others may only use them for informational purposes.
- More ioctls need to be implemented.
- Linux uses a naming scheme of "sg[a-z]" for devices, while FreeBSD uses a
scheme of "sg[0-9]". Devfs aliasis (symlinks) are automatically created
to link the two together. However, tools like camcontrol only see the
native names.
- Some operations were originally designed to return byte counts or other
data directly as the syscall return value. The linuxolator doesn't appear
to support this well, so this driver just punts for these cases.
Now that the driver is in place, others are welcome to add missing
functionality. Thanks to Roman Divacky for pushing this work along.
2007-04-07 19:40:58 +00:00
Dag-Erling Smørgrav
48be553b82
Build ZFS on amd64 and pc98.
...
Approved by: pjd@
2007-04-07 19:12:10 +00:00
Dag-Erling Smørgrav
29665eac3f
Fix some type mismatches.
...
Reviewed by: pjd@
2007-04-07 19:11:41 +00:00
Pawel Jakub Dawidek
639fdcd852
Allow to tune maximum and minimum memory used by ARC.
2007-04-07 19:10:50 +00:00