The NetBSD Project

CVS log for src/sys/kern/kern_descrip.c

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

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.243.4.3: download - view: text, markup, annotated - select for diffs
Wed Nov 20 14:01:59 2024 UTC (2 weeks, 2 days ago) by martin
Branches: netbsd-9
Diff to: previous 1.243.4.2: preferred, colored; branchpoint 1.243: preferred, colored; next MAIN 1.244: preferred, colored
Changes since revision 1.243.4.2: +59 -37 lines
Pull up following revision(s) (requested by riastradh in ticket #1921):

	sys/kern/kern_event.c: revision 1.106
	sys/kern/sys_select.c: revision 1.51
	sys/kern/subr_exec_fd.c: revision 1.10
	sys/kern/sys_aio.c: revision 1.46
	sys/kern/kern_descrip.c: revision 1.244
	sys/kern/kern_descrip.c: revision 1.245
	sys/ddb/db_xxx.c: revision 1.72
	sys/ddb/db_xxx.c: revision 1.73
	sys/miscfs/fdesc/fdesc_vnops.c: revision 1.132
	sys/kern/uipc_usrreq.c: revision 1.195
	sys/kern/sys_descrip.c: revision 1.36
	sys/kern/uipc_usrreq.c: revision 1.196
	sys/kern/uipc_socket2.c: revision 1.135
	sys/kern/uipc_socket2.c: revision 1.136
	sys/kern/kern_sig.c: revision 1.383
	sys/kern/kern_sig.c: revision 1.384
	sys/compat/netbsd32/netbsd32_ioctl.c: revision 1.107
	sys/miscfs/procfs/procfs_vnops.c: revision 1.208
	sys/kern/subr_exec_fd.c: revision 1.9
	sys/kern/kern_descrip.c: revision 1.252
	(all via patch)

Load struct filedesc::fd_dt with atomic_load_consume.

Exceptions: when fd_refcnt <= 1, or when holding fd_lock.

While here:
- Restore KASSERT(mutex_owned(&fdp->fd_lock)) in fd_unused.
  => This is used only in fd_close and fd_abort, where it holds.
- Move bounds check assertion in fd_putfile to where it matters.
- Store fd_dt with atomic_store_release.
- Move load of fd_dt under lock in knote_fdclose.
- Omit membar_consumer in fdesc_readdir.
  => atomic_load_consume serves the same purpose now.
  => Was needed only on alpha anyway.

Load struct fdfile::ff_file with atomic_load_consume.
Exceptions: when we're only testing whether it's there, not about to
dereference it.

Note: We do not use atomic_store_release to set it because the
preceding mutex_exit should be enough.

(That said, it's not clear the mutex_enter/exit is needed unless
refcnt > 0 already, in which case maybe it would be a win to switch
from the membar implied by mutex_enter to the membar implied by
atomic_store_release -- which I would generally expect to be much
cheaper.  And a little clearer without a long comment.)
kern_descrip.c: Fix membars around reference count decrement.

In general, the `last one out hit the lights' style of reference
counting (as opposed to the `whoever's destroying must wait for
pending users to finish' style) requires memory barriers like so:

        ... usage of resources associated with object ...
        membar_release();
        if (atomic_dec_uint_nv(&obj->refcnt) != 0)
                return;
        membar_acquire();
        ... freeing of resources associated with object ...

This way, all usage happens-before all freeing.  This fixes several
errors:
- fd_close failed to ensure whatever its caller did would
  happen-before the freeing, in the case where another thread is
  concurrently trying to close the fd (ff->ff_file == NULL).
  Fix: Add membar_release before atomic_dec_uint(&ff->ff_refcnt) in
  that branch.
- fd_close failed to ensure all loads its caller had issued will have
  happened-before the freeing, in the case where the fd is still in
  use by another thread (fdp->fd_refcnt > 1 and ff->ff_refcnt-- > 0).
  Fix: Change membar_producer to membar_release before
  atomic_dec_uint(&ff->ff_refcnt).
- fd_close failed to ensure that any usage of fp by other callers
  would happen-before any freeing it does.
  Fix: Add membar_acquire after atomic_dec_uint_nv(&ff->ff_refcnt).
- fd_free failed to ensure that any usage of fdp by other callers
  would happen-before any freeing it does.
  Fix: Add membar_acquire after atomic_dec_uint_nv(&fdp->fd_refcnt).

While here, change membar_exit -> membar_release.  No semantic
change, just updating away from the legacy API.

Revision 1.243.4.2: download - view: text, markup, annotated - select for diffs
Sun Nov 17 13:27:41 2024 UTC (2 weeks, 5 days ago) by martin
Branches: netbsd-9
Diff to: previous 1.243.4.1: preferred, colored; branchpoint 1.243: preferred, colored
Changes since revision 1.243.4.1: +5 -10 lines
Pull up following revision(s) (requested by kre in ticket #1003):

	sys/kern/kern_descrip.c: revision 1.264 (via patch)

Make O_CLOEXEC always close specified files on exec

It turns out that close-on-exec doesn't always close on exec.

If all close-on-exec fd's were made close-on-exec via dup3() or
fcntl(F_DUPFD_CLOEXEC) or use of the internal fd_clone() (whose uses

I did not fully investigate but I think is used to create a fd for
the open of a cloner device, and perhaps other things) then none
of the close-on-exec file descriptors will be closed when an exec
happens - but will be passed through to the new process (still marked,
apparently, as close-on-exec - but still won't be closed if another exec
happens) - that is unless...

If at least one fd in the process has close-on-exec set some other way
(fcntl(F_SETFD), open(O_CLOEXEC) (and the similar functions for sockets,
and epoll) and perhaps others then all close-on-exec file descriptors
in the process will be correctly closed when an exec happens (however
they obtained the close-on-exec status).

There are two steps that need to be taken (in the kernel) when turning
on close on exec - the obvious one of setting the ff_exclose field in
the struct fdfile for the fd.   And second, marking the file descriptor
table (which holds the fdfile's for one or more processes) as containing
file descriptors with close-on-exec set (it is a simple yes/no, and once
set is never cleared until an actual exec happens).  If it was set during
an exec, all the file descriptors are examined, and those marked
close-on-exec are closed.   If the file descriptor table doesn't indicate
that close-on-exec fds exist in the table, none of that happens.

Several places were setting ff_exclose in the struct fdfile but
not bothering to set the fd_exclose field in the file descriptor table.

There's even a function (fd_set_exclose()) whose whole purpose is to do
this properly - but it wasn't being used.

Now it is, everywhere (I hope).

Revision 1.251.10.3: download - view: text, markup, annotated - select for diffs
Sun Nov 17 13:26:13 2024 UTC (2 weeks, 5 days ago) by martin
Branches: netbsd-10
Diff to: previous 1.251.10.2: preferred, colored; branchpoint 1.251: preferred, colored; next MAIN 1.252: preferred, colored
Changes since revision 1.251.10.2: +5 -12 lines
Pull up following revision(s) (requested by kre in ticket #1003):

	sys/kern/kern_descrip.c: revision 1.264

Make O_CLOEXEC always close specified files on exec

It turns out that close-on-exec doesn't always close on exec.

If all close-on-exec fd's were made close-on-exec via dup3() or
fcntl(F_DUPFD_CLOEXEC) or use of the internal fd_clone() (whose uses

I did not fully investigate but I think is used to create a fd for
the open of a cloner device, and perhaps other things) then none
of the close-on-exec file descriptors will be closed when an exec
happens - but will be passed through to the new process (still marked,
apparently, as close-on-exec - but still won't be closed if another exec
happens) - that is unless...

If at least one fd in the process has close-on-exec set some other way
(fcntl(F_SETFD), open(O_CLOEXEC) (and the similar functions for sockets,
and epoll) and perhaps others then all close-on-exec file descriptors
in the process will be correctly closed when an exec happens (however
they obtained the close-on-exec status).

There are two steps that need to be taken (in the kernel) when turning
on close on exec - the obvious one of setting the ff_exclose field in
the struct fdfile for the fd.   And second, marking the file descriptor
table (which holds the fdfile's for one or more processes) as containing
file descriptors with close-on-exec set (it is a simple yes/no, and once
set is never cleared until an actual exec happens).  If it was set during
an exec, all the file descriptors are examined, and those marked
close-on-exec are closed.   If the file descriptor table doesn't indicate
that close-on-exec fds exist in the table, none of that happens.

Several places were setting ff_exclose in the struct fdfile but
not bothering to set the fd_exclose field in the file descriptor table.

There's even a function (fd_set_exclose()) whose whole purpose is to do
this properly - but it wasn't being used.

Now it is, everywhere (I hope).

Revision 1.264: download - view: text, markup, annotated - select for diffs
Sun Nov 10 00:11:43 2024 UTC (3 weeks, 6 days ago) by kre
Branches: MAIN
CVS tags: HEAD
Diff to: previous 1.263: preferred, colored
Changes since revision 1.263: +5 -12 lines
Make O_CLOEXEC always close specified files on exec

It turns out that close-on-exec doesn't always close on exec.

If all close-on-exec fd's were made close-on-exec via dup3() or
fcntl(F_DUPFD_CLOEXEC) or use of the internal fd_clone() (whose uses
I did not fully investigate but I think is used to create a fd for
the open of a cloner device, and perhaps other things) then none
of the close-on-exec file descriptors will be closed when an exec
happens - but will be passed through to the new process (still marked,
apparently, as close-on-exec - but still won't be closed if another exec
happens) - that is unless...

If at least one fd in the process has close-on-exec set some other way
(fcntl(F_SETFD), open(O_CLOEXEC) (and the similar functions for sockets,
and epoll) and perhaps others then all close-on-exec file descriptors
in the process will be correctly closed when an exec happens (however
they obtained the close-on-exec status).

There are two steps that need to be taken (in the kernel) when turning
on close on exec - the obvious one of setting the ff_exclose field in
the struct fdfile for the fd.   And second, marking the file descriptor
table (which holds the fdfile's for one or more processes) as containing
file descriptors with close-on-exec set (it is a simple yes/no, and once
set is never cleared until an actual exec happens).  If it was set during
an exec, all the file descriptors are examined, and those marked
close-on-exec are closed.   If the file descriptor table doesn't indicate
that close-on-exec fds exist in the table, none of that happens.

Several places were setting ff_exclose in the struct fdfile but
not bothering to set the fd_exclose field in the file descriptor table.

There's even a function (fd_set_exclose()) whose whole purpose is to do
this properly - but it wasn't being used.

Now it is, everywhere (I hope).

Revision 1.243.4.1: download - view: text, markup, annotated - select for diffs
Wed Aug 7 10:11:45 2024 UTC (4 months ago) by martin
Branches: netbsd-9
Diff to: previous 1.243: preferred, colored
Changes since revision 1.243: +7 -3 lines
Pull up following revision(s) (requested by kre in ticket #1859):

	sys/kern/kern_proc.c: revision 1.276 (via patch)
	sys/kern/kern_ktrace.c: revision 1.185 (via patch)
	sys/kern/sys_sig.c: revision 1.58 (via patch)
	sys/kern/kern_descrip.c: revision 1.263 (via patch)
	lib/libc/compat-43/killpg.c: revision 1.10
	sys/kern/tty.c: revision 1.313 (via patch)
	tests/lib/libc/sys/t_kill.c: revision 1.2

PR kern/58425 --  Disallow INT_MIN as a (negative) pid arg.
Since -INT_MIN is undefined, and to point of negative pid args is
to negate them, and use the result as a pgrp id instead, we need
to avoid accidentally negating INT_MIN.

Since pid_t is just an integral type, of unspecified width, when
testing pid_t value test for <= INT_MIN (or > INT_MIN sometimes)
rather than == INT_MIN.   When testing int values, just == INT_MIN
is all that is needed, < INT_MIN cannot occur.

tests/lib/libc/sys/t_kill: Test kill(INT_MIN, ...) fails with ESRCH.
PR kern/58425

Revision 1.251.10.2: download - view: text, markup, annotated - select for diffs
Wed Aug 7 10:04:47 2024 UTC (4 months ago) by martin
Branches: netbsd-10
Diff to: previous 1.251.10.1: preferred, colored; branchpoint 1.251: preferred, colored
Changes since revision 1.251.10.1: +5 -4 lines
Pull up following revision(s) (requested by kre in ticket #773):

	sys/kern/kern_proc.c: revision 1.276
	sys/kern/kern_ktrace.c: revision 1.185
	sys/kern/sys_sig.c: revision 1.58
	sys/kern/kern_descrip.c: revision 1.263
	lib/libc/compat-43/killpg.c: revision 1.10
	sys/kern/tty.c: revision 1.313
	tests/lib/libc/sys/t_kill.c: revision 1.2

PR kern/58425 --  Disallow INT_MIN as a (negative) pid arg.

Since -INT_MIN is undefined, and to point of negative pid args is
to negate them, and use the result as a pgrp id instead, we need
to avoid accidentally negating INT_MIN.

Since pid_t is just an integral type, of unspecified width, when
testing pid_t value test for <= INT_MIN (or > INT_MIN sometimes)
rather than == INT_MIN.   When testing int values, just == INT_MIN
is all that is needed, < INT_MIN cannot occur.

tests/lib/libc/sys/t_kill: Test kill(INT_MIN, ...) fails with ESRCH.
PR kern/58425

Revision 1.263: download - view: text, markup, annotated - select for diffs
Sun Jul 14 05:10:40 2024 UTC (4 months, 3 weeks ago) by kre
Branches: MAIN
Diff to: previous 1.262: preferred, colored
Changes since revision 1.262: +5 -4 lines
PR kern/58425 --  Disallow INT_MIN as a (negative) pid arg.

Since -INT_MIN is undefined, and to point of negative pid args is
to negate them, and use the result as a pgrp id instead, we need
to avoid accidentally negating INT_MIN.

Since pid_t is just an integral type, of unspecified width, when
testing pid_t value test for <= INT_MIN (or > INT_MIN sometimes)
rather than == INT_MIN.   When testing int values, just == INT_MIN
is all that is needed, < INT_MIN cannot occur.

XXX pullup -9, -10

Revision 1.262: download - view: text, markup, annotated - select for diffs
Wed Oct 4 22:17:09 2023 UTC (14 months ago) by ad
Branches: MAIN
CVS tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs
Diff to: previous 1.261: preferred, colored
Changes since revision 1.261: +4 -6 lines
kauth_cred_hold(): return cred verbatim so that donating a reference to
another data structure can be done more elegantly.

Revision 1.261: download - view: text, markup, annotated - select for diffs
Sat Sep 23 18:21:11 2023 UTC (14 months, 2 weeks ago) by ad
Branches: MAIN
Diff to: previous 1.260: preferred, colored
Changes since revision 1.260: +23 -26 lines
Repply this change with a couple of bugs fixed:

- Do away with separate pool_cache for some kernel objects that have no special
  requirements and use the general purpose allocator instead. On one of my
  test systems this makes for a small (~1%) but repeatable reduction in system
  time during builds presumably because it decreases the kernel's cache /
  memory bandwidth footprint a little.
- vfs_lockf: cache a pointer to the uidinfo and put mutex in the data segment.

Revision 1.260: download - view: text, markup, annotated - select for diffs
Tue Sep 12 16:17:21 2023 UTC (14 months, 3 weeks ago) by ad
Branches: MAIN
Diff to: previous 1.259: preferred, colored
Changes since revision 1.259: +26 -23 lines
Back out recent change to replace pool_cache with then general allocator.
Will return to this when I have time again.

Revision 1.259: download - view: text, markup, annotated - select for diffs
Sun Sep 10 14:45:52 2023 UTC (14 months, 4 weeks ago) by ad
Branches: MAIN
Diff to: previous 1.258: preferred, colored
Changes since revision 1.258: +23 -26 lines
- Do away with separate pool_cache for some kernel objects that have no special
  requirements and use the general purpose allocator instead.  On one of my
  test systems this makes for a small (~1%) but repeatable reduction in system
  time during builds presumably because it decreases the kernel's cache /
  memory bandwidth footprint a little.
- vfs_lockf: cache a pointer to the uidinfo and put mutex in the data segment.

Revision 1.258: download - view: text, markup, annotated - select for diffs
Sun Sep 10 14:44:08 2023 UTC (14 months, 4 weeks ago) by ad
Branches: MAIN
Diff to: previous 1.257: preferred, colored
Changes since revision 1.257: +9 -3 lines
It's easy to exhaust the open file limit on a system with many CPUs due to
caching.  Allow a bit of leeway to reduce the element of surprise.

Revision 1.251.10.1: download - view: text, markup, annotated - select for diffs
Sun Jul 30 12:09:51 2023 UTC (16 months, 1 week ago) by martin
Branches: netbsd-10
CVS tags: netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1
Diff to: previous 1.251: preferred, colored
Changes since revision 1.251: +52 -14 lines
Pull up following revision(s) (requested by riastradh in ticket #262):

	sys/kern/kern_descrip.c: revision 1.252
	sys/kern/kern_descrip.c: revision 1.253
	sys/kern/kern_descrip.c: revision 1.254

kern_descrip.c: Fix membars around reference count decrement.

In general, the `last one out hit the lights' style of reference
counting (as opposed to the `whoever's destroying must wait for
pending users to finish' style) requires memory barriers like so:
        ... usage of resources associated with object ...
        membar_release();
        if (atomic_dec_uint_nv(&obj->refcnt) != 0)
                return;
        membar_acquire();
        ... freeing of resources associated with object ...

This way, all usage happens-before all freeing.  This fixes several
errors:
- fd_close failed to ensure whatever its caller did would
  happen-before the freeing, in the case where another thread is
  concurrently trying to close the fd (ff->ff_file == NULL).
  Fix: Add membar_release before atomic_dec_uint(&ff->ff_refcnt) in
  that branch.
- fd_close failed to ensure all loads its caller had issued will have
  happened-before the freeing, in the case where the fd is still in
  use by another thread (fdp->fd_refcnt > 1 and ff->ff_refcnt-- > 0).
  Fix: Change membar_producer to membar_release before
  atomic_dec_uint(&ff->ff_refcnt).
- fd_close failed to ensure that any usage of fp by other callers
  would happen-before any freeing it does.
  Fix: Add membar_acquire after atomic_dec_uint_nv(&ff->ff_refcnt).
- fd_free failed to ensure that any usage of fdp by other callers
  would happen-before any freeing it does.
  Fix: Add membar_acquire after atomic_dec_uint_nv(&fdp->fd_refcnt).

While here, change membar_exit -> membar_release.  No semantic
change, just updating away from the legacy API.

kern_descrip.c: Use atomic_store_relaxed/release for ff->ff_file.
1. atomic_store_relaxed in fd_close avoids the appearance of race in
   sanitizers (minor bug).
2. atomic_store_release in fd_affix is necessary because the lock
   activity was not, in fact, enough to guarantee ordering (real bug
   some architectures like aarch64).
   The premise appears to have been that the mutex_enter/exit earlier
   in fd_affix is enough to guarantee that initialization of fp (A)
   happens before use of fp by a user once fp is published (B):
        fp->f_... = ...;                // A
        /* fd_affix */
        mutex_enter(&fp->f_lock);
        fp->f_count++;
        mutex_exit(&fp->f_lock);
        ...
        ff->ff_file = fp;               // B
   But actually mutex_enter/exit allow the following reordering by
   the CPU:
        mutex_enter(&fp->f_lock);
        ff->ff_file = fp;               // B
        fp->f_count++;
        fp->f_... = ...;                // A
        mutex_exit(&fp->f_lock);
   The only constraints they imply are:
        1. fp->f_count++ and B cannot precede mutex_enter
        2. mutex_exit cannot precede A and fp->f_count++
   They imply no constraint on the relative ordering of A, B, and
   fp->f_count++ amongst each other, however.
   This affects any architecture that has a native load-acquire or
   store-release operation in mutex_enter/exit, like aarch64, instead
   of explicit load-before-load/store and load/store-before-store
   barrier.

No need for atomic_store_* in fd_copy or fd_free because we have
exclusive access to ff as is.

kern_descrip.c: Change membar_enter to membar_acquire in fd_getfile.
membar_acquire is cheaper on many CPUs, and unlikely to be costlier
on any CPUs, than the legacy membar_enter.
Add a long comment explaining the interaction between fd_getfile and
fd_close and why membar_acquire is safe.

Revision 1.257: download - view: text, markup, annotated - select for diffs
Sat Apr 22 14:23:59 2023 UTC (19 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.256: preferred, colored
Changes since revision 1.256: +5 -3 lines
fcntl(2), flock(2): Assert FHASLOCK is clear if no fo_advlock.

Revision 1.256: download - view: text, markup, annotated - select for diffs
Sat Apr 22 13:52:46 2023 UTC (19 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.255: preferred, colored
Changes since revision 1.255: +7 -7 lines
file(9): New fo_advlock operation.

This moves the vnode-specific logic from sys_descrip.c into
vfs_vnode.c, like we did for fo_seek.

XXX kernel revbump -- struct fileops API and ABI change

Revision 1.255: download - view: text, markup, annotated - select for diffs
Fri Feb 24 11:02:27 2023 UTC (21 months, 1 week ago) by riastradh
Branches: MAIN
Diff to: previous 1.254: preferred, colored
Changes since revision 1.254: +2 -16 lines
kern: Eliminate most __HAVE_ATOMIC_AS_MEMBAR conditionals.

I'm leaving in the conditional around the legacy membar_enters
(store-before-load, store-before-store) in kern_mutex.c and in
kern_lock.c because they may still matter: store-before-load barriers
tend to be the most expensive kind, so eliding them is probably
worthwhile on x86.  (It also may not matter; I just don't care to do
measurements right now, and it's a single valid and potentially
justifiable use case in the whole tree.)

However, membar_release/acquire can be mere instruction barriers on
all TSO platforms including x86, so there's no need to go out of our
way with a bad API to conditionalize them.  If the procedure call
overhead is measurable we just could change them to be macros on x86
that expand into __insn_barrier.

Discussed on tech-kern:
https://mail-index.netbsd.org/tech-kern/2023/02/23/msg028729.html

Revision 1.254: download - view: text, markup, annotated - select for diffs
Thu Feb 23 03:00:15 2023 UTC (21 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.253: preferred, colored
Changes since revision 1.253: +38 -3 lines
kern_descrip.c: Change membar_enter to membar_acquire in fd_getfile.

membar_acquire is cheaper on many CPUs, and unlikely to be costlier
on any CPUs, than the legacy membar_enter.

Add a long comment explaining the interaction between fd_getfile and
fd_close and why membar_acquire is safe.

XXX pullup-10

Revision 1.253: download - view: text, markup, annotated - select for diffs
Thu Feb 23 02:58:40 2023 UTC (21 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.252: preferred, colored
Changes since revision 1.252: +4 -10 lines
kern_descrip.c: Use atomic_store_relaxed/release for ff->ff_file.

1. atomic_store_relaxed in fd_close avoids the appearance of race in
   sanitizers (minor bug).

2. atomic_store_release in fd_affix is necessary because the lock
   activity was not, in fact, enough to guarantee ordering (real bug
   some architectures like aarch64).

   The premise appears to have been that the mutex_enter/exit earlier
   in fd_affix is enough to guarantee that initialization of fp (A)
   happens before use of fp by a user once fp is published (B):

	fp->f_... = ...;		// A

	/* fd_affix */
	mutex_enter(&fp->f_lock);
	fp->f_count++;
	mutex_exit(&fp->f_lock);
	...
	ff->ff_file = fp;		// B

   But actually mutex_enter/exit allow the following reordering by
   the CPU:

	mutex_enter(&fp->f_lock);
	ff->ff_file = fp;		// B
	fp->f_count++;
	fp->f_... = ...;		// A
	mutex_exit(&fp->f_lock);

   The only constraints they imply are:

	1. fp->f_count++ and B cannot precede mutex_enter
	2. mutex_exit cannot precede A and fp->f_count++

   They imply no constraint on the relative ordering of A, B, and
   fp->f_count++ amongst each other, however.

   This affects any architecture that has a native load-acquire or
   store-release operation in mutex_enter/exit, like aarch64, instead
   of explicit load-before-load/store and load/store-before-store
   barrier.

No need for atomic_store_* in fd_copy or fd_free because we have
exclusive access to ff as is.

XXX pullup-9
XXX pullup-10

Revision 1.252: download - view: text, markup, annotated - select for diffs
Thu Feb 23 02:58:28 2023 UTC (21 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.251: preferred, colored
Changes since revision 1.251: +14 -5 lines
kern_descrip.c: Fix membars around reference count decrement.

In general, the `last one out hit the lights' style of reference
counting (as opposed to the `whoever's destroying must wait for
pending users to finish' style) requires memory barriers like so:

	... usage of resources associated with object ...
	membar_release();
	if (atomic_dec_uint_nv(&obj->refcnt) != 0)
		return;
	membar_acquire();
	... freeing of resources associated with object ...

This way, all usage happens-before all freeing.  This fixes several
errors:

- fd_close failed to ensure whatever its caller did would
  happen-before the freeing, in the case where another thread is
  concurrently trying to close the fd (ff->ff_file == NULL).

  Fix: Add membar_release before atomic_dec_uint(&ff->ff_refcnt) in
  that branch.

- fd_close failed to ensure all loads its caller had issued will have
  happened-before the freeing, in the case where the fd is still in
  use by another thread (fdp->fd_refcnt > 1 and ff->ff_refcnt-- > 0).

  Fix: Change membar_producer to membar_release before
  atomic_dec_uint(&ff->ff_refcnt).

- fd_close failed to ensure that any usage of fp by other callers
  would happen-before any freeing it does.

  Fix: Add membar_acquire after atomic_dec_uint_nv(&ff->ff_refcnt).

- fd_free failed to ensure that any usage of fdp by other callers
  would happen-before any freeing it does.

  Fix: Add membar_acquire after atomic_dec_uint_nv(&fdp->fd_refcnt).

While here, change membar_exit -> membar_release.  No semantic
change, just updating away from the legacy API.

XXX pullup-8
XXX pullup-9
XXX pullup-10

Revision 1.250.4.1: download - view: text, markup, annotated - select for diffs
Sun Aug 1 22:42:38 2021 UTC (3 years, 4 months ago) by thorpej
Branches: thorpej-i2c-spi-conf
Diff to: previous 1.250: preferred, colored; next MAIN 1.251: preferred, colored
Changes since revision 1.250: +32 -18 lines
Sync with HEAD.

Revision 1.251: download - view: text, markup, annotated - select for diffs
Tue Jun 29 22:40:53 2021 UTC (3 years, 5 months ago) by dholland
Branches: MAIN
CVS tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-futex2-base, thorpej-futex2, thorpej-cfargs2-base, thorpej-cfargs2, netbsd-10-base, bouyer-sunxi-drm-base, bouyer-sunxi-drm
Branch point for: netbsd-10
Diff to: previous 1.250: preferred, colored
Changes since revision 1.250: +32 -18 lines
Add containment for the cloning devices hack in vn_open.

Cloning devices (and also things like /dev/stderr) work by allocating
a struct file, stuffing it in the file table (which is a layer
violation), stuffing the file descriptor number for it in a magic
field of struct lwp (which is gross), and then "failing" with one of
two magic errnos, EDUPFD or EMOVEFD.

Before this commit, all callers of vn_open in the kernel (there are
quite a few) were expected to check for these errors and handle the
situation. Needless to say, none of them except for open() itself did,
resulting in internal negative errnos being returned to userspace.

This hack is fairly deeply rooted and cannot be eliminated all at
once. This commit adds logic to handle the magic errnos inside
vn_open; now on success vn_open returns either a vnode or an integer
file descriptor, along with a flag that says whether the underlying
code requested EDUPFD or EMOVEFD. Callers not prepared to cope with
file descriptors can pass NULL for the extra return values, in which
case if a file descriptor would be produced vn_open fails with
EOPNOTSUPP.

Since I'm rearranging vn_open's signature anyway, stop exposing struct
nameidata. Instead, take three arguments: an optional vnode to use as
the starting point (like openat()), the path, and additional namei
flags to use, restricted to NOCHROOT and TRYEMULROOT. (Other namei
behavior, e.g. NOFOLLOW, can be requested via the open flags.)

This change requires a kernel bump. Ride the one an hour ago.
(That was supposed to be coordinated; did not intend to let an hour
slip by. My fault.)

Revision 1.249.2.1: download - view: text, markup, annotated - select for diffs
Sun Jan 3 16:35:04 2021 UTC (3 years, 11 months ago) by thorpej
Branches: thorpej-futex
Diff to: previous 1.249: preferred, colored; next MAIN 1.250: preferred, colored
Changes since revision 1.249: +5 -2 lines
Sync w/ HEAD.

Revision 1.250: download - view: text, markup, annotated - select for diffs
Thu Dec 24 12:14:50 2020 UTC (3 years, 11 months ago) by nia
Branches: MAIN
CVS tags: thorpej-futex-base, thorpej-cfargs-base, thorpej-cfargs, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Branch point for: thorpej-i2c-spi-conf
Diff to: previous 1.249: preferred, colored
Changes since revision 1.249: +5 -2 lines
Avoid negating the minimum size of pid_t (this overflows).

Reported-by: syzbot+e2eb02f9dfaf4f2e6626@syzkaller.appspotmail.com

Revision 1.249: download - view: text, markup, annotated - select for diffs
Fri Aug 28 10:20:14 2020 UTC (4 years, 3 months ago) by christos
Branches: MAIN
Branch point for: thorpej-futex
Diff to: previous 1.248: preferred, colored
Changes since revision 1.248: +2 -3 lines
We already zeroed the struct, no point in zeroing things twice.

Revision 1.248: download - view: text, markup, annotated - select for diffs
Fri Aug 28 06:47:18 2020 UTC (4 years, 3 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.247: preferred, colored
Changes since revision 1.247: +3 -3 lines
Just zero out struct file::f_lock when exposed to userland.

Userland has no business examining a snapshot of the lock state, even
if pseudonymized.  Should fix hppa build, where kmutex_t is somewhat
larger than anticipated by recent changes.

Revision 1.247: download - view: text, markup, annotated - select for diffs
Wed Aug 26 22:56:55 2020 UTC (4 years, 3 months ago) by christos
Branches: MAIN
Diff to: previous 1.246: preferred, colored
Changes since revision 1.246: +8 -8 lines
Instead of returning 0 when sysctl kern.expose_address=0, return a random
hashed value of the data. This allows sockstat to work without exposing
kernel addresses or being setgid kmem.

Revision 1.246: download - view: text, markup, annotated - select for diffs
Sat May 23 23:42:43 2020 UTC (4 years, 6 months ago) by ad
Branches: MAIN
Diff to: previous 1.245: preferred, colored
Changes since revision 1.245: +14 -14 lines
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.231.10.2: download - view: text, markup, annotated - select for diffs
Wed Apr 8 14:08:51 2020 UTC (4 years, 8 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.231.10.1: preferred, colored; branchpoint 1.231: preferred, colored; next MAIN 1.232: preferred, colored
Changes since revision 1.231.10.1: +39 -36 lines
Merge changes from current as of 20200406

Revision 1.243.6.1: download - view: text, markup, annotated - select for diffs
Sat Feb 29 20:21:02 2020 UTC (4 years, 9 months ago) by ad
Branches: ad-namecache
Diff to: previous 1.243: preferred, colored; next MAIN 1.244: preferred, colored
Changes since revision 1.243: +39 -36 lines
Sync with head.

Revision 1.245: download - view: text, markup, annotated - select for diffs
Sat Feb 1 02:23:23 2020 UTC (4 years, 10 months ago) by riastradh
Branches: MAIN
CVS tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3
Diff to: previous 1.244: preferred, colored
Changes since revision 1.244: +15 -12 lines
Load struct fdfile::ff_file with atomic_load_consume.

Exceptions: when we're only testing whether it's there, not about to
dereference it.

Note: We do not use atomic_store_release to set it because the
preceding mutex_exit should be enough.

(That said, it's not clear the mutex_enter/exit is needed unless
refcnt > 0 already, in which case maybe it would be a win to switch
from the membar implied by mutex_enter to the membar implied by
atomic_store_release -- which I would generally expect to be much
cheaper.  And a little clearer without a long comment.)

Revision 1.244: download - view: text, markup, annotated - select for diffs
Sat Feb 1 02:23:04 2020 UTC (4 years, 10 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.243: preferred, colored
Changes since revision 1.243: +26 -26 lines
Load struct filedesc::fd_dt with atomic_load_consume.

Exceptions: when fd_refcnt <= 1, or when holding fd_lock.

While here:

- Restore KASSERT(mutex_owned(&fdp->fd_lock)) in fd_unused.
  => This is used only in fd_close and fd_abort, where it holds.
- Move bounds check assertion in fd_putfile to where it matters.
- Store fd_dt with atomic_store_release.
- Move load of fd_dt under lock in knote_fdclose.
- Omit membar_consumer in fdesc_readdir.
  => atomic_load_consume serves the same purpose now.
  => Was needed only on alpha anyway.

Revision 1.231.10.1: download - view: text, markup, annotated - select for diffs
Mon Jun 10 22:09:03 2019 UTC (5 years, 5 months ago) by christos
Branches: phil-wifi
Diff to: previous 1.231: preferred, colored
Changes since revision 1.231: +69 -32 lines
Sync with HEAD

Revision 1.243: download - view: text, markup, annotated - select for diffs
Wed Feb 20 19:42:14 2019 UTC (5 years, 9 months ago) by christos
Branches: MAIN
CVS tags: phil-wifi-20191119, phil-wifi-20190609, netbsd-9-base, netbsd-9-4-RELEASE, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, isaki-audio2-base, isaki-audio2, ad-namecache-base2, ad-namecache-base1, ad-namecache-base
Branch point for: netbsd-9, ad-namecache
Diff to: previous 1.242: preferred, colored
Changes since revision 1.242: +4 -4 lines
handle O_NOSIGPIPE too.

Revision 1.231.8.6: download - view: text, markup, annotated - select for diffs
Fri Jan 18 08:50:57 2019 UTC (5 years, 10 months ago) by pgoyette
Branches: pgoyette-compat
CVS tags: pgoyette-compat-merge-20190127
Diff to: previous 1.231.8.5: preferred, colored; branchpoint 1.231: preferred, colored; next MAIN 1.232: preferred, colored
Changes since revision 1.231.8.5: +3 -2 lines
Synch with HEAD

Revision 1.242: download - view: text, markup, annotated - select for diffs
Thu Jan 3 10:16:43 2019 UTC (5 years, 11 months ago) by maxv
Branches: MAIN
CVS tags: pgoyette-compat-20190127, pgoyette-compat-20190118
Diff to: previous 1.241: preferred, colored
Changes since revision 1.241: +3 -2 lines
Add KASSERT.

Revision 1.231.8.5: download - view: text, markup, annotated - select for diffs
Mon Nov 26 01:52:50 2018 UTC (6 years ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.231.8.4: preferred, colored; branchpoint 1.231: preferred, colored
Changes since revision 1.231.8.4: +42 -9 lines
Sync with HEAD, resolve a couple of conflicts

Revision 1.241: download - view: text, markup, annotated - select for diffs
Sat Nov 24 16:41:48 2018 UTC (6 years ago) by maxv
Branches: MAIN
CVS tags: pgoyette-compat-1226, pgoyette-compat-1126
Diff to: previous 1.240: preferred, colored
Changes since revision 1.240: +37 -6 lines
Fix kernel pointer leaks in the kern.file sysctl, same as kern.file2.

Revision 1.240: download - view: text, markup, annotated - select for diffs
Sat Nov 24 16:25:20 2018 UTC (6 years ago) by maxv
Branches: MAIN
Diff to: previous 1.239: preferred, colored
Changes since revision 1.239: +5 -5 lines
Rename fill_file -> fill_file2, since that's the KERN_FILE2 sysctl.

Revision 1.239: download - view: text, markup, annotated - select for diffs
Fri Nov 2 12:27:47 2018 UTC (6 years, 1 month ago) by maxv
Branches: MAIN
Diff to: previous 1.238: preferred, colored
Changes since revision 1.238: +4 -2 lines
Add LIST_INIT for filehead.

Revision 1.231.8.4: download - view: text, markup, annotated - select for diffs
Sat Oct 20 06:58:45 2018 UTC (6 years, 1 month ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.231.8.3: preferred, colored; branchpoint 1.231: preferred, colored
Changes since revision 1.231.8.3: +9 -21 lines
Sync with head

Revision 1.238: download - view: text, markup, annotated - select for diffs
Fri Oct 5 22:12:38 2018 UTC (6 years, 2 months ago) by christos
Branches: MAIN
CVS tags: pgoyette-compat-1020
Diff to: previous 1.237: preferred, colored
Changes since revision 1.237: +9 -21 lines
Provide a sysctl kern.expose_address to expose kernel addresses in
sysctl structure returns for non-root. Defaults to off. Turning it
on will restore sockstat/fstat and friends for regular users.

Revision 1.231.8.3: download - view: text, markup, annotated - select for diffs
Sun Sep 30 01:45:55 2018 UTC (6 years, 2 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.231.8.2: preferred, colored; branchpoint 1.231: preferred, colored
Changes since revision 1.231.8.2: +23 -8 lines
Ssync with HEAD

Revision 1.237: download - view: text, markup, annotated - select for diffs
Thu Sep 13 14:44:09 2018 UTC (6 years, 2 months ago) by maxv
Branches: MAIN
CVS tags: pgoyette-compat-0930
Diff to: previous 1.236: preferred, colored
Changes since revision 1.236: +23 -8 lines
Don't leak kernel pointers to userland in kern.file2, same as kern.proc2.

Revision 1.231.8.2: download - view: text, markup, annotated - select for diffs
Thu Sep 6 06:56:41 2018 UTC (6 years, 3 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.231.8.1: preferred, colored; branchpoint 1.231: preferred, colored
Changes since revision 1.231.8.1: +4 -4 lines
Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)

Revision 1.236: download - view: text, markup, annotated - select for diffs
Mon Sep 3 16:29:35 2018 UTC (6 years, 3 months ago) by riastradh
Branches: MAIN
CVS tags: pgoyette-compat-0906
Diff to: previous 1.235: preferred, colored
Changes since revision 1.235: +4 -4 lines
Rename min/max -> uimin/uimax for better honesty.

These functions are defined on unsigned int.  The generic name
min/max should not silently truncate to 32 bits on 64-bit systems.
This is purely a name change -- no functional change intended.

HOWEVER!  Some subsystems have

	#define min(a, b)	((a) < (b) ? (a) : (b))
	#define max(a, b)	((a) > (b) ? (a) : (b))

even though our standard name for that is MIN/MAX.  Although these
may invite multiple evaluation bugs, these do _not_ cause integer
truncation.

To avoid `fixing' these cases, I first changed the name in libkern,
and then compile-tested every file where min/max occurred in order to
confirm that it failed -- and thus confirm that nothing shadowed
min/max -- before changing it.

I have left a handful of bootloaders that are too annoying to
compile-test, and some dead code:

cobalt ews4800mips hp300 hppa ia64 luna68k vax
acorn32/if_ie.c (not included in any kernels)
macppc/if_gm.c (superseded by gem(4))

It should be easy to fix the fallout once identified -- this way of
doing things fails safe, and the goal here, after all, is to _avoid_
silent integer truncations, not introduce them.

Maybe one day we can reintroduce min/max as type-generic things that
never silently truncate.  But we should avoid doing that for a while,
so that existing code has a chance to be detected by the compiler for
conversion to uimin/uimax without changing the semantics until we can
properly audit it all.  (Who knows, maybe in some cases integer
truncation is actually intended!)

Revision 1.231.8.1: download - view: text, markup, annotated - select for diffs
Sat Jul 28 04:38:08 2018 UTC (6 years, 4 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.231: preferred, colored
Changes since revision 1.231: +15 -15 lines
Sync with HEAD

Revision 1.235: download - view: text, markup, annotated - select for diffs
Tue Jul 3 23:14:57 2018 UTC (6 years, 5 months ago) by kamil
Branches: MAIN
CVS tags: pgoyette-compat-0728
Diff to: previous 1.234: preferred, colored
Changes since revision 1.234: +6 -6 lines
Avoid unportable signed integer left shift in fd_unused()

Detected with Kernel Undefined Behavior Sanitizer.

There were at least a single place reported, for consistency fix all the
left bit shift operations.
sys/kern/kern_descrip.c:345:2, left shift of 1 by 31 places cannot be represented in type 'int'
sys/kern/kern_descrip.c:346:28, left shift of 1 by 31 places cannot be represented in type 'int'

Reported by <Harry Pantazis>

Revision 1.234: download - view: text, markup, annotated - select for diffs
Tue Jul 3 23:11:06 2018 UTC (6 years, 5 months ago) by kamil
Branches: MAIN
Diff to: previous 1.233: preferred, colored
Changes since revision 1.233: +4 -4 lines
Avoid unportable signed integer left shift in fd_copy()

Detected with Kernel Undefined Behavior Sanitizer.

There were at least a single place reported, for consistency fix all the
left bit shift operations.
sys/kern/kern_descrip.c:1492:3, left shift of 1 by 31 places cannot be represented in type 'int'
sys/kern/kern_descrip.c:1493:28, left shift of 1 by 31 places cannot be represented in type 'int'

Reported by <Harry Pantazis>

Revision 1.233: download - view: text, markup, annotated - select for diffs
Tue Jul 3 22:49:51 2018 UTC (6 years, 5 months ago) by kamil
Branches: MAIN
Diff to: previous 1.232: preferred, colored
Changes since revision 1.232: +3 -3 lines
Avoid unportable signed integer left shift in fd_isused()

Detected with Kernel Undefined Behavior Sanitizer.

sys/kern/kern_descrip.c:188:34, left shift of 1 by 31 places cannot be represented in type 'int'

Reported by <Harry Pantazis>

Revision 1.232: download - view: text, markup, annotated - select for diffs
Tue Jul 3 12:17:54 2018 UTC (6 years, 5 months ago) by kamil
Branches: MAIN
Diff to: previous 1.231: preferred, colored
Changes since revision 1.231: +6 -6 lines
Avoid unportable signed integer left shift in fd_used()

Detected with Kernel Undefined Behavior Sanitizer.

There were at least a single place reported, for consistency fix all the
left bit shift operations.
sys/kern/kern_descrip.c:302:26, left shift of 1 by 31 places cannot be represented in type 'int'

Reported by <Harry Pantazis>

Revision 1.218.6.3: download - view: text, markup, annotated - select for diffs
Sun Dec 3 11:38:44 2017 UTC (7 years ago) by jdolecek
Branches: tls-maxphys
Diff to: previous 1.218.6.2: preferred, colored; branchpoint 1.218: preferred, colored; next MAIN 1.219: preferred, colored
Changes since revision 1.218.6.2: +36 -32 lines
update from HEAD

Revision 1.228.2.2: download - view: text, markup, annotated - select for diffs
Mon Aug 28 17:53:07 2017 UTC (7 years, 3 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.228.2.1: preferred, colored; branchpoint 1.228: preferred, colored; next MAIN 1.229: preferred, colored
Changes since revision 1.228.2.1: +4 -6 lines
Sync with HEAD

Revision 1.225.2.2: download - view: text, markup, annotated - select for diffs
Sat Jun 3 16:58:01 2017 UTC (7 years, 6 months ago) by snj
Branches: netbsd-7
CVS tags: netbsd-7-2-RELEASE
Diff to: previous 1.225.2.1: preferred, colored; branchpoint 1.225: preferred, colored; next MAIN 1.226: preferred, colored
Changes since revision 1.225.2.1: +3 -3 lines
Pull up following revision(s) (requested by riastradh in ticket #1425):
	sys/kern/kern_descrip.c: revision 1.230
Explicitly set the flags instead of masking set values in.
This fixes FNONBLOCK weirdness seen in audio.c
OK christos@ and martin@.

Revision 1.225.2.1.6.1: download - view: text, markup, annotated - select for diffs
Sat Jun 3 16:57:16 2017 UTC (7 years, 6 months ago) by snj
Branches: netbsd-7-1
CVS tags: netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE
Diff to: previous 1.225.2.1: preferred, colored; next MAIN 1.225.2.2: preferred, colored
Changes since revision 1.225.2.1: +3 -3 lines
Pull up following revision(s) (requested by riastradh in ticket #1425):
	sys/kern/kern_descrip.c: revision 1.230
Explicitly set the flags instead of masking set values in.
This fixes FNONBLOCK weirdness seen in audio.c
OK christos@ and martin@.

Revision 1.225.2.1.2.1: download - view: text, markup, annotated - select for diffs
Sat Jun 3 16:56:32 2017 UTC (7 years, 6 months ago) by snj
Branches: netbsd-7-0
Diff to: previous 1.225.2.1: preferred, colored; next MAIN 1.225.2.2: preferred, colored
Changes since revision 1.225.2.1: +3 -3 lines
Pull up following revision(s) (requested by riastradh in ticket #1425):
	sys/kern/kern_descrip.c: revision 1.230
Explicitly set the flags instead of masking set values in.
This fixes FNONBLOCK weirdness seen in audio.c
OK christos@ and martin@.

Revision 1.231: download - view: text, markup, annotated - select for diffs
Thu Jun 1 02:45:13 2017 UTC (7 years, 6 months ago) by chs
Branches: MAIN
CVS tags: tls-maxphys-base-20171202, phil-wifi-base, pgoyette-compat-base, 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, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, netbsd-8-base, netbsd-8-3-RELEASE, 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
Branch point for: phil-wifi, pgoyette-compat
Diff to: previous 1.230: preferred, colored
Changes since revision 1.230: +3 -5 lines
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.229.8.1: download - view: text, markup, annotated - select for diffs
Fri May 19 00:22:57 2017 UTC (7 years, 6 months ago) by pgoyette
Branches: prg-localcount2
Diff to: previous 1.229: preferred, colored; next MAIN 1.230: preferred, colored
Changes since revision 1.229: +3 -3 lines
Resolve conflicts from previous merge (all resulting from $NetBSD
keywork expansion)

Revision 1.230: download - view: text, markup, annotated - select for diffs
Thu May 11 22:38:56 2017 UTC (7 years, 6 months ago) by nat
Branches: MAIN
CVS tags: prg-localcount2-base3
Diff to: previous 1.229: preferred, colored
Changes since revision 1.229: +3 -3 lines
Explicitly set the flags instead of masking set values in.

This fixes FNONBLOCK weirdness seen in audio.c

OK christos@ and martin@.

Revision 1.228.2.1: download - view: text, markup, annotated - select for diffs
Tue Sep 22 12:06:07 2015 UTC (9 years, 2 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.228: preferred, colored
Changes since revision 1.228: +9 -3 lines
Sync with HEAD

Revision 1.225.2.1: download - view: text, markup, annotated - select for diffs
Tue Aug 4 17:24:59 2015 UTC (9 years, 4 months ago) by snj
Branches: netbsd-7
CVS tags: netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE
Branch point for: netbsd-7-1, netbsd-7-0
Diff to: previous 1.225: preferred, colored
Changes since revision 1.225: +9 -3 lines
Pull up following revision(s) (requested by christos in ticket #933):
	sys/kern/kern_descrip.c: revision 1.229
1. mask fflags so we don't tack on whateve oflags were passed from userland
2. honor O_CLOEXEC, so the children of daemons that use cloning devices, don't
   end up with the parents descriptors
fd_clone and in general the fd approach of 'allocate' > 'play with guts' >
'attach' should be converted to be more constructor like.

Revision 1.229: download - view: text, markup, annotated - select for diffs
Mon Aug 3 04:55:15 2015 UTC (9 years, 4 months ago) by christos
Branches: MAIN
CVS tags: prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, 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
Branch point for: prg-localcount2
Diff to: previous 1.228: preferred, colored
Changes since revision 1.228: +9 -3 lines
1. mask fflags so we don't tack on whateve oflags were passed from userland
2. honor O_CLOEXEC, so the children of daemons that use cloning devices, don't
   end up with the parents descriptors
fd_clone and in general the fd approach of 'allocate' > 'play with guts' >
'attach' should be converted to be more constructor like.
XXX: pullup-{6,7}

Revision 1.228: download - view: text, markup, annotated - select for diffs
Sun Sep 21 17:17:15 2014 UTC (10 years, 2 months ago) by christos
Branches: MAIN
CVS tags: nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base
Branch point for: nick-nhusb
Diff to: previous 1.227: preferred, colored
Changes since revision 1.227: +3 -3 lines
remove casts to the same type.

Revision 1.227: download - view: text, markup, annotated - select for diffs
Fri Sep 5 09:20:59 2014 UTC (10 years, 3 months ago) by matt
Branches: MAIN
Diff to: previous 1.226: preferred, colored
Changes since revision 1.226: +7 -7 lines
Try not to use f_data, use f_{vnode,socket,pipe,mqueue,kqueue,ksem} to get
a correctly typed pointer.

Revision 1.226: download - view: text, markup, annotated - select for diffs
Fri Sep 5 05:57:21 2014 UTC (10 years, 3 months ago) by matt
Branches: MAIN
Diff to: previous 1.225: preferred, colored
Changes since revision 1.225: +24 -24 lines
Don't next structure and enum definitions.
Don't use C++ keywords new, try, class, private, etc.

Revision 1.218.6.2: download - view: text, markup, annotated - select for diffs
Wed Aug 20 00:04:28 2014 UTC (10 years, 3 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.218.6.1: preferred, colored; branchpoint 1.218: preferred, colored
Changes since revision 1.218.6.1: +15 -7 lines
Rebase to HEAD as of a few days ago.

Revision 1.224.2.1: download - view: text, markup, annotated - select for diffs
Sun Aug 10 06:55:58 2014 UTC (10 years, 4 months ago) by tls
Branches: tls-earlyentropy
Diff to: previous 1.224: preferred, colored; next MAIN 1.225: preferred, colored
Changes since revision 1.224: +3 -2 lines
Rebase.

Revision 1.225: download - view: text, markup, annotated - select for diffs
Fri Jul 25 08:10:40 2014 UTC (10 years, 4 months ago) by dholland
Branches: MAIN
CVS tags: tls-maxphys-base, tls-earlyentropy-base, netbsd-7-base, netbsd-7-0-RC2, netbsd-7-0-RC1
Branch point for: netbsd-7
Diff to: previous 1.224: preferred, colored
Changes since revision 1.224: +3 -2 lines
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.217.2.3: download - view: text, markup, annotated - select for diffs
Thu May 22 11:41:03 2014 UTC (10 years, 6 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.217.2.2: preferred, colored; branchpoint 1.217: preferred, colored; next MAIN 1.218: preferred, colored
Changes since revision 1.217.2.2: +14 -7 lines
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.219.2.1: download - view: text, markup, annotated - select for diffs
Sun May 18 17:46:07 2014 UTC (10 years, 6 months ago) by rmind
Branches: rmind-smpnet
Diff to: previous 1.219: preferred, colored; next MAIN 1.220: preferred, colored
Changes since revision 1.219: +14 -7 lines
sync with head

Revision 1.224: download - view: text, markup, annotated - select for diffs
Sun Mar 16 05:20:30 2014 UTC (10 years, 8 months ago) by dholland
Branches: 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
Diff to: previous 1.223: preferred, colored
Changes since revision 1.223: +13 -4 lines
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.223: download - view: text, markup, annotated - select for diffs
Tue Feb 25 18:30:11 2014 UTC (10 years, 9 months ago) by pooka
Branches: MAIN
Diff to: previous 1.222: preferred, colored
Changes since revision 1.222: +2 -5 lines
Ensure that the top level sysctl nodes (kern, vfs, net, ...) exist before
the sysctl link sets are processed, and remove redundancy.

Shaves >13kB off of an amd64 GENERIC, not to mention >1k duplicate
lines of code.

Revision 1.222: download - view: text, markup, annotated - select for diffs
Sun Sep 15 13:03:59 2013 UTC (11 years, 2 months ago) by martin
Branches: MAIN
Diff to: previous 1.221: preferred, colored
Changes since revision 1.221: +2 -4 lines
Remove __CT_LOCAL_.. hack

Revision 1.221: download - view: text, markup, annotated - select for diffs
Sat Sep 14 13:46:52 2013 UTC (11 years, 2 months ago) by martin
Branches: MAIN
Diff to: previous 1.220: preferred, colored
Changes since revision 1.220: +4 -2 lines
Avoid warnings for a local CTASSERT

Revision 1.220: download - view: text, markup, annotated - select for diffs
Thu Sep 5 12:23:07 2013 UTC (11 years, 3 months ago) by pooka
Branches: MAIN
Diff to: previous 1.219: preferred, colored
Changes since revision 1.219: +3 -2 lines
In fd_abort(), reset ff_exclose to preserve invariants expected by fd_free()

Revision 1.218.6.1: download - view: text, markup, annotated - select for diffs
Mon Feb 25 00:29:50 2013 UTC (11 years, 9 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.218: preferred, colored
Changes since revision 1.218: +3 -3 lines
resync with head

Revision 1.217.2.2: download - view: text, markup, annotated - select for diffs
Wed Jan 16 05:33:42 2013 UTC (11 years, 10 months ago) by yamt
Branches: yamt-pagecache
CVS tags: yamt-pagecache-tag8
Diff to: previous 1.217.2.1: preferred, colored; branchpoint 1.217: preferred, colored
Changes since revision 1.217.2.1: +3 -3 lines
sync with (a bit old) head

Revision 1.218.8.1: download - view: text, markup, annotated - select for diffs
Sat Nov 24 21:40:07 2012 UTC (12 years ago) by jdc
Branches: netbsd-6-0
CVS tags: 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
Diff to: previous 1.218: preferred, colored; next MAIN 1.219: preferred, colored
Changes since revision 1.218: +3 -3 lines
Pull up revisions:
  src/sys/kern/kern_event.c revision 1.79
  src/sys/kern/kern_descrip.c revision 1.219
  src/lib/libc/sys/kqueue.2 revision 1.33
  src/tests/lib/libc/sys/t_kevent.c revision 1.2-1.5
(requested by christos in ticket #716).

- initialize kn_id
- in close, invalidate f_data and f_type early to prevent accidental re-use
- add a DIAGNOSTIC for when we use unsupported fd's and a KASSERT for f_event
  being NULL.

Return EOPNOTSUPP for fnullop_kqfilter to prevent registration of unsupported
fds. XXX: We should really fix the fd's to be supported in the future.
Unsupported fd's have a NULL f_event, so registering crashes the kernel with
a NULL function dereference of f_event.

mention that kevent returns now EOPNOTSUPP.

Move the references to PRs from code comments to the test description. Once
ATF has the ability to output the metadata in the HTML reports, it should be
easy to traverse between releng and gnats -reports via links.

Add a (skipped for now) test case for PR 46463

adapt to new reality

Add a test for adding an event to an unsupported fd.

Revision 1.218.2.1: download - view: text, markup, annotated - select for diffs
Sat Nov 24 21:40:02 2012 UTC (12 years ago) by jdc
Branches: netbsd-6
CVS tags: 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
Diff to: previous 1.218: preferred, colored; next MAIN 1.219: preferred, colored
Changes since revision 1.218: +3 -3 lines
Pull up revisions:
  src/sys/kern/kern_event.c revision 1.79
  src/sys/kern/kern_descrip.c revision 1.219
  src/lib/libc/sys/kqueue.2 revision 1.33
  src/tests/lib/libc/sys/t_kevent.c revision 1.2-1.5
(requested by christos in ticket #716).

- initialize kn_id
- in close, invalidate f_data and f_type early to prevent accidental re-use
- add a DIAGNOSTIC for when we use unsupported fd's and a KASSERT for f_event
  being NULL.

Return EOPNOTSUPP for fnullop_kqfilter to prevent registration of unsupported
fds. XXX: We should really fix the fd's to be supported in the future.
Unsupported fd's have a NULL f_event, so registering crashes the kernel with
a NULL function dereference of f_event.

mention that kevent returns now EOPNOTSUPP.

Move the references to PRs from code comments to the test description. Once
ATF has the ability to output the metadata in the HTML reports, it should be
easy to traverse between releng and gnats -reports via links.

Add a (skipped for now) test case for PR 46463

adapt to new reality

Add a test for adding an event to an unsupported fd.

Revision 1.219: download - view: text, markup, annotated - select for diffs
Sat Nov 24 15:07:44 2012 UTC (12 years ago) by christos
Branches: MAIN
CVS tags: yamt-pagecache-base8, yamt-pagecache-base7, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900, agc-symver-base, agc-symver
Branch point for: rmind-smpnet
Diff to: previous 1.218: preferred, colored
Changes since revision 1.218: +3 -3 lines
Return EOPNOTSUPP for fnullop_kqfilter to prevent registration of unsupported
fds. XXX: We should really fix the fd's to be supported in the future.
Unsupported fd's have a NULL f_event, so registering crashes the kernel with
a NULL function dereference of f_event.

Revision 1.217.2.1: download - view: text, markup, annotated - select for diffs
Tue Apr 17 00:08:23 2012 UTC (12 years, 7 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.217: preferred, colored
Changes since revision 1.217: +14 -9 lines
sync with head

Revision 1.217.6.1: download - view: text, markup, annotated - select for diffs
Sat Feb 18 07:35:27 2012 UTC (12 years, 9 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.217: preferred, colored; next MAIN 1.218: preferred, colored
Changes since revision 1.217: +14 -9 lines
merge to -current.

Revision 1.218: download - view: text, markup, annotated - select for diffs
Wed Jan 25 00:28:35 2012 UTC (12 years, 10 months ago) by christos
Branches: MAIN
CVS tags: yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, netbsd-6-base, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base10
Branch point for: tls-maxphys, netbsd-6-0, netbsd-6
Diff to: previous 1.217: preferred, colored
Changes since revision 1.217: +14 -9 lines
As discussed in tech-kern, provide the means to prevent delivery of SIGPIPE
on EPIPE for all file descriptor types:

- provide O_NOSIGPIPE for open,kqueue1,pipe2,dup3,fcntl(F_{G,S}ETFL) [NetBSD]
- provide SOCK_NOSIGPIPE for socket,socketpair [NetBSD]
- provide SO_NOSIGPIPE for {g,s}seckopt [NetBSD/FreeBSD/MacOSX]
- provide F_{G,S}ETNOSIGPIPE for fcntl [MacOSX]

Revision 1.217: download - view: text, markup, annotated - select for diffs
Sun Sep 25 13:40:37 2011 UTC (13 years, 2 months ago) by chs
Branches: MAIN
CVS tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Diff to: previous 1.216: preferred, colored
Changes since revision 1.216: +5 -4 lines
in fd_allocfile(), free the fd if we fail to allocate a file.

Revision 1.216: download - view: text, markup, annotated - select for diffs
Fri Jul 15 14:50:19 2011 UTC (13 years, 4 months ago) by christos
Branches: MAIN
Diff to: previous 1.215: preferred, colored
Changes since revision 1.215: +4 -2 lines
fail with EINVAL if flags not are not O_CLOEXEC|O_NONBLOCK in pipe2(2) and
dup3(2)

Revision 1.215: download - view: text, markup, annotated - select for diffs
Sun Jun 26 16:42:41 2011 UTC (13 years, 5 months ago) by christos
Branches: MAIN
Diff to: previous 1.214: preferred, colored
Changes since revision 1.214: +5 -3 lines
* Arrange for interfaces that create new file descriptors to be able to
  set close-on-exec on creation (http://udrepper.livejournal.com/20407.html).

    - Add F_DUPFD_CLOEXEC to fcntl(2).
    - Add MSG_CMSG_CLOEXEC to recvmsg(2) for unix file descriptor passing.
    - Add dup3(2) syscall with a flags argument for O_CLOEXEC, O_NONBLOCK.
    - Add pipe2(2) syscall with a flags argument for O_CLOEXEC, O_NONBLOCK.
    - Add flags SOCK_CLOEXEC, SOCK_NONBLOCK to the socket type parameter
      for socket(2) and socketpair(2).
    - Add new paccept(2) syscall that takes an additional sigset_t to alter
      the sigmask temporarily and a flags argument to set SOCK_CLOEXEC,
      SOCK_NONBLOCK.
    - Add new mode character 'e' to fopen(3) and popen(3) to open pipes
      and file descriptors for close on exec.
    - Add new kqueue1(2) syscall with a new flags argument to open the
      kqueue file descriptor with O_CLOEXEC, O_NONBLOCK.

* Fix the system calls that take socklen_t arguments to actually do so.

* Don't include userland header files (signal.h) from system header files
  (rump_syscallargs.h).

* Bump libc version for the new syscalls.

Revision 1.209.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 6 09:09:27 2011 UTC (13 years, 6 months ago) by jruoho
Branches: jruoho-x86intr
Diff to: previous 1.209: preferred, colored; next MAIN 1.210: preferred, colored
Changes since revision 1.209: +500 -41 lines
Sync with HEAD.

Revision 1.202.4.4: download - view: text, markup, annotated - select for diffs
Tue May 31 03:05:00 2011 UTC (13 years, 6 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.202.4.3: preferred, colored; branchpoint 1.202: preferred, colored; next MAIN 1.203: preferred, colored
Changes since revision 1.202.4.3: +46 -56 lines
sync with head

Revision 1.214: download - view: text, markup, annotated - select for diffs
Sun Apr 24 20:30:38 2011 UTC (13 years, 7 months ago) by rmind
Branches: MAIN
CVS tags: rmind-uvmplock-nbase, rmind-uvmplock-base, cherry-xenmp-base, cherry-xenmp
Diff to: previous 1.213: preferred, colored
Changes since revision 1.213: +3 -3 lines
Drop extern inline for fd_getfile().  Apparently, GCC already ignores it.

Revision 1.213: download - view: text, markup, annotated - select for diffs
Sat Apr 23 18:57:27 2011 UTC (13 years, 7 months ago) by rmind
Branches: MAIN
Diff to: previous 1.212: preferred, colored
Changes since revision 1.212: +47 -57 lines
- Sprinkle __cacheline_aligned and __read_mostly in file descriptor code.
- While here, remove trailing whitespaces, KNF.

Revision 1.202.4.3: download - view: text, markup, annotated - select for diffs
Thu Apr 21 01:42:07 2011 UTC (13 years, 7 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.202.4.2: preferred, colored; branchpoint 1.202: preferred, colored
Changes since revision 1.202.4.2: +10 -0 lines
sync with head

Revision 1.212: download - view: text, markup, annotated - select for diffs
Sun Apr 10 15:45:33 2011 UTC (13 years, 8 months ago) by christos
Branches: MAIN
Diff to: previous 1.211: preferred, colored
Changes since revision 1.211: +12 -2 lines
- Add O_CLOEXEC to open(2)
- Add fd_set_exclose() to encapsulate uses of FIO{,N}CLEX, O_CLOEXEC, F{G,S}ETFD
- Add a pipe1() function to allow passing flags to the fd's that pipe(2)
  opens to ease implementation of linux pipe2(2)
- Factor out fp handling code from open(2) and fhopen(2)

Revision 1.202.4.2: download - view: text, markup, annotated - select for diffs
Sat Mar 5 20:55:13 2011 UTC (13 years, 9 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.202.4.1: preferred, colored; branchpoint 1.202: preferred, colored
Changes since revision 1.202.4.1: +470 -13 lines
sync with head

Revision 1.209.4.2: download - view: text, markup, annotated - select for diffs
Thu Feb 17 12:00:44 2011 UTC (13 years, 9 months ago) by bouyer
Branches: bouyer-quota2
Diff to: previous 1.209.4.1: preferred, colored; branchpoint 1.209: preferred, colored; next MAIN 1.210: preferred, colored
Changes since revision 1.209.4.1: +53 -2 lines
Sync with HEAD

Revision 1.211: download - view: text, markup, annotated - select for diffs
Tue Feb 15 15:54:28 2011 UTC (13 years, 9 months ago) by pooka
Branches: MAIN
CVS tags: bouyer-quota2-nbase, bouyer-quota2-base
Diff to: previous 1.210: preferred, colored
Changes since revision 1.210: +53 -2 lines
Support FD_CLOEXEC in rump kernels.

Revision 1.209.4.1: download - view: text, markup, annotated - select for diffs
Tue Feb 8 16:19:59 2011 UTC (13 years, 10 months ago) by bouyer
Branches: bouyer-quota2
Diff to: previous 1.209: preferred, colored
Changes since revision 1.209: +410 -2 lines
Sync with HEAD

Revision 1.210: download - view: text, markup, annotated - select for diffs
Fri Jan 28 18:44:44 2011 UTC (13 years, 10 months ago) by pooka
Branches: MAIN
Diff to: previous 1.209: preferred, colored
Changes since revision 1.209: +410 -2 lines
Move sysctl routines from init_sysctl.c to kern_descrip.c (for
descriptors) and kern_proc.c (for processes).  This makes them
usable in a rump kernel, in case somebody was wondering.

Revision 1.209: download - view: text, markup, annotated - select for diffs
Sat Jan 1 22:05:11 2011 UTC (13 years, 11 months ago) by pooka
Branches: MAIN
CVS tags: matt-mips64-premerge-20101231, jruoho-x86intr-base
Branch point for: jruoho-x86intr, bouyer-quota2
Diff to: previous 1.208: preferred, colored
Changes since revision 1.208: +5 -5 lines
Update comment and inspired by that update variable naming too.
no functional change.

Revision 1.208: download - view: text, markup, annotated - select for diffs
Fri Dec 17 22:06:31 2010 UTC (13 years, 11 months ago) by yamt
Branches: MAIN
Diff to: previous 1.207: preferred, colored
Changes since revision 1.207: +7 -7 lines
update some comments

Revision 1.202.2.3: download - view: text, markup, annotated - select for diffs
Sat Nov 6 08:08:43 2010 UTC (14 years, 1 month ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.202.2.2: preferred, colored; branchpoint 1.202: preferred, colored; next MAIN 1.203: preferred, colored
Changes since revision 1.202.2.2: +2 -3 lines
Sync with HEAD.

Revision 1.207: download - view: text, markup, annotated - select for diffs
Fri Oct 29 15:32:23 2010 UTC (14 years, 1 month ago) by pooka
Branches: MAIN
CVS tags: uebayasi-xip-base4
Diff to: previous 1.206: preferred, colored
Changes since revision 1.206: +2 -3 lines
Attach implicit threads to initproc instead of proc0.  This way
applications which alter, by purpose or by accident, the uid in an
implicit thread are don't affect kernel threads.

from discussion with njoly

Revision 1.202.2.2: download - view: text, markup, annotated - select for diffs
Fri Oct 22 07:22:25 2010 UTC (14 years, 1 month ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.202.2.1: preferred, colored; branchpoint 1.202: preferred, colored
Changes since revision 1.202.2.1: +1 -1 lines
Sync with HEAD (-D20101022).

Revision 1.177.2.8: download - view: text, markup, annotated - select for diffs
Sat Oct 9 03:32:30 2010 UTC (14 years, 2 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.177.2.7: preferred, colored; branchpoint 1.177: preferred, colored; next MAIN 1.178: preferred, colored
Changes since revision 1.177.2.7: +3 -3 lines
sync with head

Revision 1.206: download - view: text, markup, annotated - select for diffs
Wed Sep 1 15:15:18 2010 UTC (14 years, 3 months ago) by pooka
Branches: MAIN
CVS tags: yamt-nfs-mp-base11, uebayasi-xip-base3
Diff to: previous 1.205: preferred, colored
Changes since revision 1.205: +3 -2 lines
Actually, the comment probably meant "would be nice to KASSERT here,
but can't".  So turn it into a KASSERT now that it's possible.

Revision 1.205: download - view: text, markup, annotated - select for diffs
Wed Sep 1 15:12:16 2010 UTC (14 years, 3 months ago) by pooka
Branches: MAIN
Diff to: previous 1.204: preferred, colored
Changes since revision 1.204: +2 -3 lines
Remove XXX comment.  I'm not sure what it precisely means, but I'm
guessing it's from a time when rump used filedesc0 for everything
(and that isn't true anymore).

Revision 1.202.2.1: download - view: text, markup, annotated - select for diffs
Tue Aug 17 06:47:26 2010 UTC (14 years, 3 months ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.202: preferred, colored
Changes since revision 1.202: +19 -15 lines
Sync with HEAD.

Revision 1.177.2.7: download - view: text, markup, annotated - select for diffs
Wed Aug 11 22:54:38 2010 UTC (14 years, 3 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.177.2.6: preferred, colored; branchpoint 1.177: preferred, colored
Changes since revision 1.177.2.6: +19 -15 lines
sync with head.

Revision 1.204: download - view: text, markup, annotated - select for diffs
Wed Aug 4 14:25:16 2010 UTC (14 years, 4 months ago) by pooka
Branches: MAIN
CVS tags: yamt-nfs-mp-base10, uebayasi-xip-base2
Diff to: previous 1.203: preferred, colored
Changes since revision 1.203: +2 -3 lines
Remove overzealous KASSERT: the refcount can be non-zero if another
thread attempts to use a non-open file descriptor.  from ad

fixes PR kern/43694

Revision 1.202.4.1: download - view: text, markup, annotated - select for diffs
Sat Jul 3 01:19:52 2010 UTC (14 years, 5 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.202: preferred, colored
Changes since revision 1.202: +19 -14 lines
sync with head

Revision 1.203: download - view: text, markup, annotated - select for diffs
Thu Jul 1 02:38:30 2010 UTC (14 years, 5 months ago) by rmind
Branches: MAIN
Diff to: previous 1.202: preferred, colored
Changes since revision 1.202: +19 -14 lines
Remove pfind() and pgfind(), fix locking in various broken uses of these.
Rename real routines to proc_find() and pgrp_find(), remove PFIND_* flags
and have consistent behaviour.  Provide proc_find_raw() for special cases.
Fix memory leak in sysctl_proc_corename().

COMPAT_LINUX: rework ptrace() locking, minimise differences between
different versions per-arch.

Note: while this change adds some formal cosmetics for COMPAT_DARWIN and
COMPAT_IRIX - locking there is utterly broken (for ages).

Fixes PR/43176.

Revision 1.177.2.6: download - view: text, markup, annotated - select for diffs
Thu Mar 11 15:04:16 2010 UTC (14 years, 9 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.177.2.5: preferred, colored; branchpoint 1.177: preferred, colored
Changes since revision 1.177.2.5: +20 -8 lines
sync with head

Revision 1.202: download - view: text, markup, annotated - select for diffs
Sun Dec 20 09:36:05 2009 UTC (14 years, 11 months ago) by dsl
Branches: MAIN
CVS tags: yamt-nfs-mp-base9, uebayasi-xip-base1, uebayasi-xip-base
Branch point for: uebayasi-xip, rmind-uvmplock
Diff to: previous 1.201: preferred, colored
Changes since revision 1.201: +16 -6 lines
If a multithreaded app closes an fd while another thread is blocked in
read/write/accept, then the expectation is that the blocked thread will
exit and the close complete.
Since only one fd is affected, but many fd can refer to the same file,
the close code can only request the fs code unblock with ERESTART.
Fixed for pipes and sockets, ERESTART will only be generated after such
a close - so there should be no change for other programs.
Also rename fo_abort() to fo_restart() (this used to be fo_drain()).
Fixes PR/26567

Revision 1.201: download - view: text, markup, annotated - select for diffs
Wed Dec 9 21:32:59 2009 UTC (15 years ago) by dsl
Branches: MAIN
CVS tags: matt-premerge-20091211
Diff to: previous 1.200: preferred, colored
Changes since revision 1.200: +4 -4 lines
Rename fo_drain() to fo_abort(), 'drain' is used to mean 'wait for output
do drain' in many places, whereas fo_drain() was called in order to force
blocking read()/write() etc calls to return to userspace so that a close()
call from a different thread can complete.
In the sockets code comment out the broken code in the inner function,
it was being called from compat code.

Revision 1.200: download - view: text, markup, annotated - select for diffs
Tue Oct 27 02:58:28 2009 UTC (15 years, 1 month ago) by rmind
Branches: MAIN
CVS tags: jym-xensuspend-nbase
Diff to: previous 1.199: preferred, colored
Changes since revision 1.199: +6 -4 lines
- Amend fd_hold() to take an argument and add assert (reflects two cases,
  fork1() and the rest, e.g. kthread_create(), when creating from lwp0).

- lwp_create(): do not touch filedesc internals, use fd_hold().

Revision 1.177.2.5: download - view: text, markup, annotated - select for diffs
Wed Aug 19 18:48:16 2009 UTC (15 years, 3 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.177.2.4: preferred, colored; branchpoint 1.177: preferred, colored
Changes since revision 1.177.2.4: +3 -2 lines
sync with head.

Revision 1.199: download - view: text, markup, annotated - select for diffs
Sun Aug 16 11:00:20 2009 UTC (15 years, 3 months ago) by yamt
Branches: MAIN
CVS tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7
Diff to: previous 1.198: preferred, colored
Changes since revision 1.198: +3 -2 lines
assertion

Revision 1.185.2.2: download - view: text, markup, annotated - select for diffs
Thu Jul 23 23:32:34 2009 UTC (15 years, 4 months ago) by jym
Branches: jym-xensuspend
Diff to: previous 1.185.2.1: preferred, colored; branchpoint 1.185: preferred, colored; next MAIN 1.186: preferred, colored
Changes since revision 1.185.2.1: +418 -350 lines
Sync with HEAD.

Revision 1.177.2.4: download - view: text, markup, annotated - select for diffs
Sat Jul 18 14:53:22 2009 UTC (15 years, 4 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.177.2.3: preferred, colored; branchpoint 1.177: preferred, colored
Changes since revision 1.177.2.3: +4 -2 lines
sync with head.

Revision 1.198: download - view: text, markup, annotated - select for diffs
Tue Jun 30 20:32:49 2009 UTC (15 years, 5 months ago) by martin
Branches: MAIN
CVS tags: yamt-nfs-mp-base6, jymxensuspend-base
Diff to: previous 1.197: preferred, colored
Changes since revision 1.197: +4 -2 lines
Update fd_freefile when kqueue descriptors are not copied from
parent to child. From Wolfgang Solfrank in PR kern/41651.
Approved by Andrew Doran.

Revision 1.177.2.3: download - view: text, markup, annotated - select for diffs
Sat Jun 20 07:20:31 2009 UTC (15 years, 5 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.177.2.2: preferred, colored; branchpoint 1.177: preferred, colored
Changes since revision 1.177.2.2: +416 -350 lines
sync with head

Revision 1.197: download - view: text, markup, annotated - select for diffs
Mon Jun 8 00:19:56 2009 UTC (15 years, 6 months ago) by yamt
Branches: MAIN
CVS tags: yamt-nfs-mp-base5
Diff to: previous 1.196: preferred, colored
Changes since revision 1.196: +9 -7 lines
fd_free: fix posix advisory locks.  PR/41549 from HITOSHI OSADA.

Revision 1.196: download - view: text, markup, annotated - select for diffs
Sun Jun 7 09:39:02 2009 UTC (15 years, 6 months ago) by yamt
Branches: MAIN
Diff to: previous 1.195: preferred, colored
Changes since revision 1.195: +14 -3 lines
shut up the following assertion failure and add a comment.

	panic: kernel diagnostic assertion "!fd_isused(fdp, fd)" failed: file "/siro/nbsd/src/sys/kern/kern_descrip.c", line 175

Revision 1.195: download - view: text, markup, annotated - select for diffs
Fri May 29 00:10:52 2009 UTC (15 years, 6 months ago) by yamt
Branches: MAIN
Diff to: previous 1.194: preferred, colored
Changes since revision 1.194: +8 -4 lines
fd_free: reset fd_himap/lomap to make fd_checkmaps comfortable.  PR/41487.

Revision 1.194: download - view: text, markup, annotated - select for diffs
Thu May 28 22:17:04 2009 UTC (15 years, 6 months ago) by yamt
Branches: MAIN
Diff to: previous 1.193: preferred, colored
Changes since revision 1.193: +4 -3 lines
wrap a long line.

Revision 1.193: download - view: text, markup, annotated - select for diffs
Tue May 26 00:42:33 2009 UTC (15 years, 6 months ago) by ad
Branches: MAIN
Diff to: previous 1.192: preferred, colored
Changes since revision 1.192: +2 -3 lines
PR kern/41487: kern_descrip.c assertion failure

Remove bogus assertion.

Revision 1.192: download - view: text, markup, annotated - select for diffs
Sun May 24 21:41:26 2009 UTC (15 years, 6 months ago) by ad
Branches: MAIN
Diff to: previous 1.191: preferred, colored
Changes since revision 1.191: +327 -310 lines
More changes to improve kern_descrip.c.

- Avoid atomics in more places.
- Remove the per-descriptor mutex, and just use filedesc_t::fd_lock.
  It was only being used to synchronize close, and in any case we needed
  to take fd_lock to free the descriptor slot.
- Optimize certain paths for the <NDFDFILE case.
- Sprinkle more comments and assertions.
- Cache more stuff in filedesc_t.
- Fix numerous minor bugs spotted along the way.
- Restructure how the open files array is maintained, for clarity and so
  that we can eliminate the membar_consumer() call in fd_getfile().  This is
  mostly syntactic sugar; the main functional change is that fd_nfiles now
  lives alongside the open file array.

Some measurements with libmicro:

- simple file syscalls are like close() are between 1 to 10% faster.
- some nice improvements, e.g. poll(1000) which is ~50% faster.

Revision 1.191: download - view: text, markup, annotated - select for diffs
Sat May 23 18:28:05 2009 UTC (15 years, 6 months ago) by ad
Branches: MAIN
Diff to: previous 1.190: preferred, colored
Changes since revision 1.190: +76 -44 lines
Make descriptor access and file allocation cheaper in many cases,
mostly by avoiding a bunch of atomic operations.

Revision 1.185.2.1: download - view: text, markup, annotated - select for diffs
Wed May 13 17:21:56 2009 UTC (15 years, 6 months ago) by jym
Branches: jym-xensuspend
Diff to: previous 1.185: preferred, colored
Changes since revision 1.185: +52 -14 lines
Sync with HEAD.

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

Revision 1.177.2.2: download - view: text, markup, annotated - select for diffs
Mon May 4 08:13:46 2009 UTC (15 years, 7 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.177.2.1: preferred, colored; branchpoint 1.177: preferred, colored
Changes since revision 1.177.2.1: +147 -266 lines
sync with head.

Revision 1.182.4.3: download - view: text, markup, annotated - select for diffs
Tue Apr 28 07:36:59 2009 UTC (15 years, 7 months ago) by skrll
Branches: nick-hppapmap
Diff to: previous 1.182.4.2: preferred, colored; branchpoint 1.182: preferred, colored; next MAIN 1.183: preferred, colored
Changes since revision 1.182.4.2: +50 -12 lines
Sync with HEAD.

Revision 1.182.6.6: download - view: text, markup, annotated - select for diffs
Sat Apr 4 23:36:27 2009 UTC (15 years, 8 months ago) by snj
Branches: netbsd-5
CVS tags: 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-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, 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
Diff to: previous 1.182.6.5: preferred, colored; branchpoint 1.182: preferred, colored; next MAIN 1.183: preferred, colored
Changes since revision 1.182.6.5: +19 -5 lines
Pull up following revision(s) (requested by ad in ticket #661):
	sys/arch/xen/xen/xenevt.c: revision 1.32
	sys/compat/svr4/svr4_net.c: revision 1.56
	sys/compat/svr4_32/svr4_32_net.c: revision 1.19
	sys/dev/dmover/dmover_io.c: revision 1.32
	sys/dev/putter/putter.c: revision 1.21
	sys/kern/kern_descrip.c: revision 1.190
	sys/kern/kern_drvctl.c: revision 1.23
	sys/kern/kern_event.c: revision 1.64
	sys/kern/sys_mqueue.c: revision 1.14
	sys/kern/sys_pipe.c: revision 1.109
	sys/kern/sys_socket.c: revision 1.59
	sys/kern/uipc_syscalls.c: revision 1.136
	sys/kern/vfs_vnops.c: revision 1.164
	sys/kern/uipc_socket.c: revision 1.188
	sys/net/bpf.c: revision 1.144
	sys/net/if_tap.c: revision 1.55
	sys/opencrypto/cryptodev.c: revision 1.47
	sys/sys/file.h: revision 1.67
	sys/sys/param.h: patch
	sys/sys/socketvar.h: revision 1.119
Add fileops::fo_drain(), to be called from fd_close() when there is more
than one active reference to a file descriptor. It should dislodge threads
sleeping while holding a reference to the descriptor. Implemented only for
sockets but should be extended to pipes, fifos, etc.
Fixes the case of a multithreaded process doing something like the
following, which would have hung until the process got a signal.
thr0	accept(fd, ...)
thr1	close(fd)

Revision 1.190: download - view: text, markup, annotated - select for diffs
Sat Apr 4 10:12:51 2009 UTC (15 years, 8 months ago) by ad
Branches: MAIN
CVS tags: yamt-nfs-mp-base4, yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base, jym-xensuspend-base
Diff to: previous 1.189: preferred, colored
Changes since revision 1.189: +19 -5 lines
Add fileops::fo_drain(), to be called from fd_close() when there is more
than one active reference to a file descriptor. It should dislodge threads
sleeping while holding a reference to the descriptor. Implemented only for
sockets but should be extended to pipes, fifos, etc.

Fixes the case of a multithreaded process doing something like the
following, which would have hung until the process got a signal.

thr0	accept(fd, ...)
thr1	close(fd)

Revision 1.182.6.5: download - view: text, markup, annotated - select for diffs
Tue Mar 31 23:38:41 2009 UTC (15 years, 8 months ago) by snj
Branches: netbsd-5
Diff to: previous 1.182.6.4: preferred, colored; branchpoint 1.182: preferred, colored
Changes since revision 1.182.6.4: +22 -8 lines
Pull up following revision(s) (requested by rmind in ticket #619):
	sys/kern/kern_descrip.c: revision 1.189
fownsignal: pre-check for zero pgid, avoids locking of proc_lock.

Revision 1.189: download - view: text, markup, annotated - select for diffs
Sun Mar 29 04:40:01 2009 UTC (15 years, 8 months ago) by rmind
Branches: MAIN
Diff to: previous 1.188: preferred, colored
Changes since revision 1.188: +22 -8 lines
fownsignal: pre-check for zero pgid, avoids locking of proc_lock.

Revision 1.182.6.4: download - view: text, markup, annotated - select for diffs
Wed Mar 18 05:33:23 2009 UTC (15 years, 8 months ago) by snj
Branches: netbsd-5
CVS tags: netbsd-5-0-RC3
Diff to: previous 1.182.6.3: preferred, colored; branchpoint 1.182: preferred, colored
Changes since revision 1.182.6.3: +13 -2 lines
Pull up following revision(s) (requested by mrg in ticket #577):
	sys/kern/kern_descrip.c: revision 1.188
	sys/kern/uipc_usrreq.c: revision 1.121
	sys/sys/fcntl.h: revision 1.35
	sys/sys/file.h: revision 1.66
	sys/sys/param.h: patch
	sys/sys/un.h: revision 1.45
completely rework the way that orphaned sockets that are being fdpassed
via SCM_RIGHTS messages are dealt with:
1. unp_gc: make this a kthread.
2. unp_detach: go not call unp_gc directly. instead, wake up unp_gc kthread.
3. unp_scan: do not close files here. instead, put them on a global list
   for unp_gc to close, along with a per-file "deferred close count". if
   file is already enqueued for close, just increment deferred close count.
   this eliminates the recursive calls.
3. unp_gc: scan files on global deferred close list. close each file N
   times, as specified by deferred close count in file. continue processing
   list until it becomes empty (closing may cause additional files to be
   queued for close).
4. unp_gc: add additional bit to mark files we are scanning. set during
   initial scan of global file list that currently clears FMARK/FDEFER.
   during later scans, never examine / garbage collect descriptors that
   we have not marked during the earlier scan. do not proceed with this
   initial scan until all deferred closes have been processed. be careful
   with locking to ensure no races are introduced between deferred close
   and file scan.
5. unp_gc: use dummy file_t to mark position in list when scanning. allow
   us to drop filelist_lock. in turn allows us to eliminate kmem_alloc()
   and safely close files, etc.
6. prohibit transfer of descriptors within SCM_RIGHTS messages if
   (num_files_in_transit > maxfiles / unp_rights_ratio)
7. fd_allocfile: ensure recycled filse don't get scanned.
this is 97% work done by andrew doran, with a couple of minor bug fixes
and a lot of testing by yours truly.

Revision 1.182.6.3: download - view: text, markup, annotated - select for diffs
Sun Mar 15 20:23:26 2009 UTC (15 years, 8 months ago) by snj
Branches: netbsd-5
Diff to: previous 1.182.6.2: preferred, colored; branchpoint 1.182: preferred, colored
Changes since revision 1.182.6.2: +2 -3 lines
Pull up following revision(s) (requested by mrg in ticket #566):
	sys/kern/init_sysctl.c: revision 1.157
	sys/kern/kern_descrip.c: revision 1.187
	usr.sbin/pstat/pstat.c: revision 1.112
Don't bother with file_t::f_iflags any more, as it's not used.
Noted by mrg@.

Revision 1.188: download - view: text, markup, annotated - select for diffs
Wed Mar 11 06:05:29 2009 UTC (15 years, 9 months ago) by mrg
Branches: MAIN
Diff to: previous 1.187: preferred, colored
Changes since revision 1.187: +13 -2 lines
completely rework the way that orphaned sockets that are being fdpassed
via SCM_RIGHTS messages are dealt with:

1. unp_gc: make this a kthread.

2. unp_detach: go not call unp_gc directly. instead, wake up unp_gc kthread.

3. unp_scan: do not close files here. instead, put them on a global list
   for unp_gc to close, along with a per-file "deferred close count". if
   file is already enqueued for close, just increment deferred close count.
   this eliminates the recursive calls.

3. unp_gc: scan files on global deferred close list. close each file N
   times, as specified by deferred close count in file. continue processing
   list until it becomes empty (closing may cause additional files to be
   queued for close).

4. unp_gc: add additional bit to mark files we are scanning. set during
   initial scan of global file list that currently clears FMARK/FDEFER.
   during later scans, never examine / garbage collect descriptors that
   we have not marked during the earlier scan. do not proceed with this
   initial scan until all deferred closes have been processed. be careful
   with locking to ensure no races are introduced between deferred close
   and file scan.

5. unp_gc: use dummy file_t to mark position in list when scanning. allow
   us to drop filelist_lock. in turn allows us to eliminate kmem_alloc()
   and safely close files, etc.

6. prohibit transfer of descriptors within SCM_RIGHTS messages if
   (num_files_in_transit > maxfiles / unp_rights_ratio)

7. fd_allocfile: ensure recycled filse don't get scanned.


this is 97% work done by andrew doran, with a couple of minor bug fixes
and a lot of testing by yours truly.

Revision 1.187: download - view: text, markup, annotated - select for diffs
Sun Mar 8 12:52:08 2009 UTC (15 years, 9 months ago) by ad
Branches: MAIN
Diff to: previous 1.186: preferred, colored
Changes since revision 1.186: +2 -3 lines
Don't bother with file_t::f_iflags any more, as it's not used.
Noted by mrg@.

Revision 1.182.4.2: download - view: text, markup, annotated - select for diffs
Tue Mar 3 18:32:55 2009 UTC (15 years, 9 months ago) by skrll
Branches: nick-hppapmap
Diff to: previous 1.182.4.1: preferred, colored; branchpoint 1.182: preferred, colored
Changes since revision 1.182.4.1: +4 -4 lines
Sync with HEAD.

Revision 1.182.6.2: download - view: text, markup, annotated - select for diffs
Mon Mar 2 20:56:14 2009 UTC (15 years, 9 months ago) by snj
Branches: netbsd-5
Diff to: previous 1.182.6.1: preferred, colored; branchpoint 1.182: preferred, colored
Changes since revision 1.182.6.1: +4 -4 lines
Pull up following revision(s) (requested by rmind in ticket #542):
	sys/kern/kern_descrip.c: revision 1.186
fd_copy: fix off-by-one bug in a race condition path and assert.
Should fix PR/40625.  OK by <ad>.

Revision 1.186: download - view: text, markup, annotated - select for diffs
Mon Mar 2 19:28:08 2009 UTC (15 years, 9 months ago) by rmind
Branches: MAIN
CVS tags: nick-hppapmap-base2
Diff to: previous 1.185: preferred, colored
Changes since revision 1.185: +4 -4 lines
fd_copy: fix off-by-one bug in a race condition path and assert.
Should fix PR/40625.  OK by <ad>.

Revision 1.182.6.1: download - view: text, markup, annotated - select for diffs
Mon Feb 2 19:27:31 2009 UTC (15 years, 10 months ago) by snj
Branches: netbsd-5
CVS tags: netbsd-5-0-RC2
Diff to: previous 1.182: preferred, colored
Changes since revision 1.182: +89 -36 lines
Pull up following revision(s) (requested by ad in ticket #358):
	sys/kern/kern_descrip.c: revision 1.185
- Fix a bug where we trashed descriptor zero in the old open files array
  while ironically trying to preserve the same during copy. Would only have
  occurred if a multithreaded program expanded the descriptor table and,
  within a tiny window of exposure, another thread in the program tried to
  access descriptor zero.
- Convert to use kmem_alloc/kmem_free.

Revision 1.182.4.1: download - view: text, markup, annotated - select for diffs
Mon Jan 19 13:19:38 2009 UTC (15 years, 10 months ago) by skrll
Branches: nick-hppapmap
Diff to: previous 1.182: preferred, colored
Changes since revision 1.182: +91 -248 lines
Sync with HEAD.

Revision 1.172.6.5: download - view: text, markup, annotated - select for diffs
Sat Jan 17 13:29:18 2009 UTC (15 years, 10 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.172.6.4: preferred, colored; branchpoint 1.172: preferred, colored; next MAIN 1.173: preferred, colored
Changes since revision 1.172.6.4: +89 -246 lines
Sync with HEAD.

Revision 1.185: download - view: text, markup, annotated - select for diffs
Sun Dec 21 09:58:22 2008 UTC (15 years, 11 months ago) by ad
Branches: MAIN
CVS tags: mjf-devfs2-base
Branch point for: jym-xensuspend
Diff to: previous 1.184: preferred, colored
Changes since revision 1.184: +89 -36 lines
- Fix a bug where we trashed descriptor zero in the old open files array
  while ironically trying to preserve the same during copy. Would only have
  occurred if a multithreaded program expanded the descriptor table and,
  within a tiny window of exposure, another thread in the program tried to
  access descriptor zero.

- Convert to use kmem_alloc/kmem_free.

Revision 1.182.2.1: download - view: text, markup, annotated - select for diffs
Sat Dec 13 01:15:07 2008 UTC (15 years, 11 months ago) by haad
Branches: haad-dm
Diff to: previous 1.182: preferred, colored; next MAIN 1.183: preferred, colored
Changes since revision 1.182: +4 -214 lines
Update haad-dm branch to haad-dm-base2.

Revision 1.184: download - view: text, markup, annotated - select for diffs
Tue Nov 18 13:01:41 2008 UTC (16 years ago) by pooka
Branches: MAIN
CVS tags: haad-nbase2, haad-dm-base2, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Diff to: previous 1.183: preferred, colored
Changes since revision 1.183: +4 -122 lines
Move fd_closeexec() and fd_checkstd() from kern_descrip to their
own file, subr_exec_fd.c (they're used only by exec).

After this change, the kernel source modules are in a partitioned
enough state to allow building a system without vfs at all.

Revision 1.183: download - view: text, markup, annotated - select for diffs
Tue Nov 18 11:36:58 2008 UTC (16 years ago) by pooka
Branches: MAIN
Diff to: previous 1.182: preferred, colored
Changes since revision 1.182: +4 -96 lines
cwd is logically a vfs concept, so take it out from the bosom of
kern_descrip and into vfs_cwd.  No functional change.

Revision 1.179.2.3: download - view: text, markup, annotated - select for diffs
Thu Sep 18 04:31:41 2008 UTC (16 years, 2 months ago) by wrstuden
Branches: wrstuden-revivesa
Diff to: previous 1.179.2.2: preferred, colored; branchpoint 1.179: preferred, colored; next MAIN 1.180: preferred, colored
Changes since revision 1.179.2.2: +9 -9 lines
Sync with wrstuden-revivesa-base-2.

Revision 1.179.4.2: download - view: text, markup, annotated - select for diffs
Thu Jul 3 18:38:11 2008 UTC (16 years, 5 months ago) by simonb
Branches: simonb-wapbl
Diff to: previous 1.179.4.1: preferred, colored; branchpoint 1.179: preferred, colored; next MAIN 1.180: preferred, colored
Changes since revision 1.179.4.1: +7 -7 lines
Sync with head.

Revision 1.172.6.4: download - view: text, markup, annotated - select for diffs
Wed Jul 2 19:08:20 2008 UTC (16 years, 5 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.172.6.3: preferred, colored; branchpoint 1.172: preferred, colored
Changes since revision 1.172.6.3: +5 -5 lines
Sync with HEAD.

Revision 1.182: download - view: text, markup, annotated - select for diffs
Wed Jul 2 16:45:19 2008 UTC (16 years, 5 months ago) by matt
Branches: 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-0-RC1, matt-mips64-base2, haad-dm-base1
Branch point for: nick-hppapmap, netbsd-5, haad-dm
Diff to: previous 1.181: preferred, colored
Changes since revision 1.181: +6 -6 lines
Change {ff,fd}_exclose and ff_allocated to bool.  Change exclose arg to
fd_dup to bool.  Switch assignments from 1/0 to true/false.

This make alpha kernels compile.  Bump kern to 4.99.69 since structure
changed.

Revision 1.181: download - view: text, markup, annotated - select for diffs
Wed Jul 2 14:47:34 2008 UTC (16 years, 5 months ago) by matt
Branches: MAIN
Diff to: previous 1.180: preferred, colored
Changes since revision 1.180: +3 -3 lines
Switch from KASSERT to CTASSERT for those asserts testing sizes of types.

Revision 1.172.6.3: download - view: text, markup, annotated - select for diffs
Sun Jun 29 09:33:13 2008 UTC (16 years, 5 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.172.6.2: preferred, colored; branchpoint 1.172: preferred, colored
Changes since revision 1.172.6.2: +2 -2 lines
Sync with HEAD.

Revision 1.179.4.1: download - view: text, markup, annotated - select for diffs
Fri Jun 27 15:11:38 2008 UTC (16 years, 5 months ago) by simonb
Branches: simonb-wapbl
Diff to: previous 1.179: preferred, colored
Changes since revision 1.179: +4 -4 lines
Sync with head.

Revision 1.180: download - view: text, markup, annotated - select for diffs
Tue Jun 24 10:26:26 2008 UTC (16 years, 5 months ago) by gmcgarry
Branches: MAIN
Diff to: previous 1.179: preferred, colored
Changes since revision 1.179: +4 -4 lines
ioctl commands are unsigned long.  Changes ABI for fsetown() and fgetown() on 64-bit architectures.

Revision 1.172.6.2: download - view: text, markup, annotated - select for diffs
Mon Jun 2 13:24:07 2008 UTC (16 years, 6 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.172.6.1: preferred, colored; branchpoint 1.172: preferred, colored
Changes since revision 1.172.6.1: +11 -19 lines
Sync with HEAD.

Revision 1.175.2.1: download - view: text, markup, annotated - select for diffs
Sun May 18 12:35:07 2008 UTC (16 years, 6 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.175: preferred, colored; next MAIN 1.176: preferred, colored
Changes since revision 1.175: +12 -20 lines
sync with head.

Revision 1.177.2.1: download - view: text, markup, annotated - select for diffs
Fri May 16 02:25:24 2008 UTC (16 years, 6 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.177: preferred, colored
Changes since revision 1.177: +3 -10 lines
sync with head.

Revision 1.179.2.2: download - view: text, markup, annotated - select for diffs
Wed May 14 01:35:12 2008 UTC (16 years, 6 months ago) by wrstuden
Branches: wrstuden-revivesa
Diff to: previous 1.179.2.1: preferred, colored; branchpoint 1.179: preferred, colored
Changes since revision 1.179.2.1: +2 -3 lines
Per discussion with ad, remove most of the #include <sys/sa.h> lines
as they were including sa.h just for the type(s) needed for syscallargs.h.

Instead, create a new file, sys/satypes.h, which contains just the
types needed for syscallargs.h. Yes, there's only one now, but that
may change and it's probably more likely to change if it'd be difficult
to handle. :-)

Per discussion with matt at n dot o, add an include of satypes.h to
sigtypes.h. Upcall handlers are kinda signal handlers, and signalling
is the header file that's already included for syscallargs.h that
closest matches SA.

This shaves about 3000 lines off of the diff of the branch relative
to the base. That also represents about 18% of the total before this
checkin.

I think this reduction is very good thing.

Revision 1.179.2.1: download - view: text, markup, annotated - select for diffs
Sat May 10 23:49:03 2008 UTC (16 years, 7 months ago) by wrstuden
Branches: wrstuden-revivesa
Diff to: previous 1.179: preferred, colored
Changes since revision 1.179: +3 -2 lines
Initial checkin of re-adding SA. Everything except kern_sa.c
compiles in GENERIC for i386. This is still a work-in-progress, but
this checkin covers most of the mechanical work (changing signalling
to be able to accomidate SA's process-wide signalling and re-adding
includes of sys/sa.h and savar.h). Subsequent changes will be much
more interesting.

Also, kern_sa.c has received partial cleanup. There's still more
to do, though.

Revision 1.179: download - view: text, markup, annotated - select for diffs
Mon May 5 17:11:17 2008 UTC (16 years, 7 months ago) by ad
Branches: MAIN
CVS tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-nfs-mp-base2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa, simonb-wapbl
Diff to: previous 1.178: preferred, colored
Changes since revision 1.178: +3 -3 lines
- Convert hashinit() to use kmem_alloc(). The hash tables can be large
  and it's better to not have them in kmem_map.
- Convert a couple of minor items along the way to kmem_alloc().
- Fix some memory leaks.

Revision 1.178: download - view: text, markup, annotated - select for diffs
Mon Apr 28 20:24:02 2008 UTC (16 years, 7 months ago) by martin
Branches: MAIN
Diff to: previous 1.177: preferred, colored
Changes since revision 1.177: +2 -9 lines
Remove clause 3 and 4 from TNF licenses

Revision 1.177: download - view: text, markup, annotated - select for diffs
Thu Apr 24 18:39:23 2008 UTC (16 years, 7 months ago) by ad
Branches: MAIN
CVS tags: yamt-nfs-mp-base
Branch point for: yamt-nfs-mp
Diff to: previous 1.176: preferred, colored
Changes since revision 1.176: +4 -4 lines
Merge proc::p_mutex and proc::p_smutex into a single adaptive mutex, since
we no longer need to guard against access from hardware interrupt handlers.

Additionally, if cloning a process with CLONE_SIGHAND, arrange to have the
child process share the parent's lock so that signal state may be kept in
sync. Partially addresses PR kern/37437.

Revision 1.176: download - view: text, markup, annotated - select for diffs
Thu Apr 24 15:35:29 2008 UTC (16 years, 7 months ago) by ad
Branches: MAIN
Diff to: previous 1.175: preferred, colored
Changes since revision 1.175: +9 -10 lines
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.175: download - view: text, markup, annotated - select for diffs
Wed Apr 9 19:36:59 2008 UTC (16 years, 8 months ago) by wiz
Branches: MAIN
CVS tags: yamt-pf42-baseX, yamt-pf42-base
Branch point for: yamt-pf42
Diff to: previous 1.174: preferred, colored
Changes since revision 1.174: +3 -3 lines
Commit fix for the fdfile leak described in PR 38374.

Patch provided by YAMAMOTO Takashi.

Ok ad@

Revision 1.172.6.1: download - view: text, markup, annotated - select for diffs
Thu Apr 3 12:43:01 2008 UTC (16 years, 8 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.172: preferred, colored
Changes since revision 1.172: +1099 -1340 lines
Sync with HEAD.

Revision 1.174: download - view: text, markup, annotated - select for diffs
Thu Mar 27 18:33:39 2008 UTC (16 years, 8 months ago) by ad
Branches: MAIN
Diff to: previous 1.173: preferred, colored
Changes since revision 1.173: +6 -6 lines
Replace use of CACHE_LINE_SIZE in some obvious places.

Revision 1.134.2.11: download - view: text, markup, annotated - select for diffs
Mon Mar 24 09:39:01 2008 UTC (16 years, 8 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134.2.10: preferred, colored; next MAIN 1.135: preferred, colored
Changes since revision 1.134.2.10: +1099 -1340 lines
sync with head.

Revision 1.159.8.4: download - view: text, markup, annotated - select for diffs
Sun Mar 23 02:04:58 2008 UTC (16 years, 8 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.159.8.3: preferred, colored; branchpoint 1.159: preferred, colored; next MAIN 1.160: preferred, colored
Changes since revision 1.159.8.3: +30 -18 lines
sync with HEAD

Revision 1.173: download - view: text, markup, annotated - select for diffs
Fri Mar 21 21:53:35 2008 UTC (16 years, 8 months ago) by ad
Branches: MAIN
CVS tags: yamt-lazymbuf-base15, yamt-lazymbuf-base14, ad-socklock-base1
Diff to: previous 1.172: preferred, colored
Changes since revision 1.172: +1099 -1340 lines
File descriptor changes, discussed on tech-kern:

- Redo reference counting to be sane.  LWPs accessing files take a short
  term reference on the local file descriptor.  This is the most common
  case.  While a file is in a process descriptor table, a reference is
  held to the file.  The file reference count only changes during control
  operations like open() or close().  Code that comes at files from an
  unusual direction (i.e. foreign to the process) like procfs or sysctl
  takes a reference on the file (f_count), and not on a descriptor.

- Remove knowledge of reference counting and locking from most code that
  deals with files.

- Make the usual case of file descriptor lookup lockless.

- Make kqueue MP and MT safe. PR kern/38098, PR kern/38137.

- Fix numerous file handling bugs, and bugs in the descriptor code that
  affected multithreaded processes.

- Split descriptor system calls out into sys_descrip.c.

- A few stylistic changes: KNF, remove unused casts now that caddr_t is
  gone. Replace dumb gotos with loop control in a few places.

- Don't do redundant pointer passing (struct proc, lwp, filedesc *) unless
  the routine is likely to be inlined.  Most of the time it's about the
  current process.

Revision 1.161.4.4: download - view: text, markup, annotated - select for diffs
Mon Feb 18 21:06:45 2008 UTC (16 years, 9 months ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.161.4.3: preferred, colored; branchpoint 1.161: preferred, colored; next MAIN 1.162: preferred, colored
Changes since revision 1.161.4.3: +123 -76 lines
Sync with HEAD.

Revision 1.134.2.10: download - view: text, markup, annotated - select for diffs
Mon Feb 11 14:59:58 2008 UTC (16 years, 9 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134.2.9: preferred, colored
Changes since revision 1.134.2.9: +11 -8 lines
sync with head.

Revision 1.172: download - view: text, markup, annotated - select for diffs
Wed Feb 6 21:51:36 2008 UTC (16 years, 10 months ago) by ad
Branches: MAIN
CVS tags: nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base
Branch point for: mjf-devfs2
Diff to: previous 1.171: preferred, colored
Changes since revision 1.171: +11 -8 lines
- Shrink 'struct file' to 60 bytes on 32-bit platforms.
- Align 'struct file' and 'struct filedesc' to CACHE_LINE_SIZE.

Revision 1.134.2.9: download - view: text, markup, annotated - select for diffs
Mon Feb 4 09:24:09 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134.2.8: preferred, colored
Changes since revision 1.134.2.8: +21 -12 lines
sync with head.

Revision 1.171: download - view: text, markup, annotated - select for diffs
Sun Jan 27 19:48:53 2008 UTC (16 years, 10 months ago) by dsl
Branches: MAIN
Diff to: previous 1.170: preferred, colored
Changes since revision 1.170: +2 -4 lines
Move the prototype for do_posix_fadvise() somewhere useful.

Revision 1.170: download - view: text, markup, annotated - select for diffs
Sun Jan 27 16:16:50 2008 UTC (16 years, 10 months ago) by martin
Branches: MAIN
Diff to: previous 1.169: preferred, colored
Changes since revision 1.169: +23 -12 lines
Implement new version of posix_fadvise as a stub callinig the real
worker function, and compatibility stub doing the same with old argument
sturcture.

Revision 1.134.2.8: download - view: text, markup, annotated - select for diffs
Mon Jan 21 09:46:02 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134.2.7: preferred, colored
Changes since revision 1.134.2.7: +121 -87 lines
sync with head

Revision 1.159.8.3: download - view: text, markup, annotated - select for diffs
Wed Jan 9 01:56:00 2008 UTC (16 years, 11 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.159.8.2: preferred, colored; branchpoint 1.159: preferred, colored
Changes since revision 1.159.8.2: +126 -102 lines
sync with HEAD

Revision 1.165.4.2: download - view: text, markup, annotated - select for diffs
Tue Jan 8 22:11:31 2008 UTC (16 years, 11 months ago) by bouyer
Branches: bouyer-xeni386
CVS tags: bouyer-xeni386-merge1
Diff to: previous 1.165.4.1: preferred, colored; branchpoint 1.165: preferred, colored; next MAIN 1.166: preferred, colored
Changes since revision 1.165.4.1: +40 -19 lines
Sync with HEAD

Revision 1.169: download - view: text, markup, annotated - select for diffs
Sat Jan 5 23:53:21 2008 UTC (16 years, 11 months ago) by ad
Branches: MAIN
CVS tags: matt-armv6-base, bouyer-xeni386-nbase, bouyer-xeni386-base
Diff to: previous 1.168: preferred, colored
Changes since revision 1.168: +23 -2 lines
Add fgetdummy/fputdummy: allocate and free dummy 'struct file' entries
to be used when traversing filehead.

Revision 1.168: download - view: text, markup, annotated - select for diffs
Sat Jan 5 19:08:50 2008 UTC (16 years, 11 months ago) by dsl
Branches: MAIN
Diff to: previous 1.167: preferred, colored
Changes since revision 1.167: +21 -21 lines
Use FILE_LOCK() and FILE_UNLOCK()

Revision 1.165.4.1: download - view: text, markup, annotated - select for diffs
Wed Jan 2 21:55:47 2008 UTC (16 years, 11 months ago) by bouyer
Branches: bouyer-xeni386
Diff to: previous 1.165: preferred, colored
Changes since revision 1.165: +82 -68 lines
Sync with HEAD

Revision 1.161.4.3: download - view: text, markup, annotated - select for diffs
Thu Dec 27 00:45:57 2007 UTC (16 years, 11 months ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.161.4.2: preferred, colored; branchpoint 1.161: preferred, colored
Changes since revision 1.161.4.2: +27 -28 lines
Sync with HEAD.

Revision 1.164.2.3: download - view: text, markup, annotated - select for diffs
Wed Dec 26 21:39:37 2007 UTC (16 years, 11 months ago) by ad
Branches: vmlocking2
Diff to: previous 1.164.2.2: preferred, colored; branchpoint 1.164: preferred, colored; next MAIN 1.165: preferred, colored
Changes since revision 1.164.2.2: +27 -28 lines
Sync with head.

Revision 1.167: download - view: text, markup, annotated - select for diffs
Wed Dec 26 16:01:35 2007 UTC (16 years, 11 months ago) by ad
Branches: MAIN
CVS tags: vmlocking2-base3
Diff to: previous 1.166: preferred, colored
Changes since revision 1.166: +58 -44 lines
Merge more changes from vmlocking2, mainly:

- Locking improvements.
- Use pool_cache for more items.

Revision 1.166: download - view: text, markup, annotated - select for diffs
Thu Dec 20 23:03:07 2007 UTC (16 years, 11 months ago) by dsl
Branches: MAIN
Diff to: previous 1.165: preferred, colored
Changes since revision 1.165: +26 -26 lines
Convert all the system call entry points from:
    int foo(struct lwp *l, void *v, register_t *retval)
to:
    int foo(struct lwp *l, const struct foo_args *uap, register_t *retval)
Fixup compat code to not write into 'uap' and (in some cases) to actually
pass a correctly formatted 'uap' structure with the right name to the
next routine.
A few 'compat' routines that just call standard ones have been deleted.
All the 'compat' code compiles (along with the kernels required to test
build it).
98% done by automated scripts.

Revision 1.164.2.2: download - view: text, markup, annotated - select for diffs
Thu Dec 13 18:01:03 2007 UTC (16 years, 11 months ago) by ad
Branches: vmlocking2
Diff to: previous 1.164.2.1: preferred, colored; branchpoint 1.164: preferred, colored
Changes since revision 1.164.2.1: +3 -3 lines
Unused var

Revision 1.164.2.1: download - view: text, markup, annotated - select for diffs
Thu Dec 13 17:53:59 2007 UTC (16 years, 11 months ago) by ad
Branches: vmlocking2
Diff to: previous 1.164: preferred, colored
Changes since revision 1.164: +57 -43 lines
Eliminate contention on filelist_lock.

Revision 1.159.6.5: download - view: text, markup, annotated - select for diffs
Sun Dec 9 19:38:15 2007 UTC (17 years ago) by jmcneill
Branches: jmcneill-pm
Diff to: previous 1.159.6.4: preferred, colored; branchpoint 1.159: preferred, colored; next MAIN 1.160: preferred, colored
Changes since revision 1.159.6.4: +3 -4 lines
Sync with HEAD.

Revision 1.165: download - view: text, markup, annotated - select for diffs
Sat Dec 8 19:29:47 2007 UTC (17 years ago) by pooka
Branches: MAIN
CVS tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, jmcneill-pm-base, cube-autoconf-base, cube-autoconf
Branch point for: bouyer-xeni386
Diff to: previous 1.164: preferred, colored
Changes since revision 1.164: +3 -4 lines
Remove cn_lwp from struct componentname.  curlwp should be used
from on.  The NDINIT() macro no longer takes the lwp parameter and
associates the credentials of the calling thread with the namei
structure.

Revision 1.161.4.2: download - view: text, markup, annotated - select for diffs
Sat Dec 8 18:20:26 2007 UTC (17 years ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.161.4.1: preferred, colored; branchpoint 1.161: preferred, colored
Changes since revision 1.161.4.1: +7 -17 lines
Sync with HEAD.

Revision 1.134.2.7: download - view: text, markup, annotated - select for diffs
Fri Dec 7 17:32:38 2007 UTC (17 years ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134.2.6: preferred, colored
Changes since revision 1.134.2.6: +7 -17 lines
sync with head

Revision 1.159.6.4: download - view: text, markup, annotated - select for diffs
Mon Dec 3 16:14:47 2007 UTC (17 years ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.159.6.3: preferred, colored; branchpoint 1.159: preferred, colored
Changes since revision 1.159.6.3: +7 -17 lines
Sync with HEAD.

Revision 1.164: download - view: text, markup, annotated - select for diffs
Thu Nov 29 18:17:47 2007 UTC (17 years ago) by ad
Branches: MAIN
CVS tags: vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base
Branch point for: vmlocking2
Diff to: previous 1.163: preferred, colored
Changes since revision 1.163: +4 -9 lines
Use atomics to adjust filedesc::fd_refcnt.

Revision 1.163: download - view: text, markup, annotated - select for diffs
Thu Nov 29 18:15:14 2007 UTC (17 years ago) by ad
Branches: MAIN
Diff to: previous 1.162: preferred, colored
Changes since revision 1.162: +5 -10 lines
Use atomics to adjust cwdi_refcnt.

Revision 1.161.4.1: download - view: text, markup, annotated - select for diffs
Mon Nov 19 00:48:36 2007 UTC (17 years ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.161: preferred, colored
Changes since revision 1.161: +47 -23 lines
Sync with HEAD.

Revision 1.134.2.6: download - view: text, markup, annotated - select for diffs
Thu Nov 15 11:44:39 2007 UTC (17 years ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134.2.5: preferred, colored
Changes since revision 1.134.2.5: +47 -23 lines
sync with head.

Revision 1.161.2.1: download - view: text, markup, annotated - select for diffs
Tue Nov 13 16:01:59 2007 UTC (17 years ago) by bouyer
Branches: bouyer-xenamd64
Diff to: previous 1.161: preferred, colored; next MAIN 1.162: preferred, colored
Changes since revision 1.161: +47 -23 lines
Sync with HEAD

Revision 1.159.6.3: download - view: text, markup, annotated - select for diffs
Sun Nov 11 16:48:00 2007 UTC (17 years, 1 month ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.159.6.2: preferred, colored; branchpoint 1.159: preferred, colored
Changes since revision 1.159.6.2: +47 -23 lines
Sync with HEAD.

Revision 1.159.8.2: download - view: text, markup, annotated - select for diffs
Thu Nov 8 11:00:00 2007 UTC (17 years, 1 month ago) by matt
Branches: matt-armv6
CVS tags: matt-armv6-prevmlocking
Diff to: previous 1.159.8.1: preferred, colored; branchpoint 1.159: preferred, colored
Changes since revision 1.159.8.1: +47 -23 lines
sync with -HEAD

Revision 1.162: download - view: text, markup, annotated - select for diffs
Wed Nov 7 00:23:20 2007 UTC (17 years, 1 month ago) by ad
Branches: MAIN
CVS tags: bouyer-xenamd64-base2, bouyer-xenamd64-base
Diff to: previous 1.161: preferred, colored
Changes since revision 1.161: +47 -23 lines
Merge from vmlocking:

- pool_cache changes.
- Debugger/procfs locking fixes.
- Other minor changes.

Revision 1.159.8.1: download - view: text, markup, annotated - select for diffs
Tue Nov 6 23:31:32 2007 UTC (17 years, 1 month ago) by matt
Branches: matt-armv6
Diff to: previous 1.159: preferred, colored
Changes since revision 1.159: +142 -73 lines
sync with HEAD

Revision 1.134.2.5: download - view: text, markup, annotated - select for diffs
Sat Oct 27 11:35:21 2007 UTC (17 years, 1 month ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134.2.4: preferred, colored
Changes since revision 1.134.2.4: +142 -73 lines
sync with head.

Revision 1.159.6.2: download - view: text, markup, annotated - select for diffs
Fri Oct 26 15:48:28 2007 UTC (17 years, 1 month ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.159.6.1: preferred, colored; branchpoint 1.159: preferred, colored
Changes since revision 1.159.6.1: +108 -73 lines
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.160.2.1: download - view: text, markup, annotated - select for diffs
Sun Oct 14 11:48:38 2007 UTC (17 years, 1 month ago) by yamt
Branches: yamt-x86pmap
Diff to: previous 1.160: preferred, colored; next MAIN 1.161: preferred, colored
Changes since revision 1.160: +108 -73 lines
sync with head.

Revision 1.153.2.9: download - view: text, markup, annotated - select for diffs
Tue Oct 9 15:22:18 2007 UTC (17 years, 2 months ago) by ad
Branches: vmlocking
Diff to: previous 1.153.2.8: preferred, colored; next MAIN 1.154: preferred, colored
Changes since revision 1.153.2.8: +2 -21 lines
Sync with head.

Revision 1.153.2.8: download - view: text, markup, annotated - select for diffs
Tue Oct 9 13:44:24 2007 UTC (17 years, 2 months ago) by ad
Branches: vmlocking
Diff to: previous 1.153.2.7: preferred, colored
Changes since revision 1.153.2.7: +55 -2 lines
Sync with head.

Revision 1.161: download - view: text, markup, annotated - select for diffs
Mon Oct 8 15:12:07 2007 UTC (17 years, 2 months ago) by ad
Branches: MAIN
CVS tags: yamt-x86pmap-base4, yamt-x86pmap-base3, vmlocking-base, jmcneill-base
Branch point for: mjf-devfs, bouyer-xenamd64
Diff to: previous 1.160: preferred, colored
Changes since revision 1.160: +108 -73 lines
Merge file descriptor locking, cwdi locking and cross-call changes
from the vmlocking branch.

Revision 1.159.6.1: download - view: text, markup, annotated - select for diffs
Tue Oct 2 18:28:58 2007 UTC (17 years, 2 months ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.159: preferred, colored
Changes since revision 1.159: +36 -2 lines
Sync with HEAD.

Revision 1.159.2.1: download - view: text, markup, annotated - select for diffs
Mon Sep 10 10:55:57 2007 UTC (17 years, 3 months ago) by skrll
Branches: nick-csl-alignment
Diff to: previous 1.159: preferred, colored; next MAIN 1.160: preferred, colored
Changes since revision 1.159: +36 -2 lines
Sync with HEAD.

Revision 1.160: download - view: text, markup, annotated - select for diffs
Fri Sep 7 18:56:08 2007 UTC (17 years, 3 months ago) by rmind
Branches: MAIN
CVS tags: yamt-x86pmap-base2, yamt-x86pmap-base, nick-csl-alignment-base5
Branch point for: yamt-x86pmap
Diff to: previous 1.159: preferred, colored
Changes since revision 1.159: +36 -2 lines
Implementation of POSIX message queues.

Reviewed by: <ad>, <tech-kern>

Revision 1.134.2.4: download - view: text, markup, annotated - select for diffs
Mon Sep 3 14:40:44 2007 UTC (17 years, 3 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134.2.3: preferred, colored
Changes since revision 1.134.2.3: +136 -101 lines
sync with head.

Revision 1.153.2.7: download - view: text, markup, annotated - select for diffs
Sat Sep 1 12:57:53 2007 UTC (17 years, 3 months ago) by ad
Branches: vmlocking
Diff to: previous 1.153.2.6: preferred, colored
Changes since revision 1.153.2.6: +49 -19 lines
Use pool_cache for allocating a few more types of objects.

Revision 1.154.2.1: download - view: text, markup, annotated - select for diffs
Wed Jul 11 20:09:44 2007 UTC (17 years, 5 months ago) by mjf
Branches: mjf-ufs-trans
Diff to: previous 1.154: preferred, colored; next MAIN 1.155: preferred, colored
Changes since revision 1.154: +107 -80 lines
Sync with head.

Revision 1.159: download - view: text, markup, annotated - select for diffs
Mon Jul 9 21:10:51 2007 UTC (17 years, 5 months ago) by ad
Branches: MAIN
CVS tags: nick-csl-alignment-base, mjf-ufs-trans-base, matt-mips64-base, matt-mips64, hpcarm-cleanup
Branch point for: nick-csl-alignment, matt-armv6, jmcneill-pm
Diff to: previous 1.158: preferred, colored
Changes since revision 1.158: +8 -7 lines
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.153.2.6: download - view: text, markup, annotated - select for diffs
Mon Jul 9 11:27:14 2007 UTC (17 years, 5 months ago) by ad
Branches: vmlocking
Diff to: previous 1.153.2.5: preferred, colored
Changes since revision 1.153.2.5: +4 -4 lines
closef: restore check for l == NULL removed in revision 1.153.2.4.
Noted by yamt.

Revision 1.153.2.5: download - view: text, markup, annotated - select for diffs
Fri Jun 8 14:17:17 2007 UTC (17 years, 6 months ago) by ad
Branches: vmlocking
Diff to: previous 1.153.2.4: preferred, colored
Changes since revision 1.153.2.4: +100 -81 lines
Sync with head.

Revision 1.150.2.5: download - view: text, markup, annotated - select for diffs
Thu May 17 13:41:45 2007 UTC (17 years, 6 months ago) by yamt
Branches: yamt-idlelwp
Diff to: previous 1.150.2.4: preferred, colored; branchpoint 1.150: preferred, colored; next MAIN 1.151: preferred, colored
Changes since revision 1.150.2.4: +92 -73 lines
sync with head.

Revision 1.153.2.4: download - view: text, markup, annotated - select for diffs
Sun May 13 17:36:33 2007 UTC (17 years, 6 months ago) by ad
Branches: vmlocking
Diff to: previous 1.153.2.3: preferred, colored
Changes since revision 1.153.2.3: +30 -16 lines
- Pass the error number and residual count to biodone(), and let it handle
  setting error indicators. Prepare to eliminate B_ERROR.
- Add a flag argument to brelse() to be set into the buf's flags, instead
  of doing it directly. Typically used to set B_INVAL.
- Add a "struct cpu_info *" argument to kthread_create(), to be used to
  create bound threads. Change "bool mpsafe" to "int flags".
- Allow exit of LWPs in the IDL state when (l != curlwp).
- More locking fixes & conversion to the new API.

Revision 1.158: download - view: text, markup, annotated - select for diffs
Sat May 12 23:02:50 2007 UTC (17 years, 7 months ago) by dsl
Branches: MAIN
CVS tags: yamt-idlelwp-base8
Diff to: previous 1.157: preferred, colored
Changes since revision 1.157: +92 -73 lines
Split the fcntl locking code out from its copyin/out.
Use to avoid all the stackgap stuff in compat code.

Revision 1.150.2.4: download - view: text, markup, annotated - select for diffs
Mon May 7 10:55:45 2007 UTC (17 years, 7 months ago) by yamt
Branches: yamt-idlelwp
Diff to: previous 1.150.2.3: preferred, colored; branchpoint 1.150: preferred, colored
Changes since revision 1.150.2.3: +10 -2 lines
sync with head.

Revision 1.157: download - view: text, markup, annotated - select for diffs
Sun Apr 22 18:41:49 2007 UTC (17 years, 7 months ago) by dsl
Branches: MAIN
Diff to: previous 1.156: preferred, colored
Changes since revision 1.156: +5 -4 lines
I'm not sure why I decided that cwdinit() shouldn't copy cwd_edir.
Since this is called in fork() it does rather need to give the child
process the parent's emulation root.
This means that (for example) an emulated shell will, by default, run
programs from the emulation root.

Revision 1.156: download - view: text, markup, annotated - select for diffs
Sun Apr 22 08:30:00 2007 UTC (17 years, 7 months ago) by dsl
Branches: MAIN
Diff to: previous 1.155: preferred, colored
Changes since revision 1.155: +9 -2 lines
Change the way that emulations locate files within the emulation root to
  avoid having to allocate space in the 'stackgap'
  - which is very LWP unfriendly.
The additional code for non-emulation namei() is trivial, the reduction for
  the emulations is massive.
The vnode for a processes emulation root is saved in the cwdi structure
  during process exec.
If the emulation root the TRYEMULROOT flag are set, namei() will do an initial
  search for absolute pathnames in the emulation root, if that fails it will
  retry from the normal root.
".." at the emulation root will always go to the real root, even in the middle
  of paths and when expanding symlinks.
Absolute symlinks found using absolute paths in the emulation root will be
  relative to the emulation root (so /usr/lib/xxx.so -> /lib/xxx.so links
  inside the emulation root don't need changing).
If the root of the emulation would be returned (for an emulation lookup), then
  the real root is returned instead (matching the behaviour of emul_lookup,
  but being a cheap comparison here) so that programs that scan "../.."
  looking for the root dircetory don't loop forever.
The target for symbolic links is no longer mangled (it used to get the
  CHECK_ALT_xxx() treatment, so could get /emul/xxx prepended).
CHECK_ALT_xxx() are no more. Most of the change is deleting them, and adding
  TRYEMULROOT to the flags to NDINIT().
A lot of the emulation system call stubs could now be deleted.

Revision 1.153.2.3: download - view: text, markup, annotated - select for diffs
Thu Apr 12 23:12:56 2007 UTC (17 years, 8 months ago) by ad
Branches: vmlocking
Diff to: previous 1.153.2.2: preferred, colored
Changes since revision 1.153.2.2: +40 -41 lines
filedesc::fd_lock a reader/writer lock, for multithreaded processes.

Revision 1.154.4.1: download - view: text, markup, annotated - select for diffs
Thu Mar 29 19:27:56 2007 UTC (17 years, 8 months ago) by reinoud
Branches: reinoud-bufcleanup
Diff to: previous 1.154: preferred, colored; next MAIN 1.155: preferred, colored
Changes since revision 1.154: +3 -4 lines
Pullup to -current

Revision 1.150.2.3: download - view: text, markup, annotated - select for diffs
Sat Mar 24 14:56:00 2007 UTC (17 years, 8 months ago) by yamt
Branches: yamt-idlelwp
Diff to: previous 1.150.2.2: preferred, colored; branchpoint 1.150: preferred, colored
Changes since revision 1.150.2.2: +6 -7 lines
sync with head.

Revision 1.155: download - view: text, markup, annotated - select for diffs
Wed Mar 21 21:18:56 2007 UTC (17 years, 8 months ago) by dsl
Branches: MAIN
CVS tags: thorpej-atomic-base, thorpej-atomic
Diff to: previous 1.154: preferred, colored
Changes since revision 1.154: +3 -4 lines
Somehow a single K&R function definition was lurking - nuke it.

Revision 1.153.2.2: download - view: text, markup, annotated - select for diffs
Wed Mar 21 20:11:49 2007 UTC (17 years, 8 months ago) by ad
Branches: vmlocking
Diff to: previous 1.153.2.1: preferred, colored
Changes since revision 1.153.2.1: +90 -66 lines
- Replace more simple_locks, and fix up in a few places.
- Use condition variables.
- LOCK_ASSERT -> KASSERT.

Revision 1.153.2.1: download - view: text, markup, annotated - select for diffs
Tue Mar 13 16:51:52 2007 UTC (17 years, 9 months ago) by ad
Branches: vmlocking
Diff to: previous 1.153: preferred, colored
Changes since revision 1.153: +5 -5 lines
Sync with head.

Revision 1.154: download - view: text, markup, annotated - select for diffs
Mon Mar 12 18:18:32 2007 UTC (17 years, 9 months ago) by ad
Branches: MAIN
Branch point for: reinoud-bufcleanup, mjf-ufs-trans
Diff to: previous 1.153: preferred, colored
Changes since revision 1.153: +5 -5 lines
Pass an ipl argument to pool_init/POOL_INIT to be used when initializing
the pool's lock.

Revision 1.150.2.2: download - view: text, markup, annotated - select for diffs
Mon Mar 12 05:58:32 2007 UTC (17 years, 9 months ago) by rmind
Branches: yamt-idlelwp
Diff to: previous 1.150.2.1: preferred, colored; branchpoint 1.150: preferred, colored
Changes since revision 1.150.2.1: +28 -20 lines
Sync with HEAD.

Revision 1.153: download - view: text, markup, annotated - select for diffs
Sat Mar 10 16:50:01 2007 UTC (17 years, 9 months ago) by dsl
Branches: MAIN
Branch point for: vmlocking
Diff to: previous 1.152: preferred, colored
Changes since revision 1.152: +26 -18 lines
Split the work for sys_stat, sys_lstat, sys_fstat and sys_fhstat out into
separate functions that don't do the copyout.
This allows all the compat_xxx versions to convert the 'struct stat' to
the correct format without using the 'stackgap'.
The stackgap isn't at all LWP friendly, and needs to be removed from
any compat functions that might involve threads (inc. clone()).
The code is still binary compatible with existing LKMs.

Revision 1.152: download - view: text, markup, annotated - select for diffs
Fri Mar 9 14:11:24 2007 UTC (17 years, 9 months ago) by ad
Branches: MAIN
Diff to: previous 1.151: preferred, colored
Changes since revision 1.151: +4 -4 lines
- Make the proclist_lock a mutex. The write:read ratio is unfavourable,
  and mutexes are cheaper use than RW locks.
- LOCK_ASSERT -> KASSERT in some places.
- Hold proclist_lock/kernel_lock longer in a couple of places.

Revision 1.150.2.1: download - view: text, markup, annotated - select for diffs
Tue Feb 27 16:54:19 2007 UTC (17 years, 9 months ago) by yamt
Branches: yamt-idlelwp
Diff to: previous 1.150: preferred, colored
Changes since revision 1.150: +5 -5 lines
- sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.

Revision 1.134.2.3: download - view: text, markup, annotated - select for diffs
Mon Feb 26 09:11:05 2007 UTC (17 years, 9 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134.2.2: preferred, colored
Changes since revision 1.134.2.2: +23 -10 lines
sync with head.

Revision 1.151: download - view: text, markup, annotated - select for diffs
Sat Feb 17 22:31:42 2007 UTC (17 years, 9 months ago) by pavel
Branches: MAIN
CVS tags: ad-audiomp-base, ad-audiomp
Diff to: previous 1.150: preferred, colored
Changes since revision 1.150: +5 -5 lines
Change the process/lwp flags seen by userland via sysctl back to the
P_*/L_* naming convention, and rename the in-kernel flags to avoid
conflict. (P_ -> PK_, L_ -> LW_ ). Add back the (now unused) LSDEAD
constant.

Restores source compatibility with pre-newlock2 tools like ps or top.

Reviewed by Andrew Doran.

Revision 1.150: download - view: text, markup, annotated - select for diffs
Fri Feb 9 21:55:30 2007 UTC (17 years, 10 months ago) by ad
Branches: MAIN
CVS tags: post-newlock2-merge
Branch point for: yamt-idlelwp
Diff to: previous 1.149: preferred, colored
Changes since revision 1.149: +16 -6 lines
Merge newlock2 to head.

Revision 1.145.2.6: download - view: text, markup, annotated - select for diffs
Thu Feb 1 08:48:37 2007 UTC (17 years, 10 months ago) by ad
Branches: newlock2
Diff to: previous 1.145.2.5: preferred, colored; branchpoint 1.145: preferred, colored; next MAIN 1.146: preferred, colored
Changes since revision 1.145.2.5: +6 -3 lines
Sync with head.

Revision 1.149: download - view: text, markup, annotated - select for diffs
Wed Jan 31 16:00:43 2007 UTC (17 years, 10 months ago) by ad
Branches: MAIN
CVS tags: newlock2-nbase, newlock2-base
Diff to: previous 1.148: preferred, colored
Changes since revision 1.148: +6 -3 lines
ffree(): don't call kauth_cred_free() with a held simplelock.

Revision 1.145.2.5: download - view: text, markup, annotated - select for diffs
Tue Jan 30 13:51:40 2007 UTC (17 years, 10 months ago) by ad
Branches: newlock2
Diff to: previous 1.145.2.4: preferred, colored; branchpoint 1.145: preferred, colored
Changes since revision 1.145.2.4: +2 -3 lines
Remove support for SA. Ok core@.

Revision 1.145.2.4: download - view: text, markup, annotated - select for diffs
Fri Jan 12 01:04:06 2007 UTC (17 years, 10 months ago) by ad
Branches: newlock2
Diff to: previous 1.145.2.3: preferred, colored; branchpoint 1.145: preferred, colored
Changes since revision 1.145.2.3: +3 -3 lines
Sync with head.

Revision 1.134.2.2: download - view: text, markup, annotated - select for diffs
Sat Dec 30 20:50:05 2006 UTC (17 years, 11 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134.2.1: preferred, colored
Changes since revision 1.134.2.1: +13 -7 lines
sync with head.

Revision 1.145.4.2: download - view: text, markup, annotated - select for diffs
Sun Dec 10 07:18:44 2006 UTC (18 years ago) by yamt
Branches: yamt-splraiseipl
Diff to: previous 1.145.4.1: preferred, colored; branchpoint 1.145: preferred, colored; next MAIN 1.146: preferred, colored
Changes since revision 1.145.4.1: +16 -16 lines
sync with head.

Revision 1.148: download - view: text, markup, annotated - select for diffs
Wed Dec 6 10:02:22 2006 UTC (18 years ago) by yamt
Branches: MAIN
CVS tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3
Diff to: previous 1.147: preferred, colored
Changes since revision 1.147: +3 -3 lines
use KSI_INIT rather than memset.  no functional changes.

Revision 1.145.2.3: download - view: text, markup, annotated - select for diffs
Sat Nov 18 21:39:21 2006 UTC (18 years ago) by ad
Branches: newlock2
Diff to: previous 1.145.2.2: preferred, colored; branchpoint 1.145: preferred, colored
Changes since revision 1.145.2.2: +5 -2 lines
Sync with head.

Revision 1.145.2.2: download - view: text, markup, annotated - select for diffs
Fri Nov 17 16:34:35 2006 UTC (18 years ago) by ad
Branches: newlock2
Diff to: previous 1.145.2.1: preferred, colored; branchpoint 1.145: preferred, colored
Changes since revision 1.145.2.1: +4 -4 lines
Checkpoint work in progress.

Revision 1.147: download - view: text, markup, annotated - select for diffs
Wed Nov 1 10:17:58 2006 UTC (18 years, 1 month ago) by yamt
Branches: MAIN
CVS tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, 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
Diff to: previous 1.146: preferred, colored
Changes since revision 1.146: +15 -15 lines
remove some __unused from function parameters.

Revision 1.145.4.1: download - view: text, markup, annotated - select for diffs
Sun Oct 22 06:07:10 2006 UTC (18 years, 1 month ago) by yamt
Branches: yamt-splraiseipl
Diff to: previous 1.145: preferred, colored
Changes since revision 1.145: +15 -12 lines
sync with head

Revision 1.146: download - view: text, markup, annotated - select for diffs
Thu Oct 12 01:32:14 2006 UTC (18 years, 2 months ago) by christos
Branches: MAIN
CVS tags: yamt-splraiseipl-base2
Diff to: previous 1.145: preferred, colored
Changes since revision 1.145: +15 -12 lines
- sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386

Revision 1.145.2.1: download - view: text, markup, annotated - select for diffs
Mon Sep 11 18:19:09 2006 UTC (18 years, 3 months ago) by ad
Branches: newlock2
Diff to: previous 1.145: preferred, colored
Changes since revision 1.145: +16 -5 lines
- Allocate and free turnstiles where needed.
- Split proclist_mutex and alllwp_mutex out of the proclist_lock,
  and use in interrupt context.
- Fix an MP race in enterpgrp()/setsid().
- Acquire proclist_lock and p_crmutex in some obvious places.

Revision 1.140.2.1: download - view: text, markup, annotated - select for diffs
Sat Sep 9 02:57:16 2006 UTC (18 years, 3 months ago) by rpaulo
Branches: rpaulo-netinet-merge-pcb
Diff to: previous 1.140: preferred, colored; next MAIN 1.141: preferred, colored
Changes since revision 1.140: +14 -32 lines
sync with head

Revision 1.140.6.4: download - view: text, markup, annotated - select for diffs
Sun Sep 3 15:25:22 2006 UTC (18 years, 3 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.140.6.3: preferred, colored; branchpoint 1.140: preferred, colored; next MAIN 1.141: preferred, colored
Changes since revision 1.140.6.3: +3 -3 lines
sync with head.

Revision 1.145: download - view: text, markup, annotated - select for diffs
Sat Sep 2 06:22:45 2006 UTC (18 years, 3 months ago) by christos
Branches: MAIN
CVS tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, rpaulo-netinet-merge-pcb-base
Branch point for: yamt-splraiseipl, newlock2
Diff to: previous 1.144: preferred, colored
Changes since revision 1.144: +3 -3 lines
add missing initializer

Revision 1.140.6.3: download - view: text, markup, annotated - select for diffs
Fri Aug 11 15:45:46 2006 UTC (18 years, 4 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.140.6.2: preferred, colored; branchpoint 1.140: preferred, colored
Changes since revision 1.140.6.2: +8 -5 lines
sync with head

Revision 1.144: download - view: text, markup, annotated - select for diffs
Sun Jul 23 22:06:11 2006 UTC (18 years, 4 months ago) by ad
Branches: MAIN
CVS tags: yamt-pdpolicy-base7, abandoned-netbsd-4-base, abandoned-netbsd-4
Diff to: previous 1.143: preferred, colored
Changes since revision 1.143: +8 -5 lines
Use the LWP cached credentials where sane.

Revision 1.134.2.1: download - view: text, markup, annotated - select for diffs
Wed Jun 21 15:09:37 2006 UTC (18 years, 5 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.134: preferred, colored
Changes since revision 1.134: +160 -101 lines
sync with head.

Revision 1.140.4.2: download - view: text, markup, annotated - select for diffs
Thu Jun 1 22:38:07 2006 UTC (18 years, 6 months ago) by kardel
Branches: simonb-timecounters
CVS tags: simonb-timcounters-final
Diff to: previous 1.140.4.1: preferred, colored; branchpoint 1.140: preferred, colored; next MAIN 1.141: preferred, colored
Changes since revision 1.140.4.1: +7 -6 lines
Sync with head.

Revision 1.141.4.1: download - view: text, markup, annotated - select for diffs
Wed May 24 15:50:40 2006 UTC (18 years, 6 months ago) by tron
Branches: peter-altq
Diff to: previous 1.141: preferred, colored; next MAIN 1.142: preferred, colored
Changes since revision 1.141: +8 -7 lines
Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.

Revision 1.140.6.2: download - view: text, markup, annotated - select for diffs
Wed May 24 10:58:40 2006 UTC (18 years, 6 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.140.6.1: preferred, colored; branchpoint 1.140: preferred, colored
Changes since revision 1.140.6.1: +8 -7 lines
sync with head.

Revision 1.143: download - view: text, markup, annotated - select for diffs
Sun May 14 21:15:11 2006 UTC (18 years, 6 months ago) by elad
Branches: MAIN
CVS tags: yamt-pdpolicy-base6, yamt-pdpolicy-base5, simonb-timecounters-base, gdamore-uart-base, gdamore-uart, chap-midi-nbase, chap-midi-base, chap-midi
Diff to: previous 1.142: preferred, colored
Changes since revision 1.142: +7 -6 lines
integrate kauth.

Revision 1.141.2.4: download - view: text, markup, annotated - select for diffs
Sat May 6 23:31:30 2006 UTC (18 years, 7 months ago) by christos
Branches: elad-kernelauth
Diff to: previous 1.141.2.3: preferred, colored; branchpoint 1.141: preferred, colored; next MAIN 1.142: preferred, colored
Changes since revision 1.141.2.3: +3 -2 lines
- Move kauth_cred_t declaration to <sys/types.h>
- Cleanup struct ucred; forward declarations that are unused.
- Don't include <sys/kauth.h> in any header, but include it in the c files
  that need it.

Approved by core.

Revision 1.140.4.1: download - view: text, markup, annotated - select for diffs
Sat Apr 22 11:39:58 2006 UTC (18 years, 7 months ago) by simonb
Branches: simonb-timecounters
Diff to: previous 1.140: preferred, colored
Changes since revision 1.140: +3 -25 lines
Sync with head.

Revision 1.141.2.3: download - view: text, markup, annotated - select for diffs
Wed Apr 19 05:13:59 2006 UTC (18 years, 7 months ago) by elad
Branches: elad-kernelauth
Diff to: previous 1.141.2.2: preferred, colored; branchpoint 1.141: preferred, colored
Changes since revision 1.141.2.2: +3 -3 lines
sync with head.

Revision 1.142: download - view: text, markup, annotated - select for diffs
Sat Apr 15 04:50:08 2006 UTC (18 years, 7 months ago) by christos
Branches: MAIN
CVS tags: elad-kernelauth-base
Diff to: previous 1.141: preferred, colored
Changes since revision 1.141: +3 -3 lines
Coverity CID 845: Make it clear that devnullfp != NULL.

Revision 1.140.6.1: download - view: text, markup, annotated - select for diffs
Mon Mar 13 09:07:32 2006 UTC (18 years, 9 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.140: preferred, colored
Changes since revision 1.140: +2 -24 lines
sync with head.

Revision 1.141.2.2: download - view: text, markup, annotated - select for diffs
Wed Mar 8 00:53:40 2006 UTC (18 years, 9 months ago) by elad
Branches: elad-kernelauth
Diff to: previous 1.141.2.1: preferred, colored; branchpoint 1.141: preferred, colored
Changes since revision 1.141.2.1: +1943 -0 lines
Adapt to kernel authorization KPI.

Revision 1.141.2.1
Tue Mar 7 17:13:53 2006 UTC (18 years, 9 months ago) by elad
Branches: elad-kernelauth
FILE REMOVED
Changes since revision 1.141: +0 -1943 lines
file kern_descrip.c was added on branch elad-kernelauth on 2006-03-08 00:53:40 +0000

Revision 1.141: download - view: text, markup, annotated - select for diffs
Tue Mar 7 17:13:53 2006 UTC (18 years, 9 months ago) by pooka
Branches: MAIN
CVS tags: yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, peter-altq-base
Branch point for: peter-altq, elad-kernelauth
Diff to: previous 1.140: preferred, colored
Changes since revision 1.140: +2 -24 lines
remove the no longer useful fdavail(), as proposed and (thankfully) not
discussed on tech-kern

Revision 1.139.2.1: download - view: text, markup, annotated - select for diffs
Wed Feb 1 14:52:20 2006 UTC (18 years, 10 months ago) by yamt
Branches: yamt-uio_vmspace
Diff to: previous 1.139: preferred, colored; next MAIN 1.140: preferred, colored
Changes since revision 1.139: +4 -2 lines
sync with head.

Revision 1.140: download - view: text, markup, annotated - select for diffs
Tue Jan 31 14:02:10 2006 UTC (18 years, 10 months ago) by yamt
Branches: MAIN
CVS tags: yamt-uio_vmspace-base5, yamt-pdpolicy-base
Branch point for: yamt-pdpolicy, simonb-timecounters, rpaulo-netinet-merge-pcb
Diff to: previous 1.139: preferred, colored
Changes since revision 1.139: +4 -2 lines
falloc: grab fd_slock when calling fd_unused.

Revision 1.139: download - view: text, markup, annotated - select for diffs
Sat Dec 24 19:12:23 2005 UTC (18 years, 11 months ago) by perry
Branches: MAIN
Branch point for: yamt-uio_vmspace
Diff to: previous 1.138: preferred, colored
Changes since revision 1.138: +5 -5 lines
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.

Revision 1.138: download - view: text, markup, annotated - select for diffs
Sun Dec 11 12:24:29 2005 UTC (19 years ago) by christos
Branches: MAIN
Diff to: previous 1.137: preferred, colored
Changes since revision 1.137: +79 -70 lines
merge ktrace-lwp.

Revision 1.110.2.11: download - view: text, markup, annotated - select for diffs
Sun Dec 11 10:29:11 2005 UTC (19 years ago) by christos
Branches: ktrace-lwp
Diff to: previous 1.110.2.10: preferred, colored; next MAIN 1.111: preferred, colored
Changes since revision 1.110.2.10: +70 -2 lines
Sync with head.

Revision 1.137: download - view: text, markup, annotated - select for diffs
Tue Nov 29 22:52:02 2005 UTC (19 years ago) by yamt
Branches: MAIN
CVS tags: ktrace-lwp-base
Diff to: previous 1.136: preferred, colored
Changes since revision 1.136: +70 -2 lines
merge yamt-readahead branch.

Revision 1.136.6.6: download - view: text, markup, annotated - select for diffs
Fri Nov 18 08:44:54 2005 UTC (19 years ago) by yamt
Branches: yamt-readahead
CVS tags: yamt-readahead-pervnode
Diff to: previous 1.136.6.5: preferred, colored; branchpoint 1.136: preferred, colored; next MAIN 1.137: preferred, colored
Changes since revision 1.136.6.5: +2 -22 lines
- associate read-ahead context to vnode, rather than file.
- revert VOP_READ prototype.

Revision 1.136.6.5: download - view: text, markup, annotated - select for diffs
Thu Nov 17 06:42:31 2005 UTC (19 years ago) by yamt
Branches: yamt-readahead
CVS tags: yamt-readahead-perfile
Diff to: previous 1.136.6.4: preferred, colored; branchpoint 1.136: preferred, colored
Changes since revision 1.136.6.4: +7 -4 lines
use UVM_ADV_ rather than POSIX_FADV_.

Revision 1.136.6.4: download - view: text, markup, annotated - select for diffs
Wed Nov 16 10:58:29 2005 UTC (19 years ago) by yamt
Branches: yamt-readahead
Diff to: previous 1.136.6.3: preferred, colored; branchpoint 1.136: preferred, colored
Changes since revision 1.136.6.3: +3 -3 lines
update a comment following posix_fadvise prototype change.

Revision 1.136.6.3: download - view: text, markup, annotated - select for diffs
Wed Nov 16 08:08:20 2005 UTC (19 years ago) by yamt
Branches: yamt-readahead
Diff to: previous 1.136.6.2: preferred, colored; branchpoint 1.136: preferred, colored
Changes since revision 1.136.6.2: +7 -4 lines
sys_posix_fadvise: correct how to return an error.

Revision 1.136.6.2: download - view: text, markup, annotated - select for diffs
Tue Nov 15 05:24:48 2005 UTC (19 years ago) by yamt
Branches: yamt-readahead
Diff to: previous 1.136.6.1: preferred, colored; branchpoint 1.136: preferred, colored
Changes since revision 1.136.6.1: +79 -3 lines
add posix_fadvise.

Revision 1.136.6.1: download - view: text, markup, annotated - select for diffs
Tue Nov 15 03:46:15 2005 UTC (19 years ago) by yamt
Branches: yamt-readahead
Diff to: previous 1.136: preferred, colored
Changes since revision 1.136: +8 -2 lines
- setup/cleanup readahead context.
- adapt to the new VOP_READ prototype.

Revision 1.110.2.10: download - view: text, markup, annotated - select for diffs
Thu Nov 10 14:09:44 2005 UTC (19 years, 1 month ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.110.2.9: preferred, colored
Changes since revision 1.110.2.9: +148 -158 lines
Sync with HEAD. Here we go again...

Revision 1.136: download - view: text, markup, annotated - select for diffs
Mon Oct 3 02:06:00 2005 UTC (19 years, 2 months ago) by mrg
Branches: MAIN
CVS tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, thorpej-vnode-attr-base, thorpej-vnode-attr
Branch point for: yamt-readahead
Diff to: previous 1.135: preferred, colored
Changes since revision 1.135: +4 -3 lines
fix a bug pointed out by der mouse on tech-kern: in F_GETOWN, use a
pointer to a temporary "int" variable to pass to fo_ioctl(TIOCGPGRP), not
a register_t pointer.  (how did F_GETOWN ever work on sparc64 before?)

Revision 1.135: download - view: text, markup, annotated - select for diffs
Fri Aug 19 02:04:03 2005 UTC (19 years, 3 months ago) by christos
Branches: MAIN
Diff to: previous 1.134: preferred, colored
Changes since revision 1.134: +4 -4 lines
64 bit inode changes.

Revision 1.134: download - view: text, markup, annotated - select for diffs
Thu Jun 23 23:15:12 2005 UTC (19 years, 5 months ago) by thorpej
Branches: MAIN
Branch point for: yamt-lazymbuf
Diff to: previous 1.133: preferred, colored
Changes since revision 1.133: +120 -129 lines
Use ANSI function decls.  Apply some static.

Revision 1.133: download - view: text, markup, annotated - select for diffs
Sun May 29 22:24:15 2005 UTC (19 years, 6 months ago) by christos
Branches: MAIN
Diff to: previous 1.132: preferred, colored
Changes since revision 1.132: +25 -25 lines
- add const.
- remove unnecessary casts.
- add __UNCONST casts and mark them with XXXUNCONST as necessary.

Revision 1.131.2.1: download - view: text, markup, annotated - select for diffs
Sat May 28 12:41:08 2005 UTC (19 years, 6 months ago) by tron
Branches: netbsd-3
CVS tags: 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
Diff to: previous 1.131: preferred, colored; next MAIN 1.132: preferred, colored
Changes since revision 1.131: +3 -3 lines
Pull up revision 1.132 (requested by wrstuden in ticket #331):
The file being closed is (fdp->fd_lastfile - i), not i. So compare
(fdp->fd_lastfile - i) against fd_knlistsize. Otherwise we can
call knote_fdclose() on a file descriptor that doesn't have a knote.
This issue explains random panics I have had on process exit over the
past few years.

Revision 1.123.2.3: download - view: text, markup, annotated - select for diffs
Tue May 24 19:38:34 2005 UTC (19 years, 6 months ago) by riz
Branches: netbsd-2-0
CVS tags: netbsd-2-0-3-RELEASE
Diff to: previous 1.123.2.2: preferred, colored; branchpoint 1.123: preferred, colored; next MAIN 1.124: preferred, colored
Changes since revision 1.123.2.2: +3 -3 lines
Pull up revision 1.132 (requested by wrstuden in ticket #1537):
The file being closed is (fdp->fd_lastfile - i), not i. So compare
(fdp->fd_lastfile - i) against fd_knlistsize. Otherwise we can
call knote_fdclose() on a file descriptor that doesn't have a knote.
This issue explains random panics I have had on process exit over the
past few years.

Revision 1.123.2.1.2.2: download - view: text, markup, annotated - select for diffs
Tue May 24 19:38:08 2005 UTC (19 years, 6 months ago) by riz
Branches: netbsd-2
CVS tags: 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
Diff to: previous 1.123.2.1.2.1: preferred, colored; branchpoint 1.123.2.1: preferred, colored; next MAIN 1.123.2.2: preferred, colored
Changes since revision 1.123.2.1.2.1: +3 -3 lines
Pull up revision 1.132 (requested by wrstuden in ticket #1537):
The file being closed is (fdp->fd_lastfile - i), not i. So compare
(fdp->fd_lastfile - i) against fd_knlistsize. Otherwise we can
call knote_fdclose() on a file descriptor that doesn't have a knote.
This issue explains random panics I have had on process exit over the
past few years.

Revision 1.132: download - view: text, markup, annotated - select for diffs
Fri May 20 16:13:00 2005 UTC (19 years, 6 months ago) by wrstuden
Branches: MAIN
Diff to: previous 1.131: preferred, colored
Changes since revision 1.131: +3 -3 lines
The file being closed is (fdp->fd_lastfile - i), not i. So compare
(fdp->fd_lastfile - i) against fd_knlistsize. Otherwise we can
call knote_fdclose() on a file descriptor that doesn't have a knote.

This issue explains random panics I have had on process exit over the
past few years.

Revision 1.129.2.1: download - view: text, markup, annotated - select for diffs
Fri Apr 29 11:29:23 2005 UTC (19 years, 7 months ago) by kent
Branches: kent-audio2
Diff to: previous 1.129: preferred, colored; next MAIN 1.130: preferred, colored
Changes since revision 1.129: +9 -9 lines
sync with -current

Revision 1.129.4.1: download - view: text, markup, annotated - select for diffs
Sat Mar 19 08:36:11 2005 UTC (19 years, 8 months ago) by yamt
Branches: yamt-km
Diff to: previous 1.129: preferred, colored; next MAIN 1.130: preferred, colored
Changes since revision 1.129: +9 -9 lines
sync with head.  xen and whitespace.  xen part is not finished.

Revision 1.123.2.1.2.1: download - view: text, markup, annotated - select for diffs
Wed Mar 16 11:38:59 2005 UTC (19 years, 8 months ago) by tron
Branches: netbsd-2
Diff to: previous 1.123.2.1: preferred, colored
Changes since revision 1.123.2.1: +4 -3 lines
Pull up revision 1.128 via patch (requested by cube in ticket #1089):
fd_lastfile should be -1 when there are no opened file descriptors.
Hence, make find_last_set return -1 in such situation, and initialize it
such.  Otherwise, with 0 meaning two things, it confused the F_CLOSEM
fcntl which could end up looping indifintely (PR#28929 by Brian Marcotte).
However, this change enlightens another bug in fdcopy(), where more entries
than needed were cleared in the new file descriptor table, so the memset()
call there is fixed too.
Analyzed with the help of Greg Oster.

Revision 1.123.2.2: download - view: text, markup, annotated - select for diffs
Wed Mar 16 11:38:28 2005 UTC (19 years, 8 months ago) by tron
Branches: netbsd-2-0
CVS tags: netbsd-2-0-2-RELEASE
Diff to: previous 1.123.2.1: preferred, colored; branchpoint 1.123: preferred, colored
Changes since revision 1.123.2.1: +4 -3 lines
Pull up revision 1.128 via patch (requested by cube in ticket #1089):
fd_lastfile should be -1 when there are no opened file descriptors.
Hence, make find_last_set return -1 in such situation, and initialize it
such.  Otherwise, with 0 meaning two things, it confused the F_CLOSEM
fcntl which could end up looping indifintely (PR#28929 by Brian Marcotte).
However, this change enlightens another bug in fdcopy(), where more entries
than needed were cleared in the new file descriptor table, so the memset()
call there is fixed too.
Analyzed with the help of Greg Oster.

Revision 1.110.2.9: download - view: text, markup, annotated - select for diffs
Fri Mar 4 16:51:58 2005 UTC (19 years, 9 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.110.2.8: preferred, colored
Changes since revision 1.110.2.8: +6 -6 lines
Sync with HEAD.

Hi Perry!

Revision 1.131: download - view: text, markup, annotated - select for diffs
Sat Feb 26 21:34:55 2005 UTC (19 years, 9 months ago) by perry
Branches: MAIN
CVS tags: yamt-km-base4, yamt-km-base3, netbsd-3-base, kent-audio2-base
Branch point for: netbsd-3
Diff to: previous 1.130: preferred, colored
Changes since revision 1.130: +6 -6 lines
nuke trailing whitespace

Revision 1.110.2.8: download - view: text, markup, annotated - select for diffs
Thu Feb 24 17:22:33 2005 UTC (19 years, 9 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.110.2.7: preferred, colored
Changes since revision 1.110.2.7: +4 -4 lines
Reduce diff to HEAD

Revision 1.110.2.7: download - view: text, markup, annotated - select for diffs
Tue Feb 15 21:33:29 2005 UTC (19 years, 9 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.110.2.6: preferred, colored
Changes since revision 1.110.2.6: +5 -5 lines
Sync with HEAD.

Revision 1.130: download - view: text, markup, annotated - select for diffs
Sat Feb 12 23:14:03 2005 UTC (19 years, 9 months ago) by christos
Branches: MAIN
Diff to: previous 1.129: preferred, colored
Changes since revision 1.129: +5 -5 lines
pass the flag to fdclone.

Revision 1.110.2.6: download - view: text, markup, annotated - select for diffs
Mon Jan 17 19:32:25 2005 UTC (19 years, 10 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.110.2.5: preferred, colored
Changes since revision 1.110.2.5: +11 -6 lines
Sync with HEAD.

Revision 1.129: download - view: text, markup, annotated - select for diffs
Fri Jan 14 00:25:12 2005 UTC (19 years, 10 months ago) by cube
Branches: MAIN
CVS tags: yamt-km-base2, yamt-km-base
Branch point for: yamt-km, kent-audio2
Diff to: previous 1.128: preferred, colored
Changes since revision 1.128: +3 -3 lines
As fd_lastfile might be negative, we can't use the (u_int) cast trick to
compare fd and fdp->fd_lastfile in fdrelease(), so change the test to a
more explicit one.  Spotted by Matt Thomas.

Should fix the panic reported by Matthias Scheler.

Revision 1.128: download - view: text, markup, annotated - select for diffs
Wed Jan 12 20:41:45 2005 UTC (19 years, 10 months ago) by cube
Branches: MAIN
Diff to: previous 1.127: preferred, colored
Changes since revision 1.127: +10 -5 lines
fd_lastfile should be -1 when there are no opened file descriptors.
Hence, make find_last_set return -1 in such situation, and initialize it
such.  Otherwise, with 0 meaning two things, it confused the F_CLOSEM
fcntl which could end up looping indifintely (PR#28929 by Brian Marcotte).

However, this change enlightens another bug in fdcopy(), where more entries
than needed were cleared in the new file descriptor table, so the memset()
call there is fixed too.

Analyzed with the help of Greg Oster.

Revision 1.110.2.5: download - view: text, markup, annotated - select for diffs
Sat Dec 18 09:32:35 2004 UTC (19 years, 11 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.110.2.4: preferred, colored
Changes since revision 1.110.2.4: +57 -8 lines
Sync with HEAD.

Revision 1.127: download - view: text, markup, annotated - select for diffs
Tue Nov 30 04:25:43 2004 UTC (20 years ago) by christos
Branches: MAIN
CVS tags: kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Diff to: previous 1.126: preferred, colored
Changes since revision 1.126: +56 -7 lines
Cloning cleanup:
1. make fileops const
2. add 2 new negative errno's to `officially' support the cloning hack:
    - EDUPFD (used to overload ENODEV)
    - EMOVEFD (used to overload ENXIO)
3. Created an fdclone() function to encapsulate the operations needed for
   EMOVEFD, and made all cloners use it.
4. Centralize the local noop/badop fileops functions to:
   fnullop_fcntl, fnullop_poll, fnullop_kqfilter, fbadop_stat

Revision 1.110.2.4: download - view: text, markup, annotated - select for diffs
Tue Sep 21 13:35:03 2004 UTC (20 years, 2 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.110.2.3: preferred, colored
Changes since revision 1.110.2.3: +76 -65 lines
Fix the sync with head I botched.

Revision 1.110.2.3: download - view: text, markup, annotated - select for diffs
Sat Sep 18 14:53:02 2004 UTC (20 years, 2 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.110.2.2: preferred, colored
Changes since revision 1.110.2.2: +65 -76 lines
Sync with HEAD.

Revision 1.110.2.2: download - view: text, markup, annotated - select for diffs
Tue Aug 3 10:52:44 2004 UTC (20 years, 4 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.110.2.1: preferred, colored
Changes since revision 1.110.2.1: +423 -139 lines
Sync with HEAD

Revision 1.123.2.1: download - view: text, markup, annotated - select for diffs
Sat Jul 10 14:21:25 2004 UTC (20 years, 5 months ago) by tron
Branches: netbsd-2-0
CVS tags: netbsd-2-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-1-RELEASE
Branch point for: netbsd-2
Diff to: previous 1.123: preferred, colored
Changes since revision 1.123: +17 -5 lines
Pull up revision 1.124 (requested by tls in ticket #634):
add assertions related to file descriptor allocation.

Revision 1.126: download - view: text, markup, annotated - select for diffs
Mon May 31 15:30:55 2004 UTC (20 years, 6 months ago) by pk
Branches: MAIN
Diff to: previous 1.125: preferred, colored
Changes since revision 1.125: +166 -78 lines
Implement mutexes for file descriptor and current working directory access.
Fix a potential race condition when reallocating storage for file descriptors
(even for non-SMP kernels).
Add missing locks for `struct file' ref count updates.

Revision 1.125: download - view: text, markup, annotated - select for diffs
Sun Apr 25 16:42:41 2004 UTC (20 years, 7 months ago) by simonb
Branches: MAIN
Diff to: previous 1.124: preferred, colored
Changes since revision 1.124: +8 -20 lines
Initialise (most) pools from a link set instead of explicit calls
to pool_init.  Untouched pools are ones that either in arch-specific
code, or aren't initialiased during initial system startup.

 Convert struct session, ucred and lockf to pools.

Revision 1.124: download - view: text, markup, annotated - select for diffs
Mon Apr 5 10:10:29 2004 UTC (20 years, 8 months ago) by yamt
Branches: MAIN
Diff to: previous 1.123: preferred, colored
Changes since revision 1.123: +17 -5 lines
add assertions related to file descriptor allocation.

Revision 1.123: download - view: text, markup, annotated - select for diffs
Wed Jan 7 09:26:29 2004 UTC (20 years, 11 months ago) by jdolecek
Branches: MAIN
CVS tags: netbsd-2-0-base
Branch point for: netbsd-2-0
Diff to: previous 1.122: preferred, colored
Changes since revision 1.122: +4 -3 lines
fix F_MAXFD fcntl - it returned the value as errno instead
of return value from the syscall
from mouss <usebsd at free dot fr>

Revision 1.122: download - view: text, markup, annotated - select for diffs
Mon Jan 5 00:36:49 2004 UTC (20 years, 11 months ago) by christos
Branches: MAIN
Diff to: previous 1.121: preferred, colored
Changes since revision 1.121: +19 -3 lines
Ad F_CLOSEM, F_MAXFD from Matt Thomas.

Revision 1.121: download - view: text, markup, annotated - select for diffs
Sun Nov 30 18:16:45 2003 UTC (21 years ago) by provos
Branches: MAIN
Diff to: previous 1.120: preferred, colored
Changes since revision 1.120: +3 -3 lines
fix off by one in find_last_set(); triggered for processes that have no
open file descriptors; found by tim robbins from freebsd

Revision 1.120: download - view: text, markup, annotated - select for diffs
Wed Nov 26 12:42:28 2003 UTC (21 years ago) by yamt
Branches: MAIN
Diff to: previous 1.119: preferred, colored
Changes since revision 1.119: +4 -2 lines
fdcopy: copy inline bitmaps properly.
hopefully fixes PR/23469.

Revision 1.119: download - view: text, markup, annotated - select for diffs
Sun Nov 9 07:57:15 2003 UTC (21 years, 1 month ago) by yamt
Branches: MAIN
Diff to: previous 1.118: preferred, colored
Changes since revision 1.118: +4 -4 lines
fix typos in comments.

Revision 1.118: download - view: text, markup, annotated - select for diffs
Sun Nov 9 07:55:38 2003 UTC (21 years, 1 month ago) by yamt
Branches: MAIN
Diff to: previous 1.117: preferred, colored
Changes since revision 1.117: +15 -14 lines
- fix an use-after-free bug in /dev/fd/* handling.
  specifically, don't keep a stale pointer in fd_ofiles.
  it isn't needed anymore as fd allocation is now done using bitmaps.
- clean up dupfdopen() a little.
- don't call fd_used() unnecessarily.

Revision 1.117: download - view: text, markup, annotated - select for diffs
Sun Nov 9 07:52:26 2003 UTC (21 years, 1 month ago) by yamt
Branches: MAIN
Diff to: previous 1.116: preferred, colored
Changes since revision 1.116: +8 -8 lines
in the non-overwritten case of sys_dup2(),
call fd_used() by itsself rather than leaving it to finishdup().

Revision 1.116: download - view: text, markup, annotated - select for diffs
Sat Nov 1 18:47:16 2003 UTC (21 years, 1 month ago) by provos
Branches: MAIN
Diff to: previous 1.115: preferred, colored
Changes since revision 1.115: +4 -4 lines
use fdremove to remove kqueue file descriptor so that bitmap information
is maintained correctly; found by Juergen Hannken-Illjes

Revision 1.115: download - view: text, markup, annotated - select for diffs
Thu Oct 30 07:27:02 2003 UTC (21 years, 1 month ago) by provos
Branches: MAIN
Diff to: previous 1.114: preferred, colored
Changes since revision 1.114: +145 -15 lines
use a two-level bitmap as suggested by mogul and banga for fdalloc;
approved thorpej@

Revision 1.114: download - view: text, markup, annotated - select for diffs
Mon Sep 22 12:59:55 2003 UTC (21 years, 2 months ago) by christos
Branches: MAIN
Diff to: previous 1.113: preferred, colored
Changes since revision 1.113: +4 -4 lines
- pass signo to fownsignal [ok by jd]
- make urg signal handling use fownsignal
- remove out of band detection in sowakeup

Revision 1.113: download - view: text, markup, annotated - select for diffs
Sun Sep 21 19:17:03 2003 UTC (21 years, 2 months ago) by jdolecek
Branches: MAIN
Diff to: previous 1.112: preferred, colored
Changes since revision 1.112: +74 -24 lines
cleanup & uniform descriptor owner handling:
* introduce fsetown(), fgetown(), fownsignal() - this sets/retrieves/signals
  the owner of descriptor, according to appropriate sematics
  of TIOCSPGRP/FIOSETOWN/SIOCSPGRP/TIOCGPGRP/FIOGETOWN/SIOCGPGRP ioctl; use
  these routines instead of custom code where appropriate
* make every place handling TIOCSPGRP/TIOCGPGRP handle also FIOSETOWN/FIOGETOWN
  properly, and remove the translation of FIO[SG]OWN to TIOC[SG]PGRP
  in sys_ioctl() & sys_fcntl()
* also remove the socket-specific hack in sys_ioctl()/sys_fcntl() and
  pass the ioctls down to soo_ioctl() as any other ioctl

change discussed on tech-kern@

Revision 1.112: download - view: text, markup, annotated - select for diffs
Sat Sep 13 08:32:13 2003 UTC (21 years, 2 months ago) by jdolecek
Branches: MAIN
Diff to: previous 1.111: preferred, colored
Changes since revision 1.111: +4 -4 lines
move dupfd from struct proc to struct lwp - it's per-LWP, not per-process; we
use curlwp where the lwp is not directly available, i.e. in device open
routines

briefly discussed on tech-kern

Revision 1.111: download - view: text, markup, annotated - select for diffs
Thu Aug 7 16:31:43 2003 UTC (21 years, 4 months ago) by agc
Branches: MAIN
Diff to: previous 1.110: preferred, colored
Changes since revision 1.110: +3 -7 lines
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.

Revision 1.110.2.1: download - view: text, markup, annotated - select for diffs
Wed Jul 2 15:26:36 2003 UTC (21 years, 5 months ago) by darrenr
Branches: ktrace-lwp
Diff to: previous 1.110: preferred, colored
Changes since revision 1.110: +75 -64 lines
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.110: download - view: text, markup, annotated - select for diffs
Sun Jun 29 22:31:18 2003 UTC (21 years, 5 months ago) by fvdl
Branches: MAIN
Branch point for: ktrace-lwp
Diff to: previous 1.109: preferred, colored
Changes since revision 1.109: +62 -73 lines
Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.

Revision 1.109: download - view: text, markup, annotated - select for diffs
Sat Jun 28 14:21:53 2003 UTC (21 years, 5 months ago) by darrenr
Branches: MAIN
Diff to: previous 1.108: preferred, colored
Changes since revision 1.108: +75 -64 lines
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.108: download - view: text, markup, annotated - select for diffs
Fri May 16 14:40:41 2003 UTC (21 years, 6 months ago) by itojun
Branches: MAIN
Diff to: previous 1.107: preferred, colored
Changes since revision 1.107: +3 -3 lines
use strlcat

Revision 1.107: download - view: text, markup, annotated - select for diffs
Sat Mar 22 10:39:47 2003 UTC (21 years, 8 months ago) by dsl
Branches: MAIN
Diff to: previous 1.106: preferred, colored
Changes since revision 1.106: +24 -14 lines
Correct rewinding if FIONBIO or FIOASYNC fail in F_SETFL
(code use to always turn off FIONBIO if FIOASYNC fails)
(approved by christos)

Revision 1.106: download - view: text, markup, annotated - select for diffs
Sat Mar 22 10:35:01 2003 UTC (21 years, 8 months ago) by dsl
Branches: MAIN
Diff to: previous 1.105: preferred, colored
Changes since revision 1.105: +25 -31 lines
Change caddr_t to void *

Revision 1.105: download - view: text, markup, annotated - select for diffs
Mon Mar 17 07:57:13 2003 UTC (21 years, 8 months ago) by martin
Branches: MAIN
Diff to: previous 1.104: preferred, colored
Changes since revision 1.104: +3 -3 lines
When being passed bogus file descriptors make close(2) return EBADF.
From Stephen Ma in PR kern/20762.

Revision 1.104: download - view: text, markup, annotated - select for diffs
Sat Mar 1 09:19:53 2003 UTC (21 years, 9 months ago) by yamt
Branches: MAIN
Diff to: previous 1.103: preferred, colored
Changes since revision 1.103: +5 -3 lines
make fdcheckstd f_slock friendly.

Revision 1.103: download - view: text, markup, annotated - select for diffs
Sun Feb 23 14:37:33 2003 UTC (21 years, 9 months ago) by pk
Branches: MAIN
Diff to: previous 1.102: preferred, colored
Changes since revision 1.102: +42 -8 lines
Make updating a file's reference and use count MP-safe.

Revision 1.102: download - view: text, markup, annotated - select for diffs
Fri Feb 14 21:50:10 2003 UTC (21 years, 9 months ago) by pk
Branches: MAIN
Diff to: previous 1.101: preferred, colored
Changes since revision 1.101: +13 -3 lines
Use a mutex to protect the global list of open files.

Revision 1.101: download - view: text, markup, annotated - select for diffs
Sat Feb 1 06:23:42 2003 UTC (21 years, 10 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.100: preferred, colored
Changes since revision 1.100: +6 -2 lines
Add extensible malloc types, adapted from FreeBSD.  This turns
malloc types into a structure, a pointer to which is passed around,
instead of an int constant.  Allow the limit to be adjusted when the
malloc type is defined, or with a function call, as suggested by
Jonathan Stone.

Revision 1.100: download - view: text, markup, annotated - select for diffs
Sun Jan 19 22:54:47 2003 UTC (21 years, 10 months ago) by simonb
Branches: MAIN
Diff to: previous 1.99: preferred, colored
Changes since revision 1.99: +3 -4 lines
Remove variable that is only assigned too but not referenced.

Revision 1.99: download - view: text, markup, annotated - select for diffs
Sat Jan 18 10:06:24 2003 UTC (21 years, 10 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.98: preferred, colored
Changes since revision 1.98: +24 -9 lines
Merge the nathanw_sa branch.

Revision 1.72.2.17: download - view: text, markup, annotated - select for diffs
Tue Jan 7 21:37:16 2003 UTC (21 years, 11 months ago) by thorpej
Branches: nathanw_sa
CVS tags: nathanw_sa_end
Diff to: previous 1.72.2.16: preferred, colored; next MAIN 1.73: preferred, colored
Changes since revision 1.72.2.16: +3 -3 lines
Sync with HEAD.

Revision 1.98: download - view: text, markup, annotated - select for diffs
Mon Jan 6 13:19:53 2003 UTC (21 years, 11 months ago) by wiz
Branches: MAIN
CVS tags: nathanw_sa_before_merge, nathanw_sa_base
Diff to: previous 1.97: preferred, colored
Changes since revision 1.97: +3 -3 lines
descriptor, not decriptor.

Revision 1.72.2.16: download - view: text, markup, annotated - select for diffs
Wed Dec 11 06:43:02 2002 UTC (22 years ago) by thorpej
Branches: nathanw_sa
Diff to: previous 1.72.2.15: preferred, colored
Changes since revision 1.72.2.15: +1 -1 lines
Sync with HEAD.

Revision 1.97: download - view: text, markup, annotated - select for diffs
Sun Nov 24 11:37:54 2002 UTC (22 years ago) by scw
Branches: MAIN
CVS tags: gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base
Diff to: previous 1.96: preferred, colored
Changes since revision 1.96: +3 -3 lines
Quell uninitialised variable warnings.

Revision 1.72.2.15: download - view: text, markup, annotated - select for diffs
Mon Nov 11 22:13:36 2002 UTC (22 years, 1 month ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.14: preferred, colored
Changes since revision 1.72.2.14: +31 -1 lines
Catch up to -current

Revision 1.96: download - view: text, markup, annotated - select for diffs
Wed Oct 23 09:14:13 2002 UTC (22 years, 1 month ago) by jdolecek
Branches: MAIN
CVS tags: kqueue-aftermerge
Diff to: previous 1.95: preferred, colored
Changes since revision 1.95: +33 -3 lines
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.72.2.14: download - view: text, markup, annotated - select for diffs
Fri Oct 18 02:44:50 2002 UTC (22 years, 1 month ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.13: preferred, colored
Changes since revision 1.72.2.13: +0 -2 lines
Catch up to -current.

Revision 1.79.2.10: download - view: text, markup, annotated - select for diffs
Sat Oct 12 10:30:37 2002 UTC (22 years, 2 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.79.2.9: preferred, colored; next MAIN 1.80: preferred, colored
Changes since revision 1.79.2.9: +5 -3 lines
need knote_fdclose() in finishdup()

Revision 1.79.2.9: download - view: text, markup, annotated - select for diffs
Thu Oct 10 18:43:04 2002 UTC (22 years, 2 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.79.2.8: preferred, colored
Changes since revision 1.79.2.8: +9 -4 lines
sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work

Revision 1.95: download - view: text, markup, annotated - select for diffs
Mon Sep 23 04:19:16 2002 UTC (22 years, 2 months ago) by simonb
Branches: MAIN
CVS tags: kqueue-beforemerge, kqueue-base
Diff to: previous 1.94: preferred, colored
Changes since revision 1.94: +2 -4 lines
fp->f_count is unsigned, don't check if it's less than zero.

Revision 1.72.2.13: download - view: text, markup, annotated - select for diffs
Tue Sep 17 21:21:59 2002 UTC (22 years, 2 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.12: preferred, colored
Changes since revision 1.72.2.12: +9 -2 lines
Catch up to -current.

Revision 1.94: download - view: text, markup, annotated - select for diffs
Fri Sep 6 13:18:43 2002 UTC (22 years, 3 months ago) by gehenna
Branches: MAIN
Diff to: previous 1.93: preferred, colored
Changes since revision 1.93: +9 -2 lines
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.79.2.8: download - view: text, markup, annotated - select for diffs
Fri Sep 6 08:47:45 2002 UTC (22 years, 3 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.79.2.7: preferred, colored
Changes since revision 1.79.2.7: +4 -3 lines
sync kqueue branch with HEAD

Revision 1.92.2.2: download - view: text, markup, annotated - select for diffs
Mon Jul 15 10:36:29 2002 UTC (22 years, 4 months ago) by gehenna
Branches: gehenna-devsw
Diff to: previous 1.92.2.1: preferred, colored; branchpoint 1.92: preferred, colored; next MAIN 1.93: preferred, colored
Changes since revision 1.92.2.1: +4 -3 lines
catch up with -current.

Revision 1.72.2.12: download - view: text, markup, annotated - select for diffs
Fri Jul 12 01:40:13 2002 UTC (22 years, 5 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.11: preferred, colored
Changes since revision 1.72.2.11: +2 -3 lines
No longer need to pull in lwp.h; proc.h pulls it in for us.

Revision 1.72.2.11: download - view: text, markup, annotated - select for diffs
Wed Jul 10 22:34:15 2002 UTC (22 years, 5 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.10: preferred, colored
Changes since revision 1.72.2.10: +7 -7 lines
Whitespace.

Revision 1.79.2.7: download - view: text, markup, annotated - select for diffs
Sun Jun 23 17:49:26 2002 UTC (22 years, 5 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.79.2.6: preferred, colored
Changes since revision 1.79.2.6: +98 -22 lines
catch up with -current on kqueue branch

Revision 1.72.2.10: download - view: text, markup, annotated - select for diffs
Thu Jun 20 03:47:10 2002 UTC (22 years, 5 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.9: preferred, colored
Changes since revision 1.72.2.9: +100 -23 lines
Catch up to -current.

Revision 1.93: download - view: text, markup, annotated - select for diffs
Tue Jun 18 02:04:08 2002 UTC (22 years, 5 months ago) by thorpej
Branches: MAIN
CVS tags: gehenna-devsw-base
Diff to: previous 1.92: preferred, colored
Changes since revision 1.92: +4 -3 lines
sys_fpathconf: Don't panic in the default case; just return EOPNOTSUPP.

Revision 1.72.2.9: download - view: text, markup, annotated - select for diffs
Wed May 29 21:33:09 2002 UTC (22 years, 6 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.8: preferred, colored
Changes since revision 1.72.2.8: +3 -2 lines
#include <sys/sa.h> before <sys/syscallargs.h>, to provide sa_upcall_t
now that <sys/param.h> doesn't include <sys/sa.h>.

(Behold the Power of Ed)

Revision 1.92.2.1: download - view: text, markup, annotated - select for diffs
Thu May 16 04:07:56 2002 UTC (22 years, 6 months ago) by gehenna
Branches: gehenna-devsw
Diff to: previous 1.92: preferred, colored
Changes since revision 1.92: +9 -2 lines
Add the character device switch.

Revision 1.92: download - view: text, markup, annotated - select for diffs
Thu May 9 17:57:07 2002 UTC (22 years, 7 months ago) by atatat
Branches: MAIN
CVS tags: 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
Branch point for: gehenna-devsw
Diff to: previous 1.91: preferred, colored
Changes since revision 1.91: +18 -13 lines
Maintain a short list of the actual descriptors that were closed and
log that intead of being ambiguous about which of 0, 1, and/or 2 it
was that was closed.

Revision 1.91: download - view: text, markup, annotated - select for diffs
Sun Apr 28 22:35:19 2002 UTC (22 years, 7 months ago) by enami
Branches: MAIN
Diff to: previous 1.90: preferred, colored
Changes since revision 1.90: +9 -4 lines
Log who invoked the s[ug]id program.  Tested by mozilla.

Revision 1.90: download - view: text, markup, annotated - select for diffs
Sat Apr 27 21:36:50 2002 UTC (22 years, 7 months ago) by enami
Branches: MAIN
Diff to: previous 1.89: preferred, colored
Changes since revision 1.89: +18 -20 lines
A loop to expand file descriptor table and retry is move from fdalloc()
to caller.  So, no longer need to loop in fdalloc().

Revision 1.89: download - view: text, markup, annotated - select for diffs
Sat Apr 27 21:31:41 2002 UTC (22 years, 7 months ago) by enami
Branches: MAIN
Diff to: previous 1.88: preferred, colored
Changes since revision 1.88: +10 -10 lines
KNF.

Revision 1.67.4.8: download - view: text, markup, annotated - select for diffs
Sat Apr 27 15:52:56 2002 UTC (22 years, 7 months ago) by he
Branches: netbsd-1-5
CVS tags: netbsd-1-5-PATCH003
Diff to: previous 1.67.4.7: preferred, colored; branchpoint 1.67: preferred, colored; next MAIN 1.68: preferred, colored
Changes since revision 1.67.4.7: +2 -5 lines
Apply patch (requested by christos):
  Adapt previous pull-up to the branch.

Revision 1.67.4.7: download - view: text, markup, annotated - select for diffs
Fri Apr 26 17:51:19 2002 UTC (22 years, 7 months ago) by he
Branches: netbsd-1-5
Diff to: previous 1.67.4.6: preferred, colored; branchpoint 1.67: preferred, colored
Changes since revision 1.67.4.6: +69 -1 lines
Pull up revisions 1.86-1.88 (requested by christos):
  If a set{u,g}id binary is invoked with fd < 3 closed, open those
  file desciptors to /dev/null.

Revision 1.88: download - view: text, markup, annotated - select for diffs
Wed Apr 24 16:09:24 2002 UTC (22 years, 7 months ago) by christos
Branches: MAIN
Diff to: previous 1.87: preferred, colored
Changes since revision 1.87: +7 -2 lines
Avoid file use underflow; thanks to YAMAMOTO Takashi for noticing.

Revision 1.87: download - view: text, markup, annotated - select for diffs
Tue Apr 23 17:20:58 2002 UTC (22 years, 7 months ago) by christos
Branches: MAIN
Diff to: previous 1.86: preferred, colored
Changes since revision 1.86: +6 -4 lines
Don't forget to set mature and unuse the file.

Revision 1.86: download - view: text, markup, annotated - select for diffs
Tue Apr 23 15:11:25 2002 UTC (22 years, 7 months ago) by christos
Branches: MAIN
Diff to: previous 1.85: preferred, colored
Changes since revision 1.85: +63 -2 lines
From OpenBSD, via FreeBSD: If a set{u,g}id binary is invoked with fd < 3
closed, open those fds to /dev/null.

XXX: This needs to be fixed in a better way. The kernel should not need to
know about /dev/null or special case 0, 1, 2.

Revision 1.72.2.8: download - view: text, markup, annotated - select for diffs
Mon Apr 1 07:47:51 2002 UTC (22 years, 8 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.7: preferred, colored
Changes since revision 1.72.2.7: +5 -5 lines
Catch up to -current.
(CVS: It's not just a program. It's an adventure!)

Revision 1.79.2.6: download - view: text, markup, annotated - select for diffs
Sat Mar 16 16:01:46 2002 UTC (22 years, 8 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.79.2.5: preferred, colored
Changes since revision 1.79.2.5: +5 -5 lines
Catch up with -current.

Revision 1.79.2.5: download - view: text, markup, annotated - select for diffs
Fri Mar 15 19:13:16 2002 UTC (22 years, 8 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.79.2.4: preferred, colored
Changes since revision 1.79.2.4: +4 -3 lines
fdfree(): fix the argument to knote_fdfree() - 'i' is not the the descriptor
	value, it's index counting from fdp->fd_lastfile down; this fixes
	deadlock in closef() when watched descriptor is lower than the
	kqueue one and the process has open further descriptors

finishdup(): add comment a knote_fdfree() call is needed there; will address
	this later

Revision 1.85: download - view: text, markup, annotated - select for diffs
Fri Mar 8 20:48:40 2002 UTC (22 years, 9 months ago) by thorpej
Branches: MAIN
CVS tags: newlock-base, newlock, eeh-devprop-base, eeh-devprop
Diff to: previous 1.84: preferred, colored
Changes since revision 1.84: +5 -5 lines
Pool deals fairly well with physical memory shortage, but it doesn't
deal with shortages of the VM maps where the backing pages are mapped
(usually kmem_map).  Try to deal with this:

* Group all information about the backend allocator for a pool in a
  separate structure.  The pool references this structure, rather than
  the individual fields.
* Change the pool_init() API accordingly, and adjust all callers.
* Link all pools using the same backend allocator on a list.
* The backend allocator is responsible for waiting for physical memory
  to become available, but will still fail if it cannot callocate KVA
  space for the pages.  If this happens, carefully drain all pools using
  the same backend allocator, so that some KVA space can be freed.
* Change pool_reclaim() to indicate if it actually succeeded in freeing
  some pages, and use that information to make draining easier and more
  efficient.
* Get rid of PR_URGENT.  There was only one use of it, and it could be
  dealt with by the caller.

From art@openbsd.org.

Revision 1.72.2.7: download - view: text, markup, annotated - select for diffs
Thu Feb 28 04:14:43 2002 UTC (22 years, 9 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.6: preferred, colored
Changes since revision 1.72.2.6: +4 -4 lines
Catch up to -current.

Revision 1.79.2.4: download - view: text, markup, annotated - select for diffs
Mon Feb 11 20:10:22 2002 UTC (22 years, 10 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.79.2.3: preferred, colored
Changes since revision 1.79.2.3: +4 -4 lines
Sync w/ -current.

Revision 1.67.4.6: download - view: text, markup, annotated - select for diffs
Sat Feb 9 22:56:01 2002 UTC (22 years, 10 months ago) by he
Branches: netbsd-1-5
Diff to: previous 1.67.4.5: preferred, colored; branchpoint 1.67: preferred, colored
Changes since revision 1.67.4.5: +2 -2 lines
Apply patch (requested by windsor):
  Correct typo in previous pull-up.

Revision 1.67.4.5: download - view: text, markup, annotated - select for diffs
Sat Feb 9 19:50:24 2002 UTC (22 years, 10 months ago) by he
Branches: netbsd-1-5
Diff to: previous 1.67.4.4: preferred, colored; branchpoint 1.67: preferred, colored
Changes since revision 1.67.4.4: +3 -3 lines
Pull up revision 1.84 (via patch, requested by kleink):
  Fix an LP64-BE bug with fctnl(..., F_GETOWN, ...).

Revision 1.84: download - view: text, markup, annotated - select for diffs
Thu Jan 31 22:17:33 2002 UTC (22 years, 10 months ago) by kleink
Branches: MAIN
CVS tags: ifpoll-base
Diff to: previous 1.83: preferred, colored
Changes since revision 1.83: +4 -4 lines
fcntl(..., F_GETOWN, ...): fix LP64-BE bug; raised by der Mouse
on tech-kern.

Revision 1.79.2.3: download - view: text, markup, annotated - select for diffs
Thu Jan 10 19:59:45 2002 UTC (22 years, 11 months ago) by thorpej
Branches: kqueue
Diff to: previous 1.79.2.2: preferred, colored
Changes since revision 1.79.2.2: +4 -1 lines
Sync kqueue branch with -current.

Revision 1.72.2.6: download - view: text, markup, annotated - select for diffs
Tue Jan 8 00:32:30 2002 UTC (22 years, 11 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.5: preferred, colored
Changes since revision 1.72.2.5: +2 -2 lines
Catch up to -current.

Revision 1.83: download - view: text, markup, annotated - select for diffs
Fri Dec 7 07:09:29 2001 UTC (23 years ago) by jdolecek
Branches: MAIN
Diff to: previous 1.82: preferred, colored
Changes since revision 1.82: +5 -5 lines
Back off previous for now, Jason thinks it's not right. Will discuss
on tech-kern@

Revision 1.82: download - view: text, markup, annotated - select for diffs
Thu Dec 6 22:34:24 2001 UTC (23 years ago) by jdolecek
Branches: MAIN
Diff to: previous 1.81: preferred, colored
Changes since revision 1.81: +5 -5 lines
replace FIF_WANTCLOSE/FIF_LARVAL with FWANTCLOSE/FLARVAL, which are set
in f_flag of struct file
for now, keep former f_iflags of struct file as _f_spare0, it will be g/c'ed
when struct file will be changed (this will happen soon)

Revision 1.72.2.5: download - view: text, markup, annotated - select for diffs
Wed Nov 14 19:16:34 2001 UTC (23 years ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.4: preferred, colored
Changes since revision 1.72.2.4: +4 -1 lines
Catch up to -current.

Revision 1.80.4.1: download - view: text, markup, annotated - select for diffs
Mon Nov 12 21:18:46 2001 UTC (23 years, 1 month ago) by thorpej
Branches: thorpej-mips-cache
Diff to: previous 1.80: preferred, colored; next MAIN 1.81: preferred, colored
Changes since revision 1.80: +4 -1 lines
Sync the thorpej-mips-cache branch with -current.

Revision 1.81: download - view: text, markup, annotated - select for diffs
Mon Nov 12 15:25:07 2001 UTC (23 years, 1 month ago) by lukem
Branches: MAIN
CVS tags: thorpej-mips-cache-base
Diff to: previous 1.80: preferred, colored
Changes since revision 1.80: +4 -1 lines
add RCSIDs

Revision 1.80.2.1: download - view: text, markup, annotated - select for diffs
Fri Sep 7 04:45:36 2001 UTC (23 years, 3 months ago) by thorpej
Branches: thorpej-devvp
Diff to: previous 1.80: preferred, colored; next MAIN 1.81: preferred, colored
Changes since revision 1.80: +5 -3 lines
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.72.2.4: download - view: text, markup, annotated - select for diffs
Fri Aug 24 00:11:26 2001 UTC (23 years, 3 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.3: preferred, colored
Changes since revision 1.72.2.3: +8 -2 lines
Catch up with -current.

Revision 1.79.2.2: download - view: text, markup, annotated - select for diffs
Fri Aug 3 04:13:40 2001 UTC (23 years, 4 months ago) by lukem
Branches: kqueue
Diff to: previous 1.79.2.1: preferred, colored
Changes since revision 1.79.2.1: +4 -1 lines
update to -current

Revision 1.67.4.4: download - view: text, markup, annotated - select for diffs
Sun Jul 29 20:02:05 2001 UTC (23 years, 4 months ago) by he
Branches: netbsd-1-5
CVS tags: netbsd-1-5-PATCH002
Diff to: previous 1.67.4.3: preferred, colored; branchpoint 1.67: preferred, colored
Changes since revision 1.67.4.3: +6 -2 lines
Pull up revision 1.80 (via patch, requested by thorpej):
  Unshare the file descriptor table and ``cwdinfo'' when we exec.

Revision 1.80: download - view: text, markup, annotated - select for diffs
Wed Jul 18 05:34:37 2001 UTC (23 years, 4 months ago) by thorpej
Branches: MAIN
CVS tags: thorpej-devvp-base3, thorpej-devvp-base2, thorpej-devvp-base, pre-chs-ubcperf, post-chs-ubcperf
Branch point for: thorpej-mips-cache, thorpej-devvp
Diff to: previous 1.79: preferred, colored
Changes since revision 1.79: +4 -1 lines
Unshare the file descriptor table and `cwdinfo' when we exec.
From Matthew Orgass <darkstar@pgh.net>.

Revision 1.79.2.1: download - view: text, markup, annotated - select for diffs
Tue Jul 10 13:44:32 2001 UTC (23 years, 5 months ago) by lukem
Branches: kqueue
Diff to: previous 1.79: preferred, colored
Changes since revision 1.79: +29 -2 lines
create and destroy fd_kn{list,hash} entries as appropriate (for kqueue use)

Revision 1.79: download - view: text, markup, annotated - select for diffs
Sun Jul 1 18:12:00 2001 UTC (23 years, 5 months ago) by thorpej
Branches: MAIN
Branch point for: kqueue
Diff to: previous 1.78: preferred, colored
Changes since revision 1.78: +5 -2 lines
Duh, use fd_getfile() in sys_close().

Revision 1.72.2.3: download - view: text, markup, annotated - select for diffs
Thu Jun 21 20:06:46 2001 UTC (23 years, 5 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.2: preferred, colored
Changes since revision 1.72.2.2: +127 -68 lines
Catch up to -current.

Revision 1.78: download - view: text, markup, annotated - select for diffs
Sat Jun 16 08:28:39 2001 UTC (23 years, 5 months ago) by jdolecek
Branches: MAIN
Diff to: previous 1.77: preferred, colored
Changes since revision 1.77: +2 -1 lines
Add DTYPE_PIPE (to be used by new pipe implementation) and handle
it accordingly.

Revision 1.77: download - view: text, markup, annotated - select for diffs
Thu Jun 14 20:32:47 2001 UTC (23 years, 5 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.76: preferred, colored
Changes since revision 1.76: +33 -24 lines
Fix a partial construction problem that can cause race conditions
between creation of a file descriptor and close(2) when using kernel
assisted threads.  What we do is stick descriptors in the table, but
mark them as "larval".  This causes essentially everything to treat
it as a non-existent descriptor, except for fdalloc(), which sees a
filled slot so that it won't (incorrectly) allocate it again.  When
a descriptor is fully constructed, the code that has constructed it
marks it as "mature" (which actually clears the "larval" flag), and
things continue to work as normal.

While here, gather all the code that gets a descriptor from the table
into a fd_getfile() function, and call it, rather than having the
same (sometimes incorrect) code copied all over the place.

Revision 1.67.4.3: download - view: text, markup, annotated - select for diffs
Sun Jun 10 18:22:45 2001 UTC (23 years, 6 months ago) by he
Branches: netbsd-1-5
CVS tags: netbsd-1-5-PATCH001
Diff to: previous 1.67.4.2: preferred, colored; branchpoint 1.67: preferred, colored
Changes since revision 1.67.4.2: +45 -16 lines
Pull up revision 1.75 (via patch, requested by thorpej):
  Change fdalloc() to return ERESTART if reallocation of the
  descriptor array was needed, and change uses to handle that
  condition.  Make finishdup() close the descriptor in the new slot
  if it exists, and change sys_dup2() accordingly.  Closes a race
  condition when using kernel-assisted user threads.

Revision 1.76: download - view: text, markup, annotated - select for diffs
Thu Jun 7 01:29:16 2001 UTC (23 years, 6 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +58 -39 lines
Rework fdalloc() even further: split fdalloc() into fdalloc() and
fdexpand().  The former will return ENOSPC if there is not space
in the current filedesc table.  The latter performs the expansion
of the filedesc table.  This means that fdalloc() won't ever block,
and it gives callers an opportunity to clean up before the
potentially-blocking fdexpand() call.

Update all fdalloc() callers to deal with the need-to-fdexpand() case.

Rewrite unp_externalize() to use fdalloc() and fdexpand() in a
safe way, using an algorithm suggested by Bill Sommerfeld:
- Use a temporary array of integers to hold the new filedesc table
  indexes.  This allows us to repeat the loop if necessary.
- Loop through the array of file *'s, assigning them to filedesc table
  slots.  If fdalloc() indicates expansion is necessary, undo the
  assignments we've done so far, expand, and retry the whole process.
- Once all file *'s have been assigned to slots, update the f_msgcount
  and unp_rights counters.
- Right before we return, copy the temporary integer array to the message
  buffer, and trim the length as before.
Note that once locking is added to the filedesc array, this entire
operation will be `atomic', in that the lock will be held while
file *'s are assigned to embryonic table slots, thus preventing anything
else from using them.

Revision 1.75: download - view: text, markup, annotated - select for diffs
Wed Jun 6 17:00:00 2001 UTC (23 years, 6 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.74: preferred, colored
Changes since revision 1.74: +46 -16 lines
Change fdalloc() to return ERESTART if we had to reallocate the
descriptor array, which may have blocked.  Change callers of
fdalloc() to restart whatever they\'re doing if this condition
happens.  (XXX unp_externalize() needs some work, but that will
be tackled later.)

Change finishdup() to close the descriptor in the `new\' slot if
one exists, and change sys_dup2() accordingly.

Closes a race condition when using kernel-assisted user threads.

While here, garbage-collect UF_MAPPED -- it is not used anywhere.

Revision 1.61.2.3: download - view: text, markup, annotated - select for diffs
Sat Apr 21 17:46:28 2001 UTC (23 years, 7 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.61.2.2: preferred, colored; branchpoint 1.61: preferred, colored; next MAIN 1.62: preferred, colored
Changes since revision 1.61.2.2: +4 -16 lines
Sync with HEAD

Revision 1.74: download - view: text, markup, annotated - select for diffs
Mon Apr 9 10:22:02 2001 UTC (23 years, 8 months ago) by jdolecek
Branches: MAIN
CVS tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Diff to: previous 1.73: preferred, colored
Changes since revision 1.73: +2 -2 lines
Change the first arg to fileops fo_stat routine to struct file *, adjust
callers and appropriate routines to cope. This makes fo_stat more
consistent with rest of fileops routines and also makes the fo_stat
match FreeBSD as an added bonus.
Discussed with Luke Mewburn on tech-kern@.

Revision 1.72.2.2: download - view: text, markup, annotated - select for diffs
Mon Apr 9 01:57:52 2001 UTC (23 years, 8 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72.2.1: preferred, colored
Changes since revision 1.72.2.1: +4 -16 lines
Catch up with -current.

Revision 1.73: download - view: text, markup, annotated - select for diffs
Sat Apr 7 09:00:57 2001 UTC (23 years, 8 months ago) by jdolecek
Branches: MAIN
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +4 -16 lines
Add new 'stat' fileop and call the stat function via f_ops rather
than directly.
For compat syscalls, also add necessary FILE_USE()/FILE_UNUSE().
Now that soo_stat() gets a proc arg, pass it on to usrreq function.

Revision 1.61.2.2: download - view: text, markup, annotated - select for diffs
Mon Mar 12 13:31:35 2001 UTC (23 years, 9 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.61.2.1: preferred, colored; branchpoint 1.61: preferred, colored
Changes since revision 1.61.2.1: +163 -200 lines
Sync with HEAD.

Revision 1.72.2.1: download - view: text, markup, annotated - select for diffs
Mon Mar 5 22:49:39 2001 UTC (23 years, 9 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +27 -12 lines
Initial commit of scheduler activations and lightweight process support.

Revision 1.72: download - view: text, markup, annotated - select for diffs
Mon Feb 26 20:24:30 2001 UTC (23 years, 9 months ago) by lukem
Branches: MAIN
Branch point for: nathanw_sa
Diff to: previous 1.71: preferred, colored
Changes since revision 1.71: +163 -200 lines
convert to ANSI KNF

Revision 1.61.2.1: download - view: text, markup, annotated - select for diffs
Mon Nov 20 18:08:57 2000 UTC (24 years ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +74 -66 lines
Update thorpej_scsipi to -current as of a month ago

Revision 1.67.4.2: download - view: text, markup, annotated - select for diffs
Sat Aug 26 00:58:35 2000 UTC (24 years, 3 months ago) by mrg
Branches: netbsd-1-5
CVS tags: netbsd-1-5-RELEASE, netbsd-1-5-BETA2, netbsd-1-5-BETA
Diff to: previous 1.67.4.1: preferred, colored; branchpoint 1.67: preferred, colored
Changes since revision 1.67.4.1: +4 -4 lines
pull up 1.70, 1.71.  approved by thorpej:
1.70
>Fix LP64BE bug.
1.71
>Fix omission in previous.

Revision 1.71: download - view: text, markup, annotated - select for diffs
Tue Aug 15 17:54:59 2000 UTC (24 years, 3 months ago) by fvdl
Branches: MAIN
Diff to: previous 1.70: preferred, colored
Changes since revision 1.70: +2 -2 lines
Fix omission in previous.

Revision 1.70: download - view: text, markup, annotated - select for diffs
Tue Aug 15 16:26:42 2000 UTC (24 years, 3 months ago) by eeh
Branches: MAIN
Diff to: previous 1.69: preferred, colored
Changes since revision 1.69: +4 -4 lines
Fix LP64BE bug.

Revision 1.67.4.1: download - view: text, markup, annotated - select for diffs
Tue Jul 4 16:05:33 2000 UTC (24 years, 5 months ago) by jdolecek
Branches: netbsd-1-5
CVS tags: netbsd-1-5-ALPHA2
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +2 -2 lines
Pullup from trunk [approved by thorpej]:

change tablefull() to accept one more parameter - optional hint

use that to inform about way to raise current limit when we reach maximum
number of processes, descriptors or vnodes

Revision 1.69: download - view: text, markup, annotated - select for diffs
Tue Jul 4 15:33:31 2000 UTC (24 years, 5 months ago) by jdolecek
Branches: MAIN
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +2 -2 lines
change tablefull() to accept one more parameter - optional hint

use that to inform about way to raise current limit when we reach maximum
number of processes, descriptors or vnodes

XXX hopefully I catched all users of tablefull()

Revision 1.68: download - view: text, markup, annotated - select for diffs
Tue Jun 27 17:41:16 2000 UTC (24 years, 5 months ago) by mrg
Branches: MAIN
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +1 -3 lines
remove include of <vm/vm.h>

Revision 1.67: download - view: text, markup, annotated - select for diffs
Fri May 26 23:10:36 2000 UTC (24 years, 6 months ago) by sommerfeld
Branches: MAIN
CVS tags: netbsd-1-5-base, minoura-xpg4dl-base, minoura-xpg4dl
Branch point for: netbsd-1-5
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +2 -2 lines
Eliminate incorrect use of "curproc" in a comment.

Revision 1.66: download - view: text, markup, annotated - select for diffs
Thu Mar 30 09:27:11 2000 UTC (24 years, 8 months ago) by augustss
Branches: MAIN
Diff to: previous 1.65: preferred, colored
Changes since revision 1.65: +46 -46 lines
Get rid of register declarations.

Revision 1.65: download - view: text, markup, annotated - select for diffs
Thu Mar 23 05:16:14 2000 UTC (24 years, 8 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +11 -1 lines
Implement fdremove() which is used in place of all the code that
did the "fdp->fd_ofiles[fd] = 0" assignment; fdremove() make sure
the fd_freefiles hints stay in sync.

From OpenBSD.

Revision 1.64: download - view: text, markup, annotated - select for diffs
Wed Mar 22 17:42:57 2000 UTC (24 years, 8 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +11 -12 lines
Pool'ify filedesc0 allocation.

Revision 1.63: download - view: text, markup, annotated - select for diffs
Mon Jan 24 17:57:34 2000 UTC (24 years, 10 months ago) by thorpej
Branches: MAIN
CVS tags: chs-ubc2-newbase
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +3 -2 lines
In cwdinit(), if there isn't a cdir vnode yet, don't VREF() it.

Revision 1.61.8.1: download - view: text, markup, annotated - select for diffs
Mon Dec 27 18:35:51 1999 UTC (24 years, 11 months ago) by wrstuden
Branches: wrstuden-devbsize
Diff to: previous 1.61: preferred, colored; next MAIN 1.62: preferred, colored
Changes since revision 1.61: +2 -2 lines
Pull up to last week's -current.

Revision 1.62: download - view: text, markup, annotated - select for diffs
Wed Dec 8 18:53:56 1999 UTC (25 years ago) by sommerfeld
Branches: MAIN
CVS tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +2 -2 lines
Fix bug observed by Perry and myself: when emacs was shut down
uncleanly due to a lost connection, it would hang in closef() waiting
for the usecount to go back to 1.

An audit of FILE_USE() vs FILE_UNUSE() usage led me to discover some
incorrect error-path code..

In sys_fcntl(), avoid leaking a file descriptor usecount in an error
case of F_SETFL; don't return, instead go to "out" to clean up.  I
suspect that the F_SETFL would fail because vop_fcntl is not
implemented in deadfs.

Revision 1.61: download - view: text, markup, annotated - select for diffs
Tue Aug 3 20:19:16 1999 UTC (25 years, 4 months ago) by wrstuden
Branches: MAIN
CVS tags: fvdl-softdep-base, fvdl-softdep, comdex-fall-1999-base, comdex-fall-1999
Branch point for: wrstuden-devbsize, thorpej_scsipi
Diff to: previous 1.60: preferred, colored
Changes since revision 1.60: +86 -4 lines
Add support for fcntl(2) to generate VOP_FCNTL calls. Any fcntl
call with F_FSCTL set and F_SETFL calls generate calls to a new
fileop fo_fcntl. Add genfs_fcntl() and soo_fcntl() which return 0
for F_SETFL and EOPNOTSUPP otherwise. Have all leaf filesystems
use genfs_fcntl().

Reviewed by: thorpej
Tested by: wrstuden

Revision 1.57.4.2: download - view: text, markup, annotated - select for diffs
Thu Jul 1 23:43:20 1999 UTC (25 years, 5 months ago) by thorpej
Branches: chs-ubc2
Diff to: previous 1.57.4.1: preferred, colored; branchpoint 1.57: preferred, colored; next MAIN 1.58: preferred, colored
Changes since revision 1.57.4.1: +2 -3 lines
Sync w/ -current.

Revision 1.57.4.1: download - view: text, markup, annotated - select for diffs
Mon Jun 21 01:24:00 1999 UTC (25 years, 5 months ago) by thorpej
Branches: chs-ubc2
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +337 -95 lines
Sync w/ -current.

Revision 1.60: download - view: text, markup, annotated - select for diffs
Sun Jun 20 08:54:13 1999 UTC (25 years, 5 months ago) by christos
Branches: MAIN
CVS tags: chs-ubc2-base
Diff to: previous 1.59: preferred, colored
Changes since revision 1.59: +2 -3 lines
Fix umask inheritance problem introduced by the cwdi changes, whereby
children processes will not inherit the parent's umask but 022.

Revision 1.59: download - view: text, markup, annotated - select for diffs
Wed May 5 20:01:08 1999 UTC (25 years, 7 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.58: preferred, colored
Changes since revision 1.58: +260 -81 lines
Add "use counting" to file entries.  When closing a file, and it's reference
count is 0, wait for use count to drain before finishing the close.

This is necessary in order for multiple processes to safely share file
descriptor tables.

Revision 1.58: download - view: text, markup, annotated - select for diffs
Fri Apr 30 18:42:59 1999 UTC (25 years, 7 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +78 -15 lines
Break cdir/rdir/cmask info out of struct filedesc, and put it in a new
substructure, `cwdinfo'.  Implement optional sharing of this substructure.

This is required for clone(2).

Revision 1.57: download - view: text, markup, annotated - select for diffs
Wed Mar 24 05:51:22 1999 UTC (25 years, 8 months ago) by mrg
Branches: 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, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame
Branch point for: chs-ubc2
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +1 -8 lines
completely remove Mach VM support.  all that is left is the all the
header files as UVM still uses (most of) these.

Revision 1.56: download - view: text, markup, annotated - select for diffs
Mon Mar 22 17:39:44 1999 UTC (25 years, 8 months ago) by sommerfe
Branches: MAIN
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +2 -2 lines
bug fix to fdavail: be consistent about taking per-process descriptor
limit into account when checking against the limit; fdp->fd_nfiles may
be greater than the current descriptor limit, and there may be space
in fdp->fd_ofiles beyond the limit.  If we say it's available,
unp_externalize will get confused and panic when fdalloc fails.

Revision 1.55: download - view: text, markup, annotated - select for diffs
Mon Aug 31 23:55:37 1998 UTC (26 years, 3 months ago) by thorpej
Branches: MAIN
CVS tags: kenh-if-detach-base, kenh-if-detach, chs-ubc-base, chs-ubc
Diff to: previous 1.54: preferred, colored
Changes since revision 1.54: +16 -3 lines
Use the pool allocator and "nointr" pool page allocator for file structures.

Revision 1.54: download - view: text, markup, annotated - select for diffs
Thu Aug 13 10:06:31 1998 UTC (26 years, 4 months ago) by kleink
Branches: MAIN
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +3 -3 lines
Per POSIX, fail with EINVAL if advisory locking is attempted on a file type
that doesn't support it, rather than using a homegrown EBADF or EOPNOTSUPP.

Revision 1.51.2.1: download - view: text, markup, annotated - select for diffs
Sat Aug 8 03:06:54 1998 UTC (26 years, 4 months ago) by eeh
Branches: eeh-paddr_t
Diff to: previous 1.51: preferred, colored; next MAIN 1.52: preferred, colored
Changes since revision 1.51: +5 -5 lines
Revert cdevsw mmap routines to return int.

Revision 1.53: download - view: text, markup, annotated - select for diffs
Tue Aug 4 04:03:11 1998 UTC (26 years, 4 months ago) by perry
Branches: MAIN
Diff to: previous 1.52: preferred, colored
Changes since revision 1.52: +10 -10 lines
Abolition of bcopy, ovbcopy, bcmp, and bzero, phase one.
  bcopy(x, y, z) ->  memcpy(y, x, z)
ovbcopy(x, y, z) -> memmove(y, x, z)
   bcmp(x, y, z) ->  memcmp(x, y, z)
  bzero(x, y)    ->  memset(x, 0, y)

Revision 1.52: download - view: text, markup, annotated - select for diffs
Fri Jul 31 22:50:49 1998 UTC (26 years, 4 months ago) by perry
Branches: MAIN
Diff to: previous 1.51: preferred, colored
Changes since revision 1.51: +5 -5 lines
fix sizeofs so they comply with the KNF style guide. yes, it is pedantic.

Revision 1.51: download - view: text, markup, annotated - select for diffs
Sun Mar 1 02:22:28 1998 UTC (26 years, 9 months ago) by fvdl
Branches: MAIN
CVS tags: eeh-paddr_t-base
Branch point for: eeh-paddr_t
Diff to: previous 1.50: preferred, colored
Changes since revision 1.50: +2 -2 lines
Merge with Lite2 + local changes

Revision 1.1.1.3 (vendor branch): download - view: text, markup, annotated - select for diffs
Sun Mar 1 02:13:10 1998 UTC (26 years, 9 months ago) by fvdl
Branches: WFJ-920714, CSRG
CVS tags: lite-2
Diff to: previous 1.1.1.2: preferred, colored
Changes since revision 1.1.1.2: +128 -112 lines
Import 4.4BSD-Lite2

Revision 1.1.1.2 (vendor branch): download - view: text, markup, annotated - select for diffs
Sun Mar 1 02:09:39 1998 UTC (26 years, 9 months ago) by fvdl
Branches: WFJ-920714, CSRG
CVS tags: lite-1, date-03-may-96
Diff to: previous 1.1.1.1: preferred, colored
Changes since revision 1.1.1.1: +914 -1 lines
Import 4.4BSD-Lite for reference

Revision 1.50: download - view: text, markup, annotated - select for diffs
Tue Feb 10 14:09:25 1998 UTC (26 years, 10 months ago) by mrg
Branches: MAIN
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +3 -1 lines
- add defopt's for UVM, UVMHIST and PMAP_NEW.
- remove unnecessary UVMHIST_DECL's.

Revision 1.49: download - view: text, markup, annotated - select for diffs
Thu Feb 5 07:59:47 1998 UTC (26 years, 10 months ago) by mrg
Branches: MAIN
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +8 -1 lines
initial import of the new virtual memory system, UVM, into -current.

UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code.  i provided some help
getting swap and paging working, and other bug fixes/ideas.  chuck
silvers <chuq@chuq.com> also provided some other fixes.

this is the rest of the MI portion changes.

this will be KNF'd shortly.  :-)

Revision 1.48: download - view: text, markup, annotated - select for diffs
Mon Jan 5 04:51:16 1998 UTC (26 years, 11 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.47: preferred, colored
Changes since revision 1.47: +86 -1 lines
Implement file descriptor table sharing.  Partially from FreeBSD.

Revision 1.47: download - view: text, markup, annotated - select for diffs
Mon Oct 20 22:05:10 1997 UTC (27 years, 1 month ago) by thorpej
Branches: MAIN
CVS tags: netbsd-1-3-base, netbsd-1-3-RELEASE, netbsd-1-3-PATCH003-CANDIDATE2, netbsd-1-3-PATCH003-CANDIDATE1, netbsd-1-3-PATCH003-CANDIDATE0, netbsd-1-3-PATCH003, netbsd-1-3-PATCH002, netbsd-1-3-PATCH001, netbsd-1-3-BETA, netbsd-1-3
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +3 -3 lines
Fix the shared library versioning snafu caused by the recent changes
to the stat(2) family and msync(2).  This uses a primitive function
versioning scheme.

This reverts the libc shared library major version from 13 to 12, and
adds a few new interfaces to bring us to libc version 12.20.

From Frank van der Linden <fvdl@NetBSD.ORG>.

Revision 1.46: download - view: text, markup, annotated - select for diffs
Sun Oct 19 01:50:33 1997 UTC (27 years, 1 month ago) by mycroft
Branches: MAIN
Diff to: previous 1.45: preferred, colored
Changes since revision 1.45: +2 -3 lines
Minor change; remove unnecessary casts.

Revision 1.45: download - view: text, markup, annotated - select for diffs
Wed Oct 15 17:27:46 1997 UTC (27 years, 1 month ago) by mycroft
Branches: MAIN
Diff to: previous 1.44: preferred, colored
Changes since revision 1.44: +4 -4 lines
Adjust u_int arguments of some system calls to int, to match user-level
prototypes.

Revision 1.44: download - view: text, markup, annotated - select for diffs
Thu Jul 17 17:54:40 1997 UTC (27 years, 4 months ago) by phil
Branches: MAIN
CVS tags: thorpej-signal-base, thorpej-signal, marc-pcmcia-bp, marc-pcmcia-base, marc-pcmcia
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +2 -2 lines
In sys_flock, change EBADF to EINVAL because error was generated by
a bad argument, not a bad file descriptor. (Found in response to
PR 2602.)

Revision 1.43: download - view: text, markup, annotated - select for diffs
Wed Apr 2 18:22:32 1997 UTC (27 years, 8 months ago) by kleink
Branches: MAIN
CVS tags: bouyer-scsipi
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +5 -2 lines
Like in F_SETLK, check if F_GETLK is actually called with a
valid lock type.

Revision 1.42: download - view: text, markup, annotated - select for diffs
Sat Mar 30 22:24:38 1996 UTC (28 years, 8 months ago) by christos
Branches: MAIN
CVS tags: thorpej-setroot, netbsd-1-2-base, netbsd-1-2-RELEASE, netbsd-1-2-PATCH001, netbsd-1-2-BETA, netbsd-1-2, mrg-vm-swap, is-newarp-before-merge, is-newarp-base, is-newarp
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +2 -3 lines
Eliminate kern_conf.h

Revision 1.41: download - view: text, markup, annotated - select for diffs
Fri Mar 29 00:25:30 1996 UTC (28 years, 8 months ago) by cgd
Branches: MAIN
Diff to: previous 1.40: preferred, colored
Changes since revision 1.40: +3 -3 lines
kill unnecessary (and sometimes dangerous) casts of ioctl commands to int

Revision 1.40: download - view: text, markup, annotated - select for diffs
Thu Mar 14 19:01:10 1996 UTC (28 years, 9 months ago) by christos
Branches: MAIN
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +2 -2 lines
- fdopen -> filedescopen
- bring kgdb prototype in scope.

Revision 1.39: download - view: text, markup, annotated - select for diffs
Fri Feb 9 18:59:26 1996 UTC (28 years, 10 months ago) by christos
Branches: MAIN
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +1 -2 lines
More proto fixes

Revision 1.38: download - view: text, markup, annotated - select for diffs
Sun Feb 4 02:15:17 1996 UTC (28 years, 10 months ago) by christos
Branches: MAIN
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +31 -11 lines
First pass at prototyping

Revision 1.37: download - view: text, markup, annotated - select for diffs
Sat Oct 7 06:28:09 1995 UTC (29 years, 2 months ago) by mycroft
Branches: MAIN
CVS tags: netbsd-1-1-base, netbsd-1-1-RELEASE, netbsd-1-1-PATCH001, netbsd-1-1
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +15 -15 lines
Prefix names of system call implementation functions with `sys_'.

Revision 1.36: download - view: text, markup, annotated - select for diffs
Tue Sep 19 21:44:55 1995 UTC (29 years, 2 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +36 -29 lines
Make system calls conform to a standard prototype and bring those
prototypes into scope.

Revision 1.35: download - view: text, markup, annotated - select for diffs
Sat Jun 24 20:33:55 1995 UTC (29 years, 5 months ago) by christos
Branches: MAIN
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +1 -60 lines
Extracted all of the compat_xxx routines, and created a library [libcompat]
for them. There are a few #ifdef COMPAT_XX remaining, but they are not easy
or worth eliminating (yet).

Revision 1.34: download - view: text, markup, annotated - select for diffs
Mon Apr 10 18:28:04 1995 UTC (29 years, 8 months ago) by mycroft
Branches: MAIN
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +5 -5 lines
Change `fdclose' to `fdrelease', to avoid confusion with device interfaces.

Revision 1.33: download - view: text, markup, annotated - select for diffs
Wed Mar 8 01:20:21 1995 UTC (29 years, 9 months ago) by cgd
Branches: MAIN
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +3 -2 lines
need COMPAT_OSF1 for some things

Revision 1.32: download - view: text, markup, annotated - select for diffs
Wed Feb 15 02:12:02 1995 UTC (29 years, 9 months ago) by mycroft
Branches: MAIN
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +10 -5 lines
NULL out file descriptors as they're closed, for the benefit of fstat(8).

Revision 1.31: download - view: text, markup, annotated - select for diffs
Mon Jan 23 04:45:22 1995 UTC (29 years, 10 months ago) by cgd
Branches: MAIN
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +1 -5 lines
ooops.  forgot to emable fpathconf's use of VOP_PATHCONF!

Revision 1.30: download - view: text, markup, annotated - select for diffs
Thu Jan 12 05:40:10 1995 UTC (29 years, 11 months ago) by cgd
Branches: MAIN
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +2 -2 lines
cast pointer to long, not int

Revision 1.29: download - view: text, markup, annotated - select for diffs
Wed Dec 14 19:38:48 1994 UTC (30 years ago) by mycroft
Branches: MAIN
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +1 -2 lines
Remove old declaration.

Revision 1.28: download - view: text, markup, annotated - select for diffs
Wed Dec 14 18:42:27 1994 UTC (30 years ago) by mycroft
Branches: MAIN
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +67 -56 lines
Revert dup handling.

Revision 1.27: download - view: text, markup, annotated - select for diffs
Sun Dec 4 03:09:50 1994 UTC (30 years ago) by mycroft
Branches: MAIN
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +177 -176 lines
Abstract out the code to maintain fd_lastfile.  Remove the old dup() compatibility
kluge.  Rearrange fdopen() handling.  Make a common function to handle closing
a particular file descriptor in a process.  Some other cleanup.

Revision 1.26: download - view: text, markup, annotated - select for diffs
Sun Oct 30 21:47:38 1994 UTC (30 years, 1 month ago) by cgd
Branches: MAIN
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +5 -5 lines
be more careful with types, also pull in headers where necessary.

Revision 1.25: download - view: text, markup, annotated - select for diffs
Thu Oct 20 04:22:41 1994 UTC (30 years, 1 month ago) by cgd
Branches: MAIN
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +94 -89 lines
update for new syscall args description mechanism

Revision 1.24: download - view: text, markup, annotated - select for diffs
Tue Aug 30 03:05:32 1994 UTC (30 years, 3 months ago) by mycroft
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +10 -18 lines
Convert process, file, and namei lists and hash tables to use queue.h.

Revision 1.22.2.1: download - view: text, markup, annotated - select for diffs
Mon Aug 15 22:18:23 1994 UTC (30 years, 3 months ago) by mycroft
Branches: netbsd-1-0
CVS tags: netbsd-1-0-RELEASE, netbsd-1-0-PATCH1, netbsd-1-0-PATCH06, netbsd-1-0-PATCH05, netbsd-1-0-PATCH04, netbsd-1-0-PATCH03, netbsd-1-0-PATCH02, netbsd-1-0-PATCH0
Diff to: previous 1.22: preferred, colored; next MAIN 1.23: preferred, colored
Changes since revision 1.22: +3 -3 lines
update from trunk

Revision 1.23: download - view: text, markup, annotated - select for diffs
Mon Aug 15 22:08:55 1994 UTC (30 years, 3 months ago) by mycroft
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +3 -3 lines
Need ofstat() for iBCS2 syscall conversion.

Revision 1.22: download - view: text, markup, annotated - select for diffs
Wed Jun 29 06:32:23 1994 UTC (30 years, 5 months ago) by cgd
Branches: MAIN
CVS tags: netbsd-1-0-base
Branch point for: netbsd-1-0
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +3 -2 lines
New RCS ID's, take two.  they're more aesthecially pleasant, and use 'NetBSD'

Revision 1.21: download - view: text, markup, annotated - select for diffs
Wed Jun 22 03:00:21 1994 UTC (30 years, 5 months ago) by mycroft
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +2 -2 lines
Make ogetdtablesize if COMPAT_HPUX.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Thu Jun 16 05:07:32 1994 UTC (30 years, 5 months ago) by glass
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +2 -2 lines
compat_ultrix

Revision 1.19: download - view: text, markup, annotated - select for diffs
Tue Jun 14 10:52:20 1994 UTC (30 years, 6 months ago) by chopps
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +2 -2 lines
getdtabledsize used by sunos compat code.

Revision 1.18: download - view: text, markup, annotated - select for diffs
Tue Jun 14 05:21:11 1994 UTC (30 years, 6 months ago) by cgd
Branches: MAIN
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +5 -2 lines
make getdtablesize COMPAT_43; should be COMPAT_44 or _09, but that has probs

Revision 1.17: download - view: text, markup, annotated - select for diffs
Thu May 19 08:13:09 1994 UTC (30 years, 6 months ago) by cgd
Branches: MAIN
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +110 -103 lines
update to 4.4-Lite, with some local changes

Revision 1.16: download - view: text, markup, annotated - select for diffs
Tue May 17 04:21:52 1994 UTC (30 years, 6 months ago) by cgd
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +937 -1 lines
copyright foo

Revision 1.15: download - view: text, markup, annotated - select for diffs
Sat May 7 00:58:57 1994 UTC (30 years, 7 months ago) by cgd
Branches: MAIN
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +1 -1 lines
stub fpathconf

Revision 1.14: download - view: text, markup, annotated - select for diffs
Wed May 4 03:41:49 1994 UTC (30 years, 7 months ago) by cgd
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +1 -1 lines
Rename a lot of process flags.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Sun Mar 27 09:08:30 1994 UTC (30 years, 8 months ago) by cgd
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +1 -1 lines
expand uid_t/gid_t/off_t

Revision 1.12: download - view: text, markup, annotated - select for diffs
Tue Jan 4 12:26:21 1994 UTC (30 years, 11 months ago) by cgd
Branches: MAIN
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +1 -1 lines
generalize dupfdopen() to allow dups and moves.  from jsp

Revision 1.8.2.2: download - view: text, markup, annotated - select for diffs
Tue Dec 21 06:41:34 1993 UTC (30 years, 11 months ago) by cgd
Branches: magnum
Diff to: previous 1.8.2.1: preferred, colored; branchpoint 1.8: preferred, colored; next MAIN 1.9: preferred, colored
Changes since revision 1.8.2.1: +1 -1 lines
from trunk

Revision 1.11: download - view: text, markup, annotated - select for diffs
Tue Dec 21 06:39:12 1993 UTC (30 years, 11 months ago) by cgd
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +1 -1 lines
more of the same; gah!

Revision 1.10: download - view: text, markup, annotated - select for diffs
Tue Dec 21 06:30:28 1993 UTC (30 years, 11 months ago) by cgd
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +1 -1 lines
kill a billism

Revision 1.9: download - view: text, markup, annotated - select for diffs
Sat Dec 18 04:20:26 1993 UTC (30 years, 11 months ago) by mycroft
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +1 -1 lines
Canonicalize all #includes.

Revision 1.8.2.1: download - view: text, markup, annotated - select for diffs
Sun Nov 14 20:31:36 1993 UTC (31 years, 1 month ago) by mycroft
Branches: magnum
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +1 -1 lines
Canonicalize all #includes.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Mon Aug 23 16:04:10 1993 UTC (31 years, 3 months ago) by mycroft
Branches: MAIN
CVS tags: magnum-base
Branch point for: magnum
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +1 -1 lines
RLIMIT_OFILE --> RLIMIT_NOFILE

Revision 1.7: download - view: text, markup, annotated - select for diffs
Tue Jul 13 22:13:17 1993 UTC (31 years, 5 months ago) by cgd
Branches: MAIN
CVS tags: netbsd-0-9-patch-001, netbsd-0-9-base, netbsd-0-9-RELEASE, netbsd-0-9-BETA, netbsd-0-9-ALPHA2, netbsd-0-9-ALPHA, netbsd-0-9
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +1 -1 lines
break args structs out, into syscallname_args structs, so gcc2 doesn't
whine so much.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Sun Jun 27 06:01:31 1993 UTC (31 years, 5 months ago) by andrew
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +1 -1 lines
ANSIfications - removed all implicit function return types and argument
definitions.  Ensured that all files include "systm.h" to gain access to
general prototypes.  Casts where necessary.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Sat May 22 11:41:33 1993 UTC (31 years, 6 months ago) by cgd
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +1 -1 lines
add include of select.h if necessary for protos, or delete if extraneous

Revision 1.4: download - view: text, markup, annotated - select for diffs
Tue May 18 18:19:13 1993 UTC (31 years, 6 months ago) by cgd
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +1 -1 lines
make kernel select interface be one-stop shopping & clean it all up.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Sun Apr 4 04:32:14 1993 UTC (31 years, 8 months ago) by cgd
Branches: MAIN
CVS tags: netbsd-alpha-1, netbsd-0-8
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +1 -1 lines
now uses `maxfdescs' to bound `openfiles' resource limit.

Revision 1.2: download - view: text, markup, annotated - select for diffs
Tue Mar 23 23:56:07 1993 UTC (31 years, 8 months ago) by cgd
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +1 -1 lines
modified files to support kernfs and fdesc fs

Revision 1.1.1.1 (vendor branch): download - view: text, markup, annotated - select for diffs
Sun Mar 21 09:45:37 1993 UTC (31 years, 8 months ago) by cgd
Branches: WFJ-920714, CSRG
CVS tags: patchkit-0-2-2, WFJ-386bsd-01
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +1 -1 lines
initial import of 386bsd-0.1 sources

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sun Mar 21 09:45:37 1993 UTC (31 years, 8 months ago) by cgd
Branches: MAIN
Initial revision

Diff request

This form allows you to request diffs 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.

Log view options

CVSweb <webmaster@jp.NetBSD.org>