Commit Graph

214095 Commits

Author SHA1 Message Date
matt
07e4706e38 Add a coherent bus dma tag which marks the first 256MB as having coherent
dma (but only for PCIe and ethernet).  Make the ethernet and PCIe attachments
use this tag instead of the default non-coherent one.
2012-10-17 20:18:55 +00:00
matt
463cf12d17 Add per-segment and per-ragne flag (to store _BUS_DMAMAP_COHERENT).
Use the per-range flag to set the per-segment flag.
This allows bus_dma to skip flushing for known coherent memory regions.
2012-10-17 20:17:18 +00:00
drochner
bd4999fa18 defopt COMPAT_60, it is already being used 2012-10-17 20:16:59 +00:00
matt
3dda49cbd6 Add PMAP_MAP_POOLPAGE / PMAP_UNMAP_POOLPAGE if PMAP_NEED_ALLOC_POOLPAGE is
defined.
2012-10-17 20:15:41 +00:00
matt
cf7ccb1e86 Add a few more DSBs before flushing cache lines. 2012-10-17 18:55:43 +00:00
matt
f88bd6b7b9 Change the semantics of the boot_physmem array to select a freelist to use
with uvm_page_physload.  Reduces duplication of work.
2012-10-17 18:53:45 +00:00
matt
60064e74d2 Add a PMAP_NEEDS_ALLOC_POOLPAGE / PMAP_ALLOC_POOLPAGE hook so systems can
allocate pool pages from a specific VM freelist.
2012-10-17 18:52:15 +00:00
jnemeth
c8dac53719 note NetBSD 6.0 release 2012-10-17 18:30:33 +00:00
matt
742e8c1b10 Need to set pmap_needs_pte_sync before calling PTE_SYNC 2012-10-17 18:29:10 +00:00
msaitoh
e8d66652c1 Fix a bug that kernel panics when the system get a packet while calling
mvgbe_stop (via ifconfig down).
2012-10-17 18:12:59 +00:00
dyoung
a433f1351e Correct spelling: entrie -> entry. 2012-10-17 17:48:48 +00:00
mlelstv
f50847fa5b Don't rely on TS_BUSY to determine wether there is a buffer
available. Instead handle a possible buffer shortage.
Also aquire lock when modifying t_state.
2012-10-17 17:05:15 +00:00
matt
0464864ace When setting pmap_needs_pte_sync to 1 be sure to sync pte that caused
the issue.
2012-10-17 16:16:23 +00:00
drochner
513c97eaed recognize the P1GB and RDTSCP which were AMD-only on Intel HW too 2012-10-17 16:13:01 +00:00
drochner
e61202360d fix trivial typo in warning msg 2012-10-17 16:09:03 +00:00
apb
5c7419e70f Add commented out "#options COMPAT_60" to all kernel configuration files
that already had commented out "#options COMPAT_50".
2012-10-17 14:49:40 +00:00
apb
4ebc1e1ca3 Add "no options COMPAT_60" to all kernel configuration files
that already had "no options COMPAT_50".
2012-10-17 14:48:41 +00:00
apb
f3929b106b Add "options COMPAT_60" to all kernel configuration files
that already had "options COMPAT_50".
2012-10-17 14:48:07 +00:00
msaitoh
1bf68f95d9 Add code to modify interrupt coalescing with sysctl.
- both TX side an RX side.
 - different setting for each port
 - TX side is hw.mvgbe.mvgbe*.ipginttx
 - RX side is hw.mvgbe.mvgbe*.ipgintrx
 - The default value is 768.
 - The lowest value is 0
 - For highest value, 0x3777 is used for V1, and 0xffff is used for V2.
2012-10-16 19:49:41 +00:00
msaitoh
31b7118873 Change to uintmax_t again. 2012-10-16 19:40:59 +00:00
msaitoh
618eddcf83 Return value of __BIT() and __BITS() is not uint32_t but uint64_t. 2012-10-16 17:39:35 +00:00
pooka
f78e8a8efa * avoid problems if the platform calls readlink() from dlsym()
* alias __read_chk() to read() on Linux (technically, though,
  it should call host __read_chk() instead of read())
2012-10-16 12:56:10 +00:00
rkujawa
d4d45f67fd Fix fallout from recent ed driver replacement. Makes amigappc build again. 2012-10-16 12:31:57 +00:00
apb
5adbdf645c Make i386/ramdisks/common/list.ramdisk identical to
amd64/ramdisks/common/list.ramdisk.

Previously, the amd64 list.ramdisk used the small version of gzip from
distrib/utils/x_gzip, while the i386 list.ramdisk used the full version
of gzip built from usr.bin/gzip, and also used extra libraries needed to
make that work.  Now, they both use the small version.

The only other difference was in the order of some PROG lines.
2012-10-16 08:28:13 +00:00
apb
5d76c7eb78 In distrib/*/ramdisks/common/Makefile.ramdisk, allow the caller to
pre-define the LISTS variable if they do not want it to include
${.CURDIR}/lists.  This opens the possibility of making some of the
many distrib/*/ramdisks/*/lists files shared in the future.

XXX: Some of the differences between these files seem to be unnecessary.
2012-10-16 08:23:20 +00:00
apb
8d127e2f7d Add distrib/common/Makefile.minirootkmod. Apart from comments and the
conversion of some constants to variables, this is identical to the code
that was previously present in both distrib/amd64/kmod/Makefile and
distrib/i386/kmod/Makefile.

Change distrib/amd64/kmod/Makefile and distrib/i386/kmod/Makefile to just
set some variables and .include "../../common/Makefile.minirootkmod".
2012-10-16 08:19:36 +00:00
msaitoh
6e01075aae Fix a bug that armeb machine misunderstand MBR partition's offset
and size. Fixes PR#47081
2012-10-16 00:25:09 +00:00
riastradh
8e972045d7 Restore _PC_NO_TRUNC in zfs_netbsd_pathconf.
Accidentally clobbered it in a previous commit while moving patches
around between source trees -- oops.
2012-10-16 00:04:15 +00:00
riastradh
6d6cb07bff Fail lookup of .. in a deleted directory with ENOENT.
Don't try to zget the parent, whose znode id may have been recycled
by now.

It's not clear to me how Solaris avoids this, but maybe I'm just
missing something obvious.
2012-10-15 23:51:11 +00:00
riastradh
1baf22d09c Fix various issues in zfs life cycle, locking, and vop protocol.
- Restore some zfs locking and unlocking that got lost randomly.

- Enable use of the BSD vnode lock.  Lock order: all BSD vnode locks
are taken before all zfs internal locks.  There remains an issue with
O_EXCL, to be solved later (famous last words).  KASSERT the locking
scheme up the wazoo.

- Take our cruft out of zfs_lookup and move it to zfs_netbsd_lookup.
Restore much of the way zfs_lookup looked to make merging future
versions easier.  Disable use of the namecache for now because its
locking dance is too scary to contemplate.

- Implement BSD semantics for rename, to appease our tests.  This is
a provisional kludge; eventually we need VOP_RENAME to take a flag
specifying whether to use BSD semantics or POSIX semantics.

- Simplify zfs_netbsd_reclaim and make it work.  Now that getnewvnode
never tries to vclean anything itself, we need not worry about
recursion of ZFS_OBJ_MUTEX locks.

- Clarify and fix genfs node initialization and destruction.

zfs passes most of our atf vfs tests now, including the rename races.

Still to do:

- fix the impedance mismatch between our permissions model and zfs's;
- fix O_EXCL (nontrivial);
- throw dirconc at it and see how badly it explodes;
- find why zpool sometimes wedges itself during mkfs; and
- find why pool caches sometimes seem to get corrupted.
2012-10-15 23:08:19 +00:00
riastradh
1b44cf7c91 secpolicy_vnode_access must be called with the vnode lock held.
Don't unlock the vnode and then tell the caller about what the world
was like while the vnode was locked.  The world changes fast.
2012-10-15 22:50:25 +00:00
riastradh
2ea30100de Simplify zfs dirlock reference counting.
No need to pass dzp around; dl has a pointer to it.
2012-10-15 22:43:50 +00:00
msaitoh
2d0deef114 -Wstrict-overflow 2012-10-15 22:22:01 +00:00
palle
353a2445b0 Added palle@ to list of NetBSD developers 2012-10-15 18:15:28 +00:00
njoly
60dc3e4d2e Add a small testcase for PR/47068. 2012-10-15 17:49:58 +00:00
jakllsch
daedb20696 Add ural; still needs a man page. 2012-10-15 17:08:33 +00:00
riastradh
b2ba8fafaa Do reference counting for zfs range lock waiters.
Avoid cv_broadcast(&cv); cv_destroy(&cv); which works in Solaris only
by abuse of the condvar abstraction.

There are parts of this code that should be factored into smaller
subroutines, mainly range lock allocation and initialization, but
that would make it harder to merge newer versions of zfs, so for now
I've just expanded those parts further in-line.
2012-10-15 14:15:59 +00:00
riastradh
f1e3330bc7 Do reference counting for zfs dirlock waiters.
Solaris relies on cv_broadcast(&cv); cv_destroy(&cv) working, but
that hoses our cv_wait, which needs to continue using cv after it is
woken.  Solaris's idiom is an abuse of the condvar abstraction, but
we can get the same effect with reference counting.
2012-10-15 14:03:06 +00:00
jakllsch
c2c9883c0b Make whitespace following preprocessor keywords consistent
with the predominating form in this file (that is, a space).
2012-10-15 13:38:52 +00:00
skrll
27760181fb More VERBOSE_INIT_ARM output tweaks. 2012-10-15 12:26:06 +00:00
skrll
4f3dabd013 Typo in comment. 2012-10-15 11:24:15 +00:00
skrll
ec958642ae Print the system vectors in order so I don't get confused. 2012-10-15 10:19:52 +00:00
wiz
e69208883b tmux-1.7 is out. 2012-10-15 08:08:01 +00:00
dholland
6c1de0eff5 Add an XXX comment about a broken error case in ufs_dirremove.
(this was in one of my old rename patches)
2012-10-14 23:57:32 +00:00
christos
eac5a1b990 remove KERN_USRSTACK 2012-10-14 20:56:55 +00:00
phx
c8ba8ca4a7 CV3DONZORRO2 option is no longer needed.
grf_cv3d.c was successfully tested running in a Zorro2 slot.
2012-10-14 20:33:17 +00:00
msaitoh
3f974a9659 Add Interrupt Coalescing setting by Robert Swindells. 2012-10-14 19:17:08 +00:00
msaitoh
0e1b36df07 struct device * -> device_t change. 2012-10-14 19:10:41 +00:00
tsutsui
17a9010449 KNF and space nits 2012-10-14 19:06:25 +00:00
tsutsui
0fc41fa7ec Note x68k formatting floppy support. 2012-10-14 18:42:22 +00:00