Commit Graph

162611 Commits

Author SHA1 Message Date
sjg
1050c04a22 If _BASENAME_DEFSHELL is defined, it might be a full path,
in which case we should not prepend _PATH_DEFSHELLDIR.
2007-10-11 21:19:28 +00:00
dyoung
462deb7ea8 In ifreq_setaddr(), use the right buffer sizes for compat v.
non-compat commands.
2007-10-11 20:47:27 +00:00
ad
715427972b LKMs & userspace don't care about LOCKDEBUG any more. 2007-10-11 20:11:38 +00:00
ad
0336b62acd NetBSD 4.99.33 - more stuff merged from vmlocking branch. 2007-10-11 20:11:10 +00:00
ad
4c92a21547 Remove LOCK_ASSERT(!simple_lock_held(&foo)); 2007-10-11 19:53:37 +00:00
ad
112ca87c2d Use __SIMPLELOCK_LOCKED_P(). 2007-10-11 19:49:04 +00:00
xtraeme
cee3aed721 Also log the 'low-power' event via logger -p warning to have records
of what happened.
2007-10-11 19:47:26 +00:00
ad
11dc639958 Merge from vmlocking:
- G/C spinlockmgr() and simple_lock debugging.
- Always include the kernel_lock functions, for LKMs.
- Slightly improved subr_lockdebug code.
- Keep sizeof(struct lock) the same if LOCKDEBUG.
2007-10-11 19:45:24 +00:00
pooka
33c91738e5 Part 1/n of some pretty extensive changes to how the kernel module
interacts with the userspace file server:

  * since the kernel-user communication is not purely request-response
    anymore (hasn't been since 2006), try to rename some "request" to
    "message".  more similar mangling will take place in the future.

  * completely rework how messages are allocated.  previously most of
    them were borrowed from the stack (originally *all* of them),
    but now always allocate dynamically.  this makes the structure
    of the code much cleaner.  also makes it possible to fix a
    locking order violation.  it enables plenty of future enhancements.

  * start generalizing the transport interface to be independent of puffs

  * move transport interface to read/write instead of ioctl.  the
    old one had legacy design problems, and besides, ioctl's suck.
    implement a very generic version for now; this will be
    worked on later hopefully some day reaching "highly optimized".

  * implement libpuffs support behind existing library request
    interfaces.  this will change eventually (I hate those interfaces)
2007-10-11 19:41:13 +00:00
ad
7408fd8960 On NetBSD/amd64, load modules within the first 2GB of RAM.
Should fix xsrc/25170 and server crashes due to jemalloc.
2007-10-11 19:04:49 +00:00
ad
6b7322f1ed This was using mutex_exit where mutex_enter was required. 2007-10-11 18:46:19 +00:00
xtraeme
e37a405299 Remove the BUGS section, event delivery of the status has been
there for many years already.
2007-10-11 18:33:49 +00:00
xtraeme
f21fa70a6b Remove the pes_state member from the penvsys_state struct, it's unused. 2007-10-11 17:31:06 +00:00
xtraeme
752d116414 Check for the low power condition only when a new battery state sensor
changed its state, there's no need to check this in all cases.
2007-10-11 16:51:48 +00:00
christos
b96c4fd9a6 PR/37108: Pauly Goyette: Compute the timeout value, before immediate is
changed for atapi tape drives.
2007-10-11 16:42:52 +00:00
xtraeme
3d4634dd53 Remove me from the mumbo-jumbo list now that I use a two-clause style
license in all my code.
2007-10-11 15:21:16 +00:00
he
167a62205a Follow up the removal of the lwp_t* argument to do_filereadv() and
do_filewritev().
2007-10-11 13:51:12 +00:00
pooka
ceb690c88e when removing file, free last block also 2007-10-11 13:50:42 +00:00
pooka
bbaa4c8c80 Cache vnode member variables necessary for operations after the
userspace call, namely our private mount structure, in the activation
record.  This avoids problems in situations where the userspace
file server happens to die during our upcall and the vnode is
forcibly reclaimed before we roll back to the current stack frame.
2007-10-11 12:31:45 +00:00
ad
d8d3327f01 Declare struct cpu_info for m68k ports. 2007-10-11 10:36:42 +00:00
ginsbach
18072a963c More code clean up (KNF): de-__P and ANSI'ify function declarations 2007-10-11 03:42:38 +00:00
xtraeme
d7ef1da684 Fix a typo that has been there forever. prop_dictionary_set:
the object will be retained by the dictionary not array.
2007-10-11 03:10:28 +00:00
xtraeme
b8ef2c3d1f Fix a typo in previous. 2007-10-11 00:30:47 +00:00
xtraeme
d6753145c8 Use consistenly more meaningful messages in all envsys scripts. 2007-10-11 00:11:24 +00:00
xtraeme
a1def00d93 Document the 'low-power' event in the sensor_battery script. 2007-10-10 23:46:01 +00:00
xtraeme
7ade6d03ad Fix the problems described in:
http://mail-index.netbsd.org/current-users/2007/07/16/0012.html

- Introduce sme_class into the sysmon_envsys struct to specify a
  class; currently there are two classes: SME_CLASS_ACADAPTER and
  SME_CLASS_BATTERY.

- Add a new envsys event: PENVSYS_EVENT_LOW_POWER that is reached when
  all SME_CLASS_BATTERY devices are in CRITICAL/LOW state and there's not
  any SME_CLASS_ACADAPTER connected.

- Add the 'low-power' event into the sensor_battery script that will
  shutdown the system gracefully via 'shutdown -p'. If powerd(8) is
  not running, cpu_reboot(9) with RB_POWERDOWN is used.

- Make acpiacad(4) a SME_CLASS_ACADAPTER device and acpibat(4) a
  SME_CLASS_BATTERY device.

Update the documentation accordingly to these changes.
2007-10-10 23:25:39 +00:00
ad
1666230f45 +DEBUG, +VNODE_LOCKDEBUG 2007-10-10 22:41:15 +00:00
ad
f103d731ed Fix DEBUG builds. 2007-10-10 22:38:00 +00:00
rmind
a416e41211 sched_catchlwp: Estimate the pointers of CPU structures, not spc_mutex'es,
when double-locking the runqueues.
2007-10-10 22:21:17 +00:00
dyoung
c54777285d Delete dead code. 2007-10-10 22:14:38 +00:00
ad
3fa279a5ee umapm_hashlock is a mutex. 2007-10-10 22:07:48 +00:00
ad
53b26d467e mountlist_slock is now a mutex. 2007-10-10 22:00:53 +00:00
ad
99b0354fb8 v_flag -> v_iflag 2007-10-10 21:59:11 +00:00
rmind
03d447f116 sched_tick: There is no need to re-schedule in a case when
CURCPU_IDLE_P() is true.  Simplify a little bit.

OK by <ad>.
2007-10-10 21:24:53 +00:00
xtraeme
51dabc46f7 Fix the it(4) values on the ASUS M2N-E motherboard, tested by wiz@. 2007-10-10 20:49:38 +00:00
ad
7dad9f7391 Merge from vmlocking:
- Split vnode::v_flag into three fields, depending on field locking.
- simple_lock -> kmutex in a few places.
- Fix some simple locking problems.
2007-10-10 20:42:20 +00:00
ad
067cf977c9 transferlockers() is gone. 2007-10-10 18:51:43 +00:00
macallan
248f35faf5 make this compile without wsmouse support in the kernel 2007-10-10 18:36:52 +00:00
ad
9171fa2872 Comment out references to spinlockmgr(). 2007-10-10 17:44:39 +00:00
ad
5a5a78fb02 Kill transferlockers() now that it's unused. 2007-10-10 17:37:40 +00:00
joerg
7f7035433f Install the default entries for the non-ISA interrupts as masked as
intended. Report by Christoph Egger.
2007-10-10 13:58:15 +00:00
wiz
69360845b6 gcc-4.2.2 is out. 2007-10-10 12:16:23 +00:00
pooka
934299af2e * uvn_attach() is a goner
* document UBC_FAULTBUSY
2007-10-10 11:05:15 +00:00
ginsbach
09b20b9b68 - add const qualifiers where necessary
- remove unnecessary argument from error(); first argument was always NULL
[changes mostly from FreeBSD]
2007-10-10 02:34:18 +00:00
martin
09fda47045 Waste a bit of kernel VA space (who cares?) and speed up crash dumps
significantly by writing larger chunks with one (polled) command.
Based on work and testing done by Chris Ross.
2007-10-09 23:35:18 +00:00
pooka
bf2346742b g/c #if 0'd code which isn't likely to get used any time soon 2007-10-09 21:04:55 +00:00
garbled
2266d48159 Add a bunch of IBM PCI dev id's for graphics cards and PCI bridges 2007-10-09 20:59:24 +00:00
pooka
ad16af9917 g/c more unused stuff 2007-10-09 20:57:06 +00:00
rmind
ae7946d0ba - Mention SCHED_M2 in the recent changes;
- Scheduler works will be in 5.0 release;
- Mention NUMA in the roadmap;

P.S. Everyone: please sync the ROADMAP with the
reality and the works you do.
2007-10-09 19:32:19 +00:00
rmind
a21233e46b Import of SCHED_M2 - the implementation of new scheduler, which is based
on the original approach of SVR4 with some inspirations about balancing
and migration from Solaris.  It implements per-CPU runqueues, provides a
real-time (RT) and time-sharing (TS) queues, ready to support a POSIX
real-time extensions, and also prepared for the support of CPU affinity.

The following lines in the kernel config enables the SCHED_M2:

no options SCHED_4BSD
options SCHED_M2

The scheduler seems to be stable.  Further work will come soon.

http://mail-index.netbsd.org/tech-kern/2007/10/04/0001.html
http://www.netbsd.org/~rmind/m2/mysql_bench_ro_4x_local.png
Thanks <ad> for the benchmarks!
2007-10-09 19:00:13 +00:00