Commit Graph

161103 Commits

Author SHA1 Message Date
thompsa
8399082d6d Sync to p4
- Add new quirks commands and the '-d' option optionally to specify the ugen device.

Submitted by:	Hans Petter Selasky
2010-01-07 00:50:45 +00:00
attilio
2e14be290b Exclusive waiters sleeping with LK_SLEEPFAIL on and using interruptible
sleeps/timeout may have left spourious lk_exslpfail counts on, so clean
it up even when accessing a shared queue acquisition, giving to
lk_exslpfail the value of 'upper limit'.
In the worst case scenario, infact (mixed
interruptible sleep / LK_SLEEPFAIL waiters) what may happen is that both
queues are awaken even if that's not necessary, but still no harm.

Reported by:	Lucius Windschuh <lwindschuh at googlemail dot com>
Reviewed by:	kib
Tested by:	pho, Lucius Windschuh <lwindschuh at googlemail dot com>
2010-01-07 00:47:50 +00:00
thompsa
9b6b3618fe Add new umass quirks for Western Digital MYBook and JMicron JM20337.
PR:		usb/142225, usb/142228
Submitted by:	Thomas Ward, Yoshikazu GOTO
MFC after:	1 week
2010-01-07 00:30:59 +00:00
mckusick
7405c67ff0 This corrects a bug that manifested itself as identifying the last
cylinder group of a UFS1 filesystem as bad. The error was in the check
and not in the cylinder group itself. So even though fsck fixed the
cylinder group correctly, it was still endlessly reported as bad.

PR:		141992
MFC after:	2 weeks
Reported by:	Dan Strick
2010-01-07 00:17:36 +00:00
delphij
f487d8fd62 Space cleanup for revision 201689 committed separately for easier review.
This commit is purely space changes.

Submitted by:	Matt Reimer
Sponsored by:	VPOP Technologies, Inc.
MFC after:	2 weeks
2010-01-06 23:11:56 +00:00
delphij
66f8e0d24f Instead of assuming all vdevs are healthy, check the newest vdev label
for each vdev's status.  Booting from a degraded vdev should now be
more robust.

Submitted by:	Matt Reimer <mattjreimer at gmail.com>
Sponsored by:	VPOP Technologies, Inc.
MFC after:	2 weeks
2010-01-06 23:09:23 +00:00
bz
a650e17670 Correct a typo.
Submitted by:	sn_ (sn_ gmx.net) on hackers@
MFC after:	3 days
2010-01-06 23:05:00 +00:00
pjd
3201744022 Teach the (gpt)zfsboot and zfsloader raidz code to use its buffers
more efficiently.

Before this patch, in the worst case memory use would increase
exponentially on the number of drives in the raidz vdev.

Submitted by:	Matt Reimer <mattjreimer@gmail.com>
Sponsored by:	VPOP Technologies, Inc.
Silence from:	dfr
2010-01-06 22:39:40 +00:00
thompsa
f9e6c6a249 Improve u3g device ejecting by providing additional methods for the eject
command in the usb_msctest routines, as well as a general tidyup.

This now properly ejects the ZTE MF636, Option Gi0322 and Novatel MC950D
devices I have on my desk.
2010-01-06 22:14:05 +00:00
thompsa
c6572afc18 scratch_size was incorrectly passed as language ID when retrieving the language
ID table, this broke string retrieval on some devices.

Submitted by:	Hans Petter Selasky
Reported by:	Renato Botelho
2010-01-06 21:46:08 +00:00
jhb
52e7326f46 Use _pthread_once() rather than _once() for localtime() and gmtime(). These
methods are only invoked when __isthreaded is true at which point it is safe
to use _pthread_once() directly.

MFC after:	1 week
2010-01-06 20:43:40 +00:00
mav
0b756fd13c Increase default block size from 4K to 64K. It was reduces 6 yeard ago,
when trees were big and FAST mode was enabled by default.

So small block size doesn't benefits linear I/O operations in FAST and
significantly slowdowns in ECONOMIC (default) mode. For single stream random
I/Os so small block doesn't give much benefits, as access time is usually
bigger then transfer time there. Same time it requires all heads to seek
together for every single request, reducing performance on parallel load.
2010-01-06 17:12:18 +00:00
gavin
0b338ccc3c Print leading zeros in the UFS2 FSID.
PR:		bin/142155
Submitted by:	Efstratios Karatzas  gpf.kira gmail.com
Approved by:	ed (mentor)
MFC after:	2 weeks
2010-01-06 14:01:28 +00:00
mav
aa7d598791 Change the way in which zero stripesize is handled. Instead of reporting
zero stripeoffset in such case (as if device has no stripes), report offset
from the beginning of the media (as if device has single infinite stripe).

This gives partitioning tools information, required to guess better
partition alignment, in case if hardware doesn't report it's stripe size.
For example, it should give disklabel info about odd offset made by fdisk.
2010-01-06 13:14:37 +00:00
rpaulo
9a19597575 len must be int, not size_t
Submitted by:	novel
2010-01-06 13:13:14 +00:00
kientzle
c2cd581d53 When restoring files, use the mode for the mode.
Thanks to: Jun Kuriyama for pointing this out
2010-01-06 06:35:10 +00:00
delphij
ac4932bfb5 Fix build: getopt() returns int so use an integer to get the value. 2010-01-06 00:20:37 +00:00
stas
a3ff55adf7 - Move potentially offensive quotes I committed recently to fortunes-o.
- Reference date.
- Be more clear on context.

Suggested by:	dougb
2010-01-05 23:35:43 +00:00
rpaulo
a8a04d42db Add net80211 media status reporting.
PR:		142197
Submitted by:	Paul <onemda at gmail.com>
2010-01-05 22:59:59 +00:00
edwin
c309e354e0 Be able to specify a certain date and/or time for which to calculate
the phase of the moon.
While not worlds best improvements, it will help calendar(1) later on.
2010-01-05 21:14:48 +00:00
dwmalone
fa4a359159 1) Mark usage as dead2.
2) Deregister.
3) New style function definitions.

Some WARNS still remain here - some printf format warning on some
arches and the compiler can't see that a variable should always be
initialised.
2010-01-05 21:09:59 +00:00
dwmalone
a3da51fe8d Shuffle parens to avoid type-punning warning. 2010-01-05 21:00:23 +00:00
dwmalone
ca1f8c06ce 1) Make usage() as dead2 - it helps the compiler know that some vars
are not used uninitialised.
2) Fix some constness problems.
3) Avoid a signedness problem by casting to size_t. If bn != stuff,
than stuff-1-bn should be > 0.
2010-01-05 20:53:55 +00:00
jhb
2dd11a3eaa Move the PCI-specific logic of removing a cardbus device into a
pci_delete_child() function called by the cardbus driver.  The new function
uses resource_list_unreserve() to release the BARs decoded by the device
being removed.

Reviewed by:	imp
Tested by:	brooks
2010-01-05 20:42:25 +00:00
dwmalone
a0dce5cf22 New style function definitions.
Fix constness problem - don't know that pstatus won't change a string with no
whitespace.
2010-01-05 20:40:40 +00:00
dwmalone
824b5e2021 Change a char that is used as an index into an array into an unisgned char.
Add a missing new style function definition.
2010-01-05 20:32:08 +00:00
iwasaki
e6d2918173 Update acpi_ibm syctl nodes on resume.
This should fix some Thinkpad specific problems such as
connecting to a headphone jack is not functional on X41.

Reviewed by:	takawata
MFC after:	1 week
2010-01-05 20:29:30 +00:00
kib
95ccd2a39d Do not rely on behaviour undefined by ANSI C, use thunks to adapt
alphasort-like interface to the comparision function required by
qsort() and qsort_r().

For opendir() thunk and alphasort(), comment on why we deviated from
POSIX by using strcmp() instead of strcoll().

Requested and reviewed by:	bde
MFC after:	2 weeks
2010-01-05 20:20:31 +00:00
brueffer
bdeb978682 Fix a double free().
PR:		142339
Submitted by:	Henning Petersen <henning.petersen@t-online.de>
MFC after:	2 weeks
2010-01-05 20:18:41 +00:00
kib
e1cc3e0a9a Move scandir(3) and alphasort(3) into XSI namespace.
Noted and reviewed by:	bde
MFC after:	2 weeks
2010-01-05 20:17:13 +00:00
dougb
633e4d704e Remove more duplicates
Minor reformatting on a few
2010-01-05 19:40:32 +00:00
mav
4d057b4b28 For completeness, add -s argument, manually specifying array block size. 2010-01-05 13:25:12 +00:00
davidxu
1053aec712 Add test code for POSIX semaphore implementation. 2010-01-05 12:34:13 +00:00
luigi
543315e6a4 this file does not require ip_dummynet.h 2010-01-05 11:00:31 +00:00
mav
a615da72de Move wakeup() out of mutex to reduce contention. 2010-01-05 10:52:21 +00:00
mav
1073c59bbd Move wakeup() out of mutex to reduce contention. 2010-01-05 10:30:56 +00:00
davidxu
46ad5872cf remove file thr_sem_new.c. 2010-01-05 07:50:31 +00:00
davidxu
3f563b5b5f More cleanup, remove _libc prefix because libthr no longer has stubs
referencing them.
2010-01-05 06:40:27 +00:00
davidxu
451e3b67a4 Remove extra new semaphore stubs, because libc already has them, and
ld can find the newest version which is default.

Poked by: kan@
2010-01-05 06:21:29 +00:00
davidxu
a3e15a64d4 forgot to remove SYM_FBP10. ;-) 2010-01-05 05:47:18 +00:00
davidxu
d3f9024243 Remove unused macros. 2010-01-05 05:44:52 +00:00
davidxu
8ea6a66616 Don't check has_waiters twice, inline some small functions.
performance result on my machine:
	mutex     Elapsed: 902115 us; per iteration: 90 ns.
	semaphore Elapsed: 958780 us; per iteration: 95 ns.
2010-01-05 03:39:31 +00:00
davidxu
87c8a1faf2 Use umtx to implement process sharable semaphore, to make this work,
now type sema_t is a structure which can be put in a shared memory area,
and multiple processes can operate it concurrently.
User can either use mmap(MAP_SHARED) + sem_init(pshared=1) or use sem_open()
to initialize a shared semaphore.
Named semaphore uses file system and is located in /tmp directory, and its
file name is prefixed with 'SEMD', so now it is chroot or jail friendly.
In simplist cases, both for named and un-named semaphore, userland code
does not have to enter kernel to reduce/increase semaphore's count.
The semaphore is designed to be crash-safe, it means even if an application
is crashed in the middle of operating semaphore, the semaphore state is
still safely recovered by later use, there is no waiter counter maintained
by userland code.
The main semaphore code is in libc and libthr only has some necessary stubs,
this makes it possible that a non-threaded application can use semaphore
without linking to thread library.
Old semaphore implementation is kept libc to maintain binary compatibility.
The kernel ksem API is no longer used in the new implemenation.

Discussed on: threads@
2010-01-05 02:37:59 +00:00
mav
6c3ad0385c Slightly optimize XOR calculation. 2010-01-05 02:06:05 +00:00
qingli
281d5caa0e An existing incomplete ARP entry would expire a subsequent
statically configured entry of the same host. This bug was
due to the expiration timer was not cancelled when installing
the static entry. Since there exist a potential race condition
with respect to timer cancellation, simply check for the
LLE_STATIC bit inside the expiration function instead of
cancelling the active timer.

MFC after:	5 days
2010-01-05 00:35:46 +00:00
qingli
a506bcc1c4 The IFA_RTSELF address flag marks a loopback route has been installed
for the interface address. This marker is necessary to properly support
PPP types of links where multiple links can have the same local end
IP address. The IFA_RTSELF flag bit maps to the RTF_HOST value, which
was combined into the route flag bits during prefix installation in
IPv6. This inclusion causing the prefix route to be unusable. This
patch fixes this bug by excluding the IFA_RTSELF flag during route
installation.

MFC after:	5 days
2010-01-04 23:39:53 +00:00
brueffer
9329eaed58 Add a missing word.
PR:		140989
Submitted by:	Lachlan Kang
MFC after:	1 week
2010-01-04 22:23:09 +00:00
brueffer
e4fee8b8e9 Catch up with the VFS_VPTOFH(9) -> VOP_VPTOFH(9) repocopy that happened
almost three years ago in r166794.

PR:		140989
Submitted by:	Lachlan Kang
MFC after:	1 week
2010-01-04 22:22:00 +00:00
imp
699b88787b Revert 200594. This file isn't intended for these sorts of things. 2010-01-04 21:30:04 +00:00
ed
74b0526bbe Make TIOCSTI work again.
It looks like I didn't implement this when I imported MPSAFE TTY.
Applications like mail(1) still use this. I think it's conceptually bad.

Tested by:	Pete French <petefrench ticketswitch com>
MFC after:	2 weeks
2010-01-04 20:59:52 +00:00