The NetBSD Project

CVS log for src/sys/dev/sequencer.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / dev

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.81 / (download) - annotate - [select for diffs], Fri Jul 1 01:04:59 2022 UTC (7 months ago) by riastradh
Branch: MAIN
CVS Tags: netbsd-10-base, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm, HEAD
Changes since 1.80: +6 -4 lines
Diff to previous 1.80 (colored)

sequencer(4): Fix lock leak in ioctl(FIOASYNC).

Reported-by: syzbot+0bfe9054ab0e70ab02e6@syzkaller.appspotmail.com
Reported-by: syzbot+f2c5459483e60dd2c877@syzkaller.appspotmail.com
Reported-by: syzbot+d932ddf0ec7e30784ca8@syzkaller.appspotmail.com

Note: The evidence from
https://syzkaller.appspot.com/bug?id=19e1c8779bb0e020188ca80a586e470b59d7525d
suggests in the stack trace that the syscall was 16, which is chown.
This is not accurate; it happens because the x86 syscall logic sets
rax in the trapframe to the return value (in this case, 16 is EBUSY)
_before_ calling userret which does the lockdebug checks, and ddb
uses the trapframe's rax to show what the syscall number was when
printing its stack trace:

[ 104.0605877] Mutex error: lwp_exit,1084: sleep lock held
[ 104.0605877] lock address : 0xffffd9801269e050 type     :     sleep/adaptive
...
[ 104.5005727] syscall() at netbsd:syscall+0x323 sys/arch/x86/x86/syscall.c:92
[ 104.5115909] --- syscall (number 16) ---

XXX Maybe we should record the syscall number elsewhere so this is
not so confusing -- second time in 24h I've been bitten by this, and
in a different way.

Revision 1.80 / (download) - annotate - [select for diffs], Sat Jun 4 03:31:10 2022 UTC (7 months, 4 weeks ago) by pgoyette
Branch: MAIN
Changes since 1.79: +2 -64 lines
Diff to previous 1.79 (colored)

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772.  Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.

Revision 1.79 / (download) - annotate - [select for diffs], Sat Apr 16 11:13:10 2022 UTC (9 months, 2 weeks ago) by riastradh
Branch: MAIN
Changes since 1.78: +4 -2 lines
Diff to previous 1.78 (colored)

sequencer(4): VOP_CLOSE requires vnode lock.

Reported-by: syzbot+877c50d819fea9403247@syzkaller.appspotmail.com

Revision 1.78 / (download) - annotate - [select for diffs], Sat Apr 16 11:13:01 2022 UTC (9 months, 2 weeks ago) by riastradh
Branch: MAIN
Changes since 1.77: +6 -13 lines
Diff to previous 1.77 (colored)

sequencer(4): Convert some #if DIAGNOSTIC to assertions.

Revision 1.77 / (download) - annotate - [select for diffs], Sat Apr 16 11:12:21 2022 UTC (9 months, 2 weeks ago) by riastradh
Branch: MAIN
Changes since 1.76: +71 -42 lines
Diff to previous 1.76 (colored)

sequencer(4): Sprinkle KNF.

- Sort includes.
- Nix trailing whitespace.
- No parens for return.
- Blank line between declarations and statements.
- Note MP bug with unit allocation.

No functional change intended.

Revision 1.76 / (download) - annotate - [select for diffs], Thu Mar 31 19:30:15 2022 UTC (10 months ago) by pgoyette
Branch: MAIN
Changes since 1.75: +4 -7 lines
Diff to previous 1.75 (colored)

For device modules that provide both auto-config and /dev/xxx
interfaces, make sure that initialization and destruction
follow the proper sequence.  This is triggered by the recent
changes to the devsw stuff; per riastradh@ the required call
sequence is:

	devsw_attach()
	config_init_component() or config_cf*_attach()
	...
	config_fini_component() or config_cf*_detach()
	devsw_detach()

While here, add a few missing calls to some of the detach
routines.

Testing of these changes has been limited to:
	1. compile without build break
	2. no related test failures from atf
	3. modload/modunload work as well as
	   before.

No functional device testing done, since I don't have any
of these devices.  Let me know of any damage I might cause
here!

XXX Some of the modules affected by this commit are already
XXX broken;  see kern/56772.  This commit does not break
any additional modules (as far as I know).

Revision 1.75 / (download) - annotate - [select for diffs], Tue Mar 29 09:19:56 2022 UTC (10 months ago) by riastradh
Branch: MAIN
Changes since 1.74: +3 -3 lines
Diff to previous 1.74 (colored)

sequencer(4): Don't use mutex_spin_exit on an IPL_NONE lock.

Revision 1.74 / (download) - annotate - [select for diffs], Sun Sep 26 01:16:08 2021 UTC (16 months ago) by thorpej
Branch: MAIN
Changes since 1.73: +4 -4 lines
Diff to previous 1.73 (colored)

Change the kqueue filterops::f_isfd field to filterops::f_flags, and
define a flag FILTEROP_ISFD that has the meaning of the prior f_isfd.
Field and flag name aligned with OpenBSD.

This does not constitute a functional or ABI change, as the field location
and size, and the value placed in that field, are the same as the previous
code, but we're bumping __NetBSD_Version__ so 3rd-party module source code
can adapt, as needed.

NetBSD 9.99.89

Revision 1.72.2.1 / (download) - annotate - [select for diffs], Sun Jan 3 16:34:57 2021 UTC (2 years ago) by thorpej
Branch: thorpej-futex
Changes since 1.72: +8 -8 lines
Diff to previous 1.72 (colored) next main 1.73 (colored)

Sync w/ HEAD.

Revision 1.73 / (download) - annotate - [select for diffs], Sat Dec 19 01:18:58 2020 UTC (2 years, 1 month ago) by thorpej
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.72: +8 -8 lines
Diff to previous 1.72 (colored)

Use sel{record,remove}_knote().

Revision 1.72 / (download) - annotate - [select for diffs], Sat May 23 23:42:42 2020 UTC (2 years, 8 months ago) by ad
Branch: MAIN
Branch point for: thorpej-futex
Changes since 1.71: +6 -6 lines
Diff to previous 1.71 (colored)

Move proc_lock into the data segment.  It was dynamically allocated because
at the time we had mutex_obj_alloc() but not __cacheline_aligned.

Revision 1.70.4.1 / (download) - annotate - [select for diffs], Mon Apr 13 08:04:18 2020 UTC (2 years, 9 months ago) by martin
Branch: phil-wifi
Changes since 1.70: +3 -3 lines
Diff to previous 1.70 (colored) next main 1.71 (colored)

Mostly merge changes from HEAD upto 20200411

Revision 1.71 / (download) - annotate - [select for diffs], Sun Aug 25 07:10:30 2019 UTC (3 years, 5 months ago) by maxv
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Changes since 1.70: +3 -3 lines
Diff to previous 1.70 (colored)

Fix the size passed to memcpy, we only want 8 bytes. Found by KASAN.

Revision 1.55.2.3 / (download) - annotate - [select for diffs], Sun Dec 3 11:36:58 2017 UTC (5 years, 1 month ago) by jdolecek
Branch: tls-maxphys
Changes since 1.55.2.2: +125 -42 lines
Diff to previous 1.55.2.2 (colored) to branchpoint 1.55 (colored) next main 1.56 (colored)

update from HEAD

Revision 1.70 / (download) - annotate - [select for diffs], Sun Oct 29 17:57:21 2017 UTC (5 years, 3 months ago) by riastradh
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, phil-wifi-base, phil-wifi-20190609, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, jdolecek-ncqfixes-base, jdolecek-ncqfixes, isaki-audio2-base, isaki-audio2
Branch point for: phil-wifi
Changes since 1.69: +7 -3 lines
Diff to previous 1.69 (colored)

Provisionally return to declaring midi_cd unconditionally.

Apparently this breaks compiling some kernels, although how they ever
managed to link if midi_cd is not declared in ioconf.h, and therefore
presumably not defined in ioconf.c, is beyond me.

Maybe someone who knows how sequencer is supposed to work, and/or
someone who knows how arm kernels are linked, can figure this out...

Revision 1.69 / (download) - annotate - [select for diffs], Sat Oct 28 04:16:04 2017 UTC (5 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.68: +16 -2 lines
Diff to previous 1.68 (colored)

Back out extern struct cfdriver -> ioconf.h change to sequencer.c.

This broke the module build, because it needs midi_cd which is defined
in another module and not declared by the ioconf.h generated from
sequencer.ioconf.

But...  It also needs sequencer_cd, which is _also_ not declared by
the ioconf.h generated from sequencer.ioconf, nor defined in the
ioconf.c generated from sequencer.ioconf.  Did this ever work???

Revision 1.68 / (download) - annotate - [select for diffs], Sat Oct 28 03:47:24 2017 UTC (5 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.67: +2 -8 lines
Diff to previous 1.67 (colored)

Kill some more extern cfdriver xyz_cd in favour of #include "ioconf.h".

Revision 1.67 / (download) - annotate - [select for diffs], Wed Oct 25 08:12:38 2017 UTC (5 years, 3 months ago) by maya
Branch: MAIN
Changes since 1.66: +14 -6 lines
Diff to previous 1.66 (colored)

Use C99 initializer for filterops

Mostly done with spatch with touchups for indentation

@@
expression a;
identifier b,c,d;
identifier p;
@@
const struct filterops p =
- 	{ a, b, c, d
+ 	{
+ 	.f_isfd = a,
+ 	.f_attach = b,
+ 	.f_detach = c,
+ 	.f_event = d,
};

Revision 1.59.4.3 / (download) - annotate - [select for diffs], Mon Aug 28 17:52:00 2017 UTC (5 years, 5 months ago) by skrll
Branch: nick-nhusb
Changes since 1.59.4.2: +53 -9 lines
Diff to previous 1.59.4.2 (colored) to branchpoint 1.59 (colored) next main 1.60 (colored)

Sync with HEAD

Revision 1.66 / (download) - annotate - [select for diffs], Thu Jun 1 09:44:30 2017 UTC (5 years, 8 months ago) by pgoyette
Branch: MAIN
CVS Tags: perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, netbsd-8-base, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, matt-nb8-mediatek-base, matt-nb8-mediatek
Changes since 1.65: +53 -3 lines
Diff to previous 1.65 (colored)

Add infrastructure for modularization of audio, midi, and sequencer

Revision 1.65 / (download) - annotate - [select for diffs], Thu Jun 1 02:45:09 2017 UTC (5 years, 8 months ago) by chs
Branch: MAIN
Changes since 1.64: +2 -8 lines
Diff to previous 1.64 (colored)

remove checks for failure after memory allocation calls that cannot fail:

  kmem_alloc() with KM_SLEEP
  kmem_zalloc() with KM_SLEEP
  percpu_alloc()
  pserialize_create()
  psref_class_create()

all of these paths include an assertion that the allocation has not failed,
so callers should not assert that again.

Revision 1.59.4.2 / (download) - annotate - [select for diffs], Tue Sep 22 12:05:56 2015 UTC (7 years, 4 months ago) by skrll
Branch: nick-nhusb
Changes since 1.59.4.1: +7 -6 lines
Diff to previous 1.59.4.1 (colored) to branchpoint 1.59 (colored)

Sync with HEAD

Revision 1.64 / (download) - annotate - [select for diffs], Thu Aug 20 14:40:17 2015 UTC (7 years, 5 months ago) by christos
Branch: MAIN
CVS Tags: prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, localcount-20160914, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan
Changes since 1.63: +4 -3 lines
Diff to previous 1.63 (colored)

include "ioconf.h" to get the 'void <driver>attach(int count);' prototype.

Revision 1.59.4.1 / (download) - annotate - [select for diffs], Mon Apr 6 15:18:08 2015 UTC (7 years, 9 months ago) by skrll
Branch: nick-nhusb
Changes since 1.59: +49 -31 lines
Diff to previous 1.59 (colored)

Sync with HEAD

Revision 1.59.2.1 / (download) - annotate - [select for diffs], Sun Jan 11 14:13:25 2015 UTC (8 years ago) by martin
Branch: netbsd-7
CVS Tags: netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0
Changes since 1.59: +49 -31 lines
Diff to previous 1.59 (colored) next main 1.60 (colored)

Pull up following revision(s) (requested by mrg in ticket #407):
	sys/dev/midivar.h: revision 1.20
	sys/dev/usb/umidivar.h: file removal
	sys/dev/midi.c: revision 1.82
	sys/dev/midi.c: revision 1.83
	sys/dev/usb/FILES: revision 1.13
	sys/dev/midi_if.h: revision 1.26
	sys/dev/sequencer.c: revision 1.60
	sys/dev/sequencer.c: revision 1.61
	sys/dev/sequencer.c: revision 1.62
	sys/dev/sequencer.c: revision 1.63
	sys/dev/usb/umidi_quirks.c: revision 1.19
	sys/dev/usb/umidi.c: revision 1.66
	sys/dev/usb/umidi.c: revision 1.67
	sys/dev/usb/umidi.c: revision 1.68
	sys/dev/usb/umidireg.h: file removal
	sys/dev/sequencervar.h: revision 1.17
fix the midi_if documentation to properly describe the locks that will
be held during various operations.
various umidi clean ups:
- move the contents of umidi{reg,var}.h into umidi.c directly as they
  are not referenced by any other file.
- remove the useless include of umidi{reg,var}.h from umidi_quirks.c.
- add reference counting and wait/broadcast support to the IO paths.
- fix the error handling in midi_attach() and midi_open().
- sprinkle KASSERT() in several places.
- drop the local interrupt lock before calling into various parts of
  the USB code.  fixes lockdebug issues, and likely hangs.
- rename "binded" member as "bound".
with these most of the panics and problems i've seen are gone.  there
is still one lockdebug panic to deal with that happens when unplugging
umidi while midiplay(1) is running.
various clean ups for midi and sequencer:
midi specific:
- add reference counting for midi operations, and ensure that
  detach waits for other threads to complete before tearing
  down the device completely.
- in detach, halt midi callouts before destroying them
- re-check sc->dying after sleeping in midiread()
- in real_writebytes(), make sure we're open and not dying
- make sure we drop the interrupt lock before calling any code
  that may want to check thread locks.  this is now safe due to
  the above changes.
sequencer specific:
- avoid caching the midi softc in the sequencer softc.  instead,
  every time we want to use it, look it up again and make sure
  it still exists.
this fixes various crashes i've seen in the usb midi code when
detaching the umidi while it is active.
use __func__ in some debug messages.
- check sc->dying after sleeping in several more places, and
  convert it into EIO error where necessary.
- remove a wrong additional mutex_exit() call.
- make sure to check sc->dying under the device lock.
- fix a confusion between midi(4) unit and connected to sequencer
  devices.
- minor comment/debug clean ups.
fixes problems attempting to read or write from the right midi(4)
device using the sequencer(4) device when one or more of the
non-final devices fails to open with midiseq_open().
fix !AUDIO_DEBUG build.
CID/1261465: Dereference after NULL check.
CID/1261467: Unreachable code
actually fix one of the previous:  don't test for NULL after deref.

Revision 1.63 / (download) - annotate - [select for diffs], Tue Dec 30 07:39:15 2014 UTC (8 years, 1 month ago) by mrg
Branch: MAIN
CVS Tags: nick-nhusb-base-20150606, nick-nhusb-base-20150406
Changes since 1.62: +4 -3 lines
Diff to previous 1.62 (colored)

fix !AUDIO_DEBUG build.

Revision 1.62 / (download) - annotate - [select for diffs], Tue Dec 30 07:33:44 2014 UTC (8 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.61: +13 -8 lines
Diff to previous 1.61 (colored)

- fix a confusion between midi(4) unit and connected to sequencer
  devices.
- minor comment/debug clean ups.

fixes problems attempting to read or write from the right midi(4)
device using the sequencer(4) device when one or more of the
non-final devices fails to open with midiseq_open().

Revision 1.61 / (download) - annotate - [select for diffs], Tue Dec 23 11:37:40 2014 UTC (8 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.60: +11 -11 lines
Diff to previous 1.60 (colored)

use __func__ in some debug messages.

Revision 1.60 / (download) - annotate - [select for diffs], Mon Dec 22 07:02:22 2014 UTC (8 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.59: +30 -18 lines
Diff to previous 1.59 (colored)

various clean ups for midi and sequencer:

midi specific:
- add reference counting for midi operations, and ensure that
  detach waits for other threads to complete before tearing
  down the device completely.
- in detach, halt midi callouts before destroying them
- re-check sc->dying after sleeping in midiread()
- in real_writebytes(), make sure we're open and not dying
- make sure we drop the interrupt lock before calling any code
  that may want to check thread locks.  this is now safe due to
  the above changes.

sequencer specific:
- avoid caching the midi softc in the sequencer softc.  instead,
  every time we want to use it, look it up again and make sure
  it still exists.


this fixes various crashes i've seen in the usb midi code when
detaching the umidi while it is active.

Revision 1.55.2.2 / (download) - annotate - [select for diffs], Wed Aug 20 00:03:35 2014 UTC (8 years, 5 months ago) by tls
Branch: tls-maxphys
Changes since 1.55.2.1: +24 -11 lines
Diff to previous 1.55.2.1 (colored) to branchpoint 1.55 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.58.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:54:50 2014 UTC (8 years, 5 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.58: +4 -2 lines
Diff to previous 1.58 (colored) next main 1.59 (colored)

Rebase.

Revision 1.59 / (download) - annotate - [select for diffs], Fri Jul 25 08:10:35 2014 UTC (8 years, 6 months ago) by dholland
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, nick-nhusb-base, netbsd-7-base
Branch point for: nick-nhusb, netbsd-7
Changes since 1.58: +4 -2 lines
Diff to previous 1.58 (colored)

Add d_discard to all struct cdevsw instances I could find.

All have been set to "nodiscard"; some should get a real implementation.

Revision 1.52.12.2 / (download) - annotate - [select for diffs], Thu May 22 11:40:19 2014 UTC (8 years, 8 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.52.12.1: +109 -43 lines
Diff to previous 1.52.12.1 (colored) to branchpoint 1.52 (colored) next main 1.53 (colored)

sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.56.4.1 / (download) - annotate - [select for diffs], Sun May 18 17:45:35 2014 UTC (8 years, 8 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.56: +24 -13 lines
Diff to previous 1.56 (colored) next main 1.57 (colored)

sync with head

Revision 1.58 / (download) - annotate - [select for diffs], Sun Mar 16 05:20:26 2014 UTC (8 years, 10 months ago) by dholland
Branch: MAIN
CVS Tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3
Branch point for: tls-earlyentropy
Changes since 1.57: +24 -7 lines
Diff to previous 1.57 (colored)

Change (mostly mechanically) every cdevsw/bdevsw I can find to use
designated initializers.

I have not built every extant kernel so I have probably broken at
least one build; however I've also found and fixed some wrong
cdevsw/bdevsw entries so even if so I think we come out ahead.

Revision 1.57 / (download) - annotate - [select for diffs], Thu Oct 17 21:19:40 2013 UTC (9 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.56: +2 -8 lines
Diff to previous 1.56 (colored)

remove unused variables

Revision 1.55.2.1 / (download) - annotate - [select for diffs], Sun Jun 23 06:20:16 2013 UTC (9 years, 7 months ago) by tls
Branch: tls-maxphys
Changes since 1.55: +87 -32 lines
Diff to previous 1.55 (colored)

resync from head

Revision 1.56 / (download) - annotate - [select for diffs], Sat Apr 27 22:12:42 2013 UTC (9 years, 9 months ago) by christos
Branch: MAIN
CVS Tags: riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900
Branch point for: rmind-smpnet
Changes since 1.55: +87 -32 lines
Diff to previous 1.55 (colored)

allocate dynamically

Revision 1.53.2.2 / (download) - annotate - [select for diffs], Sun Apr 29 23:04:48 2012 UTC (10 years, 9 months ago) by mrg
Branch: jmcneill-usbmp
Changes since 1.53.2.1: +2 -3 lines
Diff to previous 1.53.2.1 (colored) to branchpoint 1.53 (colored) next main 1.54 (colored)

sync to latest -current.

Revision 1.52.12.1 / (download) - annotate - [select for diffs], Tue Apr 17 00:07:26 2012 UTC (10 years, 9 months ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.52: +470 -289 lines
Diff to previous 1.52 (colored)

sync with head

Revision 1.55 / (download) - annotate - [select for diffs], Mon Apr 9 10:18:16 2012 UTC (10 years, 9 months ago) by plunky
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, jmcneill-usbmp-base9, jmcneill-usbmp-base10, agc-symver-base, agc-symver
Branch point for: tls-maxphys
Changes since 1.54: +2 -3 lines
Diff to previous 1.54 (colored)

Tidy up a little, the way that midi attachment code works

- change midi_attach() to omit the 'parent' arg (there are
  only two callers of this and it is not used)

- change midisyn_attach() to midisyn_init(), so not needing a midi_softc,
  and fix the midi_pcppi driver to set hw_if and hw_hdl directly in
  its midi_softc before calling midi_attach()

- add a device_t to opl_softc structure, change opl drivers to store
  the device 'self' in opl_softc and fix opl_attach() to use this
  opl_softc->dev field directly rather than a field in an otherwise
  unused midi_softc

- remove unnecessary midi_softc from opl and cms drivers (child device
  provides that)

reviewed by mrg

Revision 1.53.2.1 / (download) - annotate - [select for diffs], Sat Feb 18 07:34:06 2012 UTC (10 years, 11 months ago) by mrg
Branch: jmcneill-usbmp
Changes since 1.53: +5 -2 lines
Diff to previous 1.53 (colored)

merge to -current.

Revision 1.54 / (download) - annotate - [select for diffs], Mon Feb 13 01:47:16 2012 UTC (10 years, 11 months ago) by mrg
Branch: MAIN
CVS Tags: netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2
Changes since 1.53: +5 -2 lines
Diff to previous 1.53 (colored)

call VOP_CLOSE() in the case we're bailing due to missing both read/write.
fixes vrelel() warnings when opening /dev/music on a device that doesn't
support the requested open flags.

Revision 1.53 / (download) - annotate - [select for diffs], Wed Nov 23 23:07:31 2011 UTC (11 years, 2 months ago) by jmcneill
Branch: MAIN
CVS Tags: jmcneill-usbmp-pre-base2, jmcneill-usbmp-base
Branch point for: jmcneill-usbmp
Changes since 1.52: +467 -288 lines
Diff to previous 1.52 (colored)

Merge jmcneill-audiomp3 branch, which is derived from ad-audiomp2. From
the original ad-audiomp branch notes:

  Add MP locking to the audio drivers.

  Making the audio drivers MP safe is necessary before efforts
  can be made to make the VM system MP safe.

  The are two locks per device instance, an ISR lock and
  a character device lock. The ISR lock replaces calls to
  splaudio()/splx(), and will be held across calls to device
  methods which were called at splaudio() before (e.g.
  trigger_output). The character device lock is held across
  calls to nearly all of the methods, excluding some only
  used for initialization, e.g. get_locks.

Welcome to 5.99.57.

Revision 1.52.14.4 / (download) - annotate - [select for diffs], Tue Nov 22 11:50:02 2011 UTC (11 years, 2 months ago) by mrg
Branch: jmcneill-audiomp3
Changes since 1.52.14.3: +18 -10 lines
Diff to previous 1.52.14.3 (colored) to branchpoint 1.52 (colored) next main 1.53 (colored)

more steps towards making this work:
- avoid using uninitialised memory to get a pointer, this fixes
  hangs in sequencerwrite() and general mayhem when it corrupts
  random other memory.
- re-take sc->lock in sequencewrite() when continuing from the
  main loop.

Revision 1.52.14.3 / (download) - annotate - [select for diffs], Tue Nov 22 07:57:23 2011 UTC (11 years, 2 months ago) by mrg
Branch: jmcneill-audiomp3
Changes since 1.52.14.2: +10 -7 lines
Diff to previous 1.52.14.2 (colored) to branchpoint 1.52 (colored)

adjust DPRINTF*() calls to actually build.
avoid a potential NULl pointer deref.

Revision 1.52.14.2 / (download) - annotate - [select for diffs], Sun Nov 20 20:00:15 2011 UTC (11 years, 2 months ago) by jmcneill
Branch: jmcneill-audiomp3
Changes since 1.52.14.1: +21 -12 lines
Diff to previous 1.52.14.1 (colored) to branchpoint 1.52 (colored)

avoid passing size 0 to kmem_alloc when the sequencer device is opened and
no midi devices are attached

Revision 1.52.14.1 / (download) - annotate - [select for diffs], Sat Nov 19 21:49:35 2011 UTC (11 years, 2 months ago) by jmcneill
Branch: jmcneill-audiomp3
Changes since 1.52: +446 -287 lines
Diff to previous 1.52 (colored)

port ad-audiomp2 branch changes to 5.99.56
todo:
 - port ad-audiomp2 pcppi changes
 - these drivers need to be fixed:
   - emuxki
   - gcscaudio
   - hdafg
   - uaudio
   - umidi
   - MD audio drivers

Revision 1.51.2.1 / (download) - annotate - [select for diffs], Wed May 13 17:19:05 2009 UTC (13 years, 8 months ago) by jym
Branch: jym-xensuspend
Changes since 1.51: +3 -3 lines
Diff to previous 1.51 (colored) next main 1.52 (colored)

Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.

Revision 1.47.2.2 / (download) - annotate - [select for diffs], Mon May 4 08:12:33 2009 UTC (13 years, 9 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.47.2.1: +9 -9 lines
Diff to previous 1.47.2.1 (colored) to branchpoint 1.47 (colored) next main 1.48 (colored)

sync with head.

Revision 1.50.2.2 / (download) - annotate - [select for diffs], Tue Apr 28 07:35:13 2009 UTC (13 years, 9 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.50.2.1: +3 -3 lines
Diff to previous 1.50.2.1 (colored) to branchpoint 1.50 (colored) next main 1.51 (colored)

Sync with HEAD.

Revision 1.52 / (download) - annotate - [select for diffs], Wed Mar 18 10:22:39 2009 UTC (13 years, 10 months ago) by cegger
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-nfs-mp-base9, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, uebayasi-xip, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-uvmplock, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base, matt-premerge-20091211, matt-mips64-premerge-20101231, jymxensuspend-base, jym-xensuspend-nbase, jym-xensuspend-base, jruoho-x86intr-base, jruoho-x86intr, jmcneill-audiomp3-base, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: yamt-pagecache, jmcneill-audiomp3
Changes since 1.51: +3 -3 lines
Diff to previous 1.51 (colored)

Ansify function definitions w/o arguments. Generated with sed.

Revision 1.50.2.1 / (download) - annotate - [select for diffs], Mon Jan 19 13:17:51 2009 UTC (14 years ago) by skrll
Branch: nick-hppapmap
Changes since 1.50: +6 -6 lines
Diff to previous 1.50 (colored)

Sync with HEAD.

Revision 1.43.12.6 / (download) - annotate - [select for diffs], Sat Jan 17 13:28:52 2009 UTC (14 years ago) by mjf
Branch: mjf-devfs2
Changes since 1.43.12.5: +4 -4 lines
Diff to previous 1.43.12.5 (colored) to branchpoint 1.43 (colored) next main 1.44 (colored)

Sync with HEAD.

Revision 1.51 / (download) - annotate - [select for diffs], Sun Jan 11 10:40:27 2009 UTC (14 years ago) by cegger
Branch: MAIN
CVS Tags: nick-hppapmap-base2, mjf-devfs2-base
Branch point for: jym-xensuspend
Changes since 1.50: +6 -6 lines
Diff to previous 1.50 (colored)

make this compile

Revision 1.50.6.2 / (download) - annotate - [select for diffs], Fri Dec 12 23:06:56 2008 UTC (14 years, 1 month ago) by ad
Branch: ad-audiomp2
Changes since 1.50.6.1: +12 -7 lines
Diff to previous 1.50.6.1 (colored) to branchpoint 1.50 (colored) next main 1.51 (colored)

Checkpoint work in progress.

Revision 1.50.6.1 / (download) - annotate - [select for diffs], Tue Dec 9 13:09:13 2008 UTC (14 years, 1 month ago) by ad
Branch: ad-audiomp2
Changes since 1.50: +437 -283 lines
Diff to previous 1.50 (colored)

Checkpoint work on MIDI.

Revision 1.49.2.1 / (download) - annotate - [select for diffs], Sun Oct 19 22:16:18 2008 UTC (14 years, 3 months ago) by haad
Branch: haad-dm
Changes since 1.49: +3 -3 lines
Diff to previous 1.49 (colored) next main 1.50 (colored)

Sync with HEAD.

Revision 1.43.12.5 / (download) - annotate - [select for diffs], Sun Sep 28 10:40:18 2008 UTC (14 years, 4 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.43.12.4: +1 -1 lines
Diff to previous 1.43.12.4 (colored) to branchpoint 1.43 (colored)

Sync with HEAD.

Revision 1.48.2.2 / (download) - annotate - [select for diffs], Thu Sep 18 04:35:01 2008 UTC (14 years, 4 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.48.2.1: +3 -3 lines
Diff to previous 1.48.2.1 (colored) to branchpoint 1.48 (colored) next main 1.49 (colored)

Sync with wrstuden-revivesa-base-2.

Revision 1.48.4.2 / (download) - annotate - [select for diffs], Fri Jul 18 16:37:32 2008 UTC (14 years, 6 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.48.4.1: +3 -3 lines
Diff to previous 1.48.4.1 (colored) to branchpoint 1.48 (colored) next main 1.49 (colored)

Sync with head.

Revision 1.50 / (download) - annotate - [select for diffs], Tue Jul 15 16:18:08 2008 UTC (14 years, 6 months ago) by christos
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, simonb-wapbl-nbase, simonb-wapbl-base, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, ad-audiomp2-base
Branch point for: nick-hppapmap, ad-audiomp2
Changes since 1.49: +3 -3 lines
Diff to previous 1.49 (colored)

Use more timespecs internally. From Alexander Shishkin and me.
Welcome to 4.99.70, 30 more to go for 100.

Revision 1.43.12.4 / (download) - annotate - [select for diffs], Sun Jun 29 09:33:05 2008 UTC (14 years, 7 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.43.12.3: +1 -1 lines
Diff to previous 1.43.12.3 (colored) to branchpoint 1.43 (colored)

Sync with HEAD.

Revision 1.48.2.1 / (download) - annotate - [select for diffs], Mon Jun 23 04:30:58 2008 UTC (14 years, 7 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.48: +3 -3 lines
Diff to previous 1.48 (colored)

Sync w/ -current. 34 merge conflicts to follow.

Revision 1.48.4.1 / (download) - annotate - [select for diffs], Wed Jun 18 16:33:03 2008 UTC (14 years, 7 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.48: +3 -3 lines
Diff to previous 1.48 (colored)

Sync with head.

Revision 1.46.2.2 / (download) - annotate - [select for diffs], Tue Jun 17 09:14:24 2008 UTC (14 years, 7 months ago) by yamt
Branch: yamt-pf42
Changes since 1.46.2.1: +3 -3 lines
Diff to previous 1.46.2.1 (colored) to branchpoint 1.46 (colored) next main 1.47 (colored)

sync with head.

Revision 1.49 / (download) - annotate - [select for diffs], Thu Jun 12 23:06:14 2008 UTC (14 years, 7 months ago) by cegger
Branch: MAIN
CVS Tags: yamt-pf42-base4, wrstuden-revivesa-base-1, wrstuden-revivesa-base
Branch point for: haad-dm
Changes since 1.48: +3 -3 lines
Diff to previous 1.48 (colored)

use device_lookup_private to get softc

Revision 1.43.12.3 / (download) - annotate - [select for diffs], Mon Jun 2 13:23:12 2008 UTC (14 years, 8 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.43.12.2: +6 -13 lines
Diff to previous 1.43.12.2 (colored) to branchpoint 1.43 (colored)

Sync with HEAD.

Revision 1.46.2.1 / (download) - annotate - [select for diffs], Sun May 18 12:33:30 2008 UTC (14 years, 8 months ago) by yamt
Branch: yamt-pf42
Changes since 1.46: +6 -13 lines
Diff to previous 1.46 (colored)

sync with head.

Revision 1.47.2.1 / (download) - annotate - [select for diffs], Fri May 16 02:23:49 2008 UTC (14 years, 8 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.47: +2 -9 lines
Diff to previous 1.47 (colored)

sync with head.

Revision 1.48 / (download) - annotate - [select for diffs], Mon Apr 28 20:23:47 2008 UTC (14 years, 9 months ago) by martin
Branch: MAIN
CVS Tags: yamt-pf42-base3, yamt-pf42-base2, yamt-nfs-mp-base2, hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa, simonb-wapbl
Changes since 1.47: +2 -9 lines
Diff to previous 1.47 (colored)

Remove clause 3 and 4 from TNF licenses

Revision 1.47 / (download) - annotate - [select for diffs], Thu Apr 24 15:35:28 2008 UTC (14 years, 9 months ago) by ad
Branch: MAIN
CVS Tags: yamt-nfs-mp-base
Branch point for: yamt-nfs-mp
Changes since 1.46: +6 -6 lines
Diff to previous 1.46 (colored)

Network protocol interrupts can now block on locks, so merge the globals
proclist_mutex and proclist_lock into a single adaptive mutex (proc_lock).
Implications:

- Inspecting process state requires thread context, so signals can no longer
  be sent from a hardware interrupt handler. Signal activity must be
  deferred to a soft interrupt or kthread.

- As the proc state locking is simplified, it's now safe to take exit()
  and wait() out from under kernel_lock.

- The system spends less time at IPL_SCHED, and there is less lock activity.

Revision 1.43.12.2 / (download) - annotate - [select for diffs], Sat Apr 5 23:33:21 2008 UTC (14 years, 9 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.43.12.1: +9 -2 lines
Diff to previous 1.43.12.1 (colored) to branchpoint 1.43 (colored)

- add "file-system DEVFS" and "pseudo-device devfsctl" to conf/std seeing
  as these are always needed.

- convert many, many drivers over to the New Devfs World Order. For a
  list of device drivers yet to be converted see,
  http://www.netbsd.org/~mjf/devfs-todo.html.

- add a new device_unregister_all(device_t) function to remove all device
  names associated with a device_t, which saves us having to construct
  device names when the driver is detached.

- add a DEV_AUDIO type for devices.

Revision 1.43.12.1 / (download) - annotate - [select for diffs], Thu Apr 3 12:42:37 2008 UTC (14 years, 10 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.43: +7 -7 lines
Diff to previous 1.43 (colored)

Sync with HEAD.

Revision 1.29.2.8 / (download) - annotate - [select for diffs], Mon Mar 24 09:38:46 2008 UTC (14 years, 10 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.29.2.7: +4 -4 lines
Diff to previous 1.29.2.7 (colored) to branchpoint 1.29 (colored) next main 1.30 (colored)

sync with head.

Revision 1.43.8.1 / (download) - annotate - [select for diffs], Mon Mar 24 07:15:11 2008 UTC (14 years, 10 months ago) by keiichi
Branch: keiichi-mipv6
Changes since 1.43: +5 -5 lines
Diff to previous 1.43 (colored) next main 1.44 (colored)

sync with head.

Revision 1.41.8.3 / (download) - annotate - [select for diffs], Sun Mar 23 02:04:35 2008 UTC (14 years, 10 months ago) by matt
Branch: matt-armv6
Changes since 1.41.8.2: +5 -5 lines
Diff to previous 1.41.8.2 (colored) to branchpoint 1.41 (colored) next main 1.42 (colored)

sync with HEAD

Revision 1.46 / (download) - annotate - [select for diffs], Fri Mar 21 19:33:24 2008 UTC (14 years, 10 months ago) by plunky
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, ad-socklock-base1
Branch point for: yamt-pf42
Changes since 1.45: +4 -4 lines
Diff to previous 1.45 (colored)

use devsw_name2chr() to look up the major number of the midi device as
it is a character device

Revision 1.29.2.7 / (download) - annotate - [select for diffs], Mon Mar 17 09:14:37 2008 UTC (14 years, 10 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.29.2.6: +5 -5 lines
Diff to previous 1.29.2.6 (colored) to branchpoint 1.29 (colored)

sync with head.

Revision 1.45 / (download) - annotate - [select for diffs], Tue Mar 4 21:56:11 2008 UTC (14 years, 11 months ago) by cube
Branch: MAIN
CVS Tags: matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base
Changes since 1.44: +3 -3 lines
Diff to previous 1.44 (colored)

Split device_t/softc for midi(4), and other related cosmetic changes.

Revision 1.44 / (download) - annotate - [select for diffs], Sat Mar 1 14:16:50 2008 UTC (14 years, 11 months ago) by rmind
Branch: MAIN
Changes since 1.43: +4 -4 lines
Diff to previous 1.43 (colored)

Welcome to 4.99.55:

- Add a lot of missing selinit() and seldestroy() calls.

- Merge selwakeup() and selnotify() calls into a single selnotify().

- Add an additional 'events' argument to selnotify() call.  It will
  indicate which event (POLL_IN, POLL_OUT, etc) happen.  If unknown,
  zero may be used.

Note: please pass appropriate value of 'events' where possible.
Proposed on: <tech-kern>

Revision 1.41.8.2 / (download) - annotate - [select for diffs], Wed Jan 9 01:52:15 2008 UTC (15 years ago) by matt
Branch: matt-armv6
Changes since 1.41.8.1: +3 -3 lines
Diff to previous 1.41.8.1 (colored) to branchpoint 1.41 (colored)

sync with HEAD

Revision 1.41.6.2 / (download) - annotate - [select for diffs], Sun Dec 9 19:37:42 2007 UTC (15 years, 1 month ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.41.6.1: +3 -3 lines
Diff to previous 1.41.6.1 (colored) to branchpoint 1.41 (colored) next main 1.42 (colored)

Sync with HEAD.

Revision 1.42.4.1 / (download) - annotate - [select for diffs], Sat Dec 8 18:19:20 2007 UTC (15 years, 1 month ago) by mjf
Branch: mjf-devfs
Changes since 1.42: +3 -3 lines
Diff to previous 1.42 (colored) next main 1.43 (colored)

Sync with HEAD.

Revision 1.42.6.1 / (download) - annotate - [select for diffs], Sat Dec 8 17:57:17 2007 UTC (15 years, 1 month ago) by ad
Branch: vmlocking2
Changes since 1.42: +3 -3 lines
Diff to previous 1.42 (colored) next main 1.43 (colored)

Sync with head.

Revision 1.29.2.6 / (download) - annotate - [select for diffs], Fri Dec 7 17:29:18 2007 UTC (15 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.29.2.5: +3 -3 lines
Diff to previous 1.29.2.5 (colored) to branchpoint 1.29 (colored)

sync with head

Revision 1.43 / (download) - annotate - [select for diffs], Wed Dec 5 17:19:48 2007 UTC (15 years, 1 month ago) by pooka
Branch: MAIN
CVS Tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-base, jmcneill-pm-base, hpcarm-cleanup-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386
Branch point for: mjf-devfs2, keiichi-mipv6
Changes since 1.42: +3 -3 lines
Diff to previous 1.42 (colored)

Do not "return 1" from kqfilter for errors.  That value is passed
directly to the userland caller and results in a mysterious EPERM.
Instead, return EINVAL or something else sensible depending on the
case.

Revision 1.41.8.1 / (download) - annotate - [select for diffs], Tue Nov 6 23:25:29 2007 UTC (15 years, 2 months ago) by matt
Branch: matt-armv6
CVS Tags: matt-armv6-prevmlocking
Changes since 1.41: +5 -4 lines
Diff to previous 1.41 (colored)

sync with HEAD

Revision 1.29.2.5 / (download) - annotate - [select for diffs], Sat Oct 27 11:29:59 2007 UTC (15 years, 3 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.29.2.4: +5 -4 lines
Diff to previous 1.29.2.4 (colored) to branchpoint 1.29 (colored)

sync with head.

Revision 1.41.6.1 / (download) - annotate - [select for diffs], Fri Oct 26 15:44:10 2007 UTC (15 years, 3 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.41: +5 -4 lines
Diff to previous 1.41 (colored)

Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.

Revision 1.41.10.1 / (download) - annotate - [select for diffs], Sun Oct 14 11:48:02 2007 UTC (15 years, 3 months ago) by yamt
Branch: yamt-x86pmap
Changes since 1.41: +5 -4 lines
Diff to previous 1.41 (colored) next main 1.42 (colored)

sync with head.

Revision 1.42 / (download) - annotate - [select for diffs], Mon Oct 8 16:18:02 2007 UTC (15 years, 3 months ago) by ad
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, vmlocking2-base1, vmlocking-nbase, vmlocking-base, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: vmlocking2, mjf-devfs
Changes since 1.41: +5 -4 lines
Diff to previous 1.41 (colored)

Use the softint API.

Revision 1.29.2.4 / (download) - annotate - [select for diffs], Mon Sep 3 14:33:16 2007 UTC (15 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.29.2.3: +21 -13 lines
Diff to previous 1.29.2.3 (colored) to branchpoint 1.29 (colored)

sync with head.

Revision 1.40.4.1 / (download) - annotate - [select for diffs], Wed Jul 11 20:05:04 2007 UTC (15 years, 6 months ago) by mjf
Branch: mjf-ufs-trans
Changes since 1.40: +16 -8 lines
Diff to previous 1.40 (colored) next main 1.41 (colored)

Sync with head.

Revision 1.41 / (download) - annotate - [select for diffs], Mon Jul 9 21:00:29 2007 UTC (15 years, 6 months ago) by ad
Branch: MAIN
CVS Tags: yamt-x86pmap-base2, yamt-x86pmap-base, nick-csl-alignment-base5, nick-csl-alignment-base, nick-csl-alignment, mjf-ufs-trans-base, matt-mips64-base, matt-mips64, hpcarm-cleanup
Branch point for: yamt-x86pmap, matt-armv6, jmcneill-pm
Changes since 1.40: +16 -8 lines
Diff to previous 1.40 (colored)

Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements

Revision 1.40.2.3 / (download) - annotate - [select for diffs], Sun Jul 1 21:47:41 2007 UTC (15 years, 7 months ago) by ad
Branch: vmlocking
Changes since 1.40.2.2: +3 -3 lines
Diff to previous 1.40.2.2 (colored) to branchpoint 1.40 (colored) next main 1.41 (colored)

Adapt to callout API change.

Revision 1.40.2.2 / (download) - annotate - [select for diffs], Sun Jun 17 21:30:52 2007 UTC (15 years, 7 months ago) by ad
Branch: vmlocking
Changes since 1.40.2.1: +5 -4 lines
Diff to previous 1.40.2.1 (colored) to branchpoint 1.40 (colored)

- Increase the number of thread priorities from 128 to 256. How the space
  is set up is to be revisited.
- Implement soft interrupts as kernel threads. A generic implementation
  is provided, with hooks for fast-path MD code that can run the interrupt
  threads over the top of other threads executing in the kernel.
- Split vnode::v_flag into three fields, depending on how the flag is
  locked (by the interlock, by the vnode lock, by the file system).
- Miscellaneous locking fixes and improvements.

Revision 1.40.2.1 / (download) - annotate - [select for diffs], Sun May 13 12:01:23 2007 UTC (15 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.40: +15 -7 lines
Diff to previous 1.40 (colored)

Catch up with the cdev/bdev changes.

Revision 1.39.2.1 / (download) - annotate - [select for diffs], Mon Mar 12 05:53:06 2007 UTC (15 years, 10 months ago) by rmind
Branch: yamt-idlelwp
Changes since 1.39: +7 -7 lines
Diff to previous 1.39 (colored) next main 1.40 (colored)

Sync with HEAD.

Revision 1.40 / (download) - annotate - [select for diffs], Sun Mar 4 06:01:43 2007 UTC (15 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup
Branch point for: vmlocking, mjf-ufs-trans
Changes since 1.39: +7 -7 lines
Diff to previous 1.39 (colored)

Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.

Revision 1.29.2.3 / (download) - annotate - [select for diffs], Mon Feb 26 09:09:56 2007 UTC (15 years, 11 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.29.2.2: +34 -10 lines
Diff to previous 1.29.2.2 (colored) to branchpoint 1.29 (colored)

sync with head.

Revision 1.39 / (download) - annotate - [select for diffs], Fri Feb 9 21:55:26 2007 UTC (15 years, 11 months ago) by ad
Branch: MAIN
CVS Tags: post-newlock2-merge, ad-audiomp-base, ad-audiomp
Branch point for: yamt-idlelwp
Changes since 1.38: +34 -10 lines
Diff to previous 1.38 (colored)

Merge newlock2 to head.

Revision 1.34.2.4 / (download) - annotate - [select for diffs], Sat Jan 27 00:24:53 2007 UTC (16 years ago) by ad
Branch: newlock2
Changes since 1.34.2.3: +31 -13 lines
Diff to previous 1.34.2.3 (colored) to branchpoint 1.34 (colored) next main 1.35 (colored)

Don't call selnotify() or psignal() while above IPL_VM: defer them to a
soft interrupt.

Revision 1.34.2.3 / (download) - annotate - [select for diffs], Fri Jan 19 09:39:58 2007 UTC (16 years ago) by ad
Branch: newlock2
Changes since 1.34.2.2: +10 -4 lines
Diff to previous 1.34.2.2 (colored) to branchpoint 1.34 (colored)

Acquire proclist_mutex before sending signals.

Revision 1.34.2.2 / (download) - annotate - [select for diffs], Fri Jan 12 00:57:34 2007 UTC (16 years ago) by ad
Branch: newlock2
Changes since 1.34.2.1: +3 -3 lines
Diff to previous 1.34.2.1 (colored) to branchpoint 1.34 (colored)

Sync with head.

Revision 1.29.2.2 / (download) - annotate - [select for diffs], Sat Dec 30 20:47:50 2006 UTC (16 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.29.2.1: +416 -532 lines
Diff to previous 1.29.2.1 (colored) to branchpoint 1.29 (colored)

sync with head.

Revision 1.34.4.2 / (download) - annotate - [select for diffs], Sun Dec 10 07:16:53 2006 UTC (16 years, 1 month ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.34.4.1: +14 -14 lines
Diff to previous 1.34.4.1 (colored) to branchpoint 1.34 (colored) next main 1.35 (colored)

sync with head.

Revision 1.38 / (download) - annotate - [select for diffs], Fri Nov 24 19:46:59 2006 UTC (16 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, newlock2-nbase, newlock2-base, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, matt-nb4-arm-base, matt-nb4-arm
Changes since 1.37: +3 -3 lines
Diff to previous 1.37 (colored)

fix spelling of accommodate; from Zapher.

Revision 1.34.2.1 / (download) - annotate - [select for diffs], Sat Nov 18 21:34:03 2006 UTC (16 years, 2 months ago) by ad
Branch: newlock2
Changes since 1.34: +7 -5 lines
Diff to previous 1.34 (colored)

Sync with head.

Revision 1.37 / (download) - annotate - [select for diffs], Thu Nov 16 01:32:45 2006 UTC (16 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.36: +12 -12 lines
Diff to previous 1.36 (colored)

__unused removal on arguments; approved by core.

Revision 1.36 / (download) - annotate - [select for diffs], Sun Oct 22 12:52:46 2006 UTC (16 years, 3 months ago) by pooka
Branch: MAIN
Changes since 1.35: +3 -3 lines
Diff to previous 1.35 (colored)

make compile for NMIDI == 0

Revision 1.34.4.1 / (download) - annotate - [select for diffs], Sun Oct 22 06:05:28 2006 UTC (16 years, 3 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.34: +13 -11 lines
Diff to previous 1.34 (colored)

sync with head

Revision 1.35 / (download) - annotate - [select for diffs], Thu Oct 12 01:30:51 2006 UTC (16 years, 3 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2
Changes since 1.34: +13 -11 lines
Diff to previous 1.34 (colored)

- sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386

Revision 1.30.4.1 / (download) - annotate - [select for diffs], Sat Sep 9 02:49:09 2006 UTC (16 years, 4 months ago) by rpaulo
Branch: rpaulo-netinet-merge-pcb
Changes since 1.30: +413 -531 lines
Diff to previous 1.30 (colored) next main 1.31 (colored)

sync with head

Revision 1.30.8.2 / (download) - annotate - [select for diffs], Sun Sep 3 15:23:55 2006 UTC (16 years, 5 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.30.8.1: +6 -6 lines
Diff to previous 1.30.8.1 (colored) to branchpoint 1.30 (colored) next main 1.31 (colored)

sync with head.

Revision 1.34 / (download) - annotate - [select for diffs], Sun Sep 3 05:19:38 2006 UTC (16 years, 5 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, rpaulo-netinet-merge-pcb-base
Branch point for: yamt-splraiseipl, newlock2
Changes since 1.33: +4 -4 lines
Diff to previous 1.33 (colored)

- add missing initializer
- comment out impossible comparison

Revision 1.33 / (download) - annotate - [select for diffs], Thu Aug 17 17:11:27 2006 UTC (16 years, 5 months ago) by christos
Branch: MAIN
Changes since 1.32: +4 -4 lines
Diff to previous 1.32 (colored)

Fix all the -D*DEBUG* code that it was rotting away and did not even compile.
Mostly from Arnaud Lacombe, many thanks!

Revision 1.30.8.1 / (download) - annotate - [select for diffs], Fri Aug 11 15:43:52 2006 UTC (16 years, 5 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.30: +410 -528 lines
Diff to previous 1.30 (colored)

sync with head

Revision 1.30.16.1 / (download) - annotate - [select for diffs], Thu Jul 13 17:49:17 2006 UTC (16 years, 6 months ago) by gdamore
Branch: gdamore-uart
Changes since 1.30: +410 -528 lines
Diff to previous 1.30 (colored) next main 1.31 (colored)

Merge from HEAD.

Revision 1.32 / (download) - annotate - [select for diffs], Fri Jun 30 13:56:25 2006 UTC (16 years, 7 months ago) by chap
Branch: MAIN
CVS Tags: yamt-pdpolicy-base7, abandoned-netbsd-4-base, abandoned-netbsd-4
Changes since 1.31: +408 -528 lines
Diff to previous 1.31 (colored)

Ankh-Morpork, we have a MIDI driver....

Merge from chap-midi branch, after
~month for review
Comments by thorpej@ drochner@ and Alexandre Ratchov

Incorporated: points by thorpej@ drochner@; preliminary support for
a stats-collecting ioctl suggested by martin@ from comments by A.R.

PR kern/32441 kern/32442 kern/32567 kern/32588 kern/32694 kern/33590
kern/33614 and one instance of kern/32651

ok martin@

Revision 1.31 / (download) - annotate - [select for diffs], Wed Jun 28 10:04:56 2006 UTC (16 years, 7 months ago) by tron
Branch: MAIN
Changes since 1.30: +4 -2 lines
Diff to previous 1.30 (colored)

Actually initialize the "struct midi_info" in midi_getinfo().
Problem found by GCC 4.x.

Revision 1.29.2.1 / (download) - annotate - [select for diffs], Wed Jun 21 15:02:12 2006 UTC (16 years, 7 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.29: +18 -18 lines
Diff to previous 1.29 (colored)

sync with head.

Revision 1.30.14.21 / (download) - annotate - [select for diffs], Thu Jun 1 22:06:57 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.20: +14 -9 lines
Diff to previous 1.30.14.20 (colored) to branchpoint 1.30 (colored) next main 1.31 (colored)

Updating midiplay(1) to support the SYSEX CONTINUATION and ESCAPED events
that may appear in MIDI files revealed that the /dev/music API still needs
to expose the MIDIPUTC event from /dev/sequencer (to support ESCAPED); I
also noticed the sequencer was keeping some state globally that should be
per device.

Revision 1.30.14.20 / (download) - annotate - [select for diffs], Wed May 31 22:19:19 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.19: +67 -34 lines
Diff to previous 1.30.14.19 (colored) to branchpoint 1.30 (colored)

PR kern/33614.

Rework of midiplay(1) to use sequencer facilities for tempo change (rather
than setting the sequencer for one tempo and doing all its own scaling)
exposed a hitherto concealed bug in sequencer tempo change handling.

Also took the opportunity to clarify some field names and add spl calls
in the top half to avoid concurrent access with the bottom to the timer.

Revision 1.30.14.19 / (download) - annotate - [select for diffs], Thu May 25 21:05:29 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.18: +70 -71 lines
Diff to previous 1.30.14.18 (colored) to branchpoint 1.30 (colored)

File-scope the functions that don't need to be global.

Revision 1.30.14.18 / (download) - annotate - [select for diffs], Thu May 25 20:14:47 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.17: +45 -144 lines
Diff to previous 1.30.14.17 (colored) to branchpoint 1.30 (colored)

ANSI/KNF the sequencer function declarations.

Revision 1.30.14.17 / (download) - annotate - [select for diffs], Thu May 25 19:31:10 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.16: +271 -327 lines
Diff to previous 1.30.14.16 (colored) to branchpoint 1.30 (colored)

Refactored sequencer to use the native API (now that there is one), and
updated the MIDI controller list in midiio.h.

It would be worth confirming that sequencer.c compiles on vax. It should.

Revision 1.30.14.16 / (download) - annotate - [select for diffs], Sat May 20 04:31:59 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.15: +122 -124 lines
Diff to previous 1.30.14.15 (colored) to branchpoint 1.30 (colored)

Now for Phase Two. The patched files have been rolled forward again, with
a naive mechanical resolution of conflicts. Now to compare the diffs and
make sure the resolutions made sense. Sleep first.

Revision 1.30.14.15 / (download) - annotate - [select for diffs], Sat May 20 03:43:58 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
CVS Tags: chap-midi-ph2
Changes since 1.30.14.14: +0 -0 lines
Diff to previous 1.30.14.14 (colored) to branchpoint 1.30 (colored)

Learned of two ugly corners in MIDI protocol that made the state machine
overly pedantic. Both have to do with the End SysEx byte, 0xf7. First, it
is allowed not only at the end of a SysEx message, but anywhere else any
status byte can appear (and in that case has no meaning). Second, it is
not even required at the end of a SysEx message - any subsequent status
byte implicitly ends the SysEx, and this is not considered an error.

I don't like these provisions because they make it even harder to detect
errors in a corrupted MIDI stream, but as MIDI gets sent increasingly over
error-correcting transports I suppose that is less of a concern. In any
case, though midi(4) will accept data (input from device or data from
write(2)) with stray or dropped End SysEx bytes, it will always ensure
that output to the device, and data for read(2), has End SysEx only and
always at the ends of SysEx messages.

Revision 1.30.14.14 / (download) - annotate - [select for diffs], Sat May 20 03:41:28 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.13: +0 -0 lines
Diff to previous 1.30.14.13 (colored) to branchpoint 1.30 (colored)

Spotted a bug in a buffer condition. Never saw any symptom, but it's a
bug nonetheless.

Revision 1.30.14.13 / (download) - annotate - [select for diffs], Sat May 20 03:32:45 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.12: +0 -0 lines
Diff to previous 1.30.14.12 (colored) to branchpoint 1.30 (colored)

The two choices CN_SEQ_GLOBAL and CN_SEQ_PER_EP cannot cover all devices,
some are wired arbitrarily oddly and need a CN_FIXED quirk to specify
the cable number mappings explicitly.  But then as a result of those
mappings, the automatically bound mididevice unit numbers might not match
the order of the device's physical jacks or blinkenlights, so an MD_FIXED
quirk is needed to specify that order as well.  It turns out the cn_base
field added earlier was neither necessary (at the time) nor sufficient
(to handle CN_FIXED), so it's gone now.

Q: How do you tell when you've got the cable number associations wrong on
   a Midisport 2x4?
A: Everything works right except data-rate throttling - you'll be able to
   send data to certain ports at rates far in excess of the MIDI data rate
   (and lose most of it). If you never transmit that fast, you'll never
   notice.

So testing for a sane data transfer rate (use dd to blast a stream of MIDI
data at the rmidi device, it'll report the rate on completion) is probably
a wise testing step when adding support for a new umidi device.

Revision 1.30.14.12 / (download) - annotate - [select for diffs], Sat May 20 03:31:22 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.11: +0 -0 lines
Diff to previous 1.30.14.11 (colored) to branchpoint 1.30 (colored)

Patch to account explicitly for the prior inconsistency in the treatment of
cable numbers. Also contains a (functionally insignificant) change to the
declaration of endpoint buffers introduced in kern/32441, which will be
useful in a forthcoming patch.  This patch should be fuzz-free on 2.0
source after the 32441 and 32442 patches.

Revision 1.30.14.11 / (download) - annotate - [select for diffs], Sat May 20 03:27:31 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.10: +0 -0 lines
Diff to previous 1.30.14.10 (colored) to branchpoint 1.30 (colored)

Active Sense now handled for receive as well as for transmit. Following the
spec, if no Active Sense is seen on receive, no special behavior applies,
but if an Active Sense is seen then any absence of received data exceeding
300ms thereafter will be signalled as a read EOF on the rmidi device.
Receipt of any further data will clear the EOF condition, and operation
resumes as if no Active Sense has been seen.

Also moved some selnotify's out of locks so they don't deadlock against
the corresponding kevent filters.

This concludes this round of midi hacking (except for possibly improving
the safety of how pending callouts and interrupts are canceled on device
detach. Other fixes/enhancements to the midi subsystems will get their
own patches.

Revision 1.30.14.10 / (download) - annotate - [select for diffs], Sat May 20 03:24:33 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.9: +5 -20 lines
Diff to previous 1.30.14.9 (colored) to branchpoint 1.30 (colored)

The FST now handles the equivalence between NoteOn (velocity 0) and a
NoteOff with velocity 64, both for canonicalizing (always produce NoteOff)
and compressing (produce whichever allows a current running status to be
exploited). The code from sequencer that attempted to model this behavior
and running status has been superseded and removed. Also removed the
EBADF checks I added to sequencer earlier, as they're handled in a layer
above.

Revision 1.30.14.9 / (download) - annotate - [select for diffs], Sat May 20 03:22:31 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.8: +0 -0 lines
Diff to previous 1.30.14.8 (colored) to branchpoint 1.30 (colored)

umidi now uses hw_if_ext and no longer has its own approximate midi state
machine.  This patch is relative to umidi.c and umidivar.h already patched
by midiman.pat (kern/32441).

Revision 1.30.14.8 / (download) - annotate - [select for diffs], Sat May 20 03:19:02 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.7: +0 -0 lines
Diff to previous 1.30.14.7 (colored) to branchpoint 1.30 (colored)

Added hw_if_ext for hw drivers that want their messages intact rather than
byte by byte. Works with midisyn - must still integrate and test with
umidi.

Revision 1.30.14.7 / (download) - annotate - [select for diffs], Sat May 20 03:17:43 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.6: +0 -0 lines
Diff to previous 1.30.14.6 (colored) to branchpoint 1.30 (colored)

The DFA (well, technically it's really a FST - a DFA with output) is now
used for transmit as well as receive; it's run at the upstream end of
each pipe (the receive interrupt for receive, the write call for transmit)
so that protocol errors can be detected as soon as possible, and erroneous
data won't fill the buffer. Implemented a guarantee that read(2) on the
raw device returns as many complete messages as will fit in the read
request, so the user program does not have to parse around read boundaries
(except for SysEx). Required a new buffer scheme that preserves message
boundaries. (A little like reinventing STREAMS, hmm...) Implemented
FIONREAD. New approach to sharing the cpu during output to interrupt-
challenged devices.

umidi happens to work now even in the presence of Active Sense, as the
transmit FST ensures the Active Sense doesn't appear in the midst of
another message, and right now the FST is always in canonicalizing mode
so there is no running status to disturb. That's half accident though, and
doesn't work for midisyn (which treats any System Common message as SysEx,
argh). The right solution will be to allow message-based drivers like umidi
and midisyn to get their data via a message-at-a-time interface, rather
than splitting the messages into bytes for lower drivers to reassemble
wrong.

Revision 1.30.14.6 / (download) - annotate - [select for diffs], Sat May 20 03:16:48 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.5: +0 -0 lines
Diff to previous 1.30.14.5 (colored) to branchpoint 1.30 (colored)

Receive dfa factored out and made usable for both receive and transmit.
So far so good.  Now to rewire transmit to use it.

Revision 1.30.14.5 / (download) - annotate - [select for diffs], Sat May 20 03:15:32 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.4: +0 -0 lines
Diff to previous 1.30.14.4 (colored) to branchpoint 1.30 (colored)

Implement Active Sense on transmit. The same callout used by
midi_start_output for brief delays in output is now also scheduled
for 285 ms if there is nothing to transmit, and will send an Active Sense
at that time if there is nothing else to go; this will keep the receiving
equipment expecting our Active Sense and ensure that notes will stop
sounding when it ceases (either because we close normally, or we hang,
or someone trips over a cable). Sounds simple enough but involved a new
locking strategy, because we used to block out user_incurred start_output
whenever the device interrupt or callout was pending, but in the case of
the 285ms callout we /want/ to let a user write through and cancel the
callout (and avoid races, etc).  Also moved the callout_init into
midi_attach because midiattach was not called in all cases, and added
a callout_stop in detach (though it is not yet quite up to all cases where
the callout may have been fired but not yet run at the time of detach -
nothing is easy.)

Surprisingly, the Active Sense works almost right over umidi: umidi's
state machine isn't smart enough to pass it through a packet being built,
and makes garbage instead, but a Yamaha keyboard at least is happy to
accept a bit of garbage within 300 ms as a sign we're still alive. :)

Now to go do a better state machine for output. :/  It shouldn't be in
umidi; it should be in midi, done once and done right; there should be
no need to have slightly different replicas of the midi state machine
all over the kernel ... I think there's one in sequencer too.

Revision 1.30.14.4 / (download) - annotate - [select for diffs], Sat May 20 03:14:12 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.3: +19 -5 lines
Diff to previous 1.30.14.3 (colored) to branchpoint 1.30 (colored)

Take open modes seriously: do not write if not open for writing, or read
if not open for reading, or if the midi device cannot read. In sequencer,
open only the midi devices that support at least one of the open modes
wanted; so, if the sequencer is opened for reading only, do not bother
opening midi devices that cannot input. Do not write anything to the
midi devices if opened for reading only; seq_reset previously wrote a
bunch of initial settings, which could lead to long timeouts in seq_drain
on close because of data in the output buffer that could not go anywhere.

TODO: sending initial settings is the less important thing for seq_reset
to do; the most important is to reset the buffers so the playing stops!
At present, it doesn't do that at all.

Revision 1.30.14.3 / (download) - annotate - [select for diffs], Sat May 20 03:13:11 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.2: +0 -0 lines
Diff to previous 1.30.14.2 (colored) to branchpoint 1.30 (colored)

Fixes a bug in midi_unit_count.

Dropped byte and message counters now use evcnt.

My state machine could treat an invalid SystemCommon message or out-of-
sequence EndSysex (all protocol errors anyway) as /mishandled/ protocol
errors if encountered in certain states. Fixed.

Revision 1.30.14.2 / (download) - annotate - [select for diffs], Sat May 20 03:09:12 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
Changes since 1.30.14.1: +3 -3 lines
Diff to previous 1.30.14.1 (colored) to branchpoint 1.30 (colored)

Replaces the state machine in midi.c with a full, pedantically correct,
error detecting one. Rearranges some DPRINTFN debug levels to make it
easier to get the level of debug information wanted. Applies to 2.0.

Revision 1.30.14.1 / (download) - annotate - [select for diffs], Sat May 20 02:15:21 2006 UTC (16 years, 8 months ago) by chap
Branch: chap-midi
CVS Tags: chap-midi-ph1
Changes since 1.30: +127 -125 lines
Diff to previous 1.30 (colored)

Now for Phase One. The patches to be applied in sequence were created
and tested against 2.0 sources. To begin, let CVS roll the affected files
back to that historic state. The reverse operation will be used (and
will involve some manual merging) after the patches have been applied.
Naturally, intermediate stages on this branch will not be directly
compilable (unless merged into a 2.0 checkout).

Revision 1.30 / (download) - annotate - [select for diffs], Sun Dec 11 12:20:53 2005 UTC (17 years, 1 month ago) by christos
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-pdpolicy-base6, yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, simonb-timecounters-base, simonb-timecounters, simonb-timcounters-final, peter-altq-base, peter-altq, gdamore-uart-base, elad-kernelauth-base, elad-kernelauth, chap-midi-nbase, chap-midi-base
Branch point for: yamt-pdpolicy, rpaulo-netinet-merge-pcb, gdamore-uart, chap-midi
Changes since 1.29: +18 -18 lines
Diff to previous 1.29 (colored)

merge ktrace-lwp.

Revision 1.24.2.7 / (download) - annotate - [select for diffs], Thu Nov 10 14:03:00 2005 UTC (17 years, 2 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.24.2.6: +66 -66 lines
Diff to previous 1.24.2.6 (colored) next main 1.25 (colored)

Sync with HEAD. Here we go again...

Revision 1.29 / (download) - annotate - [select for diffs], Wed Jun 1 18:41:51 2005 UTC (17 years, 8 months ago) by drochner
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, thorpej-vnode-attr-base, thorpej-vnode-attr, ktrace-lwp-base
Branch point for: yamt-lazymbuf
Changes since 1.28: +5 -5 lines
Diff to previous 1.28 (colored)

more cast-qual and shadow fallout

Revision 1.28 / (download) - annotate - [select for diffs], Sun May 29 22:18:25 2005 UTC (17 years, 8 months ago) by christos
Branch: MAIN
Changes since 1.27: +63 -63 lines
Diff to previous 1.27 (colored)

- add const
- avoid variable shadowing.

Revision 1.25.8.1 / (download) - annotate - [select for diffs], Fri Apr 29 11:28:44 2005 UTC (17 years, 9 months ago) by kent
Branch: kent-audio2
Changes since 1.25: +45 -47 lines
Diff to previous 1.25 (colored) next main 1.26 (colored)

sync with -current

Revision 1.25.10.2 / (download) - annotate - [select for diffs], Sat Mar 19 08:33:53 2005 UTC (17 years, 10 months ago) by yamt
Branch: yamt-km
Changes since 1.25.10.1: +15 -15 lines
Diff to previous 1.25.10.1 (colored) to branchpoint 1.25 (colored) next main 1.26 (colored)

sync with head.  xen and whitespace.  xen part is not finished.

Revision 1.24.2.6 / (download) - annotate - [select for diffs], Fri Mar 4 16:40:54 2005 UTC (17 years, 11 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.24.2.5: +15 -15 lines
Diff to previous 1.24.2.5 (colored)

Sync with HEAD.

Hi Perry!

Revision 1.27 / (download) - annotate - [select for diffs], Sun Feb 27 00:26:58 2005 UTC (17 years, 11 months ago) by perry
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3, kent-audio2-base
Changes since 1.26: +15 -15 lines
Diff to previous 1.26 (colored)

nuke trailing whitespace

Revision 1.25.10.1 / (download) - annotate - [select for diffs], Sat Feb 12 18:17:42 2005 UTC (17 years, 11 months ago) by yamt
Branch: yamt-km
Changes since 1.25: +32 -34 lines
Diff to previous 1.25 (colored)

sync with head.

Revision 1.24.2.5 / (download) - annotate - [select for diffs], Fri Feb 4 11:45:09 2005 UTC (18 years ago) by skrll
Branch: ktrace-lwp
Changes since 1.24.2.4: +32 -34 lines
Diff to previous 1.24.2.4 (colored)

Sync with HEAD.

Revision 1.26 / (download) - annotate - [select for diffs], Fri Feb 4 02:10:35 2005 UTC (18 years ago) by perry
Branch: MAIN
CVS Tags: yamt-km-base2
Changes since 1.25: +32 -34 lines
Diff to previous 1.25 (colored)

de-__P

Revision 1.24.2.4 / (download) - annotate - [select for diffs], Tue Sep 21 13:26:25 2004 UTC (18 years, 4 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.24.2.3: +18 -18 lines
Diff to previous 1.24.2.3 (colored)

Fix the sync with head I botched.

Revision 1.24.2.3 / (download) - annotate - [select for diffs], Sat Sep 18 14:44:28 2004 UTC (18 years, 4 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.24.2.2: +18 -18 lines
Diff to previous 1.24.2.2 (colored)

Sync with HEAD.

Revision 1.24.2.2 / (download) - annotate - [select for diffs], Tue Aug 3 10:44:54 2004 UTC (18 years, 6 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.24.2.1: +3 -3 lines
Diff to previous 1.24.2.1 (colored)

Sync with HEAD

Revision 1.25 / (download) - annotate - [select for diffs], Thu Dec 4 13:57:30 2003 UTC (19 years, 2 months ago) by keihan
Branch: MAIN
CVS Tags: yamt-km-base, netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: yamt-km, kent-audio2
Changes since 1.24: +3 -3 lines
Diff to previous 1.24 (colored)

netbsd.org -> NetBSD.org

This was the last commit of this kind to src/sys, which is now totally
"NetBSD.org clean".  Thanks for the patiance, and sorry for all the commits.

Revision 1.24.2.1 / (download) - annotate - [select for diffs], Wed Jul 2 15:26:01 2003 UTC (19 years, 7 months ago) by darrenr
Branch: ktrace-lwp
Changes since 1.24: +18 -18 lines
Diff to previous 1.24 (colored)

Apply the aborted ktrace-lwp changes to a specific branch.  This is just for
others to review, I'm concerned that patch fuziness may have resulted in some
errant code being generated but I'll look at that later by comparing the diff
from the base to the branch with the file I attempt to apply to it.  This will,
at the very least, put the changes in a better context for others to review
them and attempt to tinker with removing passing of 'struct lwp' through
the kernel.

Revision 1.24 / (download) - annotate - [select for diffs], Sun Jun 29 22:30:02 2003 UTC (19 years, 7 months ago) by fvdl
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.23: +16 -16 lines
Diff to previous 1.23 (colored)

Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.

Revision 1.23 / (download) - annotate - [select for diffs], Sat Jun 28 14:21:32 2003 UTC (19 years, 7 months ago) by darrenr
Branch: MAIN
Changes since 1.22: +18 -18 lines
Diff to previous 1.22 (colored)

Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V

Revision 1.15.6.6 / (download) - annotate - [select for diffs], Wed Dec 11 06:37:48 2002 UTC (20 years, 1 month ago) by thorpej
Branch: nathanw_sa
CVS Tags: nathanw_sa_end
Changes since 1.15.6.5: +4 -4 lines
Diff to previous 1.15.6.5 (colored) to branchpoint 1.15 (colored) next main 1.16 (colored)

Sync with HEAD.

Revision 1.22 / (download) - annotate - [select for diffs], Tue Nov 26 18:49:41 2002 UTC (20 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base
Changes since 1.21: +6 -6 lines
Diff to previous 1.21 (colored)

si_ -> sel_

Revision 1.15.6.5 / (download) - annotate - [select for diffs], Mon Nov 11 22:08:51 2002 UTC (20 years, 2 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.15.6.4: +89 -2 lines
Diff to previous 1.15.6.4 (colored) to branchpoint 1.15 (colored)

Catch up to -current

Revision 1.21 / (download) - annotate - [select for diffs], Wed Oct 23 09:13:05 2002 UTC (20 years, 3 months ago) by jdolecek
Branch: MAIN
CVS Tags: kqueue-aftermerge
Changes since 1.20: +91 -4 lines
Diff to previous 1.20 (colored)

merge kqueue branch into -current

kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe

Revision 1.15.8.6 / (download) - annotate - [select for diffs], Thu Oct 10 18:38:22 2002 UTC (20 years, 3 months ago) by jdolecek
Branch: kqueue
Changes since 1.15.8.5: +29 -4 lines
Diff to previous 1.15.8.5 (colored) to branchpoint 1.15 (colored) next main 1.16 (colored)

sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work

Revision 1.15.8.5 / (download) - annotate - [select for diffs], Wed Oct 2 22:02:29 2002 UTC (20 years, 4 months ago) by jdolecek
Branch: kqueue
Changes since 1.15.8.4: +7 -7 lines
Diff to previous 1.15.8.4 (colored) to branchpoint 1.15 (colored)

do not need the (void *) cast for kn_hook anymore

Revision 1.15.6.4 / (download) - annotate - [select for diffs], Tue Sep 17 21:19:24 2002 UTC (20 years, 4 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.15.6.3: +27 -4 lines
Diff to previous 1.15.6.3 (colored) to branchpoint 1.15 (colored)

Catch up to -current.

Revision 1.20 / (download) - annotate - [select for diffs], Fri Sep 6 13:18:43 2002 UTC (20 years, 4 months ago) by gehenna
Branch: MAIN
CVS Tags: kqueue-beforemerge, kqueue-base
Changes since 1.19: +27 -4 lines
Diff to previous 1.19 (colored)

Merge the gehenna-devsw branch into the trunk.

This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.

Revision 1.19.8.1 / (download) - annotate - [select for diffs], Thu May 16 04:52:05 2002 UTC (20 years, 8 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.19: +27 -4 lines
Diff to previous 1.19 (colored) next main 1.20 (colored)

Add the character device switch.
Replace the direct-access to devsw table with calling devsw API.

Revision 1.15.6.3 / (download) - annotate - [select for diffs], Thu Feb 28 04:13:11 2002 UTC (20 years, 11 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.15.6.2: +3 -4 lines
Diff to previous 1.15.6.2 (colored) to branchpoint 1.15 (colored)

Catch up to -current.

Revision 1.15.8.4 / (download) - annotate - [select for diffs], Mon Feb 11 20:09:37 2002 UTC (20 years, 11 months ago) by jdolecek
Branch: kqueue
Changes since 1.15.8.3: +3 -4 lines
Diff to previous 1.15.8.3 (colored) to branchpoint 1.15 (colored)

Sync w/ -current.

Revision 1.19 / (download) - annotate - [select for diffs], Sun Jan 13 19:28:08 2002 UTC (21 years ago) by tsutsui
Branch: MAIN
CVS Tags: newlock-base, newlock, netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6, ifpoll-base, gehenna-devsw-base, eeh-devprop-base, eeh-devprop
Branch point for: gehenna-devsw
Changes since 1.18: +3 -4 lines
Diff to previous 1.18 (colored)

Call malloc(9) with M_ZERO flag instead of memset() after malloc().

Revision 1.15.8.3 / (download) - annotate - [select for diffs], Thu Jan 10 19:52:51 2002 UTC (21 years ago) by thorpej
Branch: kqueue
Changes since 1.15.8.2: +4 -5 lines
Diff to previous 1.15.8.2 (colored) to branchpoint 1.15 (colored)

Sync kqueue branch with -current.

Revision 1.15.6.2 / (download) - annotate - [select for diffs], Wed Nov 14 19:13:42 2001 UTC (21 years, 2 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.15.6.1: +4 -5 lines
Diff to previous 1.15.6.1 (colored) to branchpoint 1.15 (colored)

Catch up to -current.

Revision 1.18 / (download) - annotate - [select for diffs], Tue Nov 13 06:07:13 2001 UTC (21 years, 2 months ago) by lukem
Branch: MAIN
Changes since 1.17: +2 -6 lines
Diff to previous 1.17 (colored)

remove superfluous NSEQUENCER > 0 test

Revision 1.17 / (download) - annotate - [select for diffs], Tue Nov 13 05:32:50 2001 UTC (21 years, 2 months ago) by lukem
Branch: MAIN
Changes since 1.16: +4 -1 lines
Diff to previous 1.16 (colored)

add RCSIDs

Revision 1.16.2.4 / (download) - annotate - [select for diffs], Wed Sep 26 15:28:10 2001 UTC (21 years, 4 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.16.2.3: +22 -11 lines
Diff to previous 1.16.2.3 (colored) to branchpoint 1.16 (colored) next main 1.17 (colored)

* add a VCLONED vnode flag that indicates a vnode representing a cloned
  device.
* rename REVOKEALL to REVOKEALIAS, and add a REVOKECLONE flag, to pass
  to VOP_REVOKE
* the revoke system call will revoke all aliases, as before, but not the
  clones
* vdevgone is called when detaching a device, so make it use REVOKECLONE
  to get rid of all clones as well
* clean up all uses of VOP_OPEN wrt. locking.
* add a few VOPS to spec_vnops that need to do something when it's a
  clone vnode (access and getattr)
* add a copy of the vnode vattr structure of the original 'master' vnode
  to the specinfo of a cloned vnode. could possibly redirect getattr to
  the 'master' vnode, but this has issues with revoke
* add a vdev_reassignvp function that disassociates a vnode from its
  original device, and reassociates it with the specified dev_t. to be
  used by cloning devices only, in case a new minor is allocated.
* change all direct references in drivers to v_devcookie and v_rdev
  to vdev_privdata(vp) and vdev_rdev(vp). for diagnostic purposes
  when debugging race conditions that still exist wrt. locking and
  revoking vnodes.
* make the locking state of a vnode consistent when passed to
  d_open and d_close (unlocked). locked would be better, but has
  some deadlock issues

Revision 1.15.6.1 / (download) - annotate - [select for diffs], Fri Sep 21 22:35:28 2001 UTC (21 years, 4 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.15: +3 -3 lines
Diff to previous 1.15 (colored)

Catch up to -current.

Revision 1.16.2.3 / (download) - annotate - [select for diffs], Fri Sep 21 12:08:30 2001 UTC (21 years, 4 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.16.2.2: +30 -42 lines
Diff to previous 1.16.2.2 (colored) to branchpoint 1.16 (colored)

Attempt to clean up the sequencer code a bit, with only 50% success.

Revision 1.16.2.2 / (download) - annotate - [select for diffs], Tue Sep 18 19:13:49 2001 UTC (21 years, 4 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.16.2.1: +5 -5 lines
Diff to previous 1.16.2.1 (colored) to branchpoint 1.16 (colored)

Various changes to make cloning devices possible:

	* Add an extra argument (struct vnode **) to VOP_OPEN. If it is
	  not NULL, specfs will create a cloned (aliased) vnode during
	  the call, and return it there. The caller should release and
	  unlock the original vnode if a new vnode was returned. The
	  new vnode is returned locked.

	* Add a flag field to the cdevsw and bdevsw structures.
	  DF_CLONING indicates that it wants a new vnode for each
	  open (XXX is there a better way? devprop?)

	* If a device is cloning, always call the close entry
	  point for a VOP_CLOSE.


Also, rewrite cons.c to do the right thing with vnodes. Use VOPs
rather then direct device entry calls. Suggested by mycroft@

Light to moderate testing done an i386 system (arch doesn't matter
though, these are MI changes).

Revision 1.15.8.2 / (download) - annotate - [select for diffs], Thu Sep 13 01:15:35 2001 UTC (21 years, 4 months ago) by thorpej
Branch: kqueue
Changes since 1.15.8.1: +3 -3 lines
Diff to previous 1.15.8.1 (colored) to branchpoint 1.15 (colored)

Update the kqueue branch to HEAD.

Revision 1.15.8.1 / (download) - annotate - [select for diffs], Sat Sep 8 20:51:59 2001 UTC (21 years, 4 months ago) by thorpej
Branch: kqueue
Changes since 1.15: +88 -3 lines
Diff to previous 1.15 (colored)

Add kqueue support (someone who understands the sequencer code
should make sure I got this right).

Revision 1.16.2.1 / (download) - annotate - [select for diffs], Fri Sep 7 04:45:23 2001 UTC (21 years, 4 months ago) by thorpej
Branch: thorpej-devvp
Changes since 1.16: +65 -22 lines
Diff to previous 1.16 (colored)

Commit my "devvp" changes to the thorpej-devvp branch.  This
replaces the use of dev_t in most places with a struct vnode *.

This will form the basic infrastructure for real cloning device
support (besides being architecurally cleaner -- it'll be good
to get away from using numbers to represent objects).

Revision 1.16 / (download) - annotate - [select for diffs], Mon Sep 3 14:52:29 2001 UTC (21 years, 5 months ago) by reinoud
Branch: MAIN
CVS Tags: thorpej-mips-cache-base, thorpej-mips-cache, thorpej-devvp-base3, thorpej-devvp-base2, thorpej-devvp-base, pre-chs-ubcperf, post-chs-ubcperf
Branch point for: thorpej-devvp
Changes since 1.15: +3 -3 lines
Diff to previous 1.15 (colored)

Make it compile again when AUDIO_DEBUG is turned on ... in sequencesread
and sequencerwrite were two debug messages that had a type conflict in the
printf. I put in a (int) to solve it.

Revision 1.14.2.1 / (download) - annotate - [select for diffs], Mon Nov 20 11:39:48 2000 UTC (22 years, 2 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.14: +7 -3 lines
Diff to previous 1.14 (colored) next main 1.15 (colored)

Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.

Revision 1.15 / (download) - annotate - [select for diffs], Thu Mar 23 07:01:27 2000 UTC (22 years, 10 months ago) by thorpej
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base, netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, netbsd-1-5, minoura-xpg4dl-base, minoura-xpg4dl
Branch point for: nathanw_sa, kqueue
Changes since 1.14: +7 -3 lines
Diff to previous 1.14 (colored)

New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.

Revision 1.13.10.1 / (download) - annotate - [select for diffs], Mon Dec 27 18:34:35 1999 UTC (23 years, 1 month ago) by wrstuden
Branch: wrstuden-devbsize
Changes since 1.13: +3 -3 lines
Diff to previous 1.13 (colored) next main 1.14 (colored)

Pull up to last week's -current.

Revision 1.14 / (download) - annotate - [select for diffs], Mon Oct 11 12:53:14 1999 UTC (23 years, 3 months ago) by augustss
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, fvdl-softdep-base, fvdl-softdep, comdex-fall-1999-base, comdex-fall-1999, chs-ubc2-newbase
Branch point for: thorpej_scsipi
Changes since 1.13: +3 -3 lines
Diff to previous 1.13 (colored)

Allow larger timer variation.

Revision 1.13 / (download) - annotate - [select for diffs], Wed Nov 25 22:17:07 1998 UTC (24 years, 2 months ago) by augustss
Branch: MAIN
CVS Tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, netbsd-1-4, kenh-if-detach-base, kenh-if-detach, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame, chs-ubc2-base, chs-ubc2
Branch point for: wrstuden-devbsize
Changes since 1.12: +3 -2 lines
Diff to previous 1.12 (colored)

Make the copyright header conform to the NetBSD template.

Revision 1.12 / (download) - annotate - [select for diffs], Tue Oct 20 21:19:22 1998 UTC (24 years, 3 months ago) by augustss
Branch: MAIN
CVS Tags: chs-ubc-base, chs-ubc
Changes since 1.11: +3 -3 lines
Diff to previous 1.11 (colored)

Make seq_input_event() static to avoid a name clash with the (commercial)
OSS audio LKM.

Revision 1.11 / (download) - annotate - [select for diffs], Mon Oct 5 09:21:43 1998 UTC (24 years, 4 months ago) by augustss
Branch: MAIN
Changes since 1.10: +2 -1 lines
Diff to previous 1.10 (colored)

Make MIDI input work again.
Fix from Torsten Duwe <duwe@ns.lst.de>.

Revision 1.10 / (download) - annotate - [select for diffs], Mon Aug 24 17:59:27 1998 UTC (24 years, 5 months ago) by augustss
Branch: MAIN
Changes since 1.9: +7 -20 lines
Diff to previous 1.9 (colored)

Write MIDI data from the sequencer to the device in a more sane way.

Revision 1.9 / (download) - annotate - [select for diffs], Thu Aug 20 10:59:09 1998 UTC (24 years, 5 months ago) by augustss
Branch: MAIN
Changes since 1.8: +52 -2 lines
Diff to previous 1.8 (colored)

Provide a workaround for people who want a sequencer but have no MIDI devices.

Revision 1.8 / (download) - annotate - [select for diffs], Mon Aug 17 21:16:12 1998 UTC (24 years, 5 months ago) by augustss
Branch: MAIN
Changes since 1.7: +21 -2 lines
Diff to previous 1.7 (colored)

* Redo the way the way the MIDI driver attaches to audio devices.
* Improve the midisyn layer a little.
* Add a driver for the Yamaha OPL[23] FM synths.
  The opl driver is not finished yet; it sounds pretty awful.

For some strange reason I cannot get any FM sound from my SB64 cards,
but a regular SB16 works fine.

Revision 1.7 / (download) - annotate - [select for diffs], Thu Aug 13 15:50:57 1998 UTC (24 years, 5 months ago) by augustss
Branch: MAIN
Changes since 1.6: +20 -18 lines
Diff to previous 1.6 (colored)

Make sure to turn off timeout flag when doing untimeout().

Revision 1.6 / (download) - annotate - [select for diffs], Thu Aug 13 12:40:20 1998 UTC (24 years, 5 months ago) by augustss
Branch: MAIN
Changes since 1.5: +3 -3 lines
Diff to previous 1.5 (colored)

Fix typo in SYSEX code.

Revision 1.5 / (download) - annotate - [select for diffs], Thu Aug 13 00:13:56 1998 UTC (24 years, 5 months ago) by augustss
Branch: MAIN
Changes since 1.4: +25 -17 lines
Diff to previous 1.4 (colored)

Remove some leftover fluff.
Make sure there is no outstanding timeout when the sequencer is closed.

Revision 1.4 / (download) - annotate - [select for diffs], Wed Aug 12 21:31:28 1998 UTC (24 years, 5 months ago) by augustss
Branch: MAIN
Changes since 1.3: +32 -1 lines
Diff to previous 1.3 (colored)

Handle SYSEX messages.

Revision 1.3 / (download) - annotate - [select for diffs], Wed Aug 12 18:11:53 1998 UTC (24 years, 5 months ago) by augustss
Branch: MAIN
Changes since 1.2: +55 -53 lines
Diff to previous 1.2 (colored)

Tidy up and rename some functions in the MIDI driver.

Revision 1.2 / (download) - annotate - [select for diffs], Fri Aug 7 00:28:20 1998 UTC (24 years, 6 months ago) by augustss
Branch: MAIN
Changes since 1.1: +11 -8 lines
Diff to previous 1.1 (colored)

Report a sensible MIDI device name.

Revision 1.1 / (download) - annotate - [select for diffs], Fri Aug 7 00:00:58 1998 UTC (24 years, 6 months ago) by augustss
Branch: MAIN

Add MIDI support.  The MIDI devices can be accessed as ``raw'' through
the /dev/rmidiN devices, or with a sequencer interface via /dev/music.
So far the only supported MIDI device is the MPU401 port on SoundBlaster
(and only on SB on isapnp, since we do not have locators with multiple
values yet).

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>