]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
18 years agoCast the pointer to void * before casting it back to struct type * in
mux [Fri, 3 Mar 2006 18:54:33 +0000 (18:54 +0000)]
Cast the pointer to void * before casting it back to struct type * in
STAILQ_LAST.  This quiets a warning from GCC about increased required
alignment for the cast.

Idea from:      cognet

18 years ago- use a more common style to print memory sizes
netchild [Fri, 3 Mar 2006 18:54:05 +0000 (18:54 +0000)]
- use a more common style to print memory sizes
- add some more cache sizes (2nd and 3rd level) [1]

Submitted by: HATANOU Tomomi <hatanou@infolab.ne.jp> [1]
PR: 91328 [1]

18 years agoThis commit was generated by cvs2svn to compensate for changes in r156251,
mux [Fri, 3 Mar 2006 18:45:12 +0000 (18:45 +0000)]
This commit was generated by cvs2svn to compensate for changes in r156251,
which included commits to RCS files with non-trunk default branches.

18 years agoImport today's csup sources to get the warning fix for queue.h. We
mux [Fri, 3 Mar 2006 18:45:12 +0000 (18:45 +0000)]
Import today's csup sources to get the warning fix for queue.h.  We
probably want to do something similar in sys/queue.h; it's bad to have
STAILQ_LAST() generate GCC warnings.

18 years agoFix the decaying MODULES_WITH_WORLD again by adding a missing opt_*.h to SRCS.
yar [Fri, 3 Mar 2006 18:42:09 +0000 (18:42 +0000)]
Fix the decaying MODULES_WITH_WORLD again by adding a missing opt_*.h to SRCS.

18 years agoMove XBOX option to options. While it is only valid on i386,
imp [Fri, 3 Mar 2006 18:09:37 +0000 (18:09 +0000)]
Move XBOX option to options.  While it is only valid on i386,
syscons_isa is shared with other machines.

18 years agoUnbreak byte counters when network interfaces are in monitor mode by
csjp [Fri, 3 Mar 2006 17:21:08 +0000 (17:21 +0000)]
Unbreak byte counters when network interfaces are in monitor mode by
re-organizing the monitor return logic. We perform interface monitoring
checks after we have determined if the CRC is still on the packet, if
it is, m_adj() is called which will adjust the packet length. This
ensures that we are not including CRC lengths in the byte counters for
each packet.

Discussed with: andre, glebius

18 years agoConnect csup the build!
mux [Fri, 3 Mar 2006 14:55:43 +0000 (14:55 +0000)]
Connect csup the build!

18 years ago- Don't put the .h in SRCS.
mux [Fri, 3 Mar 2006 14:54:47 +0000 (14:54 +0000)]
- Don't put the .h in SRCS.
- Use LDADD += -lpthread and DPADD += ${LIBPTHREAD} instead of -pthread.
- s/-I${.CURDIR}/-I./ to fix make obj.

Submitted by: ru

18 years agoCommitted the xbox syscons(8)-able console driver.
rink [Fri, 3 Mar 2006 14:52:57 +0000 (14:52 +0000)]
Committed the xbox syscons(8)-able console driver.

Reviewed by:    arch@ (no comments)
Approved by:    imp (mentor)

18 years agoSync with actual code.
jcamou [Fri, 3 Mar 2006 13:58:43 +0000 (13:58 +0000)]
Sync with actual code.

PR: docs/87681
Noticed by: Andreas Kohn <andreas@syndrom23.de>
Reviewed by: brooks
Approved by: trhodes (mentor)
MFC after: 3 days

18 years agoCorrectly switch IFCAP_VLAN_HWTAGGING on and off.
glebius [Fri, 3 Mar 2006 12:32:51 +0000 (12:32 +0000)]
Correctly switch IFCAP_VLAN_HWTAGGING on and off.

Reported & tested by: Peter Blok <pblok bsd4all.org>

18 years ago- Do not leak read lock in IP_FW_TABLE_GETSIZE case of ipfw_ctl().
glebius [Fri, 3 Mar 2006 12:10:59 +0000 (12:10 +0000)]
- Do not leak read lock in IP_FW_TABLE_GETSIZE case of ipfw_ctl().
- Acquire read (not write) lock in case of IP_FW_TABLE_LIST.

In collaboration with: ru

18 years agoDocument the monitor mode and explain how it can be used.
thompsa [Fri, 3 Mar 2006 09:32:25 +0000 (09:32 +0000)]
Document the monitor mode and explain how it can be used.

18 years agoSince we are using random ethernet addresses for the bridge, it is possible
thompsa [Fri, 3 Mar 2006 09:12:21 +0000 (09:12 +0000)]
Since we are using random ethernet addresses for the bridge, it is possible
that we might have address collisions, so make sure that this hardware address
isn't already in use on another bridge.

Submitted by: csjp
MFC after: 1 month

18 years agoDon't truncate f_mntfromname & f_mntonname to 16 characters when
ps [Fri, 3 Mar 2006 07:20:54 +0000 (07:20 +0000)]
Don't truncate f_mntfromname & f_mntonname to 16 characters when
translating statfs into ostatfs.  This allows 4.x binaries making
statfs calls to work on 6.x.

18 years agomicro fix from justin
mjacob [Fri, 3 Mar 2006 07:04:43 +0000 (07:04 +0000)]
micro fix from justin

18 years agoSlightly re-worked bpf(4) code associated with bridging: if we have a
csjp [Fri, 3 Mar 2006 05:58:18 +0000 (05:58 +0000)]
Slightly re-worked bpf(4) code associated with bridging: if we have a
destination interface as a member of our bridge or this is a unicast packet,
push it through the bpf(4) machinery.

For broadcast or multicast packets, don't bother with the bpf(4) because it will
be re-injected into ether_input. We do this before we pass the packets through
the pfil(9) framework, as it is possible that pfil(9) will drop the packet or
possibly modify it, making it very difficult to debug firewall issues on the
bridge.

Further, implemented IFF_MONITOR for bridge interfaces. This does much the same
thing that it does for regular network interfaces: it pushes the packet to any
bpf(4) peers and then returns. This bypasses all of the bridge machinery,
saving mutex acquisitions, list traversals, and other operations performed by
the bridging code.

This change to the bridging code is useful in situations where individuals use a
bridge to multiplex RX/TX signals from two interfaces, as is required by some
network taps for de-multiplexing links and transmitting the RX/TX signals
out through two separate interfaces. This behaviour is quite common for network
taps monitoring links, especially for certain manufacturers.

Reviewed by: thompsa
MFC after: 1 month
Sponsored by: Seccuris Labs

18 years agoiir works on PAE now.
scottl [Fri, 3 Mar 2006 04:30:18 +0000 (04:30 +0000)]
iir works on PAE now.

18 years agoAdd make glue for building csup. Not yet connected to the build.
mux [Fri, 3 Mar 2006 04:28:13 +0000 (04:28 +0000)]
Add make glue for building csup.  Not yet connected to the build.

18 years agoInitial import of csup.
mux [Fri, 3 Mar 2006 04:11:29 +0000 (04:11 +0000)]
Initial import of csup.

18 years agoThis commit was generated by cvs2svn to compensate for changes in r156230,
mux [Fri, 3 Mar 2006 04:11:29 +0000 (04:11 +0000)]
This commit was generated by cvs2svn to compensate for changes in r156230,
which included commits to RCS files with non-trunk default branches.

18 years agoWhen there are no mount options, an implicit "rw" should be printed in
keramida [Fri, 3 Mar 2006 02:46:15 +0000 (02:46 +0000)]
When there are no mount options, an implicit "rw" should be printed in
the output of ``mount -p''.

Approved by: rodrigc

18 years ago- Print message about cpufreq and timecounter TSC
mnag [Fri, 3 Mar 2006 02:06:04 +0000 (02:06 +0000)]
- Print message about cpufreq and timecounter TSC

Approved by: njl
MFC after: 1 day

18 years ago- Add entry about using timecounter TSC and cpu frequency changing.
mnag [Fri, 3 Mar 2006 02:04:52 +0000 (02:04 +0000)]
- Add entry about using timecounter TSC and cpu frequency changing.

Approved by: njl
MFC after: 1 day

18 years agoFix endian bugs accessing ioctl arguments that are passed by value.
emax [Fri, 3 Mar 2006 00:46:28 +0000 (00:46 +0000)]
Fix endian bugs accessing ioctl arguments that are passed by value.

Pointed out by: marius
MFC after: 1 day

18 years agoEliminate a deadlock when creating snapshots. Blocking vn_start_write() must
tegge [Thu, 2 Mar 2006 22:13:28 +0000 (22:13 +0000)]
Eliminate a deadlock when creating snapshots.  Blocking vn_start_write() must
be called without any vnode locks held.  Remove calls to vn_start_write() and
vn_finished_write() in vnode_pager_putpages() and add these calls before the
vnode lock is obtained to most of the callers that don't already have them.

18 years agoHold extra reference to vm object while cleaning pages.
tegge [Thu, 2 Mar 2006 21:38:38 +0000 (21:38 +0000)]
Hold extra reference to vm object while cleaning pages.

18 years agoDon't try to show marker nodes.
tegge [Thu, 2 Mar 2006 21:31:15 +0000 (21:31 +0000)]
Don't try to show marker nodes.

18 years agoDocument which version of 802.1D STP we implement.
thompsa [Thu, 2 Mar 2006 20:50:33 +0000 (20:50 +0000)]
Document which version of 802.1D STP we implement.

18 years agoFix types of time_second and time_uptime variables.
ru [Thu, 2 Mar 2006 19:47:41 +0000 (19:47 +0000)]
Fix types of time_second and time_uptime variables.

18 years agoThe altq(4) code already handles SMP so clarify what ALTQ_NOPCC is needed for.
thompsa [Thu, 2 Mar 2006 19:45:59 +0000 (19:45 +0000)]
The altq(4) code already handles SMP so clarify what ALTQ_NOPCC is needed for.

18 years agoUpdate URL at cisco.com.
glebius [Thu, 2 Mar 2006 15:11:05 +0000 (15:11 +0000)]
Update URL at cisco.com.

18 years agoActually bump the date to the commit-date for the last commit.
brueffer [Thu, 2 Mar 2006 14:55:07 +0000 (14:55 +0000)]
Actually bump the date to the commit-date for the last commit.

18 years agoDocument the graid3(8), gstripe(8) and gconcat(8) periodic scripts.
brueffer [Thu, 2 Mar 2006 14:48:17 +0000 (14:48 +0000)]
Document the graid3(8), gstripe(8) and gconcat(8) periodic scripts.

18 years agoAdd the graid3(8), gstripe(8) and gconcat(8) status scripts, default is "off".
brueffer [Thu, 2 Mar 2006 14:46:00 +0000 (14:46 +0000)]
Add the graid3(8), gstripe(8) and gconcat(8) status scripts, default is "off".

Approved by: rwatson (mentor)

18 years agoAdd periodic scripts that check the status of graid3(8), gstripe(8)
brueffer [Thu, 2 Mar 2006 14:44:19 +0000 (14:44 +0000)]
Add periodic scripts that check the status of graid3(8), gstripe(8)
and gconcat(8) devices, respectively.

Approved by: rwatson (mentor)

18 years agoo Fix an URL to the "The BSD Family Tree" article.
maxim [Thu, 2 Mar 2006 14:38:45 +0000 (14:38 +0000)]
o Fix an URL to the "The BSD Family Tree" article.

Spotted by: Marcin Jessa

18 years agoAdd signal set sq_kill to sigqueue structure, the member saves all
davidxu [Thu, 2 Mar 2006 14:06:40 +0000 (14:06 +0000)]
Add signal set sq_kill to sigqueue structure, the member saves all
signals sent by kill() syscall, without this, a signal sent by
sigqueue() can cause a signal sent by kill() to be lost.

18 years agoUse BUS_DMA_COHERENT.
cognet [Thu, 2 Mar 2006 14:06:38 +0000 (14:06 +0000)]
Use BUS_DMA_COHERENT.

18 years agoUpdate copyright years and remove third clause.
des [Thu, 2 Mar 2006 14:00:40 +0000 (14:00 +0000)]
Update copyright years and remove third clause.

18 years agoRead site.rc after default.rc.
des [Thu, 2 Mar 2006 13:58:04 +0000 (13:58 +0000)]
Read site.rc after default.rc.

18 years agoIgnore generated files.
des [Thu, 2 Mar 2006 13:54:01 +0000 (13:54 +0000)]
Ignore generated files.

18 years agoAdd nested include of <wchar.h>
phk [Thu, 2 Mar 2006 10:01:52 +0000 (10:01 +0000)]
Add nested include of <wchar.h>

18 years agoFix the %Q printf extension to behave as expected
phk [Thu, 2 Mar 2006 08:53:45 +0000 (08:53 +0000)]
Fix the %Q printf extension to behave as expected

18 years ago - Acquire lk in softdep_slowdown so that it's owned when we call
jeff [Thu, 2 Mar 2006 08:52:53 +0000 (08:52 +0000)]
 - Acquire lk in softdep_slowdown so that it's owned when we call
   softdep_speedup().
 - Assert that lk is held in softdep_speedup() rather than acquiring it.
   This avoids a potential lock recursion.

18 years agoSuffer a little bit of math every 16 second and tighten calibration of
phk [Thu, 2 Mar 2006 08:09:46 +0000 (08:09 +0000)]
Suffer a little bit of math every 16 second and tighten calibration of
cpu_ticks to the low side of PPM.

18 years ago - Move softdep from using a global worklist to per-mount worklists. This
jeff [Thu, 2 Mar 2006 05:50:23 +0000 (05:50 +0000)]
 - Move softdep from using a global worklist to per-mount worklists.  This
   has many positive effects including improved smp locking, reducing
   interdependencies between mounts that can lead to deadlocks, etc.
 - Add the softdep worklist and various counters to the ufsmnt structure.
 - Add a mount pointer to the workitem and remove mount pointers from the
   various structures derived from the workitem as they are now redundant.
 - Remove the poor-man's semaphore protecting softdep_process_worklist and
   softdep_flushworklist.  Several threads may now process the list
   simultaneously.
 - Add softdep_waitidle() to block the thread until all pending
   dependencies being operated on by other threads have been flushed.
 - Use softdep_waitidle() in unmount and snapshots to block either
   operation until the fs is stable.
 - Remove softdep worklist processing from the syncer and move it into the
   softdep_flush() thread.  This thread processes all softdep mounts
   once each second and when it is called via the new softdep_speedup()
   when there is a resource shortage.  This removes the softdep hook
   from the kernel and various hacks in header files to support it.

Reviewed by/Discussed with: tegge, truckman, mckusick
Tested by: kris

18 years ago - Lock Giant if needed around the call to vnode_create_vobject(). This is
jeff [Thu, 2 Mar 2006 05:37:44 +0000 (05:37 +0000)]
 - Lock Giant if needed around the call to vnode_create_vobject().  This is
   only important if devfs is not mpsafe.

Sponsored by: Isilon Systems, Inc.
Found by: kris

18 years agoDo not use the TSC where its known to be broken, this will cause the queue
thompsa [Thu, 2 Mar 2006 00:51:39 +0000 (00:51 +0000)]
Do not use the TSC where its known to be broken, this will cause the queue
speeds to perform below the desired bitrate and throughput will be erratic.

This makes queueing work on the Geode SC1100, K5 model 0 and IDT WinChip C6
processors.

MFC after: 3 days

18 years agoUse 8 * sizeof(int) instead of hardcoding 32, for the unlikely case this
cognet [Thu, 2 Mar 2006 00:37:40 +0000 (00:37 +0000)]
Use 8 * sizeof(int) instead of hardcoding 32, for the unlikely case this
code ever get used on a plateform where sizeof(int) != 4.

Suggested by: jmg

18 years agoNote that BUS_DMA_COHERENT currently only affects sparc64 and arm.
cognet [Wed, 1 Mar 2006 23:56:18 +0000 (23:56 +0000)]
Note that BUS_DMA_COHERENT currently only affects sparc64 and arm.

Suggested by: scottl

18 years ago1. Fix a race in aio_return.
davidxu [Wed, 1 Mar 2006 23:41:47 +0000 (23:41 +0000)]
1. Fix a race in aio_return.
2. Save and restore syscall errno correctly.
3. Style fix.

18 years agoStyle fix.
davidxu [Wed, 1 Mar 2006 23:40:00 +0000 (23:40 +0000)]
Style fix.

18 years agoFix a mutex lock/unlock mismatch.
davidxu [Wed, 1 Mar 2006 23:38:53 +0000 (23:38 +0000)]
Fix a mutex lock/unlock mismatch.

18 years agoTry to honor BUS_DMA_COHERENT : if the flag is set, normally allocate memory
cognet [Wed, 1 Mar 2006 23:04:25 +0000 (23:04 +0000)]
Try to honor BUS_DMA_COHERENT : if the flag is set, normally allocate memory
with malloc() or contigmalloc() as usual, but try to re-map the allocated
memory into a VA outside the KVA, non-cached, thus making the calls to
bus_dmamap_sync() for these buffers useless.

18 years agoRemove NO_OBJ now that this makefile builds something.
ru [Wed, 1 Mar 2006 22:59:00 +0000 (22:59 +0000)]
Remove NO_OBJ now that this makefile builds something.

Noticed by: Andrzej Tobola

18 years agoUse a better panic message than lol.
cognet [Wed, 1 Mar 2006 20:43:51 +0000 (20:43 +0000)]
Use a better panic message than lol.

18 years agoMake sure we decrement p_lock before leaving prefetch_abort_handler()
cognet [Wed, 1 Mar 2006 20:42:47 +0000 (20:42 +0000)]
Make sure we decrement p_lock before leaving prefetch_abort_handler()

18 years agoAdd a note explaining what the rescue/ directory is for.
ceri [Wed, 1 Mar 2006 20:14:55 +0000 (20:14 +0000)]
Add a note explaining what the rescue/ directory is for.

PR: docs/93990
Submitted by: Ulf Lilleengen
MFC after: 3 days

18 years agoAssert proper use of bio_caller1, bio_caller2, bio_cflags, bio_driver1,
pjd [Wed, 1 Mar 2006 19:01:58 +0000 (19:01 +0000)]
Assert proper use of bio_caller1, bio_caller2, bio_cflags, bio_driver1,
bio_driver2 and bio_pflags fields.

Reviewed by: phk

18 years agoAdd new NTP servers for Taiwan.
ceri [Wed, 1 Mar 2006 18:37:41 +0000 (18:37 +0000)]
Add new NTP servers for Taiwan.

PR: bin/92160
Submitted by: Jose Liang <jose at jose dot idv pinkt tw>
Approved by: jhb
MFC After: 2 days

18 years agoProvide ability to disable kbdmux(4) with the hint.kbdmux.0.disabled="1" hint.
emax [Wed, 1 Mar 2006 18:34:48 +0000 (18:34 +0000)]
Provide ability to disable kbdmux(4) with the hint.kbdmux.0.disabled="1" hint.
Document hint in the kbdmux(4) man page.

Requested by: scottl
MFC after: 1 day

18 years agouserret() now only takes 2 parameters.
cognet [Wed, 1 Mar 2006 18:33:45 +0000 (18:33 +0000)]
userret() now only takes 2 parameters.

18 years agoTypo fix; "ing" -> "in".
jkoshy [Wed, 1 Mar 2006 16:49:07 +0000 (16:49 +0000)]
Typo fix; "ing" -> "in".

18 years agoWrap keymap menu helper functions in #ifdef WITH_SYSCONS to unbreak the
jhb [Wed, 1 Mar 2006 16:37:09 +0000 (16:37 +0000)]
Wrap keymap menu helper functions in #ifdef WITH_SYSCONS to unbreak the
build on archs that don't include syscons support in sysinstall.

Reported by: sparc64 tinderbox

18 years agoNote that ACPI_DEBUG depends on DDB.
wkoszek [Wed, 1 Mar 2006 16:31:37 +0000 (16:31 +0000)]
Note that ACPI_DEBUG depends on DDB.

Reviewed by: njl
Approved by: cognet (mentor)
MFC after: 3 days

18 years ago- Reduce needless DNS query by lookup only appropriate address
ume [Wed, 1 Mar 2006 16:13:17 +0000 (16:13 +0000)]
- Reduce needless DNS query by lookup only appropriate address
  family. [1]
- Specify appropriate hints to getaddrinfo(3). [1]
- Obtain address family from peername in inet mode.

Submitted by: Rostislav Krasny <rosti.bsd__at__gmail.com> [1]
Tested by: yar, Rostislav Krasny <rosti.bsd__at__gmail.com>
MFC after: 1 week

18 years agoHandle the errors returned by res_querydomain() in same manner.
ume [Wed, 1 Mar 2006 15:53:49 +0000 (15:53 +0000)]
Handle the errors returned by res_querydomain() in same manner.

Reported by: yar
Tested by: yar, Rostislav Krasny <rosti.bsd__at__gmail.com>
MFC after: 1 week

18 years agoCorrect a remote kernel panic when processing zero-length RPC records
simon [Wed, 1 Mar 2006 14:17:32 +0000 (14:17 +0000)]
Correct a remote kernel panic when processing zero-length RPC records
via TCP. [06:10]

Security: FreeBSD-SA-06:10.nfs
Approved by: cperciva

18 years agoDo not discard the current value of __MAKE_CONF when testing
yar [Wed, 1 Mar 2006 13:07:17 +0000 (13:07 +0000)]
Do not discard the current value of __MAKE_CONF when testing
whether MAKEOBJDIRPREFIX is set at a wrong place.

Reviewed by: ru
MFC after: 3 days

18 years agoUpdate low-level code. (to version 1.4)
rik [Wed, 1 Mar 2006 09:50:20 +0000 (09:50 +0000)]
Update low-level code. (to version 1.4)

Obtained from: Cronyx Engineering
MFC after: 3 days

18 years agoForgot to revert to use weak symbols when I was debugging, fix it!
davidxu [Wed, 1 Mar 2006 08:50:36 +0000 (08:50 +0000)]
Forgot to revert to use weak symbols when I was debugging, fix it!

18 years agoAdd missing parameter mq_attr * for mq_open.
davidxu [Wed, 1 Mar 2006 08:06:09 +0000 (08:06 +0000)]
Add missing parameter mq_attr * for mq_open.

18 years agoWork around the deadlock that occours when ATA waits for the taskqueue
sos [Wed, 1 Mar 2006 07:48:41 +0000 (07:48 +0000)]
Work around the deadlock that occours when ATA waits for the taskqueue
to call back for completition and something else is holding the taskqueue
waiting for ATA to return data.
This should clear up the "semaphore timeout !! DANGER Will Robinson !!"
in most situations, and log "taskqueue timeout - completing request directly"
instead, with a delayed "WARNING - freeing taskqueue zombie request" when
the taskqueue finally calls us back with the now stale request.
(It would have been nice if there was a way to remove a scheduled item from
 a taskqueue, but that is not currently implemented in the kernel).

A real fix for this is in the works but wont make it to 6.1RELEASE

definite MFC candidate.

18 years agoBig update to the iir driver:
scottl [Wed, 1 Mar 2006 07:24:39 +0000 (07:24 +0000)]
Big update to the iir driver:
- Don't use a common buffer in the softc to store per-command data.  Reserve
  a buffer in the command itself.
- Don't allocate DMA memory for the kernel command structures when all you
  really need is DMA memory for the scratch buffer embedded in them.  Instead
  allocate a slab for the scratch buffers and divide it up as needed.
- Call bus_dmamap_unload() at the completion of commands.
- Preserve and clear the CAM CCB status flags at completion.
- Reorder some low-level command operations to try to close races.
- Limit the simq to 32 commands for now.  There are some serious problems
  with the driver under load that are not well understood, so keeping the
  simq lower helps avoid this.  It has been tested at a higher value, but
  this is a safe value that doesn't show much performance degredation.

These changes allow the driver to work reliably with >4GB of memory on i386
and amd64, and also work around deadlocks seen under very high load in
certain situations.  The work-around is far from ideal, but without and
documentation it is hard to know what the right fix is.

MFC candidate

18 years agoRegenerate.
davidxu [Wed, 1 Mar 2006 06:49:38 +0000 (06:49 +0000)]
Regenerate.

18 years agos/timer_t/int/g
davidxu [Wed, 1 Mar 2006 06:48:31 +0000 (06:48 +0000)]
s/timer_t/int/g

18 years agoBring in my initial version of POSIX realtime extension library.
davidxu [Wed, 1 Mar 2006 06:37:34 +0000 (06:37 +0000)]
Bring in my initial version of POSIX realtime extension library.
Current the library implements mqueue, timer and aio with SIGEV_THREAD
notification supported.

Earlier version reviewed by: deischen

18 years agoDon't free ifaces yet, should fix a panic
imp [Wed, 1 Mar 2006 06:31:24 +0000 (06:31 +0000)]
Don't free ifaces yet, should fix a panic

18 years agoLet kernel POSIX timer code and mqueue code to use integer as a resource
davidxu [Wed, 1 Mar 2006 06:29:34 +0000 (06:29 +0000)]
Let kernel POSIX timer code and mqueue code to use integer as a resource
handle, the timer_t and mqd_t types will be a pointer which userland
will define it.

18 years agoDisconnect mqueue from buildworld, as I will implement it in seperated
davidxu [Wed, 1 Mar 2006 06:25:46 +0000 (06:25 +0000)]
Disconnect mqueue from buildworld, as I will implement it in seperated
library.

18 years agoguard function decls with _KERNEL so user code can include this file
sam [Wed, 1 Mar 2006 05:59:56 +0000 (05:59 +0000)]
guard function decls with _KERNEL so user code can include this file

18 years agoIntegrate kbdmux(4) into syscons(4) and kbd code.
emax [Tue, 28 Feb 2006 23:46:23 +0000 (23:46 +0000)]
Integrate kbdmux(4) into syscons(4) and kbd code.

By default syscons(4) will look for the kbdmux(4) keyboard first, and then,
if not found, look for any keyboard.

Current kbd code is modified so if kbdmux(4) is the current keyboard, all
new keyboards are automatically added to the kbdmux(4).

Switch to kbdmux(4) can be done at boot time, by loading kbdmux module at
the loader prompt, or at runtime, by kldload'ing the kbdmux module and
releasing current active keyboard.

If, for whatever reason, kbdmux(4) is not required/desired then just do
not load it and everything should work as before. It is also possible to
kldunload kbdmux at runtime and syscons(4) will automatically switch to
the first available keyboard.

No response from: freebsd-current@
MFC after: 1 day

18 years agoRework TCP window scaling (RFC1323) to properly scale the send window
andre [Tue, 28 Feb 2006 23:05:59 +0000 (23:05 +0000)]
Rework TCP window scaling (RFC1323) to properly scale the send window
right from the beginning and partly clean up the differences in handling
between SYN_SENT and SYN_RCVD (syncache).

Further changes to this code to come.  This is a first incremental step
to a general overhaul and streamlining of the TCP code.

PR: kern/15095
PR: kern/92690 (partly)
Reviewed by: qingli (and tested with ANVL)
Sponsored by: TCP/IP Optimization Fundraise 2005

18 years agoRework how we wire up interrupt sources to CPUs:
jhb [Tue, 28 Feb 2006 22:24:55 +0000 (22:24 +0000)]
Rework how we wire up interrupt sources to CPUs:
- Throw out all of the logical APIC ID stuff.  The Intel docs are somewhat
  ambiguous, but it seems that the "flat" cluster model we are currently
  using is only supported on Pentium and P6 family CPUs.  The other
  "hierarchy" cluster model that is supported on all Intel CPUs with
  local APICs is severely underdocumented.  For example, it's not clear
  if the OS needs to glean the topology of the APIC hierarchy from
  somewhere (neither ACPI nor MP Table include it) and setup the logical
  clusters based on the physical hierarchy or not.  Not only that, but on
  certain Intel chipsets, even though there were 4 CPUs in a logical
  cluster, all the interrupts were only sent to one CPU anyway.
- We now bind interrupts to individual CPUs using physical addressing via
  the local APIC IDs.  This code has also moved out of the ioapic PIC
  driver and into the common interrupt source code so that it can be
  shared with MSI interrupt sources since MSI is addressed to APICs the
  same way that I/O APIC pins are.
- Interrupt source classes grow a new method pic_assign_cpu() to bind an
  interrupt source to a specific local APIC ID.
- The SMP code now tells the interrupt code which CPUs are avaiable to
  handle interrupts in a simpler and more intuitive manner.  For one thing,
  it means we could now choose to not route interrupts to HT cores if we
  wanted to (this code is currently in place in fact, but under an #if 0
  for now).
- For now we simply do static round-robin of IRQs to CPUs when the first
  interrupt handler just as before, with the change that IRQs are now
  bound to individual CPUs rather than groups of up to 4 CPUs.
- Because the IRQ to CPU mapping has now been moved up a layer, it would
  be easier to manage this mapping from higher levels.  For example, we
  could allow drivers to specify a CPU affinity map for their interrupts,
  or we could allow a userland tool to bind IRQs to specific CPUs.

The MFC is tentative, but I want to see if this fixes problems some folks
had with UP APIC kernels on 6.0 on SMP machines (an SMP kernel would work
fine, but a UP APIC kernel (such as GENERIC in RELENG_6) would lose
interrupts).

MFC after: 1 week

18 years agoFix numerous warnings. Aside from menu items in system.c and menu.c
jhb [Tue, 28 Feb 2006 21:49:33 +0000 (21:49 +0000)]
Fix numerous warnings.  Aside from menu items in system.c and menu.c
this now compiles on i386 with WARNS?= 3.  Most of the fixes included
adding missing 'static' keywords to internal functions, using fully-defined
terminators in statically defined arrays of structs, and various
signed vs unsigned mismatches.  Also G/C'd unused configSecurity()
function.

18 years agoFix a c/p error.
brueffer [Tue, 28 Feb 2006 21:25:00 +0000 (21:25 +0000)]
Fix a c/p error.

Obtained from: The TrustedBSD Project
Approved by: rwatson (mentor)

18 years agoUse some helper macros for the device table so it can fit in 80 columns and
jhb [Tue, 28 Feb 2006 21:12:16 +0000 (21:12 +0000)]
Use some helper macros for the device table so it can fit in 80 columns and
to allow us to use default values in some entries to quiet warnings.  This
table is actually readable again now.

18 years agoDrop unused major, minor, and delta values from device table.
jhb [Tue, 28 Feb 2006 20:56:58 +0000 (20:56 +0000)]
Drop unused major, minor, and delta values from device table.

18 years agoG/C some cruft.
jhb [Tue, 28 Feb 2006 20:34:50 +0000 (20:34 +0000)]
G/C some cruft.

18 years ago- Autogenerate a menu containing a list of countries and keymaps supported
jhb [Tue, 28 Feb 2006 20:29:43 +0000 (20:29 +0000)]
- Autogenerate a menu containing a list of countries and keymaps supported
  by syscons.
- If we are running as init, popup the country menu before the main menu.
  If a non-default country is chosen, then a second menu is brought up
  to let the user choose a keymap.  By default the default keymap for
  the country that was selected is highlighted.  If the user chooses the
  default country, then the default keymap is just assumed and the user
  is not presented with the keymap menu.  Currently the default country
  is set to "United States" except for PC98 which assumes "Japan".

PR: bin/93853
Submitted by: Seth Kingsley sethk at magnesium dot net
MFC after: 3 days

18 years agoAllow PHOLD()'s of curproc even if P_WEXIT is set. Normally we don't want
jhb [Tue, 28 Feb 2006 20:11:30 +0000 (20:11 +0000)]
Allow PHOLD()'s of curproc even if P_WEXIT is set.  Normally we don't want
to allow PHOLD()'s of processes that have P_WEXIT set as once that flag
is set we aren't guaranteed to block in exit1() waiting for the PRELE()
(we might already be past the wait).  However, curproc is a bit of a
special case.  By the time P_WEXIT is set, the process is single-threaded,
so the only thread for which can do a PHOLD(curproc) is the thread
executing in exit1().  The fact that this thread is executing ensures
that the process won't go away before the current hold is released via
PRELE().  This fixes some panics due to kicking off softupdate operations
inside of exit1() after the recent PHOLD changes to fix ptrace/procfs vs
exit races.

MFC after: 1 week
Tested by: pho

18 years agoupdate examples to use the correct terms that was never updated when the
jmg [Tue, 28 Feb 2006 19:58:57 +0000 (19:58 +0000)]
update examples to use the correct terms that was never updated when the
earlier descriptions were gone over...

MFC after: 3 days

18 years agoregen for 32bit sendfile
ps [Tue, 28 Feb 2006 19:39:52 +0000 (19:39 +0000)]
regen for 32bit sendfile

18 years agoFix 32bit sendfile by implementing kern_sendfile so that it takes
ps [Tue, 28 Feb 2006 19:39:18 +0000 (19:39 +0000)]
Fix 32bit sendfile by implementing kern_sendfile so that it takes
the header and trailers as iovec arguments instead of copying them
in inside of sendfile.

Reviewed by: jhb
MFC after: 3 weeks

18 years agowhen acpi does not explicitly enumerate lapic/cpu's there should
sam [Tue, 28 Feb 2006 17:48:33 +0000 (17:48 +0000)]
when acpi does not explicitly enumerate lapic/cpu's there should
only be 1

Reviewed by: jhb

18 years agoConst'ify arguments to a couple of functions to fix breakage
deischen [Tue, 28 Feb 2006 16:02:26 +0000 (16:02 +0000)]
Const'ify arguments to a couple of functions to fix breakage
with -O2.

18 years agouse standard mode instead of 500 for /sbin/init.
luigi [Tue, 28 Feb 2006 08:02:28 +0000 (08:02 +0000)]
use standard mode instead of 500 for /sbin/init.

As discussed on -current, there is no sensitive info in /sbin/init
to prevent reading it from non-privileged users, nor any reason to
remove the 'x' bit as the first thing the program does is check the
uid and exit if it is not run by root.

Instead (and this is why i make the change), mode 500 prevents
operation when exporting the partition without -maproot=0 to diskless
clients.

All previuos releases are affected by the same problem, so a merge
to RELENG_6 at least would be appropriate (after proper re@ approval
of course).

18 years agoFix mpt_reset to try mpt_hard_reset more than once, and to try
mjacob [Tue, 28 Feb 2006 07:44:50 +0000 (07:44 +0000)]
Fix mpt_reset to try mpt_hard_reset more than once, and to try
mpt_soft_reset more than once. And to wait for MPT_DB_STATE_READY
twice. I mean, this is crucial- give the IOC a chance to get
ready.

If mpt_reset is called to reinit things, and we succeed, make
sure to re-enable interrupts. This is what has mostly led to
system lockup after having to hard reset the chip. Also, if
we think that interrupts aren't function in mpt_cam_timeout,
for goodness sake, turn them on again.

In read_cfg_header, return distinguishing errnos so the caller
can decide what's an error. It's *not* an error to fail to
read a RAID page from a non-RAID capable device like the FC929X.

Some whitespace fixes (removing spaces from ends of lines).