OpenBSD CVS

CVS log for src/sys/nfs/nfs_serv.c


[BACK] Up to [local] / src / sys / nfs

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.126 / (download) - annotate - [select for diffs], Wed May 1 13:15:59 2024 UTC (5 weeks, 5 days ago) by jsg
Branch: MAIN
CVS Tags: HEAD
Changes since 1.125: +1 -3 lines
Diff to previous 1.125 (colored)

remove unneeded includes
ok miod@ mpi@

Revision 1.125 / (download) - annotate - [select for diffs], Tue Apr 30 17:05:20 2024 UTC (5 weeks, 6 days ago) by miod
Branch: MAIN
Changes since 1.124: +2 -4 lines
Diff to previous 1.124 (colored)

Constify NFS data whenever possible. Also make a few more const data static.

ok jsg@ semarie@

Revision 1.124 / (download) - annotate - [select for diffs], Tue Apr 30 17:04:23 2024 UTC (5 weeks, 6 days ago) by miod
Branch: MAIN
Changes since 1.123: +549 -191 lines
Diff to previous 1.123 (colored)

Convert all the NFS macros (in nfsm_subs.h) into inline functions with the
appropriate extra arguments.

This (hopefully) completes the unmessyfication work started by thib@ a long,
long time ago (in a galaxy far away).

The conversion logic has been:
- nfsm_dissect has been turned into an rvalue expression, leaving the
  cast operation up to its caller.
- macros which had three different exit paths (return, goto nfsmout or
  fallthrough) have been split so that no macros have more than two exit paths.
- then they have been modified to return a value, which lets the caller
  figure out what exit path is needed.
- local variables abused by the macros are now local variables of the new
  inline functions.

This single commit is the sum of 25 intermediate diffs, which have all been
carefully reviewed by (at least) jsg@ and semarie@.

Tested with v2 and v3 servers and clients.

ok jsg@ semarie@

Revision 1.123 / (download) - annotate - [select for diffs], Mon Mar 25 17:57:07 2024 UTC (2 months, 2 weeks ago) by guenther
Branch: MAIN
Changes since 1.122: +2 -2 lines
Diff to previous 1.122 (colored)

Move the "no (hard) linking directories" and "no cross-mount links"
checks from all the filesystems that support hardlinks at all into
the VFS layer.  Simplify, EPERM description in link(2).

ok miod@ mpi@

Revision 1.122 / (download) - annotate - [select for diffs], Wed Mar 8 04:43:09 2023 UTC (15 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3
Changes since 1.121: +1 -3 lines
Diff to previous 1.121 (colored)

Delete obsolete /* ARGSUSED */ lint comments.

ok miod@ millert@

Revision 1.121 / (download) - annotate - [select for diffs], Fri May 27 11:10:54 2022 UTC (2 years ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_7_2_BASE, OPENBSD_7_2
Changes since 1.120: +4 -1 lines
Diff to previous 1.120 (colored)

Call uvm_vnp_uncache() before VOP_RENAME().

ok kettenis@

Revision 1.120 / (download) - annotate - [select for diffs], Thu Mar 11 13:31:35 2021 UTC (3 years, 3 months ago) by jsg
Branch: MAIN
CVS Tags: OPENBSD_7_1_BASE, OPENBSD_7_1, OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9
Changes since 1.119: +2 -2 lines
Diff to previous 1.119 (colored)

spelling

Revision 1.112.2.1 / (download) - annotate - [select for diffs], Sun Jan 27 22:10:57 2019 UTC (5 years, 4 months ago) by bluhm
Branch: OPENBSD_6_3
Changes since 1.112: +11 -10 lines
Diff to previous 1.112 (colored) next main 1.113 (colored)

Check for negative length integers in NFS server.  A malicious
client could crash the server.
from bluhm@; OK tedu@

Check for negative length integers in NFS client.  A malicious
server could confuse the client file system code.
from bluhm@; OK beck@

Check for negative length in NFS strings.  This affects both, the
client and server.
from bluhm@; OK beck@

OpenBSD 6.3 errata 029

Revision 1.116.2.1 / (download) - annotate - [select for diffs], Sun Jan 27 22:09:51 2019 UTC (5 years, 4 months ago) by bluhm
Branch: OPENBSD_6_4
Changes since 1.116: +11 -10 lines
Diff to previous 1.116 (colored) next main 1.117 (colored)

Check for negative length integers in NFS server.  A malicious
client could crash the server.
from bluhm@; OK tedu@

Check for negative length integers in NFS client.  A malicious
server could confuse the client file system code.
from bluhm@; OK beck@

Check for negative length in NFS strings.  This affects both, the
client and server.
from bluhm@; OK beck@

OpenBSD 6.4 errata 012

Revision 1.119 / (download) - annotate - [select for diffs], Sat Jan 19 01:53:44 2019 UTC (5 years, 4 months ago) by cheloha
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5
Changes since 1.118: +7 -3 lines
Diff to previous 1.118 (colored)

Move boottime into the timehands.

To protect the timehands we first need to protect the basis for all UTC
time in the kernel: the boottime.

Because the boottime can be changed at any time it needs to be versioned
along with the other members of the timehands to enable safe lockless reads
when using it for anything.  So the global boottime timespec goes away and
the static boottimebin becomes a member of the timehands.  Instead of reading
the global boottime you use one of two interfaces: binboottime(9) or
microboottime(9). nanoboottime(9) can trivially be added later, though there
are no consumers for it at the moment.

This introduces one small change in behavior.  We used to advance the
reported boottime just before launching kernel threads from main().
This makes it look to userland like we "booted" moments before those
threads were launched.  Because there is no longer a boottime global we
can no longer trivially do this from main(), so the boottime we report
to userspace via e.g. kern.boottime will now reflect whatever the time
was when we bootstrapped the timehands via inittodr(9).  This is usually
no more than a minute before the kernel threads are launched from main().
The prior behavior can be restored by adding a new interface to the
timecounter layer in a future commit.

Based on FreeBSD r303387.

Discussed with mpi@ and visa@.

ok visa@

Revision 1.118 / (download) - annotate - [select for diffs], Fri Jan 18 13:56:38 2019 UTC (5 years, 4 months ago) by bluhm
Branch: MAIN
Changes since 1.117: +11 -10 lines
Diff to previous 1.117 (colored)

Check for negative length integers in NFS server.  A malicious
client could crash the server.
OK tedu@

Revision 1.117 / (download) - annotate - [select for diffs], Fri Nov 9 14:14:32 2018 UTC (5 years, 7 months ago) by claudio
Branch: MAIN
Changes since 1.116: +3 -3 lines
Diff to previous 1.116 (colored)

M_LEADINGSPACE() and M_TRAILINGSPACE() are just wrappers for
m_leadingspace() and m_trailingspace(). Convert all callers to call
directly the functions and remove the defines.
OK krw@, mpi@

Revision 1.116 / (download) - annotate - [select for diffs], Wed Jun 13 14:57:24 2018 UTC (5 years, 11 months ago) by visa
Branch: MAIN
CVS Tags: OPENBSD_6_4_BASE
Branch point for: OPENBSD_6_4
Changes since 1.115: +8 -1 lines
Diff to previous 1.115 (colored)

Make the VFS layer responsible for preventing the deletion
of mounted on directories.

OK guenther@, mpi@

Revision 1.115 / (download) - annotate - [select for diffs], Thu Jun 7 13:37:28 2018 UTC (6 years ago) by visa
Branch: MAIN
Changes since 1.114: +7 -2 lines
Diff to previous 1.114 (colored)

Make callers of VOP_CREATE(9) and VOP_MKNOD(9) responsible for
unlocking the directory vnode.

OK mpi@, helg@

Revision 1.114 / (download) - annotate - [select for diffs], Wed May 2 02:24:56 2018 UTC (6 years, 1 month ago) by visa
Branch: MAIN
Changes since 1.113: +3 -3 lines
Diff to previous 1.113 (colored)

Remove proc from the parameters of vn_lock(). The parameter is
unnecessary because curproc always does the locking.

OK mpi@

Revision 1.113 / (download) - annotate - [select for diffs], Sat Apr 28 03:13:05 2018 UTC (6 years, 1 month ago) by visa
Branch: MAIN
Changes since 1.112: +5 -5 lines
Diff to previous 1.112 (colored)

Clean up the parameters of VOP_LOCK() and VOP_UNLOCK(). It is always
curproc that does the locking or unlocking, so the proc parameter
is pointless and can be dropped.

OK mpi@, deraadt@

Revision 1.112 / (download) - annotate - [select for diffs], Sat Dec 30 20:47:00 2017 UTC (6 years, 5 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_6_3_BASE
Branch point for: OPENBSD_6_3
Changes since 1.111: +1 -2 lines
Diff to previous 1.111 (colored)

Delete unnecessary <sys/file.h> includes

ok millert@ krw@

Revision 1.111 / (download) - annotate - [select for diffs], Wed Feb 22 11:42:46 2017 UTC (7 years, 3 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE, OPENBSD_6_2, OPENBSD_6_1_BASE, OPENBSD_6_1
Changes since 1.110: +3 -1 lines
Diff to previous 1.110 (colored)

Keep local definitions local.

"good work" deraadt@, ok visa@

Revision 1.110 / (download) - annotate - [select for diffs], Wed Sep 21 13:22:44 2016 UTC (7 years, 8 months ago) by jsg
Branch: MAIN
Changes since 1.109: +21 -19 lines
Diff to previous 1.109 (colored)

Fix nfsrv_symlink() indentation.  No binary change.
ok mpi@ deraadt@

Revision 1.109 / (download) - annotate - [select for diffs], Mon Jul 4 18:34:03 2016 UTC (7 years, 11 months ago) by natano
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE, OPENBSD_6_0
Changes since 1.108: +12 -3 lines
Diff to previous 1.108 (colored)

Add missing vput() in error path to prevent a vnode getting stuck with a
stale reference and lock, while it shouldn't hold either.

"makes sense to me" beck@

Revision 1.108 / (download) - annotate - [select for diffs], Fri Apr 29 14:40:36 2016 UTC (8 years, 1 month ago) by beck
Branch: MAIN
Changes since 1.107: +23 -25 lines
Diff to previous 1.107 (colored)

Fix some gibbering horrors due to uninitialized struct nameidata's

1) turn NDINITAT into a function and make the macros point to it
with the later goal of getting rid of them.

2) Sweep the kernel for places where people make a struct nameidata manually
on the stack and fill in what they hope are the required fields and count
on prayer and clean living to always get them right. Instead use NDINIT
everywhere. NFS was especially bad for this and there have likely
been things lurking there for a while.

3) Add a couple of strategic KASSERT's to catch future offenders.

ok krw@ sthen@ deraadt@

Revision 1.107 / (download) - annotate - [select for diffs], Sat Mar 19 12:04:16 2016 UTC (8 years, 2 months ago) by natano
Branch: MAIN
Changes since 1.106: +5 -5 lines
Diff to previous 1.106 (colored)

Remove the unused flags argument from VOP_UNLOCK().

torture tested on amd64, i386 and macppc
ok beck mpi stefan
"the change looks right" deraadt

Revision 1.106 / (download) - annotate - [select for diffs], Sun Aug 30 02:18:28 2015 UTC (8 years, 9 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.105: +6 -5 lines
Diff to previous 1.105 (colored)

Keep track of a length for free() in error paths.  Be careful,
because the nfsm_strsiz() macro sneakily modifies a parameter!
ok beck

Revision 1.105 / (download) - annotate - [select for diffs], Wed Jul 15 22:16:42 2015 UTC (8 years, 10 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8
Changes since 1.104: +2 -2 lines
Diff to previous 1.104 (colored)

m_freem() can handle NULL, do not check for this condition beforehands.
ok stsp mpi

Revision 1.104 / (download) - annotate - [select for diffs], Thu Jun 11 08:39:51 2015 UTC (9 years ago) by blambert
Branch: MAIN
Changes since 1.103: +21 -8 lines
Diff to previous 1.103 (colored)

Avoid double-free in error path by cribbing the HASBUF flag
logic from the rest of the kernel that deals with filename
lookups.

In snaps for some time.

Initially found by jsg@
Prodded by deraadt@

Revision 1.103 / (download) - annotate - [select for diffs], Wed May 6 02:19:40 2015 UTC (9 years, 1 month ago) by jsg
Branch: MAIN
Changes since 1.102: +3 -2 lines
Diff to previous 1.102 (colored)

add missing braces
ok guenther@ miod@

Revision 1.102 / (download) - annotate - [select for diffs], Sat Mar 14 03:38:52 2015 UTC (9 years, 3 months ago) by jsg
Branch: MAIN
Changes since 1.101: +1 -2 lines
Diff to previous 1.101 (colored)

Remove some includes include-what-you-use claims don't
have any direct symbols used.  Tested for indirect use by compiling
amd64/i386/sparc64 kernels.

ok tedu@ deraadt@

Revision 1.101 / (download) - annotate - [select for diffs], Tue Dec 16 18:30:04 2014 UTC (9 years, 5 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.100: +2 -1 lines
Diff to previous 1.100 (colored)

primary change: move uvm_vnode out of vnode, keeping only a pointer.
objective: vnode.h doesn't include uvm_extern.h anymore.
followup changes: include uvm_extern.h or lock.h where necessary.
ok and help from deraadt

Revision 1.100 / (download) - annotate - [select for diffs], Tue Nov 18 02:22:33 2014 UTC (9 years, 6 months ago) by tedu
Branch: MAIN
Changes since 1.99: +20 -17 lines
Diff to previous 1.99 (colored)

Reduce scope of iovec variables, use mallocarray, and record size for
free. Change rbuf malloc argument to fullsiz, which then makes clear it's
the correct size to pass to free. ok millert

Revision 1.99 / (download) - annotate - [select for diffs], Fri Nov 14 23:01:44 2014 UTC (9 years, 6 months ago) by tedu
Branch: MAIN
Changes since 1.98: +7 -7 lines
Diff to previous 1.98 (colored)

bzero -> memset

Revision 1.98 / (download) - annotate - [select for diffs], Mon Nov 3 21:28:35 2014 UTC (9 years, 7 months ago) by tedu
Branch: MAIN
Changes since 1.97: +3 -1 lines
Diff to previous 1.97 (colored)

include sys/unistd.h where needed instead of indirect reliance. ok jsg

Revision 1.97 / (download) - annotate - [select for diffs], Sat Jul 12 18:43:52 2014 UTC (9 years, 11 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6
Changes since 1.96: +11 -11 lines
Diff to previous 1.96 (colored)

add a size argument to free. will be used soon, but for now default to 0.
after discussions with beck deraadt kettenis.

Revision 1.96 / (download) - annotate - [select for diffs], Tue Jul 8 17:19:26 2014 UTC (9 years, 11 months ago) by deraadt
Branch: MAIN
Changes since 1.95: +1 -3 lines
Diff to previous 1.95 (colored)

decouple struct uvmexp into a new file, so that uvm_extern.h and sysctl.h
don't need to be married.
ok guenther miod beck jsing kettenis

Revision 1.95 / (download) - annotate - [select for diffs], Mon Apr 21 12:49:34 2014 UTC (10 years, 1 month ago) by beck
Branch: MAIN
Changes since 1.94: +23 -27 lines
Diff to previous 1.94 (colored)

Back out most of v1.47 changes which mess up the block size on these
reads.
ok deraadt@ guenther@

Revision 1.94 / (download) - annotate - [select for diffs], Tue Aug 13 05:52:25 2013 UTC (10 years, 10 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_5_5_BASE, OPENBSD_5_5
Changes since 1.93: +23 -58 lines
Diff to previous 1.93 (colored)

Switch time_t, ino_t, clock_t, and struct kevent's ident and data
members to 64bit types.  Assign new syscall numbers for (almost
all) the syscalls that involve the affected types, including anything
with time_t, timeval, itimerval, timespec, rusage, dirent, stat,
or kevent arguments.  Add a d_off member to struct dirent and replace
getdirentries() with getdents(), thus immensely simplifying and
accelerating telldir/seekdir.  Build perl with -DBIG_TIME.

Bump the major on every single base library: the compat bits included
here are only good enough to make the transition; the T32 compat
option will be burned as soon as we've reached the new world are
are happy with the snapshots for all architectures.

DANGER: ABI incompatibility.  Updating to this kernel requires extra
work or you won't be able to login: install a snapshot instead.

Much assistance in fixing userland issues from deraadt@ and tedu@
and build assistance from todd@ and otto@

Revision 1.93 / (download) - annotate - [select for diffs], Mon Jun 3 16:55:22 2013 UTC (11 years ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE, OPENBSD_5_4
Changes since 1.92: +3 -3 lines
Diff to previous 1.92 (colored)

Convert some internal APIs to use timespecs instead of timevals

ok matthew@ deraadt@

Revision 1.92 / (download) - annotate - [select for diffs], Wed Mar 21 16:33:21 2012 UTC (12 years, 2 months ago) by kettenis
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE, OPENBSD_5_3, OPENBSD_5_2_BASE, OPENBSD_5_2
Changes since 1.91: +7 -6 lines
Diff to previous 1.91 (colored)

Prevent vrele() being called with a NULL argument if nfs_namei() returns an
error in several places.

Should fix the "vrele: null vp" panic that henning@ has been seeing lately.

ok tedu@, krw@, deraadt@

Revision 1.91 / (download) - annotate - [select for diffs], Thu Sep 9 10:37:04 2010 UTC (13 years, 9 months ago) by thib
Branch: MAIN
CVS Tags: OPENBSD_5_1_BASE, OPENBSD_5_1, OPENBSD_5_0_BASE, OPENBSD_5_0, OPENBSD_4_9_BASE, OPENBSD_4_9
Changes since 1.90: +4 -4 lines
Diff to previous 1.90 (colored)

Rename lookup/relookup to vfs_lookup/vfs_relookup.

OK oga@, beck@, matthew@

Revision 1.90 / (download) - annotate - [select for diffs], Mon Mar 29 23:33:39 2010 UTC (14 years, 2 months ago) by krw
Branch: MAIN
CVS Tags: OPENBSD_4_8_BASE, OPENBSD_4_8
Changes since 1.89: +3 -1 lines
Diff to previous 1.89 (colored)

Initialize various uninitialized variables. Found by jsg@ via Clang.

Feedback from miod@ and kettenis@.

ok beck@

Revision 1.89 / (download) - annotate - [select for diffs], Mon Oct 19 22:24:18 2009 UTC (14 years, 7 months ago) by jsg
Branch: MAIN
CVS Tags: OPENBSD_4_7_BASE, OPENBSD_4_7
Changes since 1.88: +49 -123 lines
Diff to previous 1.88 (colored)

antsy
no binary change apart from nfsm_reqhead() which is clearly correct.

ok thib@

Revision 1.88 / (download) - annotate - [select for diffs], Sun Aug 30 15:16:19 2009 UTC (14 years, 9 months ago) by thib
Branch: MAIN
Changes since 1.87: +28 -24 lines
Diff to previous 1.87 (colored)

if nfs_namei() fails, there's no ni_startdir and the pathname buffer has
already been freed, thus make the callers of nfs_namei() bail out early,
instead of jumping to nfsmout as there they will try to vrele() vnodes
that don't exists (NULL pointers) and free the pathname buffer.

this is way nicer then adding checks after the nfsmout label.

OK blambert@

Revision 1.87 / (download) - annotate - [select for diffs], Fri Aug 14 13:53:16 2009 UTC (14 years, 10 months ago) by blambert
Branch: MAIN
Changes since 1.86: +1 -9 lines
Diff to previous 1.86 (colored)

Avoid double-release of vnodes in several functions

ok thib@

Revision 1.86 / (download) - annotate - [select for diffs], Fri Aug 14 11:06:35 2009 UTC (14 years, 10 months ago) by blambert
Branch: MAIN
Changes since 1.85: +2 -2 lines
Diff to previous 1.85 (colored)

Initialize len variable; found by Martynas Venckus

ok thib@

Revision 1.85 / (download) - annotate - [select for diffs], Thu Aug 13 15:03:19 2009 UTC (14 years, 10 months ago) by blambert
Branch: MAIN
Changes since 1.84: +55 -56 lines
Diff to previous 1.84 (colored)

change version 3 post-operation attribute building function to not
use mbufs directly, but the shiny new nfsm_info struct

ok thib@

Revision 1.84 / (download) - annotate - [select for diffs], Tue Aug 11 11:07:36 2009 UTC (14 years, 10 months ago) by thib
Branch: MAIN
Changes since 1.83: +15 -7 lines
Diff to previous 1.83 (colored)

Fix a few bugs in nfsrv_rename() error recovery code.

- Prevent a double vrele() by setting the vnode pointer to NULL.
- Check if vnode pointers have been set to NULL before trying to
  vrele().
- don't double free the component path name buffer.
- Add a workaround for multiple vnode pointers all pointing to the
  same vnode and the code doing vrele() on all of them, leading to
  botched refcounts. This is a horrible hack, but a real fix is being
  worked on.

OK blambert@

Revision 1.83 / (download) - annotate - [select for diffs], Mon Aug 10 09:44:44 2009 UTC (14 years, 10 months ago) by blambert
Branch: MAIN
Changes since 1.82: +10 -9 lines
Diff to previous 1.82 (colored)

Another

error = operation();
memory = malloc();
if (error) free(memory);

gets relegated to the dustbin of history

ok thib@

Revision 1.82 / (download) - annotate - [select for diffs], Mon Aug 10 09:38:44 2009 UTC (14 years, 10 months ago) by thib
Branch: MAIN
Changes since 1.81: +0 -371 lines
Diff to previous 1.81 (colored)

Remove the v2 writegather code. It did help alot back in the 80s
but extensive performance benchmarking done by myself and jasper@
has shown that it doesn't help, at all - even on vaxens and in some
cases it makes things significantly slower.

"this excites me sexually" jetpack@
Tested by jasper@.
OK blambert@

Revision 1.81 / (download) - annotate - [select for diffs], Sun Aug 9 17:35:31 2009 UTC (14 years, 10 months ago) by blambert
Branch: MAIN
Changes since 1.80: +27 -43 lines
Diff to previous 1.80 (colored)

MLEN < NFS_MAXPATHLEN < MCLBYTES, so there's no need to
loop over allocating a chain of mbufs to store <= NFS_MAXPATHLEN
bytes.

Clean up some variables, which thib@ likes.

ok thib@

Revision 1.80 / (download) - annotate - [select for diffs], Sun Aug 9 15:13:48 2009 UTC (14 years, 10 months ago) by blambert
Branch: MAIN
Changes since 1.79: +8 -9 lines
Diff to previous 1.79 (colored)

error = operation();
memory = malloc();
if (error) free(memory);

makes no sense; move error checking to above memory allocation

ok thib@

Revision 1.79 / (download) - annotate - [select for diffs], Sun Aug 9 13:34:41 2009 UTC (14 years, 10 months ago) by thib
Branch: MAIN
Changes since 1.78: +0 -31 lines
Diff to previous 1.78 (colored)

set the mrq pointer (request) in the nfsm_reply() macro, as we can return from it.
This can cause us to follow garbage in the nfsd loop, causing two kinds of hell.

problem noticed by nicm@. OK blambert@.

Revision 1.78 / (download) - annotate - [select for diffs], Tue Aug 4 17:12:39 2009 UTC (14 years, 10 months ago) by thib
Branch: MAIN
Changes since 1.77: +528 -349 lines
Diff to previous 1.77 (colored)

group all of the on-stack variables that are uses by the nfsm_macros
to keep the data munging "state" into an nfsm_info structure. Each
function now has this structure on its stack, and it and its members
are now passed around so that the macros/functions can work there magic.

this will make removing the nfsm_* macros way easier.

Idea/code picked up from DragonflyBSD.

Tested by krw@, jacekm@ and myself.

OK blambert@.

Revision 1.77 / (download) - annotate - [select for diffs], Mon Jul 20 16:49:40 2009 UTC (14 years, 10 months ago) by thib
Branch: MAIN
Changes since 1.76: +18 -18 lines
Diff to previous 1.76 (colored)

(struct foo *)0 -> NULL, every where I could find it.

OK blambert@

Revision 1.76 / (download) - annotate - [select for diffs], Fri Jul 17 12:36:21 2009 UTC (14 years, 10 months ago) by blambert
Branch: MAIN
Changes since 1.75: +2 -2 lines
Diff to previous 1.75 (colored)

Initialize a variable that was previously using a mystery value in
some error cases

ok thib@

Revision 1.75 / (download) - annotate - [select for diffs], Sat Jun 6 23:40:30 2009 UTC (15 years ago) by blambert
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6
Changes since 1.74: +3 -2 lines
Diff to previous 1.74 (colored)

Don't allocate an mbuf cluster without checking to see if it will
actually get us anything.

ok thib@

Revision 1.74 / (download) - annotate - [select for diffs], Sat Jun 6 22:59:17 2009 UTC (15 years ago) by blambert
Branch: MAIN
Changes since 1.73: +15 -16 lines
Diff to previous 1.73 (colored)

Consolidate error handling in read case.

ok thib@

Revision 1.73 / (download) - annotate - [select for diffs], Sat Jun 6 02:23:33 2009 UTC (15 years ago) by blambert
Branch: MAIN
Changes since 1.72: +15 -18 lines
Diff to previous 1.72 (colored)

Consolidate error handling code. Much less atrocious than before.

"get it in" thib@

Revision 1.72 / (download) - annotate - [select for diffs], Fri Jun 5 21:35:33 2009 UTC (15 years ago) by thib
Branch: MAIN
Changes since 1.71: +9 -6 lines
Diff to previous 1.71 (colored)

bring back rev1.70

Revision 1.71 / (download) - annotate - [select for diffs], Fri Jun 5 20:10:51 2009 UTC (15 years ago) by naddy
Branch: MAIN
Changes since 1.70: +45 -49 lines
Diff to previous 1.70 (colored)

revert to 1.67 to unbreak NFS writes; ok beck@ thib@

Revision 1.70 / (download) - annotate - [select for diffs], Fri Jun 5 03:24:20 2009 UTC (15 years ago) by thib
Branch: MAIN
Changes since 1.69: +9 -6 lines
Diff to previous 1.69 (colored)

EPERM from VOP_ACCESS() is always an error, so don't hide it.

Diff from FreeBSD.

OK blambert@

Revision 1.69 / (download) - annotate - [select for diffs], Thu Jun 4 18:55:49 2009 UTC (15 years ago) by blambert
Branch: MAIN
Changes since 1.68: +13 -10 lines
Diff to previous 1.68 (colored)

the following:

error = foo();
if (!error)
	bar();

is an alien construct; replace with one from this planet

ok thib@

Revision 1.68 / (download) - annotate - [select for diffs], Thu Jun 4 18:44:27 2009 UTC (15 years ago) by blambert
Branch: MAIN
Changes since 1.67: +29 -31 lines
Diff to previous 1.67 (colored)

Move code that logically belongs together to be together.

ok thib@

Revision 1.67 / (download) - annotate - [select for diffs], Thu May 21 12:24:22 2009 UTC (15 years ago) by thib
Branch: MAIN
Changes since 1.66: +2 -9 lines
Diff to previous 1.66 (colored)

IO_METASYNC has been a noop since around 4.4BSD-Lite, the
idea never really caught on anywhere so retire it.

"gank this shizzle", blambert@

Revision 1.66 / (download) - annotate - [select for diffs], Mon Apr 13 17:51:57 2009 UTC (15 years, 2 months ago) by blambert
Branch: MAIN
Changes since 1.65: +4 -4 lines
Diff to previous 1.65 (colored)

Convert macros to functions to reduce kernel memory usage.

In snaps for a while (way too long, according to deraadt@)

Revision 1.65 / (download) - annotate - [select for diffs], Mon Mar 30 19:58:50 2009 UTC (15 years, 2 months ago) by blambert
Branch: MAIN
Changes since 1.64: +16 -6 lines
Diff to previous 1.64 (colored)

Convert a sizeable macro to a much-leaner function. Saves (IIRC) 5k on i386.

In snaps for a while.

Revision 1.64 / (download) - annotate - [select for diffs], Sun Mar 15 19:40:41 2009 UTC (15 years, 2 months ago) by miod
Branch: MAIN
Changes since 1.63: +2 -2 lines
Diff to previous 1.63 (colored)

Introduce splsoftassert(), similar to splassert() but for soft interrupt
levels. This will allow for platforms where soft interrupt levels do not
map to real hardware interrupt levels to have soft ipl values overlapping
hard ipl values without breaking spl asserts.

Revision 1.63 / (download) - annotate - [select for diffs], Tue Jan 27 23:40:14 2009 UTC (15 years, 4 months ago) by blambert
Branch: MAIN
CVS Tags: OPENBSD_4_5_BASE, OPENBSD_4_5
Changes since 1.62: +2 -2 lines
Diff to previous 1.62 (colored)

Correct my timeradd() thinko in nfsrv_writegather()

pointed out by bluhm@, "obvious" thib@

Revision 1.62 / (download) - annotate - [select for diffs], Sat Jan 24 23:35:47 2009 UTC (15 years, 4 months ago) by thib
Branch: MAIN
Changes since 1.61: +11 -10 lines
Diff to previous 1.61 (colored)

Use a timespec for the server write deadline and procrastination
timeouts. Rrids us of the ugly cur_sec variable, and some shadows.
Also helps with granularity.

Diff from blambert@ who asked me to commit this since he's away for
some days and we wanted to put this in with the timespec changes in
the nfsnode.

Revision 1.61 / (download) - annotate - [select for diffs], Sun Jan 18 13:54:27 2009 UTC (15 years, 4 months ago) by thib
Branch: MAIN
Changes since 1.60: +2 -2 lines
Diff to previous 1.60 (colored)

Perform the same access enforcements for set attributes
as for open/read/write etc, that is assume that the file
as already been opened proper, this fixes an ancient
ftruncate bug, that is if ftruncate was called on a file
with no write modes, we'd return EACCES, this breaks posixy
behavior. however, for e.g. truncate() we'll return EACCESS
as we should.

Diff from PR5880 by mickey.
I had forgotten about this PR, and the fix but niklas@ ran
into similar issues which prompted another review of this.

OK kettenis@

Revision 1.60 / (download) - annotate - [select for diffs], Wed Dec 24 16:53:20 2008 UTC (15 years, 5 months ago) by thib
Branch: MAIN
Changes since 1.59: +9 -2 lines
Diff to previous 1.59 (colored)

Low hanging macro fruit. Inline the nfsm_srvstrsiz macro since
its used only once and nuke its definition.

Stolen from blambert's bag'o'diffs.

OK blambert@.

Revision 1.59 / (download) - annotate - [select for diffs], Wed Dec 24 02:43:52 2008 UTC (15 years, 5 months ago) by thib
Branch: MAIN
Changes since 1.58: +2 -2 lines
Diff to previous 1.58 (colored)

Replace the TRUE/FALSE defines with 1/0 respectively. This doesn't
hurt readability and it was just plain annoying seeing them defined
in every other .c file.

OK blambert@

Revision 1.58 / (download) - annotate - [select for diffs], Sun Jul 6 16:54:48 2008 UTC (15 years, 11 months ago) by thib
Branch: MAIN
CVS Tags: OPENBSD_4_4_BASE, OPENBSD_4_4
Changes since 1.57: +3 -4 lines
Diff to previous 1.57 (colored)


remove #ifndef nolint goo

ok blambert@

Revision 1.57 / (download) - annotate - [select for diffs], Sun Jun 15 04:03:40 2008 UTC (15 years, 11 months ago) by thib
Branch: MAIN
Changes since 1.56: +3 -3 lines
Diff to previous 1.56 (colored)

unroll the NFSMADV() macro and nuke it

ok blambert@

Revision 1.56 / (download) - annotate - [select for diffs], Sat Jun 14 22:44:07 2008 UTC (16 years ago) by blambert
Branch: MAIN
Changes since 1.55: +1 -3 lines
Diff to previous 1.55 (colored)

Replace nfsm_build/bcopy with nfsm_{buf,str}tombuf functions in
filehandle -> mbuf write macros.

Removes `magic' variable cp which was used only in these macros,
and should lead to marginally better mbuf packing as well.

`slap it in' thib@

Revision 1.55 / (download) - annotate - [select for diffs], Sat Jun 14 00:26:13 2008 UTC (16 years ago) by thib
Branch: MAIN
Changes since 1.54: +3 -3 lines
Diff to previous 1.54 (colored)

use nfsm_padlen() where appropriate;

ok blambert@

Revision 1.54 / (download) - annotate - [select for diffs], Fri Jun 13 03:49:26 2008 UTC (16 years ago) by blambert
Branch: MAIN
Changes since 1.53: +34 -34 lines
Diff to previous 1.53 (colored)

Replace one-line macro which only obfuscated the fact that
the function it was named after took 4 arguments instead of 2.

"get it in; get it in; get it in" thib@

Revision 1.53 / (download) - annotate - [select for diffs], Thu Jun 12 20:24:06 2008 UTC (16 years ago) by blambert
Branch: MAIN
Changes since 1.52: +63 -93 lines
Diff to previous 1.52 (colored)

Remove now-vestigial bpos pointer from NFS. For building outgoing
NFS mbufs, mbufs now contain all their internal buffer state internally,
the way god intended.

ok thib@

testing johan@ (and possibly merdely@; this diff's been around for a bit...)

Revision 1.52 / (download) - annotate - [select for diffs], Wed Jun 11 04:52:27 2008 UTC (16 years ago) by blambert
Branch: MAIN
Changes since 1.51: +2 -1 lines
Diff to previous 1.51 (colored)

Canonical for() -> queue.h FOREACH macro conversions.
Also, it is historical practice to #include <sys/queue.h>
when using queue.h macros.

ok thib@ krw@

special thanks to krw@ for reminders vice violence

Revision 1.51 / (download) - annotate - [select for diffs], Tue May 27 19:06:28 2008 UTC (16 years ago) by blambert
Branch: MAIN
Changes since 1.50: +33 -127 lines
Diff to previous 1.50 (colored)

Remove bloated and nasty nfsm_clget macro; while here, replace some
handrolled loops with nfsm_strtombuf and nfsm_buftombuf.

ok deraadt@ via thib@; ok 'nfs buddy' thib@
testing johan@, merdely@; thanks

Revision 1.50 / (download) - annotate - [select for diffs], Tue Apr 22 18:53:34 2008 UTC (16 years, 1 month ago) by thib
Branch: MAIN
Changes since 1.49: +26 -49 lines
Diff to previous 1.49 (colored)

remove the "kerbflag" argument from nfsrv_fhtovp() and nfs_namei()
(the latter only had it to pass it to nfsrv_fhtovp()).

appropriate cleanup also;

ok blambert@

Revision 1.49 / (download) - annotate - [select for diffs], Sun Mar 16 19:42:57 2008 UTC (16 years, 2 months ago) by otto
Branch: MAIN
Changes since 1.48: +6 -7 lines
Diff to previous 1.48 (colored)

Widen some struct statfs fields to support large filesystem stata
and add some to be able to support statvfs(2). Do the compat dance
to provide backward compatibility.  ok thib@ miod@

Revision 1.48 / (download) - annotate - [select for diffs], Sun Jan 6 17:38:23 2008 UTC (16 years, 5 months ago) by blambert
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE, OPENBSD_4_3
Changes since 1.47: +41 -41 lines
Diff to previous 1.47 (colored)

More NFS-related kernel shrinkage...

When you use a macro ~200 times, it tends to bloat your code, so make a
function out of it.

Shaves ~8.5 kB from my kernel.

ok thib@, "looks good" krw@

In snaps for 1+ week with no negative reports.

Revision 1.47 / (download) - annotate - [select for diffs], Thu Dec 27 00:08:33 2007 UTC (16 years, 5 months ago) by thib
Branch: MAIN
Changes since 1.46: +28 -40 lines
Diff to previous 1.46 (colored)

Fix for PR5365.
Use the va_blocksize, that is the blocksize of the underlying exported
file system instead of the DIRBLKSIZ constant to size the chunks.

Diff from Enache Adrian <3n4ch3@gmail.com>

Tested by myself and a few others.

Revision 1.46 / (download) - annotate - [select for diffs], Thu Nov 8 19:20:09 2007 UTC (16 years, 7 months ago) by blambert
Branch: MAIN
Changes since 1.45: +4 -4 lines
Diff to previous 1.45 (colored)

Fix unsafe queue macro use

ok thib@ 'emphatic' ok beck@

Revision 1.45 / (download) - annotate - [select for diffs], Wed Nov 7 23:40:52 2007 UTC (16 years, 7 months ago) by thib
Branch: MAIN
Changes since 1.44: +55 -29 lines
Diff to previous 1.44 (colored)

more low hanging fruit; Expand the nfsm_srvwcc_data() macro
and nuke it's definition.

OK krw@, blamers@

Revision 1.44 / (download) - annotate - [select for diffs], Tue Nov 6 19:36:44 2007 UTC (16 years, 7 months ago) by thib
Branch: MAIN
Changes since 1.43: +10 -10 lines
Diff to previous 1.43 (colored)

Expand the nfsm_srvfillattr() macro and
nuke it's definition.

OK krw@, blambert@

Revision 1.43 / (download) - annotate - [select for diffs], Sun Oct 28 14:12:41 2007 UTC (16 years, 7 months ago) by thib
Branch: MAIN
Changes since 1.42: +7 -25 lines
Diff to previous 1.42 (colored)

Remove the "frev" argument from nfs_rephead(); and clean up the "frev"
variables, that are declared all over, since they are passed via macros
to nfs_rephead(); which doesn't do anything with it.

OK krw@

Revision 1.42 / (download) - annotate - [select for diffs], Thu Sep 20 12:54:31 2007 UTC (16 years, 8 months ago) by thib
Branch: MAIN
Changes since 1.41: +20 -23 lines
Diff to previous 1.41 (colored)

MALLOC/FREE -> malloc/free + M_ZERO.
Uneeded includes and casts...

ok krw@

Revision 1.41 / (download) - annotate - [select for diffs], Tue Sep 11 13:41:52 2007 UTC (16 years, 9 months ago) by blambert
Branch: MAIN
Changes since 1.40: +33 -17 lines
Diff to previous 1.40 (colored)

Replace nfsm_reqdone and nfsm_srvdone macros inline. No binary change.

ok thib@

Revision 1.40 / (download) - annotate - [select for diffs], Sun Apr 2 18:35:11 2006 UTC (18 years, 2 months ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_4_2_BASE, OPENBSD_4_2, OPENBSD_4_1_BASE, OPENBSD_4_1, OPENBSD_4_0_BASE, OPENBSD_4_0
Changes since 1.39: +2 -1 lines
Diff to previous 1.39 (colored)

When setting timestamps TOSERVER having write permissions is adaquate;
problem experienced by Han Boetes; fix with "nfs4" rick at snowhite
dot cis dot uoguelph dot ca. ok pedro@ tedu@

Revision 1.39 / (download) - annotate - [select for diffs], Sat Jun 18 18:09:43 2005 UTC (18 years, 11 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE, OPENBSD_3_9, OPENBSD_3_8_BASE, OPENBSD_3_8
Changes since 1.38: +5 -9 lines
Diff to previous 1.38 (colored)

Remove remaining whiteout tentacles; OK deraadt@ miod@ weingart@

Revision 1.38 / (download) - annotate - [select for diffs], Thu Jun 24 19:35:26 2004 UTC (19 years, 11 months ago) by tholo
Branch: MAIN
CVS Tags: OPENBSD_3_7_BASE, OPENBSD_3_7, OPENBSD_3_6_BASE, OPENBSD_3_6
Changes since 1.37: +6 -3 lines
Diff to previous 1.37 (colored)

This moves access to wall and uptime variables in MI code,
encapsulating all such access into wall-defined functions
that makes sure locking is done as needed.

It also cleans up some uses of wall time vs. uptime some
places, but there is sure to be more of these needed as
well, particularily in MD code.  Also, many current calls
to microtime() should probably be changed to getmicrotime(),
or to the {,get}microuptime() versions.

ok art@ deraadt@ aaron@ matthieu@ beck@ sturm@ millert@ others
"Oh, that is not your problem!" from miod@

Revision 1.20.6.10 / (download) - annotate - [select for diffs], Sat Jun 5 23:13:07 2004 UTC (20 years ago) by niklas
Branch: SMP
Changes since 1.20.6.9: +23 -22 lines
Diff to previous 1.20.6.9 (colored) to branchpoint 1.20 (colored) next main 1.21 (colored)

Merge with the trunk

Revision 1.37 / (download) - annotate - [select for diffs], Fri May 14 04:00:34 2004 UTC (20 years, 1 month ago) by tedu
Branch: MAIN
CVS Tags: SMP_SYNC_B, SMP_SYNC_A
Changes since 1.36: +24 -23 lines
Diff to previous 1.36 (colored)

use pool for namei pathbuf.  testing ok millert@ tdeval@

Revision 1.20.6.9 / (download) - annotate - [select for diffs], Thu Feb 19 10:57:26 2004 UTC (20 years, 3 months ago) by niklas
Branch: SMP
Changes since 1.20.6.8: +5 -5 lines
Diff to previous 1.20.6.8 (colored) to branchpoint 1.20 (colored)

Merge of current from two weeks agointo the SMP branch

Revision 1.36 / (download) - annotate - [select for diffs], Fri Aug 15 20:32:20 2003 UTC (20 years, 10 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_3_5_BASE, OPENBSD_3_5, OPENBSD_3_4_BASE, OPENBSD_3_4
Changes since 1.35: +5 -5 lines
Diff to previous 1.35 (colored)

change arguments to suser.  suser now takes the process, and a flags
argument.  old cred only calls user suser_ucred.  this will allow future
work to more flexibly implement the idea of a root process.  looks like
something i saw in freebsd, but a little different.
use of suser_ucred vs suser in file system code should be looked at again,
for the moment semantics remain unchanged.
review and input from art@  testing and further review miod@

Revision 1.20.6.8 / (download) - annotate - [select for diffs], Sat Jun 7 11:07:43 2003 UTC (21 years ago) by ho
Branch: SMP
Changes since 1.20.6.7: +2 -6 lines
Diff to previous 1.20.6.7 (colored) to branchpoint 1.20 (colored)

Sync SMP branch to -current

Revision 1.35 / (download) - annotate - [select for diffs], Mon Jun 2 23:28:19 2003 UTC (21 years ago) by millert
Branch: MAIN
Changes since 1.34: +2 -6 lines
Diff to previous 1.34 (colored)

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999.  Proofed by myself and Theo.

Revision 1.20.6.7 / (download) - annotate - [select for diffs], Fri Mar 28 00:08:46 2003 UTC (21 years, 2 months ago) by niklas
Branch: SMP
Changes since 1.20.6.6: +55 -40 lines
Diff to previous 1.20.6.6 (colored) to branchpoint 1.20 (colored)

Sync the SMP branch with 3.3

Revision 1.28.2.3 / (download) - annotate - [select for diffs], Tue Oct 29 00:36:49 2002 UTC (21 years, 7 months ago) by art
Branch: UBC
Changes since 1.28.2.2: +28 -40 lines
Diff to previous 1.28.2.2 (colored) to branchpoint 1.28 (colored) next main 1.29 (colored)

sync to -current

Revision 1.34 / (download) - annotate - [select for diffs], Wed Jul 3 20:57:00 2002 UTC (21 years, 11 months ago) by nate
Branch: MAIN
CVS Tags: UBC_SYNC_B, UBC_SYNC_A, OPENBSD_3_3_BASE, OPENBSD_3_3, OPENBSD_3_2_BASE, OPENBSD_3_2
Changes since 1.33: +25 -37 lines
Diff to previous 1.33 (colored)

Remove unused function parameter 'cache' from nfs_rephead
ok costa@

Revision 1.33 / (download) - annotate - [select for diffs], Tue Jun 11 05:14:54 2002 UTC (22 years ago) by art
Branch: MAIN
Changes since 1.32: +4 -4 lines
Diff to previous 1.32 (colored)

splassert where comments tell us to.

Revision 1.28.2.2 / (download) - annotate - [select for diffs], Tue Jun 11 03:32:03 2002 UTC (22 years ago) by art
Branch: UBC
Changes since 1.28.2.1: +29 -2 lines
Diff to previous 1.28.2.1 (colored) to branchpoint 1.28 (colored)

Sync UBC branch to -current

Revision 1.30.2.1 / (download) - annotate - [select for diffs], Sat May 11 15:17:22 2002 UTC (22 years, 1 month ago) by jason
Branch: OPENBSD_3_1
Changes since 1.30: +25 -2 lines
Diff to previous 1.30 (colored) next main 1.31 (colored)

Pull in patch from current:
Fix (csapuntz):
Fix for PR2641. Length calculation was wrong in loop. Include comment
describing fixed length calculation

Revision 1.32 / (download) - annotate - [select for diffs], Fri May 10 22:07:08 2002 UTC (22 years, 1 month ago) by csapuntz
Branch: MAIN
Changes since 1.31: +25 -2 lines
Diff to previous 1.31 (colored)

Fix for PR2641. Length calculation was wrong in loop. Include comment
describing fixed length calculation

Revision 1.31 / (download) - annotate - [select for diffs], Mon Apr 29 07:36:32 2002 UTC (22 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.30: +5 -1 lines
Diff to previous 1.30 (colored)

constrain readdirplus request count; j@pureftpd.org, ok costa

Revision 1.20.6.6 / (download) - annotate - [select for diffs], Wed Mar 6 02:17:12 2002 UTC (22 years, 3 months ago) by niklas
Branch: SMP
Changes since 1.20.6.5: +106 -101 lines
Diff to previous 1.20.6.5 (colored) to branchpoint 1.20 (colored)

Merge in trunk

Revision 1.28.2.1 / (download) - annotate - [select for diffs], Thu Jan 31 22:55:47 2002 UTC (22 years, 4 months ago) by niklas
Branch: UBC
Changes since 1.28: +101 -99 lines
Diff to previous 1.28 (colored)

Merge in -current, builds on i386, otherwise untested

Revision 1.30 / (download) - annotate - [select for diffs], Wed Jan 16 21:51:16 2002 UTC (22 years, 4 months ago) by ericj
Branch: MAIN
CVS Tags: OPENBSD_3_1_BASE
Branch point for: OPENBSD_3_1
Changes since 1.29: +101 -99 lines
Diff to previous 1.29 (colored)


use queue.h macro's
remove register

Revision 1.29 / (download) - annotate - [select for diffs], Wed Dec 19 08:58:06 2001 UTC (22 years, 5 months ago) by art
Branch: MAIN
Changes since 1.28: +6 -3 lines
Diff to previous 1.28 (colored)

UBC was a disaster. It worked very good when it worked, but on some
machines or some configurations or in some phase of the moon (we actually
don't know when or why) files disappeared. Since we've not been able to
track down the problem in two weeks intense debugging and we need -current
to be stable, back out everything to a state it had before UBC.

We apologise for the inconvenience.

Revision 1.20.6.5 / (download) - annotate - [select for diffs], Wed Dec 5 01:02:40 2001 UTC (22 years, 6 months ago) by niklas
Branch: SMP
Changes since 1.20.6.4: +3 -6 lines
Diff to previous 1.20.6.4 (colored) to branchpoint 1.20 (colored)

Merge in -current

Revision 1.28 / (download) - annotate - [select for diffs], Tue Nov 27 05:27:12 2001 UTC (22 years, 6 months ago) by art
Branch: MAIN
CVS Tags: UBC_BASE
Branch point for: UBC
Changes since 1.27: +4 -7 lines
Diff to previous 1.27 (colored)

Merge in the unified buffer cache code as found in NetBSD 2001/03/10. The
code is written mostly by Chuck Silvers <chuq@chuq.com>/<chs@netbsd.org>.

Tested for the past few weeks by many developers, should be in a pretty stable
state, but will require optimizations and additional cleanups.

Revision 1.20.6.4 / (download) - annotate - [select for diffs], Tue Nov 13 22:59:59 2001 UTC (22 years, 7 months ago) by niklas
Branch: SMP
Changes since 1.20.6.3: +2 -2 lines
Diff to previous 1.20.6.3 (colored) to branchpoint 1.20 (colored)

merge in -current

Revision 1.27 / (download) - annotate - [select for diffs], Tue Nov 6 19:53:21 2001 UTC (22 years, 7 months ago) by miod
Branch: MAIN
Changes since 1.26: +2 -2 lines
Diff to previous 1.26 (colored)

Replace inclusion of <vm/foo.h> with the correct <uvm/bar.h> when necessary.
(Look ma, I might have broken the tree)

Revision 1.20.6.3 / (download) - annotate - [select for diffs], Wed Oct 31 03:30:29 2001 UTC (22 years, 7 months ago) by nate
Branch: SMP
Changes since 1.20.6.2: +15 -2 lines
Diff to previous 1.20.6.2 (colored) to branchpoint 1.20 (colored)

Sync the SMP branch to something just after 3.0

Revision 1.26 / (download) - annotate - [select for diffs], Thu Jul 26 20:24:47 2001 UTC (22 years, 10 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_0_BASE, OPENBSD_3_0
Changes since 1.25: +33 -10 lines
Diff to previous 1.25 (colored)

Back out changes to symlink and mknod that were not well tested.
A simple mknod at causes a kernel panic (uvm_fault).

Revision 1.25 / (download) - annotate - [select for diffs], Thu Jul 26 02:10:41 2001 UTC (22 years, 10 months ago) by assar
Branch: MAIN
Changes since 1.24: +11 -34 lines
Diff to previous 1.24 (colored)

change vop_symlink and vop_mknod to return vpp (the created node)
refed, so that the caller can actually use it.  update callers and
file systems that implement these vnode operations

ok'd by art

Revision 1.24 / (download) - annotate - [select for diffs], Fri Jul 6 21:51:13 2001 UTC (22 years, 11 months ago) by niklas
Branch: MAIN
Changes since 1.23: +15 -2 lines
Diff to previous 1.23 (colored)

From NetBSD; Server could lose requests during write-gathering, causing client
hangs.  Fixes the old typical pwd_mkdb waiting on getblk hang during
make release over NFS.

Revision 1.20.6.2 / (download) - annotate - [select for diffs], Wed Jul 4 10:55:47 2001 UTC (22 years, 11 months ago) by niklas
Branch: SMP
Changes since 1.20.6.1: +1 -36 lines
Diff to previous 1.20.6.1 (colored) to branchpoint 1.20 (colored)

Merge in -current from two days ago in the SMP branch.
As usual with merges, they do not indicate progress, so do not hold
your breath for working SMP, and do not mail me and ask about the
state of it.  It has not changed.  There is work ongoing, but very, very
slowly.  The commit is done in parts as to not lock up the tree in too
big chunks at a time.

Revision 1.23 / (download) - annotate - [select for diffs], Wed Jun 27 04:58:46 2001 UTC (22 years, 11 months ago) by art
Branch: MAIN
Changes since 1.22: +1 -9 lines
Diff to previous 1.22 (colored)

Remove old vm.

Revision 1.22 / (download) - annotate - [select for diffs], Mon Jun 25 03:28:08 2001 UTC (22 years, 11 months ago) by csapuntz
Branch: MAIN
Changes since 1.21: +1 -28 lines
Diff to previous 1.21 (colored)

Remove NQNFS

Revision 1.20.6.1 / (download) - annotate - [select for diffs], Mon May 14 22:44:57 2001 UTC (23 years, 1 month ago) by niklas
Branch: SMP
Changes since 1.20: +8 -3 lines
Diff to previous 1.20 (colored)

merge in approximately 2.9 into SMP branch

Revision 1.21 / (download) - annotate - [select for diffs], Sun Mar 25 08:26:17 2001 UTC (23 years, 2 months ago) by csapuntz
Branch: MAIN
CVS Tags: OPENBSD_2_9_BASE, OPENBSD_2_9
Changes since 1.20: +8 -3 lines
Diff to previous 1.20 (colored)



Fix v3 double-free, potential mrep double-free. Thanks to dawson and Team for
finding these

Found a potential vnode leak in there too.

Revision 1.20 / (download) - annotate - [select for diffs], Mon Mar 15 15:58:09 1999 UTC (25 years, 3 months ago) by deraadt
Branch: MAIN
CVS Tags: kame_19991208, SMP_BASE, OPENBSD_2_8_BASE, OPENBSD_2_8, OPENBSD_2_7_BASE, OPENBSD_2_7, OPENBSD_2_6_BASE, OPENBSD_2_6, OPENBSD_2_5_BASE, OPENBSD_2_5
Branch point for: SMP
Changes since 1.19: +12 -11 lines
Diff to previous 1.19 (colored)

do not call nfsm_adj() with negative values; dm

Revision 1.19 / (download) - annotate - [select for diffs], Fri Feb 26 03:16:25 1999 UTC (25 years, 3 months ago) by art
Branch: MAIN
Changes since 1.18: +9 -1 lines
Diff to previous 1.18 (colored)

compatibility with uvm vnode pager

Revision 1.18 / (download) - annotate - [select for diffs], Sat Feb 6 23:07:42 1999 UTC (25 years, 4 months ago) by millert
Branch: MAIN
Changes since 1.17: +8 -8 lines
Diff to previous 1.17 (colored)

Use bitwise operations to extract high and low words from the quad
in txdr_hyper.  This should be more portable than casting to an array
of ints and pulling out the two 32-bit words (this produced incorrect
results on alpha for the high word for filesystems < 4gig).  As a side
effect, txdr_hyper now takes a u_quad_t as its first arg, not u_quad_t *.

Revision 1.17 / (download) - annotate - [select for diffs], Mon Feb 1 17:44:17 1999 UTC (25 years, 4 months ago) by millert
Branch: MAIN
Changes since 1.16: +5 -5 lines
Diff to previous 1.16 (colored)

non-root users can mkfifo over NFS; mrg@netbsd.org

Revision 1.16 / (download) - annotate - [select for diffs], Wed Aug 19 22:26:52 1998 UTC (25 years, 9 months ago) by csapuntz
Branch: MAIN
CVS Tags: OPENBSD_2_4_BASE, OPENBSD_2_4
Changes since 1.15: +9 -9 lines
Diff to previous 1.15 (colored)



Change fxdr_hyper to return a u_quad_t. This minimizes the evil clobbering
of lvalues that ANSI abhors.

And it fixes df on NFS version 3 mounts on Sparcs.

Revision 1.15 / (download) - annotate - [select for diffs], Sun Feb 22 01:21:31 1998 UTC (26 years, 3 months ago) by niklas
Branch: MAIN
CVS Tags: OPENBSD_2_3_BASE, OPENBSD_2_3
Changes since 1.14: +7 -25 lines
Diff to previous 1.14 (colored)

Changes made for GCC 2.8 -Wall pleasures

Revision 1.14 / (download) - annotate - [select for diffs], Thu Nov 6 05:59:02 1997 UTC (26 years, 7 months ago) by csapuntz
Branch: MAIN
Changes since 1.13: +16 -35 lines
Diff to previous 1.13 (colored)

Updates for VFS Lite 2 + soft update.

Revision 1.13 / (download) - annotate - [select for diffs], Mon Oct 6 20:20:47 1997 UTC (26 years, 8 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_2_BASE, OPENBSD_2_2
Changes since 1.12: +34 -15 lines
Diff to previous 1.12 (colored)

back out vfs lite2 till after 2.2

Revision 1.12 / (download) - annotate - [select for diffs], Mon Oct 6 15:23:42 1997 UTC (26 years, 8 months ago) by csapuntz
Branch: MAIN
Changes since 1.11: +16 -35 lines
Diff to previous 1.11 (colored)

VFS Lite2 Changes

Revision 1.11 / (download) - annotate - [select for diffs], Fri Apr 18 09:22:45 1997 UTC (27 years, 1 month ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_1_BASE, OPENBSD_2_1
Changes since 1.10: +3 -3 lines
Diff to previous 1.10 (colored)

indent

Revision 1.10 / (download) - annotate - [select for diffs], Fri Jan 31 10:30:48 1997 UTC (27 years, 4 months ago) by deraadt
Branch: MAIN
Changes since 1.9: +3 -3 lines
Diff to previous 1.9 (colored)

do not walk off the end of a directory info buffer; netbsd pr#3170, mhitch@gemini.oscs.montana.edu

Revision 1.9 / (download) - annotate - [select for diffs], Tue Jan 28 18:50:21 1997 UTC (27 years, 4 months ago) by niklas
Branch: MAIN
Changes since 1.8: +3 -1 lines
Diff to previous 1.8 (colored)

Put back lost VOP_GETATTR call, but in a better place

Revision 1.8 / (download) - annotate - [select for diffs], Sat Dec 14 15:36:50 1996 UTC (27 years, 6 months ago) by deraadt
Branch: MAIN
Changes since 1.7: +28 -24 lines
Diff to previous 1.7 (colored)

better nfsrv_access() control, from netbsd

Revision 1.7 / (download) - annotate - [select for diffs], Fri Nov 8 23:20:14 1996 UTC (27 years, 7 months ago) by niklas
Branch: MAIN
Changes since 1.6: +3 -3 lines
Diff to previous 1.6 (colored)

Rearrange condition so invalid dereferences can't happen

Revision 1.6 / (download) - annotate - [select for diffs], Sun Apr 21 22:30:23 1996 UTC (28 years, 1 month ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_0_BASE, OPENBSD_2_0
Changes since 1.5: +32 -27 lines
Diff to previous 1.5 (colored)

partial sync with netbsd 960418, more to come

Revision 1.5 / (download) - annotate - [select for diffs], Wed Apr 17 04:50:27 1996 UTC (28 years, 2 months ago) by mickey
Branch: MAIN
Changes since 1.4: +31 -39 lines
Diff to previous 1.4 (colored)

Minor cleanups. Checked against Lite2.
(NetBSD's was really just a Lite2's, but w/ 64bit support)

Revision 1.4 / (download) - annotate - [select for diffs], Sun Mar 31 13:15:41 1996 UTC (28 years, 2 months ago) by mickey
Branch: MAIN
Changes since 1.3: +2135 -745 lines
Diff to previous 1.3 (colored)

From NetBSD: NFSv3 import (tomorrow's Net's kernel)
Open's patches kept in. i'll possibly take a look at Lite2 soon,
is there smth usefull ?..

Revision 1.3 / (download) - annotate - [select for diffs], Thu Feb 29 09:24:52 1996 UTC (28 years, 3 months ago) by niklas
Branch: MAIN
Changes since 1.2: +146 -100 lines
Diff to previous 1.2 (colored)

From NetBSD: merge with 960217 (still NFSv2)

Revision 1.2 / (download) - annotate - [select for diffs], Thu Dec 21 14:42:21 1995 UTC (28 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.1: +72 -72 lines
Diff to previous 1.1 (colored)

from cgd; handle 64-bit pointers and longs

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Wed Oct 18 08:53:22 1995 UTC (28 years, 8 months ago) by deraadt
CVS Tags: netbsd_1_1
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)

initial import of NetBSD tree

Revision 1.1 / (download) - annotate - [select for diffs], Wed Oct 18 08:53:22 1995 UTC (28 years, 8 months ago) by deraadt
Branch: MAIN

Initial revision

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