Rui Paulo [Tue, 23 Feb 2010 20:55:15 +0000 (20:55 +0000)]
Merge branch 'master' into net80211-update
Rui Paulo [Tue, 23 Feb 2010 20:52:57 +0000 (20:52 +0000)]
My kernel config file.
Rui Paulo [Tue, 23 Feb 2010 20:52:08 +0000 (20:52 +0000)]
Add arpcom at the beggining of the softc and enable hal debugging.
Rui Paulo [Tue, 23 Feb 2010 20:51:45 +0000 (20:51 +0000)]
Sync ath_rate_sample with FreeBSD.
Rui Paulo [Tue, 23 Feb 2010 20:50:30 +0000 (20:50 +0000)]
Sync ifieee80211 ifconfig code with FreeBSD.
Rui Paulo [Tue, 23 Feb 2010 20:49:21 +0000 (20:49 +0000)]
Register ieee80211 l2com.
Rui Paulo [Tue, 23 Feb 2010 20:48:23 +0000 (20:48 +0000)]
Bring if_l2com register/unregister functions from FreeBSD.
Jan Lentfer [Tue, 23 Feb 2010 19:15:27 +0000 (20:15 +0100)]
top: Fix man page
Explanation for column "C" on multi-CPU
machines was missing.
Matthew Dillon [Tue, 23 Feb 2010 18:41:20 +0000 (10:41 -0800)]
libexpat - Fix buildworld
* Fix library symbol. DragonFly's /bin and /sbin are statically linked,
we don't have or need a /lib.
Matthew Dillon [Tue, 23 Feb 2010 17:45:29 +0000 (09:45 -0800)]
libexpat - Bring in libexpat from contrib, name it libbsdxml
* Will be used in rpaulo's wifi port update.
Taken-from: FreeBSD
Matthew Dillon [Tue, 23 Feb 2010 17:41:46 +0000 (09:41 -0800)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Tue, 23 Feb 2010 17:39:50 +0000 (09:39 -0800)]
contrib/expat - Apply two vendor fixes for CVE-2009-3720.
Taken-from: FreeBSD
Matthew Dillon [Tue, 23 Feb 2010 17:38:19 +0000 (09:38 -0800)]
contrib/expat - Add README.DRAGONFLY
Matthew Dillon [Tue, 23 Feb 2010 17:36:26 +0000 (09:36 -0800)]
Merge branch 'vendor/EXPAT'
Matthew Dillon [Tue, 23 Feb 2010 17:36:09 +0000 (09:36 -0800)]
Import expat-2.0.1
Sascha Wildner [Tue, 23 Feb 2010 17:33:45 +0000 (18:33 +0100)]
compilers.conf.5: Add IMPLEMENTATION NOTES for some more details.
Sascha Wildner [Tue, 23 Feb 2010 16:13:31 +0000 (17:13 +0100)]
tmpfs.5: Clean up SEE ALSO a bit.
Sascha Wildner [Tue, 23 Feb 2010 15:09:06 +0000 (16:09 +0100)]
Adjust the compiler wrapper script to use pkgsrc's clang for CCVER=clang.
* Move the definitions for the SVN version to 'clangsvn'.
* Expand the compilers.conf(5) manual page a bit and give more (better)
examples.
Thanks to Jim Chapman <cchapman8@cogeco.ca> for help with testing.
Matthew Dillon [Mon, 22 Feb 2010 17:51:08 +0000 (09:51 -0800)]
kernel - Fix some rare pmap races in i386 and x86_64 (followup)
* Fix build issue with vkernels
Reported-by: corecode
Rui Paulo [Mon, 22 Feb 2010 16:25:57 +0000 (16:25 +0000)]
Replace bus_dmamap_load_mbuf_sg() with bus_dmamap_load_mbuf_segment().
Rui Paulo [Mon, 22 Feb 2010 16:25:37 +0000 (16:25 +0000)]
Bring in m_colapse() from FreeBSD.
Matthew Dillon [Mon, 22 Feb 2010 16:23:04 +0000 (08:23 -0800)]
swapcache - documentation update (data caching, read/write concurrency)
* Update the manual page to expand on issues when caching bulk data,
including read/write concurrency issues with SSDs.
Rui Paulo [Mon, 22 Feb 2010 16:13:12 +0000 (16:13 +0000)]
Sync if_ath with FreeBSD.
Rui Paulo [Mon, 22 Feb 2010 12:01:09 +0000 (12:01 +0000)]
Update ath_hal from FreeBSD.
Samuel J. Greear [Mon, 22 Feb 2010 09:00:47 +0000 (02:00 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Mon, 22 Feb 2010 15:40:05 +0000 (07:40 -0800)]
kernel - Refactor vnode_free_list, vnode reuse algorithm
* Rip out most of he VAGEx stuff. It might come back in another form
later.
* Split the vnode_free_list into three parts, separated by two markers
(vnode_free_mid1 and vnode_free_mid2).
* Insert vnodes on the free list based on the following. New vnodes
are allocated from the base of the list.
At the HEAD - If the vnode is VRECLAIMED (i.e. dead)
end of first section - If the vnode has no cached VM or SWAP data
end of second section - If the vnode has cached SWAP data and no cached VM
at the TAIL - If the vnode has cached VM data
* Implement a rover to slowly scan vnodes in the list when allocating
and shift them to the appropriate section. This fixes a degenerate
condition in the placement of the markers.
* A Vnode is removed and usually immediately reinserted whenever it
is accesesd by userland but not held open, giving us a LRU-like
algorithm within each section of the list but non-LRU-like transits
between sections of the list.
Transits between sections are determined more by how the VM system
recycles related VM cache pages. Cached SWAP data only occurs if
the swapcache is turned on.
* Future: Might use VAGE to implement a second go-around in the queue
or a burst re-placement in the queue when the data set is found to
be too big to fit.
Matthew Dillon [Mon, 22 Feb 2010 07:44:27 +0000 (23:44 -0800)]
kernel - swapcache - Fix snocache and cache flags propagation, fix PG_NOTMETA
* The namecache was not always propagating the snocache and cache
chflags flags. Now it is. However, the flags no longer propagate
across mount points.
* The vm_page PG_NOMETA flag was being improperly applied to regular
files. It only applies to VCHR vnodes.
* blogbench tests show significant improvement but swapcache is still
missing some data or meta-data somewhere.
Matthew Dillon [Mon, 22 Feb 2010 07:42:12 +0000 (23:42 -0800)]
chflags, swapcache manual page updates - cache flag does not cross mounts
* The cache and noscache flags do not cross mount points any more.
Matthew Dillon [Mon, 22 Feb 2010 07:40:43 +0000 (23:40 -0800)]
kernel - NFS - Add the 'cache' flag to enable swapcache on a NFS mount
* The current round of swapcache work doesn't propagate the cache flag
across mount points so NFS needs a cache mount flag.
Samuel J. Greear [Mon, 22 Feb 2010 07:23:12 +0000 (00:23 -0700)]
Test commit
Matthew Dillon [Mon, 22 Feb 2010 02:49:01 +0000 (18:49 -0800)]
kernel - Remove some debug kprintf()s
* Remove "warning, locked buf ..., race corrected" debugging kprintf.
Matthew Dillon [Mon, 22 Feb 2010 02:47:34 +0000 (18:47 -0800)]
kernel - Fix some rare pmap races in i386 and x86_64 (followup)
* pmap_interlock_wait() is SMP-only. Fix UP build.
* pmap_setlwpvm for i386 was missing a call to pmap_interlock_wait()
Matthew Dillon [Mon, 22 Feb 2010 02:33:43 +0000 (18:33 -0800)]
kernel - SWAP CACHE part 22/many - Fix counter overflow introduced in part 21
* vm_swapcache_inactive_heuristic can overflow, making it extremely negative
and causing swapcache writing to cease for a long period of time.
* Two-in-one fix. Check if it is too negative and reset it. This also
automatically adjusts the heuristic if the sysop manually changes
the hysteresis to a smaller value.
Matthew Dillon [Mon, 22 Feb 2010 02:23:13 +0000 (18:23 -0800)]
kernel - Fix some rare pmap races in i386 and x86_64.
* Adjust pmap_inval_init() to enter a critical section and add
a new pmap_inval_done() function which flushes and exits it.
It was possible for an interrupt or other preemptive action to
come along during a pmap operation and issue its own pmap operation,
potentially leading to races which corrupt the pmap.
This case was tested an could actually occur, though the damage (if any)
is unknown. x86_64 machines have had a long standing and difficult to
reproduce bug where a program would sometimes seg-fault for no reason.
It is unknown whether this fixes the bug or not.
* Interlock the pmap structure when invalidating pages using a bit
in the pm_active field.
Check for the interlock in swtch.s when switching into threads
and print a nice warning if it occurs.
It was possible for one cpu to initiate a pmap modifying operation
while another switches into a thread using the pmap the first cpu
was in the middle of modifying. The case is extremely rare but can
occur if the cpu doing the modifying operation receives a SMI
interrupt, stalling it long enough for the other cpu to switch
into the thread and resume running in userspace.
* pmap_protect() assumed no races when clearing PG_RW and PG_M due
to the pmap_inval operations it runs. This should in fact be
true with the above fixes. However, the rest of the pmap code
uses atomic operations so adjust pmap_protect() to also use atomic
operations.
Sascha Wildner [Mon, 22 Feb 2010 01:16:55 +0000 (02:16 +0100)]
setkey(8): Add missing token to fix a yacc warning.
YONETANI Tomokazu [Sun, 21 Feb 2010 22:36:59 +0000 (07:36 +0900)]
HAMMER Utility - Fix snapshots migration for non-default directories
Snapshots migration failed if the snapshots directory contained hyphens
or dots. Also catch the case when it couldn't parse the name of a snapshot
symlink and give the operator a clue.
YONETANI Tomokazu [Sun, 21 Feb 2010 15:01:00 +0000 (00:01 +0900)]
Merge SUBDIRS and SUBDIRS3 and their LSYM* versions.
This also fixes three error messages caused by the wrong symlink
for dev/disk/mpt/mpilib, which doesn't actually belong to SUBDIRS3
because it has four directory components in the path.
Matthew Dillon [Sun, 21 Feb 2010 19:41:03 +0000 (11:41 -0800)]
kernel - TMPFS - Stabilization pass, fix assertion in nrmdir (again)
* Oops, fix bug in last commit. vp was garbage where it was being tested.
Matthew Dillon [Sun, 21 Feb 2010 16:41:15 +0000 (08:41 -0800)]
kernel - TMPFS - Stabilization pass, fix assertion in nrmdir
* Have tmpfs_nrmdir() test whether the vp is a directory and return
the proper error before asserting that it is a directory.
* Fixes assertion panic if you attempt to rmdir a file in tmpfs.
Matthew Dillon [Sun, 21 Feb 2010 16:12:15 +0000 (08:12 -0800)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Constantine A. Murenin [Sun, 21 Feb 2010 12:09:32 +0000 (07:09 -0500)]
aps(4): use more c99
Michael Neumann [Sun, 21 Feb 2010 11:39:26 +0000 (12:39 +0100)]
HAMMER - Fix mirroring between 32 and 64-bit machines
We need to pack struct hammer_pseudofs_data as it had differing sizes
on 32-bit vs. 64-bit machines. As this structure is send over-the-wire
this lead to an early abort in the hammer mirroring code (cmd_mirror.c)
when mirroring a PFS from a 32-bit machine to a 64-bit machine or vice
versa as it sanity checks the packets it gets.
Even so the structure is stored on-media, the change in size is no
issue as the tail is zero-padded with reserved fields.
WARNING:
After this change, mirroring between 64-bit machines predating
this commit and updated 64-bit machines will no longer work.
PLEASE UPDATE them all in one go or leave them unmodified.
32-bit machines are not affected at all, as this commit does
not change the size of the structure for 32-bit machines.
Discussed-with: Matthew Dillon
Matthew Dillon [Sun, 21 Feb 2010 02:41:58 +0000 (18:41 -0800)]
kernel - Update swapcache manual page, document meta-data/inode ratios
* Document the meta-data cache vs inode ratio when configuring swapcache
for meta-data caching.
Matthew Dillon [Sun, 21 Feb 2010 02:22:12 +0000 (18:22 -0800)]
kernel - Update swapcache manual page, fix breakage in last commit
* Oops, a bunch of stuff was accidently removed in the last
update, add it back in.
Constantine A. Murenin [Sat, 20 Feb 2010 23:32:48 +0000 (18:32 -0500)]
acpi_thinkpad(4): the refresh function should be declarared as per prototype
* The refresh function should be static void, the inconsistency is again
linked to
10f97674 (through bringing back the refresh function from 48cf177).
Constantine A. Murenin [Sat, 20 Feb 2010 23:15:56 +0000 (18:15 -0500)]
acpi_thinkpad(4): bring back relevant changes from 20b3fb for acpi_thinkpad_refresh
Constantine A. Murenin [Sat, 20 Feb 2010 23:01:39 +0000 (18:01 -0500)]
acpi_thinkpad(4): revert the half-done rename of acpi_thinkpad to acpi_ibm
* 10f976 ("Sync ACPI with FreeBSD 7.2") from 2009-11-08 broke a number of
functionality in acpi_thinkpad, whereas there were no interesting changes
between acpi_ibm.c#rev1.15 and acpi_ibm.c#rev1.19 on FreeBSD
* `git show 20b3fb 32af04 10f976 acpi_thinkpad.c | patch -R -p5 acpi_thinkpad.c`
brings us back to da42c7
Matthew Dillon [Sat, 20 Feb 2010 23:03:41 +0000 (15:03 -0800)]
kernel - TMPFS - Features, don't sync on umount, enforce snocache on root
* The umount code was syncing the contents of tmpfs to swap. Fix it so it
doesn't.
* Set the snocache flag on the tmpfs root node and silently enforce it on
any chflags operation. This prevents swapcache from trying to pageout
file data from tmpfs (which is already backed by swap).
Sascha Wildner [Sat, 20 Feb 2010 22:35:54 +0000 (23:35 +0100)]
mandoc(1): Update to 1.9.15.
For a full list of changes, see <http://mdocml.bsd.lv/ChangeLog.html>.
Thanks-to: Kristaps Dzonsons
Matthew Dillon [Sat, 20 Feb 2010 20:10:27 +0000 (12:10 -0800)]
kernel - Update swapcache manual page
* The manual page is still a work in progress but I'm pushing in everything
I learn about SSDs into it as I learn them.
At least insofar as the Intel X25-V 40G SSD goes the vendor-specified
40TB write endurance limit appears to assume high write magnifications
and significant inefficiencies in write patterns. The theoretical
write endurance limit for this SSD with static wear leveling is 400TB.
My expectation is a practical endurance somewhere between 150-250TB
when configuring 32G of swap on the 40G X25-V. The manual page will be
updated as I get better numbers from testing.
* Specify that disklabel64 should be used when labeling a SSD, so
the partitions are properly aligned. Kernels as of id
4921cba1f6
(late 2.5.x) will align the partition base for virgin disklabel64
labels to a 1MB boundary.
MLC flash uses 128K write blocks, SLC uses 64K. Swapcache will write
in 64K clusters but also tends to issue multiple linear writes, leading
to fairly optimal SSD operation.
Matthew Dillon [Sat, 20 Feb 2010 18:11:28 +0000 (10:11 -0800)]
kernel - disklabel64 - Increase partition start alignment to 1 megabyte.
* Someone suggested that instead of using a 32K alignment we use a larger
alignment. I forgot who suggested it but after thinking about it a bit
and messing around with swapcache on a SSD I decided it was a good idea.
SSDs using MLC flash have a physical block size of 128K. SLC flash has
a physical block size of 64K. Most typical cluster operations in
DragonFly are 64K to 128K but clustered writes are often linear on disk
leading to larger linear writes from the point of view of the physical
drive's write cache.
swapcache and swap operation tends to have even larger write linearities
and write amplification effects on SSDs can be reduced to better than 1:2
(verses the 1:10 the vendor typically assumes).
* Virgin disklabel64's layed down by the kernel will now align the
start of the partition space to 1MB (1024 * 1024). In for a penny,
in for a pound.
* Adjust the manual page and note the benefits of using a larger alignment,
particularly when swapcache is used with SSDs.
Matthew Dillon [Sat, 20 Feb 2010 03:07:43 +0000 (19:07 -0800)]
kernel - TMPFS - Stabilization pass, fix VM object leak, msync
* The swap vm_object backing regular files was not being deallocated
properly and leaked kernel memory.
* Truncate deleted files a little earlier in the INACTIVE path.
* Set MNTK_NOMSYNC. This prevents msync(), sync(), and the
periodic filesystem syncer from flushing pages to swap.
VM pages related to tmpfs are only flushed based on memory
pressure.
Matthew Dillon [Sat, 20 Feb 2010 03:05:56 +0000 (19:05 -0800)]
kernel - Add MNTK_NOMSYNC and OBJ_NOMSYNC
* Add MNTK_NOMSYNC and OBJ_NOMSYNC for tmpfs, which is used to
disable msync operations.
Antonio Huete Jimenez [Fri, 19 Feb 2010 18:44:34 +0000 (19:44 +0100)]
usr.sbin - Include some missing programs in x86_64.
Following programs were only in i386. Now they've been
included also in x86_64:
apm
apmd
battd
kgmon
kgzip
lptcontrol
mptable
rndcontrol
sgsc (WARNS raised to 6)
sicontrol
spkrtest
stallion (WARNS lowered)
Matthew Dillon [Fri, 19 Feb 2010 20:29:31 +0000 (12:29 -0800)]
kernel - Fix (unused) SEGEX_IDX macro
* Fix missing paren in the macro. The macro is not used but I'm going
to keep it around anyway.
Submitted-by: Mohd Farid Kamarudin <mokamaru@gmail.com>
Matthew Dillon [Fri, 19 Feb 2010 18:41:22 +0000 (10:41 -0800)]
HAMMER VFS - Reduce stalls during bulk file operations
* Track modifying inode operations on a per-PID basis (loosely) and
call hammer_inode_wait_reclaims() earlier for those pids.
The algorithm selects a wait point based on the process's perceived
contribution to the inode load. The greater the contribution, the
more readily we stall the process in order to wait for related reclaims
to process.
Processes with lower loads have higher reclaim points and do not stall
as readily as they did before.
* Remove waitreclaims calls based on B-Tree scans. I'm not sure why I had
this in there but it was creating an excessive number of unnecessary
stalls, so if any problems crop up I'll have to find another way to deal
with them.
* These changes (particularly the first) should reduce unnecessary stalls
for the programs not doing heavy inode operations. Hopefully that means
rm -rf and tar extractions will not have as quite the detrimental effect
on other processes as they did before.
Rui Paulo [Fri, 19 Feb 2010 15:16:19 +0000 (15:16 +0000)]
Seventh pass: fix callout and bpf function calls.
Rui Paulo [Fri, 19 Feb 2010 15:15:35 +0000 (15:15 +0000)]
Add m_align().
Rui Paulo [Fri, 19 Feb 2010 12:50:20 +0000 (12:50 +0000)]
Bring m_align() from FreeBSD.
Rui Paulo [Fri, 19 Feb 2010 12:36:57 +0000 (12:36 +0000)]
if_delallmulti() from FreeBSD.
Rui Paulo [Fri, 19 Feb 2010 12:02:44 +0000 (12:02 +0000)]
Fix ifaddr_byindex().
Rui Paulo [Fri, 19 Feb 2010 11:38:28 +0000 (11:38 +0000)]
Redefinition of AF_MAX. XXX this is sick
Rui Paulo [Fri, 19 Feb 2010 11:37:28 +0000 (11:37 +0000)]
Sixth pass: remove all references to ether_sprintf().
Rui Paulo [Fri, 19 Feb 2010 11:15:31 +0000 (11:15 +0000)]
Replace callout_drain with callout_stop.
Rui Paulo [Fri, 19 Feb 2010 11:11:49 +0000 (11:11 +0000)]
Fourth pass.
o put the if_clone stuff under __FreeBSD__ for now
o remove VNET references
o put the condvar stuff under __FreeBSD for now
Rui Paulo [Fri, 19 Feb 2010 10:55:20 +0000 (10:55 +0000)]
Third pass: make ieee80211_ddb.c compile and use if_alloc/if_free.
Rui Paulo [Fri, 19 Feb 2010 10:49:23 +0000 (10:49 +0000)]
Initial version of if_alloc()/if_free().
Matthew Dillon [Fri, 19 Feb 2010 06:57:35 +0000 (22:57 -0800)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Fri, 19 Feb 2010 06:55:53 +0000 (22:55 -0800)]
kernel - TMPFS - Stabilization pass, fix rename, symlink issues
* Fix a NULL pointer dereference in the rename code
* Remove the recursive directory rename test, the kernel does this
for us already.
* Recode the rename code.
* Remove an assertion from the symlink code, the kernel already
enforces limits on the length of a symlink.
* tmpfs now passes fsstress
Matthew Dillon [Fri, 19 Feb 2010 02:46:11 +0000 (18:46 -0800)]
kernel - TMPFS - Stabilization pass, fix accounting for rmdir
* directory nodes were not being removed internally, leading to an
tmpfs inode link.
Constantine A. Murenin [Fri, 19 Feb 2010 02:30:09 +0000 (21:30 -0500)]
aps(4): changes for DragonFly -- welcome aps(4)!
Constantine A. Murenin [Thu, 18 Feb 2010 00:04:45 +0000 (19:04 -0500)]
aps(4): raw sys/dev/isa/aps.c#rev1.19 and share/man/man4/aps.4#rev1.8 from OpenBSD
Matthew Dillon [Fri, 19 Feb 2010 00:32:39 +0000 (16:32 -0800)]
nvi - Work around problem with git
* When a vi session managed by a git commit is ^Z'd and then resumed, git
for some reason will set STDIN to O_NONBLOCKING. Not only will it do
this, but the git process will do it in parallel with the resume so
the point at which stdin becomes non-blocking from the point of view
of vi is completely non-determinisitc.
* Do an end-run around badly behaving parent processes by using extpread()
to explicitly override the blocking/non-blocking mode. Now nvi doesn't
care whether stdin is in non-blocking mode or not.
Matthew Dillon [Thu, 18 Feb 2010 23:39:01 +0000 (15:39 -0800)]
boot - Switch boot2 loader path around
* Test /loader first, then /boot/loader, makes hitting enter quickly
to speed up booting work again through the boot2 bootstrap.
Submitted-by: Johannes Hofmann <johannes.hofmann@gmx.de>
Rui Paulo [Thu, 18 Feb 2010 18:35:54 +0000 (18:35 +0000)]
Second pass at converting the net80211 to DragonFly.
Rui Paulo [Thu, 18 Feb 2010 18:25:55 +0000 (18:25 +0000)]
Add a new file to struct pkthdr: wlan_seqno to store the IEEE 802.11 seq
number.
Rui Paulo [Thu, 18 Feb 2010 18:14:12 +0000 (18:14 +0000)]
Add if_transmit() from FreeBSD. Breaks ABI.
Matthew Dillon [Thu, 18 Feb 2010 18:07:51 +0000 (10:07 -0800)]
kernel - Fix bogus compiler warning
* NULL out an object to fix a bogus compiler warning.
Rui Paulo [Thu, 18 Feb 2010 18:07:27 +0000 (18:07 +0000)]
Prevent foot shooting.
Matthew Dillon [Thu, 18 Feb 2010 18:04:36 +0000 (10:04 -0800)]
kernel - TMPFS - Parse tmpfs_args from mount()
* Parse tmpfs_args from mount() to set max size and inodes.
* Allow a fixed percentage of memory + swap to be used, do not attempt
to calculate actual free memory + swap (because its impossible to do
correctly).
Rui Paulo [Thu, 18 Feb 2010 18:03:05 +0000 (18:03 +0000)]
Add if_l2com to struct ifnet. This breaks ABI.
Matthew Dillon [Thu, 18 Feb 2010 18:02:29 +0000 (10:02 -0800)]
utilities - TMPFS - Pass tmpfs_args to mount()
* Pass parameters to mount(). Parameters were being ignored.
* Use dehumanize_number() so suffixes can be specified for numbers
when using -s, -n.
Rui Paulo [Thu, 18 Feb 2010 18:02:13 +0000 (18:02 +0000)]
Add ifnet_byindex() and ifaddr_byindex().
Matthew Dillon [Thu, 18 Feb 2010 17:04:55 +0000 (09:04 -0800)]
kernel - TMPFS - Stabilization pass, fix lockf()
* TMPFS needs to initialize the lockf structure embedded in tmpfs_node.
* Fixes panic when using the structure.
Rui Paulo [Thu, 18 Feb 2010 14:42:11 +0000 (14:42 +0000)]
First pass at converting the net80211 infrastrcture from FreeBSD.
Rui Paulo [Thu, 18 Feb 2010 14:04:15 +0000 (14:04 +0000)]
Add memmove() to libkern.
Rui Paulo [Thu, 18 Feb 2010 13:52:08 +0000 (13:52 +0000)]
Add AF_IEEE80211.
Rui Paulo [Thu, 18 Feb 2010 13:32:09 +0000 (13:32 +0000)]
Add strcasecmp() and strncasecmp().
We can't copy the userland implementation because tolower(9) is an
evil macro that has bad side effects. Cf FreeBSD log for this file
Rui Paulo [Thu, 18 Feb 2010 13:02:44 +0000 (13:02 +0000)]
add more protocol specific m_flag bits
Rui Paulo [Thu, 18 Feb 2010 12:43:30 +0000 (12:43 +0000)]
add new ieee80211 interface media types
Aggelos Economopoulos [Thu, 18 Feb 2010 08:40:14 +0000 (10:40 +0200)]
evtranalyze: share debugging declarations
Constantine A. Murenin [Thu, 18 Feb 2010 07:13:00 +0000 (02:13 -0500)]
acpi_thinkpad(4): make acpi_thinkpad sensors actually work
* After this patch on my ThinkPad R51:
%sysctl hw.sensors.acpi_ibm0
hw.sensors.acpi_ibm0.temp0: 69.00 degC
hw.sensors.acpi_ibm0.temp1: 52.00 degC
hw.sensors.acpi_ibm0.temp2: 41.00 degC
hw.sensors.acpi_ibm0.temp3: 59.00 degC
hw.sensors.acpi_ibm0.temp4: 36.00 degC
hw.sensors.acpi_ibm0.temp5: invalid
hw.sensors.acpi_ibm0.temp6: 26.00 degC
hw.sensors.acpi_ibm0.temp7: invalid
hw.sensors.acpi_ibm0.fan0: 3469 RPM
* Before this patch:
o The temperature values were absolutely random, since
the /data/ variable was never initialised from temp[i].
o The braces were missing from the fan error path of
an if statement.
o Whitespaces were used instead of tabs.
Sascha Wildner [Thu, 18 Feb 2010 02:41:04 +0000 (03:41 +0100)]
libc: Sync asctime.c and localtime.c with tzcode2010a from elsie.
asctime.c: Set errno to EINVAL and return "??? ??? ?? ??:??:?? ????\n" if
asctime_r() is called with a NULL struct tm pointer.
(Note that asctime_r() is called by ctime_r() and asctime();
asctime() is called by ctime().)
localtime.c: Set errno to EINVAL and return WRONG if time1() is called with
a NULL struct tm pointer; avoid dereference if a NULL struct
tm pointer is passed to timelocal(), timegm(), or timeoff().
(Note that time1 is called by mktime(), timegm(), and timeoff();
mktime is called by timelocal().)
Aggelos Economopoulos [Wed, 17 Feb 2010 15:54:43 +0000 (17:54 +0200)]
evtranalyze: correct allocation size
Tracked-down-via: valgrind
Rui Paulo [Wed, 17 Feb 2010 19:28:28 +0000 (19:28 +0000)]
my config
Rui Paulo [Wed, 17 Feb 2010 18:54:55 +0000 (18:54 +0000)]
update to latest freebsd version
Matthew Dillon [Wed, 17 Feb 2010 17:03:14 +0000 (09:03 -0800)]
kernel - if_alc - Add to conf/files, GENERIC, X86_64_GENERIC, and LINT
* Add if_alc to the general build.
Matthew Dillon [Wed, 17 Feb 2010 08:16:57 +0000 (00:16 -0800)]
kernel - SWAP CACHE part 21/many - more manual page adjustments
* Explain data caching issues with NFS
Matthew Dillon [Wed, 17 Feb 2010 07:52:14 +0000 (23:52 -0800)]
kernel - SWAP CACHE part 20/many - add 'cache' and 'noscache' chflags.
* Allow directory hierarchies to be selected for data caching when
using vm.swapcache.data_enable.
* Add the vm.swapcache.use_chflags sysctl which defaults to ON and
enables use of the new chflags flags to determine what directory
trees the swapcache will cache data from.
* Add chflags cache and noscache. The flags are tracked recursively
by the namecache and do *NOT* have to be set recursively in the
directory tree. Setting a flag in a top-level directory is sufficient
to cover the entire subtree.
chflags cache - Any regular file in the subtree will be cached
by swapcache.
chflags noscache - Disables any swapcacheing of data in the subtree,
overrides any use of chflags cache in the subtree.
NOTE: Only applies to file data. The caching of file meta-data by
swapcache is controlled globally by vm.swapcache.meta_enable and
ignores chflags flags..
* Adjust the manual pages for swapcache and chflags.
* NOTE! The default has been changed to require the use of chflags, data
caching will not occur unless you either turn off the
vm.swapcache.use_chflags sysctl (which enables data caching globally)
or do something like 'chflags cache /'. Of course vm.swapcache.read_enable
must also be turned on for swapcache to cache file data.
* NOTE! World must be rebuilt for libc, chflags, and ls to understand the
new flags.
Matthew Dillon [Tue, 16 Feb 2010 19:27:55 +0000 (11:27 -0800)]
kernel - tmpfs - Remove warning message on mount, update manual page
* Remove the warning message on mount.
* Improve the manual page.