#
074ac62c |
| 10-Sep-2010 |
thib <thib@openbsd.org> |
Backout the VOP diff until the issues naddy was seeing on alpha (gcc3) have been resolved.
|
#
57593ff0 |
| 06-Sep-2010 |
thib <thib@openbsd.org> |
End the VOP experiment. Instead of the ridicolusly complicated operation vector setup that has questionable features (that have, as far as I can tell never been used in practice, atleast not in OpenB
End the VOP experiment. Instead of the ridicolusly complicated operation vector setup that has questionable features (that have, as far as I can tell never been used in practice, atleast not in OpenBSD), remove all the gunk and favor a simple struct full of function pointers that get set directly by each of the filesystems.
Removes gobs of ugly code and makes things simpler by a magnitude.
The only downside of this is that we loose the vnoperate feature so the spec/fifo operations of the filesystems need to be kept in sync with specfs and fifofs, this is no big deal as the API it self is pretty static.
Many thanks to armani@ who pulled an earlier version of this diff to current after c2k10 and Gabriel Kihlman on tech@ for testing.
Liked by many. "come on, find your balls" deraadt@.
show more ...
|
#
516ce4e4 |
| 03-Jul-2010 |
thib <thib@openbsd.org> |
no need for syncdelay to be a time_t, make it it an int. unstatic variables so I can twiddle them from ddb (not that I will mess with the hashmask, but static burns).
ok tedu@
|
#
f34766f9 |
| 13-Aug-2009 |
jasper <jasper@openbsd.org> |
- remove super-obvious comments from $fs_vnodeop_entries[]
prodded by and ok thib@ agreed by art@ and blambert@
|
#
e265d2c7 |
| 08-May-2008 |
thib <thib@openbsd.org> |
retire vn_default_error() and replace all instances with eopnotsupp() instead;
ok blambert@
|
#
99bc9d31 |
| 01-Jun-2007 |
deraadt <deraadt@openbsd.org> |
pedro ok'd this ~3500 line diff which removes the vop argument "ap = v" comments in under 8 seconds, so it must be ok. and it compiles too.
|
#
d42f6c34 |
| 18-Nov-2006 |
jmc <jmc@openbsd.org> |
more fixes from bret lambert; ok pedro
|
#
28d58497 |
| 25-Jun-2006 |
sturm <sturm@openbsd.org> |
rename vfs_busy() flags VB_UMIGNORE/VB_UMWAIT to VB_NOWAIT/VB_WAIT
requested by and ok pedro
|
#
2e6147f2 |
| 14-Jun-2006 |
sturm <sturm@openbsd.org> |
move vfs_busy() to rwlocks and properly hide the locking api from vfs
ok tedu, pedro
|
#
b93f587a |
| 30-Apr-2006 |
sturm <sturm@openbsd.org> |
remove the simplelock argument from vfs_busy() which is currently not used and will never be used this way in VFS
requested by and ok pedro, ok krw, biorn
|
#
baca40a0 |
| 19-Apr-2006 |
pedro <pedro@openbsd.org> |
Remove unused mount list simple_lock() goo
|
#
4df17c52 |
| 09-Jan-2006 |
pedro <pedro@openbsd.org> |
Put vprint() under DIAGNOSTIC, as to save space in generated ramdisks. Inspiration from miod@, okay deraadt@. Tested on i386, macppc and amd64.
|
#
139e3b10 |
| 30-Nov-2005 |
pedro <pedro@openbsd.org> |
No need for vfs_busy() and vfs_unbusy() to take a process pointer anymore. Testing by jolan@, thanks.
|
#
1645391e |
| 06-Nov-2005 |
pedro <pedro@openbsd.org> |
Use ANSI-style function declarations, no binary change, okay jsg@
|
#
8a742fca |
| 19-Oct-2005 |
pedro <pedro@openbsd.org> |
Remove v_vnlock from struct vnode, okay krw@ tedu@
|
#
01b91d53 |
| 04-Oct-2005 |
pedro <pedro@openbsd.org> |
Make the syncer grab a reference for the vnode to avoid it from being reclaimed while in this sensitive time frame. That is needed when we don't have locks. Should fix the 'sched_sync: fsync failed'
Make the syncer grab a reference for the vnode to avoid it from being reclaimed while in this sensitive time frame. That is needed when we don't have locks. Should fix the 'sched_sync: fsync failed' panic some people were seeing.
Testing mostly by sturm@ and krw@, okay tedu@ and deraadt@.
show more ...
|
#
793a9d87 |
| 31-May-2005 |
art <art@openbsd.org> |
Protect the run queues with SCHED_LOCK, not just spl (ot nothing at all in one case fixed here).
miod@ "appears to be harmless" markus@ ok
|
#
5bc652b1 |
| 29-May-2005 |
deraadt <deraadt@openbsd.org> |
sched work by niklas and art backed out; causes panics
|
#
51e884f5 |
| 25-May-2005 |
niklas <niklas@openbsd.org> |
This patch is mortly art's work and was done *a year* ago. Art wants to thank everyone for the prompt review and ok of this work ;-) Yeah, that includes me too, or maybe especially me. I am sorry.
This patch is mortly art's work and was done *a year* ago. Art wants to thank everyone for the prompt review and ok of this work ;-) Yeah, that includes me too, or maybe especially me. I am sorry.
Change the sched_lock to a mutex. This fixes, among other things, the infamous "telnet localhost &" problem. The real bug in that case was that the sched_lock which is by design a non-recursive lock, was recursively acquired, and not enough releases made us hold the lock in the idle loop, blocking scheduling on the other processors. Some of the other processors would hold the biglock though, which made it impossible for cpu 0 to enter the kernel... A nice deadlock. Let me just say debugging this for days just to realize that it was all fixed in an old diff noone ever ok'd was somewhat of an anti-climax.
This diff also changes splsched to be correct for all our architectures.
show more ...
|
#
97b35d1d |
| 29-Oct-2004 |
pedro <pedro@openbsd.org> |
silly typo...
|
#
d3acf141 |
| 15-Aug-2004 |
pedro <pedro@openbsd.org> |
protect code dealing with the vnode sync list with splbio(). fixes the 'fsync failed' panic on amd64. discussed with and ok'd by art@, tedu@ and deraadt@. tested by many (thanks).
|
#
650aee66 |
| 03-Aug-2004 |
art <art@openbsd.org> |
Print more diagnostics on fsync failure in sched_sync.
|
#
3212dc31 |
| 21-Jun-2004 |
tholo <tholo@openbsd.org> |
First step towards more sane time handling in the kernel -- this changes things such that code that only need a second-resolution uptime or wall time, and used to get that from time.tv_secs or mono_t
First step towards more sane time handling in the kernel -- this changes things such that code that only need a second-resolution uptime or wall time, and used to get that from time.tv_secs or mono_time.tv_secs now get this from separate time_t globals time_second and time_uptime.
ok art@ niklas@ nordin@
show more ...
|
#
01b77f95 |
| 01-Sep-2003 |
henning <henning@openbsd.org> |
match syscallargs comments with reality from Patrick Latifi <patrick.l@hermes.usherb.ca> ok jason@ tedu@
|
#
29295d1c |
| 02-Jun-2003 |
millert <millert@openbsd.org> |
Remove the advertising clause in the UCB license which Berkeley rescinded 22 July 1999. Proofed by myself and Theo.
|