6001 Commits

Author SHA1 Message Date
Christian Brueffer
355b5becad MFC: r207998
Fix grammar in a line of output.
2010-05-23 20:27:13 +00:00
Nathan Whitehorn
4509665bd2 MFC r200557,208173:
Teach gpart about bootcode on APM.
2010-05-23 02:40:04 +00:00
Maxim Konovalov
f872cfcb7e MFC r206889: add do-not-fragment option support to ping6(8). 2010-05-20 08:03:08 +00:00
Bjoern A. Zeeb
7b6bd42ad1 MFC r208077:
Document the 'short preamble' capability for 802.11bg.

  Reviewed by:	sam
2010-05-18 04:21:50 +00:00
Jaakko Heinonen
2a1c82e489 MFC r203757:
- Remove reference to nfs4. mount_nfs4(8) was removed in r192578.
- Add newnfs.
2010-05-12 17:22:11 +00:00
Alexander Motin
967b11e3ef MFC r207499:
Make SATA XPT negotiate and enable some additional SATA features, such as:
 - device initiated power management (some devices support only this way);
 - Automatic Partial to Slumber Transition (more power saving);
 - DMA auto-activation (expected to slightly improve performance).
More features could be added later, when hardware supports.
2010-05-08 16:06:54 +00:00
Alexander Motin
a19b488e19 MFC r207498:
Add -d and -f arguments to `camcontrol cmd`, to execute DMA ATA commands.
2010-05-08 13:12:52 +00:00
Konstantin Belousov
74d05e56f5 MFC r203874:
Rename fields to match better the msdosfs headers.
2010-05-03 12:43:17 +00:00
Konstantin Belousov
66db13cc34 MFC r203872:
Bug fixes from NetBSD.
2010-05-03 12:41:27 +00:00
Konstantin Belousov
27408439c3 MFC r203871:
License changes from NetBSD.
Move to 2 clause license, approved by Wolfgang Solfrank.
2010-05-03 12:39:27 +00:00
Konstantin Belousov
12ec42c8c7 MFC r203869:
Rename variables to match msdosfs headers.
2010-05-03 12:37:33 +00:00
Konstantin Belousov
89b93ff188 MFC r203868:
Some cleanups from NetBSD.
2010-05-03 12:36:06 +00:00
Pawel Jakub Dawidek
badd323276 MFC r207070,r207343,r207345,r207347,r207348,r207371,r207372,r207390:
r207070:

Fix compilation with WITHOUT_CRYPT or WITHOUT_OPENSSL options.

Reported by:	Andrei V. Lavreniyuk <andy.lavr@reactor-xg.kiev.ua>

r207343:

Don't assume that "resource" property is in metadata.

Reported by:	Mikolaj Golub <to.my.trociny@gmail.com>

r207345:

Use WEXITSTATUS() to obtain real exit code.

r207347:

Mark temporary issues as such.

r207348:

Restart worker thread only if the problem was temporary.
In case of persistent problem we don't want to loop forever.

r207371:

Fix a problem where hastd will stuck in recv(2) after sending request to
secondary, which died between send(2) and recv(2). Do it by adding timeout
to recv(2) for primary incoming and outgoing sockets and secondary outgoing
socket.

Reported by:	Mikolaj Golub <to.my.trociny@gmail.com>
Tested by:	Mikolaj Golub <to.my.trociny@gmail.com>

r207372:

- Check if the worker process was killed by signal and restart it.
- Improve logging.

Pointed out by:	Garrett Cooper <yanefbsd@gmail.com>

r207390:

Default connection timeout is way too long. To make it shorter we have to
make socket non-blocking, connect() and if we get EINPROGRESS, we have to
wait using select(). Very complex, but I know no other way to define
connection timeout for a given socket.

Reported by:	hiroshi@soupacific.com
2010-05-01 19:16:08 +00:00
Pawel Jakub Dawidek
cde38f4240 MFC r207070:
Fix compilation with WITHOUT_CRYPT or WITHOUT_OPENSSL options.

Reported by:	Andrei V. Lavreniyuk <andy.lavr@reactor-xg.kiev.ua>
2010-05-01 19:12:37 +00:00
Andrew Thompson
176b25ad5c MFC r207020, r207027, r207072.
Change usb devd events from fake attach to a notify. The ugen device is not a
 proper device_t so it faked the devctl event to appear like one, this is now a
 notify which allows more information to be passed.

 We notify for both the device attach/detach and for each usb interface. A devd
 rule can now match on the interface properties, including composite devices
 which may have a uvideo interface and also usound and possibly uhid too.

 An example to match a umass device with a scsi subclass and BBB protocol would be

 notify 100 {
 	match "system"          "USB";
 	match "subsystem"       "INTERFACE";
 	match "type"            "ATTACH";
 	match "intclass"        "0x08";
 	match "intsubclass"     "0x06";
 	match "intprotocol"     "0x50";
 	action ...
 };

 The old attach devctl event has been retained for the moment to make merging to
 8.1 easier. This was never compatible with 7.x or earlier due to the ugen regex
 change needed.

 Document the new USB notification types.
2010-04-29 22:40:12 +00:00
Matt Jacob
140095c1b8 This is an MFC of 205847
Change how multipath labels are created and managed. This makes it easier
to support various storage boxes which really aren't active-active.

We only write the label on the *first* provider. For all other providers
we just "add" the disk. This also allows for an "add" verb.

A usage implication is that you should specificy the currently active
storage path as the first provider.

Note that this does not add RDAC-like functionality, but better allows for
autovolumefailover configurations (additional checkins elsewhere will support
this).
2010-04-29 19:06:43 +00:00
Xin LI
0919a8fb99 MFC r206637:
When an underlying ioctl(2) handler returns an error, our ioctl(2)
interface considers that it hits a fatal error, and will not copyout
the request structure back for _IOW and _IOWR ioctls, keeping them
untouched.

The previous implementation of the SIOCGIFDESCR ioctl intends to
feed the buffer length back to userland.  However, if we return
an error, the feedback would be defeated and ifconfig(8) would
trap into an infinite loop.

This commit changes SIOCGIFDESCR to set buffer field to NULL to
indicate the previous ENAMETOOLONG case.

Reported by:	bschmidt
2010-04-28 00:49:24 +00:00
Matt Jacob
c18d4b44cc This is an MFS of 205412.
Add 'rotate' and 'getactive' verbs to provide some control and information
about what the currently active path is.
2010-04-23 16:20:45 +00:00
Maxim Konovalov
f81dc89a9d MFC r205672: fix typo. 2010-04-21 05:36:53 +00:00
Rebecca Cran
accfa14772 MFC r205118:
Free the memory allocated via strdup.

PR:	bin/113881
Submitted by:	Alexander Drozdov (dzal_mail at mtu-net.ru)
Approved by:	rrs (mentor)
2010-04-20 20:24:00 +00:00
Luigi Rizzo
31a3c43a0f MFC geom_sched code, a geom-based disk scheduling framework. 2010-04-20 15:23:12 +00:00
Pawel Jakub Dawidek
40a16c07ea MFC r204352:
Fixed static linkage.
2010-04-19 14:23:15 +00:00
Pawel Jakub Dawidek
e47ff61723 MFC r206666:
Flush disk write cache after storing and clearing metadata.
2010-04-18 21:24:23 +00:00
Pawel Jakub Dawidek
c44c50cd5c MFC r204177,r205738,r206669,r206696,r206697:
r204177:

Changing proto_socketpair.c compilation and linking order revealed
a problem - we should simply ignore proto_server() if address
doesn't start with socketpair://, and not abort.

r205738:

Don't hold connection lock when doing reconnects as it makes I/Os wait for
connection timeouts.

Reported by:	Kevin Day <toasty@dragondata.com>

r206669:

Increase ggate queue size to maximum value.
HAST was not able to stand heavy random load.

Reported by:	Hiroyuki Yamagami

r206696:

Fix control socket leak when worker process exits.

Submitted by:	Mikolaj Golub <to.my.trociny@gmail.com>

r206697:

Fix log size calculation which caused message truncation.

Submitted by:	Mikolaj Golub <to.my.trociny@gmail.com>
2010-04-18 21:18:32 +00:00
Pawel Jakub Dawidek
2b98f8400d MFC r204076,r204077,r204083,r205279:
r204076:

Please welcome HAST - Highly Avalable Storage.

HAST allows to transparently store data on two physically separated machines
connected over the TCP/IP network. HAST works in Primary-Secondary
(Master-Backup, Master-Slave) configuration, which means that only one of the
cluster nodes can be active at any given time. Only Primary node is able to
handle I/O requests to HAST-managed devices. Currently HAST is limited to two
cluster nodes in total.

HAST operates on block level - it provides disk-like devices in /dev/hast/
directory for use by file systems and/or applications. Working on block level
makes it transparent for file systems and applications. There in no difference
between using HAST-provided device and raw disk, partition, etc. All of them
are just regular GEOM providers in FreeBSD.

For more information please consult hastd(8), hastctl(8) and hast.conf(5)
manual pages, as well as http://wiki.FreeBSD.org/HAST.

Sponsored by:	FreeBSD Foundation
Sponsored by:	OMCnet Internet Service GmbH
Sponsored by:	TransIP BV

r204077:

Remove some lines left over by accident.

r204083:

Add missing KEYWORD line.

Pointed out by:	dougb

r205279 sys:

Simplify loops.
2010-04-18 21:14:49 +00:00
Pawel Jakub Dawidek
1d908ad75f MFC r204075:
Style nits.
2010-04-18 20:23:08 +00:00
Edward Tomasz Napierala
0718d64da3 MFC r200796:
Implement NFSv4 ACL support for UFS.

Reviewed by:	rwatson
2010-04-18 19:21:08 +00:00
Hajimu UMEMOTO
e42bcb8719 MFC r206266: Set net.inet6.ip6.fw.enable as well. 2010-04-11 15:17:52 +00:00
Rui Paulo
b02c965e31 MFC r205514:
Add a missing LINE_BREAK() after printing the roaming parameters in
 verbose mode.

 Sponsored by:	iXsystems, inc.
2010-04-06 13:04:27 +00:00
Qing Li
94190b3925 MFC 205222
Verify interface up status using its link state only
if the interface has such capability. The interface
capability flag indicates whether such capability
exists. This approach is much more backward compatible.
Physical device driver changes will be part of another
commit.

Also updated the ifconfig utility to show the LINKSTATE
capability if present.

Reviewed by:  rwatson, imp, juli
2010-04-02 05:12:46 +00:00
Edward Tomasz Napierala
79964ec98d MFC r201432:
Add manual page for gcache(8).
2010-03-27 18:15:18 +00:00
Edward Tomasz Napierala
f2f6fe304d MFC r199182:
Add links to zfs(8) and zpool(8) to mount(8) manual page.
2010-03-27 18:01:38 +00:00
Bjoern A. Zeeb
08611830aa MFC r204840:
As statfs.f_flags are uint64_t the local variables should be as well.
  We'll start noticing this with the next flag introduced as the lower
  32bit are all used.

  While here compare to 0 explicitly [1].

  Suggested by: kib [1]
  Reviewed by:  kib
2010-03-27 17:57:17 +00:00
Luigi Rizzo
8c5156f3ef fix handling of "ipfw set N ..."
Submitted by:	Marcin Wisnicki
2010-03-24 23:08:25 +00:00
Luigi Rizzo
8018e843a3 MFC of a large number of ipfw and dummynet fixes and enhancements
done in CURRENT over the last 4 months.
HEAD and RELENG_8 are almost in sync now for ipfw, dummynet
the pfil hooks and related components.

Among the most noticeable changes:
- r200855 more efficient lookup of skipto rules, and remove O(N)
  blocks from critical sections in the kernel;
- r204591 large restructuring of the dummynet module, with support
  for multiple scheduling algorithms (4 available so far)
See the original commit logs for details.

Changes in the kernel/userland ABI should be harmless because the
kernel is able to understand previous requests from RELENG_8 and
RELENG_7. For this reason, this changeset would be applicable
to RELENG_7 as well, but i am not sure if it is worthwhile.
2010-03-23 09:58:59 +00:00
Luigi Rizzo
f2f7c1447a mfc r205179: print correctly addresses with an OR block 2010-03-22 16:40:10 +00:00
Gleb Smirnoff
948165be1c MFC r200183 by luigi:
restore setting of sin_len (was removed in 1.146 last february) as
  it seems that now it is necessary for 'forward' to work outside lo0.

Approved by:	luigi
2010-03-22 10:11:59 +00:00
Pyun YongHyeon
be3410a939 MFC r204150:
Add TSO support on VLAN in fconfig(8).
2010-03-18 19:10:03 +00:00
Gavin Atkinson
40df979212 Merge r203835 from head:
When growing a UFS1 filesystem, we need to initialise all inodes in any new
  cylinder groups that are created.  When the filesystem is first created,
  newfs always initialises the first two blocks of inodes, and then in the
  UFS1 case will also initialise the remaining inode blocks.  The changes in
  growfs.c 1.23 broke the initialisation of all inodes, seemingly based on
  this implementation detail in newfs(8).  The result was that instead of
  initialising all inodes, we would actually end up initialising all but the
  first two blocks of inodes.  If the filesystem was grown into empty
  (all-zeros) space then the resulting filesystem was fine, however when
  grown onto non-zeroed space the filesystem produced would appear to have
  massive corruption on the first fsck after growing.
  A test case for this problem can be found in the PR audit trail.

  Fix this by once again initialising all inodes in the UFS1 case.

PR:		bin/115174
Submitted by:	"Nate Eldredge"  <nge cs.hmc.edu>
Reviewed by:	mjacob
2010-03-17 20:27:35 +00:00
Xin LI
3905c549f0 MFC r203461:
static'ify function prototypes and convert K&R to ANSI.
2010-03-05 00:33:05 +00:00
Xin LI
949a9c3cf1 MFC r203460:
pukeText is an internal function so define it as static rather than
exporting it.
2010-03-05 00:32:22 +00:00
Xin LI
6e064db94e MFC r203459:
Plug two memory leaks in error case.
2010-03-05 00:31:03 +00:00
Alexander Motin
02d2ad5770 MFC r204195:
Improve output for controllers that doesn't report SATA speed.
2010-03-01 19:16:34 +00:00
Gavin Atkinson
d180e5eb6c Merge r204166 from head:
Document the interaction between /etc/devfs.conf and
  /etc/defaults/devfs.conf

PR:		docs/117308
Submitted by:	Mel <mel.xyzzy rachie.is-a-geek.net> (partially)
2010-02-28 11:14:29 +00:00
Hajimu UMEMOTO
de482c79d6 MFC r203490: Introduce '[ipaddr]:path' notation.
Since the existing implementation searches ':' backward, a path which
includes ':' could not be mounted.  You can now mount such path by
enclosing an IP address by '[]'.
Though we should change to search ':' forward, it will break
'ipv6addr:path' which is currently working.  So, it still searches ':'
backward, at least for now.
2010-02-27 18:27:32 +00:00
Kirk McKusick
4179ce18a2 MFC of 203763, 203764, 203768, 203769, 203770, 203782, and 203784.
These fixes correct a problem in the file system that treats large
inode numbers as negative rather than unsigned. For a default
(16K block) file system, this bug began to show up at a file system
size above about 16Tb.

These fixes also update newfs to ensure that it will never create a
filesystem with more than 2^32 inodes.

They also update libufs, tunefs, and growfs so that they properly
handle inode numbers as unsigned.

Reported by: Scott Burns, John Kilburg, and Bruce Evans
Followup by: Jeff Roberson
PR:          133980
2010-02-26 21:49:11 +00:00
Xin LI
a5a931b33f MFC 203052:
Add interface description capability as inspired by OpenBSD.  Thanks for
rwatson@, jhb@, brooks@ and others for feedback to the old implementation!

Sponsored by:	iXsystems, Inc.
2010-02-26 00:54:47 +00:00
Jaakko Heinonen
1eb55c8537 MFC r203157, r203816:
Handle short reads when the -P option is used and remove some dead code.

PR:		bin/121502
2010-02-20 13:35:05 +00:00
Matt Jacob
21eee1133a Add the long missing "destroy" option [mfc of 203505] 2010-02-18 01:15:58 +00:00
Alexander Motin
929100472e MFC r203376, r203384:
- Give ATA/SATA SIMs info about ATAPI packet size, supported by device.
- Make ATA XPT to reject longer SCSI CDBs then supported by device, or
any SCSI CDBs, if device doesn't support ATAPI.
2010-02-14 19:44:48 +00:00