| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
a linked list. This is to allow the merging of the mount
options in the MNT_UPDATE case, as the current data structure
is unsuitable for this.
There are no functional differences in this commit.
Reviewed by: phk
|
| |
| |
| |
| |
| |
| |
| | |
an EPIPE error return not generate SIGPIPE on sockets.
Submitted by: lioux
Inspired by: Darwin
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
for example, break an sbrk(>=4GB) on 64-bit architectures
even if the resource limit allowed it.
o Correct an off-by-one error.
o Correct a spelling error in a comment.
o Reorder an && expression so that the commonly FALSE expression
comes first.
Submitted by: bde (bullets 1 and 2)
|
| |
| |
| |
| | |
Submitted by: Mike Makonnen <makonnen@pacbell.net>
|
| |
| |
| |
| |
| | |
is blocked on a mutex. Prepend a '*' to distinguish this case as
is done in top(1).
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
4 u_ints but needs to be an array of 4 uint32_t's to work, at least
if unsigned ints have less than 32 bits. It should be a non-array of
1 uint128_t on 128-bit machines, especially if u_int has 128 bits.
The headers that declare uint32_t (actually __uint32_t) are intentionally
not included here since this header should only be included by other
headers.
Fixed some style bugs (space instead of tab after #ifndef and #endif).
|
| |
| |
| |
| | |
These are 16 bit short values used only by the profiling code.
|
| |
| |
| |
| |
| | |
definitions so far.. 16 bit on x86 and appears to be 32 bit on sparc64.
Be explicit to avoid suprises.
|
| |
| |
| |
| | |
for supporting UIO_USERISPACE (ie: it wasn't used).
|
| |
| |
| |
| |
| | |
address space machines (eg: pdp-11) and are not likely to ever do so.
Nothing in our kernel sets this.
|
| |
| |
| |
| | |
Obtained from: dfr
|
| |
| |
| |
| | |
suhword/fuhword.
|
| |
| |
| |
| |
| | |
RB_MULTIPLE since this seems to be the easiest way to add these flags
for non-forth loaders etc.
|
| |
| |
| |
| |
| | |
stack. This is still bad(TM), but at least we have a clue when we get
hit when contigmalloc fails.
|
| |
| |
| |
| |
| | |
in this case cut/pasted from sparc64 instead of messing with
contigmalloc where it is not needed.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
implementations can provide a base zero ffs function if they wish.
This changes
#define RQB_FFS(mask) (ffs64(mask))
foo = RQB_FFS(mask) - 1;
to
#define RQB_FFS(mask) (ffs64(mask) - 1)
foo = RQB_FFS(mask);
On some platforms we can get the "- 1" for free, eg: those that use the
C code for ffs64().
Reviewed by: jake (in principle)
|
| |
| |
| |
| |
| |
| | |
Consequently, use vm_map_insert() and vm_map_delete(), which expect
the vm_map to be locked, instead of vm_map_find() and vm_map_remove(),
which do not.
|
| |
| |
| |
| |
| |
| | |
Register the ISR early, but do not actually kick off the timer until we
see some activity. This still saves us from running the arp timers on
a system with no network cards.
|
| |
| |
| |
| |
| |
| |
| | |
kmem_malloc()
- zero fill pages if PG_ZERO bit is not set after allocation in kmem_malloc()
Suggested by: alc, jake
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Added a mutex, kld_mtx, to protect the kernel_linker system. Note that
while ``classes'' is global (to that file), it is only read only after
SI_SUB_KLD, SI_ORDER_ANY.
- Add a SYSINIT to flip a flag that disallows class registration after
SI_SUB_KLD, SI_ORDER_ANY.
Idea for ``classes'' read only by: jake
Reviewed by: jake
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
allocator.
- Properly set M_ZERO when talking to the back end page allocators for
non malloc zones. This forces us to zero fill pages when they are first
brought into a cache.
- Properly handle M_ZERO in uma_zalloc_internal. This fixes a problem where
per cpu buckets weren't always getting zeroed.
|
| | |
|
| |
| |
| |
| | |
PR: misc/39528
|
| |
| |
| |
| | |
<sys/types.h> as a prerequisite.
|
| |
| |
| |
| |
| |
| | |
Now the driver is closer to matching the wi man page.
Submitted by: jhay (who obtained it from OpenBSD).
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
than 32K chunks on ZIP drives instead of deblocking it in
the driver.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
in a user process gaining visibility into the 'old' contents of a filesystem
block. There were two cases: (1) when uiomove() fails (user process issues
illegal write), and (2) when uiomove() overlaps a mmap() of the same file at
the same offset (fault -> recursive buffer I/O reads contents of old block).
Unfortunately 1.72 also had the unintended effect of forcing the filesystem
to do a read-before-write in the case of a full-block-write (non append case),
e.g. 'dd if=/dev/zero of=test.dat bs=1m count=256 conv=notrunc'. This
destroys performance.. not only is a read forced for every write, but
clustering breaks as well.
The solution is to clear the buffer manually in the full-block case rather
then asking BALLOC to do it (BALLOC issues the read-before-write). In the
partial-block case we want BALLOC to do it because the read-before-write
is necessary. This patch should greatly improve database and news-feed
server performance.
Found by: MKI <mki@mozone.net>
MFC after: 3 days
|
| |
| |
| |
| |
| |
| | |
people got three times longer than I promised.
Sponsored by: DARPA & NAI Labs.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
uifind() with a proc lock held.
change_ruid() and change_euid() have been modified to take a uidinfo
structure which will be pre-allocated by callers, they will then
call uihold() on the uidinfo structure so that the caller's logic
is simplified.
This allows one to call uifind() before locking the proc struct and
thereby avoid a potential blocking allocation with the proc lock
held.
This may need revisiting, perhaps keeping a spare uidinfo allocated
per process to handle this situation or re-examining if the proc
lock needs to be held over the entire operation of changing real
or effective user id.
Submitted by: Don Lewis <dl-freebsd@catspoiler.org>
|
| |
| |
| |
| |
| |
| |
| |
| | |
release of Giant.
o Reduce the scope of GIANT_REQUIRED in vm_map_insert().
These changes will enable us to remove the acquisition and release
of Giant from obreak().
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
if_em_fxhw.[c,h] and if_em_phy.[c,h]
have been merged into one [c,h] file.
MFC after: 3 days
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
so that /dev/mumble can be the entrypoint to some networking graph,
e.g. a tunnel or a remote tape drive or whatever...
Not fully tested (by me) yet.
Submitted by: Mark Santcroos <marks@ripe.net>
MFC after: 3 weeks
|
| |
| |
| |
| |
| |
| | |
This facilitates the use in circumstances where you are using a serial
console as well. GDB doesn't support anything higher than 9600 baud (19k2
if you are lucky), but the console does.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
8 RJ11, 8 Octacable, and 8 (used with RocketPort I/F box).
Note: untested due to lack of hardware
|
| |
| |
| |
| | |
Sponsored by: Feral Software
|
| |
| |
| |
| | |
Submitted by: tmm
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
allocated slabs and bucket caches for free items. It will not go ask the vm
for pages. This differs from M_NOWAIT in that it not only doesn't block, it
doesn't even ask.
- Add a new zcreate option ZONE_VM, that sets the BUCKETCACHE zflag. This
tells uma that it should only allocate buckets out of the bucket cache, and
not from the VM. It does this by using the M_NOVM option to zalloc when
getting a new bucket. This is so that the VM doesn't recursively enter
itself while trying to allocate buckets for vm_map_entry zones. If there
are already allocated buckets when we get here we'll still use them but
otherwise we'll skip it.
- Use the ZONE_VM flag on vm map entries and pv entries on x86.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
during the previous probe are stale.
What really should be done is route the probe through
device_probe_and_attach bit this is one of those ICBBATIASS (I can't be
bothered as there is a simpler solution). The user can easily replug the
device after kldloading a new device driver.
|
| |
| |
| |
| | |
of before.
|