dragonfly.git
3 months agokernel disk/vn: fix locking in vnstrategy DragonFly_RELEASE_3_6
Joris Giovannangeli [Sun, 8 Jun 2014 10:48:15 +0000 (12:48 +0200)]
kernel disk/vn: fix locking in vnstrategy

4 months agoSync zoneinfo database with tzdata2014e from ftp://ftp.iana.org/tz/releases v3.6.3
Sascha Wildner [Sat, 14 Jun 2014 21:35:53 +0000 (23:35 +0200)]
Sync zoneinfo database with tzdata2014e from ftp://ftp.iana.org/tz/releases

* africa: Egypt's 2014 Ramadan-based transitions are June 26 and July 31
    at 24:00. (Thanks to Imed Chihi.) Similarly, Morocco's are June 28
    at 03:00 and August 2 at 02:00.  (Thanks to Milamber Space Network.)

* europe: The abbreviation "MSM" (Moscow Midsummer Time) is now used
    instead of "MSD" for Moscow's double daylight time in summer 1921.
    Also, a typo "VLASST" has been repaired to be "VLAST" for
    Vladivostok summer time in 1991.  (Thanks to Hank W. for reporting
    the problems.)

* Some minor adjustments/rearrangement.

4 months agohammer - Fix wild free() in 'hammer info' path
Matthew Dillon [Mon, 9 Jun 2014 17:57:23 +0000 (10:57 -0700)]
hammer - Fix wild free() in 'hammer info' path

* Fix a wild free that could cause the program to assert.

Reported-by: shamaz
4 months agoopenssl: Adjust manual pages for 1.0.1h.
Sascha Wildner [Fri, 6 Jun 2014 15:57:17 +0000 (17:57 +0200)]
openssl: Adjust manual pages for 1.0.1h.

4 months agoMerge branch 'vendor/OPENSSL' into rel3_6
Sascha Wildner [Fri, 6 Jun 2014 17:05:23 +0000 (19:05 +0200)]
Merge branch 'vendor/OPENSSL' into rel3_6

4 months agoImport OpenSSL-1.0.1h.
Sascha Wildner [Fri, 6 Jun 2014 15:48:23 +0000 (17:48 +0200)]
Import OpenSSL-1.0.1h.

* Fixes for CVE-2014-0224, CVE-2014-0221, CVE-2014-0195, CVE-2014-3470
* Harmonize version and its documentation
* Fix eckey_priv_encode so it immediately returns an error upon a
    failure in i2d_ECPrivateKey
* Fix some double frees. These are not thought to be exploitable.

See also http://www.openssl.org/news/secadv_20140605.txt

Submitted-by: Robin Hahling <robin.hahling@gw-computing.net>
4 months agoPER FREEBSD-SA-14:13 Incorrect error handling in PAM policy parser
Robert Garrett [Wed, 4 Jun 2014 13:44:02 +0000 (15:44 +0200)]
PER FREEBSD-SA-14:13  Incorrect error handling in PAM policy parser

This is the original patch submitted to FreeBSD
by as far as I can tell Peter Wemm, and Dag-Erling Smorgrav

Testing: Robert Garrett

5 months agoSync zoneinfo database with tzdata2014c from ftp://ftp.iana.org/tz/releases
Sascha Wildner [Wed, 14 May 2014 07:03:31 +0000 (09:03 +0200)]
Sync zoneinfo database with tzdata2014c from ftp://ftp.iana.org/tz/releases

* africa: Egypt observes DST starting 2014-05-15 at 24:00.
    (Thanks to Ahmad El-Dardiry and Gunther Vermier.)

* asia: Remove now-confusing comment about Jordan.
    (Thanks to Oleksii Nochovnyi.)

* europe: Add a clarifying comment about how clocks in Simferopol
    Sevastopol were actually changed.

5 months agoOpenSSL: Check the correct pointer in EC_POINT_invert.
Sascha Wildner [Wed, 30 Apr 2014 09:33:31 +0000 (11:33 +0200)]
OpenSSL: Check the correct pointer in EC_POINT_invert.

It looks like this was copied from EC_POINT_dbl() but the check was
overlooked when adjusting.

Reported-by: plundra on #dragonflybsd
Taken-from:  OpenBSD

5 months agoOpenSSL: Add fix for CVE-2010-5298.
Sascha Wildner [Wed, 30 Apr 2014 08:58:52 +0000 (10:58 +0200)]
OpenSSL: Add fix for CVE-2010-5298.

5 months agonetinet/in - Fix yet another NULL pointer panic.
Antonio Huete Jimenez [Tue, 15 Apr 2014 14:20:16 +0000 (16:20 +0200)]
netinet/in - Fix yet another NULL pointer panic.

DragonFly-bug: <http://bugs.dragonflybsd.org/issues/2662>
Submitted-by: Vasily Postnicov
This commit closes #2662

5 months agonetinet/ip - Avoid a NULL pointer dereference.
Antonio Huete Jimenez [Thu, 10 Apr 2014 13:17:04 +0000 (15:17 +0200)]
netinet/ip - Avoid a NULL pointer dereference.

- Before checking for packets on broadcast addresses, see if there
  is actually a ifnet associated with the mbuf being handled.

FreeBSD-SVN: 130685
DragonFly-bug: <http://bugs.dragonflybsd.org/issues/2660>
Reported-and-Found-by: Vasily Postnicov
This commit closes #2660

6 months agoUpdate files for OpenSSL-1.0.1g import. v3.6.2
Peter Avalos [Tue, 8 Apr 2014 01:26:13 +0000 (18:26 -0700)]
Update files for OpenSSL-1.0.1g import.

6 months agoMerge branch 'vendor/OPENSSL' into DragonFly_RELEASE_3_6
Sascha Wildner [Tue, 8 Apr 2014 17:40:33 +0000 (19:40 +0200)]
Merge branch 'vendor/OPENSSL' into DragonFly_RELEASE_3_6

6 months agoImport OpenSSL-1.0.1g.
Peter Avalos [Tue, 8 Apr 2014 00:59:53 +0000 (17:59 -0700)]
Import OpenSSL-1.0.1g.

o Fix for CVE-2014-0160
o Add TLS padding extension workaround for broken servers.
o Fix for CVE-2014-0076
o Don't include gmt_unix_time in TLS server and client random values
o Fix for TLS record tampering bug CVE-2013-4353
o Fix for TLS version checking bug CVE-2013-6449
o Fix for DTLS retransmission bug CVE-2013-6450

6 months agonetwork/pf - Avoid a possible bad pointer access.
Antonio Huete Jimenez [Mon, 7 Apr 2014 22:26:53 +0000 (00:26 +0200)]
network/pf - Avoid a possible bad pointer access.

- Make sure new pfi_kif structures are zeroed on allocation.
- A panic was hit when pfi_instance_add() tried to access a bad ifp
  pointer (i.e. when using non-existing iface names in pf.conf)

6 months agonetwork/gif - Correctly clear route cache on destroy.
Antonio Huete Jimenez [Mon, 7 Apr 2014 07:37:56 +0000 (09:37 +0200)]
network/gif - Correctly clear route cache on destroy.

RTFREE() requires that the route is freed in the CPU it belongs to.
Migrating to the target CPU *before* calling it and returning to the
original CPU afterwards seems to do the trick.

Ok: @sephe

6 months agohammer - Fix missing reltoken
Matthew Dillon [Sun, 6 Apr 2014 22:59:08 +0000 (15:59 -0700)]
hammer - Fix missing reltoken

* Fix a missing token release on hmp->fs_token.

Reported-by: joris
6 months agobmake - Always pass the jobs pipe descriptor
Matthew Dillon [Sat, 5 Apr 2014 19:48:59 +0000 (12:48 -0700)]
bmake - Always pass the jobs pipe descriptor

* bmake currently requires a .MAKE target dependency to induce the passing
  of the jobs pipe descriptor to sub-jobs (aka sub-makes).  This requirement
  was lost due to a bug in bmake where it's F_SETFD fcntl was being run on
  the wrong descriptor.  This was recently fixed in bmake and exposed this
  new problem.

* bmake might be run with the MAKEFLAGS environment intact but not be passed
  the jobs descriptor.  While bmake creates a new fresh jobs descriptor in
  this case, it would remain an issue if some other parent program happened
  to use a pipe descriptor with the same fd number.

* bmake or intermediate build programs might not be run with a .MAKE target
  dependency, causing sub-bmakes to run an excessive number of concurrent
  jobs.

* The question is whether we can really safely require this new behavior
  or whether we should revert to the prior behavior.

  FreeBSD modified the default to be the prior behavior of always passing
  the jobs pipe descriptor and added a new .MAKE* directive to override it,
  but I don't see how this helps matters when the default really needs to be
  the always-pass behavior anyway.

  The only other solution is to use a filesystem-visible pipe (filesystem fifo
  in /tmp), which the old make used.  But this often results in a lot of cruft
  building up in /tmp from ^C's and/or system crashes.  This solution is the
  most compatible with expectations, frankly.

* For now revert to the prior behavior of always passing the jobs pipe
  descriptor.  This does a better job of guarenteeing that the descriptor
  number remains intact through multiple fork/execs.

6 months agokernel/hptmv: Don't mess up the struct by copying too much.
Sascha Wildner [Sat, 29 Mar 2014 08:06:44 +0000 (09:06 +0100)]
kernel/hptmv: Don't mess up the struct by copying too much.

VendorId is only 8 chars.

6 months ago<sys/hash.h>: Fix wrong header guard.
Sascha Wildner [Fri, 28 Mar 2014 20:54:07 +0000 (21:54 +0100)]
<sys/hash.h>: Fix wrong header guard.

6 months agoFix the usbd rc script a bit better.
Sascha Wildner [Wed, 26 Mar 2014 09:42:11 +0000 (10:42 +0100)]
Fix the usbd rc script a bit better.

Most importantly, take care about the case where usb isn't in the
kernel config.

Reported-by: lhmwzy on users@
6 months agoSync zoneinfo database with tzdata2014b from ftp://ftp.iana.org/tz/releases
Sascha Wildner [Tue, 25 Mar 2014 09:35:13 +0000 (10:35 +0100)]
Sync zoneinfo database with tzdata2014b from ftp://ftp.iana.org/tz/releases

* africa: Morocco's 2014 DST start will be as predicted. (Thanks to
    Sebastien Willemijns.)

* australasia: Add comments about Johnston Island time in the 1960s.
    (Thanks to Lyle McElhaney.)

* antarctica: New entry for Troll station, Antarctica. (Thanks to
    Paul-Inge Flakstad and Bengt-Inge Larsson.) This is currently an
    approximation; a better version will require zic and localtime
    fixes. Also the NZAQ rules - which are never used - have been
    removed.

* europe: Crimea switches to Moscow time on 2014-03-30 at 02:00 local
    time. (Thanks to Alexander Krivenyshev.)
    Move its zone.tab entry from UA to RU.

6 months agogdbinit - Fix previous commit.
Antonio Huete Jimenez [Sun, 16 Mar 2014 01:12:16 +0000 (02:12 +0100)]
gdbinit - Fix previous commit.

Spotted-by: swildner
6 months agogdbinit - A couple fixes.
Antonio Huete Jimenez [Sun, 16 Mar 2014 00:34:53 +0000 (01:34 +0100)]
gdbinit - A couple fixes.

- Fix 'lstok' for proc_tokens and vmobj_tokens.

6 months agolibkvm - Adjust for the proc_token changes
Antonio Huete Jimenez [Sat, 15 Mar 2014 15:05:44 +0000 (16:05 +0100)]
libkvm - Adjust for the proc_token changes

- allproc, zombproc are now gone. All processes are now in an array of
  proclist structures.
- ps(1) did not work on coredumps because '_allproc' and '_zombproc'
  were missing.

6 months agokernel - Add allproc_hsize global
Antonio Huete Jimenez [Fri, 14 Mar 2014 09:04:19 +0000 (10:04 +0100)]
kernel - Add allproc_hsize global

- Used by kvm(3) to determine the proc hash size.

6 months agosbin/hammer - Remove trailing '/' from paths.
Antonio Huete Jimenez [Tue, 4 Mar 2014 23:24:38 +0000 (00:24 +0100)]
sbin/hammer - Remove trailing '/' from paths.

  When operating PFSes through symbolic links, it was not
  possible to specify the trailing backslash since that
  translated to the PFS root dir instead of the symbolic link
  to the PFS itself. This caused problems when upgrading or
  downgrading PFSes (and probably in other cases too).
  The error was "Directory not empty".

  This commit should solve those cases, but keep in mind
  there are other cases where it is actually not possible
  to complete certain operations (like while destroying
  PFSes).

Reported-by: Siju George, others
6 months agosbin/hammer - Fix a wrong error message.
Antonio Huete Jimenez [Tue, 4 Mar 2014 21:53:10 +0000 (22:53 +0100)]
sbin/hammer - Fix a wrong error message.

6 months agokernel/vfs - Fix a refcount check in vclean_unlocked()
Antonio Huete Jimenez [Tue, 4 Mar 2014 21:32:08 +0000 (22:32 +0100)]
kernel/vfs - Fix a refcount check in vclean_unlocked()

- vx_get() actually adds a ref so you actually need to count
  with that.

6 months agorc.d/root - Remove unnecessary 'mount /' call.
Antonio Huete Jimenez [Mon, 3 Mar 2014 23:43:02 +0000 (00:43 +0100)]
rc.d/root - Remove unnecessary 'mount /' call.

UFS and HAMMER do not emit an error when trying to mount
an already mounted root fileystem but cd9660 does.
That's why this wasn't producing any error message on
already installed systems.

While booting the LiveCD you could see:

cd9660: /dev/vcd0: Invalid argument

Reported-by: corecode
DragonFly-bug: <http://bugs.dragonflybsd.org/issues/1518>

This commit closes #1518

6 months agokernel/ntfs - Fix buffer overlapping problems.
Antonio Huete Jimenez [Thu, 27 Feb 2014 20:26:49 +0000 (21:26 +0100)]
kernel/ntfs - Fix buffer overlapping problems.

- Read only one cluster at a time.
- Do not cache boot block.

Taken-from:    FreeBSD's r118035
Dragonfly-bug: <http://bugs.dragonflybsd.org/issues/2388>

(Commit refs #2388 and fixes #1853)

6 months agokernel/ntfs - Fix a possible problem in bufcache.
Antonio Huete Jimenez [Thu, 27 Feb 2014 00:08:26 +0000 (01:08 +0100)]
kernel/ntfs - Fix a possible problem in bufcache.

- Avoid different block size bread() calls for the
  same blkno.
- Fix a bug in the code handling holes which could
  cause infinite loops.

Taken-from:    FreeBSD's r116620

6 months agokernel/ntfs - Cleanup.
Antonio Huete Jimenez [Tue, 25 Feb 2014 22:57:37 +0000 (23:57 +0100)]
kernel/ntfs - Cleanup.

- Remove NetBSD specific code.
- Removed few whitespaces.

Conflicts:
sys/vfs/ntfs/ntfs_vfsops.c

6 months agokernel/ntfs - Fix warnings when compiling with NTFS_DEBUG
Antonio Huete Jimenez [Tue, 25 Feb 2014 22:35:29 +0000 (23:35 +0100)]
kernel/ntfs - Fix warnings when compiling with NTFS_DEBUG

7 months agokernel/msdosfs: Merge deName and deExtension in the direntry struct.
Sascha Wildner [Fri, 21 Mar 2014 20:39:12 +0000 (21:39 +0100)]
kernel/msdosfs: Merge deName and deExtension in the direntry struct.

* winChkSum() in msdosfs_conv.c was assuming that deExtension was
  following deName in memory, which is meh.

* While here, add some include guards and put some reserved bytes
  explicitly in the structs.

This is basically r203827 from FreeBSD.

7 months agoSync zoneinfo database with tzdata2014a from ftp://ftp.iana.org/tz/releases
Sascha Wildner [Tue, 11 Mar 2014 14:38:23 +0000 (15:38 +0100)]
Sync zoneinfo database with tzdata2014a from ftp://ftp.iana.org/tz/releases

See https://github.com/eggert/tz/blob/master/NEWS for a list of
what changed. We were previously in sync with tzdata2013i.

7 months agokernel/i386: Apply 94514bea15a0328e256cda414594fe6e631705a5 in i386 too.
Sascha Wildner [Mon, 24 Feb 2014 09:25:25 +0000 (10:25 +0100)]
kernel/i386: Apply 94514bea15a0328e256cda414594fe6e631705a5 in i386 too.

7 months agoAvoiding an infinite loop during P-state adjustment on the HP6715s notebook.
Imre Vadasz [Sun, 23 Feb 2014 00:08:12 +0000 (01:08 +0100)]
Avoiding an infinite loop during P-state adjustment on the HP6715s notebook.

The code is taken from the OpenBSD counterpart to amd0f_set_fidvid.
The infinite loop probably occurs on my HP6715s because the rvo adjustment
doesn't get applied by the hardware when entering the highest P-state
(maybe because of some kind of overvolting protection).

7 months agolibc/rpc: Fix a reference of an uninitialized variable.
Sascha Wildner [Fri, 21 Feb 2014 19:09:21 +0000 (20:09 +0100)]
libc/rpc: Fix a reference of an uninitialized variable.

In the XDR_DECODE case, pnext was not initialized and it was obscured
by the confusing indentation which I adjusted in the last commit.

In fact, get rid of pnext at all and simply use &objp->next directly,
which is like Illumos has it too.

7 months agolibc/rpc: Fix some confusing indentation.
Sascha Wildner [Fri, 21 Feb 2014 17:06:59 +0000 (18:06 +0100)]
libc/rpc: Fix some confusing indentation.

xdr_rpcbs_rmtcalllist() had nested if()s on the same level, which made
the code rather hard to follow.

No other differences.

7 months agorpc.lockd(8): Fix some references of the wrong lock.
Sascha Wildner [Fri, 21 Feb 2014 16:44:36 +0000 (17:44 +0100)]
rpc.lockd(8): Fix some references of the wrong lock.

fl is used later on to iterate through the lock list but here, rfl
is meant.

While here, fix a spell-o in a comment.

7 months agolibc/getaddrinfo: Fix bugs in two early error paths of _dns_getaddrinfo().
Sascha Wildner [Fri, 21 Feb 2014 16:30:39 +0000 (17:30 +0100)]
libc/getaddrinfo: Fix bugs in two early error paths of _dns_getaddrinfo().

We cannot use RES_SET_H_ERRNO() here upon malloc() failure because res is
not yet initialized at this point and RES_SET_H_ERRNO() (aka __h_errno())
would reference it.

7 months agokernel/nataraid: Fix a panic upon booting with a degraded Intel RAID. v3.6.1
Sascha Wildner [Thu, 20 Feb 2014 20:44:03 +0000 (21:44 +0100)]
kernel/nataraid: Fix a panic upon booting with a degraded Intel RAID.

disk_idx has upper bits set in this case which we need to mask.

Taken-from:             FreeBSD's r205074
Reported-and-tested-by: Aaron Bieber <deftly@gmail.com>
8 months agohammer - Really fix VFS_STATFS() when operating volumes.
Antonio Huete Jimenez [Mon, 17 Feb 2014 15:47:49 +0000 (07:47 -0800)]
hammer - Really fix VFS_STATFS() when operating volumes.

- Correct a mistake in the previous "fix". Compute the
  total number of blocks based on the bigblock count which
  was already updated.
- Take care of stats also on volume deletion.

Dragonfly-bug: <http://bugs.dragonflybsd.org/issue2497>

8 months agokernel/nataraid: Fix a bug for array sizes >2TB.
Sascha Wildner [Sun, 16 Feb 2014 22:51:16 +0000 (23:51 +0100)]
kernel/nataraid: Fix a bug for array sizes >2TB.

The overall array size (total_sectors) in the softc was already 64 bit
wide but due to a missing cast when multiplying the 32 bit disk size
by the number of disks, it never became larger than 32 bits.

Also, the disk size was signed when it should have been unsigned.

Note that these fixes apply to RAIDs created using natacontrol(8), but
not necessarily to those created with BIOS utilities.

Reported-by: Aaron Bieber <deftly@gmail.com>
8 months agokernel/nataraid: Fix nVidia MediaShield metadata kprintfs for unsigned.
Sascha Wildner [Sun, 16 Feb 2014 19:50:35 +0000 (20:50 +0100)]
kernel/nataraid: Fix nVidia MediaShield metadata kprintfs for unsigned.

8 months agorcrun(8): Properly handle scripts that provide more than one keyword.
Sascha Wildner [Fri, 14 Feb 2014 21:15:14 +0000 (22:15 +0100)]
rcrun(8): Properly handle scripts that provide more than one keyword.

The loop that checks if all dependencies of the target are running
didn't take into account that there could be more than one PROVIDE
keyword in one script. It treated all PROVIDEs which were not named
like the target as not yet running dependencies and failed.

To fix, loop through the PROVIDEs twice, the first time to skip all
the PROVIDEs of the script if the target is one of them.

All this is due to the output of "rcorder -o ..." having the script
that provides the target which we want to run as its last element,
so document that with a comment.

Reported-by: joris
8 months agorcrun(8): Rename $i, $j and $k to (more) meaningful names.
Sascha Wildner [Sat, 1 Feb 2014 07:13:58 +0000 (08:13 +0100)]
rcrun(8): Rename $i, $j and $k to (more) meaningful names.

8 months agorcrun(8): Read /etc/rc.conf too for overrides of $local_startup.
Sascha Wildner [Sat, 1 Feb 2014 07:02:23 +0000 (08:02 +0100)]
rcrun(8): Read /etc/rc.conf too for overrides of $local_startup.

8 months agoaltq: Byte counter is not compat w/ RED or RIO AQM
Sepherosa Ziehau [Thu, 6 Feb 2014 13:21:58 +0000 (21:21 +0800)]
altq: Byte counter is not compat w/ RED or RIO AQM

For altq packet schedulers, use packet counter should be enough.

Reported-by: Pierre Abbat
8 months agoswapcache - Fix token leak
Matthew Dillon [Tue, 11 Feb 2014 02:20:30 +0000 (18:20 -0800)]
swapcache - Fix token leak

* vmobjlst tokens can build up in the swapcache thread due to a label
  in the wrong place.  This eventually panics the box.

Reported-by: ftigeot
8 months agoinstall(1): Fix 2.5 y/o verbose bug, use static functions
John Marino [Thu, 6 Feb 2014 13:33:01 +0000 (14:33 +0100)]
install(1): Fix 2.5 y/o verbose bug, use static functions

A bug was introduced by this commit to add the -D option:

a2bc4e56d4ab068fea12d65d13740b7a600769a8 (7 SEP 11)

It changed the -v verbose option from standalone to expecting input and
as a result, any use of -v caused the usage screen to come up.  Fixed.
Additionally, the pathnames.h header is unused, removed now.
Finally, several functions were turned into static functions and explicit
void casts were used when functions normally return integers.  The last
two change sets converge with FreeBSD.

xinstall has not been seriously updated in a long time and has fallen
behind BSD counterparts.  Syncing with FreeBSD may take several steps as
there is significant divergence and options (e.g. -l) do different things
on FreeBSD

8 months agojails/netinet6: unbreak source selection after cfd7912
Markus Pfeiffer [Wed, 29 Jan 2014 21:37:00 +0000 (21:37 +0000)]
jails/netinet6: unbreak source selection after cfd7912

Commit cfd7912 broke source address selection for the host. It
selected link-local addresses for local global routeable addresses.

Reported-By: ftigeot
8 months agosys: platform: pc64: vmm: vmx.c: bug-fix in PROCBASED2 detection
Mihai Carabas [Sat, 25 Jan 2014 23:42:38 +0000 (01:42 +0200)]
sys: platform: pc64: vmm: vmx.c: bug-fix in PROCBASED2 detection

Bug-fix in accessing PROCBASED2 MSR:
 * First check PROCBASED MSR to see if it is available

Reported-by: Johannes Hofmann
8 months agojails/netinet6: Only select jailed ips for outgoing
Markus Pfeiffer [Sat, 25 Jan 2014 19:01:11 +0000 (19:01 +0000)]
jails/netinet6: Only select jailed ips for outgoing

Outgoing IP address selection for jailed processes using ipv6
was broken and selected the first ip6 address available.
Now the code checks whether an ip6 is available to the jail
in in6_ifawithascope.

9 months agokernel/ppc: Fix a tsleep with NULL ident.
Sascha Wildner [Sat, 18 Jan 2014 06:48:06 +0000 (07:48 +0100)]
kernel/ppc: Fix a tsleep with NULL ident.

9 months agokernel/dm_target_striped: Plug a memory leak.
Sascha Wildner [Fri, 17 Jan 2014 07:19:07 +0000 (08:19 +0100)]
kernel/dm_target_striped: Plug a memory leak.

9 months agohammer2(8): Fix wrong sizeof.
Sascha Wildner [Thu, 16 Jan 2014 06:11:11 +0000 (07:11 +0100)]
hammer2(8): Fix wrong sizeof.

9 months agoacpi_sony(4): Free the sysctl_ctx upon detaching.
Sascha Wildner [Tue, 31 Dec 2013 23:41:17 +0000 (00:41 +0100)]
acpi_sony(4): Free the sysctl_ctx upon detaching.

Fixes crashes when unloading the module.

9 months agoSync zoneinfo database with tzdata2013i from ftp://ftp.iana.org/tz/releases
Sascha Wildner [Sun, 22 Dec 2013 10:47:01 +0000 (11:47 +0100)]
Sync zoneinfo database with tzdata2013i from ftp://ftp.iana.org/tz/releases

See https://github.com/eggert/tz/blob/master/NEWS for a list of
what changed. We were previously in sync with tzdata2013d.

10 months agosed(1): Implement the 'i' flag.
Eitan Adler [Mon, 9 Dec 2013 19:19:39 +0000 (14:19 -0500)]
sed(1): Implement the 'i' flag.

Per the resolution of POSIX bug 0000779 (note 0002050) add
support for using 'i' as a case insensitive flag.

Obtained-from:   FreeBSD r259132

10 months agocallout: Fix callout_terminate() if the callout_reset() is never called
Sepherosa Ziehau [Tue, 10 Dec 2013 15:38:36 +0000 (23:38 +0800)]
callout: Fix callout_terminate() if the callout_reset() is never called

If callout_reset() is never called, then c_gd will be NULL

10 months agoacpi utilities: Raise WARNS to 2, bump CSTD to gnu99, fix warnings.
Sascha Wildner [Sat, 7 Dec 2013 11:32:42 +0000 (12:32 +0100)]
acpi utilities: Raise WARNS to 2, bump CSTD to gnu99, fix warnings.

MFC'd to 3.6 because it actually makes acpidb(8) work at all (before,
it segfaulted).

10 months agodrm: Convert idr spinlocks to lockmgr locks
Fran├žois Tigeot [Thu, 5 Dec 2013 12:39:36 +0000 (13:39 +0100)]
drm: Convert idr spinlocks to lockmgr locks

* Since the idr code uses blocking calls in some code paths we can't
  hold spin locks accross idr calls

* This commit and the idr infinite loop one fix system freeze issues
  with some Xorg operations involving a huge number of pixmaps

10 months agoidr: Fix an infinite loop issue
Matthew Dillon [Thu, 5 Dec 2013 09:25:23 +0000 (10:25 +0100)]
idr: Fix an infinite loop issue

* idr routines were doing an infinite loop when the array was full but element
  #0 was still free

* Because allocations start at 1, the low bound was not being taken account of
  in idr_find_free(), causing an infinite loop

* idr_get_new_above() couldn't allocate an id >= 1 and idr_pre_get() thought it
  didn't have to expand because id #0 was available

10 months agoidr: fix bounds checks
Johannes Hofmann [Wed, 4 Dec 2013 20:55:50 +0000 (21:55 +0100)]
idr: fix bounds checks

10 months agoidr: access nodes array with token held
Johannes Hofmann [Tue, 3 Dec 2013 21:36:31 +0000 (22:36 +0100)]
idr: access nodes array with token held

10 months agoidr: fix sizeof in kmalloc calls
Johannes Hofmann [Tue, 3 Dec 2013 07:02:19 +0000 (08:02 +0100)]
idr: fix sizeof in kmalloc calls

10 months agoidr : Fix logic error in binary tree allocation
Joris Giovannangeli [Tue, 3 Dec 2013 00:55:27 +0000 (01:55 +0100)]
idr : Fix logic error in binary tree allocation

 * A complete binary tree has 2^n - 1 nodes, not 2^n. Changes default size
   to be 2^n - 1.

 * While here, also add proper locking directives to idr_grow and idr_remove_all

10 months agomail(1): Fix an over 9 years old typo/bug.
Sascha Wildner [Wed, 4 Dec 2013 17:19:57 +0000 (18:19 +0100)]
mail(1): Fix an over 9 years old typo/bug.

10 months agoFix indentation from the previous commit.
Antonio Huete Jimenez [Thu, 21 Nov 2013 18:50:04 +0000 (10:50 -0800)]
Fix indentation from the previous commit.

10 months agohammer - Ignore privilege check for HAMMERIOC_PFS_ITERATE.
Antonio Huete Jimenez [Thu, 21 Nov 2013 18:33:09 +0000 (10:33 -0800)]
hammer - Ignore privilege check for HAMMERIOC_PFS_ITERATE.

* This caused 'hammer info' to display an empty list of PFSes
  when run by non-root.

Pointed-out-by: dillon
10 months agokernel: Fix two typos, _KERNRL -> _KERNEL and ALTQ_unLOCK -> ALTQ_UNLOCK.
Sascha Wildner [Thu, 21 Nov 2013 00:45:27 +0000 (01:45 +0100)]
kernel: Fix two typos, _KERNRL -> _KERNEL and ALTQ_unLOCK -> ALTQ_UNLOCK.

10 months agobnx: Only 5718 chip family use PCI_BAR4 as MSI-X table; rest use PCI_BAR2
Sepherosa Ziehau [Thu, 21 Nov 2013 00:43:57 +0000 (08:43 +0800)]
bnx: Only 5718 chip family use PCI_BAR4 as MSI-X table; rest use PCI_BAR2

DragonFly-bug: http://bugs.dragonflybsd.org/issues/2605

10 months ago<time.h>: #if 0 some prototypes of syscalls which we don't (yet) have.
Sascha Wildner [Tue, 12 Nov 2013 21:14:24 +0000 (22:14 +0100)]
<time.h>: #if 0 some prototypes of syscalls which we don't (yet) have.

Came in with the "locale megapatch". Useless without implementation, but
leave them in #if 0 since (being standard) we want them.

11 months agoNote on ABI change requiring rebuild of third-party software. v3.6.0
Justin C. Sherrill [Wed, 20 Nov 2013 05:03:41 +0000 (00:03 -0500)]
Note on ABI change requiring rebuild of third-party software.

11 months agoAdd note about reboot before 'make upgrade' step.
Justin C. Sherrill [Wed, 20 Nov 2013 05:01:21 +0000 (00:01 -0500)]
Add note about reboot before 'make upgrade' step.

Based on:

http://lists.dragonflybsd.org/pipermail/users/2013-September/090163.html

11 months agocpdup - Add another way to prevent host:path misintepretation
Matthew Dillon [Thu, 14 Nov 2013 20:23:15 +0000 (12:23 -0800)]
cpdup - Add another way to prevent host:path misintepretation

* Allow a local file or directory name to be prefixed with localhost:
  to prevent colons in the filename from being misinterpreted as a
  remote-host specification.

  This is in addition to the nominal absolute-path method to prevent
  misinterpretation (a '/' occuring before any ':' prevents
  misinterpretation of the ':' as a remote-host specification)

11 months agofix the INT64_C and INTMAX_C family macro for x86_64.
Alexandre Perrin [Mon, 18 Nov 2013 22:16:22 +0000 (23:16 +0100)]
fix the INT64_C and INTMAX_C family macro for x86_64.

  This patch fix the expanding type of both the INT64_C and the INTMAX_C
  family macros to match their corresponding type:
  - INT64_C(value) to `int_least64_t`
  - UINT64_C(value) to `uint_least64_t`
  - INTMAX_C(value) to `intmax_t`
  - UINTMAX_C(value) to `uintmax_t`

11 months agomdocml: bump DragonFly version for release
Franco Fichtner [Sun, 17 Nov 2013 14:09:41 +0000 (15:09 +0100)]
mdocml: bump DragonFly version for release

11 months agogroff: properly display $Mdocdate magic
Franco Fichtner [Sun, 17 Nov 2013 13:39:56 +0000 (13:39 +0000)]
groff: properly display $Mdocdate magic

OpenSSH and mdocml pages require this.  Reduces the groff/mandoc
output diff.  I heard this was suggested upstream a while ago, but
never made it into the code base.

Taken-from: OpenBSD

11 months agoiwn: fix compilation without INVARIANTS
Johannes Hofmann [Sat, 9 Nov 2013 20:13:49 +0000 (21:13 +0100)]
iwn: fix compilation without INVARIANTS

wlan_serializer is now held consistently, so we can get rid
of the conditional locking which breaks building without
INVARIANTS.

noticed-by: Andrey Oktyabrskiy

11 months agoed(1): Plug some memory leaks in error paths (taken from FreeBSD).
Sascha Wildner [Thu, 14 Nov 2013 12:08:06 +0000 (13:08 +0100)]
ed(1): Plug some memory leaks in error paths (taken from FreeBSD).

11 months agokernel - Fix lock/delete race in the namecache
Matthew Dillon [Mon, 11 Nov 2013 17:12:58 +0000 (09:12 -0800)]
kernel - Fix lock/delete race in the namecache

* Re-check ncp connectivity and the NCF_DESTROYED flag after
  successfully locking the ncp.

11 months agohammer - Remove cache_inval_vp() call
Matthew Dillon [Mon, 11 Nov 2013 17:14:15 +0000 (09:14 -0800)]
hammer - Remove cache_inval_vp() call

* Remova a call to cache_inval_vp() that no other VFSs use which was
  causing deadlocks against concurrent rm's of hardlinks to the same
  file.

Reported-by: ftigeot
11 months agokernel: Mark two variables as being used by KKASSERT() only.
Sascha Wildner [Sat, 9 Nov 2013 00:19:45 +0000 (01:19 +0100)]
kernel: Mark two variables as being used by KKASSERT() only.

Reported-by: Andrey Oktyabrskiy <ano@bestmx.net>
11 months agopkill - Optimize pgrep -F
Matthew Dillon [Sat, 9 Nov 2013 17:08:47 +0000 (09:08 -0800)]
pkill - Optimize pgrep -F

* Ask for a specific process instead of pulling down all processes when
  -F <pidfile> is specified.  This is much much faster.

11 months agokernel - Fix lockmgr LK_UPGRADE bug
Matthew Dillon [Sat, 9 Nov 2013 04:46:43 +0000 (20:46 -0800)]
kernel - Fix lockmgr LK_UPGRADE bug

* Fix a bug in the LK_UPGRADE sequencing.  If an LKC_UPREQ owner is present
  and releasing the shared lock would release the lock, the UPREQ owner must
  be granted the exclusive lock right then and there.

11 months agops - Remove display of the 'M'P state
Matthew Dillon [Fri, 8 Nov 2013 18:20:02 +0000 (10:20 -0800)]
ps - Remove display of the 'M'P state

* Remove display of the 'M' flag, which used to mean that the process was
  running MPSAFE w/regards to the kernel's mp_lock.  Well, pretty much
  all processes are MPSAFE now, so the flag just clutters the output.

11 months agosystat - Sync with kernel changes for SMP collision statistics
Matthew Dillon [Fri, 8 Nov 2013 07:23:59 +0000 (23:23 -0800)]
systat - Sync with kernel changes for SMP collision statistics

* Rename the tokcol fields to smpcol/label.  Remove the nice% field
  (combine it with user%) and expand the collision label space to
  18 characters.

* Now able to display token, lockmgr, mtx, and spinlock contention.

11 months agokernel - Improve SMP collision statistics
Matthew Dillon [Fri, 8 Nov 2013 07:22:20 +0000 (23:22 -0800)]
kernel - Improve SMP collision statistics

* Populate the per-cpu collision counter and label from the spinlock,
  lockmgr lock, and mutex code.  The token code already used it.

* Pass __func__ to the spinlock routines so it can be copied into
  the per-cpu collision label.

11 months agokernel - slotimer is MPSAFE, fix degenerate mplock case in callout threads
Matthew Dillon [Fri, 8 Nov 2013 18:29:49 +0000 (10:29 -0800)]
kernel - slotimer is MPSAFE, fix degenerate mplock case in callout threads

* The slotimer (runs once every 10 seconds) is MPSAFE.  This runs on all cpus
  all at once so it kinda created a little hicup before due to being defined
  wrong.

* When a callout thread sleeps, make sure any left-over mplock is not
  being held.

11 months agoopenssh - Fix an openssh issue.
Matthew Dillon [Fri, 8 Nov 2013 18:52:20 +0000 (10:52 -0800)]
openssh - Fix an openssh issue.

* Properly zero the newkey structure as per OpenBSD announcement.  Our older
  openssh does not implement the AES-GCM cipher that creates the vulnerability
  but fix the bug anyway.

11 months agokernel - Fix memory leak, clean up kernel slab fragmentation
Matthew Dillon [Thu, 7 Nov 2013 19:21:12 +0000 (11:21 -0800)]
kernel - Fix memory leak, clean up kernel slab fragmentation

* The kernel slab allocator collects off-cpu kfree()s in z_RChunks.  This
  linked list is freed up by the owning cpu.  However, zones which are not
  at the head of the list can wind up with non-NULL z_RChunks which never
  get freed.

* Add a 10-second callout on every cpu to clean-up these stale zones, giving
  the kernel a chance to free the related zones.

* This was probably the cause for other kernel memory leaks reported in the
  past.

Found-by: sephe
11 months agokernel - Fix vn_syncer_add panic with UFS
Matthew Dillon [Tue, 5 Nov 2013 22:46:00 +0000 (14:46 -0800)]
kernel - Fix vn_syncer_add panic with UFS

* The new VONWORKLST requirements were expanded to include VOBJDIRTY
  for both the standard syncer and the new syncer.  There was a path
  in the VM system which could clear VOBJDIRTY but failed to resynchronize
  VONWORKLST which could cause UFS to accidently leave a vnode on the
  syncer list after reclamation, causing a crash.

* Fix the VM path.

Reported-by: David Shao
11 months ago3.6 branching and setup. v3.6.0rc
Justin C. Sherrill [Tue, 5 Nov 2013 03:30:53 +0000 (22:30 -0500)]
3.6 branching and setup.

11 months agohammer2 - Stabilization
Matthew Dillon [Mon, 4 Nov 2013 19:41:09 +0000 (11:41 -0800)]
hammer2 - Stabilization

* Do not scrap deleted + modified chains unconditionally, this will mess
  up operations on unlinked-but-open files.  Also fixes an assertion which
  was getting hit and fixes poudriere test run stdout EBADF errors on
  unlinked fifos.

* Optimize handling of the DESTROYED flag to restore the feature where a
  rm -rf can get away with doing almost no write I/O.

* Remove a bunch of debug stuff

11 months agomdoc_local: Add two more FreeBSD versions which are used in manual pages.
Sascha Wildner [Mon, 4 Nov 2013 19:33:43 +0000 (20:33 +0100)]
mdoc_local: Add two more FreeBSD versions which are used in manual pages.

11 months agostrlcpy.3: Use OpenBSD's revamped description of strlcpy and strlcat.
Sascha Wildner [Mon, 4 Nov 2013 19:21:30 +0000 (20:21 +0100)]
strlcpy.3: Use OpenBSD's revamped description of strlcpy and strlcat.

This is FreeBSD's r257646.

Submitted-by: Eitan Adler <eadler@freebsd.org>
From their commit msg:

This explanation is supposed to be simpler and better.  In particular
"comparing it to the snprintf API provides lots of value, since it raises the
bar on understanding, so that programmers/auditors will a better job calling
all 3 of these functions."