Commit Graph

95890 Commits

Author SHA1 Message Date
pooka
28fdf2df68 support cv_has_waiters() 2008-07-18 16:19:12 +00:00
pooka
00e37d073d emulate vlog() 2008-07-18 16:18:04 +00:00
pooka
6fed9eb99d Don't biohazardwait B_ASYNC buffers. 2008-07-18 16:15:56 +00:00
reinoud
e7c5eefcfb fix comment 2008-07-18 15:55:32 +00:00
reinoud
5f233d9346 On dirhash lookup, don't retrieve info you already have. 2008-07-18 14:18:51 +00:00
reinoud
f0040136a6 Remove double check 2008-07-18 13:39:41 +00:00
reinoud
43188548d8 First retrieve length and hash values *before* advancing to the next entry.
On hashline collision it would check a random one next.
2008-07-18 13:34:05 +00:00
reinoud
aa9cb3deaa Instead of bombing out when trying to mount a disc RW when UDF_READWRITE is
not defined, downgrade it to a read-only mount.
2008-07-18 12:45:08 +00:00
rmind
a7fc471680 PR/39155: Wolfgang Solfrank: Invalid parameter to turnstile_exit in rw_downgrade. 2008-07-17 23:00:01 +00:00
reinoud
2ac28d554b Implement directory hashing to speed up directory traversals. Speed
improvements of at least 4 times in untarring and roughly 100 to 500 times
on file creation in big directories. Lookup of files was O(n*n) and is now
O(1) even for file creation. Free spaces in the directory are kept in a
seperate list for fast file creation.

The postmark benchmark gives:

UDF old:
pm>set transactions 2000
pm>set number 3000
pm>run
Creating files...Done
Performing transactions..........Done
Deleting files...Done
Time:
        1593 seconds total
        681 seconds of transactions (2 per second)

Files:
        3956 created (2 per second)
                Creation alone: 3000 files (4 per second)
                Mixed with transactions: 956 files (1 per second)
        990 read (1 per second)
        1010 appended (1 per second)
        3956 deleted (2 per second)
                Deletion alone: 2912 files (9 per second)
                Mixed with transactions: 1044 files (1 per second)

Data:
        5.26 megabytes read (3.38 kilobytes per second)
        21.93 megabytes written (14.10 kilobytes per second)
pm>



UDF new:
pm>set transactions 2000
pm>set number 3000
pm>run
Creating files...Done
Performing transactions..........Done
Deleting files...Done
Time:
        19 seconds total
        3 seconds of transactions (666 per second)

Files:
        3956 created (208 per second)
                Creation alone: 3000 files (230 per second)
                Mixed with transactions: 956 files (318 per second)
        990 read (330 per second)
        1010 appended (336 per second)
        3956 deleted (208 per second)
                Deletion alone: 2912 files (970 per second)
                Mixed with transactions: 1044 files (348 per second)

Data:
        5.26 megabytes read (283.66 kilobytes per second)
        21.93 megabytes written (1.15 megabytes per second)
2008-07-17 19:10:22 +00:00
tsutsui
770f58015d Revert part of previous changes:
> make makeiplcookie() return PSL bits via ipl2psl_table[]
> rather than IPL_FOO indexes
because ipl2psl_table[] could be updated during autoconf(9)
and we can't use it as cookie before cpu_configure(9).
2008-07-17 16:13:33 +00:00
reinoud
441bae21b1 Dont round up nanosecond count; if its nearing wrap one could get a count
of >1 second resulting in invalid time stamps on disc.
2008-07-17 15:37:59 +00:00
cegger
2515b0ec09 make this compile 2008-07-17 14:43:38 +00:00
cegger
075c838a83 devive_private -> device_private 2008-07-17 14:39:26 +00:00
cegger
1ca90441b2 use device_xname 2008-07-17 13:39:50 +00:00
cegger
f2b690d08e remove redundant declaration of tvtohz(). It's declared in <sys/timevar.h>.
Makes i386 ALL kernel build again.
2008-07-17 13:35:07 +00:00
pooka
3e3b9ce9de Deregister fakeblock path immediately after mount to get it
deregistered also in the case of an error.
2008-07-17 11:25:07 +00:00
reinoud
31a383903d Since the rename logic now locks its source directory too, we ought to
unlock the source directory again on exit. The stub that doesn't allow
cross directory renames for now jumped to the wrong exit point and thus
left a locked directory node that paniced on next locking.
2008-07-17 11:00:29 +00:00
skrll
d2b1f0c9d9 Bump image size to deal with bloat. 2008-07-17 07:01:30 +00:00
pooka
cc7d901591 vfs_subr2 has lost its will to live. vfs_subr was originally split
into two parts so that some of the routines could be used by rump.
Now that rump uses both vfs_subr and vfs_subr2 and there is no
reason to keep two files lying around, re-unite them.
2008-07-16 20:06:19 +00:00
drochner
152044172b add a KASSERT to check the protection bits before using as array index 2008-07-16 18:56:34 +00:00
drochner
983ec2783f split device/softc for sd (tested with a USB stick) 2008-07-16 18:54:09 +00:00
drochner
a3df0dfc03 split device/softc for scsibus 2008-07-16 18:50:58 +00:00
drochner
8b720093a8 wipe out tty buffer contents after read, to avoid keeping possibly
sensitive information in memory longer than necessary
(We could make this depend on ~ECHO or so, but this would be an API
change and I don't think it is worth the effort.)
2008-07-16 18:27:49 +00:00
perry
7549434e22 Add -DM to the newvers_stand.h invocation.
Why is there a "Makefile.boot" used here, and a "Makefile.booters"
used one level up, with redundant stuff between both of them? This all
used to be so clean...
2008-07-16 16:13:38 +00:00
pooka
2707ee274f bring todo list upper-to-dater 2008-07-16 15:54:24 +00:00
pooka
76ee3b3a51 Sync data to baking storage in ukfs_write() 2008-07-16 15:44:11 +00:00
pooka
514afdda21 regen: fsync 2008-07-16 15:43:30 +00:00
pooka
b09210ace9 rumpalooza sys_fsync 2008-07-16 15:42:54 +00:00
tsutsui
a3c412626c Disable more pseudo-devices to shrink an install kernel. 2008-07-16 15:22:50 +00:00
tsutsui
6415b4ca38 Change boot messages to replace build date and maker with kernrev. 2008-07-16 14:45:17 +00:00
matt
3e3119f9fe Default PMAP_KMPAGE to 0 unless it's been previously defined by
<machine/pmap.h>
2008-07-16 14:33:09 +00:00
tsutsui
a6ea1c4a92 Change boot messages to replace build date and maker with kernrev. 2008-07-16 13:44:51 +00:00
tsutsui
fc10d3a3fc Change boot messages to replace build date and maker with kernrev. 2008-07-16 13:19:20 +00:00
perry
ab1cc5d822 Call newvers_stand.sh with -DM so we don't include the (unused) date
and builder in the data segment.
2008-07-16 12:52:37 +00:00
reinoud
d61a135a38 Make UDF allocation-sanity check optional even if the DEBUG flag is
specified. This should be sysctl-able when compiled with the DEBUG flag
eventually.
2008-07-16 09:36:08 +00:00
tonnerre
232e862b92 Don't ignore poor retarded ubt(4) devices which have vendor and product id
== 0. Discovered by mballmer@obsd, ok'd by plucky@.
2008-07-16 08:43:01 +00:00
chs
a1677d385b in pmap_map(), use pmap_kenter_pa() instead of pmap_enter()
so that we don't need to allocate memory to create the mapping.
this should help with getting crash dumps more reliably.
2008-07-16 03:22:04 +00:00
matt
1f9c1ede20 Revamp bookkeeping for pages entered by pmap_kenter_pa. Keep track of them
on pvlists so that the cacheability can be properly tracked.
2008-07-16 00:19:57 +00:00
perry
e2eca0cfb3 make vers.c also depend on the script that builds vers.c 2008-07-16 00:16:17 +00:00
matt
ad65eb54bc Add PMAP_KMPAGE flag for pmap_kenter_pa. This allows pmaps to know that
the page being entered is being for the kernel memory allocator.  Such pages
should have no references and don't need bookkeeping.
2008-07-16 00:11:27 +00:00
perry
ac6f476b2b Update the version numbers following commit, and make them all identical. 2008-07-15 23:16:26 +00:00
tonnerre
5bc4657a0a Regen. 2008-07-15 22:27:31 +00:00
tonnerre
8d218a9ef7 Add some PCI IDs from the Thinkpad T61/X61/R61 series as observed in
PR 37988 and on my own T61.
2008-07-15 22:26:42 +00:00
christos
460ae70d0a make l_flags contain more stuff. Fixes top thread display where system processes
were always displayed.
2008-07-15 22:25:30 +00:00
perry
17bba44783 Change the x86 boot blocks so they don't include builder login and date.
For now, we include kernel revision as a way of allowing users to
notice that boot blocks have gotten very old, so the first line of the
printout looks like this (depending on the particular block):

  >> NetBSD/x86 BIOS Boot, Revision 3.4 (from NetBSD 5.0)

This may be changed a bit pending feedback. (Some people think that
the kernel revision shouldn't be there at all, for example.)

Part of the project to assure that bit-identical sources produce
bit-identical release binaries.
2008-07-15 21:29:37 +00:00
perry
9b5b7fcda3 Add the kernel revision to vers.c, as in:
const char bootprog_kernrev[] = "4.99.70";

For now, we still also include the builder name and date and such, so
that we don't break anything, but those are (probably) on the way out.

Part of the "bit-identical sources yield bit-identical release files"
project.
2008-07-15 20:10:06 +00:00
pooka
aa652b7453 Nuke the "-p" argument to ukfs_mkdir(). It's not a particularly
brilliant idea to provide that functionality at this level.
2008-07-15 16:21:19 +00:00
dyoung
2e4b9b5581 Make acpilid(4) detachable. 2008-07-15 16:19:37 +00:00
christos
aa389c698d Use more timespecs internally. From Alexander Shishkin and me.
Welcome to 4.99.70, 30 more to go for 100.
2008-07-15 16:18:08 +00:00