]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
19 years agoSave a few cycles in context switch.
cognet [Fri, 5 Nov 2004 19:54:13 +0000 (19:54 +0000)]
Save a few cycles in context switch.
Update comments to reflect reality.

19 years agoIf we're still running at the physical address, jump to the virtual address
cognet [Fri, 5 Nov 2004 19:52:55 +0000 (19:52 +0000)]
If we're still running at the physical address, jump to the virtual address
instead before calling initarm().
This removes the need to map virtual == physical in initarm().

19 years agoBe more verbose about cache capacities.
cognet [Fri, 5 Nov 2004 19:51:23 +0000 (19:51 +0000)]
Be more verbose about cache capacities.

19 years agoImplement casuptr.
cognet [Fri, 5 Nov 2004 19:50:48 +0000 (19:50 +0000)]
Implement casuptr.

19 years agoCall pmap_pte_init_arm9 instead of pmap_pte_init_generic if
cognet [Fri, 5 Nov 2004 19:48:40 +0000 (19:48 +0000)]
Call pmap_pte_init_arm9 instead of pmap_pte_init_generic if
ARM9_CACHE_WRITE_THROUGH is defined.

19 years ago- Add a new MD per-CPU field for Alpha 'pal_id' which is the PAL ID
jhb [Fri, 5 Nov 2004 19:16:44 +0000 (19:16 +0000)]
- Add a new MD per-CPU field for Alpha 'pal_id' which is the PAL ID
  associated with each processor.  This ID is inferred from the index
  of the pcs structure in the hwprb.
- Give Alpha CPUs FreeBSD CPU IDs more like other architectures where the
  boot processor is always CPU 0 and the other processors are numbered
  1 ... N.  List active CPUs in the system in cpu_mp_announce() as well.

Silence on: alpha@

19 years ago- Set the priority of the page zeroing thread using sched_prio() when the
jhb [Fri, 5 Nov 2004 19:14:02 +0000 (19:14 +0000)]
- Set the priority of the page zeroing thread using sched_prio() when the
  thread is created rather than adjusting the priority in the main
  function.  (kthread_create() should probably take the initial priority
  as an argument.)
- Only yield the CPU in the !PREEMPTION case if there are any other
  runnable threads.  Yielding when there isn't anything else better to do
  just wastes time in pointless context switches (albeit while the system
  is idle.)

19 years ago- Make setting of IT_ENTROPY a bit simpler in ithread_update().
jhb [Fri, 5 Nov 2004 19:11:24 +0000 (19:11 +0000)]
- Make setting of IT_ENTROPY a bit simpler in ithread_update().
- Tweak the updating of the ithread name in ithread_update() so that the
  '+' and '*' characters for device names that were too short only get
  added at the end after as many device names as possible were fit into
  the allocated space.  Prior to this, some long devices would result
  in '+' chars showing up between two different devices rather than at the
  end.

19 years agoRestrict the sched_bind to cpu 0 to i386 and amd64 for now. I forgot that
peter [Fri, 5 Nov 2004 19:00:23 +0000 (19:00 +0000)]
Restrict the sched_bind to cpu 0 to i386 and amd64 for now.  I forgot that
alpha still doesn't use logical cpu id's.

19 years agoWalk through the snp softc list instead of abusing tp->ts_c to find the
cognet [Fri, 5 Nov 2004 18:32:14 +0000 (18:32 +0000)]
Walk through the snp softc list instead of abusing tp->ts_c to find the
snp attached to a tty.
This fixes the panic that happens when using snp.

19 years agoIn cpu_critical_fork_exit(), make sure to set td_md.md_critnest so that
cognet [Fri, 5 Nov 2004 18:29:45 +0000 (18:29 +0000)]
In cpu_critical_fork_exit(), make sure to set td_md.md_critnest so that
interrupts will be enabled.

Spotted out by: jhb

19 years agoBind to cpu0 for boot() processing. (Note this is reboot, not startup)
peter [Fri, 5 Nov 2004 18:29:10 +0000 (18:29 +0000)]
Bind to cpu0 for boot() processing. (Note this is reboot, not startup)
This means we'll always call the event hooks, device_shutdown etc on the
BSP and theoretically means we can de-cruftify the cpu_reset_proxy stuff.

19 years agoMFi386 1.238 (jhb): Allow hints to disable cpus
peter [Fri, 5 Nov 2004 18:25:22 +0000 (18:25 +0000)]
MFi386 1.238 (jhb): Allow hints to disable cpus

19 years agoMFi386:
peter [Fri, 5 Nov 2004 18:24:01 +0000 (18:24 +0000)]
MFi386:
rev 1.61 (scottl):  Add KTR tracing
rev 1.62 (scottl):  Optimize (td->pmap, inlines, etc)

19 years agoDon't forget to make sure that there are no not-finished requests before
pjd [Fri, 5 Nov 2004 17:18:39 +0000 (17:18 +0000)]
Don't forget to make sure that there are no not-finished requests before
marking components as clean.

Pointed out by: scottl

19 years ago- Mark all raid3 components as clean after kern.geom.raid3.idletime seconds.
pjd [Fri, 5 Nov 2004 13:12:58 +0000 (13:12 +0000)]
- Mark all raid3 components as clean after kern.geom.raid3.idletime seconds.
- Make kern.geom.raid3.timeout variable tunable.

19 years agoMark raid3 devices as clean on shutdown (after all file systems are
pjd [Fri, 5 Nov 2004 13:01:25 +0000 (13:01 +0000)]
Mark raid3 devices as clean on shutdown (after all file systems are
unmounted).

Suggested by: scottl

19 years ago- Use ->index consumer's field to track number of in-flight requests.
pjd [Fri, 5 Nov 2004 12:42:16 +0000 (12:42 +0000)]
- Use ->index consumer's field to track number of in-flight requests.
- Remove unused #include.

19 years agoStop method for swap1 script was introduced, because gmirror needed it.
pjd [Fri, 5 Nov 2004 12:38:27 +0000 (12:38 +0000)]
Stop method for swap1 script was introduced, because gmirror needed it.
Now gmirror use shutdown hooks to mark mirrors as clean on shutdown,
so this is not needed anymore.

19 years agoUse shutdown hooks to mark mirrors as clean after all file systems are
pjd [Fri, 5 Nov 2004 12:35:21 +0000 (12:35 +0000)]
Use shutdown hooks to mark mirrors as clean after all file systems are
unmounted.

Suggested by: scottl

19 years agoRemove unused #include.
pjd [Fri, 5 Nov 2004 12:31:32 +0000 (12:31 +0000)]
Remove unused #include.

19 years agoNow with the remote job support removed there can be no remote jobs and
harti [Fri, 5 Nov 2004 11:41:36 +0000 (11:41 +0000)]
Now with the remote job support removed there can be no remote jobs and
no jobs that need to be remigrated. Remove the flags and the associated
code.

19 years ago- Add a sysctl kern.geom.mirror.idletime, so one can specify after how many
pjd [Fri, 5 Nov 2004 10:55:04 +0000 (10:55 +0000)]
- Add a sysctl kern.geom.mirror.idletime, so one can specify after how many
  seconds of idling, DRITY flags are removed.
- If mirror is in idle state or is not open for writing, sleep without
  timeout when waiting for I/O requests.
- Don't use atomic operations, for now sysctls are protected by Giant.
- Update debugs.

19 years agoWhen the last line of a file is missing a newline in -f mode, pass a
tjr [Fri, 5 Nov 2004 10:45:23 +0000 (10:45 +0000)]
When the last line of a file is missing a newline in -f mode, pass a
length argument to mbrtowc() that accounts for the terminating newline
character we add automatically. Failing to do this caused the loop to
unexpectedly run out of characters and incorrectly signal an "Illegal byte
sequence" error.

19 years agoCheck that ee's standard input and output is a terminal.
fjoe [Fri, 5 Nov 2004 10:18:05 +0000 (10:18 +0000)]
Check that ee's standard input and output is a terminal.
Do not ignore all the signals in range [1..24].

PR: 65892
MFC after: 2 weeks

19 years agoMFp4:
pjd [Fri, 5 Nov 2004 09:05:15 +0000 (09:05 +0000)]
MFp4:
- Fix for good (I hope) force-stopping mirrors and some filure cases
  (e.g. the last good component dies when synchronization is in progress).
  Don't use ->nstart/->nend consumer's fields, as this could be racy,
  because those fields are used in g_down/g_up, use ->index consumer's
  field instead for tracking number of not finished requests.

  Reported by: marcel

- After 5 seconds of idle time (this should be configurable) mark all
  dirty providers as clean, so when mirror is not used in 5 seconds
  and there will be power failure, no synchronization on boot is needed.

  Idea from: sorry, I can't find who suggested this

- When there are no ACTIVE components and no NEW components destroy whole
  mirror, not only provider.

- Fix one debug to show information about I/O request, before we change
  its command.

19 years agoSync acpi_asus(4) manual with reality.
philip [Fri, 5 Nov 2004 08:03:34 +0000 (08:03 +0000)]
Sync acpi_asus(4) manual with reality.

19 years ago- Make the header conform to standard rc.d style.
mtm [Fri, 5 Nov 2004 07:35:31 +0000 (07:35 +0000)]
- Make the header conform to standard rc.d style.
- The 'before ipfw' directive seems bogus, and should instead
  be 'before rcconf'.

19 years agoFix support for the Asus-compatible gadgets in Samsung P30/P35 laptops.
philip [Fri, 5 Nov 2004 07:24:11 +0000 (07:24 +0000)]
Fix support for the Asus-compatible gadgets in Samsung P30/P35 laptops.

PR: 73380
Submitted by: Sebastian Schulze Struchtrup <seb@struchtrup.com>

19 years agoTwo changes to vm_pgmoveco():
alc [Fri, 5 Nov 2004 06:52:29 +0000 (06:52 +0000)]
Two changes to vm_pgmoveco():
 - Eliminate an initialized but unused variable.
 - Eliminate an unnecessary call to clear the page's PG_BUSY flag.  (The
   call to vm_page_rename() already clears the page's PG_BUSY flag through
   its call to vm_page_remove().)

19 years agoDuring traversal of the inactive queue, try locking the page's containing
alc [Fri, 5 Nov 2004 06:24:05 +0000 (06:24 +0000)]
During traversal of the inactive queue, try locking the page's containing
object before accessing the page's flags or the object's reference count.

19 years agoEliminate another unnecessary call to vm_page_busy() that immediately
alc [Fri, 5 Nov 2004 05:40:45 +0000 (05:40 +0000)]
Eliminate another unnecessary call to vm_page_busy() that immediately
precedes a call to vm_page_rename().  (See the previous revision for a
detailed explanation.)

19 years agoCorrect error handling on failed writes
kientzle [Fri, 5 Nov 2004 05:39:37 +0000 (05:39 +0000)]
Correct error handling on failed writes
to the archive.

19 years agoMakefile tweaks:
kientzle [Fri, 5 Nov 2004 05:38:15 +0000 (05:38 +0000)]
Makefile tweaks:
  * Update Version
  * Add a missing MLINK
  * Fix 'distfile' target so it works from a clean checkout

19 years agoClose a race in swapoff(). Here are the gory details:
das [Fri, 5 Nov 2004 05:36:56 +0000 (05:36 +0000)]
Close a race in swapoff().  Here are the gory details:

  In order to avoid livelock, swapoff() skips over objects with a
  nonzero pip count and makes another pass if necessary.  Since it is
  impossible to know which objects we care about, it would choose an
  arbitrary object with a nonzero pip count and wait for it before
  making another pass, the theory being that this object would finish
  paging about as quickly as the ones we care about.  Unfortunately,
  we may have slept since we acquired a reference to this object.
  Hack around this problem by tsleep()ing on the pointer anyway, but
  timeout after a fixed interval.  More elegant solutions are possible,
  but the ones I considered unnecessarily complicate this rare case.

Also, kill some nits that seem to have crept into the swapoff() code
in the last 75 revisions or so:

- Don't pass both sp and sp->sw_used to swap_pager_swapoff(), since
  the latter can be derived from the former.

- Replace swp_pager_find_dev() with something simpler.  There's no
  need to iterate over the entire list of swap devices just to determine
  if a given block is assigned to the one we're interested in.

- Expand the scope of the swhash_mtx in a couple of places so that it
  isn't released and reacquired once for every hash bucket.

- Don't drop the swhash_mtx while holding a reference to an object.
  We need to lock the object first.  Unfortunately, doing so would
  violate the established lock order, so use VM_OBJECT_TRYLOCK() and
  try again on a subsequent pass if the object is already locked.

- Refactor swp_pager_force_pagein() and swap_pager_swapoff() a bit.

19 years agoRemove the unused archive_string_sprintf() utility function.
kientzle [Fri, 5 Nov 2004 05:32:04 +0000 (05:32 +0000)]
Remove the unused archive_string_sprintf() utility function.

19 years agoRevert 1.24: Brain glitch. <sigh>
kientzle [Fri, 5 Nov 2004 05:29:36 +0000 (05:29 +0000)]
Revert 1.24:  Brain glitch.  <sigh>

19 years agoClean up the error handling in the
kientzle [Fri, 5 Nov 2004 05:26:30 +0000 (05:26 +0000)]
Clean up the error handling in the
write path.  In particular, this should
solve some problems people have seen with
bsdtar not exiting on various write errors.

19 years agoarchive.h gets built in ${.OBJDIR}
kientzle [Fri, 5 Nov 2004 05:23:18 +0000 (05:23 +0000)]
archive.h gets built in ${.OBJDIR}

19 years agoUpdate a comment.
kientzle [Fri, 5 Nov 2004 05:16:40 +0000 (05:16 +0000)]
Update a comment.

19 years agoProtect against local flooder of /var/run/log. Do not loop forever in
glebius [Thu, 4 Nov 2004 23:09:57 +0000 (23:09 +0000)]
Protect against local flooder of /var/run/log. Do not loop forever in
syslog(3) if we are a priveleged program (sshd, su, etc.).

- Make syslogd open an additional socket /var/run/logpriv, with 0600
  permissions.
- In libc, try to use this socket.
- Do not loop forever if we are using this socket (partial backout of 1.31)

Reviewed by: dwmalone, Andrea Campi <andrea webcom it>
Approved by: julian (mentor)
MFC after: 1 month

19 years ago- Use stailqueue for sockets instead of socket buffer. Thus
glebius [Thu, 4 Nov 2004 22:20:21 +0000 (22:20 +0000)]
- Use stailqueue for sockets instead of socket buffer. Thus
  remove limit for 20 sockets.
- Add possibility to specify file mode for sockets created with '-l'.
- Check that socket name in '-l' is absolute.

Reviewed by: dwmalone, Andrea Campi <andrea webcom it>
Approved by: julian (mentor)

19 years agoDon't forget to turn off P_SINGLE_BOUNDARY for thread_single(SINGLE_EXIT),
davidxu [Thu, 4 Nov 2004 22:13:16 +0000 (22:13 +0000)]
Don't forget to turn off P_SINGLE_BOUNDARY for thread_single(SINGLE_EXIT),
otherwise a threaded process which calls execv() will hang in kernel and
may can not be killed!

19 years agoPartically backout previous commit. Since _callout_stop_safe() clears
glebius [Thu, 4 Nov 2004 21:30:18 +0000 (21:30 +0000)]
Partically backout previous commit. Since _callout_stop_safe() clears
out c->c_func, we can't take it after callout_stop(). To take it before
we need to acquire callout_lock, to avoid race. This commit narrows
down area where lock is held, but hack is still present.

This should be redesigned.

Approved by: julian (mentor)

19 years agoProtect the function declarations with #ifdef _KERNEL.
cognet [Thu, 4 Nov 2004 19:20:54 +0000 (19:20 +0000)]
Protect the function declarations with #ifdef _KERNEL.

19 years agoDirectly use __pcpu for PCPU_* instead of pcpup.
cognet [Thu, 4 Nov 2004 19:19:44 +0000 (19:19 +0000)]
Directly use __pcpu for PCPU_* instead of pcpup.

19 years agoDecrease KSTACK_PAGES and UAREA_PAGES.
cognet [Thu, 4 Nov 2004 19:19:21 +0000 (19:19 +0000)]
Decrease KSTACK_PAGES and UAREA_PAGES.

19 years agoUse interrupts_disable() and interrupts_restore() as intr_disable() and
cognet [Thu, 4 Nov 2004 19:18:50 +0000 (19:18 +0000)]
Use interrupts_disable() and interrupts_restore() as intr_disable() and
intr_restore() instead of re-implement it.

19 years agoAdd support for following more than one file i.e.
paul [Thu, 4 Nov 2004 19:18:19 +0000 (19:18 +0000)]
Add support for following more than one file i.e.
tail -f file1 file2

19 years agoDon't barf if no CPU type is defined while compiling kernel modules.
cognet [Thu, 4 Nov 2004 19:16:31 +0000 (19:16 +0000)]
Don't barf if no CPU type is defined while compiling kernel modules.

19 years agoImplement get_cyclecount().
cognet [Thu, 4 Nov 2004 19:15:43 +0000 (19:15 +0000)]
Implement get_cyclecount().

19 years agoTry to implement atomic operations using swp, instead of disabling interrupts.
cognet [Thu, 4 Nov 2004 19:14:50 +0000 (19:14 +0000)]
Try to implement atomic operations using swp, instead of disabling interrupts.

19 years agoGrammatical and spelling improvements.
ceri [Thu, 4 Nov 2004 19:12:43 +0000 (19:12 +0000)]
Grammatical and spelling improvements.

Reviewed by: pjd

19 years agoUse casts to enforce the return type of bswap16() and bswap32().
cognet [Thu, 4 Nov 2004 19:07:28 +0000 (19:07 +0000)]
Use casts to enforce the return type of bswap16() and bswap32().

19 years agoImplement cpu_thread_siginfo() and set_mcontext().
cognet [Thu, 4 Nov 2004 19:04:30 +0000 (19:04 +0000)]
Implement cpu_thread_siginfo() and set_mcontext().
Nuke getframe(), and choose which stack to use directly in sendsig().

19 years agoImplement cpu_set_upcall and cpu_set_upcall_kse.
cognet [Thu, 4 Nov 2004 18:59:02 +0000 (18:59 +0000)]
Implement cpu_set_upcall and cpu_set_upcall_kse.
Calculate td_frame and td_pcb the right way in cpu_thread_setup.

19 years agoGet kernel modules to work.
cognet [Thu, 4 Nov 2004 18:48:52 +0000 (18:48 +0000)]
Get kernel modules to work.

19 years agoFix braino where I didn't fix the file path from when the line was
obrien [Thu, 4 Nov 2004 15:46:59 +0000 (15:46 +0000)]
Fix braino where I didn't fix the file path from when the line was
copied from the test program.

19 years agoMFi386: revision 1.420 (Reduce annoying SCSI probing delay).
nyan [Thu, 4 Nov 2004 15:20:26 +0000 (15:20 +0000)]
MFi386: revision 1.420 (Reduce annoying SCSI probing delay).

19 years agoSync up with gdbinit.vinum removal.
ru [Thu, 4 Nov 2004 14:47:15 +0000 (14:47 +0000)]
Sync up with gdbinit.vinum removal.

OK'ed by: phk

19 years agoRemove vinum bits.
phk [Thu, 4 Nov 2004 13:34:06 +0000 (13:34 +0000)]
Remove vinum bits.

19 years agoSync up with vinum(8) and rc.d/vinum removal.
ru [Thu, 4 Nov 2004 13:33:29 +0000 (13:33 +0000)]
Sync up with vinum(8) and rc.d/vinum removal.

OK'ed by: phk

19 years agoRemove another vinum file
phk [Thu, 4 Nov 2004 13:32:24 +0000 (13:32 +0000)]
Remove another vinum file

19 years agoremove vinum startup script.
phk [Thu, 4 Nov 2004 12:59:16 +0000 (12:59 +0000)]
remove vinum startup script.

19 years agoRemove the remote stuff from make. This actually never worked in our make
harti [Thu, 4 Nov 2004 12:57:41 +0000 (12:57 +0000)]
Remove the remote stuff from make. This actually never worked in our make
because the necessary files were not imported with the original import.
If somebody really needs it, there is still the devel/pmake port.

This is just the first step and removes just everything that is ifdef'ed out.
Otherwise the code is unchanged.

Checked by: md5

Approved by: no objections on arch@

19 years agoRemove references to NO_VINUM
phk [Thu, 4 Nov 2004 12:57:40 +0000 (12:57 +0000)]
Remove references to NO_VINUM

19 years agoUps! Forgot to put "sbin" on the commit line:
phk [Thu, 4 Nov 2004 12:46:46 +0000 (12:46 +0000)]
Ups!  Forgot to put "sbin" on the commit line:

Remove userland vinum(8) stuff.

19 years agoAdapt to the new ng_timeout/ng_untimeout arguments. These now use
harti [Thu, 4 Nov 2004 12:33:55 +0000 (12:33 +0000)]
Adapt to the new ng_timeout/ng_untimeout arguments. These now use
the callout instead of the timeout interface.

Submitted by: glebius

19 years agoRemove unused vinum files.
phk [Thu, 4 Nov 2004 09:57:21 +0000 (09:57 +0000)]
Remove unused vinum files.

19 years agoRetire b_magic now, we have the bufobj containing the same hint.
phk [Thu, 4 Nov 2004 09:48:18 +0000 (09:48 +0000)]
Retire b_magic now, we have the bufobj containing the same hint.

19 years agoEliminate the embedded struct bio in struct buf.
phk [Thu, 4 Nov 2004 09:37:50 +0000 (09:37 +0000)]
Eliminate the embedded struct bio in struct buf.

Saves approx 100-170 bytes per buf depending on architecture.

19 years agoAdd back securelevel check for disks.
phk [Thu, 4 Nov 2004 09:17:55 +0000 (09:17 +0000)]
Add back securelevel check for disks.

XXX: This should live in geom_dev.c but we don't have access to the
cred there.
XXX: XXX:  This may not matter anymore since filesystems use geom_vfs.

19 years agoDon't grab the exclusive bit on a root filesystem until we are willing
phk [Thu, 4 Nov 2004 09:11:22 +0000 (09:11 +0000)]
Don't grab the exclusive bit on a root filesystem until we are willing
to mount it.  Doing so prevented fsck to be run after a refused mount.

19 years agoChange buf->b_object to buf->b_bufobj->bo_object
phk [Thu, 4 Nov 2004 09:06:54 +0000 (09:06 +0000)]
Change buf->b_object to buf->b_bufobj->bo_object

some whitespace fixes.

19 years agoBump __FreeBSD_version after addition of glibc-style strftime(3) padding
delphij [Thu, 4 Nov 2004 08:38:34 +0000 (08:38 +0000)]
Bump __FreeBSD_version after addition of glibc-style strftime(3) padding
specifiers.

This helps the port team to decide whether to use local patch for
applications that makes use of these GNU extensions (and hopefully we
can get rid of these patches finally)

Requested by: marcus

19 years agoDe-couple our I/O bio request from the embedded bio in buf by explicitly
phk [Thu, 4 Nov 2004 08:38:07 +0000 (08:38 +0000)]
De-couple our I/O bio request from the embedded bio in buf by explicitly
copying the fields.

19 years agoAdd glibc-style strftime(3) padding specifiers, namely, -(no padding),
delphij [Thu, 4 Nov 2004 08:34:57 +0000 (08:34 +0000)]
Add glibc-style strftime(3) padding specifiers, namely, -(no padding),
_(use space as padding), and 0(zero padding).

These GNU extensions are widely used ones that is worthy for us to
have.

Discussed with: stefanf, roam, -current
Approved by: murray
Prodded by: ports/72722, ports/72723
MFC After: 1 month

19 years agoFix markup: .Dv -> .Va
bms [Thu, 4 Nov 2004 08:29:28 +0000 (08:29 +0000)]
Fix markup: .Dv -> .Va
Update document dates.

Prodded by: ru

19 years agowhitespace
phk [Thu, 4 Nov 2004 08:25:52 +0000 (08:25 +0000)]
whitespace

19 years agoFixed "make clean".
ru [Thu, 4 Nov 2004 08:25:03 +0000 (08:25 +0000)]
Fixed "make clean".

19 years agoRemove buf->b_dev field.
phk [Thu, 4 Nov 2004 07:59:57 +0000 (07:59 +0000)]
Remove buf->b_dev field.

19 years agos/ffs/ntfs/
phk [Thu, 4 Nov 2004 07:18:54 +0000 (07:18 +0000)]
s/ffs/ntfs/

Fix error handling to not use VOP_CLOSE() on the disk.

Spotted by: tegge

19 years agoFinish cut&paste adjustments.
phk [Thu, 4 Nov 2004 07:17:08 +0000 (07:17 +0000)]
Finish cut&paste adjustments.

Spotted by: tegge

19 years agoHide udp_in6 behind #ifdef INET6
phk [Thu, 4 Nov 2004 07:14:03 +0000 (07:14 +0000)]
Hide udp_in6 behind #ifdef INET6

19 years agoCreate a separate directory for dynamic zones which is owned by the bind
gshapiro [Thu, 4 Nov 2004 05:24:29 +0000 (05:24 +0000)]
Create a separate directory for dynamic zones which is owned by the bind
user (for creation of the zone journal file).  This is separate from the
master/ directory for security.  Give an example dynamic zone in the
sample named.conf.

Approved by: dougb
Noticed by: Eivind Olsen <eivind at aminor.no>
MFC after: 1 week

19 years agoDocument the fact that blackhole routes normally need to be bound
bms [Thu, 4 Nov 2004 02:15:03 +0000 (02:15 +0000)]
Document the fact that blackhole routes normally need to be bound
to lo(4) interfaces to have an effect, and that this is not needed
when using IP fast forwarding.

Sponsored by: eXtensible Open Router Project <URL:http://www.xorp.org/>
MFC after: 3 weeks

19 years agoWhen performing IP fast forwarding, immediately drop traffic which is
bms [Thu, 4 Nov 2004 02:14:38 +0000 (02:14 +0000)]
When performing IP fast forwarding, immediately drop traffic which is
destined for a blackhole route.

This also means that blackhole routes do not need to be bound to lo(4)
or disc(4) interfaces for the net.inet.ip.fastforwarding=1 case.

Submitted by: james at towardex dot com
Sponsored by: eXtensible Open Router Project <URL:http://www.xorp.org/>
MFC after: 3 weeks

19 years agoDocument the fact that the flags for a FreeBSD kernel routing table
bms [Thu, 4 Nov 2004 02:13:15 +0000 (02:13 +0000)]
Document the fact that the flags for a FreeBSD kernel routing table
entry are documented in the page for route(8), not route(4).

Sponsored by: eXtensible Open Router Project <URL:http://www.xorp.org/>
MFC after: 3 weeks

19 years agoStop listening to bug reports with wrong solutions and commit a fix to the '
obrien [Thu, 4 Nov 2004 01:28:43 +0000 (01:28 +0000)]
Stop listening to bug reports with wrong solutions and commit a fix to the '
problem I know will work.

19 years agoUntil this change, the UDP input code used global variables udp_in,
rwatson [Thu, 4 Nov 2004 01:25:23 +0000 (01:25 +0000)]
Until this change, the UDP input code used global variables udp_in,
udp_in6, and udp_ip6 to pass socket address state between udp_input(),
udp_append(), and soappendaddr_locked().  While file in the default
configuration, when running with multiple netisrs or direct ithread
dispatch, this can result in races wherein user processes using
recvmsg() get back the wrong source IP/port.  To correct this and
related races:

- Eliminate udp_ip6, which is believed to be generated but then never
  used.  Eliminate ip_2_ip6_hdr() as it is now unneeded.

- Eliminate setting, testing, and existence of 'init' status fields
  for the IPv6 structures.  While with multiple UDP delivery this
  could lead to amortization of IPv4 -> IPv6 conversion when
  delivering an IPv4 UDP packet to an IPv6 socket, it added
  substantial complexity and side effects.

- Move global structures into the stack, declaring udp_in in
  udp_input(), and udp_in6 in udp_append() to be used if a conversion
  is required.  Pass &udp_in into udp_append().

- Re-annotate comments to reflect updates.

With this change, UDP appears to operate correctly in the presence of
substantial inbound processing parallelism.  This solution avoids
introducing additional synchronization, but does increase the
potential stack depth.

Discovered by: kris (Bug Magnet)
MFC after: 3 weeks

19 years agoRevert most of 1.109. Although it improved the situation on one particular
jhb [Wed, 3 Nov 2004 22:11:20 +0000 (22:11 +0000)]
Revert most of 1.109.  Although it improved the situation on one particular
motherboard, in practice the changes resulted in many false positives for
heavy network loads, etc. resulting in poor performance.  Also, the
motherboard referenced in the 1.109 log has other problems and simply does
not seem to work with the APIC enabled even with the changes in 1.109.  The
correct fix for that board seems to be to not use the APIC at all.  One
thing kept from 1.109 is that throttled interrupts are now effectively
polled on every clock tick rather than just 10 times per second.

MFC after: 1 month
Tested by: Shunsuke SHINOMIYA shino at fornext dot org

19 years agoBe more clear that "bridged" is a synonym for "layer2".
ceri [Wed, 3 Nov 2004 21:51:34 +0000 (21:51 +0000)]
Be more clear that "bridged" is a synonym for "layer2".

PR: docs/44400
Submitted by: Constantin Stefanov <cstef at mail dot ru>

19 years agoMake a more whole-hearted attempt at GEOM'ifying NTFS.
phk [Wed, 3 Nov 2004 21:36:41 +0000 (21:36 +0000)]
Make a more whole-hearted attempt at GEOM'ifying NTFS.

I must have been sleepy when I did the first pass.

Spotted by: tegge

19 years agoAlways initialize bo_private along with bo_ops in getnewvnode().
phk [Wed, 3 Nov 2004 21:09:23 +0000 (21:09 +0000)]
Always initialize bo_private along with bo_ops in getnewvnode().

Spotted by: tegge

19 years agoAllow the -f argument to work.
ceri [Wed, 3 Nov 2004 20:45:52 +0000 (20:45 +0000)]
Allow the -f argument to work.

PR: bin/73229
Submitted by: Irina Liakh <spell at itl dot ua>
MT4: 2 weeks
MT5: After 5.3-RELEASE

19 years agoThe synchronization provided by vm object locking has eliminated the
alc [Wed, 3 Nov 2004 20:17:31 +0000 (20:17 +0000)]
The synchronization provided by vm object locking has eliminated the
need for most calls to vm_page_busy().  Specifically, most calls to
vm_page_busy() occur immediately prior to a call to vm_page_remove().
In such cases, the containing vm object is locked across both calls.
Consequently, the setting of the vm page's PG_BUSY flag is not even
visible to other threads that are following the synchronization
protocol.

This change (1) eliminates the calls to vm_page_busy() that
immediately precede a call to vm_page_remove() or functions, such as
vm_page_free() and vm_page_rename(), that call it and (2) relaxes the
requirement in vm_page_remove() that the vm page's PG_BUSY flag is
set.  Now, the vm page's PG_BUSY flag is set only when the vm object
lock is released while the vm page is still in transition.  Typically,
this is when it is undergoing I/O.

19 years agoRestore TTYDEF_LFLAG to set echo bits.
phk [Wed, 3 Nov 2004 19:16:55 +0000 (19:16 +0000)]
Restore TTYDEF_LFLAG to set echo bits.

19 years agoUpdate the list of package names/descriptions.
kensmith [Wed, 3 Nov 2004 18:26:06 +0000 (18:26 +0000)]
Update the list of package names/descriptions.

Last second MFC candidate?

19 years agoDon't use atomic ops to increment interrupt stats. This was only done on
scottl [Wed, 3 Nov 2004 18:03:06 +0000 (18:03 +0000)]
Don't use atomic ops to increment interrupt stats.  This was only done on
amd64 and i386 anyways.  The stats are only kept for informational purposes.

19 years agoIntroduce the PRECIOUSPROG knob in bsd.prog.mk, similar
ru [Wed, 3 Nov 2004 18:01:21 +0000 (18:01 +0000)]
Introduce the PRECIOUSPROG knob in bsd.prog.mk, similar
to PRECIOUSLIB from bsd.lib.mk.  The side effect of this
is making installing the world under jail(8) possible by
using another knob, NOFSCHG.

Reviewed by: oliver